Copyright ã1996 by NeXT Software, Inc.  All Rights Reserved.

;A_ToDo_Design.rtfd; linkMarkername ;¬ Next Section

4. To Do Tutorial
Introduction

Many kinds of applicationsÐword processors and spreadsheets, to name a coupleÐare designed with the notion of a document in mind. A document is a body of information, usually contained by a window, that is self-contained and repeatable. Users can create, modify, store, and access a document as a discrete unit. Multi-document applications (as these programs are called) can generate an almost unlimited number of documents. 

The To Do application presented in this chapter is a multi-document application. It is a fairly simple personal information manager (PIM). Each To Do document captures the daily ªmust-doº items for a particular purpose. For instance, one could have a To Do list for work and another one for home. To Do allows users to:

¬	Enter appointments or actions that they must complete on particular days.
¬	Specify the times those items are due.
¬	Receive notifications at a specified interval before the due time.
¬	Associate notes with to-do items.
¬	Mark items as complete or deferred. 

¬

As with Travel Advisor, you're going to cover a lot of OpenStep territory by completing this tutorial. It explores two major areas:

¬	Multi-document architecture: The design of applications that can create multiple documents, save and restore those documents, and do the right thing on certain events, such as application termination.

¬	Strategies for subclassing: Reuse of existing classes by adding behavior and data, by overriding existing behavior, or by doing both things.

You will also learn about other aspects of OpenStep programming:

¬	Opening and saving files
¬	Loading nib files (and other bundles) programmatically
¬	Creating and managing inspectors
¬	Programmatic creation and manipulation of user-interface objects
¬	Time and date manipulation
¬	Declaring informal protocols
¬	Using timers

And you'll be introduced to these important OpenStep concepts:

¬	Event handling
¬	The core program framework
¬	Drawing and image composition

When you complete this tutorial, you should be ready to tackle OpenStep programming on your own.

Related Concept:		 ;ToDoConcepts.rtfd; linkMarkername StartingUpÑWhatHappensinNSApplicationMain();,  Starting Up Ð What Happens in NSApplicationMain()