2
...\" Traits.sgm /main/10 1996/09/08 21:23:02 rws $
10
.fl \" force out current output buffer
11
\!!save /psv exch def currentpoint translate 0 0 moveto
14
.sy sed -e 's/^/!/' \\$1\" bring in postscript file
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
42
.el .tm ? font underflow
48
.ta 8n 16n 24n 32n 40n 48n 56n 64n 72n
49
.TH "Traits" "file formats"
51
\fBTraits\fP \(em Lists the traits used by the Motif Toolkit\&.
55
A trait is a characteristic of a widget\&. A widget holding
56
a particular trait is announcing a particular ability to
58
The following table summarizes the standard Motif traits\&.
64
\fBPurpose of Each Trait\fP
66
\fBA Widget Holding This Trait Can Do The Following:\fP
69
\fBXmQTaccessTextual\fPDisplay one primary text parcel\&.
71
\fBXmQTactivatable\fPT{
72
Become a command button in a dialog box\&.
75
\fBXmQTcareParentVisual\fPT{
76
Borrow its parent\&'s visual information\&.
79
\fBXmQTcontainer\fPManage container item children\&.
81
\fBXmQTcontainerItem\fPT{
82
Become a child of a container widget\&.
85
\fBXmQTdialogShellSavvy\fPBecome a child of a DialogShell\&.
88
Attach itself to one side of a suitable parent\&.
91
\fBXmQTmenuSavvy\fPBecome a menu child\&.
93
\fBXmQTmenuSystem\fPManage a menu system\&.
96
Act as a navigator to a scrollable widget\&.
99
\fBXmQTscrollFrame\fPT{
100
Handle one or more navigator widgets\&.
103
\fBXmQTspecifyRenderTable\fPT{
104
Supply the names of its default render tables\&.
107
\fBXmQTtakesDefault\fPT{
108
Change its appearance to show that it is the default button\&.
112
Transfer data to other widgets and/or receive data from other
118
Traits are not often used in Motif application programs\&.
119
However, traits are very important to widget writers\&.
120
For complete details on traits, see the
121
\fIMotif Widget Writer\&'s Guide\fP\&.
123
The following table lists the names of all widgets and gadgets
124
in the standard Motif widget set that hold a particular trait\&.
125
For example, the following table shows that the
126
\fBXmQTcontainerItem\fP trait is held by the
127
\fBXmIconGadget\fR\&.
128
As the table suggests, some traits are held by many of the
129
standard Motif widgets\&.
136
\fBTrait Installation in
137
Standard Widget Set\fP
140
\fBIs Installed on The Following Widgets:\fP
143
\fBXmQTaccessTextual\fPT{
144
\fBXmLabel\fP and all its subclasses; \fBXmLabelGadget\fP
145
and all its subclasses; \fBXmText; XmTextField\fP
148
\fBXmQTactivatable\fPT{
149
\fBXmArrowButton; XmArrowButtonGadget; XmDrawnButton; XmPushButton;
150
XmPushButtonGadget\fP
153
\fBXmQTcareParentVisual\fPT{
154
All the subclasses of \fBXmGadget\fP (but not
155
\fBXmGadget\fP itself);
156
\fBXmPrimitive\fP and all its subclasses
159
\fBXmQTcontainer\fP\fBXmContainer\fP
161
\fBXmQTcontainerItem\fP\fBXmIconGadget\fR
163
\fBXmQTdialogShellSavvy\fP\fBXmBulletinBoard\fP
165
\fBXmQTjoinSide\fPNo widgets install this trait
167
\fBXmQTmenuSavvy\fPT{
168
\fBXmLabel; XmDrawnButton; XmCascadeButton; XmPushButton;
169
XmToggleButton; XmLabelGadget; XmCascadeButtonGadget;
170
XmPushButtonGadget; XmToggleButtonGadget\fP
173
\fBXmQTmenuSystem\fP\fBXmRowColumn\fP
175
\fBXmQTnavigator\fP\fBXmScrollBar; XmSpinBox\fP
177
\fBXmQTscrollFrame\fP\fBXmNotebook; XmScrolledWindow\fP
179
\fBXmQTspecifyRenderTable\fPT{
180
\fBXmBulletinBoard\fP and all its subclasses;
181
\fBXmMenuShell; XmVendorShell\fP
184
\fBXmQTtakesDefault\fP\fBXmPushButton; XmPushButtonGadget\fP
187
\fBXmContainer; XmLabel\fP and all its subclasses;
188
\fBXmLabelGadget\fP and all its subclasses;
189
\fBXmList; XmScale; XmText; XmTextField\fP
194
The following table lists the traits installed on each widget\&.
195
For example, the following table indicates that the
196
\fBXmArrowButton\fP widget holds both the
197
\fBXmQTactivatable\fP
198
and \fBXmQTcareParentVisual\fP traits\&.
205
\fBWidget Name\fP\fBInstalls These Traits\fP
209
\fBXmArrowButton\fPT{
210
\fBXmQTactivatable, XmQTcareParentVisual\fP
213
\fBXmArrowButtonGadget\fPT{
214
\fBXmQTactivatable, XmQTcareParentVisual\fP
217
\fBXmBulletinBoard\fPT{
218
\fBXmQTdialogShellSavvy, XmQTspecifyRenderTable\fP
221
\fBXmCascadeButton\fPT{
222
\fBXmQTaccessTextual, XmQTcareParentVisual, XmQTmenuSavvy,
226
\fBXmCascadeButtonGadget\fPT{
227
\fBXmQTaccessTextual, XmQTcareParentVisual, XmQTmenuSavvy,
232
\fBXmCommand\fP\fBXmQTspecifyRenderTable\fP
234
\fBXmContainer\fP\fBXmQTcontainer, XmQTtransfer\fP
236
\fBXmDialogShell\fPNone
240
\fBXmDragContext\fPNone
244
\fBXmDrawingArea\fPNone
246
\fBXmDrawnButton\fPT{
247
\fBXmQTaccessTextual, XmQTactivatable, XmQTcareParentVisual,
248
XmQTmenuSavvy, XmQTtransfer\fP
251
\fBXmDropTransfer\fPNone
253
\fBXmFileSelectionBox\fP\fBXmQTspecifyRenderTable\fP
255
\fBXmForm\fP\fBXmQTspecifyRenderTable\fP
262
\fBXmQTcareParentVisual, XmQTcontainerItem\fP
266
\fBXmQTaccessTextual, XmQTcareParentVisual, XmQTmenuSavvy,
270
\fBXmLabelGadget\fPT{
271
\fBXmQTaccessTextual, XmQTcareParentVisual, XmQTmenuSavvy,
275
\fBXmList\fP\fBXmQTcareParentVisual, XmQTtransfer\fP
281
\fBXmMenuShell\fP\fBXmQTspecifyRenderTable\fP
283
\fBXmMessageBox\fP\fBXmQTspecifyRenderTable\fP
285
\fBXmNotebook\fP\fBXmQTscrollFrame\fP
289
\fBXmPrimitive\fP\fBXmQTcareParentVisual\fP
292
\fBXmQTaccessTextual, XmQTactivatable, XmQTcareParentVisual,
293
XmQTmenuSavvy, XmQTtakesDefault, XmQTtransfer\fP
296
\fBXmPushButtonGadget\fPT{
297
\fBXmQTaccessTextual, XmQTactivatable, XmQTcareParentVisual,
298
XmQTmenuSavvy, XmQTtakesDefault, XmQTtransfer\fP
301
\fBXmRowColumn\fP\fBXmQTmenuSystem\fP
303
\fBXmScale\fP\fBXmQTtransfer\fP
307
\fBXmScrollbar\fP\fBXmQTcareParentVisual, XmQTnavigator\fP
309
\fBXmScrolledWindow\fP\fBXmQTscrollFrame\fP
311
\fBXmSelectionBox\fP\fBXmQTspecifyRenderTable\fP
313
\fBXmSeparator\fP\fBXmQTcareParentVisual\fP
315
\fBXmSeparatorGadget\fP\fBXmQTcareParentVisual\fP
317
\fBXmSpinBox\fP\fBXmQTnavigator\fP
320
\fBXmQTaccessTextual, XmQTcareParentVisual, XmQTtransfer\fP
324
\fBXmQTaccessTextual, XmQTcareParentVisual,
328
\fBXmToggleButton\fPT{
329
\fBXmQTaccessTextual, XmQTcareParentVisual,
333
\fBXmToggleButtonGadget\fPT{
334
\fBXmQTaccessTextual, XmQTcareParentVisual, XmQTtransfer\fP
337
\fBVendorShell\fP\fBXmQTspecifyRenderTable\fP
341
The following table summarizes how the standard Motif widgets
342
access traits\&. There are two general ways for a widget to
343
access the traits of another widget\&.
345
One way is for a widget to ask another widget if it holds
346
a particular trait\&.
347
For example, \fBXmBulletinBoard\fP asks each of its children widgets
348
if they hold the \fBXmQTtakesDefault\fP trait\&.
349
\fBXmBulletinBoard\fP calls none of the trait methods
350
of \fBXmQTtakesDefault\fP\&.
352
Another kind of access is when one widget calls another widget\&'s
354
For example, \fBXmBulletinBoard\fP calls the
356
trait method of the \fBXmQTspecifyRenderTable\fP
364
\fBWidget\fP\fBAccesses These Traits:\fP\fBCalls These Trait Methods:\fP
366
\fBXmArrowButton\fPNoneNone
368
\fBXmArrowButtonGadget\fPNoneNone
370
\fBXmBulletinBoard\fP\fBXmQTtakesDefault\fPNone
372
\fBXmBulletinBoard\fP\fBXmQTspecifyRenderTable\fP\fBgetRenderTable\fP
374
\fBXmCascadeButton\fP\fBXmQTmenuSystem\fPMany
376
\fBXmCascadeButton\fP\fBXmQTspecifyRenderTable\fP\fBgetRenderTable\fP
378
\fBXmCascadeButtonGadget\fP\fBXmQTmenuSystem\fPMany
380
\fBXmCascadeButtonGadget\fP\fBXmQTspecifyRenderTable\fP\fBgetRenderTable\fP
382
\fBXmComboBox\fP\fBXmQTaccessTextual\fP\fBgetValue, setValue\fP
384
\fBXmCommand\fPNoneNone
386
\fBXmContainer\fP\fBXmQTcontainerItem\fP\fBgetValues, setValues\fP
388
\fBXmContainer\fP\fBXmQTscrollFrame\fP\fBgetInfo\fP
390
\fBXmDialogShell\fP\fBXmQTdialogShellSavvy\fP\fBcallMapUnmapCB\fP
392
\fBXmDisplay\fPNoneNone
394
\fBXmDragContext\fPNoneNone
396
\fBXmDragIcon\fPNoneNone
398
\fBXmDrawingArea\fPNoneNone
400
\fBXmDrawnButton\fP\fBXmQTmenuSystem\fPMany
402
\fBXmDrawnButton\fP\fBXmQTspecifyRenderTable\fP\fBgetRenderTable\fP
404
\fBXmDropTransfer\fPNoneNone
406
\fBXmFileSelectionBox\fP\fBXmQTactivatable\fPNone
410
\fBXmFrame\fPNoneNone
412
\fBXmGadget\fPNoneNone
414
\fBXmIconGadget\fR\fBXmQTcontainer\fP\fBgetValues\fP
416
\fBXmIconGadget\fR\fBXmQTspecifyRenderTable\fP\fBgetRenderTable\fP
418
\fBXmLabel\fP\fBXmQTmenuSystem\fP\fBvarious methods\fP
420
\fBXmLabel\fP\fBXmQTspecifyRenderTable\fP\fBgetRenderTable\fP
422
\fBXmLabelGadget\fP\fBXmQTmenuSystem\fP\fBvarious methods\fP
424
\fBXmLabelGadget\fP\fBXmQTspecifyRenderTable\fP\fBgetRenderTable\fP
426
\fBXmList\fP\fBXmQTnavigator\fP\fBgetValues\fP
428
\fBXmList\fP\fBXmQTscrollFrame\fP\fBgetInfo, init\fP
430
\fBXmList\fP\fBXmQTspecifyRenderTable\fP\fBgetRenderTable\fP
432
\fBXmMainWindow\fP\fBXmQTmenuSystem\fP\fBvarious methods\fP
434
\fBXmManager\fPNoneNone
436
\fBXmMenuShell\fP\fBXmQTmenuSystem\fP\fBvarious methods\fP
438
\fBXmMenuShell\fP\fBXmQTspecifyRenderTable\fP\fBgetRenderTable\fP
440
\fBXmMessageBox\fP\fBXmQTactivatable\fPNone
442
\fBXmNotebook\fP\fBXmQTscrollFrame\fP\fBinit, addNavigator, removeNavigator\fP
444
\fBXmNotebook\fP\fBXmQTnavigator\fP\fBgetValue\fP
446
\fBXmNotebook\fP\fBXmQTactivatable\fP\fBchangeCB\fP
448
\fBXmNotebook\fP\fBXmQTaccessTextual\fPNone
450
\fBXmPanedWindow\fPNoneNone
452
\fBXmPrimitive\fPNoneNone
454
\fBXmPushButton\fP\fBXmQTmenuSystem\fP\fBvarious methods\fP
456
\fBXmPushButton\fP\fBXmQTspecifyRenderTable\fP\fBgetRenderTable\fP
458
\fBXmPushButtonGadget\fP\fBXmQTmenuSystem\fP\fBvarious methods\fP
460
\fBXmPushButtonGadget\fP\fBXmQTspecifyRenderTable\fP\fBgetRenderTable\fP
462
\fBXmRowColumn\fP\fBXmQTmenuSavvy\fPT{
463
\fBgetAccelerator, getMnemonic, getActivateCBName\fP
466
\fBXmRowColumn\fP\fBXmQTmenuSystem\fP\fBvarious methods\fP
468
\fBXmScale\fP\fBXmQTspecifyRenderTable\fP\fBgetRenderTable\fP
470
\fBXmScreen\fPNoneNone
472
\fBXmScrollbar\fPNoneNone
474
\fBXmScrolledWindow\fP\fBXmQTnavigator\fP\fBgetValue\fP
476
\fBXmScrolledWindow\fP\fBXmQTscrollFrame\fP\fBinit, addNavigator\fP
478
\fBXmSelectionBox\fP\fBXmQTaccessTextual\fP\fBsetValue;\fP
480
\fBXmSelectionBox\fP\fBXmQTactivatable\fPNone
482
\fBXmSeparator\fPNoneNone
484
\fBXmSeparatorGadget\fPNoneNone
486
\fBXmSpinBox\fP\fBXmQTaccessTextual\fP\fBsetValue\fP
488
\fBXmText\fP\fBXmQTaccessTextual\fP\fBgetValue, setValue\fP
490
\fBXmText\fP\fBXmQTnavigator\fP\fBgetValue\fP
492
\fBXmText\fP\fBXmQTscrollFrame\fP\fBgetInfo, init\fP
494
\fBXmText\fP\fBXmQTspecifyRenderTable\fP\fBgetRenderTable\fP
496
\fBXmTextField\fP\fBXmQTspecifyRenderTable\fP\fBgetRenderTable\fP
498
\fBXmToggleButton\fP\fBXmQTmenuSystem\fP\fBvarious methods\fP
500
\fBXmToggleButton\fP\fBXmQTspecifyRenderTable\fP\fBgetRenderTable\fP
502
\fBXmToggleButtonGadget\fP\fBXmQTmenuSystem\fP\fBvarious methods\fP
504
\fBXmToggleButtonGadget\fP\fBXmQTspecifyRenderTable\fP\fBgetRenderTable\fP
506
\fBVendorShell\fP\fBXmQTspecifyRenderTable\fP\fBgetRenderTable\fP
511
The following reference pages are documented in the
512
\fIMotif Widget Writer\&'s Guide\fP:
513
\fBXmeTraitSet\fP(3),
514
\fBXmeTraitGet\fP(3),
515
\fBXmQTaccessTextual\fP(3),
516
\fBXmQTactivatable\fP(3),
517
\fBXmQTcareParentVisual\fP(3),
518
\fBXmQTcontainer\fP(3),
519
\fBXmQTcontainerItem\fP(3),
520
\fBXmQTdialogShellSavvy\fP(3),
521
\fBXmQTjoinSide\fP(3),
522
\fBXmQTmenuSavvy\fP(3),
523
\fBXmQTmenuSystem\fP(3),
524
\fBXmQTnavigator\fP(3),
525
\fBXmQTscrollFrame\fP(3),
526
\fBXmQTspecifyRenderTable\fP(3),
528
\fBXmQTtakesDefault\fP(3)\&.
529
...\" created by instant / docbook-to-man, Sun 22 Dec 1996, 20:36