Release 2.0  Copyright ã1991 by NeXT Computer, Inc.  All Rights Reserved.

7	Chapter 1:  A Visual Guide to the User Interface 
9	An Application's Windows
9	Standard Windows
10	Panels
11	Menus
11	Miniwindows
12	Application Icons
13	Controls
13	Buttons
14	Text Fields
15	Sliders
15	Color Wells
15	Scrollers
16	Browsers and Selection Lists

17	Chapter 2:  Designing NeXTstep Applications 
17	Design Philsophy
18	Basic Principles
18	Consistency
18	User Control
19	Naturalness
19	Using the Mouse
20	Action Paradigms
20	Direct Manipulation
21	Targeted Action
21	Modal Tool
22	Extensions
23	Testing User Interfaces
23	References
24	Designing Your Application
24	Providing a Default Document
25	Uneditable Documents
25	Choosing How Functionality Is Accessed
25	Making a Click Unnecessary

27	Chapter 3:  User Actions:  The Keyboard and Mouse 
28	How the Keyboard and Mouse Work
28	The Keyboard
28	Modifier Keys
29	Keyboard Alternatives
30	The Mouse
31	Clicking
31	Multiple-Clicking
31	Dragging
32	Pressing
32	Mouse Responsiveness
32	Left and Right Orientation
33	Selection
33	Dragging to Select
34	Clicking to Select
34	Multiple-Clicking to Select
34	Extending the Selection
34	Continuous Extension
35	Discontinuous Extension
36	How the Arrow Keys Affect a Text Selection
37	Implementing Special Keys
37	Special Character Keys
37	Handling Arrow Characters
38	Special Command-Key Combinations
38	Choosing Keyboard Alternatives
39	Reserved Keyboard Alternatives
39	Required Keyboard Alternatives
40	Recommended Keyboard Alternatives
40	Creating Application-Specific Keyboard Alternatives
41	Choosing the Character
42	Using the Alternate Key
42	Determining the Action that Is Performed
43	Implementing Mouse Actions
43	Reacting to Clicking
43	The First Click in a Window
44	When to Act on a Double-Click Instead of a Single Click
45	When to Use Multiple-Clicking
45	Dragging from a Multiple-Click
46	How to Use Dragging
46	Moving an Object
46	Defining a Range
47	Sliding from Object to Object
47	When to Use Pressing
48	Using Modifier Keys with the Mouse
49	Managing the Cursor
49	Changing the Cursor            
49	Hiding the Cursor
50	Implementing Selection
50	When Discontinuous Selection Isn't Implemented
50	The Range that Dragging Should Select
51	Implementing the Modified Arrow Keys
51	Control-Arrow Combinations
51	Shift-Arrow Combinations
52	Alternate-Arrow Combinations
52	Other Arrow Key Combinations

53	Chapter 4:  The Window Interface to Applications 
54	How Windows Work
54	Window Order
56	Window Behavior
57	Reordering
57	Moving
58	Resizing
59	Closing
59	Miniaturizing
60	Hiding and Retrieving Windows
60	Application and Window Status
61	The Active Application
61	Application Activation
62	Application Deactivation
63	The Key Window
64	The Main Window
65	How Windows Become Key Window and Main Window
66	In the Active Application
66	When an Application Is Activated
66	The Results of Clicking in a Window
68	Implementing Standard Windows
68	Choosing a Title
68	Implementing the Resize Bar
69	Implementing the Miniaturize Button 
69	Implementing the Close Button 
71	Implementing Window and Application Status
71	Choosing the Key Window
71	Activating an Application

73	Chapter 5:  Panels 
74	How Panels Work
74	Ordinary Panels
74	Attention Panels
76	Implementing Ordinary Panels
76	Window Considerations
76	The Close Button
76	The Miniaturize Button
76	The Resize Bar
76	Becoming the Key Window
77	Relinquishing Key Window Status
77	Exceptions to Ordinary Panel Behavior
77	Persisting Panels
78	Floating Panels
78	Panels with Variable Contents
79	Multiform Panels
79	Inspector Panels
81	Implementing Attention Panels
81	Naming an Attention Panel
82	The Default Option in an Attention Panel
82	Dismissing an Attention Panel
82	Naming Buttons in an Attention Panel
83	Optional Explanations in an Attention Panel
84	Standard Panels
84	The Close Panel
84	The Find Panel
85	The Info Panel
86	The Preferences Panel
87	The Quit Panel
88	Panels Provided by the Application Kit
88	The Colors Panel
89	The Font Panel
90	The Open Panel
90	The Page Layout Panel
91	The Print Panel
92	The Save Panel
92	The Spelling Panel

95	Chapter 6:  Menus 
96	How Menus Work
97	The Main Menu
97	Bringing the Main Menu to the Cursor
97	Submenus
98	Keeping a Submenu Attached
98	Tearing Off an Attached Submenu
99	Removing a Submenu from the Screen
99	Commands
101	Implementing Menus
101	Designing the Menu Hierarchy
102	Choosing Command Names
102	Commands that Perform Actions
102	Commands that Bring Up Panels
103	Commands that Bring Up Submenus
104	Commands that Bring Up Standard Windows
104	Sample Command Names
104	Disabling Invalid Commands
105	Graphical Devices in Menu Commands
106	Standard Menus and Commands
106	The Main Menu
107	Adding to the Main Menu
109	The Info Menu
110	The Document Menu
112	The Edit Menu
113	The Paste As Menu
113	Spell Checking
115	The Find Menu
116	The Format Menu
117	The Font Menu
119	The Text Menu
120	The Windows Menu
122	The Services Menu
122	Providing Services
124	Adding a Tools Menu

125	Chapter 7:  Controls 
127	Buttons
127	How Buttons Work
128	Buttons that Bring Up Lists
128	Pop-Up Lists
129	Pull-Down Lists
129	Implementing Buttons
129	Choosing the Button's Result
130	Choosing the Button's Image or Label
131	Pop-Up Lists
131	Changing the Button's Appearance During a Click
133	Text Fields
135	Sliders
136	Color Wells
137	Scrollers
138	How Scrollers Work
138	The Knob and Bar
139	The Scroll Buttons
139	Automatic Scrolling
140	Fine Tuning Mode
140	Implementing Scrollers
142	Browsers and Selection Lists
143	Choosing the Appropriate Control
143	Controls that Start Actions
144	Controls that Show State
144	Displaying a Single Option
144	Displaying a Group with an Unrestricted Relationship
145	Displaying a Group with a One-of-Many Relationship

147	Chapter 8:  Conventions for Graphic Design 
147	Laying Out Windows and Panels
148	Window Size
148	Arranging Pop-Up Lists
148	Placing Windows
148	Displaying Text
149	Displaying File Names
149	Designing Images
150	Application Icons

151	Chapter 9:  The Interface to the File System 
151	How the File System Is Organized
152	Home Folders
152	NeXT Folders
153	Local and Personal Folders
153	Net
154	Paths
154	File Name Extensions
155	Using Paths
155	Using File Name Extensions
156	Using File Packages
156	Creating Unrequested Files and Folders