Important: The information in this document is obsolete and should not be used for new development.
Preface About The Programmer's Kit xiiiChapter 1 Introduction to Cyberdog 21
Figure 1-1 The Cyberdog Starting Point 24
Figure 1-2 Cyberdog mail 25
Figure 1-3 Cyberdog news 26
Figure 1-4 Navigating to and displaying network content 28
Figure 1-5 Cyberdog item icons in the Finder 32
Figure 1-6 A Cyberdog text part 33
Figure 1-7 A Cyberdog Gopher part 34
Figure 1-8 The Connect To dialog box 38
Figure 1-9 The Preferences dialog box 39
Figure 1-10 Storage relationships in a Cyberdog process 40
Figure 1-11 The Cyberdog log 42
Figure 1-12 The Cyberdog notebook 44
Figure 1-13 The address browser 45
Figure 1-14 The Cyberdog navigator 46
Figure 1-15 An opener part, an example of a progress part 48
Figure 1-16 Monitoring and displaying progress 49
Chapter 2 Development Overview 51
Figure 2-1 Classes for creating a Cyberdog display part 55
Figure 2-2 Classes for creating a Cyberdog service 56
Figure 2-3 Classes for creating supporting parts 58
Figure 2-4 Object relationships of the Cyberdog session 60
Figure 2-5 Object relationships of Cyberdog display parts 61
Figure 2-6 Object relationships of progress monitoring objects 62
Figure 2-7 Object relationships of the log and notebook 63
Figure 2-8 Object relationships of service menu objects 64
Figure 2-9 Object relationships of the Preferences dialog box 65
Figure 2-10 Object relationships of the Connect To dialog box 66
Figure 2-11 The Gopher display part embedded in the navigator 67
Figure 2-12 Gopher display part object relationships 68
Figure 2-13 The text display part 69
Figure 2-14 Downloading object relationships 70
Chapter 3 Adding Cyberdog Features to an OpenDoc Part 87
Figure 3-1 A Cyberdog item in the button part 90
Figure 3-2 The button part embedded in a graphics part 90
Figure 3-3 A Cyberdog item for locating a mail address 91
Listing 3-1 The
CybTxtBtn
class definition 92Listing 3-2 Initializing the button part 95
Listing 3-3 The button part's
ReleaseAll
method 95Listing 3-4 The
CybTxtBtn
destructor 96Listing 3-5 The button part's
InitPart
method 97Listing 3-6 The button part's
InternalizeContent
method 99Listing 3-7 The button part's
ExternalizeContent
method 99Listing 3-8 Opening the Cyberdog item 101
Listing 3-9 The button part's
DragEnter
method 102Listing 3-10 The button part's
Drop
method 103Listing 3-11 Creating Cyberdog's menus 105
Listing 3-12 Recreating the menu bar 106
Listing 3-13 Acquiring the Cyberdog service menu's focus 107
Listing 3-14 The button part's
FocusLost
method 108Listing 3-15 The button part's
AdjustMenus
method 109Listing 3-16 The button part's
HandleMenuEvent
method 110Chapter 4 Creating a Cyberdog Display Part 113
Listing 4-1 The text-viewer sample's part extension class definition 116
Listing 4-2 The
somInit
method of the text-viewer's part extension 118Listing 4-3 The
BaseRemoved
method of the text-viewer's part extension 118Listing 4-4 The
OpenCyberItem
method of the text-viewer's part extension 119Listing 4-5 The
GetCyberItemWindow
method of the part extension 120Listing 4-6 The
CybTxtViewer
class definition 121Listing 4-7 The text-viewer part's
HasExtension
method 124Listing 4-8 The text-viewer part's
AcquireExtension
method 125Listing 4-9 The text-viewer part's
ReleaseExtension
method 125Listing 4-10 The text-viewer part's
ReleaseAll
method 126Listing 4-11 Releasing the text viewer's Cyberdog part extension 127
Listing 4-12 The
CybTxtViewer
constructor 127Listing 4-13 Initializing the Cyberdog environment 128
Listing 4-14 The
CybTxtViewer
destructor 129Listing 4-15 The text-viewer part's
Open
method 131Listing 4-16 Reading the window-position hint from storage 132
Listing 4-17 Using the window-position layer hint 133
Listing 4-18 Using the window-position coordinate hint 134
Listing 4-19 The
OpenCyberItem
method of the text-viewer part 135Listing 4-20 The text-viewer part's
HandleEvent
method 136Listing 4-21 Handling downloaded data 137
Listing 4-22 The
GetCyberItemWindow
method of the text-viewer part 139Listing 4-23 The
HandleEvent
method of the text-viewer part 141Listing 4-24 The
HandleMenuEvent
method of the text-viewer part 142Listing 4-25 The
kODNameMappings
resource 143Chapter 5 Embedding a Cyberdog Display Part in a Navigator 145
Listing 5-1 The
CybTxtNavViewer
class definition 148Listing 5-2 The
OpenCyberItem
method of the embedded text-viewer part 150Listing 5-3 Creating a parameter set object 152
Listing 5-4 Opening a Cyberdog item from an embedded display part 153
Listing 5-5 The
GetContainingNavigator
method of the embedded text-viewer part 154Listing 5-6 The
InitiateDownload
method of the embedded text-viewer part 156Listing 5-7 The embedded text-viewer's abort callback function 157
Listing 5-8 Adding a progress broadcaster 158
Listing 5-9 The
DisplayFrameRemoved
method of the embedded text-viewer part 158Listing 5-10 Sending status messages to the navigator 160
Listing 5-11 The
HandleCommand
method of the embedded text-viewer's part extension 161Listing 5-12 The
HandleCommand
method of the embedded text-viewer's part 163Chapter 6 Types, Constants, and Global Functions 167
Figure 6-1
'srvc'
resource 178Table 6-1 MIME media types, part kinds, and reference kinds 184
Chapter 7 Classes and Methods 197
Table 7-1 Format of a flattened Cyberdog item 227