head     1.4;
branch   ;
access   ;
symbols  ;
locks    ;
comment  @@;


1.4
date     95.02.20.18.16.58;  author ian;  state Exp;
branches ;
next     1.3;

1.3
date     95.02.19.14.58.07;  author ian;  state Exp;
branches ;
next     1.2;

1.2
date     95.02.19.09.34.17;  author ian;  state Exp;
branches ;
next     1.1;

1.1
date     95.02.19.09.28.47;  author ian;  state Exp;
branches ;
next     ;


desc
@Table of Content with PDFmarks, made by lotsa hand editing.
@


1.4
log
@Fiddle the bounding rectangle. Better indentation of nested items.
@
text
@%!Adobe-PS

%%EndComments

% ensure pdfmark doesn't bomb out PS interpreters that lack it
/pdfmark where
{pop} {userdict /pdfmark /cleartomark load put} ifelse

/iandict 100 dict def
iandict begin

/cropLLX 30 def
/cropLLY 90 def
/cropURX 520 def
/cropURY 760 def

/lftmargin cropLLX 30 add def
/botmargin cropLLY 30 add def
/ritmargin cropURX 30 sub def
/topmargin cropURY 30 sub def

/linelen ritmargin lftmargin sub def

/bodysize 11 def
/deltay   13 def

/normal {
	/Times-Roman findfont bodysize scalefont setfont
} def
/bold	{
	/Times-Bold findfont 2 bodysize add scalefont setfont
} def

% Special TOC functions
/tocStartPage {	% -- tocStartPage --	reset position
	/curx lftmargin def
	/cury topmargin def
	curx cury moveto 
	normal
	nl
	} def

/nl	{	% -- nl --	newline
	/curx lftmargin def
	/cury cury deltay sub def
	% no Page Trap since we do it by hand to match printed TOC exactly
	% cury botmargin lt {
	% 	showpage
	% 	tocStartPage
	% } if
	curx cury moveto
	} def

/tl	{	% string tl --
	/tltxt exch def
	bold
	tltxt stringwidth pop /tlwid exch def
	linelen tlwid sub 2 div 0 rmoveto
	tltxt show
	nl
	normal
	} def

/rightshow {	% text rightshow --
	/rstext exch def
	rstext stringwidth pop /rswid exch def
	ritmargin rswid sub cury moveto
	rstext show
	} def

/Page	{	% -- Page --	sets "Page" at ritmargin
	nl
	(Page) rightshow
	nl
	} def

/mklink	{	% npage text mklink --
	/pageno exch def
	/text exch def
	% the little 4 add's, 3 sub's, etc are fine-tuning the rectangle
	text stringwidth
		pop
		4 add
		/xmove exch def
	[ /Rect [curx 3 sub cury 1 sub curx xmove add cury bodysize add 1 sub]
		/Border [1 1 1] /Page pageno
		/View [/XYZ -4 cropURY 1]
		/LNK pdfmark
	} def

/ent	{	% string spage npage ent --
	/npage exch def
	/spage exch def
	/mytext exch def
	mytext npage mklink
	mytext show
	spage stringwidth pop /xx exch def
	/curx ritmargin xx sub def
	curx cury moveto
	spage npage mklink
	spage show
	nl
	} def
/chent	{	% SAME AS ENT but in bold for chapter 
	/npage exch def
	/spage exch def
	/mytext exch def
	bold 
		mytext npage mklink
		mytext show
	normal
	spage stringwidth pop /xx exch def
	/curx ritmargin xx sub def
	curx cury moveto
	spage npage mklink
	spage show
	nl
	} def

%%EndProlog

%%BeginSetup
%%EndSetup

%%Page: 1 "v"
tocStartPage
 
(Table of Contents) tl
(Volume 7A: Programming Manual) tl
nl
Page
nl
(Preface) (xxxiii) 33 ent
nl
(Please Read This Section!) (xxxiii) 33 ent
(How to Use This Manual) (xxxiv) 34 ent
(Assumptions) (xxxvi) 36 ent
(Font Conventions Used in This Manual) (xxxvi) 36 ent
(Related Documents) (xxxvii) 37 ent
(Requests for Comments) (xxxviii) 38 ent
(Obtaining the Example Programs) (xxxviii) 38 ent
(    FTP) (xxxviii) 38 ent
(    FTPMAIL) (xxxix) 39 ent
(    BITFTP) (xl) 40 ent
(    UUCP) (xl) 40 ent
(Acknowledgments) (xli) 41 ent
(Acknowledgments for XView Version 3 Update) (xlii) 42 ent
nl
nl
(Chapter 1 XView and the X Window System ) (3) 45 chent
nl
(1.1 The X Window System) (3) 45 ent
(    1.1.1 The Server and Client) (5) 47 ent
(1.2 The Software Hierarchy) (7) 49 ent
(1.3 Extensions to X) (8) 50 ent
(1.4 The Window Manager) (9) 51 ent
(1.5 Handling Events) (9) 51 ent
(1.6 Development of the XView Toolkit) (11) 53 ent
(1.7 Versions of the XView Toolkit) (12) 54 ent
(1.8 OPEN LOOK Graphical User Interface) (12) 54 ent
nl
nl
(Chapter 2 The XView Programmer's Model ) (17) 59 chent
nl
(2.1 Object-oriented Programming) (17) 59 ent
(    2.1.1 Object Class Hierarchy) (18) 60 ent
(    2.1.2 Object Handles) (19) 61 ent
(2.2 Attribute-based Functions) (21) 63 ent
(    2.2.1 Creating and Manipulating Objects) (21) 63 ent
(    2.2.2 Changing Object Attributes) (22) 64 ent
(    2.2.3 Types of Attributes) (22) 64 ent
showpage
%%EndPage
%%Page: 2 "vi"
tocStartPage
(2.3 Internal Attribute-Value Lists) (23) 65 ent
(2.4 Types of Objects) (23) 65 ent
(    2.4.1 Generic Objects) (24) 66 ent
(    2.4.2 Window Objects) (25) 67 ent
(    2.4.3 Frames and Subframes) (26) 68 ent
(    2.4.4 Subwindows) (29) 71 ent
(        2.4.4.1 Canvas subwindows) (30) 72 ent
(        2.4.4.2 Text subwindows) (30) 72 ent
(        2.4.4.3 Panels) (30) 72 ent
(        2.4.4.4 Menus) (31) 73 ent
(        2.4.4.5 Scrollbars) (33) 75 ent
(        2.4.4.6 Icons) (34) 76 ent
(    2.4.5 Nonvisual Objects) (34) 76 ent
(2.5 The Notifier Model) (35) 77 ent
(    2.5.1 Callback Style of Programming) (35) 77 ent
(    2.5.2 Why a Notification-based System?) (36) 78 ent
(    2.5.3 Relationship Among the Notifier, Objects, and the Application) (37) 79 ent
(    2.5.4 Calling the Notifier Directly) (37) 79 ent
nl
nl
(Chapter 3 Creating XView Applications ) (41) 83 chent
nl
(3.1 Interface Overview) (41) 83 ent
(    3.1.1 Compiling XView Programs) (41) 83 ent
(    3.1.2 XView Libraries) (42) 84 ent
(    3.1.3 Header Files) (42) 84 ent
(    3.1.4 Naming Conventions) (43) 85 ent
(        3.1.4.1 Reserved names) (43) 85 ent
(    3.1.5 Example of XView-style Programming) (43) 85 ent
(3.2 Initializing XView) (45) 87 ent
(    3.2.1 Using xv_init\(\)) (46) 88 ent
(3.3 Creating and Modifying Objects) (47) 89 ent
(    3.3.1 Using xv_create\(\)) (47) 89 ent
(    3.3.2 Using xv_find\(\)) (49) 91 ent
(    3.3.3 Using xv_destroy\(\)) (50) 92 ent
(    3.3.4 Using xv_set\(\) and xv_get\(\)) (51) 93 ent
(    3.3.5 Precedence of Resource Options) (53) 95 ent
(3.4 xv_main_loop\(\) and the Notifier) (54) 96 ent
nl
nl
(Chapter 4 Frames ) (59) 101 chent
nl
(4.1 Types of Frames) (61) 103 ent
(    4.1.1 The Role of the Window Manager) (61) 103 ent
(4.2 Base Frames) (62) 104 ent
(    4.2.1 XView Initialization and Base Frames) (62) 104 ent
(    4.2.2 Headers and Footers) (63) 105 ent
(    4.2.3 Closed Base Frames) (66) 108 ent
showpage
%%EndPage
%%Page: 3 "vii"
tocStartPage
(    4.2.4 Quit Confirmation) (67) 109 ent
(4.3 Command Frames) (68) 110 ent
(    4.3.1 Manually Displaying Frames) (69) 111 ent
(    4.3.2 The Pushpin) (69) 111 ent
(    4.3.3 The FRAME_DONE_PROC Procedure) (71) 113 ent
(    4.3.4 Showing Resize Corners) (73) 115 ent
(    4.3.5 Minimum and Maximum Frame Sizes) (73) 115 ent
(4.4 Miscellaneous Attributes) (73) 115 ent
(4.5 Busy Frames) (74) 116 ent
(4.6 Frame Sizes) (74) 116 ent
(4.7 Frame Colors) (75) 117 ent
(4.8 Child Windows) (76) 118 ent
(4.9 Window Loop) (77) 119 ent
(4.10 Removing Decorations) (78) 120 ent
(4.11 Setting Properties and Saving Command-line Options) (78) 120 ent
(4.12 Destroying Frames) (79) 121 ent
(4.13 Frame Resize and Repaint Events) (81) 123 ent
(4.14 Frame Package Summary) (81) 123 ent
nl
nl
(Chapter 5 Canvases and Openwin ) (85) 127 chent
nl
(5.1 Canvas Model) (86) 128 ent
(5.2 Creating a Canvas) (88) 130 ent
(    5.2.1 Drawing in a Canvas) (89) 131 ent
(        5.2.1.1 Draw programs) (89) 131 ent 
(        5.2.1.2 Paint programs) (90) 132 ent
(        5.2.1.3 Text-based programs) (90) 132 ent
(        5.2.1.4 Visualization programs) (90) 132 ent
(        5.2.1.5 Rendering graphics) (91) 133 ent
(5.3 The Repaint Procedure) (91) 133 ent
(5.4 Controlling Canvas Sizes) (98) 140 ent
(    5.4.1 Automatic Canvas Sizing) (98) 140 ent
(    5.4.2 Explicit Canvas Sizing) (99) 141 ent
(    5.4.3 Tracking Changes in the Canvas Size) (100) 142 ent
(5.5 Scrolling Canvases) (101) 143 ent
(5.6 Splitting Canvas Views) (102) 144 ent
(    5.6.1 Splitting Views Using Scrollbars) (102) 144 ent
(    5.6.2 Splitting Views Using xv_set\(\)) (103) 145 ent
(    5.6.3 Getting View Windows) (103) 145 ent
(        5.6.3.1 Getting the newest view) (103) 145 ent
(        5.6.3.2 Getting arbitrary views) (104) 146 ent
(5.7 Handling Input in the Canvas Package) (105) 147 ent
(    5.7.1 Default Events) (106) 148 ent
(    5.7.2 Notification of Events) (106) 148 ent
(5.8 Canvas and Openwin Package Summaries) (110) 152 ent
showpage
%%EndPage
%%Page: 4 "viii"
tocStartPage
(Chapter 6 Handling Input ) (115) 157 chent
nl
(6.1 Introduction to Events in XView) (116) 158 ent
(6.2 Classes of Events) (116) 158 ent
(        6.2.0.1 Event IDs) (117) 159 ent
(        6.2.0.2 Semantic events) (117) 159 ent
(6.3 Registering Events) (118) 160 ent
(    6.3.1 Specifying X Event Masks) (118) 160 ent
(    6.3.2 Specifying XView Events) (119) 161 ent
(        6.3.2.1 Mouse events) (120) 162 ent
(        6.3.2.2 Keyboard events) (121) 163 ent
(        6.3.2.3 Resize and repaint events) (122) 164 ent
(        6.3.2.4 Client messages) (123) 165 ent
(        6.3.2.5 Miscellaneous events) (123) 165 ent
(6.4 The Event Handler) (124) 166 ent
(6.5 The Event Structure) (124) 166 ent
(6.6 Determining the Event) (125) 167 ent
(        6.6.0.1 Event states) (126) 168 ent
(        6.6.0.2 Modifier keys) (126) 168 ent
(    6.6.1 Keyboard Events) (126) 168 ent
(        6.6.1.1 Mouse events) (128) 170 ent
(        6.6.1.2 Keyboard focus) (129) 171 ent
(        6.6.1.3 Selection events) (130) 172 ent
(6.7 Interpreting Client Messages) (130) 172 ent
(    6.7.1 Sending and Reading Client Messages) (130) 172 ent
(6.8 Reading Input Directly) (131) 173 ent
(6.9 Sample Program) (133) 175 ent
(6.10 Extensions for Events) (138) 180 ent
(6.11 Selecting Events on Other Clients) (139) 181 ent
(6.12 Soft Function Keys and Virtual Keyboards) (140) 182 ent
(    6.12.1 Soft Function Keys) (140) 182 ent
(    6.12.2 Virtual Keyboards) (142) 184 ent
(    6.12.2.1 Multiple language support) (142) 184 ent
(6.13 The Mouseless Model) (142) 184 ent
(    6.13.1 Keyboard Command Mapping) (143) 185 ent
(    6.13.2 Mouseless Model Resources) (145) 187 ent
(    6.13.3 Using the Mouseless Model) (145) 187 ent
(        6.13.3.1 The role of the window manager) (146) 188 ent
(        6.13.3.2 Application responsibilities) (146) 188 ent
(    6.13.4 The Location Cursor) (146) 188 ent
(    6.13.5 Events) (147) 189 ent
(6.14 Using Accelerators) (147) 189 ent
nl
nl
(Chapter 7 Panels ) (153) 195 chent
nl
(7.1 Creating a Panel) (155) 197 ent
(        7.1.0.1 Fonts and panels) (156) 198 ent
showpage
%%EndPage
%%Page: 5 "ix"
tocStartPage
(    7.1.1 Scrollable Panels) (156) 198 ent
(7.2 Creating Panel Items) (157) 199 ent
(7.3 Layout of Panels and Panel Items) (159) 201 ent
(    7.3.1 Panel Layout) (159) 201 ent
(    7.3.2 Panel Item Layout) (160) 202 ent
(7.4 Explicit Panel Item Positioning) (161) 203 ent
(    7.4.1 Relative Panel Item Positioning) (161) 203 ent
(    7.4.2 Absolute Panel Item Positioning) (162) 204 ent
(        7.4.2.1 General positioning of items) (163) 205 ent
(    7.4.3 Layout of Panel Items with Values) (163) 205 ent
(7.5 Sizing Panels) (164) 206 ent
(7.6 Panel Item Values) (164) 206 ent
(7.7 Iterating Over a Panel's Items) (165) 207 ent
(7.8 Panel Item Classes) (165) 207 ent
(7.9 Button Items) (166) 208 ent
(    7.9.1 Button Selection) (167) 209 ent
(        7.9.1.1 Making a button inactive) (167) 209 ent
(    7.9.2 Menu Buttons) (167) 209 ent
(        7.9.2.1 Destroying menu buttons) (169) 211 ent
(    7.9.3 Panel Button Width) (170) 212 ent
(    7.9.4 Abbreviated Menu Buttons) (170) 212 ent
(7.10 Choice Items) (171) 213 ent
(    7.10.1 Display and Layout of Item Choices) (171) 213 ent
(    7.10.2 Exclusive and Nonexclusive Choices) (172) 214 ent
(    7.10.3 Abbreviated Choices) (173) 215 ent
(    7.10.4 Checkbox Choices) (174) 216 ent
(    7.10.5 Choice Selection and Notification) (175) 217 ent
(    7.10.6 Foreground Color in Choice Items) (175) 217 ent
(    7.10.7 Parallel Lists) (176) 218 ent
(7.11 Scrolling Lists) (177) 219 ent
(    7.11.1 Displaying List Items) (178) 220 ent
(    7.11.2 Adding and Deleting List Entries) (181) 223 ent
(    7.11.3 List Selection) (182) 224 ent
(    7.11.4 List Notification) (183) 225 ent
(        7.11.4.1 List item client data) (184) 226 ent
(    7.11.5 The Scrolling List Menu) (184) 226 ent
(7.12 Message Items) (184) 226 ent
(7.13 Slider Items) (186) 228 ent
(    7.13.1 Slider Selection) (187) 229 ent
(    7.13.2 Slider Notification) (187) 229 ent
(    7.13.3 Slider Value) (187) 229 ent
(7.14 Gauges) (188) 230 ent
(7.15 Text Items) (188) 230 ent
(    7.15.1 The Current Keyboard Focus) (190) 232 ent
(    7.15.2 Text Selection) (191) 233 ent
(    7.15.3 Text Notification) (191) 233 ent
(    7.15.4 Writing Your Own Text Notify Procedure) (192) 234 ent
(    7.15.5 Text Value) (193) 235 ent
showpage
%%EndPage
%%Page: 6 "x"
tocStartPage
(7.16 Numeric Text Items) (193) 235 ent
(7.17 Multiline Text Items) (193) 235 ent
(7.18 Drop Target Items) (194) 236 ent
(    7.18.1 Programming a Panel Drop Target Item) (196) 238 ent
(        7.18.1.1 Create the drop target item) (196) 238 ent
(        7.18.1.2 Specify the glyphs) (196) 238 ent
(        7.18.1.3 Create the drag and drop object) (197) 239 ent
(        7.18.1.4 Define the drop target item's requestor) (197) 239 ent
(        7.18.1.5 Controlling the glyphs) (198) 240 ent
(        7.18.1.6 Dropping on the drop target) (198) 240 ent
(        7.18.1.7 Dragging from the drop target item) (198) 240 ent
(    7.18.2 Drop Target Notification) (198) 240 ent
(7.19 Advanced Panel Usage) (199) 241 ent
(    7.19.1 Attaching Data to Panel Items) (199) 241 ent
(    7.19.2 Using PANEL_REPAINT_PROC) (202) 244 ent
(    7.19.3 Painting Panel Items) (205) 247 ent
(    7.19.4 Panel Event Handling) (205) 247 ent
(    7.19.5 Using an Interpose Function) (207) 249 ent
(    7.19.6 Using PANEL_BACKGROUND_PROC) (207) 249 ent
(    7.19.7 Using PANEL_EVENT_PROC) (207) 249 ent
(    7.19.8 Event Handling Example) (208) 250 ent
(7.20 Panel Package Summary) (209) 251 ent
nl
nl
(Chapter 8 Text Subwindows ) (215) 257 chent
nl
(8.1 Creating Text Subwindows) (216) 258 ent
(8.2 Setting Text Subwindow Attributes) (216) 258 ent
(8.3 Text Subwindow Contents) (216) 258 ent
(8.4 Editing a Text Subwindow) (217) 259 ent
(    8.4.1 Loading a File) (217) 259 ent
(    8.4.2 Checking the Status of the Text Subwindow) (218) 260 ent
(    8.4.3 Writing to a Text Subwindow) (219) 261 ent
(        8.4.3.1 Setting the insertion point) (219) 261 ent
(    8.4.4 Reading from a Text Subwindow) (219) 261 ent
(    8.4.5 Deleting Text) (220) 262 ent
(    8.4.6 Emulating an Editing Character) (221) 263 ent
(    8.4.7 Replacing Characters) (221) 263 ent
(    8.4.8 The Editing Log) (222) 264 ent
(    8.4.9 Which File is Being Edited?) (222) 264 ent
(        8.4.9.1 Interactions with the file system) (223) 265 ent
(8.5 Saving Edits in a Subwindow) (223) 265 ent
(    8.5.1 Storing Edits) (223) 265 ent
(    8.5.2 Discarding Edits) (224) 266 ent
(8.6 Setting the Contents of a Text Subwindow) (224) 266 ent
(    8.6.1 TEXTSW_FILE_CONTENTS) (224) 266 ent
(    8.6.2 TEXTSW_CONTENTS) (225) 267 ent
(    8.6.3 TEXTSW_INSERT_FROM_FILE) (225) 267 ent
showpage
%%EndPage
%%Page: 7 "xi"
tocStartPage
(8.7 Positioning the Text Displayed in a Text Subwindow) (226) 268 ent
(    8.7.1 Screen Lines and File Lines) (226) 268 ent
(    8.7.2 Absolute Positioning) (226) 268 ent
(    8.7.3 Relative Positioning) (227) 269 ent
(    8.7.4 Which File Lines are Visible?) (227) 269 ent
(        8.7.4.1 Guaranteeing what is visible) (228) 270 ent
(        8.7.4.2 Ensuring that the insertion point is visible) (228) 270 ent
(8.8 Finding and Matching a Pattern) (228) 270 ent
(    8.8.1 Matching a Span of Characters) (228) 270 ent
(    8.8.2 Matching a Specific Pattern) (229) 271 ent
(8.9 Marking Positions) (230) 272 ent
(    8.9.1 Getting a Text Selection) (231) 273 ent
(    8.9.2 Setting the Text Selection) (232) 274 ent
(8.10 Dealing with Multiple Views) (232) 274 ent
(8.11 Text Subwindow Destroy Confirmation) (233) 275 ent
(8.12 Notifications from a Text Subwindow) (233) 275 ent
(    8.12.1 Text Subwindow Interposition) (236) 278 ent
(8.13 Text Subwindow Package Summary) (236) 278 ent
nl
nl
(Chapter 9 TTY Subwindows ) (241) 283 chent
nl
(9.1 Creating a TTY Subwindow) (241) 283 ent
(9.2 Driving a TTY Subwindow) (242) 284 ent
(9.3 Monitoring the Program in the TTY Subwindow) (246) 288 ent
(9.4 Talking Directly to the TTY Subwindow) (247) 289 ent
(9.5 TTY Subwindow Function Key Escape Sequences) (249) 291 ent
(9.6 TTY Package Summary) (250) 292 ent
nl
nl
(Chapter 10 Scrollbars ) (253) 295 chent
nl
(10.1 Creating Scrollbars) (254) 296 ent
(10.2 Relationship Between Scrollbars and Objects) (256) 298 ent
(10.3 An Example) (258) 300 ent
(10.4 Managing Your Own Scrollbar) (263) 305 ent
(    10.4.1 Monitoring When Scrollbar Events Occur) (264) 306 ent
(    10.4.2 Providing a Scrollbar Compute Procedure) (266) 308 ent
(        10.4.2.1 Indicating scrollbar motion) (268) 310 ent
(    10.4.3 Providing a Scrollbar Normalize Procedure) (268) 310 ent
(10.5 Scrollbar Package Summary) (270) 312 ent
nl
nl
(Chapter 11 Menus ) (273) 315 chent
nl
(11.1 Menu Types) (273) 315 ent
(    11.1.1 Pop-up Menus) (274) 316 ent
(    11.1.2 Pulldown Menus) (274) 316 ent
showpage
%%EndPage
%%Page: 8 "xii"
tocStartPage
(    11.1.3 Pullright Menus) (274) 316 ent
(11.2 Menu Items) (276) 318 ent
(    11.2.1 Choice Items) (276) 318 ent
(    11.2.2 Exclusive Items) (276) 318 ent
(    11.2.3 Nonexclusive Items) (277) 319 ent
(11.3 Creating Menus) (277) 319 ent
(11.4 Displaying Menus) (279) 321 ent
(11.5 A Simple Program) (280) 322 ent
(11.6 Creating Menu Items) (283) 325 ent
(    11.6.1 Using MENU_ITEM) (283) 325 ent
(    11.6.2 Using MENU_ACTION_ITEM) (284) 326 ent
(    11.6.3 Using MENUITEM) (284) 326 ent
(11.7 Adding Menu Items) (285) 327 ent
(11.8 Pullright Menus) (285) 327 ent
(11.9 Menu-generating Procedures) (287) 329 ent
(    11.9.1 Parent Menus) (290) 332 ent
(    11.9.2 Using MENU_GEN_PROC) (290) 332 ent
(11.10 Using Toggle Menus) (291) 333 ent
(11.11 Menu Layout) (292) 334 ent
(11.12 Making Pin-up Menus) (292) 334 ent
(11.13 Notification Procedures) (294) 336 ent
(11.14 Finding Menu Items) (297) 339 ent
(11.15 Initial and Default Menu Selections) (297) 339 ent
(11.16 Unpinned Command Frame Dismissal) (298) 340 ent
(11.17 Destroying Menus) (298) 340 ent
(    11.17.1 Freeing Allocated Strings) (299) 341 ent
(    11.17.2 Freeing Pullright Menus) (299) 341 ent
(    11.17.3 Menu Client Data) (300) 342 ent
(11.18 Example Program) (300) 342 ent
(11.19 Menu Package Summary) (304) 346 ent
nl
nl
(Chapter 12 Notices ) (307) 349 chent
nl
(12.1 Creating and Displaying Notices) (308) 350 ent
(    12.1.1 Notice Values and Status) (311) 353 ent
(12.2 Types of Notices) (313) 355 ent
(    12.2.1 Standard Notices) (313) 355 ent
(        12.2.1.1 Using a notice callback) (315) 357 ent
(        12.2.1.2 Selecting the busy frames) (316) 358 ent
(    12.2.2 Notices That Lock the Screen) (316) 358 ent
(        12.2.2.1 Notice triggers) (318) 360 ent
(12.3 Destroying a Notice) (320) 362 ent
(12.4 Another Example) (320) 362 ent
(12.5 Notice Package Summary) (323) 365 ent
showpage
%%EndPage
%%Page: 9 "xiii"
tocStartPage
(Chapter 13 Cursors ) (327) 369 chent
nl
(13.1 Creating Cursors) (327) 369 ent
(    13.1.1 simple_cursor.c) (328) 370 ent
(13.2 Predefined Cursors) (330) 372 ent
(13.3 The Hotspot and Cursor Location) (330) 372 ent
(13.4 Color Cursors) (333) 375 ent
(13.5 Support for Text Drag and Drop) (334) 376 ent
(13.6 Cursor Package Summary) (335) 377 ent
nl
nl
(Chapter 14 Icons ) (339) 381 chent
nl
(14.1 Creating and Destroying Icons) (339) 381 ent
(14.2 The Icon's Image) (340) 382 ent
(        14.2.0.1 Color icons) (342) 384 ent
(        14.2.0.2 ICON_TRANSPARENT) (343) 385 ent
(        14.2.0.3 ICON_MASK_IMAGE) (344) 386 ent
(    14.2.1 The Icon Text) (344) 386 ent
(    14.2.2 ICON_TRANSPARENT_LABEL) (345) 387 ent
(14.3 Icon Package Summary) (345) 387 ent
nl
nl
(Chapter 15 Nonvisual Objects ) (349) 391 chent
nl
(15.1 The Display) (350) 392 ent
(15.2 The Screen Object) (350) 392 ent
(    15.2.1 Multiple Screens) (351) 393 ent
(15.3 The SERVER Package) (353) 395 ent
(    15.3.1 Creating a Server \(Establishing a Connection\)) (353) 395 ent
(    15.3.2 Connecting to Multiple Servers) (354) 396 ent
(    15.3.3 Getting the Server) (354) 396 ent
(15.4 Server Images) (355) 397 ent
(    15.4.1 Creating Server Images) (356) 398 ent
(15.5 The FULLSCREEN Package) (359) 401 ent
(        15.5.0.1 Debugging and the FULLSCREEN package) (361) 403 ent
(15.6 Nonvisual Package Summary) (362) 404 ent
nl
nl
(Chapter 16 Fonts ) (367) 409 chent
nl
(16.1 Creating Fonts) (368) 410 ent
(    16.1.1 Font Families and Styles) (371) 413 ent
(    16.1.2 Font Sizes) (373) 415 ent
(    16.1.3 Scaling Fonts) (373) 415 ent
(    16.1.4 Fonts by Name) (375) 417 ent
(16.2 Font Dimensions) (375) 417 ent
(16.3 Font Package Summary) (377) 419 ent
showpage
%%EndPage
%%Page: 10 "xiv"
tocStartPage
(Chapter 17 Resources ) (381) 423 chent
nl
(17.1 Predefined Defaults) (381) 423 ent
(17.2 XView Resource Database Functions) (385) 427 ent
(    17.2.1 Boolean Resources) (385) 427 ent
(    17.2.2 Integer Resources) (386) 428 ent
(    17.2.3 Character Resources) (387) 429 ent
(    17.2.4 String Resources) (387) 429 ent
(    17.2.5 Enumerated Resources) (388) 430 ent
(17.3 Creating Resource Instances) (390) 432 ent
nl
nl
(Chapter 18 Selections ) (393) 435 chent
nl
(18.1 The XView Selection Model) (395) 437 ent
(18.2 How Selection Works \(Without a Selection Item\)) (396) 438 ent
(    18.2.1 Highlighting the Selection \(Selection Owner\)) (397) 439 ent
(    18.2.2 Making the Selection \(Selection Owner\)) (397) 439 ent
(    18.2.3 Requesting the Selection \(Selection Requestor\)) (399) 441 ent
(        18.2.3.1 Specifying the target type \(selection requestor\)) (400) 442 ent
(        18.2.3.2 SEL_REPLY_PROC \(selection requestor\)) (400) 442 ent
(        18.2.3.3 Timeout for a selection response) (401) 443 ent
(        18.2.3.4 Requesting the CLIPBOARD selection-blocking) (401) 443 ent
(        18.2.3.5 Requesting the CLIPBOARD selection-non-blocking) (402) 444 ent
(    18.2.4 Converting the Selection \(Selection Owner\)) (403) 445 ent
(        18.2.4.1 The default conversion procedure) (404) 446 ent
(        18.2.4.2 Sample selection owner with conversion procedure) (404) 446 ent
(    18.2.5 Handling the Response \(Selection Requestor\)) (406) 448 ent
(        18.2.5.1 Handling selection reply procedure errors) (408) 450 ent
(    18.2.6 If the Selection is Lost \(Selection Owner\)) (410) 452 ent
(    18.2.7 Cleanup - When the Selection Completes \(Selection Owner\)) (410) 452 ent
(18.3 How Selection Works \(With a Selection Item\)) (411) 453 ent
(    18.3.1 The Selection Item) (412) 454 ent
(18.4 How to Send Data Incrementally \(Selection Owner\)) (415) 457 ent
(    18.4.1 How to Handle Incremental Replies \(Selection Requestor\)) (416) 458 ent
(18.5 Requesting and Converting Multiple Targets) (417) 459 ent
(18.6 Additional Transfer Mechanisms \(Selection Requestor\)) (418) 460 ent
(18.7 Additional Transfer Mechanisms \(Selection Owner\)) (418) 460 ent
(18.8 Sample Selection Owner Program with a Selection Item) (418) 460 ent
(        18.8.0.1 The notify procedure) (421) 463 ent
(        18.8.0.2 The conversion procedure) (422) 464 ent
(    18.8.1 The Done Procedure) (423) 465 ent
(    18.8.2 The Lose Procedure) (423) 465 ent
(18.9 Sample Selection Requestor Program) (424) 466 ent
(        18.9.0.1 Sample reply procedure) (427) 469 ent
(        18.9.0.2 Sample error procedure) (429) 471 ent
(18.10 Selection Package Summary) (430) 472 ent
showpage
%%EndPage
%%Page: 11 "xv"
tocStartPage
(Chapter 19 Drag and Drop ) (433) 475 chent
nl
(19.1 Drag and Drop Objects) (435) 477 ent
(19.2 Registering Drop-sites) (436) 478 ent
(    19.2.1 Adding and Deleting Regions) (436) 478 ent
(    19.2.2 Handling Events) (437) 479 ent
(        19.2.2.1 Preview events) (438) 480 ent
(        19.2.2.2 Event forwarding) (438) 480 ent
(        19.2.2.3 Handling drop and preview events) (438) 480 ent
(19.3 Sourcing the Drag) (439) 481 ent
(    19.3.1 Initiating the Drop Operation) (440) 482 ent
(    19.3.2 Interaction with the Selection Package) (441) 483 ent
(    19.3.3 Defining the Drag/Accept Cursor) (441) 483 ent
(    19.3.4 Timeout Value) (442) 484 ent
(19.4 Receiving a Drop) (442) 484 ent
(        19.4.0.1 The move operation) (443) 485 ent
(        19.4.0.2 The done procedure) (443) 485 ent
(19.5 Sample Program-Sourcing a Drag) (444) 486 ent
(19.6 Sample Program-Drop Site Item and Destination) (450) 492 ent
(19.7 Drag and Drop Package Summary) (456) 498 ent
nl
nl
(Chapter 20 The Notifier ) (459) 501 chent
nl
(20.1 Basic Concepts) (459) 501 ent
(    20.1.1 Mainline Input Handling) (459) 501 ent
(    20.1.2 Event-driven Input Handling) (460) 502 ent
(20.2 Functions of the Notifier) (460) 502 ent
(20.3 How the Notifier Works) (461) 503 ent
(    20.3.1 Restrictions) (461) 503 ent
(        20.3.1.1 System calls to avoid) (462) 504 ent
(20.4 What is a Notifier Client?) (463) 505 ent
(    20.4.1 Types of Interaction) (463) 505 ent
(20.5 Signal Handling) (464) 506 ent
(    20.5.1 Signals to Avoid) (464) 506 ent
(    20.5.2 A Replacement for signal\(\)) (465) 507 ent
(    20.5.3 Timers) (467) 509 ent
(    20.5.4 Handling SIGTERM) (470) 512 ent
(    20.5.5 Handling SIGCHLD) (471) 513 ent
(        20.5.5.1 Reaping dead processes) (472) 514 ent
(20.6 Interaction with RPC) (473) 515 ent
(20.7 Client Events) (474) 516 ent
(    20.7.1 Receiving Client Events) (475) 517 ent
(    20.7.2 Posting Client Events) (476) 518 ent
(        20.7.2.1 Actual delivery time) (477) 519 ent
(    20.7.3 Posting with an Argument) (477) 519 ent
(    20.7.4 Posting Destroy Events) (478) 520 ent
(    20.7.5 Delivery Time of Destroy Events) (479) 521 ent
showpage
%%EndPage
%%Page: 12 "xvi"
tocStartPage
(20.8 Reading and Writing Through File Descriptors) (479) 521 ent
(    20.8.1 Reading Files) (480) 522 ent
(    20.8.2 Reading and Writing on Pipes) (482) 524 ent
(    20.8.3 Exception Occurred Events) (487) 529 ent
(    20.8.4 Getting an Event Handler) (487) 529 ent
(20.9 Interposition) (488) 530 ent
(    20.9.1 Uses of Interposition) (489) 531 ent
(    20.9.2 Interface to Interposition) (489) 531 ent
(    20.9.3 Registering an Interposer) (489) 531 ent
(    20.9.4 Invoking the Next Function) (490) 532 ent
(    20.9.5 Removing an Interposed Function) (491) 533 ent
(    20.9.6 An Interposition Example) (491) 533 ent
(    20.9.7 Interposing on Resize Events) (493) 535 ent
(    20.9.8 Modifying an Object's Destruction) (493) 535 ent
(        20.9.8.1 Interposing a client destroy handler) (495) 537 ent
(        20.9.8.2 Enabling panel item interposition) (497) 539 ent
(20.10 Notifier Control) (498) 540 ent
(    20.10.1 Mass Destruction) (499) 541 ent
(    20.10.2 Implicit Dispatching) (499) 541 ent
(    20.10.3 Explicit Dispatching) (501) 543 ent
(20.11 Emulating a sleep\(\) Call) (502) 544 ent
(20.12 Advanced Notifier Usage) (503) 545 ent
(    20.12.1 Prioritization) (504) 546 ent
(        20.12.1.1 Providing a prioritizer) (504) 546 ent
(        20.12.1.2 Dispatching events) (505) 547 ent
(        20.12.1.3 Getting the prioritizer) (506) 548 ent
(    20.12.2 Scheduling the Notifier) (506) 548 ent
(        20.12.2.1 Dispatching clients) (507) 549 ent
(        20.12.2.2 Getting the scheduler) (507) 549 ent
(20.13 Error Codes) (507) 549 ent
(20.14 Issues) (509) 551 ent
nl
nl
(Chapter 21 Color ) (513) 555 chent
nl
(21.1 XView Color Model) (513) 555 ent
(        21.1.0.1 What is a colormap segment?) (514) 556 ent
(    21.1.1 Colormap Segment Types) (515) 557 ent
(        21.1.1.1 Static colormap segments) (515) 557 ent
(        21.1.1.2 Dynamic colormap segments) (515) 557 ent
(21.2 Creating Colormap Segments) (516) 558 ent
(        21.2.0.1 Cms size) (516) 558 ent
(    21.2.1 Specifying Colors) (517) 559 ent
(        21.2.1.1 Specifying colors by name) (517) 559 ent
(        21.2.1.2 Specifying colors by RGB values) (517) 559 ent
(    21.2.2 Cms Name) (519) 561 ent
(21.3 Color and Pixel Values) (519) 561 ent
(    21.3.0.1 Logical vs. real indices) (519) 561 ent
showpage
%%EndPage
%%Page: 13 "xvii"
tocStartPage
(    21.3.1 Foreground and Background Colors) (520) 562 ent
(        21.3.1.1 Colors of control objects) (521) 563 ent
(21.4 The color_logo.c Program) (521) 563 ent
(21.5 The Control Colormap Segment) (524) 566 ent
(    21.5.1 Coloring Panel Items) (525) 567 ent
(21.6 Using xv_find\(\) with Colormap Segments) (527) 569 ent
(21.7 Canvases and Colormaps) (528) 570 ent
(21.8 Multi-visual Support) (528) 570 ent
(    21.8.1 Using the Visual Attributes) (529) 571 ent
(21.9 Another Example) (529) 571 ent
(21.10 Cms Package Summary) (534) 576 ent
nl
nl
(Chapter 22 Internationalization ) (537) 579 chent
nl
(22.1 Locale Setting) (538) 580 ent
(    22.1.1 Locale Definition) (538) 580 ent
(    22.1.2 Enabling Internationalization) (538) 580 ent
(        22.1.2.1 Setting path of locale-specific files) (539) 581 ent
(    22.1.3 OpenWindows Localization Properties Sheet) (539) 581 ent
(    22.1.4 XView Locale Attributes) (540) 582 ent
(    22.1.5 Command-line Options for Specifying Locale) (541) 583 ent
(        22.1.5.1 XView locale resources) (541) 583 ent
(        22.1.5.2 ANSI-C/POSIX) (542) 584 ent
(    22.1.6 Limits and Restrictions) (543) 585 ent
(22.2 Localized Text Handling) (543) 585 ent
(    22.2.1 Localized Text Handling - Application Programmer Interface) (544) 586 ent
(        22.2.1.1 gettext\(\)) (544) 586 ent
(        22.2.1.2 dgettext\(\)) (545) 587 ent
(        22.2.1.3 textdomain\(\)) (545) 587 ent
(        22.2.1.4 bindtextdomain\(\)) (546) 588 ent
(        22.2.1.5 Examples) (547) 589 ent
(        22.2.1.6 XV_LOCALE_DIR) (547) 589 ent
(    22.2.2 Creating a Text Domain) (547) 589 ent
(    22.2.3 New and Enhanced XView Attributes for gettext\(\)) (549) 591 ent
(22.3 Object Layout and Customization) (550) 592 ent
(    22.3.1 Implicit and Explicit) (550) 592 ent
(    22.3.2 Layout and Customization API) (550) 592 ent
(        22.3.2.1 XV_LOCALE_DIR) (550) 592 ent
(        22.3.2.2 XV_USE_DB) (551) 593 ent
(        22.3.2.3 XV_INSTANCE_NAME) (551) 593 ent
(    22.3.3 Command-line Options) (552) 594 ent
(22.4 Internationalization Attribute Summary) (553) 595 ent
showpage
%%EndPage
%%Page: 14 "xviii"
tocStartPage
(Chapter 23 Help Facilities ) (557) 599 chent
nl
(23.1 Using XV_HELP_DATA) (558) 600 ent
(23.2 HELP Key Binding) (558) 600 ent
(    23.2.1 Attaching Help Data) (559) 601 ent
(    23.2.2 More Help) (560) 602 ent
(    23.2.3 Text Help) (561) 603 ent
(    23.2.4 Displaying Help Manually) (561) 603 ent
(    23.2.5 Help File Installation) (562) 604 ent
(        23.2.5.1 HELPPATH usage with internationalization) (563) 605 ent
(        23.2.5.2 Setting the application name) (563) 605 ent
(23.3 Help Package Summary) (564) 606 ent
nl
nl
(Chapter 24 Error Recovery ) (567) 609 chent
nl
(24.1 XView Errors) (567) 609 ent
(24.2 Simple Error Handling) (568) 610 ent
(        24.2.0.1 Using xv_error_format\(\)) (569) 611 ent
(24.3 X Error Handling) (569) 611 ent
(24.4 Advanced Error Handling) (570) 612 ent
(        24.4.0.1 Error types) (570) 612 ent
(    24.4.1 Calling xv_error\(\)) (571) 613 ent
(        24.4.1.1 Error severity) (572) 614 ent
(    24.4.2 Revisiting the Error Handler) (572) 614 ent
nl
nl
(Chapter 25 XView Internals ) (579) 621 chent
nl
(25.1 Methods) (580) 622 ent
(    25.1.0.1 Static subclassing) (580) 622 ent
(    25.1.1 Order of Methods) (581) 623 ent
(25.2 Internal Attribute-value Lists) (582) 624 ent
(    25.2.1 Attribute Values) (582) 624 ent
(    25.2.2 Creating Attribute Lists) (583) 625 ent
(        25.2.2.1 Attribute lists within attribute lists) (583) 625 ent
(    25.2.3 Interpreting Attributes) (584) 626 ent
(    25.2.4 Checking for Bad Attributes) (586) 628 ent
(        25.2.4.1 Searching for specific attributes) (586) 628 ent
(    25.2.5 Consuming Attributes) (587) 629 ent
(25.3 Customizable Attributes) (587) 629 ent
(25.4 XView Packages) (589) 631 ent
(    25.4.1 The Xv_pkg Type) (589) 631 ent
(    25.4.2 Public and Private Data) (590) 632 ent
(25.5 The Logo Package) (591) 633 ent
(    25.5.1 Header Files) (591) 633 ent
(        25.5.1.1 The public header file) (591) 633 ent
(        25.5.1.2 The private header file) (592) 634 ent
showpage
%%EndPage
%%Page: 15 "xix"
tocStartPage
(    25.5.2 The Implementation File) (593) 635 ent
(    25.5.3 The Package Declaration) (594) 636 ent
(    25.5.4 The Initialize Method) (595) 637 ent
(        25.5.4.1 The logo_redraw\(\) function) (598) 640 ent
(    25.5.5 The Set Method) (599) 641 ent
(    25.5.6 The Get Method) (601) 643 ent
(    25.5.7 The Destroy Method) (602) 644 ent
(25.6 Example Program Listing) (603) 645 ent
(25.7 Compiling an Implementation File) (604) 646 ent
(25.8 The Bitmap Package) (605) 647 ent
(    25.8.1 The Bitmap Initialize Method) (606) 648 ent
(    25.8.2 The Bitmap Set Method) (607) 649 ent
(    25.8.3 The Bitmap Get Method) (608) 650 ent
(    25.8.4 Creating a Bitmap Instance) (609) 651 ent
(25.9 The Find Method) (610) 652 ent
(        25.9.0.1 To find or not to find) (610) 652 ent
(    25.9.1 Conceptual Implementation) (611) 653 ent
(        25.9.1.1 Scope of list availability) (612) 654 ent
(    25.9.2 Actual Implementation) (612) 654 ent
(25.10 The Image Package) (612) 654 ent
(        25.10.0.1 The public image header file) (613) 655 ent
(        25.10.0.2 The private image header file) (613) 655 ent
(        25.10.0.3 The image package declaration) (614) 656 ent
(    25.10.1 The Image Initialize Method) (614) 656 ent
(    25.10.2 The Image Set Method) (615) 657 ent
(    25.10.3 The Image Get Method) (616) 658 ent
(    25.10.4 The Image Destroy Method) (616) 658 ent
(    25.10.5 The Image Find Method) (617) 659 ent
(    25.10.6 The Image.c Program) (618) 660 ent
(25.11 The Wizzy Package-A Panel Item Extension) (620) 662 ent
(    25.11.1 The Public Wizzy Header File) (620) 662 ent
(    25.11.2 The Private Wizzy Header File) (620) 662 ent
(    25.11.3 The Wizzy Package Declaration) (621) 663 ent
(    25.11.4 The Implementation Files) (621) 663 ent
(    25.11.5 The Wizzy Initialize Method) (622) 664 ent
(    25.11.6 The Wizzy Set Method) (624) 666 ent
(    25.11.7 The Wizzy Get Method) (625) 667 ent
(    25.11.8 The Wizzy Destroy Method) (626) 668 ent
(    25.11.9 Panel Item Handler Procedures) (626) 668 ent
(        25.11.9.1 The handle event function) (626) 668 ent
(        25.11.9.2 The begin preview function) (627) 669 ent
(        25.11.9.3 The update preview function) (627) 669 ent
(        25.11.9.4 The cancel preview function) (627) 669 ent
(        25.11.9.5 The accept preview function) (627) 669 ent
(        25.11.9.6 The accept menu function) (628) 670 ent
(        25.11.9.7 The accept key function) (628) 670 ent
(        25.11.9.8 The clear function) (628) 670 ent
(        25.11.9.9 The paint function) (628) 670 ent
showpage
%%EndPage
%%Page: 16 "xx"
tocStartPage
(        25.11.9.10 The resize function) (629) 671 ent
(        25.11.9.11 The remove function) (629) 671 ent
(        25.11.9.12 The restore function) (630) 672 ent
(        25.11.9.13 The layout function) (630) 672 ent
(        25.11.9.14 Accept keyboard focus function) (630) 672 ent
(        25.11.9.15 The yield keyboard focus function) (631) 673 ent
(    25.11.10 Panel Item Extension Attributes) (631) 673 ent
nl
nl
(Appendix A The Selection Service ) (635) 677 chent
nl
(A.1 The XView Selection Model) (636) 678 ent
(A.2 Using the Selection Service) (637) 679 ent
(A.3 Getting the Current Selection) (638) 680 ent
(    A.3.1 The Seln_request Structure) (641) 683 ent
(A.4 Using selection_query\(\)) (646) 688 ent
(A.5 Selection Package Summary) (652) 694 ent
nl
nl
(Appendix B The notice_prompt Function ) (655) 697 chent
nl
(B.1 Creating and Displaying Notices) (655) 697 ent
(    B.1.1 Response Choices and Values) (658) 700 ent
(    B.1.2 Notice Triggers) (659) 701 ent
(B.2 Another Example) (661) 703 ent
(B.3 Notice Package Summary) (664) 706 ent
nl
nl
(Appendix C Mouseless Model Keyboard Mappings ) (667) 709 chent
nl
(C.1 Mouseless Model Resources) (667) 709 ent
(    C.1.1 SunView1 Mappings) (668) 710 ent
(    C.1.1.1 Keyboard core functions) (668) 710 ent
(    C.1.1.2 Local navigation commands) (668) 710 ent
(    C.1.1.3 Text editing commands) (668) 710 ent
(    C.1.2 Basic Mappings) (669) 711 ent
(    C.1.2.1 Local navigation commands) (669) 711 ent
(    C.1.2.2 Text editing commands) (669) 711 ent
(    C.1.3 Full Mouseless Mappings) (670) 712 ent
(    C.1.3.1 Keyboard core functions) (670) 712 ent
(    C.1.3.2 Global navigation commands) (670) 712 ent
(    C.1.3.3 Miscellaneous navigation commands) (671) 713 ent
(C.2 Mouseless Model Keyboard Semantic Actions) (671) 713 ent
(C.3 SunView1 Mappings for the Mouseless Model) (672) 714 ent
showpage
%%EndPage
%%Page: 17 "xxi"
tocStartPage
(Appendix D Version 3.2 and the File Chooser ) (677) 719 chent
nl
(D.1 Creating File Choosers) (677) 719 ent
(D.2 Using a File Chooser) (680) 722 ent
(D.3 Notification from a File Chooser) (683) 725 ent
(D.4 Controlling the File Chooser Display List) (684) 726 ent
(    D.4.1 Monitoring Directory Changes) (685) 727 ent
(    D.4.2 Filtering) (685) 727 ent
(    D.4.3 File Chooser Sorting) (686) 728 ent
(D.5 Modifying the Display List) (686) 728 ent
(    D.5.1 Dot Files) (687) 729 ent
(    D.5.2 Abbreviated View) (687) 729 ent
(D.6 File Chooser Customization) (687) 729 ent
(D.7 Customizing the File Chooser Dialog) (688) 730 ent
(    D.7.1 File Chooser Components) (690) 732 ent
(D.8 Version 3.2 Additions) (691) 733 ent
(    D.8.1 New Panel List Attributes for Version 3.2) (691) 733 ent
(    D.8.1.1 Adding new list entries) (691) 733 ent
(    D.8.1.2 Other panel list changes) (694) 736 ent
(D.9 Keyboard Menu Accelerators) (695) 737 ent
(    D.9.0.1 Frame package menu accelerator attributes) (695) 737 ent
(    D.9.0.2 The menu attributes for menu accelerators) (696) 738 ent
(    D.9.0.3 Resources) (698) 740 ent
(    D.9.0.4 Core set menu accelerators) (698) 740 ent
(    D.9.0.5 Events) (699) 741 ent
(D.10 File Chooser and Version 3.2 Additions Summary) (700) 742 ent
nl
nl
(Appendix E OPEN LOOK User-interface Compliance) (705) 747 chent
nl
(E.1 Level 1 Features Not Supported in XView 3.0) (705) 747 ent
(    E.1.1 Keyboard and Mouse Customization) (705) 747 ent
(    E.1.2 Default Buttons in Pop Ups) (706) 748 ent
(    E.1.3 Help) (706) 748 ent
(    E.1.4 Window Background) (707) 749 ent
(    E.1.5 Notices) (707) 749 ent
(    E.1.6 Text Functions) (707) 749 ent
(    E.1.7 Control Items) (707) 749 ent
(    E.1.8 Property Windows) (708) 750 ent
(E.2 Level 2 Features Supported in XView 3.0) (708) 750 ent
(E.3 Level 2 Features Not Supported in XView 3.0) (709) 751 ent
nl
nl
(Appendix F Example Programs ) (713) 755 chent
nl
(F.1 item_move.c) (713) 755 ent
(F.2 scroll_cells2.c) (719) 761 ent
(F.3 menu_dir2.c) (723) 765 ent
showpage
%%EndPage
%%Page: 18 "xxii"
tocStartPage
(F.4 type_font.c) (727) 769 ent
(F.5 fonts.c) (730) 772 ent
(F.6 x_draw.c) (734) 776 ent
(F.7 The Logo.c Module) (738) 780 ent
(F.8 The Bitmap.c Module) (741) 783 ent
(F.9 The panel_dnd.c Program) (745) 787 ent
nl
(Index) (751) 791 chent
showpage
%%EndPage
%%Page: 19 "xxiii"
tocStartPage
(Figures) tl
nl
Page
(1-1 An X application and a traditional text terminal) (3) 45 ent
(1-2 Selecting a menu item with the pointer) (5) 47 ent
(1-3 Applications can run on any system across the network) (7) 49 ent
(1-4 The software architecture of X applications) (7) 49 ent
(1-5 The Notifier exists between the server and the XView application) (10) 52 ent
(1-6 A sample OPEN LOOK workspace) (13) 55 ent
(2-1 XView class hierarchy) (18) 60 ent
(2-2 Object creation is top down; attribute setting is bottom up) (24) 66 ent
(2-3 Fully-featured base frame \(includes optional elements\)) (26) 68 ent
(2-4 Sample unpinned command frame) (27) 69 ent
(2-5 Sample help window) (28) 70 ent
(2-6 Sample notice) (28) 70 ent
(2-7 A window with multiple views) (29) 71 ent
(2-8 A control area above a subwindow) (30) 72 ent
(2-9 A control area to the right of a pane) (30) 72 ent
(2-10 A control area in a command window) (31) 73 ent
(2-11 Example of a pop-up menu with a pullright submenu) (32) 74 ent
(2-12 Vertical scrollbar components) (33) 75 ent
(2-13 Flow of control in a conventional program) (35) 77 ent
(2-14 Flow of control in a Notifier-based program) (36) 78 ent
(2-15 Flow of input events in an XView application) (37) 79 ent
(3-1 A frame containing a Quit button) (45) 87 ent
(4-1 Frame package class hierarchy) (59) 101 ent
(4-2 Three base frames) (59) 101 ent
(4-3 Simple base frame created without any FRAME attributes specified) (63) 105 ent
(4-4 A sample header label display in a frame) (64) 106 ent
(4-5 Headers and footers on base frame) (65) 107 ent
(4-6 Default icon and application icon) (66) 108 ent
(4-7 Base frame with a command frame) (68) 110 ent
(5-1 Canvas class hierarchy) (85) 127 ent
(5-2 A canvas subwindow with multiple views) (86) 128 ent
(5-3 Canvases, views, and paint windows) (87) 129 ent
(5-4 Window before and after an Expose event) (92) 134 ent
(5-5 Window with two views before and after an Expose event) (93) 135 ent
(5-6 A window created with canvas_event.c) (110) 152 ent
(6-1 A sample function keys window) (140) 182 ent
(6-2 Sample function keys window with a MORE key) (141) 183 ent
(6-3 Sample virtual keyboard binding) (142) 184 ent
(7-1 Panel package class hierarchy) (153) 195 ent
(7-2 Panel item class hierarchy) (153) 195 ent
(7-3 Controls in an OPEN LOOK GUI implementation) (154) 196 ent
(7-4 Layout of panel items) (160) 202 ent
(7-5 Panel item value rectangle and label rectangle) (161) 203 ent
showpage
%%EndPage
%%Page: 20 "xxiv"
tocStartPage
(7-6 Visual feedback for button controls) (166) 208 ent
(7-7 Sample menu button \(unselected and selected\)) (169) 211 ent
(7-8 Sample abbreviated menu button) (170) 212 ent
(7-9 Sample panel with exclusive choices) (172) 214 ent
(7-10 Sample panel with nonexclusive choices) (173) 215 ent
(7-11 Sample panel with abbreviated choice \(unselected and selected\)) (174) 216 ent
(7-12 Sample panel with checkbox) (175) 217 ent
(7-13 Sample panel with scrolling list) (177) 219 ent
(7-14 Output of program list_glyphs.c) (180) 222 ent
(7-15 Sample panel with message item) (186) 228 ent
(7-16 Sample panel with message item-High Pressure) (186) 228 ent
(7-17 Sample panel with slider item) (188) 230 ent
(7-18 Sample panel with text item) (189) 231 ent
(7-19 Panel multiline text item) (194) 236 ent
(7-20 Sample panel with drop target items) (195) 237 ent
(7-21 Panel with gray background) (204) 246 ent
(7-22 Output of item_move.c in use) (208) 250 ent
(8-1 A sample text subwindow) (215) 257 ent
(8-2 Textsw class hierarchy) (216) 258 ent
(8-3 A caret marks the insertion point) (217) 259 ent
(8-4 A text selection) (231) 273 ent
(9-1 TTY package class hierarchy) (241) 283 ent
(9-2 Output of sample_tty.c) (243) 285 ent
(9-3 Output of textsw_to_ttysw.c) (245) 287 ent
(10-1 An OPEN LOOK scrollbar) (253) 295 ent
(10-2 Relationship between a scrollbar and the object it scrolls) (255) 297 ent
(10-3 Scrollbar class hierarchy) (256) 298 ent
(10-4 Splitting a text subwindow twice) (257) 299 ent
(10-5 Model for scroll_cells.c) (258) 300 ent
(11-1 The Window menu) (274) 316 ent
(11-2 Menu buttons each with a pulldown menu) (274) 316 ent
(11-3 Pushpins in a menu and a submenu) (274) 316 ent
(11-4 Exclusive settings on a menu) (276) 318 ent
(11-5 Nonexclusive settings on a submenu) (277) 319 ent
(11-6 Menu class hierarchy) (278) 320 ent
(11-7 Output of simple_menu.c when the menu is popped up) (282) 324 ent
(11-8 Output of xv_menu.c) (296) 338 ent
(12-1 Notice class hierarchy) (307) 349 ent
(12-2 A sample notice window) (308) 350 ent
(12-3 Output of simple_notice.c while the notice is up) (311) 353 ent
(13-1 Cursor class hierarchy) (327) 369 ent
(14-1 Three bordered default icons) (339) 381 ent
(14-2 Icon package class hierarchy) (339) 381 ent
(15-1 Nonvisual objects class hierarchy) (349) 391 ent
(16-1 Font package class hierarchy) (368) 410 ent
(16-2 The Courier font in different styles and sizes) (371) 413 ent
(18-1 Dragging the pointer to select text) (393) 435 ent
(18-2 Selection owner class hierarchy) (398) 440 ent
showpage
%%EndPage
%%Page: 21 "xxv"
tocStartPage
(18-3 Selection requestor class hierarchy) (399) 441 ent
(18-4 Selection item class hierarchy) (413) 455 ent
(19-1 Dragging a file onto an application) (433) 475 ent
(19-2 Loading a file by dropping) (434) 476 ent
(19-3 DRAGDROP class hierarchy) (435) 477 ent
(19-4 DROP_SITE_ITEM class hierarchy) (435) 477 ent
(20-1 Output of animate.c) (471) 513 ent
(20-2 Flow of control in interposition) (488) 530 ent
(21-1 CMS package class hierarchy) (513) 555 ent
(22-1 OPEN LOOK localization menu) (539) 581 ent
(23-1 A sample Help window) (557) 599 ent
(25-1 Calling order for init, set, get, destroy, and find) (581) 623 ent
(25-2 The bits in an attribute) (582) 624 ent
(25-3 Output of logo.c) (604) 646 ent
(A-1 Byte stream after selection_ask\(\) returns the current text selection) (641) 686 ent
(A-2 How selection_query\(\) is used) (647) 689 ent
(B-1 Output of simple_notice.c while the notice is up) (657) 699 ent
(D-1 File chooser Save dialog) (678) 720 ent
(D-2 File chooser Open dialog) (680) 722 ent
showpage
%%EndPage
%%Page: 22 "xxvi"
tocStartPage
(Examples) tl
nl
Page
(3-1 The quit.c program) (44) 86 ent
(3-2 xv_create\(\) creates XView objects) (47) 89 ent
(4-1 The simple_frame.c program) (62) 104 ent
(4-2 Creating a base frame after calling xv_init\(\)) (62) 104 ent
(4-3 Setting separate values for a frame header) (65) 107 ent
(4-4 Creating a footer) (65) 107 ent
(4-5 Creating a subframe) (68) 110 ent
(4-6 Using several frame attributes) (70) 112 ent
(4-7 The subframe.c program) (72) 114 ent
(4-8 Changing a frame's color) (75) 117 ent
(5-1 The line.c program) (96) 138 ent
(5-2 Repainting objects within a damaged region) (97) 139 ent
(5-3 The canvas_event.c program) (107) 149 ent
(6-1 The canvas_input.c program) (133) 175 ent
(7-1 The quit.c program) (155) 197 ent
(7-2 The btn_menu.c program) (168) 210 ent
(7-3 The list_glyphs.c program) (179) 221 ent
(7-4 The message_item.c program) (185) 227 ent
(7-5 The multiline.c program) (194) 236 ent
(7-6 The client_data.c program) (200) 242 ent
(7-7 The panel_repaint.c program) (202) 244 ent
(8-1 Client notify procedure for a text subwindow) (233) 275 ent
(9-1 The sample_tty.c program) (242) 284 ent
(9-2 The textsw_to_ttysw.c program) (244) 286 ent
(9-3 The ttycurses.c program) (247) 289 ent
(10-1 The scroll_cells.c program) (259) 301 ent
(10-2 The scrollto.c program) (264) 306 ent
(10-3 Scrollbar compute scroll procedure example) (267) 309 ent
(10-4 Scrollbar normalize procedure example) (269) 311 ent
(11-1 The simple_menu.c program) (280) 322 ent
(11-2 How to create a menu containing a pushpin) (292) 334 ent
(11-3 The xv_menu.c program) (294) 336 ent
(11-4 Creating individual menu items) (299) 341 ent
(11-5 The menu_dir.c program) (300) 342 ent
(12-1 The simple_notice.c program) (310) 352 ent
(12-2 Creating a standard notice) (314) 356 ent
(12-3 A notice using a callback) (315) 357 ent
(12-4 Creating a screen-locking notice) (317) 359 ent
(12-5 The trigger_notice.c program) (318) 360 ent
(12-6 The notice.c program) (320) 362 ent
(13-1 The simple_cursor.c program) (328) 370 ent
(13-2 The hot_spot.c program) (331) 373 ent
(13-3 Using drag and drop text cursors) (334) 376 ent
showpage
%%EndPage
%%Page: 23 "xxvii"
tocStartPage
(14-1 The icon_demo.c program) (340) 382 ent
(14-2 Color cursors) (342) 384 ent
(14-3 Redefining an icon's size to include its label) (344) 386 ent
(15-1 Getting a pointer for a particular frame object \(screen.c\)) (351) 393 ent
(15-2 Display a base frame on two screens) (352) 394 ent
(15-3 The svrimage.c program) (358) 400 ent
(15-4 The fullscreen.c program) (360) 402 ent
(16-1 The simple_font.c program) (369) 411 ent
(17-1 The default_text.c program) (384) 426 ent
(17-2 The default_size.c program) (388) 430 ent
(18-1 Requesting the CLIPBOARD selection--blocking) (401) 443 ent
(18-2 Non-blocking selection request) (402) 444 ent
(18-3 Selection owner program) (405) 447 ent
(18-4 Sample reply procedure - SelectionReplyProc) (407) 449 ent
(18-5 Sample selection reply error handler) (409) 451 ent
(18-6 Sample done procedure - SelectionDoneProc) (411) 453 ent
(18-7 An incremental conversion procedure) (415) 457 ent
(18-8 Incremental reply - IncrReply.c) (416) 458 ent
(18-9 Sample program - sel_hold.c) (419) 461 ent
(18-10 The notify procedure - NotifyProc\(\)) (421) 463 ent
(18-11 Sample conversion procedure - SelectionConvertProc) (422) 464 ent
(18-12 Sample selection requestor program - sel_req.c) (424) 466 ent
(18-13 Sample requestor notify procedure) (426) 468 ent
(18-14 Sample make request notify procedure) (427) 469 ent
(18-15 Selection reply procedure) (427) 469 ent
(18-16 Sample error procedure - SelectionError.c) (429) 471 ent
(19-1 Sourcing a drag) (444) 486 ent
(19-2 A drop-site item example) (450) 492 ent
(20-1 The animate.c program) (468) 510 ent
(20-2 Demonstrating a wait3 handler) (472) 514 ent
(20-3 The notify_input.c program) (481) 523 ent
(20-4 The ntfy_pipe.c program) (483) 525 ent
(20-5 Transferring control through the Notifier) (492) 534 ent
(20-6 The interpose.c program) (495) 537 ent
(20-7 The ntfy_do_dis.c program) (500) 542 ent
(20-8 Emulating a sleep) (502) 544 ent
(21-1 The color_logo.c program) (521) 563 ent
(21-2 The color_panel.c program) (525) 567 ent
(21-3 The color_objs.c program) (529) 571 ent
(22-1 Using XV_INSTANCE_NAME) (551) 593 ent
(24-1 Example error parsing function) (573) 615 ent
(25-1 The logo.c program) (603) 645 ent
(25-2 The bitmap.c program) (609) 651 ent
(25-3 The image.c program) (619) 661 ent
(A-1 The simple_seln.c program) (639) 681 ent
(A-2 The text_seln.c program) (642) 684 ent
(A-3 The long_seln.c program) (647) 689 ent
(B-1 The simple_notice.c program) (656) 698 ent
showpage
%%EndPage
%%Page: 24 "xxviii"
tocStartPage
(B-2 The trigger_notice.c program) (659) 701 ent
(B-3 The notice.c program) (661) 703 ent
(D-1 Portion of file_chooser.c program) (680) 722 ent
(D-2 An extention item program) (689) 731 ent
(D-3 Program that adds values to a panel list) (691) 733 ent
(F-1 The item_move.c program) (713) 755 ent
(F-2 The scroll_cells2.c program) (719) 761 ent
(F-3 The menu_dir2.c program) (723) 765 ent
(F-4 The type_font.c program) (728) 770 ent
(F-5 The fonts.c program) (730) 772 ent
(F-6 The x_draw.c program) (734) 776 ent
(F-7 The Logo.c module) (738) 780 ent
(F-8 The Bitmap.c module) (741) 783 ent
(F-9 The panel_dnd.c program) (745) 787 ent
showpage
%%EndPage
%%Page: 25 "xxix"
tocStartPage
(Tables) tl
nl
Page
(2-1 XView Objects, Owners, Packages, and Data Types) (20) 62 ent
(2-2 Generic Functions) (21) 63 ent
(3-1 Reserved Prefixes) (43) 85 ent
(3-2 Default Ownership of Objects) (48) 90 ent
(4-1 Frame Attributes) (81) 123 ent
(5-1 Canvas Attributes) (110) 152 ent
(5-2 Openwin Attributes) (111) 153 ent
(6-1 Event Structure Fields) (125) 167 ent
(6-2 Mouseless Keyboard Commands with Action ACTION_NULL_EVENT) (144) 186 ent
(6-3 SunView1 Commands That Conflict with the Mouseless Model) (144) 186 ent
(6-4 Mouseless Actions Handled by the Window Manager) (146) 188 ent
(7-1 Text Item Notification Level) (191) 233 ent
(7-2 Return Values for Text Item Notify Procedures) (192) 234 ent
(7-3 Default Event to Action Mapping) (206) 248 ent
(7-4 Panel Procedures and Macros) (209) 251 ent
(7-5 Panel Package Attributes) (209) 251 ent
(7-6 New and Changed Panel Package Attributes \(Version 3.2\)) (211) 253 ent
(8-1 Range of Values for Status Variables) (218) 260 ent
(8-2 Textsw_action Attributes) (234) 276 ent
(8-3 Text Subwindow Procedures and Macros) (236) 278 ent
(8-4 Text Subwindow Attributes) (237) 279 ent
(9-1 TTY Subwindow Procedures) (250) 292 ent
(9-2 TTY Subwindow Attributes) (250) 292 ent
(10-1 Scrollbar Procedures) (270) 312 ent
(10-2 Scrollbar Attributes) (270) 312 ent
(11-1 Menu Procedures and Macros) (304) 346 ent
(11-2 Menu Attributes) (304) 346 ent
(12-1 Notice Attributes \(used with NOTICE_LOCK_SCREEN = FALSE\)) (314) 356 ent
(12-2 Screen-Locking Notice Attributes \(for NOTICE_LOCK_SCREEN = TRUE\)) (317) 359 ent
(12-3 Notice Attributes) (324) 366 ent
(13-1 Cursor Procedure) (335) 377 ent
(13-2 Cursor Attributes) (335) 377 ent
(14-1 Icon Attributes) (345) 387 ent
(15-1 Screen Attributes) (362) 404 ent
(15-2 Server and Server Image Attributes) (362) 404 ent
(15-3 Fullscreen Attributes) (362) 404 ent
(16-1 Default Font Sizes) (374) 416 ent
(16-2 Font Attributes) (377) 419 ent
(17-1 Resources and Default Values Understood by XView) (382) 424 ent
(18-1 Selecting Text) (394) 436 ent
(18-2 Error Codes) (408) 450 ent
(18-3 Selection Procedures) (430) 472 ent
(18-4 Selection Attributes) (430) 472 ent
showpage
%%EndPage
%%Page: 26 "xxx"
tocStartPage
(19-1 Drag and Drop Semantic Events) (437) 479 ent
(19-2 dnd_send_drop\(\) Return Values) (440) 482 ent
(19-3 DROP_SITE_ITEM and DRAGDROP Procedures and Macros) (456) 498 ent
(19-4 DROP_SITE_ITEM and DRAGDROP Attributes) (456) 498 ent
(20-1 Notifier Error Codes) (508) 550 ent
(21-1 Cms Attributes) (534) 576 ent
(22-1 XView Locale Attributes) (540) 582 ent
(22-2 Locale Command-line Options) (541) 583 ent
(22-3 XView Locale Resources) (542) 584 ent
(22-4 POSIX Categories) (542) 584 ent
(22-5 Internationalization Attributes) (553) 595 ent
(23-1 Modified Help Keystrokes) (559) 601 ent
(23-2 Help Attributes and Procedures) (564) 606 ent
(25-1 Panel Item Extension Attributes) (631) 673 ent
(A-1 Selecting Text) (636) 678 ent
(A-2 Selection Service Procedures) (652) 694 ent
(A-3 Selection Service Attributes) (652) 694 ent
(B-1 Notice Attributes, Procedures, and Macros) (664) 706 ent
(D-1 File Chooser Procedures and Macros) (700) 742 ent
(D-2 File Chooser Attributes) (700) 742 ent
(D-3 History and History Menu Attributes) (700) 742 ent
(D-4 File List Attributes) (701) 743 ent
(D-5 Path Attributes) (701) 743 ent
(D-6 Version 3.2 Panel List Attributes) (701) 743 ent
(D-7 Version 3.2 Menu Accelerator Attributes) (701) 743 ent
 
showpage
 
%%EndPage
end	% iandict
%%EOF
@


1.3
log
@No changes to prolog. Completely replace data, based on new TOC
provided by Lenny Muelner. This version worked first time up to
Chapter 25, much better than previous attempt.
@
text
@d80 1
d83 1
d85 1
a85 1
	[ /Rect [curx cury curx xmove add cury bodysize add]
d153 1
a153 1
( 1.1.1 The Server and Client) (5) 47 ent
d166 2
a167 2
( 2.1.1 Object Class Hierarchy) (18) 60 ent
( 2.1.2 Object Handles) (19) 61 ent
d169 3
a171 3
( 2.2.1 Creating and Manipulating Objects) (21) 63 ent
( 2.2.2 Changing Object Attributes) (22) 64 ent
( 2.2.3 Types of Attributes) (22) 64 ent
d178 11
a188 11
( 2.4.1 Generic Objects) (24) 66 ent
( 2.4.2 Window Objects) (25) 67 ent
( 2.4.3 Frames and Subframes) (26) 68 ent
( 2.4.4 Subwindows) (29) 71 ent
( 2.4.4.1 Canvas subwindows) (30) 72 ent
( 2.4.4.2 Text subwindows) (30) 72 ent
( 2.4.4.3 Panels) (30) 72 ent
( 2.4.4.4 Menus) (31) 73 ent
( 2.4.4.5 Scrollbars) (33) 75 ent
( 2.4.4.6 Icons) (34) 76 ent
( 2.4.5 Nonvisual Objects) (34) 76 ent
d190 4
a193 4
( 2.5.1 Callback Style of Programming) (35) 77 ent
( 2.5.2 Why a Notification-based System?) (36) 78 ent
( 2.5.3 Relationship Among the Notifier, Objects, and the Application) (37) 79 ent
( 2.5.4 Calling the Notifier Directly) (37) 79 ent
d199 6
a204 6
( 3.1.1 Compiling XView Programs) (41) 83 ent
( 3.1.2 XView Libraries) (42) 84 ent
( 3.1.3 Header Files) (42) 84 ent
( 3.1.4 Naming Conventions) (43) 85 ent
( 3.1.4.1 Reserved names) (43) 85 ent
( 3.1.5 Example of XView-style Programming) (43) 85 ent
d206 1
a206 1
( 3.2.1 Using xv_init\(\)) (46) 88 ent
d208 5
a212 5
( 3.3.1 Using xv_create\(\)) (47) 89 ent
( 3.3.2 Using xv_find\(\)) (49) 91 ent
( 3.3.3 Using xv_destroy\(\)) (50) 92 ent
( 3.3.4 Using xv_set\(\) and xv_get\(\)) (51) 93 ent
( 3.3.5 Precedence of Resource Options) (53) 95 ent
d219 1
a219 1
( 4.1.1 The Role of the Window Manager) (61) 103 ent
d221 3
a223 3
( 4.2.1 XView Initialization and Base Frames) (62) 104 ent
( 4.2.2 Headers and Footers) (63) 105 ent
( 4.2.3 Closed Base Frames) (66) 108 ent
d228 1
a228 1
( 4.2.4 Quit Confirmation) (67) 109 ent
d230 5
a234 5
( 4.3.1 Manually Displaying Frames) (69) 111 ent
( 4.3.2 The Pushpin) (69) 111 ent
( 4.3.3 The FRAME_DONE_PROC Procedure) (71) 113 ent
( 4.3.4 Showing Resize Corners) (73) 115 ent
( 4.3.5 Minimum and Maximum Frame Sizes) (73) 115 ent
d252 6
a257 6
( 5.2.1 Drawing in a Canvas) (89) 131 ent
( 5.2.1.1 Draw programs) (89) 131 ent
( 5.2.1.2 Paint programs) (90) 132 ent
( 5.2.1.3 Text-based programs) (90) 132 ent
( 5.2.1.4 Visualization programs) (90) 132 ent
( 5.2.1.5 Rendering graphics) (91) 133 ent
d260 3
a262 3
( 5.4.1 Automatic Canvas Sizing) (98) 140 ent
( 5.4.2 Explicit Canvas Sizing) (99) 141 ent
( 5.4.3 Tracking Changes in the Canvas Size) (100) 142 ent
d265 5
a269 5
( 5.6.1 Splitting Views Using Scrollbars) (102) 144 ent
( 5.6.2 Splitting Views Using xv_set\(\)) (103) 145 ent
( 5.6.3 Getting View Windows) (103) 145 ent
( 5.6.3.1 Getting the newest view) (103) 145 ent
( 5.6.3.2 Getting arbitrary views) (104) 146 ent
d271 2
a272 2
( 5.7.1 Default Events) (106) 148 ent
( 5.7.2 Notification of Events) (106) 148 ent
d282 2
a283 2
( 6.2.0.1 Event IDs) (117) 159 ent
( 6.2.0.2 Semantic events) (117) 159 ent
d285 7
a291 7
( 6.3.1 Specifying X Event Masks) (118) 160 ent
( 6.3.2 Specifying XView Events) (119) 161 ent
( 6.3.2.1 Mouse events) (120) 162 ent
( 6.3.2.2 Keyboard events) (121) 163 ent
( 6.3.2.3 Resize and repaint events) (122) 164 ent
( 6.3.2.4 Client messages) (123) 165 ent
( 6.3.2.5 Miscellaneous events) (123) 165 ent
d295 6
a300 6
( 6.6.0.1 Event states) (126) 168 ent
( 6.6.0.2 Modifier keys) (126) 168 ent
( 6.6.1 Keyboard Events) (126) 168 ent
( 6.6.1.1 Mouse events) (128) 170 ent
( 6.6.1.2 Keyboard focus) (129) 171 ent
( 6.6.1.3 Selection events) (130) 172 ent
d302 1
a302 1
( 6.7.1 Sending and Reading Client Messages) (130) 172 ent
d308 3
a310 3
( 6.12.1 Soft Function Keys) (140) 182 ent
( 6.12.2 Virtual Keyboards) (142) 184 ent
( 6.12.2.1 Multiple language support) (142) 184 ent
d312 7
a318 7
( 6.13.1 Keyboard Command Mapping) (143) 185 ent
( 6.13.2 Mouseless Model Resources) (145) 187 ent
( 6.13.3 Using the Mouseless Model) (145) 187 ent
( 6.13.3.1 The role of the window manager) (146) 188 ent
( 6.13.3.2 Application responsibilities) (146) 188 ent
( 6.13.4 The Location Cursor) (146) 188 ent
( 6.13.5 Events) (147) 189 ent
d325 1
a325 1
( 7.1.0.1 Fonts and panels) (156) 198 ent
d330 1
a330 1
( 7.1.1 Scrollable Panels) (156) 198 ent
d333 2
a334 2
( 7.3.1 Panel Layout) (159) 201 ent
( 7.3.2 Panel Item Layout) (160) 202 ent
d336 4
a339 4
( 7.4.1 Relative Panel Item Positioning) (161) 203 ent
( 7.4.2 Absolute Panel Item Positioning) (162) 204 ent
( 7.4.2.1 General positioning of items) (163) 205 ent
( 7.4.3 Layout of Panel Items with Values) (163) 205 ent
d345 6
a350 6
( 7.9.1 Button Selection) (167) 209 ent
( 7.9.1.1 Making a button inactive) (167) 209 ent
( 7.9.2 Menu Buttons) (167) 209 ent
( 7.9.2.1 Destroying menu buttons) (169) 211 ent
( 7.9.3 Panel Button Width) (170) 212 ent
( 7.9.4 Abbreviated Menu Buttons) (170) 212 ent
d352 7
a358 7
( 7.10.1 Display and Layout of Item Choices) (171) 213 ent
( 7.10.2 Exclusive and Nonexclusive Choices) (172) 214 ent
( 7.10.3 Abbreviated Choices) (173) 215 ent
( 7.10.4 Checkbox Choices) (174) 216 ent
( 7.10.5 Choice Selection and Notification) (175) 217 ent
( 7.10.6 Foreground Color in Choice Items) (175) 217 ent
( 7.10.7 Parallel Lists) (176) 218 ent
d360 6
a365 6
( 7.11.1 Displaying List Items) (178) 220 ent
( 7.11.2 Adding and Deleting List Entries) (181) 223 ent
( 7.11.3 List Selection) (182) 224 ent
( 7.11.4 List Notification) (183) 225 ent
( 7.11.4.1 List item client data) (184) 226 ent
( 7.11.5 The Scrolling List Menu) (184) 226 ent
d368 3
a370 3
( 7.13.1 Slider Selection) (187) 229 ent
( 7.13.2 Slider Notification) (187) 229 ent
( 7.13.3 Slider Value) (187) 229 ent
d373 5
a377 5
( 7.15.1 The Current Keyboard Focus) (190) 232 ent
( 7.15.2 Text Selection) (191) 233 ent
( 7.15.3 Text Notification) (191) 233 ent
( 7.15.4 Writing Your Own Text Notify Procedure) (192) 234 ent
( 7.15.5 Text Value) (193) 235 ent
d385 9
a393 9
( 7.18.1 Programming a Panel Drop Target Item) (196) 238 ent
( 7.18.1.1 Create the drop target item) (196) 238 ent
( 7.18.1.2 Specify the glyphs) (196) 238 ent
( 7.18.1.3 Create the drag and drop object) (197) 239 ent
( 7.18.1.4 Define the drop target item's requestor) (197) 239 ent
( 7.18.1.5 Controlling the glyphs) (198) 240 ent
( 7.18.1.6 Dropping on the drop target) (198) 240 ent
( 7.18.1.7 Dragging from the drop target item) (198) 240 ent
( 7.18.2 Drop Target Notification) (198) 240 ent
d395 8
a402 8
( 7.19.1 Attaching Data to Panel Items) (199) 241 ent
( 7.19.2 Using PANEL_REPAINT_PROC) (202) 244 ent
( 7.19.3 Painting Panel Items) (205) 247 ent
( 7.19.4 Panel Event Handling) (205) 247 ent
( 7.19.5 Using an Interpose Function) (207) 249 ent
( 7.19.6 Using PANEL_BACKGROUND_PROC) (207) 249 ent
( 7.19.7 Using PANEL_EVENT_PROC) (207) 249 ent
( 7.19.8 Event Handling Example) (208) 250 ent
d412 11
a422 11
( 8.4.1 Loading a File) (217) 259 ent
( 8.4.2 Checking the Status of the Text Subwindow) (218) 260 ent
( 8.4.3 Writing to a Text Subwindow) (219) 261 ent
( 8.4.3.1 Setting the insertion point) (219) 261 ent
( 8.4.4 Reading from a Text Subwindow) (219) 261 ent
( 8.4.5 Deleting Text) (220) 262 ent
( 8.4.6 Emulating an Editing Character) (221) 263 ent
( 8.4.7 Replacing Characters) (221) 263 ent
( 8.4.8 The Editing Log) (222) 264 ent
( 8.4.9 Which File is Being Edited?) (222) 264 ent
( 8.4.9.1 Interactions with the file system) (223) 265 ent
d424 2
a425 2
( 8.5.1 Storing Edits) (223) 265 ent
( 8.5.2 Discarding Edits) (224) 266 ent
d427 3
a429 3
( 8.6.1 TEXTSW_FILE_CONTENTS) (224) 266 ent
( 8.6.2 TEXTSW_CONTENTS) (225) 267 ent
( 8.6.3 TEXTSW_INSERT_FROM_FILE) (225) 267 ent
d435 6
a440 6
( 8.7.1 Screen Lines and File Lines) (226) 268 ent
( 8.7.2 Absolute Positioning) (226) 268 ent
( 8.7.3 Relative Positioning) (227) 269 ent
( 8.7.4 Which File Lines are Visible?) (227) 269 ent
( 8.7.4.1 Guaranteeing what is visible) (228) 270 ent
( 8.7.4.2 Ensuring that the insertion point is visible) (228) 270 ent
d442 2
a443 2
( 8.8.1 Matching a Span of Characters) (228) 270 ent
( 8.8.2 Matching a Specific Pattern) (229) 271 ent
d445 2
a446 2
( 8.9.1 Getting a Text Selection) (231) 273 ent
( 8.9.2 Setting the Text Selection) (232) 274 ent
d450 1
a450 1
( 8.12.1 Text Subwindow Interposition) (236) 278 ent
d470 4
a473 4
( 10.4.1 Monitoring When Scrollbar Events Occur) (264) 306 ent
( 10.4.2 Providing a Scrollbar Compute Procedure) (266) 308 ent
( 10.4.2.1 Indicating scrollbar motion) (268) 310 ent
( 10.4.3 Providing a Scrollbar Normalize Procedure) (268) 310 ent
d480 2
a481 2
( 11.1.1 Pop-up Menus) (274) 316 ent
( 11.1.2 Pulldown Menus) (274) 316 ent
d486 1
a486 1
( 11.1.3 Pullright Menus) (274) 316 ent
d488 3
a490 3
( 11.2.1 Choice Items) (276) 318 ent
( 11.2.2 Exclusive Items) (276) 318 ent
( 11.2.3 Nonexclusive Items) (277) 319 ent
d495 3
a497 3
( 11.6.1 Using MENU_ITEM) (283) 325 ent
( 11.6.2 Using MENU_ACTION_ITEM) (284) 326 ent
( 11.6.3 Using MENUITEM) (284) 326 ent
d501 2
a502 2
( 11.9.1 Parent Menus) (290) 332 ent
( 11.9.2 Using MENU_GEN_PROC) (290) 332 ent
d511 3
a513 3
( 11.17.1 Freeing Allocated Strings) (299) 341 ent
( 11.17.2 Freeing Pullright Menus) (299) 341 ent
( 11.17.3 Menu Client Data) (300) 342 ent
d521 1
a521 1
( 12.1.1 Notice Values and Status) (311) 353 ent
d523 5
a527 5
( 12.2.1 Standard Notices) (313) 355 ent
( 12.2.1.1 Using a notice callback) (315) 357 ent
( 12.2.1.2 Selecting the busy frames) (316) 358 ent
( 12.2.2 Notices That Lock the Screen) (316) 358 ent
( 12.2.2.1 Notice triggers) (318) 360 ent
d538 1
a538 1
( 13.1.1 simple_cursor.c) (328) 370 ent
d550 5
a554 5
( 14.2.0.1 Color icons) (342) 384 ent
( 14.2.0.2 ICON_TRANSPARENT) (343) 385 ent
( 14.2.0.3 ICON_MASK_IMAGE) (344) 386 ent
( 14.2.1 The Icon Text) (344) 386 ent
( 14.2.2 ICON_TRANSPARENT_LABEL) (345) 387 ent
d562 1
a562 1
( 15.2.1 Multiple Screens) (351) 393 ent
d564 3
a566 3
( 15.3.1 Creating a Server \(Establishing a Connection\)) (353) 395 ent
( 15.3.2 Connecting to Multiple Servers) (354) 396 ent
( 15.3.3 Getting the Server) (354) 396 ent
d568 1
a568 1
( 15.4.1 Creating Server Images) (356) 398 ent
d570 1
a570 1
( 15.5.0.1 Debugging and the FULLSCREEN package) (361) 403 ent
d577 4
a580 4
( 16.1.1 Font Families and Styles) (371) 413 ent
( 16.1.2 Font Sizes) (373) 415 ent
( 16.1.3 Scaling Fonts) (373) 415 ent
( 16.1.4 Fonts by Name) (375) 417 ent
d591 5
a595 5
( 17.2.1 Boolean Resources) (385) 427 ent
( 17.2.2 Integer Resources) (386) 428 ent
( 17.2.3 Character Resources) (387) 429 ent
( 17.2.4 String Resources) (387) 429 ent
( 17.2.5 Enumerated Resources) (388) 430 ent
d603 15
a617 15
( 18.2.1 Highlighting the Selection \(Selection Owner\)) (397) 439 ent
( 18.2.2 Making the Selection \(Selection Owner\)) (397) 439 ent
( 18.2.3 Requesting the Selection \(Selection Requestor\)) (399) 441 ent
( 18.2.3.1 Specifying the target type \(selection requestor\)) (400) 442 ent
( 18.2.3.2 SEL_REPLY_PROC \(selection requestor\)) (400) 442 ent
( 18.2.3.3 Timeout for a selection response) (401) 443 ent
( 18.2.3.4 Requesting the CLIPBOARD selection-blocking) (401) 443 ent
( 18.2.3.5 Requesting the CLIPBOARD selection-non-blocking) (402) 444 ent
( 18.2.4 Converting the Selection \(Selection Owner\)) (403) 445 ent
( 18.2.4.1 The default conversion procedure) (404) 446 ent
( 18.2.4.2 Sample selection owner with conversion procedure) (404) 446 ent
( 18.2.5 Handling the Response \(Selection Requestor\)) (406) 448 ent
( 18.2.5.1 Handling selection reply procedure errors) (408) 450 ent
( 18.2.6 If the Selection is Lost \(Selection Owner\)) (410) 452 ent
( 18.2.7 Cleanup - When the Selection Completes \(Selection Owner\)) (410) 452 ent
d619 1
a619 1
( 18.3.1 The Selection Item) (412) 454 ent
d621 1
a621 1
( 18.4.1 How to Handle Incremental Replies \(Selection Requestor\)) (416) 458 ent
d626 4
a629 4
( 18.8.0.1 The notify procedure) (421) 463 ent
( 18.8.0.2 The conversion procedure) (422) 464 ent
( 18.8.1 The Done Procedure) (423) 465 ent
( 18.8.2 The Lose Procedure) (423) 465 ent
d631 2
a632 2
( 18.9.0.1 Sample reply procedure) (427) 469 ent
( 18.9.0.2 Sample error procedure) (429) 471 ent
d642 5
a646 5
( 19.2.1 Adding and Deleting Regions) (436) 478 ent
( 19.2.2 Handling Events) (437) 479 ent
( 19.2.2.1 Preview events) (438) 480 ent
( 19.2.2.2 Event forwarding) (438) 480 ent
( 19.2.2.3 Handling drop and preview events) (438) 480 ent
d648 4
a651 4
( 19.3.1 Initiating the Drop Operation) (440) 482 ent
( 19.3.2 Interaction with the Selection Package) (441) 483 ent
( 19.3.3 Defining the Drag/Accept Cursor) (441) 483 ent
( 19.3.4 Timeout Value) (442) 484 ent
d653 2
a654 2
( 19.4.0.1 The move operation) (443) 485 ent
( 19.4.0.2 The done procedure) (443) 485 ent
d663 2
a664 2
( 20.1.1 Mainline Input Handling) (459) 501 ent
( 20.1.2 Event-driven Input Handling) (460) 502 ent
d667 2
a668 2
( 20.3.1 Restrictions) (461) 503 ent
( 20.3.1.1 System calls to avoid) (462) 504 ent
d670 1
a670 1
( 20.4.1 Types of Interaction) (463) 505 ent
d672 6
a677 6
( 20.5.1 Signals to Avoid) (464) 506 ent
( 20.5.2 A Replacement for signal\(\)) (465) 507 ent
( 20.5.3 Timers) (467) 509 ent
( 20.5.4 Handling SIGTERM) (470) 512 ent
( 20.5.5 Handling SIGCHLD) (471) 513 ent
( 20.5.5.1 Reaping dead processes) (472) 514 ent
d680 6
a685 6
( 20.7.1 Receiving Client Events) (475) 517 ent
( 20.7.2 Posting Client Events) (476) 518 ent
( 20.7.2.1 Actual delivery time) (477) 519 ent
( 20.7.3 Posting with an Argument) (477) 519 ent
( 20.7.4 Posting Destroy Events) (478) 520 ent
( 20.7.5 Delivery Time of Destroy Events) (479) 521 ent
d691 4
a694 4
( 20.8.1 Reading Files) (480) 522 ent
( 20.8.2 Reading and Writing on Pipes) (482) 524 ent
( 20.8.3 Exception Occurred Events) (487) 529 ent
( 20.8.4 Getting an Event Handler) (487) 529 ent
d696 10
a705 10
( 20.9.1 Uses of Interposition) (489) 531 ent
( 20.9.2 Interface to Interposition) (489) 531 ent
( 20.9.3 Registering an Interposer) (489) 531 ent
( 20.9.4 Invoking the Next Function) (490) 532 ent
( 20.9.5 Removing an Interposed Function) (491) 533 ent
( 20.9.6 An Interposition Example) (491) 533 ent
( 20.9.7 Interposing on Resize Events) (493) 535 ent
( 20.9.8 Modifying an Object's Destruction) (493) 535 ent
( 20.9.8.1 Interposing a client destroy handler) (495) 537 ent
( 20.9.8.2 Enabling panel item interposition) (497) 539 ent
d707 3
a709 3
( 20.10.1 Mass Destruction) (499) 541 ent
( 20.10.2 Implicit Dispatching) (499) 541 ent
( 20.10.3 Explicit Dispatching) (501) 543 ent
d712 7
a718 7
( 20.12.1 Prioritization) (504) 546 ent
( 20.12.1.1 Providing a prioritizer) (504) 546 ent
( 20.12.1.2 Dispatching events) (505) 547 ent
( 20.12.1.3 Getting the prioritizer) (506) 548 ent
( 20.12.2 Scheduling the Notifier) (506) 548 ent
( 20.12.2.1 Dispatching clients) (507) 549 ent
( 20.12.2.2 Getting the scheduler) (507) 549 ent
d726 4
a729 4
( 21.1.0.1 What is a colormap segment?) (514) 556 ent
( 21.1.1 Colormap Segment Types) (515) 557 ent
( 21.1.1.1 Static colormap segments) (515) 557 ent
( 21.1.1.2 Dynamic colormap segments) (515) 557 ent
d731 5
a735 5
( 21.2.0.1 Cms size) (516) 558 ent
( 21.2.1 Specifying Colors) (517) 559 ent
( 21.2.1.1 Specifying colors by name) (517) 559 ent
( 21.2.1.2 Specifying colors by RGB values) (517) 559 ent
( 21.2.2 Cms Name) (519) 561 ent
d737 1
a737 1
( 21.3.0.1 Logical vs. real indices) (519) 561 ent
d742 2
a743 2
( 21.3.1 Foreground and Background Colors) (520) 562 ent
( 21.3.1.1 Colors of control objects) (521) 563 ent
d746 1
a746 1
( 21.5.1 Coloring Panel Items) (525) 567 ent
d750 1
a750 1
( 21.8.1 Using the Visual Attributes) (529) 571 ent
d758 9
a766 9
( 22.1.1 Locale Definition) (538) 580 ent
( 22.1.2 Enabling Internationalization) (538) 580 ent
( 22.1.2.1 Setting path of locale-specific files) (539) 581 ent
( 22.1.3 OpenWindows Localization Properties Sheet) (539) 581 ent
( 22.1.4 XView Locale Attributes) (540) 582 ent
( 22.1.5 Command-line Options for Specifying Locale) (541) 583 ent
( 22.1.5.1 XView locale resources) (541) 583 ent
( 22.1.5.2 ANSI-C/POSIX) (542) 584 ent
( 22.1.6 Limits and Restrictions) (543) 585 ent
d768 9
a776 9
( 22.2.1 Localized Text Handling - Application Programmer Interface) (544) 586 ent
( 22.2.1.1 gettext\(\)) (544) 586 ent
( 22.2.1.2 dgettext\(\)) (545) 587 ent
( 22.2.1.3 textdomain\(\)) (545) 587 ent
( 22.2.1.4 bindtextdomain\(\)) (546) 588 ent
( 22.2.1.5 Examples) (547) 589 ent
( 22.2.1.6 XV_LOCALE_DIR) (547) 589 ent
( 22.2.2 Creating a Text Domain) (547) 589 ent
( 22.2.3 New and Enhanced XView Attributes for gettext\(\)) (549) 591 ent
d778 6
a783 6
( 22.3.1 Implicit and Explicit) (550) 592 ent
( 22.3.2 Layout and Customization API) (550) 592 ent
( 22.3.2.1 XV_LOCALE_DIR) (550) 592 ent
( 22.3.2.2 XV_USE_DB) (551) 593 ent
( 22.3.2.3 XV_INSTANCE_NAME) (551) 593 ent
( 22.3.3 Command-line Options) (552) 594 ent
d793 7
a799 7
( 23.2.1 Attaching Help Data) (559) 601 ent
( 23.2.2 More Help) (560) 602 ent
( 23.2.3 Text Help) (561) 603 ent
( 23.2.4 Displaying Help Manually) (561) 603 ent
( 23.2.5 Help File Installation) (562) 604 ent
( 23.2.5.1 HELPPATH usage with internationalization) (563) 605 ent
( 23.2.5.2 Setting the application name) (563) 605 ent
d807 1
a807 1
( 24.2.0.1 Using xv_error_format\(\)) (569) 611 ent
d810 4
a813 4
( 24.4.0.1 Error types) (570) 612 ent
( 24.4.1 Calling xv_error\(\)) (571) 613 ent
( 24.4.1.1 Error severity) (572) 614 ent
( 24.4.2 Revisiting the Error Handler) (572) 614 ent
d819 2
a820 2
( 25.1.0.1 Static subclassing) (580) 622 ent
( 25.1.1 Order of Methods) (581) 623 ent
d822 7
a828 7
( 25.2.1 Attribute Values) (582) 624 ent
( 25.2.2 Creating Attribute Lists) (583) 625 ent
( 25.2.2.1 Attribute lists within attribute lists) (583) 625 ent
( 25.2.3 Interpreting Attributes) (584) 626 ent
( 25.2.4 Checking for Bad Attributes) (586) 628 ent
( 25.2.4.1 Searching for specific attributes) (586) 628 ent
( 25.2.5 Consuming Attributes) (587) 629 ent
d831 2
a832 2
( 25.4.1 The Xv_pkg Type) (589) 631 ent
( 25.4.2 Public and Private Data) (590) 632 ent
d834 3
a836 3
( 25.5.1 Header Files) (591) 633 ent
( 25.5.1.1 The public header file) (591) 633 ent
( 25.5.1.2 The private header file) (592) 634 ent
d841 7
a847 7
( 25.5.2 The Implementation File) (593) 635 ent
( 25.5.3 The Package Declaration) (594) 636 ent
( 25.5.4 The Initialize Method) (595) 637 ent
( 25.5.4.1 The logo_redraw\(\) function) (598) 640 ent
( 25.5.5 The Set Method) (599) 641 ent
( 25.5.6 The Get Method) (601) 643 ent
( 25.5.7 The Destroy Method) (602) 644 ent
d851 4
a854 4
( 25.8.1 The Bitmap Initialize Method) (606) 648 ent
( 25.8.2 The Bitmap Set Method) (607) 649 ent
( 25.8.3 The Bitmap Get Method) (608) 650 ent
( 25.8.4 Creating a Bitmap Instance) (609) 651 ent
d856 4
a859 4
( 25.9.0.1 To find or not to find) (610) 652 ent
( 25.9.1 Conceptual Implementation) (611) 653 ent
( 25.9.1.1 Scope of list availability) (612) 654 ent
( 25.9.2 Actual Implementation) (612) 654 ent
d861 9
a869 9
( 25.10.0.1 The public image header file) (613) 655 ent
( 25.10.0.2 The private image header file) (613) 655 ent
( 25.10.0.3 The image package declaration) (614) 656 ent
( 25.10.1 The Image Initialize Method) (614) 656 ent
( 25.10.2 The Image Set Method) (615) 657 ent
( 25.10.3 The Image Get Method) (616) 658 ent
( 25.10.4 The Image Destroy Method) (616) 658 ent
( 25.10.5 The Image Find Method) (617) 659 ent
( 25.10.6 The Image.c Program) (618) 660 ent
d871 18
a888 18
( 25.11.1 The Public Wizzy Header File) (620) 662 ent
( 25.11.2 The Private Wizzy Header File) (620) 662 ent
( 25.11.3 The Wizzy Package Declaration) (621) 663 ent
( 25.11.4 The Implementation Files) (621) 663 ent
( 25.11.5 The Wizzy Initialize Method) (622) 664 ent
( 25.11.6 The Wizzy Set Method) (624) 666 ent
( 25.11.7 The Wizzy Get Method) (625) 667 ent
( 25.11.8 The Wizzy Destroy Method) (626) 668 ent
( 25.11.9 Panel Item Handler Procedures) (626) 668 ent
( 25.11.9.1 The handle event function) (626) 668 ent
( 25.11.9.2 The begin preview function) (627) 669 ent
( 25.11.9.3 The update preview function) (627) 669 ent
( 25.11.9.4 The cancel preview function) (627) 669 ent
( 25.11.9.5 The accept preview function) (627) 669 ent
( 25.11.9.6 The accept menu function) (628) 670 ent
( 25.11.9.7 The accept key function) (628) 670 ent
( 25.11.9.8 The clear function) (628) 670 ent
( 25.11.9.9 The paint function) (628) 670 ent
d893 7
a899 7
( 25.11.9.10 The resize function) (629) 671 ent
( 25.11.9.11 The remove function) (629) 671 ent
( 25.11.9.12 The restore function) (630) 672 ent
( 25.11.9.13 The layout function) (630) 672 ent
( 25.11.9.14 Accept keyboard focus function) (630) 672 ent
( 25.11.9.15 The yield keyboard focus function) (631) 673 ent
( 25.11.10 Panel Item Extension Attributes) (631) 673 ent
d907 1
a907 1
( A.3.1 The Seln_request Structure) (641) 683 ent
d915 2
a916 2
( B.1.1 Response Choices and Values) (658) 700 ent
( B.1.2 Notice Triggers) (659) 701 ent
d924 11
a934 11
( C.1.1 SunView1 Mappings) (668) 710 ent
( C.1.1.1 Keyboard core functions) (668) 710 ent
( C.1.1.2 Local navigation commands) (668) 710 ent
( C.1.1.3 Text editing commands) (668) 710 ent
( C.1.2 Basic Mappings) (669) 711 ent
( C.1.2.1 Local navigation commands) (669) 711 ent
( C.1.2.2 Text editing commands) (669) 711 ent
( C.1.3 Full Mouseless Mappings) (670) 712 ent
( C.1.3.1 Keyboard core functions) (670) 712 ent
( C.1.3.2 Global navigation commands) (670) 712 ent
( C.1.3.3 Miscellaneous navigation commands) (671) 713 ent
d947 3
a949 3
( D.4.1 Monitoring Directory Changes) (685) 727 ent
( D.4.2 Filtering) (685) 727 ent
( D.4.3 File Chooser Sorting) (686) 728 ent
d951 2
a952 2
( D.5.1 Dot Files) (687) 729 ent
( D.5.2 Abbreviated View) (687) 729 ent
d955 1
a955 1
( D.7.1 File Chooser Components) (690) 732 ent
d957 3
a959 3
( D.8.1 New Panel List Attributes for Version 3.2) (691) 733 ent
( D.8.1.1 Adding new list entries) (691) 733 ent
( D.8.1.2 Other panel list changes) (694) 736 ent
d961 5
a965 5
( D.9.0.1 Frame package menu accelerator attributes) (695) 737 ent
( D.9.0.2 The menu attributes for menu accelerators) (696) 738 ent
( D.9.0.3 Resources) (698) 740 ent
( D.9.0.4 Core set menu accelerators) (698) 740 ent
( D.9.0.5 Events) (699) 741 ent
d972 8
a979 8
( E.1.1 Keyboard and Mouse Customization) (705) 747 ent
( E.1.2 Default Buttons in Pop Ups) (706) 748 ent
( E.1.3 Help) (706) 748 ent
( E.1.4 Window Background) (707) 749 ent
( E.1.5 Notices) (707) 749 ent
( E.1.6 Text Functions) (707) 749 ent
( E.1.7 Control Items) (707) 749 ent
( E.1.8 Property Windows) (708) 750 ent
@


1.2
log
@Minor reforms to PS Structuring Comments.
@
text
@a123 1

d125 1
a125 1

d131 1
a131 1
(Preface) (xxxiii) 33 chent
d136 1
a136 1
(Font Conventions Used in This Manual ) (xxxvi) 36 ent
d139 7
a145 7
(Obtaining the Example Programs) (xxxviii) 39 ent
(\ FTP) (xxxvii) 39 ent
(\ FTPMAIL) (xxxix) 39 ent
(\ BITFTP) (xl) 41 ent
(UUCP) (xl) 41 ent
(Acknowledgments) (xli) 42 ent
(Acknowledgments for XView Version 3 Update) (xli) 42 ent
d148 1
a148 1
(Chapter 1\ XView and the X Window System ) ( 3) 45 chent
d150 9
a158 9
(1.1\ The X Window System) ( 3) 45 ent
(\ 1.1.1\ The Server and Client) ( 5) 47 ent
(1.2\ The Software Hierarchy) ( 7) 49 ent
(1.3\ Extensions to X) ( 8) 50 ent
(1.4\ The Window Manager) ( 9) 51 ent
(1.5\ Handling Events) ( 9) 51 ent
(1.6\ Development of the XView Toolkit) (11) 53 ent
(1.7\ Versions of the XView Toolkit) (12) 54 ent
(1.8\ OPENLOOK Graphical User Interface) (12) 54 ent
d164 2
a165 2
(\ 2.1.1 Object Class Hierarchy) (18) 60 ent
(\ 2.1.2 Object Handles) (19) 61 ent
d167 3
a169 3
(\ 2.2.1 Creating and Manipulating Objects) (21) 63 ent
(\ 2.2.2 Changing Object Attributes) (22) 64 ent
(\ 2.2.3 Types of Attributes) (22) 64 ent
d176 11
a186 11
(\ 2.4.1 Generic Objects) (24) 66 ent
(\ 2.4.2 Window Objects) (25) 67 ent
(\ 2.4.3 Frames and Subframes) (26) 68 ent
(\ 2.4.4 Subwindows) (29) 71 ent
(\ 2.4.4.1 Canvas Subwindows) (30) 72 ent
(\ 2.4.4.2 Text Subwindows) (30) 72 ent
(\ 2.4.4.3 Panels) (30) 72 ent
(\ 2.4.4.4 Menus) (31) 73 ent
(\ 2.4.4.5 Scrollbars) (33) 75 ent
(\ 2.4.4.6 Icons) (34) 76 ent
(\ 2.4.5 Nonvisual Objects) (34) 76 ent
d188 4
a191 4
(\ 2.5.1 Callback Style of Programming) (35) 77 ent
(\ 2.5.2 Why a Notification-based System?) (36) 78 ent
(\ 2.5.3 Relationship Among the Notifier, Objects, and the Application) (37) 79 ent
(\ 2.5.4 Calling the Notifier Directly) (37) 79 ent
d197 6
a202 6
(\ 3.1.1 Compiling XView Programs) (41) 83 ent
(\ 3.1.2 XView Libraries) (42) 84 ent
(\ 3.1.3 Header Files) (42) 84 ent
(\ 3.1.4 Naming Conventions) (43) 85 ent
(\ 3.1.4.1 Reserved Names) (43) 85 ent
(\ 3.1.5 Example of XView-style Programming) (43) 85 ent
d204 1
a204 1
(\ 3.2.1 Using xv_init\(\)) (46) 88 ent
d206 5
a210 5
(\ 3.3.1 Using xv_create\(\)) (47) 89 ent
(\ 3.3.2 Using xv_find\(\)) (49) 91 ent
(\ 3.3.3 Using xv_destroy\(\)) (50) 92 ent
(\ 3.3.4 Using xv_set\(\) and xv_get\(\)) (51) 93 ent
(\ 3.3.5 Precedence of Resource Options) (53) 95 ent
d217 1
a217 1
(\ 4.1.1 The Role of the Window Manager) (61) 103 ent
d219 3
a221 3
(\ 4.2.1 XView Initialization and Base Frames) (62) 104 ent
(\ 4.2.2 Headers and Footers) (63) 105 ent
(\ 4.2.3 Closed Base Frames) (66) 108 ent
d226 1
a226 1
(\ 4.2.4 Quit Confirmation) (67) 109 ent
d228 5
a232 5
(\ 4.3.1 Manually Displaying Frames) (69) 111 ent
(\ 4.3.2 The Pushpin) (69) 111 ent
(\ 4.3.3 The FRAME_DONE_PROC Procedure) (71) 113 ent
(\ 4.3.4 Showing Resize Corners) (73) 115 ent
(\ 4.3.5 Minimum and Maximum Frame Sizes) (73) 115 ent
d250 6
a255 6
(\ 5.2.1 Drawing in a Canvas) (89) 131 ent
(\ 5.2.1.1 Draw Programs) (89) 131 ent
(\ 5.2.1.2 Paint Programs) (90) 132 ent
(\ 5.2.1.3 Text-based Programs) (90) 132 ent
(\ 5.2.1.4 Visualization Programs) (90) 132 ent
(\ 5.2.1.5 Rendering Graphics) (91) 133 ent
d258 3
a260 3
(\ 5.4.1 Automatic Canvas Sizing) (98) 140 ent
(\ 5.4.2 Explicit Canvas Sizing) (99) 141 ent
(\ 5.4.3 Tracking Changes in the Canvas Size) (100) 142 ent
d263 8
a270 8
(\ 5.6.1 Splitting Views Using Scrollbars) (102) 144 ent
(\ 5.6.2 Splitting Views Using xv_set\(\)) (103) 145 ent
(\ 5.6.3 Getting View Windows) (103) 145 ent
(\ 5.6.3.1 Getting the Newest View) (103) 145 ent
(\ 5.6.3.2 Getting Arbitrary Views) (104) 146 ent
(5.7 Handling Input in the Canvas Package) (106) 148 ent
(\ 5.7.1 Default Events) (106) 148 ent
(\ 5.7.2 Notification of Events) (106) 148 ent
d280 2
a281 2
(\ 6.2.0.1 Event IDs) (117) 159 ent
(\ 6.2.0.2 Semantic Events) (117) 159 ent
d283 7
a289 7
(\ 6.3.1 Specifying X Event Masks) (118) 160 ent
(\ 6.3.2 Specifying XView Events) (119) 161 ent
(\ 6.3.2.1 Mouse Events) (120) 162 ent
(\ 6.3.2.2 Keyboard Events) (121) 163 ent
(\ 6.3.2.3 Resize and Repaint Events) (122) 164 ent
(\ 6.3.2.4 Client Messages) (123) 165 ent
(\ 6.3.2.5 Miscellaneous Events) (123) 165 ent
d293 6
a298 6
(\ 6.6.0.1 Event States) (126) 168 ent
(\ 6.6.0.2 Modifier Keys) (126) 168 ent
(\ 6.6.1 Keyboard Events) (126) 168 ent
(\ 6.6.1.1 Mouse Events) (128) 170 ent
(\ 6.6.1.2 Keyboard Focus) (129) 171 ent
(\ 6.6.1.3 Selection Events) (130) 172 ent
d300 1
a300 1
(\ 6.7.1 Sending and Reading Client Messages) (130) 172 ent
d306 3
a308 3
(\ 6.12.1 Soft Function Keys) (140) 182 ent
(\ 6.12.2 Virtual Keyboards) (141) 183 ent
(\ 6.12.2.1 Multiple Language Support) (141) 183 ent
d310 7
a316 7
(\ 6.13.1 Keyboard Command Mapping) (143) 185 ent
(\ 6.13.2 Mouseless Model Resources) (144) 186 ent
(\ 6.13.3 Using the Mouseless Model) (145) 187 ent
(\ 6.13.3.1 The Role of the Window Manager) (145) 187 ent
(\ 6.13.3.2 Application Responsibilities) (146) 188 ent
(\ 6.13.4 The Location Cursor) (146) 188 ent
(\ 6.13.5 Events) (147) 189 ent
d320 1
a320 1
(Chapter 7 Panels ) (151) 193 chent
d322 2
a323 2
(7.1 Creating a Panel) (153) 195 ent
(\ 7.1.0.1 Fonts and Panels) (154) 196 ent
d328 48
a375 48
(\ 7.1.1 Scrollable Panels) (154) 196 ent
(7.2 Creating Panel Items) (155) 197 ent
(7.3 Layout of Panels and Panel Items) (157) 199 ent
(\ 7.3.1 Panel Layout) (157) 199 ent
(\ 7.3.2 Panel Item Layout) (158) 200 ent
(7.4 Explicit Panel Item Positioning) (159) 201 ent
(\ 7.4.1 Relative Panel Item Positioning) (159) 201 ent
(\ 7.4.2 Absolute Panel Item Positioning) (160) 202 ent
(\ 7.4.2.1 General Positioning of Items) (161) 203 ent
(\ 7.4.3 Layout of Panel Items with Values) (161) 203 ent
(7.5 Sizing Panels) (162) 204 ent
(7.6 Panel Item Values) (162) 204 ent
(7.7 Iterating Over a Panel's Items) (163) 205 ent
(7.8 Panel Item Classes) (164) 206 ent
(7.9 Button Items) (164) 206 ent
(\ 7.9.1 Button Selection) (164) 206 ent
(\ 7.9.1.1 Making a Button Inactive) (166) 208 ent
(\ 7.9.2 Menu Buttons) (166) 208 ent
(\ 7.9.2.1 Destroying Menu Buttons) (167) 209 ent
(\ 7.9.3 Panel Button Width) (168) 210 ent
(\ 7.9.4 Abbreviated Menu Buttons) (169) 211 ent
(7.10 Choice Items) (169) 211 ent
(\ 7.10.1 Display and Layout of Item Choices) (170) 212 ent
(\ 7.10.2 Exclusive and Nonexclusive Choices) (170) 212 ent
(\ 7.10.3 Abbreviated Choices) (172) 214 ent
(\ 7.10.4 Checkbox Choices) (173) 215 ent
(\ 7.10.5 Choice Selection and Notification) (173) 215 ent
(\ 7.10.6 Foreground Color in Choice Items) (174) 216 ent
(\ 7.10.7 Parallel Lists) (174) 216 ent
(7.11 Scrolling Lists) (176) 218 ent
(\ 7.11.1 Displaying List Items) (176) 218 ent
(\ 7.11.2 Adding and Deleting List Entries) (179) 221 ent
(\ 7.11.3 List Selection) (180) 222 ent
(\ 7.11.4 List Notification) (181) 223 ent
(\ 7.11.4.1 List Item Client Data) (182) 224 ent
(\ 7.11.5 The Scrolling List Menu) (182) 224 ent
(7.12 Message Items) (182) 224 ent
(7.13 Slider Items) (184) 226 ent
(\ 7.13.1 Slider Selection) (185) 227 ent
(\ 7.13.2 Slider Notification) (185) 227 ent
(\ 7.13.3 Slider Value) (186) 228 ent
(7.14 Gauges) (186) 228 ent
(7.15 Text Items) (187) 229 ent
(\ 7.15.1 The Current Keyboard Focus) (188) 230 ent
(\ 7.15.2 Text Selection) (189) 231 ent
(\ 7.15.3 Text Notification) (189) 231 ent
(\ 7.15.4 Writing Your Own Text Notify Procedure) (190) 232 ent
(\ 7.15.5 Text Value) (191) 233 ent
d380 22
a401 22
(7.16 Numeric Text Items) (191) 233 ent
(7.17 Multiline Text Items) (191) 233 ent
(7.18 Drop Target Items) (192) 234 ent
(\ 7.18.1 Programming a Panel Drop Target Item) (194) 236 ent
(\ 7.18.1.1 Create the Drop Target Item) (194) 236 ent
(\ 7.18.1.2 Specify the Glyphs) (194) 236 ent
(\ 7.18.1.3 Create the Drag and Drop Object) (195) 237 ent
(\ 7.18.1.4 Define the Drop Target Item's Requestor) (195) 237 ent
(\ 7.18.1.5 Controlling the Glyphs) (196) 238 ent
(\ 7.18.1.6 Dropping on the Drop Target) (196) 238 ent
(\ 7.18.1.7 Dragging from the Drop Target Item) (196) 238 ent
(\ 7.18.2 Drop Target Notification) (196) 238 ent
(7.19 Advanced Panel Usage) (197) 239 ent
(\ 7.19.1 Attaching Data to Panel Items) (197) 239 ent
(\ 7.19.2 Using PANEL_REPAINT_PROC) (200) 242 ent
(\ 7.19.3 Painting Panel Items) (203) 245 ent
(\ 7.19.4 Panel Event Handling) (203) 245 ent
(\ 7.19.5 Using an Interpose Function) (204) 246 ent
(\ 7.19.6 Using PANEL_BACKGROUND_PROC) (205) 247 ent
(\ 7.19.7 Using PANEL_EVENT_PROC) (205) 247 ent
(\ 7.19.8 Event Handling Example) (206) 248 ent
(7.20 Panel Package Summary) (207) 249 ent
d404 1
a404 1
(Chapter 8 Text Subwindows ) (211) 255 chent
d406 22
a427 22
(8.1 Creating Text Subwindows) (212) 256 ent
(8.2 Setting Text Subwindow Attributes) (212) 256 ent
(8.3 Text Subwindow Contents) (213) 257 ent
(8.4 Editing a Text Subwindow) (213) 257 ent
(\ 8.4.1 Loading a File) (213) 257 ent
(\ 8.4.2 Checking the Status of the Text Subwindow) (214) 258 ent
(\ 8.4.3 Writing to a Text Subwindow) (215) 259 ent
(\ 8.4.3.1 Setting the Insertion Point) (216) 260 ent
(\ 8.4.4 Reading from a Text Subwindow) (216) 260 ent
(\ 8.4.5 Deleting Text) (217) 261 ent
(\ 8.4.6 Emulating an Editing Character) (217) 261 ent
(\ 8.4.7 Replacing Characters) (218) 262 ent
(\ 8.4.8 The Editing Log) (218) 262 ent
(\ 8.4.9 Which File is Being Edited?) (219) 263 ent
(\ 8.4.9.1 Interactions with the File System) (219) 263 ent
(8.5 Saving Edits in a Subwindow) (220) 264 ent
(\ 8.5.1 Storing Edits) (220) 264 ent
(\ 8.5.2 Discarding Edits) (220) 264 ent
(8.6 Setting the Contents of a Text Subwindow) (221) 265 ent
(\ 8.6.1 TEXTSW_FILE_CONTENTS) (221) 265 ent
(\ 8.6.2 TEXTSW_CONTENTS) (221) 265 ent
(\ 8.6.3 TEXTSW_INSERT_FROM_FILE) (222) 266 ent
d432 18
a449 18
(8.7 Positioning the Text Displayed in a Text Subwindow) (222) 266 ent
(\ 8.7.1 Screen Lines and File Lines) (222) 266 ent
(\ 8.7.2 Absolute Positioning) (223) 267 ent
(\ 8.7.3 Relative Positioning) (224) 268 ent
(\ 8.7.4 Which File Lines are Visible?) (224) 268 ent
(\ 8.7.4.1 Guaranteeing What is Visible) (224) 268 ent
(\ 8.7.4.2 Ensuring That the Insertion Point is Visible) (225) 269 ent
(8.8 Finding and Matching a Pattern) (225) 269 ent
(\ 8.8.1 Matching a Span of Characters) (225) 269 ent
(\ 8.8.2 Matching a Specific Pattern) (226) 270 ent
(8.9 Marking Positions) (227) 271 ent
(\ 8.9.1 Getting a Text Selection) (228) 272 ent
(\ 8.9.2 Setting the Primary Selection) (229) 273 ent
(8.10 Dealing with Multiple Views) (229) 273 ent
(8.11 Text Subwindow Destroy Confirmation) (230) 274 ent
(8.12 Notifications from a Text Subwindow) (230) 274 ent
(\ 8.12.1 Text Subwindow Interposition) (233) 277 ent
(8.13 Text Subwindow Package Summary) (233) 277 ent
d452 1
a452 1
(Chapter 9 TTY Subwindows ) (237) 281 chent
d454 6
a459 6
(9.1 Creating a TTY Subwindow) (237) 281 ent
(9.2 Driving a TTY Subwindow) (238) 282 ent
(9.3 Monitoring the Program in the TTY Subwindow) (241) 285 ent
(9.4 Talking Directly to the TTY Subwindow) (243) 287 ent
(9.5 TTY Subwindow Function Key Escape Sequences) (245) 289 ent
(9.6 TTY Package Summary) (246) 290 ent
d462 1
a462 1
(Chapter 10 Scrollbars ) (249) 293 chent
d464 9
a472 8
(10.1 Creating Scrollbars) (254) 294 ent
(10.2 Relationship Between Scrollbars and Objects) (256) 296 ent
(10.3 An Example) (258) 298 ent
(10.4 Managing Your Own Scrollbar) (263) 303 ent
(\ 10.4.1 Monitoring When Scrollbar Events Occur) (264) 304 ent
(\ 10.4.2 Providing a Scrollbar Compute Procedure) (266) 306 ent
(\ 10.4.3 Providing a Scrollbar Normalize Procedure) (268) 308 ent
(10.5 Scrollbar Package Summary) (270) 310 ent
d475 1
a475 1
(Chapter 11 Menus ) (267) 313 chent
d477 3
a479 3
(11.1 Menu Types) (267) 313 ent
(\ 11.1.1 Pop-up Menus) (268) 314 ent
(\ 11.1.2 Pulldown Menus) (268) 314 ent
d484 30
a513 30
(\ 11.1.3 Pullright Menus) (268) 314 ent
(11.2 Menu Items) (270) 316 ent
(\ 11.2.1 Choice Items) (270) 316 ent
(\ 11.2.2 Exclusive Items) (270) 316 ent
(\ 11.2.3 Nonexclusive Items) (271) 317 ent
(11.3 Creating Menus) (271) 317 ent
(11.4 Displaying Menus) (273) 319 ent
(11.5 A Simple Program) (274) 320 ent
(11.6 Creating Menu Items) (277) 323 ent
(\ 11.6.1 Using MENU_ITEM) (277) 323 ent
(\ 11.6.2 Using MENU_ACTION_ITEM) (278) 324 ent
(\ 11.6.3 Using MENUITEM) (278) 324 ent
(11.7 Adding Menu Items) (279) 325 ent
(11.8 Pullright Menus) (280) 326 ent
(11.9 Menu-generating Procedures) (282) 328 ent
(\ 11.9.1 Parent Menus) (285) 331 ent
(\ 11.9.2 Using MENU_GEN_PROC) (285) 331 ent
(11.10 Using Toggle Menus) (286) 332 ent
(11.11 Menu Layout) (287) 333 ent
(11.12 Making Pin-up Menus) (287) 333 ent
(11.13 Notification Procedures) (289) 335 ent
(11.14 Finding Menu Items) (292) 338 ent
(11.15 Initial and Default Menu Selections) (292) 338 ent
(11.16 Unpinned Command Frame Dismissal) (293) 339 ent
(11.17 Destroying Menus) (293) 339 ent
(\ 11.17.1 Freeing Allocated Strings) (294) 340 ent
(\ 11.17.2 Freeing Pullright Menus) (294) 340 ent
(\ 11.17.3 Menu Client Data) (295) 341 ent
(11.18 Example Program) (295) 341 ent
(11.19 Menu Package Summary) (299) 345 ent
d516 1
a516 1
(Chapter 12 Notices ) (303) 349 chent
d518 11
a528 11
(12.1 Creating and Displaying Notices) (304) 350 ent
(\ 12.1.1 Notice Values and Status) (307) 353 ent
(12.2 Types of Notices) (309) 355 ent
(\ 12.2.1 Standard Notices) (310) 356 ent
(\ 12.2.1.1 Using a Notice Callback) (311) 357 ent
(\ 12.2.1.2 Selecting the Busy Frames) (312) 358 ent
(\ 12.2.2 Notices That Lock the Screen) (313) 359 ent
(\ 12.2.2.1 Notice Triggers) (314) 360 ent
(12.3 Destroying a Notice) (316) 362 ent
(12.4 Another Example) (317) 363 ent
(12.5 Notice Package Summary) (320) 366 ent
d533 1
a533 1
(Chapter 13 Cursors ) (323) 369 chent
d535 7
a541 7
(13.1 Creating Cursors) (323) 369 ent
(\ 13.1.1 simple_cursor.c) (324) 370 ent
(13.2 Predefined Cursors) (326) 372 ent
(13.3 The Hotspot and Cursor Location) (326) 372 ent
(13.4 Color Cursors) (329) 375 ent
(13.5 Support for Text Drag and Drop) (330) 376 ent
(13.6 Cursor Package Summary) (331) 377 ent
d544 1
a544 1
(Chapter 14 Icons ) (335) 381 chent
d546 8
a553 8
(14.1 Creating and Destroying Icons) (335) 381 ent
(14.2 The Icon's Image) (336) 382 ent
(\ 14.2.0.1 Color Icons) (338) 384 ent
(\ 14.2.0.2 ICON_TRANSPARENT) (339) 385 ent
(\ 14.2.0.3 ICON_MASK_IMAGE) (340) 386 ent
(\ 14.2.1 The Icon Text) (340) 386 ent
(\ 14.2.2 ICON_TRANSPARENT_LABEL) (341) 387 ent
(14.3 Icon Package Summary) (341) 387 ent
d556 1
a556 1
(Chapter 15 Nonvisual Objects ) (345) 391 chent
d558 12
a569 12
(15.1 The Display) (346) 392 ent
(15.2 The Screen Object) (346) 392 ent
(\ 15.2.1 Multiple Screens) (347) 393 ent
(15.3 The SERVER Package) (349) 395 ent
(\ 15.3.1 Creating a Server \(Establishing a Connection\)) (349) 395 ent
(\ 15.3.2 Connecting to Multiple Servers) (350) 396 ent
(\ 15.3.3 Getting the Server) (350) 396 ent
(15.4 Server Images) (351) 397 ent
(\ 15.4.1 Creating Server Images) (352) 398 ent
(15.5 The FULLSCREEN Package) (355) 401 ent
(\ 15.5.0.1 Debugging and the FULLSCREEN Package) (357) 403 ent
(15.6 Nonvisual Package Summary) (358) 404 ent
d572 1
a572 1
(Chapter 16 Fonts ) (363) 409 chent
d574 7
a580 7
(16.1 Creating Fonts) (364) 410 ent
(\ 16.1.1 Font Families and Styles) (367) 413 ent
(\ 16.1.2 Font Sizes) (369) 415 ent
(\ 16.1.3 Scaling Fonts) (369) 415 ent
(\ 16.1.4 Fonts by Name) (371) 417 ent
(16.2 Font Dimensions) (371) 417 ent
(16.3 Font Package Summary) (373) 419 ent
d585 1
a585 1
(Chapter 17 Resources ) (377) 423 chent
d587 8
a594 8
(17.1 Predefined Defaults) (377) 423 ent
(17.2 XView Resource Database Functions) (380) 426 ent
(\ 17.2.1 Boolean Resources) (381) 427 ent
(\ 17.2.2 Integer Resources) (382) 428 ent
(\ 17.2.3 Character Resources) (383) 429 ent
(\ 17.2.4 String Resources) (383) 429 ent
(\ 17.2.5 Enumerated Resources) (383) 429 ent
(17.3 Creating Resource Instances) (386) 432 ent
d597 1
a597 1
(Chapter 18 Selections ) (389) 435 chent
d599 33
a631 33
(18.1 The XView Selection Model) (391) 437 ent
(18.2 How Selection Works \(Without a Selection Item\)) (392) 438 ent
(\ 18.2.1 Highlighting the Selection \(selection owner\)) (393) 439 ent
(\ 18.2.2 Making the Selection \(selection owner\)) (393) 439 ent
(\ 18.2.3 Requesting the Selection \(selection requestor\)) (395) 441 ent
(\ 18.2.3.1 Specifying the Target Type \(selection requestor\)) (396) 442 ent
(\ 18.2.3.2 SEL_REPLY_PROC \(selection requestor\)) (396) 442 ent
(\ 18.2.3.3 Timeout for a Selection Response) (397) 443 ent
(\ 18.2.3.4 Requesting the CLIPBOARD Selection-Blocking) (397) 443 ent
(\ 18.2.3.5 Requesting the CLIPBOARD Selection-Non-blocking) (398) 444 ent
(\ 18.2.4 Converting the Selection \(selection owner\)) (399) 445 ent
(\ 18.2.4.1 The Default Conversion Procedure) (400) 446 ent
(\ 18.2.4.2 Sample Selection Owner with Conversion Procedure) (400) 446 ent
(\ 18.2.5 Handling the Response \(selection requestor\)) (402) 448 ent
(\ 18.2.5.1 Handling Selection Reply Procedure Errors) (404) 450 ent
(\ 18.2.6 If the Selection is Lost \(selection owner\)) (406) 452 ent
(\ 18.2.7 Cleanup - When the Selection Completes \(selection owner\)) (406) 452 ent
(18.3 How Selection Works \(With a Selection Item\)) (407) 453 ent
(\ 18.3.1 The Selection Item) (408) 454 ent
(18.4 How to Send Data Incrementally \(selection owner\)) (411) 457 ent
(\ 18.4.1 How to Handle Incremental Replies \(selection requestor\)) (412) 458 ent
(18.5 Requesting and Converting Multiple Targets) (413) 459 ent
(18.6 Additional Transfer Mechanisms \(selection requestor\)) (414) 460 ent
(18.7 Additional Transfer Mechanisms \(selection owner\)) (414) 460 ent
(18.8 Sample Selection Owner Program with a Selection Item) (414) 460 ent
(\ 18.8.0.1 The Notify Procedure) (417) 463 ent
(\ 18.8.0.2 The Conversion Procedure) (418) 464 ent
(\ 18.8.1 The Done Procedure) (419) 465 ent
(\ 18.8.2 The Lose Procedure) (419) 465 ent
(18.9 Sample Selection Requestor Program) (420) 466 ent
(\ 18.9.0.1 Sample Reply Procedure) (423) 469 ent
(\ 18.9.0.2 Sample Error Procedure) (425) 471 ent
(18.10 Selection Package Summary) (426) 472 ent
d636 1
a636 1
(Chapter 19 Drag and Drop ) (429) 475 chent
d638 18
a655 18
(19.1 Drag and Drop Objects) (431) 477 ent
(19.2 Registering Drop-sites) (432) 478 ent
(\ 19.2.1 Adding and Deleting Regions) (433) 479 ent
(\ 19.2.2 Handling Events) (433) 479 ent
(\ 19.2.2.1 Preview Events) (434) 480 ent
(\ 19.2.2.2 Event Forwarding) (434) 480 ent
(\ 19.2.2.3 Handling Drop and Preview Events) (435) 481 ent
(19.3 Sourcing the Drag) (435) 481 ent
(\ 19.3.1 Initiating the Drop Operation) (436) 482 ent
(\ 19.3.2 Interaction with the Selection Package) (437) 483 ent
(\ 19.3.3 Defining the Drag/Accept Cursor) (438) 484 ent
(\ 19.3.4 Timeout Value) (438) 484 ent
(19.4 Receiving a Drop) (438) 484 ent
(\ 19.4.0.1 The Move Operation) (439) 485 ent
(\ 19.4.0.2 The Done Procedure) (440) 486 ent
(19.5 Sample Program-Sourcing a Drag) (440) 486 ent
(19.6 Sample Program-Drop Site Item and Destination) (447) 493 ent
(19.7 Drag and Drop Package Summary) (452) 498 ent
d658 1
a658 1
(Chapter 20 The Notifier ) (457) 501 chent
d660 24
a683 24
(20.1 Basic Concepts) (457) 501 ent
(\ 20.1.1 Mainline Input Handling) (457) 501 ent
(\ 20.1.2 Event-driven Input Handling) (458) 502 ent
(20.2 Functions of the Notifier) (458) 502 ent
(20.3 How the Notifier Works) (459) 503 ent
(\ 20.3.1 Restrictions) (459) 503 ent
(\ 20.3.1.1 System Calls to Avoid) (460) 504 ent
(20.4 What is a Notifier Client?) (461) 505 ent
(\ 20.4.1 Types of Interaction) (461) 505 ent
(20.5 Signal Handling) (462) 506 ent
(\ 20.5.1 Signals to Avoid) (462) 506 ent
(\ 20.5.2 A Replacement for signal\(\)) (463) 507 ent
(\ 20.5.3 Timers) (465) 509 ent
(\ 20.5.4 Handling SIGTERM) (469) 513 ent
(\ 20.5.5 Handling SIGCHLD) (469) 513 ent
(\ 20.5.5.1 Reaping Dead Processes) (470) 514 ent
(20.6 Interaction with RPC) (471) 515 ent
(20.7 Client Events) (472) 516 ent
(\ 20.7.1 Receiving Client Events) (473) 517 ent
(\ 20.7.2 Posting Client Events) (474) 518 ent
(\ 20.7.2.1 Actual Delivery Time) (475) 519 ent
(\ 20.7.3 Posting with an Argument) (475) 519 ent
(\ 20.7.4 Posting Destroy Events) (476) 520 ent
(\ 20.7.5 Delivery Time of Destroy Events) (477) 521 ent
d688 31
a718 30
(20.8 Reading and Writing Through File Descriptors) (477) 521 ent
(\ 20.8.1 Reading Files) (478) 522 ent
(\ 20.8.2 Reading and Writing on Pipes) (480) 524 ent
(\ 20.8.3 Exception Occurred Events) (485) 529 ent
(\ 20.8.4 Getting an Event Handler) (485) 529 ent
(20.9 Interposition) (486) 530 ent
(\ 20.9.1 Uses of Interposition) (487) 531 ent
(\ 20.9.2 Interface to Interposition) (487) 531 ent
(\ 20.9.3 Registering an Interposer) (487) 531 ent
(\ 20.9.4 Invoking the Next Function) (488) 532 ent
(\ 20.9.5 Removing an Interposed Function) (489) 533 ent
(\ 20.9.6 An Interposition Example) (489) 533 ent
(\ 20.9.7 Interposing on Resize Events) (491) 535 ent
(\ 20.9.8 Modifying an Object's Destruction) (491) 535 ent
(\ 20.9.8.1 Interposing a Client Destroy Handler) (493) 537 ent
(20.10 Notifier Control) (495) 539 ent
(\ 20.10.1 Mass Destruction) (496) 540 ent
(\ 20.10.2 Implicit Dispatching) (496) 540 ent
(\ 20.10.3 Explicit Dispatching) (498) 542 ent
(20.11 Emulating a sleep\(\) Call) (499) 543 ent
(20.12 Advanced Notifier Usage) (501) 545 ent
(\ 20.12.1 Prioritization) (501) 545 ent
(\ 20.12.1.1 Providing a Prioritizer) (501) 545 ent
(\ 20.12.1.2 Dispatching Events) (502) 546 ent
(\ 20.12.1.3 Getting The Prioritizer) (503) 547 ent
(\ 20.12.2 Scheduling the Notifier) (503) 547 ent
(\ 20.12.2.1 Dispatching Clients) (504) 548 ent
(\ 20.12.2.2 Getting the Scheduler) (505) 549 ent
(20.13 Error Codes) (505) 549 ent
(20.14 Issues) (506) 550 ent
d721 1
a721 1
(Chapter 21 Color ) (511) 555 chent
d723 13
a735 13
(21.1 XView Color Model) (511) 555 ent
(\ 21.1.0.1 What is a Colormap Segment?) (512) 556 ent
(\ 21.1.1 Colormap Segment Types) (513) 557 ent
(\ 21.1.1.1 Static Colormap Segments) (513) 557 ent
(\ 21.1.1.2 Dynamic Colormap Segments) (513) 557 ent
(21.2 Creating Colormap Segments) (514) 558 ent
(\ 21.2.0.1 Cms Size) (514) 558 ent
(\ 21.2.1 Specifying Colors) (515) 559 ent
(\ 21.2.1.1 Specifying Colors by Name) (515) 559 ent
(\ 21.2.1.2 Specifying Colors by RGB values) (515) 559 ent
(\ 21.2.2 Cms Name) (517) 561 ent
(21.3 Color and Pixel Values) (517) 561 ent
(\ 21.3.0.1 Logical vs. Real Indices) (517) 561 ent
d740 11
a750 11
(\ 21.3.1 Foreground and Background Colors) (518) 562 ent
(\ 21.3.1.1 Colors of Control Objects) (519) 563 ent
(21.4 The color_logo.c Program) (519) 563 ent
(21.5 The Control Colormap Segment) (522) 566 ent
(\ 21.5.1 Coloring Panel Items) (523) 567 ent
(21.6 Using xv_find\(\) with Colormap Segments) (525) 569 ent
(21.7 Canvases and Colormaps) (526) 570 ent
(21.8 Multi-visual Support) (526) 570 ent
(\ 21.8.1 Using the Visual Attributes) (527) 571 ent
(21.9 Another Example) (527) 571 ent
(21.10 Cms Package Summary) (532) 576 ent
d753 1
a753 1
(Chapter 22 Internationalization ) (535) 579 chent
d755 28
a782 27
(22.1 Locale Setting) (536) 580 ent
(\ 22.1.1 Locale Definition) (536) 580 ent
(\ 22.1.2 Enabling Internationalization) (536) 580 ent
(\ 22.1.2.1 Setting Path of Locale-specific Files) (537) 581 ent
(\ 22.1.3 OpenWindows Localization Properties Sheet) (537) 581 ent
(\ 22.1.4 XView Locale Attributes) (538) 582 ent
(\ 22.1.5 Command-line Options for Specifying Locale) (539) 583 ent
(\ 22.1.5.1 XView Locale Resources) (539) 583 ent
(\ 22.1.5.2 ANSI-C/POSIX) (540) 584 ent
(22.2 Localized Text Handling) (541) 585 ent
(\ 22.2.1 Localized Text Handling - Application Programmer Interface) (542) 586 ent
(\ 22.2.1.1 gettext\(\)) (542) 586 ent
(\ 22.2.1.2 dgettext\(\)) (542) 586 ent
(\ 22.2.1.3 textdomain\(\)) (543) 587 ent
(\ 22.2.1.4 bindtextdomain\(\)) (543) 587 ent
(\ 22.2.1.5 Examples) (544) 588 ent
(\ 22.2.1.6 XV_LOCALE_DIR) (544) 588 ent
(\ 22.2.2 Creating a Text Domain) (545) 589 ent
(\ 22.2.3 New and Enhanced XView Attributes for gettext\(\)) (546) 590 ent
(22.3 Object Layout and Customization) (547) 591 ent
(\ 22.3.1 Implicit and Explicit) (547) 591 ent
(\ 22.3.2 Layout and Customization API) (548) 592 ent
(\ 22.3.2.1 XV_LOCALE_DIR) (548) 592 ent
(\ 22.3.2.2 XV_USE_DB) (548) 592 ent
(\ 22.3.2.3 XV_INSTANCE_NAME) (548) 592 ent
(\ 22.3.3 Command-line Options) (550) 594 ent
(22.4 Internationalization Attribute Summary) (550) 594 ent
d787 1
a787 1
(Chapter 23 Help Facilities ) (553) 599 chent
d789 10
a798 9
(23.1 Using XV_HELP_DATA) (554) 600 ent
(23.2 HELP Key Binding) (554) 600 ent
(\ 23.2.1 Attaching Help Data) (555) 601 ent
(\ 23.2.2 More Help) (556) 602 ent
(\ 23.2.3 Text Help) (557) 603 ent
(\ 23.2.4 Displaying Help Manually) (557) 603 ent
(\ 23.2.5 Help File Installation) (558) 604 ent
(\ 23.2.5.1 HELPPATH Usage with Internationalization) (559) 605 ent
(23.3 Help Package Summary) (560) 606 ent
d801 1
a801 1
(Chapter 24 Error Recovery ) (563) 609 chent
d803 9
a811 9
(24.1 XView Errors) (563) 609 ent
(24.2 Simple Error Handling) (564) 610 ent
(\ 24.2.0.1 Using xv_error_format\(\)) (565) 611 ent
(24.3 X Error Handling) (565) 611 ent
(24.4 Advanced Error Handling) (566) 612 ent
(\ 24.4.0.1 Error Types) (566) 612 ent
(\ 24.4.1 Calling xv_error\(\)) (567) 613 ent
(\ 24.4.1.1 Error Severity) (568) 614 ent
(\ 24.4.2 Revisiting the Error Handler) (568) 614 ent
d814 1
a814 1
(Chapter 25 XView Internals ) (573) 619 chent
d816 19
a834 19
(25.1 Methods) (574) 620 ent
(\ 25.1.0.1 Static Subclassing) (574) 620 ent
(\ 25.1.1 Order of Methods) (575) 621 ent
(25.2 Internal Attribute-value Lists) (576) 622 ent
(\ 25.2.1 Attribute Values) (576) 622 ent
(\ 25.2.2 Creating Attribute Lists) (577) 623 ent
(\ 25.2.2.1 Attribute Lists Within Attribute Lists) (577) 623 ent
(\ 25.2.3 Interpreting Attributes) (578) 624 ent
(\ 25.2.4 Checking for Bad Attributes) (580) 626 ent
(\ 25.2.4.1 Searching for Specific Attributes) (580) 626 ent
(\ 25.2.5 Consuming Attributes) (581) 627 ent
(25.3 Customizable Attributes) (581) 627 ent
(25.4 XView Packages) (583) 629 ent
(\ 25.4.1 The Xv_pkg Type) (583) 629 ent
(\ 25.4.2 Public and Private Data) (584) 630 ent
(25.5 The Logo Package) (585) 631 ent
(\ 25.5.1 Header Files) (585) 631 ent
(\ 25.5.1.1 The Public Header File) (585) 631 ent
(\ 25.5.1.2 The Private Header File) (586) 632 ent
d839 48
a886 48
(\ 25.5.2 The Implementation File) (587) 633 ent
(\ 25.5.3 The Package Declaration) (588) 634 ent
(\ 25.5.4 The Initialize Method) (589) 635 ent
(\ 25.5.4.1 The logo_redraw\(\) Function) (592) 638 ent
(\ 25.5.5 The Set Method) (593) 639 ent
(\ 25.5.6 The Get Method) (595) 641 ent
(\ 25.5.7 The Destroy Method) (596) 642 ent
(25.6 Example Program Listing) (597) 643 ent
(25.7 Compiling an Implementation File) (598) 644 ent
(25.8 The Bitmap Package) (599) 645 ent
(\ 25.8.1 The Bitmap Initialize Method) (600) 646 ent
(\ 25.8.2 The Bitmap Set Method) (601) 647 ent
(\ 25.8.3 The Bitmap Get Method) (602) 648 ent
(\ 25.8.4 Creating a Bitmap Instance) (603) 649 ent
(25.9 The Find Method) (604) 650 ent
(\ 25.9.0.1 To Find or Not to Find) (604) 650 ent
(\ 25.9.1 Conceptual Implementation) (605) 651 ent
(\ 25.9.1.1 Scope of List Availability) (606) 652 ent
(\ 25.9.2 Actual Implementation) (606) 652 ent
(25.10 The Image Package) (606) 652 ent
(\ 25.10.0.1 The Public Image Header File) (607) 653 ent
(\ 25.10.0.2 The Private Image Header File) (607) 653 ent
(\ 25.10.0.3 The Image Package Declaration) (608) 654 ent
(\ 25.10.1 The Image Initialize Method) (608) 654 ent
(\ 25.10.2 The Image Set Method) (609) 655 ent
(\ 25.10.3 The Image Get Method) (610) 656 ent
(\ 25.10.4 The Image Destroy Method) (610) 656 ent
(\ 25.10.5 The Image Find Method) (611) 657 ent
(\ 25.10.6 The Image.c Program) (612) 658 ent
(25.11 The Wizzy Package-A Panel Item Extension) (614) 660 ent
(\ 25.11.1 The Public Wizzy Header File) (614) 660 ent
(\ 25.11.2 The Private Wizzy Header File) (614) 660 ent
(\ 25.11.3 The Wizzy Package Declaration) (615) 661 ent
(\ 25.11.4 The Implementation Files) (615) 661 ent
(\ 25.11.5 The Wizzy Initialize Method) (616) 662 ent
(\ 25.11.6 The Wizzy Set Method) (618) 664 ent
(\ 25.11.7 The Wizzy Get Method) (619) 665 ent
(\ 25.11.8 The Wizzy Destroy Method) (620) 666 ent
(\ 25.11.9 Panel Item Handler Procedures) (620) 666 ent
(\ 25.11.9.1 The Handle Event Function) (620) 666 ent
(\ 25.11.9.2 The Begin Preview Function) (621) 667 ent
(\ 25.11.9.3 The Update Preview Function) (621) 667 ent
(\ 25.11.9.4 The Cancel Preview Function) (621) 667 ent
(\ 25.11.9.5 The Accept Preview Function) (621) 667 ent
(\ 25.11.9.6 The Accept Menu Function) (622) 668 ent
(\ 25.11.9.7 The Accept Key Function) (622) 668 ent
(\ 25.11.9.8 The Clear Function) (622) 668 ent
(\ 25.11.9.9 The Paint Function) (622) 668 ent
d891 7
a897 7
(\ 25.11.9.10 The Resize Function) (623) 669 ent
(\ 25.11.9.11 The Remove Function) (623) 669 ent
(\ 25.11.9.12 The Restore Function) (624) 670 ent
(\ 25.11.9.13 The Layout Function) (624) 670 ent
(\ 25.11.9.14 Accept Keyboard Focus Function) (624) 670 ent
(\ 25.11.9.15 The Yield Keyboard Focus Function) (625) 671 ent
(\ 25.11.10 Panel Item Extension Attributes) (625) 671 ent
d900 1
a900 1
(Appendix A The Selection Service ) (629) 675 chent
d902 6
a907 6
(A.1 The XView Selection Model) (630) 676 ent
(A.2 Using the Selection Service) (631) 677 ent
(A.3 Getting the Current Selection) (632) 678 ent
(\ A.3.1 The Seln_request Structure) (635) 681 ent
(A.4 Using selection_query\(\)) (641) 687 ent
(A.5 Selection Package Summary) (646) 692 ent
d910 1
a910 1
(Appendix B The notice_prompt Function ) (651) 695 chent
d912 5
a916 5
(B.1 Creating and Displaying Notices) (651) 695 ent
(\ B.1.1 Response Choices and Values) (654) 698 ent
(\ B.1.2 Notice Triggers) (655) 699 ent
(B.2 Another Example) (657) 701 ent
(B.3 Notice Package Summary) (660) 704 ent
d919 1
a919 1
(Appendix C Mouseless Model Keyboard Mappings ) (663) 707 chent
d921 14
a934 6
(C.1 Mouseless Model Resources) (663) 707 ent
(\ C.1.1 SunView1 Mappings) (664) 708 ent
(\ C.1.2 Basic Mappings) (665) 709 ent
(\ C.1.3 Full Mouseless Mappings) (666) 710 ent
(C.2 Mouseless Model Keyboard Semantic Actions) (667) 711 ent
(C.3 SunView1 Mappings for the Mouseless Model) (668) 712 ent
d939 1
a939 1
(Appendix D Version 3.2 and the File Chooser) (677) 717 chent
d941 24
a964 24
(D.1 Creating File Choosers) (677) 717 ent
(D.2 Using a File Chooser) (680) 720 ent
(D.3 Notification from a File Chooser) (683) 723 ent
(D.4 Controlling the File Chooser Display List) (684) 724 ent
(  D.4.1 Monitoring Directory Changes) (685) 725 ent
(  D.4.2 Filtering) (685) 725 ent
(  D.4.3 File Chooser Sorting) (686) 726 ent
(D.5 Modifying the Display List) (686) 726 ent
(  D.5.1 Dot Files) (687) 727 ent
(  D.5.2 Abbreviated View) (687) 727 ent
(D.6 File Chooser Customization) (687) 727 ent
(D.7 Customizing the File Chooser Dialog) (688) 728 ent
(  D.7.1 File Chooser Components) (690) 730 ent
(D.8 Version 3.2 Additions) (691) 731 ent
(  D.8.1 New Panel List Attributes for Version 3.2) (691) 731 ent
(    D.8.1.1 Adding new list entries) (691) 731 ent
(    D.8.1.2 Other panel list changes) (684) 734 ent
(D.9 Keyboard Menu Accelerators) (695) 735 ent
(    D.9.0.1 Frame Package menu accelerator attributes) (695) 735 ent
(    D.9.0.2 The menu attributes for menu accelerators) (696) 736 ent
(    D.9.0.3 Resources) (698) 738 ent
(    D.9.0.4 Core set menu accelerators) (698) 738 ent
(    D.9.0.5 Events) (699) 739 ent
(D.10 File Chooser and Version 3.2 Additions Summary) (700) 740 ent
d967 1
a967 1
(Appendix E OPEN LOOK User-interface Compliance) (683) 745 chent
d969 11
a979 11
(E.1 Level 1 Features Not Supported in XView 3.0) (683) 745 ent
(\ E.1.1 Keyboard and Mouse Customization) (683) 745 ent
(\ E.1.2 Default Buttons in Pop-ups) (684) 746 ent
(\ E.1.3 Help) (684) 746 ent
(\ E.1.4 Window Background) (685) 747 ent
(\ E.1.5 Notices) (685) 747 ent
(\ E.1.6 Text Functions) (685) 747 ent
(\ E.1.7 Control Items) (685) 747 ent
(\ E.1.8 Property Windows) (686) 748 ent
(E.2 Level 2 Features Supported in XView 3.0) (686) 748 ent
(E.3 Level 2 Features Not Supported in XView 3.0) (687) 749 ent
d982 1
a982 1
(Appendix F Example Programs ) (691) 753 chent
d984 3
a986 3
(F.1 item_move.c) (691) 753 ent
(F.2 scroll_cells2.c) (697) 759 ent
(F.3 menu_dir2.c) (701) 763 ent
d991 6
a996 6
(F.4 type_font.c) (706) 768 ent
(F.5 fonts.c) (708) 770 ent
(F.6 x_draw.c) (712) 774 ent
(F.7 The Logo.c Module) (716) 778 ent
(F.8 The Bitmap.c Module) (719) 781 ent
(F.9 The panel_dnd.c Program) (723) 785 ent
d1006 43
a1048 43
(1-1 An X application and a traditional text terminal) (4) 66 ent
(1-2 Selecting a menu item with the pointer) (4) 66 ent
(1-3 Applications can run on any system across the network) (6) 68 ent
(1-4 The software architecture of X applications) (8) 70 ent
(1-5 The Notifier exists between the server and the XView application) (10) 72 ent
(1-6 A sample OPEN LOOK workspace) (13) 75 ent
(2-1 XView class hierarchy) (18) 80 ent
(2-2 Object creation is top down; attribute setting is bottom up) (24) 86 ent
(2-3 Fully-featured base frame \(includes optional elements\)) (26) 88 ent
(2-4 Sample unpinned command frame) (27) 89 ent
(2-5 Sample help window) (28) 90 ent
(2-6 Sample notice) (28) 90 ent
(2-7 A window with multiple views) (29) 91 ent
(2-8 A control area above a subwindow) (30) 92 ent
(2-9 A control area to the right of a pane) (31) 93 ent
(2-10 A control area in a command window) (32) 94 ent
(2-11 Example of a pop-up menu with a pullright submenu) (32) 94 ent
(2-12 Vertical scrollbar components) (33) 95 ent
(2-13 Flow of control in a conventional program) (35) 97 ent
(2-14 Flow of control in a Notifier-based program) (36) 98 ent
(2-15 Flow of input events in an XView application) (38) 100 ent
(3-1 A frame containing a Quit button) (45) 107 ent
(4-1 Frame package class hierarchy) (59) 121 ent
(4-2 Three base frames) (60) 122 ent
(4-3 Simple base frame created without any FRAME attributes specified) (63) 125 ent
(4-4 A sample header label display in a frame) (64) 126 ent
(4-5 Headers and footers on base frame) (65) 127 ent
(4-6 Default icon and application icon) (66) 128 ent
(4-7 Base frame with a command frame) (69) 131 ent
(5-1 Canvas class hierarchy) (85) 147 ent
(5-2 A canvas subwindow with multiple views) (86) 148 ent
(5-3 Canvases, views, and paint windows) (87) 149 ent
(5-4 Window before and after an Expose event) (92) 154 ent
(5-5 Window with two views before and after an Expose event) (93) 155 ent
(5-6 A window created with canvas_event.c) (110) 172 ent
(6-1 A sample function keys window) (140) 202 ent
(6-2 Sample function keys window with a MORE key) (140) 202 ent
(6-3 Sample virtual keyboard binding) (142) 204 ent
(7-1 Panel package class hierarchy) (151) 213 ent
(7-2 Panel item class hierarchy) (151) 213 ent
(7-3 Controls in an OPENLOOK GUI implementation) (152) 214 ent
(7-4 Layout of panel items) (158) 220 ent
(7-5 Panel item value rectangle and label rectangle) (159) 221 ent
d1053 48
a1100 48
(7-6 Visual feedback for button controls) (165) 227 ent
(7-7 Sample menu button \(unselected and selected\)) (168) 230 ent
(7-8 Sample abbreviated menu button) (169) 231 ent
(7-9 Sample panel with exclusive choices) (170) 232 ent
(7-10 Sample panel with nonexclusive choices) (171) 233 ent
(7-11 Sample panel with abbreviated choice \(unselected and selected\)) (172) 234 ent
(7-12 Sample panel with checkbox) (173) 235 ent
(7-13 Sample panel with scrolling list) (176) 238 ent
(7-14 Output of program list_glyphs.c) (179) 241 ent
(7-15 Sample panel with message item) (184) 246 ent
(7-16 Sample panel with message item-High Pressure) (184) 246 ent
(7-17 Sample panel with slider item) (186) 248 ent
(7-18 Sample panel with text item) (187) 249 ent
(7-19 Panel multiline text item) (193) 255 ent
(7-20 Sample panel with drop target items) (193) 255 ent
(7-21 Panel with gray background) (202) 264 ent
(7-22 Output of item_move.c in use) (206) 268 ent
(8-1 A sample text subwindow) (211) 273 ent
(8-2 Textsw class hierarchy) (212) 274 ent
(8-3 A caret marks the insertion point) (213) 275 ent
(8-4 A text selection) (228) 290 ent
(9-1 TTY package class hierarchy) (237) 299 ent
(9-2 Output of sample_tty.c) (239) 301 ent
(9-3 Output of textsw_to_ttysw.c) (242) 304 ent
(10-1 An OPEN LOOK scrollbar) (249) 311 ent
(10-2 Relationship between a scrollbar and the object it scrolls) (251) 313 ent
(10-3 Scrollbar class hierarchy) (252) 314 ent
(10-4 Splitting a text subwindow twice) (253) 315 ent
(10-5 Model for scroll_cells.c) (254) 316 ent
(11-1 The Window menu) (268) 330 ent
(11-2 Menu buttons each with a pulldown menu) (269) 331 ent
(11-3 Pushpins in a menu and a submenu) (269) 331 ent
(11-4 Exclusive settings on a menu) (270) 332 ent
(11-5 Nonexclusive settings on a submenu) (271) 333 ent
(11-6 Menu class hierarchy) (272) 334 ent
(11-7 Output of simple_menu.c when the menu is popped up) (276) 338 ent
(11-8 Output of xv_menu.c) (291) 353 ent
(12-1 Notice class hierarchy) (303) 365 ent
(12-2 A sample notice window) (304) 366 ent
(12-3 Output of simple_notice.c while the notice is up) (308) 370 ent
(13-1 Cursor class hierarchy) (323) 385 ent
(14-1 Three bordered default icons) (335) 397 ent
(14-2 Icon package class hierarchy) (336) 398 ent
(15-1 Nonvisual objects class hierarchy) (345) 407 ent
(16-1 Font package class hierarchy) (364) 426 ent
(16-2 The Courier font in different styles and sizes) (367) 429 ent
(18-1 Dragging the pointer to select text) (390) 452 ent
(18-2 Selection owner class hierarchy) (394) 456 ent
d1105 19
a1123 18
(18-3 Selection requestor class hierarchy) (395) 457 ent
(18-4 Selection item class hierarchy) (409) 471 ent
(19-1 Dragging a file onto an application) (430) 492 ent
(19-2 Loading a file by dropping) (430) 492 ent
(19-3 DRAGDROP class hierarchy) (431) 493 ent
(19-4 DROP_SITE_ITEM class hierarchy) (431) 493 ent
(20-1 Output of animate.c) (469) 531 ent
(20-2 Flow of control in interposition) (486) 548 ent
(21-1 CMS package class hierarchy) (512) 574 ent
(22-1 OPENLOOK localization menu) (538) 600 ent
(23-1 A sample Help window) (553) 615 ent
(25-1 Calling order for init, set, get, destroy, and find) (575) 637 ent
(25-2 The bits in an attribute) (576) 638 ent
(25-3 Output of logo.c) (598) 660 ent
(A-1 Byte stream after selection_ask\(\) returns the current text selection) (636) 696 ent
(A-2 How selection_query\(\) is used) (642) 704 ent
(B-1 Output of simple_notice.c while the notice is up) (653) 715 ent

d1131 43
a1173 41
(3-1 The quit.c program) (44) 106 ent
(3-2 xv_create\(\) creates XView objects) (47) 109 ent
(4-1 The simple_frame.c program) (62) 124 ent
(4-2 Creating a base frame after calling xv_init\(\)) (62) 124 ent
(4-3 Setting separate values for a frame header) (65) 127 ent
(4-4 Creating a footer) (65) 127 ent
(4-5 Creating a subframe) (68) 130 ent
(4-6 Using several frame attributes) (70) 132 ent
(4-7 The subframe.c program) (72) 134 ent
(4-8 Changing a frame's color) (75) 137 ent
(5-1 The line.c program) (96) 158 ent
(5-2 Repainting objects within a damaged region) (97) 159 ent
(5-3 The canvas_event.c program) (107) 169 ent
(6-1 The canvas_input.c program) (133) 195 ent
(7-1 The quit.c program) (153) 215 ent
(7-2 The btn_menu.c program) (166) 228 ent
(7-3 The list_glyphs.c program) (177) 239 ent
(7-4 The message_item.c program) (183) 245 ent
(7-5 The multiline.c program) (192) 254 ent
(7-6 The client_data.c program) (198) 260 ent
(7-7 The panel_repaint.c program) (200) 262 ent
(8-1 Client notify procedure for a text subwindow) (230) 292 ent
(9-1 The sample_tty.c program) (238) 300 ent
(9-2 The textsw_to_ttysw.c program) (240) 302 ent
(9-3 The ttycurses.c program) (243) 305 ent
(10-1 The scroll_cells.c program) (255) 317 ent
(10-2 The scrollto.c program) (260) 322 ent
(11-1 The simple_menu.c program) (274) 336 ent
(11-2 How to create a menu containing a pushpin) (287) 349 ent
(11-3 The xv_menu.c program) (289) 351 ent
(11-4 Creating individual menu items) (294) 356 ent
(11-5 The menu_dir.c program) (295) 357 ent
(12-1 The simple_notice.c program) (306) 368 ent
(12-2 Creating a standard notice) (311) 373 ent
(12-3 A notice using a callback) (311) 373 ent
(12-4 Creating a screen-locking notice) (314) 376 ent
(12-5 The trigger_notice.c program) (314) 376 ent
(12-6 The notice.c program) (317) 379 ent
(13-1 The simple_cursor.c program) (324) 386 ent
(13-2 The hot_spot.c program) (327) 389 ent
(13-3 Using drag and drop text cursors) (330) 392 ent
d1178 48
a1225 48
(14-1 The icon_demo.c program) (336) 398 ent
(14-2 Color cursors) (338) 400 ent
(14-3 Redefining an icon's size to include its label) (340) 402 ent
(15-1 Getting a pointer for a particular frame object \(screen.c\)) (347) 409 ent
(15-2 Display a base frame on two screens) (348) 410 ent
(15-3 The svrimage.c program) (354) 416 ent
(15-4 The fullscreen.c program) (356) 418 ent
(16-1 The simple_font.c program) (365) 427 ent
(17-1 The default_text.c program) (380) 442 ent
(17-2 The default_size.c program) (384) 446 ent
(18-1 Requesting the CLIPBOARD selection--blocking) (397) 459 ent
(18-2 Non-blocking selection request) (398) 460 ent
(18-3 Selection owner program) (401) 463 ent
(18-4 Sample reply procedure - SelectionReplyProc) (403) 465 ent
(18-5 Sample selection reply error handler) (405) 467 ent
(18-6 Sample done procedure - SelectionDoneProc) (407) 469 ent
(18-7 An incremental conversion procedure) (411) 473 ent
(18-8 Incremental reply - IncrReply.c) (412) 474 ent
(18-9 Sample program - sel_hold.c) (415) 477 ent
(18-10 The notify procedure - NotifyProc\(\)) (417) 479 ent
(18-11 Sample conversion procedure - SelectionConvertProc) (418) 480 ent
(18-12 Sample selection requestor program - sel_req.c) (420) 482 ent
(18-13 Sample requestor notify procedure) (422) 484 ent
(18-14 Sample make request notify procedure) (423) 485 ent
(18-15 Selection reply procedure) (423) 485 ent
(18-16 Sample error procedure - SelectionError.c) (425) 487 ent
(19-1 Sourcing a drag) (440) 502 ent
(19-2 A drop-site item example) (447) 509 ent
(20-1 The animate.c program) (466) 528 ent
(20-2 Demonstrating a wait3 handler) (470) 532 ent
(20-3 The notify_input.c program) (479) 541 ent
(20-4 The ntfy_pipe.c program) (481) 543 ent
(20-5 Transferring control through the Notifier) (490) 552 ent
(20-6 The interpose.c program) (493) 555 ent
(20-7 The ntfy_do_dis.c program) (497) 559 ent
(20-8 Emulating a sleep) (499) 561 ent
(21-1 The color_logo.c program) (519) 581 ent
(21-2 The color_panel.c program) (523) 585 ent
(21-3 The color_objs.c program) (527) 589 ent
(22-1 Using XV_INSTANCE_NAME) (549) 611 ent
(24-1 Example error parsing function) (569) 631 ent
(25-1 The logo.c program) (597) 659 ent
(25-2 The bitmap.c program) (603) 665 ent
(25-3 The image.c program) (613) 675 ent
(A-1 The simple_seln.c program) (633) 695 ent
(A-2 The text_seln.c program) (637) 699 ent
(A-3 The long_seln.c program) (643) 705 ent
(B-1 The simple_notice.c program) (652) 714 ent
d1230 14
a1243 12
(B-2 The trigger_notice.c program) (655) 717 ent
(B-3 The notice.c program) (657) 719 ent
(F-1 The item_move.c program) (691) 753 ent
(F-2 The scroll_cells2.c program) (697) 759 ent
(F-3 The menu_dir2.c program) (701) 763 ent
(F-4 The type_font.c program) (706) 768 ent
(F-5 The fonts.c program) (708) 770 ent
(F-6 The x_draw.c program) (712) 774 ent
(F-7 The Logo.c module) (716) 778 ent
(F-8 The Bitmap.c module) (719) 781 ent
(F-9 The panel_dnd.c program) (723) 785 ent

d1245 1
a1245 1
%%EndPage 
d1251 43
a1293 44
(2-1 XView Objects, Owners, Packages, and Data Types) (20) 82 ent
(2-2 Generic Functions) (21) 83 ent
(3-1 Reserved Prefixes) (43) 105 ent
(3-2 Default Ownership of Objects) (48) 110 ent
(4-1 Frame Attributes) (81) 143 ent
(5-1 Canvas Attributes) (110) 172 ent
(5-2 Openwin Attributes) (111) 173 ent
(6-1 Event Structure Fields) (125) 187 ent
(6-2 Mouseless Keyboard Commands with Action ACTION_NULL_EVENT) (143) 205 ent
(6-3 SunView1 Commands That Conflict with the Mouseless Model) (144) 206 ent
(6-4 Mouseless Actions Handled by the Window Manager) (145) 207 ent
(6-4 Mouseless Actions Handled by the Window Manager \(continued\)) (146) 208 ent
(7-1 Text Item Notification Level) (189) 251 ent
(7-2 Return Values for Text Item Notify Procedures) (190) 252 ent
(7-3 Default Event to Action Mapping) (204) 266 ent
(7-4 Panel Procedures and Macros) (207) 269 ent
(7-5 Panel Package Attributes) (207) 269 ent
(8-1 Range of Values for Status Variables) (215) 277 ent
(8-2 Textsw_action Attributes) (231) 293 ent
(8-3 Text Subwindow Procedures and Macros) (233) 295 ent
(8-4 Text Subwindow Attributes) (233) 295 ent
(9-1 TTY Subwindow Procedures) (246) 308 ent
(9-2 TTY Subwindow Attributes) (246) 308 ent
(10-1 Scrollbar Procedures) (263) 325 ent
(10-2 Scrollbar Attributes) (263) 325 ent
(11-1 Menu Procedures and Macros) (299) 361 ent
(11-2 Menu Attributes) (299) 361 ent
(12-1 Notice Attributes \(used with NOTICE_LOCK_SCREEN = FALSE\)) (310) 372 ent
(12-2 Screen-Locking Notice Attributes \(for NOTICE_LOCK_SCREEN = TRUE\)) (313) 375 ent
(12-3 Notice Attributes) (320) 382 ent
(13-1 Cursor Procedures) (331) 393 ent
(13-2 Cursor Attributes) (331) 393 ent
(14-1 Icon Attributes) (341) 403 ent
(15-1 Screen Attributes) (358) 420 ent
(15-2 Server and Server Image Attributes) (358) 420 ent
(15-3 Fullscreen Attributes) (358) 420 ent
(15-3 Fullscreen Attributes \(continued\)) (359) 421 ent
(16-1 Default Font Sizes) (370) 432 ent
(16-2 Font Attributes) (373) 435 ent
(17-1 Resources and Default Values Understood by XView) (378) 440 ent
(18-1 Selecting Text) (390) 452 ent
(18-2 Error Codes) (404) 466 ent
(18-3 Selection Procedures) (426) 488 ent
(18-4 Selection Attributes) (426) 488 ent
d1298 26
a1323 28
(19-1 Drag and Drop Semantic Events) (434) 496 ent
(19-2 dnd_send_drop\(\) Return Values) (437) 499 ent
(19-3 DROP_SITE_ITEM and DRAGDROP Procedures and Macros) (452) 514 ent
(19-4 DROP_SITE_ITEM and DRAGDROP Attributes) (453) 515 ent
(20-1 Notifier Error Codes) (505) 567 ent
(21-1 Cms Attributes) (532) 594 ent
(22-1 XView Locale Attributes) (538) 600 ent
(22-2 Locale Command-line Options) (539) 601 ent
(22-3 XView Locale Resources) (540) 602 ent
(22-4 POSIX Categories) (540) 602 ent
(22-5 Internationalization Attributes) (550) 612 ent
(23-1 Modified Help Keystrokes) (555) 617 ent
(23-2 Help Attributes and Procedures) (560) 622 ent
(25-1 Panel Item Extension Attributes) (625) 687 ent
(A-1 Selecting Text) (630) 692 ent
(A-2 Selection Service Procedures) (646) 708 ent
(A-3 Selection Service Attributes) (646) 708 ent
(B-1 Notice Attributes, Procedures, and Macros) (660) 722 ent
(D-1 File Chooser Procedures and Macros) (700) 776 ent
(D-2 File Chooser Attributes) (700) 776 ent
(D-3 History and History Menu Attributes) (700) 776 ent
(D-4 File List Attributes) (701) 776 ent
(D-5 Path Attributes) (701) 776 ent
(D-6 Version 3.2 Panel List Attributes) (701) 776 ent
(D-7 Version 3.2 Menu Accelerator Attributes) (701) 776 ent

end 	% iandict

d1325 1
a1325 1

d1327 2
@


1.1
log
@Initial revision
@
text
@d3 1
a3 2
%%EndProlog
%%BeginSetup
a8 2
%%EndSetup

d46 1
a46 1
	% Commented out since we do it by hand to match printed TOC exactly
d117 5
@
