~ubuntu-branches/ubuntu/quantal/openmotif/quantal

« back to all changes in this revision

Viewing changes to doc/man/man3/XmList.3

  • Committer: Bazaar Package Importer
  • Author(s): Stefan Bauer
  • Date: 2010-06-23 12:12:31 UTC
  • mfrom: (1.1.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20100623121231-u89gxdp51sg9wjj2
Tags: 2.3.0-1
* New Maintainer (Closes: #379258) 
* Acknowledge NMU changes
* New upstream release (Closes: #494375)
* Get rid of security patches as they are already part of new upstream
  release (00-xpmvuln.openmotif.patch, 342092-CVE-2005-3964.patch)
* Bump Standards to 3.8.4
* Added {misc:Depends} to make the package lintian cleaner
* Fix weak-library-dev-dependency by adding ${binary:Version}) for the
  -dev Package of openmotif
* Let package depend on autotools-dev to use newer autotools-helper-files
* Work around an autoconf-bug (Gentoo-Bug #1475)
* Added Client-side anti-aliased fonts support via XFT
* Added UTF-8 and UTF8_STRING atom support
* Ability to show text and pixmaps in Label, LabelGadget and all
  derived widgets
* Support of PNG/JPEG image formats in the same way as XPM is supported
* Increase FILE_OFFSET_BITS to 64 to show files >2GB in file-selector
  Idea taken from Magne Oestlyngen (Closes: #288537)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
'\" t
 
2
...\" List.sgm /main/12 1996/09/08 20:49:54 rws $
 
3
.de P!
 
4
.fl
 
5
\!!1 setgray
 
6
.fl
 
7
\\&.\"
 
8
.fl
 
9
\!!0 setgray
 
10
.fl                     \" force out current output buffer
 
11
\!!save /psv exch def currentpoint translate 0 0 moveto
 
12
\!!/showpage{}def
 
13
.fl                     \" prolog
 
14
.sy sed -e 's/^/!/' \\$1\" bring in postscript file
 
15
\!!psv restore
 
16
.
 
17
.de pF
 
18
.ie     \\*(f1 .ds f1 \\n(.f
 
19
.el .ie \\*(f2 .ds f2 \\n(.f
 
20
.el .ie \\*(f3 .ds f3 \\n(.f
 
21
.el .ie \\*(f4 .ds f4 \\n(.f
 
22
.el .tm ? font overflow
 
23
.ft \\$1
 
24
..
 
25
.de fP
 
26
.ie     !\\*(f4 \{\
 
27
.       ft \\*(f4
 
28
.       ds f4\"
 
29
'       br \}
 
30
.el .ie !\\*(f3 \{\
 
31
.       ft \\*(f3
 
32
.       ds f3\"
 
33
'       br \}
 
34
.el .ie !\\*(f2 \{\
 
35
.       ft \\*(f2
 
36
.       ds f2\"
 
37
'       br \}
 
38
.el .ie !\\*(f1 \{\
 
39
.       ft \\*(f1
 
40
.       ds f1\"
 
41
'       br \}
 
42
.el .tm ? font underflow
 
43
..
 
44
.ds f1\"
 
45
.ds f2\"
 
46
.ds f3\"
 
47
.ds f4\"
 
48
.ta 8n 16n 24n 32n 40n 48n 56n 64n 72n 
 
49
.TH "XmList" "library call"
 
50
.SH "NAME"
 
51
\fBXmList\fP \(em The List widget class
 
52
.iX "XmList"
 
53
.iX "widget class" "List"
 
54
.SH "SYNOPSIS"
 
55
.PP
 
56
.nf
 
57
#include <Xm/List\&.h>
 
58
.fi
 
59
.SH "DESCRIPTION"
 
60
.PP
 
61
List allows a user to select one or more items
 
62
from a group of choices\&. Items are selected from the list in a
 
63
variety of ways, using both the pointer and the keyboard\&.
 
64
List operates on an array of compound strings that are defined by the application\&.
 
65
Each compound string becomes an item in the List,
 
66
with the first compound string becoming
 
67
the item in position 1, the second becoming the item in position 2, and so on\&.
 
68
.PP
 
69
Specifying the number of items that are visible
 
70
sets the size of the List\&.
 
71
If the number of visible items is not specified, the height
 
72
of the list controls the number of visible items\&. Each item assumes
 
73
the height of the tallest element in the list\&.
 
74
To create a list that allows the user to scroll easily through a large
 
75
number of items, use the \fBXmCreateScrolledList\fP convenience
 
76
function\&.
 
77
.PP
 
78
To select items, move the pointer or cursor to the desired item and
 
79
press the \fB<Btn1>\fP mouse button or the key defined as
 
80
\fB<osfSelect>\fP\&. There are several styles of selection behavior, and
 
81
they all highlight the selected item or items by displaying them in
 
82
inverse colors\&. An appropriate callback is invoked to notify the
 
83
application of the user\&'s choice\&. The application then takes whatever
 
84
action is required for the specified selection\&.
 
85
When a List is insensitive, all of the list items are displayed in a
 
86
stippled fill pattern\&.
 
87
.PP
 
88
List uses the \fBXmQTspecifyRenderTable\fP, \fBXmQTscrollFrame\fP, and
 
89
\fBXmQTnavigator\fP traits, and
 
90
holds the \fBXmQTtransfer\fP trait\&.
 
91
.SS "Selection"
 
92
.PP
 
93
Each list has one of four selection models:
 
94
.IP "   \(bu" 6
 
95
Single Select
 
96
.IP "   \(bu" 6
 
97
Browse Select
 
98
.IP "   \(bu" 6
 
99
Multiple Select
 
100
.IP "   \(bu" 6
 
101
Extended Select
 
102
.PP
 
103
In Single Select and Browse Select, at most one item is selected at a
 
104
time\&.
 
105
In Single Select, pressing \fB<Btn1>\fP on an item toggles its
 
106
selection state and deselects any other selected item\&.
 
107
In Browse Select, pressing \fB<Btn1>\fP on an item selects it and
 
108
deselects any other selected item; dragging \fB<Btn1>\fP moves the
 
109
selection as the pointer is moved\&. Releasing \fB<Btn1>\fP on an
 
110
item moves the location cursor to that item\&.
 
111
.PP
 
112
In Multiple Select, any number of items can be selected at a time\&.
 
113
Pressing \fB<Btn1>\fP on an item toggles its selection state but
 
114
does not deselect any other selected items\&.
 
115
.PP
 
116
In Extended Select, any number of items can be selected at a time,
 
117
and the user can easily select ranges of items\&.
 
118
Pressing \fB<Btn1>\fP on an item selects it and deselects any other
 
119
selected item\&.
 
120
Dragging \fB<Btn1>\fP or pressing or dragging \fB<Shift>\fP\fB<Btn1>\fP following a
 
121
\fB<Btn1>\fP action selects all items between the item under the
 
122
pointer and the item on which \fB<Btn1>\fP was pressed\&.
 
123
This action also deselects any other selected items outside that
 
124
range\&.
 
125
.PP
 
126
Extended Select also allows the user to select and deselect
 
127
discontiguous ranges of items\&.
 
128
Pressing \fB<Ctrl>\fP\fB<Btn1>\fP on an item toggles its selection state but
 
129
does not deselect any other selected items\&.
 
130
Dragging \fB<Ctrl>\fP\fB<Btn1>\fP or pressing or dragging \fB<Shift>\fP\fB<Btn1>\fP following a
 
131
\fB<Ctrl>\fP\fB<Btn1>\fP action sets the selection state of all items between
 
132
the item under the pointer and the item on which \fB<Ctrl>\fP\fB<Btn1>\fP was
 
133
pressed to the state of the item on which \fB<Ctrl>\fP\fB<Btn1>\fP was pressed\&.
 
134
This action does not deselect any other selected items outside that
 
135
range\&.
 
136
.PP
 
137
All selection operations available from the mouse are also available
 
138
from the keyboard\&.
 
139
List has two keyboard selection modes, Normal Mode and Add Mode\&.
 
140
In Normal Mode, navigation operations and \fB<osfSelect>\fP select the
 
141
item at the location cursor and deselect any other selected
 
142
items\&.
 
143
In Add Mode, navigation operations have no effect on selection, and
 
144
\fB<osfSelect>\fP toggles the selection state of the item at the location
 
145
cursor without deselecting any other selected items, except in Single
 
146
Select\&.
 
147
.PP
 
148
Single and Multiple Select use Add Mode, and Browse Select uses Normal
 
149
Mode\&.
 
150
.PP
 
151
Extended Select can use either mode; the user changes modes by pressing
 
152
\fB<osfAddMode>\fP\&.
 
153
In Extended Select Normal Mode, pressing \fB<osfSelect>\fP has the same
 
154
effect as pressing \fB<Btn1>\fP; \fB<osfExtend>\fP and shifted navigation
 
155
have the same effect as pressing \fB<Shift>\fP\fB<Btn1>\fP following a \fB<Btn1>\fP
 
156
action\&.
 
157
In Extended Select Add Mode, pressing \fB<osfSelect>\fP has the same
 
158
effect as pressing \fB<Ctrl>\fP\fB<Btn1>\fP; \fB<osfExtend>\fP and shifted navigation
 
159
have the same effect as pressing \fB<Shift>\fP\fB<Btn1>\fP following a \fB<Ctrl>\fP\fB<Btn1>\fP
 
160
action\&.
 
161
.PP
 
162
Normal Mode is indicated by a solid location cursor, and Add Mode is
 
163
indicated by a dashed location cursor\&.
 
164
.SS "Data Transfer Behavior"
 
165
.PP
 
166
List supports dragging of items from the List and transfer of items to
 
167
the clipboard\&.
 
168
When the user presses \fBBTransfer\fP on a selected item, the widget
 
169
transfers all selected items\&.
 
170
When the user presses \fBBTransfer\fP on an unselected item, the widget
 
171
transfers only that item\&.
 
172
Depending on the value of \fBXmNprimaryOwnership\fP, List can also
 
173
support primary selection\&.
 
174
.PP
 
175
When the \fBXmNconvertCallback\fP procedures are called, the
 
176
\fBlocation_data\fP member of the \fBXmConvertCallbackStruct\fR member
 
177
is NULL if the selected items are being transferred\&.
 
178
If the selected items are not being transferred, this member has the
 
179
following value:
 
180
If a single item is being transferred, the value is an integer
 
181
representing the position of the item in the List\&.
 
182
A value of 1 transfers the first item in the List; a value of 2
 
183
transfers the second item; and so on\&.
 
184
If the entire contents of the List are being transferred, the value is
 
185
-1\&.
 
186
.PP
 
187
As a source of data, List supports the following targets and associated
 
188
conversions of data to these targets:
 
189
.IP "\fIlocale\fP" 10
 
190
If the \fIlocale\fP target matches the widget\&'s locale, the widget
 
191
transfers the selected list items in the encoding of the locale\&.
 
192
Each item transferred except the last includes a trailing separator\&.
 
193
.IP "\fBCOMPOUND_TEXT\fP" 10
 
194
The widget transfers the selected list items as type
 
195
\fBCOMPOUND_TEXT\fP\&.
 
196
Each item transferred except the last includes a trailing separator\&.
 
197
.IP "\fBUTF8_STRING\fP" 10
 
198
The widget transfers the selected list items as type
 
199
\fBUTF8_STRING\fP\&.
 
200
Each item transferred except the last includes a trailing separator\&.
 
201
.IP "\fBSTRING\fP" 10
 
202
The widget transfers the selected list items as type \fBSTRING\fP\&.
 
203
Each item transferred except the last includes a trailing separator\&.
 
204
.IP "\fBTEXT\fP" 10
 
205
If the selected list items are fully convertible to the encoding of the
 
206
locale, the widget transfers the selected list items in the encoding of
 
207
the locale\&.
 
208
Otherwise, the widget transfers the selected list items as type
 
209
\fBCOMPOUND_TEXT\fP\&.
 
210
Each item transferred except the last includes a trailing separator\&.
 
211
.IP "\fB_MOTIF_CLIPBOARD_TARGETS\fP" 10
 
212
The widget transfers, as type \fBATOM\fP, a list of the targets it
 
213
supports for immediate transfer for the \fBCLIPBOARD\fP selection\&.
 
214
These include \fB_MOTIF_COMPOUND_STRING\fP\&.
 
215
If the selected list items are fully convertible to \fBSTRING\fP, these
 
216
also include \fBSTRING\fP; otherwise, they also include
 
217
\fBCOMPOUND_TEXT\fP and \fBUTF8_STRING\fP\&.
 
218
.IP "\fB_MOTIF_COMPOUND_STRING\fP" 10
 
219
The widget transfers the selected list items as a compound string in
 
220
Byte Stream format\&.
 
221
Each item transferred except the last includes a trailing separator\&.
 
222
.IP "\fB_MOTIF_DEFERRED_CLIPBOARD_TARGETS\fP" 10
 
223
The widget transfers, as type \fBATOM\fP, a list of the targets it
 
224
supports for delayed transfer for the \fBCLIPBOARD\fP selection\&.
 
225
This widget currently supplies no targets for
 
226
\fB_MOTIF_DEFERRED_CLIPBOARD_TARGETS\fP\&.
 
227
.IP "\fB_MOTIF_EXPORT_TARGETS\fP" 10
 
228
The widget transfers, as type \fBATOM\fP, a list of the targets to be
 
229
used as the value of the DragContext\&'s \fBXmNexportTargets\fP in a
 
230
drag-and-drop transfer\&.
 
231
These include \fB_MOTIF_COMPOUND_STRING\fP, \fBCOMPOUND_TEXT\fP, 
 
232
\fBUTF8_STRING\fP, the
 
233
encoding of the locale, \fBSTRING\fP, \fBTEXT\fP, \fBBACKGROUND\fP, and
 
234
\fBFOREGROUND\fP\&.
 
235
.IP "\fB_MOTIF_LOSE_SELECTION\fP" 10
 
236
When the widget loses the selection, it deselects all list items\&.
 
237
.PP
 
238
As a source of data, List also supports the following standard Motif
 
239
targets:
 
240
.IP "\fBBACKGROUND\fP" 10
 
241
The widget transfers \fBXmNbackground\fP as type \fBPIXEL\fP\&.
 
242
.IP "\fBCLASS\fP" 10
 
243
The widget finds the first shell in the widget hierarchy that has a
 
244
\fBWM_CLASS\fP property and transfers the contents as text in the
 
245
current locale\&.
 
246
.IP "\fBCLIENT_WINDOW\fP" 10
 
247
The widget finds the first shell in the widget hierarchy and transfers
 
248
its window as type \fBWINDOW\fP\&.
 
249
.IP "\fBCOLORMAP\fP" 10
 
250
The widget transfers \fBXmNcolormap\fP as type \fBCOLORMAP\fP\&.
 
251
.IP "\fBFOREGROUND\fP" 10
 
252
The widget transfers \fBXmNforeground\fP as type \fBPIXEL\fP\&.
 
253
.IP "\fBNAME\fP" 10
 
254
The widget finds the first shell in the widget hierarchy that has a
 
255
\fBWM_NAME\fP property and transfers the contents as text in the current
 
256
locale\&.
 
257
.IP "\fBTARGETS\fP" 10
 
258
The widget transfers, as type \fBATOM\fP, a list of the targets it
 
259
supports\&.
 
260
These include the standard targets in this list\&.
 
261
These also include \fB_MOTIF_COMPOUND_STRING\fP, \fBCOMPOUND_TEXT\fP,
 
262
\fBUTF8_STRING\fP the encoding of the locale, \fBSTRING\fP, and \fBTEXT\fP\&.
 
263
.IP "\fBTIMESTAMP\fP" 10
 
264
The widget transfers the timestamp used to acquire the selection as type
 
265
\fBINTEGER\fP\&.
 
266
.IP "\fB_MOTIF_RENDER_TABLE\fP" 10
 
267
The widget transfers \fBXmNrenderTable\fP if it exists, or else the
 
268
default text render table, as type \fBSTRING\fP\&.
 
269
.IP "\fB_MOTIF_ENCODING_REGISTRY\fP" 10
 
270
The widget transfers its encoding registry as type \fBSTRING\fP\&.
 
271
The value is a list of NULL separated items in the
 
272
form of tag encoding pairs\&.
 
273
This target symbolizes the transfer target for the
 
274
Motif Segment Encoding Registry\&.
 
275
Widgets and applications can use this Registry to register
 
276
text encoding formats for specified render table tags\&.
 
277
Applications access this Registry by calling
 
278
\fBXmRegisterSegmentEncoding\fP and \fBXmMapSegmentEncoding\fP\&.
 
279
.PP
 
280
List has no widget class destination procedure\&.
 
281
Subclasses and the \fBXmNdestinationCallback\fP procedures are
 
282
responsible for any data transfers to the widget\&.
 
283
.SS "Classes"
 
284
.PP
 
285
List inherits behavior, resources, and traits from \fBCore\fP and
 
286
\fBXmPrimitive\fP\&.
 
287
.PP
 
288
The class pointer is \fBxmListWidgetClass\fP\&.
 
289
.PP
 
290
The class name is \fBXmList\fP\&.
 
291
.SS "New Resources"
 
292
.PP
 
293
The following table defines a set of widget resources used by the programmer
 
294
to specify data\&. The programmer can also set the resource values for the
 
295
inherited classes to set attributes for this widget\&. To reference a
 
296
resource by name or by class in a \fB\&.Xdefaults\fP file, remove the \fBXmN\fP or
 
297
\fBXmC\fP prefix and use the remaining letters\&. To specify one of the defined
 
298
values for a resource in a \fB\&.Xdefaults\fP file,
 
299
remove the \fBXm\fP prefix and use
 
300
the remaining letters (in either lowercase or uppercase, but include any
 
301
underscores between words)\&.
 
302
The codes in the access column indicate if the given resource can be
 
303
set at creation time (C),
 
304
set by using \fBXtSetValues\fP (S),
 
305
retrieved by using \fBXtGetValues\fP (G), or is not applicable (N/A)\&.
 
306
.PP
 
307
.TS
 
308
tab() box;
 
309
c s s s s
 
310
l| l| l| l| l.
 
311
\fBXmList Resource Set\fP
 
312
\fBName\fP\fBClass\fP\fBType\fP\fBDefault\fP\fBAccess\fP
 
313
_____
 
314
XmNautomaticSelectionXmCAutomaticSelectionXtEnumFalseCSG
 
315
_____
 
316
XmNbrowseSelectionCallbackXmCCallbackXtCallbackListNULLC
 
317
_____
 
318
XmNdefaultActionCallbackXmCCallbackXtCallbackListNULLC
 
319
_____
 
320
XmNdestinationCallbackXmCCallbackXtCallbackListNULLC
 
321
_____
 
322
XmNdoubleClickIntervalXmCDoubleClickIntervalintdynamicCSG
 
323
_____
 
324
XmNextendedSelectionCallbackXmCCallbackXtCallbackListNULLC
 
325
_____
 
326
XmNfontListXmCFontListXmFontListdynamicCSG
 
327
_____
 
328
XmNitemCountXmCItemCountint0CSG
 
329
_____
 
330
XmNitemsXmCItemsXmStringTableNULLCSG
 
331
_____
 
332
XmNlistMarginHeightXmCListMarginHeightDimension0CSG
 
333
_____
 
334
XmNlistMarginWidthXmCListMarginWidthDimension0CSG
 
335
_____
 
336
XmNlistSizePolicyXmCListSizePolicyunsigned charXmVARIABLECG
 
337
_____
 
338
XmNlistSpacingXmCListSpacingDimension0CSG
 
339
_____
 
340
XmNmatchBehaviorXmCMatchBehaviorunsigned charXmQUICK_NAVIGATECSG
 
341
_____
 
342
XmNmultipleSelectionCallbackXmCCallbackXtCallbackListNULLC
 
343
_____
 
344
XmNprimaryOwnershipXmCPrimaryOwnershipunsigned charXmOWN_NEVERCSG
 
345
_____
 
346
XmNrenderTableXmCRenderTableXmRenderTabledynamicCSG
 
347
_____
 
348
XmNscrollBarDisplayPolicyXmCScrollBarDisplayPolicyunsigned charXmAS_NEEDEDCSG
 
349
_____
 
350
XmNselectColorXmCSelectColorXmRSelectColorXmREVERSED_GROUND_COLORSCSG
 
351
_____
 
352
XmNselectedItemCountXmCSelectedItemCountint0CSG
 
353
_____
 
354
XmNselectedItemsXmCSelectedItemsXmStringTableNULLCSG
 
355
_____
 
356
XmNselectedPositionCountXmCSelectedPositionCountint0CSG
 
357
_____
 
358
XmNselectedPositionsXmCSelectedPositionsunsigned int *NULLCSG
 
359
_____
 
360
XmNselectionModeXmCSelectionModeunsigned chardynamicCSG
 
361
_____
 
362
XmNselectionPolicyXmCSelectionPolicyunsigned charXmBROWSE_SELECTCSG
 
363
_____
 
364
XmNsingleSelectionCallbackXmCCallbackXtCallbackListNULLC
 
365
_____
 
366
XmNstringDirectionXmCStringDirectionXmStringDirectiondynamicCSG
 
367
_____
 
368
XmNtopItemPositionXmCTopItemPositionint1CSG
 
369
_____
 
370
XmNvisibleItemCountXmCVisibleItemCountintdynamicCSG
 
371
_____
 
372
.TE
 
373
.IP "\fBXmNautomaticSelection\fP" 10
 
374
Invokes either
 
375
\fBXmNbrowseSelectionCallback\fP or \fBXmNextendedSelectionCallback\fP when
 
376
\fB<Btn1>\fP is pressed and the items that are shown as selected change
 
377
if the value is True (or \fBXmAUTO\fP) and the selection
 
378
mode is either \fBXmBROWSE_SELECT\fP or \fBXmEXTENDED_SELECT\fP respectively\&.
 
379
If False (\fBXmNO_AUTO_SELECT\fP), no selection callbacks are invoked until
 
380
the user releases the mouse button\&.
 
381
See \fBBehavior\fP for
 
382
further details on the interaction of this resource with the selection modes\&.
 
383
.IP "\fBXmNbrowseSelectionCallback\fP" 10
 
384
Specifies a list of callbacks that is called
 
385
when an item is selected in the browse selection mode\&. The reason is
 
386
\fBXmCR_BROWSE_SELECT\fP\&.
 
387
.IP "\fBXmNdefaultActionCallback\fP" 10
 
388
Specifies a list of callbacks that is called when an item is double
 
389
clicked or \fB<osfActivate>\fP is pressed\&.
 
390
The reason is \fBXmCR_DEFAULT_ACTION\fP\&.
 
391
.IP "\fBXmNdestinationCallback\fP" 10
 
392
Specifies a list of callbacks called when the List is the destination of
 
393
a transfer operation\&.
 
394
The type of the structure whose address is passed to these callbacks is
 
395
\fBXmDestinationCallbackStruct\fR\&.
 
396
The reason is \fBXmCR_OK\fP\&.
 
397
.IP "\fBXmNdoubleClickInterval\fP" 10
 
398
If a button click is followed by another button click within the time
 
399
span specified by this resource (in milliseconds), the button clicks
 
400
are considered a double-click action, rather than two single-click
 
401
actions\&.
 
402
The value must not be negative\&.
 
403
The default value is the display\&'s multiclick time\&.
 
404
.IP "\fBXmNextendedSelectionCallback\fP" 10
 
405
Specifies a list of callbacks that is called
 
406
when items are selected using the extended selection mode\&.
 
407
The reason is \fBXmCR_EXTENDED_SELECT\fP\&.
 
408
.IP "\fBXmNfontList\fP" 10
 
409
Specifies the font list associated with the list items\&.
 
410
\fBXmNfontList\fP is obsolete and exists only for compatibility with
 
411
previous releases\&. You should now use \fBXmNrenderTable\fP instead of
 
412
\fBXmNfontList\fP\&. If both are specified, the render table will take
 
413
precedence\&. The font list is used in conjunction with the
 
414
\fBXmNvisibleItemCount\fP
 
415
resource to determine the height of the List widget\&.
 
416
If this
 
417
value is NULL at initialization, the parent hierarchy of the widget is
 
418
searched for a widget that
 
419
holds the \fBXmQTspecifyRenderTable\fP trait\&.
 
420
If such an ancestor is found, the font list is initialized to the
 
421
\fBXmTEXT_RENDER_TABLE\fP value of the ancestor widget\&. If no such widget
 
422
is found, the default is implementation dependent\&. Refer to
 
423
\fBXmFontList\fP(3) for more information on a font list structure\&.
 
424
.IP "\fBXmNitemCount\fP" 10
 
425
Specifies the total number of items\&.
 
426
The value must be the number of items in \fBXmNitems\fP and must not be
 
427
negative\&.
 
428
It is automatically updated by the list whenever an item is added to or
 
429
deleted from the list\&.
 
430
.IP "\fBXmNitems\fP" 10
 
431
Points to an array of compound strings that are to be displayed as the list
 
432
items\&.
 
433
Refer to \fBXmString\fP(3) for more information on the creation and
 
434
structure of compound strings\&.
 
435
\fBXtGetValues\fP for this resource returns the list items themselves,
 
436
not a copy of the list items\&.
 
437
The application must not free the returned items\&.
 
438
.IP "\fBXmNlistMarginHeight\fP" 10
 
439
Specifies the height of the margin between the list border and the items\&.
 
440
.IP "\fBXmNlistMarginWidth\fP" 10
 
441
Specifies the width of the margin between the list border and the items\&.
 
442
.IP "\fBXmNlistSizePolicy\fP" 10
 
443
Controls the reaction of the List when an item grows horizontally beyond
 
444
the current size of the list work area\&.
 
445
If the value is \fBXmCONSTANT\fP, the list viewing area does not grow,
 
446
and a horizontal ScrollBar is added for a List whose parent is a ScrolledWindow\&.
 
447
If this resource is set to \fBXmVARIABLE\fP, the List grows to
 
448
match the
 
449
size of the longest item, and no horizontal ScrollBar appears\&.
 
450
.IP "" 10
 
451
When the value of this resource is \fBXmRESIZE_IF_POSSIBLE\fP, the List
 
452
attempts to grow or shrink to match the width of the widest item\&.
 
453
If it cannot grow to match the widest size, a horizontal ScrollBar is
 
454
added for a List whose parent is a ScrolledWindow
 
455
if the longest item is wider than the list
 
456
viewing area\&.
 
457
.IP "" 10
 
458
The size policy must be set at the time the List widget is created\&.
 
459
It cannot be changed at a later time through \fBXtSetValues\fP\&.
 
460
.IP "\fBXmNlistSpacing\fP" 10
 
461
Specifies the spacing between list items\&.
 
462
This spacing increases by the value of the \fBXmNhighlightThickness\fP
 
463
resource in Primitive\&.
 
464
.IP "\fBXmNmatchBehavior\fP" 10
 
465
Specifies the matching behavior followed by XmList\&.
 
466
The current values are \fBXmNONE\fP and \fBXmQUICK_NAVIGATE\fP, as follows:
 
467
.RS
 
468
.IP "\fBXmNONE\fP" 10
 
469
Specifies that the typed in characters are ignored\&.
 
470
.IP "\fBXmQUICK_NAVIGATE\fP" 10
 
471
Specifies that 1-character navigation shall be supported when List
 
472
has focus\&. If the typed character is
 
473
the initial character of some set of items in
 
474
List, the first of those items following the current
 
475
item will be navigated to (become the current
 
476
item)\&. If all such items precede the current item, the
 
477
first such item becomes the current item\&.
 
478
Subsequently, typing the same character will
 
479
cyclically navigate among the items with the same first
 
480
character\&.
 
481
.RE
 
482
.IP "\fBXmNmultipleSelectionCallback\fP" 10
 
483
Specifies a list of callbacks that is called
 
484
when an item is selected in
 
485
multiple selection mode\&. The reason is \fBXmCR_MULTIPLE_SELECT\fP\&.
 
486
.IP "\fBXmNprimaryOwnership\fP" 10
 
487
Specifies whether XmContainer takes ownership of the Primary selection
 
488
when a selection is made inside it\&. This resource can take the
 
489
following values:
 
490
.RS
 
491
.IP "\fBXmOWN_NEVER\fP" 10
 
492
Never takes ownership\&.
 
493
.IP "\fBXmOWN_ALWAYS\fP" 10
 
494
Always takes ownership\&.
 
495
.IP "\fBXmOWN_MULTIPLE\fP" 10
 
496
Only takes ownership is more than one element has been selected\&.
 
497
.IP "\fBXmOWN_POSSIBLE_MULTIPLE\fP" 10
 
498
Only takes ownership if more than one element can be selected at a
 
499
time\&.
 
500
.RE
 
501
.IP "\fBXmNrenderTable\fP" 10
 
502
Specifies the render table associated with the list items\&. The render
 
503
table is used in conjunction with the
 
504
\fBXmNvisibleItemCount\fP
 
505
resource to determine the height of the List widget\&. If this
 
506
value is NULL at initialization, List searches its parent hierarchy
 
507
for a widget that
 
508
holds the \fBXmQTspecifyRenderTable\fP trait\&.
 
509
If such an ancestor is found, the render table is initialized to the
 
510
\fBXmTEXT_RENDER_TABLE\fP value of the ancestor widget\&. If no such widget
 
511
is found, the default is implementation dependent\&. If a font list and
 
512
a render table are both specified, the
 
513
render table will take precedence\&. Refer to
 
514
\fBXmRenderTable\fP(3) for more information on the creation and
 
515
structure of a render table\&.
 
516
.IP "\fBXmNscrollBarDisplayPolicy\fP" 10
 
517
Controls the display of vertical ScrollBars in a
 
518
List whose parent is a ScrolledWindow\&.
 
519
When the value of this resource is \fBXmAS_NEEDED\fP, a vertical
 
520
ScrollBar is displayed only when the number of items in the List exceeds
 
521
the number of visible items\&.
 
522
When the value is \fBXmSTATIC\fP, a vertical ScrollBar is always
 
523
displayed\&.
 
524
.IP "\fBXmNselectColor\fP" 10
 
525
Allows the application to specify the color of the background rectangle
 
526
that indicates selected text\&. It takes two values:
 
527
.RS
 
528
.IP "\fBXmDEFAULT_SELECT_COLOR\fP" 10
 
529
Causes the select color to be set to a color
 
530
between the background and the bottom shadow color\&.
 
531
.IP "\fBXmREVERSED_GROUND_COLORS\fP" 10
 
532
Forces the select color to the
 
533
foreground color and the color of any text rendered over the
 
534
select color to be in the background color\&.
 
535
.IP "\fBHIGHLIGHT_COLOR\fP" 10
 
536
Forces the fill color to use the highlight color\&.
 
537
.RE
 
538
.IP "\fBXmNselectedItemCount\fP" 10
 
539
Specifies the number of strings in the selected items list\&.
 
540
The value must be the number of items in \fBXmNselectedItems\fP and must
 
541
not be negative\&.
 
542
.IP "\fBXmNselectedItems\fP" 10
 
543
Points to an array of compound strings that represents the list items that
 
544
are currently selected, either by the user or by the application\&.
 
545
\fBXtGetValues\fP for this resource returns the list items themselves,
 
546
not a copy of the list items\&.
 
547
The application must not free the returned items or the array\&.
 
548
.IP "" 10
 
549
Setting \fBXmNselectedItems\fP selects those list items that exactly
 
550
match items in the given \fBXmNselectedItems\fP list\&. There may be
 
551
additional items in \fBXmNselectedItems\fP that do not match items in
 
552
the list\&. These items remain until \fBXmNselectedItems\fP is updated\&.
 
553
If \fBXmNitems\fP is changed such that the list now contains items
 
554
matching previously unmatched items in \fBXmNselectedItems\fP, those
 
555
new items will also appear selected\&.
 
556
.IP "" 10
 
557
Any user interaction with the list that causes at least one item to be
 
558
selected or deselected and any call to
 
559
\fBXmListDeleteAllItems\fP,
 
560
\fBXmListDeleteItem\fP,
 
561
\fBXmListDeleteItems\fP,
 
562
\fBXmListDeleteItemsPos\fP,
 
563
\fBXmListDeletePos\fP,
 
564
\fBXmListDeletePositions\fP,
 
565
\fBXmListDeselectAllItems\fP,
 
566
\fBXmListDeselectItem\fP, \fBXmListDeselectPos\fP,
 
567
\fBXmListSelectItem\fP, \fBXmListSelectPos\fP, or
 
568
\fBXmListUpdateSelectedList\fP cause \fBXmNselectedItems\fP to be
 
569
updated immediately to exactly reflect the visual state of the list\&.
 
570
Calls to any other \fBXmList\fP functions do not affect
 
571
\fBXmNselectedItems\fP\&.
 
572
.IP "\fBXmNselectedPositionCount\fP" 10
 
573
Specifies the number of positions in the selected positions list\&.
 
574
The value must be the number of items in \fBXmNselectedPositions\fP
 
575
.IP "\fBXmNselectedPositions\fP" 10
 
576
Points to an array of the positions of the selected items in the List\&.
 
577
\fBXtGetValues\fP for this resource returns the
 
578
list items themselves, not a copy of the list
 
579
items\&. The application must not free the returned
 
580
items or the array\&.
 
581
.IP "\fBXmNselectionMode\fP" 10
 
582
Defines what effect keyboard navigations have on selection\&. The valid
 
583
modes are:
 
584
.RS
 
585
.IP "\fBXmADD_MODE\fP" 10
 
586
Allows no navigation operations to have effect on selection, and
 
587
\fB<osfSelect>\fP toggles the selection state of the item at the location
 
588
cursor without deselecting any other selected items, except in Single
 
589
Select\&. However, the widget cannot be put into add mode if the
 
590
\fBXmNselectionPolicy\fP resource is an incompatible mode
 
591
(\fBXmNselectionPolicy\fP cannot be \fBXmBROWSE_SELECT\fP)\&.
 
592
.IP "\fBXmNORMAL_MODE\fP" 10
 
593
Allows navigation operations and \fB<osfSelect>\fP to select the
 
594
item at the location cursor and deselect any other selected
 
595
items\&. However, the widget cannot be put into normal mode if the
 
596
\fBXmNselectionPolicy\fP resource is an incompatible mode
 
597
(\fBXmNselectionPolicy\fP cannot be \fBXmSINGLE_SELECT\fP or
 
598
\fBXmMULTIPLE_SELECT\fP)\&.
 
599
.RE
 
600
.IP "\fBXmNselectionPolicy\fP" 10
 
601
Defines the interpretation of the selection action\&. This can be one of the
 
602
following:
 
603
.RS
 
604
.IP "\fBXmSINGLE_SELECT\fP" 10
 
605
Allows only single selections
 
606
.IP "\fBXmMULTIPLE_SELECT\fP" 10
 
607
Allows multiple selections
 
608
.IP "\fBXmEXTENDED_SELECT\fP" 10
 
609
Allows extended selections
 
610
.IP "\fBXmBROWSE_SELECT\fP" 10
 
611
Allows drag-and-browse functionality
 
612
.RE
 
613
.IP "\fBXmNsingleSelectionCallback\fP" 10
 
614
Specifies a list of callbacks that is called
 
615
when an item is selected in
 
616
single selection mode\&. The reason is \fBXmCR_SINGLE_SELECT\fP\&.
 
617
.IP "\fBXmNstringDirection\fP" 10
 
618
Is a synthetic resource for setting \fBXmNlayoutDirection\fP\&.
 
619
The values for this resource are \fBXmSTRING_DIRECTION_L_TO_R\fP and
 
620
\fBXmSTRING_DIRECTION_R_TO_L\fP\&. Refer to the
 
621
\fBXmNlayoutDirection\fP resource description\&. The
 
622
\fBXmNstringDirection\fP resource is obsoleted by
 
623
\fBXmNlayoutDirection\fP, but is kept here for backward compatibility\&.
 
624
.IP "\fBXmNtopItemPosition\fP" 10
 
625
Specifies the position of the item that is the first visible item in the
 
626
list\&.
 
627
Setting this resource is equivalent to calling the \fBXmListSetPos\fP
 
628
function\&.
 
629
The position of the first item in the list is 1; the position of the
 
630
second item is 2; and so on\&.
 
631
A position of 0 (zero) specifies the last item in the list\&.
 
632
The value must not be negative\&.
 
633
.IP "\fBXmNvisibleItemCount\fP" 10
 
634
Specifies the number of items that can
 
635
fit in the visible space of the list work area\&. The List uses this
 
636
value to determine its height\&.
 
637
The value must be greater than 0 (zero)\&.
 
638
.SS "Inherited Resources"
 
639
.PP
 
640
List inherits behavior and resources from the
 
641
superclasses described in the following tables\&.
 
642
For a complete description of each resource, refer to the
 
643
reference page for that superclass\&.
 
644
.PP
 
645
.TS
 
646
tab() box;
 
647
c s s s s
 
648
l| l| l| l| l.
 
649
\fBXmPrimitive Resource Set\fP
 
650
\fBName\fP\fBClass\fP\fBType\fP\fBDefault\fP\fBAccess\fP
 
651
_____
 
652
XmNbottomShadowColorXmCBottomShadowColorPixeldynamicCSG
 
653
_____
 
654
XmNbottomShadowPixmapXmCBottomShadowPixmapPixmapXmUNSPECIFIED_PIXMAPCSG
 
655
_____
 
656
XmNconvertCallbackXmCCallbackXtCallbackListNULLC
 
657
_____
 
658
XmNforegroundXmCForegroundPixeldynamicCSG
 
659
_____
 
660
XmNhelpCallbackXmCCallbackXtCallbackListNULLC
 
661
_____
 
662
XmNhighlightColorXmCHighlightColorPixeldynamicCSG
 
663
_____
 
664
XmNhighlightOnEnterXmCHighlightOnEnterBooleanFalseCSG
 
665
_____
 
666
XmNhighlightPixmapXmCHighlightPixmapPixmapdynamicCSG
 
667
_____
 
668
XmNhighlightThicknessXmCHighlightThicknessDimension2CSG
 
669
_____
 
670
XmNlayoutDirectionXmCLayoutDirectionXmDirectiondynamicCG
 
671
_____
 
672
XmNnavigationTypeXmCNavigationTypeXmNavigationTypeXmTAB_GROUPCSG
 
673
_____
 
674
XmNpopupHandlerCallbackXmCCallbackXtCallbackListNULLC
 
675
_____
 
676
XmNshadowThicknessXmCShadowThicknessDimension2CSG
 
677
_____
 
678
XmNtopShadowColorXmCTopShadowColorPixeldynamicCSG
 
679
_____
 
680
XmNtopShadowPixmapXmCTopShadowPixmapPixmapdynamicCSG
 
681
_____
 
682
XmNtraversalOnXmCTraversalOnBooleanTrueCSG
 
683
_____
 
684
XmNunitTypeXmCUnitTypeunsigned chardynamicCSG
 
685
_____
 
686
XmNuserDataXmCUserDataXtPointerNULLCSG
 
687
_____
 
688
.TE
 
689
.PP
 
690
.TS
 
691
tab() box;
 
692
c s s s s
 
693
l| l| l| l| l.
 
694
\fBCore Resource Set\fP
 
695
\fBName\fP\fBClass\fP\fBType\fP\fBDefault\fP\fBAccess\fP
 
696
_____
 
697
XmNacceleratorsXmCAcceleratorsXtAcceleratorsdynamicCSG
 
698
_____
 
699
XmNancestorSensitiveXmCSensitiveBooleandynamicG
 
700
_____
 
701
XmNbackgroundXmCBackgroundPixeldynamicCSG
 
702
_____
 
703
XmNbackgroundPixmapXmCPixmapPixmapXmUNSPECIFIED_PIXMAPCSG
 
704
_____
 
705
XmNborderColorXmCBorderColorPixelXtDefaultForegroundCSG
 
706
_____
 
707
XmNborderPixmapXmCPixmapPixmapXmUNSPECIFIED_PIXMAPCSG
 
708
_____
 
709
XmNborderWidthXmCBorderWidthDimension0CSG
 
710
_____
 
711
XmNcolormapXmCColormapColormapdynamicCG
 
712
_____
 
713
XmNdepthXmCDepthintdynamicCG
 
714
_____
 
715
XmNdestroyCallbackXmCCallbackXtCallbackListNULLC
 
716
_____
 
717
XmNheightXmCHeightDimensiondynamicCSG
 
718
_____
 
719
XmNinitialResourcesPersistentXmCInitialResourcesPersistentBooleanTrueC
 
720
_____
 
721
XmNmappedWhenManagedXmCMappedWhenManagedBooleanTrueCSG
 
722
_____
 
723
XmNscreenXmCScreenScreen *dynamicCG
 
724
_____
 
725
XmNsensitiveXmCSensitiveBooleanTrueCSG
 
726
_____
 
727
XmNtranslationsXmCTranslationsXtTranslationsdynamicCSG
 
728
_____
 
729
XmNwidthXmCWidthDimensiondynamicCSG
 
730
_____
 
731
XmNxXmCPositionPosition0CSG
 
732
_____
 
733
XmNyXmCPositionPosition0CSG
 
734
_____
 
735
.TE
 
736
.SS "Callback Information"
 
737
.PP
 
738
List defines a new callback structure\&. The application must first look at the
 
739
reason field and use only the structure members that are valid for that
 
740
particular reason, because not all fields are relevant for
 
741
every possible reason\&. The callback structure is defined as follows:
 
742
.PP
 
743
.nf
 
744
typedef struct
 
745
{
 
746
        int \fIreason\fP;
 
747
        XEvent *\fIevent\fP;
 
748
        XmString \fIitem\fP;
 
749
        int \fIitem_length\fP;
 
750
        int \fIitem_position\fP;
 
751
        XmString *\fIselected_items\fP;
 
752
        int \fIselected_item_count\fP;
 
753
        int *\fIselected_item_positions\fP;
 
754
        char \fIselection_type\fP;
 
755
        unsigned char \fIauto_selection_type\fP;
 
756
} XmListCallbackStruct;
 
757
.fi
 
758
.IP "\fIreason\fP" 10
 
759
Indicates why the callback was invoked\&.
 
760
.IP "\fIevent\fP" 10
 
761
Points to the \fBXEvent\fP that triggered the callback\&. It can be NULL\&.
 
762
.IP "\fIitem\fP" 10
 
763
The last item selected at the time of the \fIevent\fP that caused the
 
764
callback\&.
 
765
\fIitem\fP points to a temporary storage space that is reused after the
 
766
callback is finished\&.
 
767
Therefore, if an application needs to save the item, it should copy the
 
768
item into its own data space\&.
 
769
.IP "\fIitem_length\fP" 10
 
770
The length in bytes of \fIitem\fP\&.
 
771
This member is obsolete and exists for compatibility with
 
772
earlier releases\&.
 
773
.IP "\fIitem_position\fP" 10
 
774
The position (plus one) of \fIitem\fP in the List\&'s \fBXmNitems\fP array\&.
 
775
An \fIitem_position\fP value of one symbolizes the first element in the
 
776
list\&.
 
777
.IP "\fIselected_items\fP" 10
 
778
A list of items selected at the time of the \fIevent\fP that caused
 
779
the callback\&.
 
780
\fIselected_items\fP points to a temporary storage space that is reused
 
781
after the callback is finished\&.
 
782
Therefore, if an application needs to save the selected list, it should
 
783
copy the list into its own data space\&.
 
784
.IP "\fIselected_item_count\fP" 10
 
785
The number of items in the \fIselected_items\fP list\&.
 
786
This number must be non-negative\&.
 
787
.IP "\fIselected_item_positions\fP" 10
 
788
An array of integers, one for each selected item, representing the
 
789
position of each selected item in the List\&'s \fBXmNitems\fP array\&.
 
790
\fIselected_item_positions\fP points to a temporary storage space that
 
791
is reused after the callback is finished\&.
 
792
Therefore, if an application needs to save this array, it should copy
 
793
the array into its own data space\&.
 
794
.IP "\fIselection_type\fP" 10
 
795
Indicates that the most recent extended selection was the initial
 
796
selection (\fBXmINITIAL\fP), a modification of an existing selection
 
797
(\fBXmMODIFICATION\fP), or an additional noncontiguous selection
 
798
(\fBXmADDITION\fP)\&.
 
799
.IP "\fBauto_selection_type\fP" 10
 
800
Indicates the type of automatic selection callback\&. The types of
 
801
callbacks include the following:
 
802
.RS
 
803
.IP "\fBXmAUTO_BEGIN\fP" 10
 
804
Indicates the beginning of automatic selection\&.
 
805
.IP "\fBXmAUTO_MOTION\fP" 10
 
806
Indicates that there is a button drag selection\&.
 
807
.IP "\fBXmAUTO_CANCEL\fP" 10
 
808
Indicates that the new selection is cancelled\&.
 
809
.IP "\fBXmAUTO_NO_CHANGE\fP" 10
 
810
Indicates that the currently selected item matches the initial item\&.
 
811
.IP "\fBXmAUTO_CHANGE\fP" 10
 
812
Indicates that the currently selected item does not match the initial item\&.
 
813
.RE
 
814
.PP
 
815
The following table describes the reasons for which the individual callback
 
816
structure fields are valid\&.
 
817
.TS
 
818
tab() box;
 
819
l| l.
 
820
\fBReason\fP\fBValid Fields\fP
 
821
__
 
822
XmCR_SINGLE_SELECTT{
 
823
\fIreason, event, item, item_length, item_position\fP
 
824
T}
 
825
__
 
826
XmCR_DEFAULT_ACTIONT{
 
827
\fIreason, event, item, item_length, item_position, selected_items, selected_item_count, selected_item_positions\fP
 
828
T}
 
829
__
 
830
XmCR_BROWSE_SELECTT{
 
831
\fIreason, event, item, item_length, item_position\fP
 
832
T}
 
833
__
 
834
XmCR_MULTIPLE_SELECTT{
 
835
\fIreason, event, item, item_length, item_position, selected_items, selected_item_count, selected_item_positions\fP
 
836
T}
 
837
__
 
838
XmCR_EXTENDED_SELECTT{
 
839
\fIreason, event, item, item_length, item_position, selected_items, selected_item_count, selected_item_positions, selection_type\fP
 
840
T}
 
841
__
 
842
.TE
 
843
.PP
 
844
A pointer to the following callback structure is passed to the
 
845
\fBXmNdestinationCallback\fP procedures:
 
846
.PP
 
847
.nf
 
848
typedef struct
 
849
{
 
850
        int \fIreason\fP;
 
851
        XEvent *\fIevent\fP;
 
852
        Atom \fIselection\fP;
 
853
        XtEnum \fIoperation\fP;
 
854
        int \fIflags\fP;
 
855
        XtPointer \fItransfer_id\fP;
 
856
        XtPointer \fIdestination_data\fP;
 
857
        XtPointer \fIlocation_data\fP;
 
858
        Time \fItime\fP;
 
859
} XmDestinationCallbackStruct;
 
860
.fi
 
861
.IP "\fIreason\fP" 10
 
862
Indicates why the callback was invoked\&.
 
863
.IP "\fIevent\fP" 10
 
864
Points to the \fBXEvent\fP that triggered the callback\&.
 
865
It can be NULL\&.
 
866
.IP "\fIselection\fP" 10
 
867
Indicates the selection for which data transfer is being requested\&.
 
868
Possible values are \fBCLIPBOARD\fP, \fBPRIMARY\fP, \fBSECONDARY\fP, and
 
869
\fB_MOTIF_DROP\fP\&.
 
870
.IP "\fIoperation\fP" 10
 
871
Indicates the type of transfer operation requested\&.
 
872
.RS
 
873
.IP "   \(bu" 6
 
874
When the selection is \fBPRIMARY\fP, possible values are \fBXmMOVE\fP,
 
875
\fBXmCOPY\fP, and \fBXmLINK\fP\&.
 
876
.IP "   \(bu" 6
 
877
When the selection is \fBSECONDARY\fP or \fBCLIPBOARD\fP, possible
 
878
values are \fBXmCOPY\fP and \fBXmLINK\fP\&.
 
879
.IP "   \(bu" 6
 
880
When the selection is \fB_MOTIF_DROP\fP, possible values are
 
881
\fBXmMOVE\fP, \fBXmCOPY\fP, \fBXmLINK\fP, and \fBXmOTHER\fP\&.
 
882
A value of \fBXmOTHER\fP means that the callback procedure must get
 
883
further information from the \fBXmDropProcCallbackStruct\fR in the
 
884
\fIdestination_data\fP member\&.
 
885
.RE
 
886
.IP "\fIflags\fP" 10
 
887
Indicates whether or not the destination widget is also the source of
 
888
the data to be transferred\&.
 
889
Following are the possible values:
 
890
.RS
 
891
.IP "\fBXmCONVERTING_NONE\fP" 10
 
892
The destination widget is not the source of the data to be transferred\&.
 
893
.IP "\fBXmCONVERTING_SAME\fP" 10
 
894
The destination widget is the source of the data to be transferred\&.
 
895
.RE
 
896
.IP "\fBtransfer_id\fP" 10
 
897
Serves as a unique ID to identify the transfer transaction\&.
 
898
.IP "\fIdestination_data\fP" 10
 
899
Contains information about the destination\&.
 
900
When the selection is \fB_MOTIF_DROP\fP, the callback procedures are
 
901
called by the drop site\&'s \fBXmNdropProc\fP, and \fIdestination_data\fP
 
902
is a pointer to the \fBXmDropProcCallbackStruct\fR passed to the
 
903
\fBXmNdropProc\fP procedure\&.
 
904
When the selection is \fBSECONDARY\fP, \fIdestination_data\fP is an Atom
 
905
representing a target recommmended by the selection owner for use in
 
906
converting the selection\&.
 
907
Otherwise, \fIdestination_data\fP is NULL\&.
 
908
.IP "\fBlocation_data\fP" 10
 
909
Contains information about the location where data is to be transferred\&.
 
910
The value is always NULL when the selection is \fBSECONDARY\fP or
 
911
\fBCLIPBOARD\fP\&.
 
912
If the value is NULL, the data is to be inserted at the widget\&'s cursor
 
913
position\&.
 
914
Otherwise, the value is an integer representing the position in the List
 
915
where the items are to be transferred\&.
 
916
A value of 1 makes the first new item the first item in the list; a
 
917
value of 2 makes it the second item; and so on\&.
 
918
Once \fBXmTransferDone\fP procedures start to be called,
 
919
\fBlocation_data\fP will no longer be stable\&.
 
920
.IP "\fItime\fP" 10
 
921
Indicates the time when the transfer operation began\&.
 
922
.SS "Translations"
 
923
.PP
 
924
\fBXmList\fP includes translations from Primitive\&.
 
925
The \fBXmList\fP translations are described in the following list\&.
 
926
.PP
 
927
The following key names are listed in the
 
928
X standard key event translation table syntax\&.
 
929
This format is the one used by Motif to
 
930
specify the widget actions corresponding to a given key\&.
 
931
A brief overview of the format is provided under
 
932
\fBVirtualBindings\fP(3)\&.
 
933
For a complete description of the format, please refer to the
 
934
X Toolkit Instrinsics Documentation\&.
 
935
.IP "\fB<Btn1>\fP\fB<Motion>\fP:" 10
 
936
ListButtonMotion()
 
937
.IP "\fBs \(apm \(apa\fP \fB<Btn1Down>\fP:" 10
 
938
ListBeginExtend()
 
939
.IP "\fBs \(apm \(apa\fP \fB<Btn1Up>\fP:" 10
 
940
ListEndExtend()
 
941
.IP "\fBc \(aps \(apm \(apa\fP \fB<Btn1Down>\fP:" 10
 
942
ListBeginToggle()
 
943
.IP "\fBc \(aps \(apm \(apa\fP \fB<Btn1Up>\fP:" 10
 
944
ListEndToggle()
 
945
.IP "\fB\(aps \(apc \(apm \(apa\fP \fB<Btn1Down>\fP:" 10
 
946
ListBeginSelect()
 
947
.IP "\fB\(aps \(apc \(apm \(apa\fP \fB<Btn1Up>\fP:" 10
 
948
ListEndSelect()
 
949
.IP "\fB<Btn2Down>\fP:" 10
 
950
ListProcessDrag()
 
951
.IP "\fB:s c\fP \fB<Key>\fP\fB<osfBeginLine>\fP:" 10
 
952
ListBeginDataExtend()
 
953
.IP "\fB:c\fP \fB<Key>\fP\fB<osfBeginLine>\fP:" 10
 
954
ListBeginData()
 
955
.IP "\fB:\fP\fB<Key>\fP\fB<osfBeginLine>\fP:" 10
 
956
ListBeginLine()
 
957
.IP "\fB:s c\fP \fB<Key>\fP\fB<osfEndLine>\fP:" 10
 
958
ListEndDataExtend()
 
959
.IP "\fB:c\fP \fB<Key>\fP\fB<osfEndLine>\fP:" 10
 
960
ListEndData()
 
961
.IP "\fB:\fP\fB<Key>\fP\fB<osfEndLine>\fP:" 10
 
962
ListEndLine()
 
963
.IP "\fB:\fP\fB<Key>\fP\fB<osfPageLeft>\fP:" 10
 
964
ListLeftPage()
 
965
.IP "\fB:c\fP \fB<Key>\fP\fB<osfPageUp>\fP:" 10
 
966
ListLeftPage()
 
967
.IP "\fB:\fP\fB<Key>\fP\fB<osfPageUp>\fP:" 10
 
968
ListPrevPage()
 
969
.IP "\fB:\fP\fB<Key>\fP\fB<osfPageRight>\fP:" 10
 
970
ListRightPage()
 
971
.IP "\fB:c\fP \fB<Key>\fP\fB<osfPageDown>\fP:" 10
 
972
ListRightPage()
 
973
.IP "\fB:\fP\fB<Key>\fP\fB<osfPageDown>\fP:" 10
 
974
ListNextPage()
 
975
.IP "\fBs\fP \fB<KeyDown>\fP\fB<osfSelect>\fP\fB:\fP" 10
 
976
ListKbdBeginExtend()
 
977
.IP "\fB:\fP\fB<KeyDown>\fP\fB<osfSelect>\fP:" 10
 
978
ListKbdBeginSelect()
 
979
.IP "\fB:s\fP \fB<KeyUp>\fP\fB<osfSelect>\fP:" 10
 
980
ListKbdEndExtend()
 
981
.IP "\fB:\fP\fB<KeyUp>\fP\fB<osfSelect>\fP:" 10
 
982
ListKbdEndSelect()
 
983
.IP "\fB:\fP\fB<Key>\fP\fB<osfSelectAll>\fP:" 10
 
984
ListKbdSelectAll()
 
985
.IP "\fB:\fP\fB<Key>\fP\fB<osfDeselectAll>\fP:" 10
 
986
ListKbdDeSelectAll()
 
987
.IP "\fB:\fP\fB<Key>\fP\fB<osfActivate>\fP:" 10
 
988
ListKbdActivate()
 
989
.IP "\fB:\fP\fB<Key>\fP\fB<osfAddMode>\fP:" 10
 
990
ListAddMode()
 
991
.IP "\fB:\fP\fB<Key>\fP\fB<osfHelp>\fP:" 10
 
992
PrimitiveHelp()
 
993
.IP "\fB:\fP\fB<Key>\fP\fB<osfCancel>\fP:" 10
 
994
ListKbdCancel()
 
995
.IP "\fB:c\fP \fB<Key>\fP\fB<osfLeft>\fP:" 10
 
996
ListLeftPage()
 
997
.IP "\fB:\fP\fB<Key>\fP\fB<osfLeft>\fP:" 10
 
998
ListLeftChar()
 
999
.IP "\fB:c\fP \fB<Key>\fP\fB<osfRight>\fP:" 10
 
1000
ListRightPage()
 
1001
.IP "\fB:\fP\fB<Key>\fP\fB<osfRight>\fP:" 10
 
1002
ListRightChar()
 
1003
.IP "\fB:s\fP \fB<Key>\fP\fB<osfUp>\fP:" 10
 
1004
ListExtendPrevItem()
 
1005
.IP "\fB:\fP\fB<Key>\fP\fB<osfUp>\fP:" 10
 
1006
ListPrevItem()
 
1007
.IP "\fB:s\fP \fB<Key>\fP\fB<osfDown>\fP:" 10
 
1008
ListExtendNextItem()
 
1009
.IP "\fB:\fP\fB<Key>\fP\fB<osfDown>\fP:" 10
 
1010
ListNextItem()
 
1011
.IP "\fB:c\fP \fB<Key>\fP\fB<osfInsert>\fP:" 10
 
1012
ListCopyToClipboard()
 
1013
.IP "\fB:\fP\fB<Key>\fP\fB<osfCopy>\fP:" 10
 
1014
ListCopyToClipboard()
 
1015
.IP "\fB\(aps c \(apm \(apa\fP \fB<Key>\fP\fBslash\fP:" 10
 
1016
ListKbdSelectAll()
 
1017
.IP "\fB\(aps c \(apm \(apa\fP \fB<Key>\fP\fBbackslash\fP:" 10
 
1018
ListKbdDeSelectAll()
 
1019
.IP "\fBs \(apm \(apa\fP \fB<Key>\fP\fBTab\fP:" 10
 
1020
PrimitivePrevTabGroup()
 
1021
.IP "\fB\(apm \(apa\fP \fB<Key>\fP\fBTab\fP:" 10
 
1022
PrimitiveNextTabGroup()
 
1023
.IP "\fB\(aps \(apm \(apa\fP \fB<Key>\fP\fBReturn\fP:" 10
 
1024
ListKbdActivate()
 
1025
.IP "\fB\(aps \(apm \(apa\fP \fB<KeyDown>\fP\fBspace\fP:" 10
 
1026
ListKbdBeginSelect()
 
1027
.IP "\fB\(aps \(apm \(apa\fP \fB<KeyUp>\fP\fBspace\fP:" 10
 
1028
ListKbdEndSelect()
 
1029
.IP "\fBs \(apm \(apa\fP \fB<KeyDown>\fP\fBspace\fP:" 10
 
1030
ListKbdBeginExtend()
 
1031
.IP "\fBs \(apm \(apa\fP \fB<KeyUp>\fP\fBspace\fP:" 10
 
1032
ListKbdEndExtend()
 
1033
.IP "\fB<Key>\fP:" 10
 
1034
ListQuickNavigate()
 
1035
.PP
 
1036
The List button event translations are modified when Display\&'s
 
1037
\fBXmNenableBtn1Transfer\fP resource does not have a value of
 
1038
\fBXmOFF\fP (in other words, it is either \fBXmBUTTON2_TRANSFER\fP or
 
1039
\fBXmBUTTON2_ADJUST\fP)\&. This
 
1040
option allows the
 
1041
actions for selection and transfer to be integrated on \fB<Btn1>\fP, and
 
1042
the actions for extending the selection can be bound to
 
1043
\fB<Btn2>\fP\&. The actions for \fB<Btn1>\fP that are defined above
 
1044
still apply when the \fB<Btn1>\fP event occurs over text that is not
 
1045
selected\&. The following actions apply when the \fB<Btn1>\fP event
 
1046
occurs over text that is selected:
 
1047
.IP "\fB<Btn1Motion>\fP\fB:\fP" 10
 
1048
ListProcessBtn1(\fBListButtonMotion\fP)
 
1049
.IP "\fBs \(apm \(apa\fP \fB<Btn1Down>\fP" 10
 
1050
ListProcessBtn1(\fBListBeginExtend\fP)
 
1051
.IP "\fBs \(apm \(apa\fP \fB<Btn1Up>\fP" 10
 
1052
ListProcessBtn1(\fBListEndExtend\fP)
 
1053
.IP "\fBc \(aps \(apm \(apa\fP \fB<Btn1Down>\fP" 10
 
1054
ListProcessBtn1(\fBListBeginToggle\fP)
 
1055
.IP "\fBc \(aps \(apm \(apa\fP \fB<Btn1Up>\fP" 10
 
1056
ListProcessBtn1(\fBListEndToggle\fP)
 
1057
.IP "\fB\(aps \(apc \(apm \(apa\fP \fB<Btn1Down>\fP" 10
 
1058
ListProcessBtn1(\fBListBeginSelect\fP)
 
1059
.IP "\fB\(aps \(apc \(apm \(apa\fP \fB<Btn1Up>\fP" 10
 
1060
ListProcessBtn1(\fBListEndSelect\fP)
 
1061
.PP
 
1062
When Display\&'s \fBXmNenableBtn1Transfer\fP resource has a value of
 
1063
\fBXmBUTTON2_ADJUST\fP, the following actions apply:
 
1064
.IP "\fB<Btn2Down>\fP\fB:\fP" 10
 
1065
ListProcessBtn2(\fBListBeginExtend\fP)
 
1066
.IP "\fB<Btn2Motion>\fP\fB:\fP" 10
 
1067
ListProcessBtn2(\fBListButtonMotion\fP)
 
1068
.IP "\fB<Btn2Up>\fP\fB:\fP" 10
 
1069
ListProcessBtn2(\fBListEndExtend\fP)
 
1070
.SS "Action Routines"
 
1071
.PP
 
1072
The \fBXmList\fP action routines are described in the following list\&.
 
1073
The current selection is always shown with inverted colors\&.
 
1074
.IP "ListAddMode():" 10
 
1075
Toggles the state of Add Mode for keyboard selection\&.
 
1076
.IP "ListBeginData():" 10
 
1077
Moves the location cursor to the first item in the list\&.
 
1078
In Normal Mode, this also deselects any current selection,
 
1079
selects the first item in the list, and calls the appropriate selection
 
1080
callbacks (\fBXmNbrowseSelectionCallback\fP when
 
1081
\fBXmNselectionPolicy\fP is set to \fBXmBROWSE_SELECT\fP,
 
1082
\fBXmNextendedSelectionCallback\fP when \fBXmNselectionPolicy\fP is set
 
1083
to \fBXmEXTENDED_SELECT\fP)\&.
 
1084
.IP "ListBeginDataExtend():" 10
 
1085
If \fBXmNselectionPolicy\fP is set to \fBXmMULTIPLE_SELECT\fP or
 
1086
\fBXmEXTENDED_SELECT\fP,
 
1087
this action moves the location cursor to the first item in the list\&.
 
1088
.IP "" 10
 
1089
If \fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP,
 
1090
this action does the following:
 
1091
If an extended selection has been made from the current anchor point,
 
1092
restores the selection state of the items in that range to their state
 
1093
before the extended selection was done;
 
1094
changes the selection state of the first item and all
 
1095
items between it and the current anchor point to the state of the
 
1096
item at the current anchor point;
 
1097
calls the \fBXmNextendedSelectionCallback\fP callbacks\&.
 
1098
.IP "ListBeginExtend():" 10
 
1099
If \fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP,
 
1100
this action does the following:
 
1101
If an extended selection has been made from the current anchor point,
 
1102
restores the selection state of the items in that range to their state
 
1103
before the extended selection was done, and
 
1104
changes the selection state of the item under the pointer and all
 
1105
items between it and the current anchor point to the state of the
 
1106
item at the current anchor point\&.
 
1107
If \fBXmNautomaticSelection\fP is set to True, this action calls the
 
1108
\fBXmNextendedSelectionCallback\fP callbacks\&.
 
1109
The \fBauto_selection_type\fP component of the callback structure will
 
1110
be set to \fBXmAUTO_BEGIN\fP\&.
 
1111
.IP "ListBeginLine():" 10
 
1112
Moves the horizontal scroll region to the beginning of the line\&.
 
1113
.IP "ListBeginSelect():" 10
 
1114
If \fBXmNselectionPolicy\fP is set to \fBXmSINGLE_SELECT\fP,
 
1115
deselects any current selection and toggles the selection state of the
 
1116
item under the pointer\&.
 
1117
.IP "" 10
 
1118
If \fBXmNselectionPolicy\fP is set to \fBXmBROWSE_SELECT\fP,
 
1119
deselects any current selection and selects the item under the pointer\&.
 
1120
If \fBXmNautomaticSelection\fP is set to True, calls the
 
1121
\fBXmNbrowseSelectionCallback\fP callbacks\&.
 
1122
The \fBauto_selection_type\fP component of the callback structure will
 
1123
be set to \fBXmAUTO_BEGIN\fP\&.
 
1124
.IP "" 10
 
1125
If \fBXmNselectionPolicy\fP is set to \fBXmMULTIPLE_SELECT\fP,
 
1126
toggles the selection state of the item under the pointer\&.
 
1127
Any previous selections remain\&.
 
1128
.IP "" 10
 
1129
If \fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP,
 
1130
this action deselects any current selection,
 
1131
selects the item under the pointer, and
 
1132
sets the current anchor at that item\&.
 
1133
If \fBXmNautomaticSelection\fP is set to True,
 
1134
this action calls the
 
1135
\fBXmNextendedSelectionCallback\fP callbacks\&.
 
1136
The \fBauto_selection_type\fP component of the callback structure will
 
1137
be set to \fBXmAUTO_BEGIN\fP\&.
 
1138
.IP "ListBeginToggle():" 10
 
1139
If \fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP,
 
1140
this action moves the current anchor to the item under the pointer
 
1141
without changing the current selection\&.
 
1142
If the item is unselected, this action selects it; if the item is selected,
 
1143
this action unselects it\&.
 
1144
If \fBXmNautomaticSelection\fP is set to True, this action calls the
 
1145
\fBXmNextendedSelectionCallback\fP callbacks\&.
 
1146
.IP "" 10
 
1147
Otherwise, the list takes keyboard focus\&. No other action occurs\&.
 
1148
The \fBauto_selection_type\fP component of the callback structure will
 
1149
be set to \fBXmAUTO_BEGIN\fP\&.
 
1150
.IP "ListButtonMotion():" 10
 
1151
If \fBXmNselectionPolicy\fP is set to \fBXmBROWSE_SELECT\fP,
 
1152
this action deselects any current selection and selects the item under the
 
1153
pointer\&.
 
1154
If \fBXmNautomaticSelection\fP is set to True and the pointer has
 
1155
entered a new list item, this action calls the \fBXmNbrowseSelectionCallback\fP
 
1156
callbacks\&.
 
1157
.IP "" 10
 
1158
If \fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP,
 
1159
this action does the following:
 
1160
If an extended selection is being made and an extended selection has
 
1161
previously been made from the current anchor point,
 
1162
restores the selection state of the items in that range to their state
 
1163
before the previous extended selection was done and
 
1164
changes the selection state of the item under the pointer and all
 
1165
items
 
1166
between it and the current anchor point to the state of the
 
1167
item at the current anchor point\&.
 
1168
If \fBXmNautomaticSelection\fP is set to True and the pointer has
 
1169
entered a new list item, calls the \fBXmNextendedSelectionCallback\fP
 
1170
callbacks\&.
 
1171
.IP "" 10
 
1172
If the pointer leaves a scrolled list, this action scrolls the list in
 
1173
the direction of the pointer motion\&.
 
1174
The \fBauto_selection_type\fP component of the callback structure will
 
1175
be set to \fBXmAUTO_MOTION\fP\&.
 
1176
.IP "ListCopyToClipboard()" 10
 
1177
Copies the content of the selected items to the clipboard as a single
 
1178
compound string with each
 
1179
item separated by a newline\&.
 
1180
This action calls the \fBXmNconvertCallback\fP procedures, possibly
 
1181
multiple times, for the \fBCLIPBOARD\fP selection\&.
 
1182
.IP "ListEndData():" 10
 
1183
Moves the location cursor to the last item in the list\&.
 
1184
In Normal Mode, this also deselects any current selection,
 
1185
selects the last item in the list, and calls the appropriate selection
 
1186
callbacks (\fBXmNbrowseSelectionCallback\fP when
 
1187
\fBXmNselectionPolicy\fP is set to \fBXmBROWSE_SELECT\fP,
 
1188
\fBXmNextendedSelectionCallback\fP when \fBXmNselectionPolicy\fP is set
 
1189
to \fBXmEXTENDED_SELECT\fP)\&.
 
1190
.IP "ListEndDataExtend():" 10
 
1191
If \fBXmNselectionPolicy\fP is set to \fBXmMULTIPLE_SELECT\fP or
 
1192
\fBXmEXTENDED_SELECT\fP,
 
1193
this action moves the location cursor to the last item in the list\&.
 
1194
.IP "" 10
 
1195
If \fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP,
 
1196
this action does the following:
 
1197
If an extended selection has been made from the current anchor point,
 
1198
restores the selection state of the items in that range to their state
 
1199
before the extended selection was done;
 
1200
changes the selection state of the last item and all
 
1201
items between it and the current anchor point to the state of the
 
1202
item at the current anchor point;
 
1203
calls the \fBXmNextendedSelectionCallback\fP callbacks\&.
 
1204
.IP "ListEndExtend():" 10
 
1205
If \fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP,
 
1206
this action moves the location
 
1207
cursor to the last item selected or deselected
 
1208
and
 
1209
calls the
 
1210
\fBXmNextendedSelectionCallback\fP callbacks\&.
 
1211
.IP "" 10
 
1212
If \fBXmNautomaticSelection\fP is set to True, then the
 
1213
\fBauto_selection_type\fP field of the callback will be
 
1214
valid\&. If \fBXmNselectionPolicy\fP is set to \fBXmBROWSE_SELECT\fP
 
1215
and the currently selected item position matches the position of the
 
1216
item that was selected before the browse selection began, or if
 
1217
\fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP and the set
 
1218
of currently selected item positions matches the set of item positions
 
1219
selected before the extended selection began, the callback will be
 
1220
called with \fBauto_selection_type\fP set to \fBXmAUTO_NO_CHANGE\fP\&.
 
1221
Otherwise, it will be set to \fBXmAUTO_CHANGE\fP\&.
 
1222
.IP "ListEndLine():" 10
 
1223
Moves the horizontal scroll region to the end of the line\&.
 
1224
.IP "ListEndSelect():" 10
 
1225
This action moves the location cursor to the last item selected or
 
1226
deselected and calls the appropriate selection callbacks
 
1227
(\fBXmNsingleSelectionCallback\fP when \fBXmNselectionPolicy\fP is set
 
1228
to \fBXmSINGLE_SELECT\fP, \fBXmNbrowseSelectionCallback\fP when
 
1229
\fBXmNselectionPolicy\fP is set to \fBXmBROWSE_SELECT\fP,
 
1230
\fBXmNmultipleSelectionCallback\fP when
 
1231
\fBXmNselectionPolicy\fP is set to \fBXmMULTIPLE_SELECT\fP,
 
1232
\fBXmNextendedSelectionCallback\fP when \fBXmNselectionPolicy\fP is
 
1233
set to \fBXmEXTENDED_SELECT\fP)\&.
 
1234
.IP "" 10
 
1235
If \fBXmNautomaticSelection\fP is set to True, then the
 
1236
\fBauto_selection_type\fP field of the callback will be valid\&.
 
1237
If \fBXmNselectionPolicy\fP is set to \fBXmBROWSE_SELECT\fP and the
 
1238
currently selected item position matches the position of the item that
 
1239
was selected before the brose selection began, or if
 
1240
\fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP and the set
 
1241
of currently selected item positions matches the set of item positions
 
1242
selected before the extended selection began, the callback will be
 
1243
called with \fBauto_selection_type\fP set to \fBXmAUTO_NO_CHANGE\fP\&.
 
1244
Otherwise, it will be set to \fBXmAUTO_CHANGE\fP\&.
 
1245
.IP "ListEndToggle():" 10
 
1246
If \fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP, moves
 
1247
the location cursor to the last item selected or deselected
 
1248
and
 
1249
calls the
 
1250
\fBXmNextendedSelectionCallback\fP callbacks\&.
 
1251
.IP "" 10
 
1252
If \fBXmNautomaticSelection\fP is set to True, then the
 
1253
\fBauto_selection_type\fP field of the callback will be valid\&. If
 
1254
\fBXmNselectionPolicy\fP is set to \fBXmBROWSE_SELECT\fP and the
 
1255
currently selected item position matches the position of the item that
 
1256
was selected before the browse selection began, or if
 
1257
\fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP and the set
 
1258
of currently selected item positions matches the set of item positions
 
1259
selected before the extended selection began, the callback will be
 
1260
called with \fBauto_selection_type\fP set to \fBXmAUTO_NO_CHANGE\fP\&.
 
1261
Otherwise, it will be set to \fBXmAUTO_CHANGE\fP\&.
 
1262
.IP "ListExtendNextItem():" 10
 
1263
If \fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP,
 
1264
this action
 
1265
does the following:
 
1266
If an extended selection has been made from the current anchor point,
 
1267
restores the selection state of the items in that range to their state
 
1268
before the extended selection was done;
 
1269
moves the location cursor to the next item and changes the selection
 
1270
state of the item and all
 
1271
items between it and the current anchor point
 
1272
to the state of the item at the current anchor point;
 
1273
calls the \fBXmNextendedSelectionCallback\fP callbacks\&.
 
1274
.IP "ListExtendPrevItem():" 10
 
1275
If \fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP,
 
1276
this action does the following:
 
1277
If an extended selection has been made from the current anchor point,
 
1278
restores the selection state of the items in that range to their state
 
1279
before the extended selection was done;
 
1280
moves the location cursor to the previous item and changes the selection
 
1281
state of the item and all items between it and the current anchor point
 
1282
to the state of the item at the current anchor point;
 
1283
calls the \fBXmNextendedSelectionCallback\fP callbacks\&.
 
1284
.IP "ListScrollCursorVertically(\fIpercentage\fP\fB)\fP:" 10
 
1285
Scrolls the line containing the insertion cursor vertically
 
1286
to an intermediate position in the visible window based on an
 
1287
input percentage\&. A value of 0 (zero) indicates the top of the window;
 
1288
a value of 100, the bottom of the window\&. If this action is called
 
1289
with no argument, the line containing the insertion cursor is scrolled
 
1290
vertically to a new position designated by the \fIy\fP event passed
 
1291
to the routine\&.
 
1292
.IP "ListKbdActivate():" 10
 
1293
Calls the callbacks for \fBXmNdefaultActionCallback\fP\&.
 
1294
If the List\&'s parent is a manager, this action passes the event to the
 
1295
parent\&.
 
1296
.IP "ListKbdBeginExtend():" 10
 
1297
If \fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP,
 
1298
does the following:
 
1299
If an extended selection has been made from the current anchor point,
 
1300
restores the selection state of the items in that range to their state
 
1301
before the extended selection was done;
 
1302
changes the selection state of the item at the location cursor and all
 
1303
items between it and the current anchor point to the state of the
 
1304
item at the current anchor point\&.
 
1305
If \fBXmNautomaticSelection\fP is set to True, this action calls the
 
1306
\fBXmNextendedSelectionCallback\fP callbacks\&.
 
1307
The \fBauto_selection_type\fP component of the callback structure will
 
1308
be set to \fBXmAUTO_BEGIN\fP"\&.
 
1309
.IP "ListKbdBeginSelect():" 10
 
1310
If the \fBXmNselectionPolicy\fP is set to \fBXmSINGLE_SELECT\fP,
 
1311
deselects any current selection and toggles the state of the item at the
 
1312
location cursor\&.
 
1313
The \fBauto_selection_type\fP component of the callback structure will
 
1314
be set to \fBXmAUTO_BEGIN\fP"\&.
 
1315
.IP "" 10
 
1316
If the \fBXmNselectionPolicy\fP is set to \fBXmBROWSE_SELECT\fP,
 
1317
deselects any current selection and selects the item at the location
 
1318
cursor\&.
 
1319
If \fBXmNautomaticSelection\fP is set to True, calls the
 
1320
\fBXmNbrowseSelectionCallback\fP callbacks\&.
 
1321
.IP "" 10
 
1322
If the \fBXmNselectionPolicy\fP is set to \fBXmMULTIPLE_SELECT\fP,
 
1323
toggles the selection state of the item at the location cursor\&.
 
1324
Any previous selections remain\&.
 
1325
.IP "" 10
 
1326
If the \fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP,
 
1327
moves the current anchor to the item at the location cursor\&.
 
1328
In Normal Mode, this action
 
1329
deselects any current selection and selects the item at
 
1330
the location cursor\&.
 
1331
In Add Mode, this action
 
1332
toggles the selection state of the item at the location
 
1333
cursor and leaves the current selection unchanged\&.
 
1334
If \fBXmNautomaticSelection\fP is set to True, this action
 
1335
calls the \fBXmNextendedSelectionCallback\fP callbacks\&.
 
1336
The \fBauto_selection_type\fP component of the callback structure will
 
1337
be set to \fBXmAUTO_BEGIN\fP"\&.
 
1338
.IP "ListKbdCancel():" 10
 
1339
If \fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP
 
1340
and an extended selection is being made from the current anchor point,
 
1341
this action
 
1342
cancels the new selection and restores the selection state of the items
 
1343
in that range to their state before the extended selection was done\&.
 
1344
If \fBXmNautomaticSelection\fP is set to True, this action calls the
 
1345
\fBXmNextendedSelectionCallback\fP callbacks; otherwise, if the
 
1346
parent is a manager, it passes the event to the parent\&.
 
1347
The \fBauto_selection_type\fP component of the callback structure will
 
1348
be set to \fBXmAUTO_CANCEL\fP"\&.
 
1349
.IP "ListKbdDeSelectAll():" 10
 
1350
If the \fBXmNselectionPolicy\fP is set to \fBXmSINGLE_SELECT\fP,
 
1351
\fBXmMULTIPLE_SELECT\fP, or \fBXmEXTENDED_SELECT\fP in Add Mode,
 
1352
this action deselects all items in the list\&.
 
1353
If the \fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP in
 
1354
Normal Mode, this action deselects all items in the list (except the item at the
 
1355
location cursor if the shell\&'s \fBXmNkeyboardFocusPolicy\fP is
 
1356
\fBXmEXPLICIT\fP)\&.
 
1357
This action also calls the appropriate selection callbacks
 
1358
(\fBXmNsingleSelectionCallback\fP when \fBXmNselectionPolicy\fP is set
 
1359
to \fBXmSINGLE_SELECT\fP, \fBXmNmultipleSelectionCallback\fP when
 
1360
\fBXmNselectionPolicy\fP is set to \fBXmMULTIPLE_SELECT\fP,
 
1361
\fBXmNextendedSelectionCallback\fP when \fBXmNselectionPolicy\fP is set
 
1362
to \fBXmEXTENDED_SELECT\fP)\&.
 
1363
.IP "ListKbdEndExtend():" 10
 
1364
If \fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP,
 
1365
this action calls the
 
1366
\fBXmNextendedSelectionCallback\fP callbacks\&.
 
1367
.IP "" 10
 
1368
If \fBXmNautomaticSelection\fP is set to True, then the
 
1369
\fBauto_selection_type\fP field of the callback will be valid\&. If
 
1370
\fBXmNselectionPolicy\fP is set to \fBXmBROWSE_SELECT\fP and the
 
1371
currently selected item position matches the position of the item that
 
1372
was selected before the browse selection began, or if
 
1373
\fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP and the set
 
1374
of currently selected item positions matches the set of item positions
 
1375
selected before the extended selection began, the callback will be
 
1376
called with \fBauto_selection_type\fP set to \fBXmAUTO_NO_CHANGE\fP\&.
 
1377
Otherwise, it will be set to \fBXmAUTO_CHANGE\fP\&.
 
1378
.IP "ListKbdEndSelect():" 10
 
1379
Calls the appropriate selection callbacks
 
1380
(\fBXmNsingleSelectionCallback\fP when \fBXmNselectionPolicy\fP is set
 
1381
to \fBXmSINGLE_SELECT\fP, \fBXmNbrowseSelectionCallback\fP when
 
1382
\fBXmNselectionPolicy\fP is set to \fBXmBROWSE_SELECT\fP,
 
1383
\fBXmNmultipleSelectionCallback\fP when \fBXmNselectionPolicy\fP is set
 
1384
to \fBXmMULTIPLE_SELECT\fP, \fBXmNextendedSelectionCallback\fP when
 
1385
\fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP)\&.
 
1386
.IP "" 10
 
1387
If \fBXmNautomaticSelection\fP is set to True, then the
 
1388
\fBauto_selection_type\fP field of the callback will be valid\&. If
 
1389
\fBXmNselectionPolicy\fP is set to \fBXmBROWSE_SELECT\fP and the
 
1390
currently selected item position matches the position of the item that
 
1391
was selected before the browse selection began, or if
 
1392
\fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP and the set
 
1393
of currently selected item positions matches the set of item positions
 
1394
selected before the extended selection began, the callback will be
 
1395
called with \fBauto_selection_type\fP set to \fBXmAUTO_NO_CHANGE\fP\&.
 
1396
Otherwise, it will be set to \fBXmAUTO_CHANGE\fP\&.
 
1397
.IP "ListKbdSelectAll():" 10
 
1398
If \fBXmNselectionPolicy\fP is set to \fBXmSINGLE_SELECT\fP or
 
1399
\fBXmBROWSE_SELECT\fP, this action selects the item at the location cursor\&.
 
1400
If \fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP or
 
1401
\fBXmMULTIPLE_SELECT\fP,
 
1402
it selects all items in the list\&.
 
1403
This action also calls the appropriate selection callbacks
 
1404
(\fBXmNsingleSelectionCallback\fP when \fBXmNselectionPolicy\fP is set
 
1405
to \fBXmSINGLE_SELECT\fP, \fBXmNbrowseSelectionCallback\fP when
 
1406
\fBXmNselectionPolicy\fP is set to \fBXmBROWSE_SELECT\fP,
 
1407
\fBXmNmultipleSelectionCallback\fP when \fBXmNselectionPolicy\fP is set
 
1408
to \fBXmMULTIPLE_SELECT\fP, \fBXmNextendedSelectionCallback\fP when
 
1409
\fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP)\&.
 
1410
.IP "ListLeftChar():" 10
 
1411
Scrolls the list one character to the left\&.
 
1412
.IP "ListLeftPage():" 10
 
1413
Scrolls the list one page to the left\&.
 
1414
.IP "ListNextItem():" 10
 
1415
Moves the location cursor to the next item in the list\&.
 
1416
.IP "" 10
 
1417
If the \fBXmNselectionPolicy\fP is set to \fBXmBROWSE_SELECT\fP,
 
1418
this action also selects the next item, deselects any current
 
1419
selection, and calls the \fBXmNbrowseSelectionCallback\fP callbacks\&.
 
1420
.IP "" 10
 
1421
If the \fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP,
 
1422
this action in Normal Mode also selects the next item, deselects any
 
1423
current selection, moves the current anchor to the next item, and calls
 
1424
the \fBXmNextendedSelectionCallback\fP callbacks\&.
 
1425
In Add Mode, this action does not affect the selection or the anchor\&.
 
1426
.IP "ListNextPage():" 10
 
1427
Scrolls the list to the next page, moving the location cursor to a new
 
1428
item\&.
 
1429
.IP "" 10
 
1430
If the \fBXmNselectionPolicy\fP is set to \fBXmBROWSE_SELECT\fP,
 
1431
this action also selects the new item, deselects any current
 
1432
selection, and calls the \fBXmNbrowseSelectionCallback\fP callbacks\&.
 
1433
.IP "" 10
 
1434
If the \fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP,
 
1435
this action in Normal Mode also selects the new item, deselects any
 
1436
current selection, moves the current anchor to the new item, and calls
 
1437
the \fBXmNextendedSelectionCallback\fP callbacks\&.
 
1438
In Add Mode, this action does not affect the selection or the anchor\&.
 
1439
.IP "ListPrevItem():" 10
 
1440
Moves the location cursor to the previous item in the list\&.
 
1441
.IP "" 10
 
1442
If the \fBXmNselectionPolicy\fP is set to \fBXmBROWSE_SELECT\fP,
 
1443
this action also selects the previous item, deselects any current
 
1444
selection, and calls the \fBXmNbrowseSelectionCallback\fP callbacks\&.
 
1445
.IP "" 10
 
1446
If the \fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP,
 
1447
this action in Normal Mode also selects the previous item, deselects any
 
1448
current selection, moves the current anchor to the previous item, and
 
1449
calls the \fBXmNextendedSelectionCallback\fP callbacks\&.
 
1450
In Add Mode, this action does not affect the selection or the anchor\&.
 
1451
.IP "ListPrevPage():" 10
 
1452
Scrolls the list to the previous page, moving the location cursor to a
 
1453
new item\&.
 
1454
.IP "" 10
 
1455
If the \fBXmNselectionPolicy\fP is set to \fBXmBROWSE_SELECT\fP,
 
1456
this action also selects the new item, deselects any current
 
1457
selection, and calls the \fBXmNbrowseSelectionCallback\fP callbacks\&.
 
1458
.IP "" 10
 
1459
If the \fBXmNselectionPolicy\fP is set to \fBXmEXTENDED_SELECT\fP,
 
1460
this action in Normal Mode also selects the new item, deselects any
 
1461
current selection, moves the current anchor to the new item, and calls
 
1462
the \fBXmNextendedSelectionCallback\fP callbacks\&.
 
1463
In Add Mode this action does not affect the selection or the anchor\&.
 
1464
.IP "ListProcessBtn1(\fIstring\fP)" 10
 
1465
When Display\&'s \fBXmNenableBtn1Transfer\fP resource is not \fBXmOFF\fP,
 
1466
the
 
1467
actions for selection and transfer are integrated on \fB<Btn1>\fP\&.
 
1468
When the button is not performing a transfer or drag, the action that is
 
1469
performed depends on the value of \fIstring\fP, which can be one of
 
1470
the following actions:
 
1471
.RS
 
1472
.IP "   \(bu" 6
 
1473
\fBListButtonMotion\fP
 
1474
.IP "   \(bu" 6
 
1475
\fBListBeginExtend\fP
 
1476
.IP "   \(bu" 6
 
1477
\fBListEndExtend\fP
 
1478
.IP "   \(bu" 6
 
1479
\fBListBeginToggle\fP
 
1480
.IP "   \(bu" 6
 
1481
\fBListEndToggle\fP
 
1482
.IP "   \(bu" 6
 
1483
\fBListBeginSelect\fP
 
1484
.IP "   \(bu" 6
 
1485
\fBListEndSelect\fP
 
1486
.RE
 
1487
.IP "\fBListProcessBtn2\fP" 10
 
1488
When Display\&'s \fBXmNenableBtn1Transfer\fP resource has a value of
 
1489
\fBXmBUTTON2_TRANSFER\fP, the
 
1490
actions for extending selection are bound on \fB<Btn2>\fP, and a drag
 
1491
starts immediately\&.
 
1492
When Display\&'s \fBXmNenableBtn1Transfer\fP resource has a value of
 
1493
\fBXmBUTTON2_ADJUST\fP, the action that is
 
1494
performed depends on the value of \fIstring\fP, which can be one of
 
1495
the following actions:
 
1496
.RS
 
1497
.IP "   \(bu" 6
 
1498
\fBListBeginExtend\fP
 
1499
.IP "   \(bu" 6
 
1500
\fBListButtonMotion\fP
 
1501
.IP "   \(bu" 6
 
1502
\fBListEndExtend\fP
 
1503
.RE
 
1504
.IP "ListProcessDrag():" 10
 
1505
Drags the content of one or more selected list items\&.
 
1506
Each item is separated by a newline\&.
 
1507
If \fBBTransfer\fP is pressed on an unselected item, it drags only that
 
1508
item, excluding any other selected items\&.
 
1509
This action sets the \fBXmNconvertProc\fP of the DragContext to a
 
1510
function that calls the \fBXmNconvertCallback\fP procedures, possibly
 
1511
multiple times, for the \fB_MOTIF_DROP\fP selection\&.
 
1512
.IP "\fBListQuickNavigate\fP" 10
 
1513
Navigates to an item\&. When List\&'s
 
1514
\fBXmNmatchBehavior\fP resource is \fBXmQUICK_NAVIGATE\fP, this
 
1515
action uses 1-character
 
1516
navigation to navigate\&. Refer to the \fBXmNmatchBehavior\fP resource
 
1517
for a description of how this navigation works\&.
 
1518
.IP "ListRightChar():" 10
 
1519
Scrolls the list one character to the right\&.
 
1520
.IP "ListRightPage():" 10
 
1521
Scrolls the list one page to the right\&.
 
1522
.IP "PrimitiveHelp():" 10
 
1523
Calls the callbacks for \fBXmNhelpCallback\fP if any exist\&. If there
 
1524
are no help callbacks for this widget, this action calls the help callbacks
 
1525
for the nearest ancestor that has them\&.
 
1526
.IP "PrimitiveNextTabGroup():" 10
 
1527
Moves the focus to the first item contained within the next tab group\&. If
 
1528
the current tab group is the last entry in the tab group list, it
 
1529
wraps to the beginning of the tab group list\&.
 
1530
.IP "PrimitivePrevTabGroup():" 10
 
1531
Moves the focus to the first item contained within the previous tab group\&.
 
1532
If the beginning of the tab group list is reached, it wraps to the end
 
1533
of the tab group list\&.
 
1534
.SS "Additional Behavior"
 
1535
.PP
 
1536
The List widget has the following additional behavior:
 
1537
.IP "\fB<Double\ Click>\fP" 10
 
1538
If a button click is followed by another button click within the time
 
1539
span specified by the display\&'s multiclick time, the List interprets
 
1540
that as a double click and calls the callbacks for
 
1541
\fBXmNdefaultActionCallback\fP\&.
 
1542
The item\&'s colors invert to indicate that it is selected\&.
 
1543
The \fBXmNdoubleClickInterval\fP resource can be used to specify a
 
1544
time span that overrides the display\&'s multi-click time\&.
 
1545
.IP "\fB<FocusIn>\fP:" 10
 
1546
If the focus policy is Explicit, this action sets the focus and draw
 
1547
the location cursor\&.
 
1548
.IP "\fB<FocusOut>\fP:" 10
 
1549
If the focus policy is Explicit, this action removes the focus and erase
 
1550
the location cursor\&.
 
1551
.SS "Virtual Bindings"
 
1552
.PP
 
1553
The bindings for virtual keys are vendor specific\&.
 
1554
For information about bindings for virtual buttons and keys, see \fBVirtualBindings\fP(3)\&.
 
1555
.SH "RELATED"
 
1556
.PP
 
1557
\fBCore\fP(3),
 
1558
\fBXmCreateList\fP(3),
 
1559
\fBXmCreateScrolledList\fP(3),
 
1560
\fBXmFontListCreate\fP(3),
 
1561
\fBXmFontListAppendEntry\fP(3),
 
1562
\fBXmListAddItem\fP(3),
 
1563
\fBXmListAddItems\fP(3),
 
1564
\fBXmListAddItemUnselected\fP(3),
 
1565
\fBXmListAddItemsUnselected\fP(3),
 
1566
\fBXmListDeleteAllItems\fP(3),
 
1567
\fBXmListDeleteItem\fP(3),
 
1568
\fBXmListDeleteItems\fP(3),
 
1569
\fBXmListDeleteItemsPos\fP(3),
 
1570
\fBXmListDeletePos\fP(3),
 
1571
\fBXmListDeletePositions\fP(3),
 
1572
\fBXmListDeselectAllItems\fP(3),
 
1573
\fBXmListDeselectItem\fP(3),
 
1574
\fBXmListDeselectPos\fP(3),
 
1575
\fBXmListGetKbdItemPos\fP \fBXmListGetMatchPos\fP(3),
 
1576
\fBXmListGetSelectedPos\fP(3),
 
1577
\fBXmListItemExists\fP(3),
 
1578
\fBXmListItemPos\fP(3),
 
1579
\fBXmListPosToBounds\fP(3),
 
1580
\fBXmListReplaceItems\fP(3),
 
1581
\fBXmListReplaceItemsPos\fP(3),
 
1582
\fBXmListReplaceItemsPos\fP(3),
 
1583
\fBXmListReplaceItemsPosUnselected\fP(3),
 
1584
\fBXmListReplaceItemsUnselected\fP(3),
 
1585
\fBXmListSelectItem\fP(3),
 
1586
\fBXmListSelectPos\fP(3),
 
1587
\fBXmListSetAddMode\fP(3),
 
1588
\fBXmListSetBottomItem\fP(3),
 
1589
\fBXmListSetBottomPos\fP(3),
 
1590
\fBXmListSetHorizPos\fP(3),
 
1591
\fBXmListSetItem\fP(3),
 
1592
\fBXmListSetKbdItemPos\fP(3),
 
1593
\fBXmListSetPos\fP(3),
 
1594
\fBXmListUpdateSelectedList\fP(3),
 
1595
\fBXmListYToPos\fP(3),
 
1596
\fBXmPrimitive\fP(3)
 
1597
\fBXmStringCreate\fP(3),
 
1598
\fBXmVaCreateList\fP(3), and
 
1599
\fBXmVaCreateManagedList\fP(3)\&.