File: XmLabelGadget.3

package info (click to toggle)
motif 2.3.4-13
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 81,160 kB
  • ctags: 51,769
  • sloc: ansic: 596,938; cpp: 3,951; yacc: 2,854; makefile: 2,070; csh: 1,199; sh: 1,070; lex: 455
file content (743 lines) | stat: -rw-r--r-- 31,848 bytes parent folder | download | duplicates (9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
'\" t
...\" LabelGad.sgm /main/9 1996/09/08 20:49:44 rws $
.de P!
.fl
\!!1 setgray
.fl
\\&.\"
.fl
\!!0 setgray
.fl			\" force out current output buffer
\!!save /psv exch def currentpoint translate 0 0 moveto
\!!/showpage{}def
.fl			\" prolog
.sy sed -e 's/^/!/' \\$1\" bring in postscript file
\!!psv restore
.
.de pF
.ie     \\*(f1 .ds f1 \\n(.f
.el .ie \\*(f2 .ds f2 \\n(.f
.el .ie \\*(f3 .ds f3 \\n(.f
.el .ie \\*(f4 .ds f4 \\n(.f
.el .tm ? font overflow
.ft \\$1
..
.de fP
.ie     !\\*(f4 \{\
.	ft \\*(f4
.	ds f4\"
'	br \}
.el .ie !\\*(f3 \{\
.	ft \\*(f3
.	ds f3\"
'	br \}
.el .ie !\\*(f2 \{\
.	ft \\*(f2
.	ds f2\"
'	br \}
.el .ie !\\*(f1 \{\
.	ft \\*(f1
.	ds f1\"
'	br \}
.el .tm ? font underflow
..
.ds f1\"
.ds f2\"
.ds f3\"
.ds f4\"
.ta 8n 16n 24n 32n 40n 48n 56n 64n 72n 
.TH "XmLabelGadget" "library call"
.SH "NAME"
\fBXmLabelGadget\fP \(em The LabelGadget widget class
.iX "XmLabelGadget"
.iX "widget class" "LabelGadget"
.SH "SYNOPSIS"
.PP
.nf
#include <Xm/LabelG\&.h>
.fi
.SH "DESCRIPTION"
.PP
LabelGadget is an instantiable widget and is also used as a superclass for
other button gadgets, such as PushButtonGadget and ToggleButtonGadget\&.
.PP
LabelGadget can contain either text or a pixmap\&. LabelGadget text is a
compound string\&.
Refer to the \fIMotif Programmer\&'s\fP
Guide for more information on compound strings\&.
The text can be multilingual,
multiline, and/or multifont\&. When a LabelGadget is insensitive, its text is
stippled, or the user-supplied insensitive pixmap is displayed\&.
.PP
LabelGadget supports both accelerators and mnemonics primarily for use in
LabelGadget subclass widgets that are contained in
menus\&. Mnemonics are available in
a menu system when the button is visible\&. Accelerators in a
menu system are accessible even when the button is not visible\&.
The LabelGadget displays the mnemonic by underlining the first matching
character in the text string\&. The accelerator is displayed
as a text string adjacent to the label text or pixmap, depending on
the layout direction\&.
.PP
LabelGadget consists of many margin fields surrounding the text or
pixmap\&.
These margin fields are resources that may
be set by the user, but LabelGadget subclasses and Manager parents also
modify some of these fields\&. They tend to modify the
\fBXmNmarginLeft\fP, \fBXmNmarginRight\fP, \fBXmNmarginTop\fP, and
\fBXmNmarginBottom\fP resources and leave the \fBXmNmarginWidth\fP and
\fBXmNmarginHeight\fP resources as set by the application\&.
.PP
LabelGadget takes into account \fBXmNshadowThickness\fP in determining
its layout but does not draw the shadow\&.
That is, if \fBXmNshadowThickness\fP is greater than 0 (zero), LabelGadget
leaves space for the shadow, but the shadow does not appear\&.
.PP
In a LabelGadget, \fBXmNtraversalOn\fP and \fBXmNhighlightOnEnter\fP are
forced to False inside Popup menu panes, Pulldown menu panes, and
OptionMenus\&.
Otherwise these resources default to False\&.
.PP
LabelGadget uses the
\fBXmQTmenuSystem\fP and \fBXmQTspecifyRenderTable\fP traits, and
holds the \fBXmQTaccessTextual\fP, \fBXmQTcareParentVisual\fP,
\fBXmQTmenuSavvy\fP, and \fBXmQTtransfer\fP traits\&.
.SS "Data Transfer Behavior"
.PP
LabelGadget and it subclasses, except when used in a menu system,
support dragging of the label contents from the LabelGadget\&.
However, the label contents are draggable only if
the \fBXmNenableUnselectableDrag\fP resource of \fBXmDisplay\fP
is set to True\&.
.PP
As a source of data, LabelGadget and its subclasses support the
following targets and associated conversions of data to these targets:
.IP "\fIlocale\fP" 10
If the \fIlocale\fP target matches the widget\&'s locale, the widget
transfers \fBXmNlabelString\fP in the encoding of the locale\&.
This target is supported only when \fBXmNlabelType\fP is \fBXmSTRING\fP
or \fBXmPIXMAP_AND_STRING\fP\&.
.IP "\fBCOMPOUND_TEXT\fP" 10
The widget transfers \fBXmNlabelString\fP as type \fBCOMPOUND_TEXT\fP\&.
This target is supported only when \fBXmNlabelType\fP is \fBXmSTRING\fP
or \fBXmPIXMAP_AND_STRING\&.
.IP "\fBUTF8_STRING\fP" 10
The widget transfers \fBXmNlabelString\fP as type \fBUTF8_STRING\fP\&.
This target is supported only when \fBXmNlabelType\fP is \fBXmSTRING\fP
of \fBXmPIXMAP_AND_STRING\fP\&.
.IP "\fBPIXMAP\fP" 10
The widget transfers \fBXmNlabelPixmap\fP as type \fBDRAWABLE\fP\&.
This target is supported when \fBXmNlabelType\fP is \fBXmPIXMAP\fP or
\fBXmPIXMAP_AND_STRING\fP\&.
.IP "\fBSTRING\fP" 10
The widget transfers \fBXmNlabelString\fP as type \fBSTRING\fP\&.
This target is supported when \fBXmNlabelType\fP is \fBXmSTRING\fP or
\fBXmPIXMAP_AND_STRING\fP\&.
.IP "\fBTEXT\fP" 10
If \fBXmNlabelString\fP is fully convertible to the encoding of the
locale, the widget transfers \fBXmNlabelString\fP in the encoding of
the locale\&.
Otherwise, the widget transfers \fBXmNlabelString\fP as type
\fBCOMPOUND_TEXT\fP\&.
This target is supported when \fBXmNlabelType\fP is \fBXmSTRING\fP or
\fBXmPIXMAP_AND_STRING\fP\&.
.IP "\fB_MOTIF_CLIPBOARD_TARGETS\fP" 10
The widget transfers, as type \fBATOM\fP, a list of the targets it
supports for the \fBCLIPBOARD\fP selection\&.
When \fBXmNlabelType\fP is \fBXmSTRING\fP or \fBXmPIXMAP_AND_STRING\fP,
these include the following targets:
.RS
.IP "   \(bu" 6
\fB_MOTIF_COMPOUND_STRING\fP
.IP "   \(bu" 6
\fBCOMPOUND_TEXT\fP
.IP "   \(bu" 6
\fBUTF8_STRING\fP
.IP "   \(bu" 6
The encoding of the locale, if \fBXmNlabelString\fP is fully convertible
to the encoding of the locale
.IP "   \(bu" 6
\fBSTRING\fP, if \fBXmNlabelString\fP is fully convertible to
\fBSTRING\fP
.RE
.IP "" 10
When \fBXmNlabelType\fP is \fBXmPIXMAP\fP or \fBXmPIXMAP_AND_STRING\fP,
the targets include \fBPIXMAP\fP\&.
.IP "\fB_MOTIF_COMPOUND_STRING\fP" 10
The widget transfers \fBXmNlabelString\fP as a compound string in Byte
Stream format\&.
This target is supported when \fBXmNlabelType\fP is \fBXmSTRING\fP or
\fBXmPIXMAP_AND_STRING\fP\&.
.IP "\fB_MOTIF_EXPORT_TARGETS\fP" 10
The widget transfers, as type \fBATOM\fP, a list of the targets to be
used as the value of the DragContext\&'s \fBXmNexportTargets\fP in a
drag-and-drop transfer\&.
When \fBXmNlabelType\fP is \fBXmSTRING\fP or \fBXmPIXMAP_AND_STRING\fP,
these include
\fB_MOTIF_COMPOUND_STRING\fP, \fBCOMPOUND_TEXT\fP, \fBUTF8_STRING\fP,
the encoding of the locale, \fBSTRING\fP, \fBTEXT\fP, \fBBACKGROUND\fP, and
\fBFOREGROUND\fP\&.
When \fBXmNlabelType\fP is \fBXmPIXMAP\fP or \fBXmPIXMAP_AND_STRING\fP,
these include \fBPIXMAP\fP, \fBBACKGROUND\fP, and \fBFOREGROUND\fP\&.
.PP
As a source of data, LabelGadget also supports the following standard
Motif targets:
.IP "\fBBACKGROUND\fP" 10
The widget transfers the parent\&'s \fBXmNbackground\fP as type
\fBPIXEL\fP\&.
.IP "\fBCLASS\fP" 10
The widget finds the first shell in the widget hierarchy that has a
\fBWM_CLASS\fP property and transfers the contents as text in the
current locale\&.
.IP "\fBCLIENT_WINDOW\fP" 10
The widget finds the first shell in the widget hierarchy and transfers
its window as type \fBWINDOW\fP\&.
.IP "\fBCOLORMAP\fP" 10
The widget transfers the parent\&'s \fBXmNcolormap\fP as type
\fBCOLORMAP\fP\&.
.IP "\fBFOREGROUND\fP" 10
The widget transfers the parent\&'s \fBXmNforeground\fP as type
\fBPIXEL\fP\&.
.IP "\fBNAME\fP" 10
The widget finds the first shell in the widget hierarchy that has a
\fBWM_NAME\fP property and transfers the contents as text in the current
locale\&.
.IP "\fBTARGETS\fP" 10
The widget transfers, as type \fBATOM\fP, a list of the targets it
supports\&.
These include the standard targets in this list\&.
When \fBXmNlabelType\fP is \fBXmSTRING\fP or \fBXmPIXMAP_AND_STRING\fP,
these also include
\fB_MOTIF_COMPOUND_STRING\fP, \fBCOMPOUND_TEXT\fP, \fBUTF8_STRING\fP,
the encoding of the locale, \fBSTRING\fP, and \fBTEXT\fP\&.
When \fBXmNlabelType\fP is \fBXmPIXMAP\fP or \fBXmPIXMAP_AND_STRING\fP,
these also include \fBPIXMAP\fP\&.
.IP "\fBTIMESTAMP\fP" 10
The widget transfers the timestamp used to acquire the selection as type
\fBINTEGER\fP\&.
.IP "\fB_MOTIF_RENDER_TABLE\fP" 10
The widget transfers \fBXmNrenderTable\fP if it exists, or else the
default text render table, as type \fBSTRING\fP\&.
.IP "\fB_MOTIF_ENCODING_REGISTRY\fP" 10
The widget transfers its encoding registry as type \fBSTRING\fP\&.
The value is a list of NULL separated items in the
form of tag encoding pairs\&.
This target symbolizes the transfer target for the
Motif Segment Encoding Registry\&.
Widgets and applications can use this Registry to register
text encoding formats for specified render table tags\&.
Applications access this Registry by calling
\fBXmRegisterSegmentEncoding\fP and \fBXmMapSegmentEncoding\fP\&.
.SS "Classes"
.PP
LabelGadget inherits behavior,
resources, and traits from \fBObject\fP, \fBRectObj\fP and \fBXmGadget\fP\&.
.PP
The class pointer is \fBxmLabelGadgetClass\fP\&.
.PP
The class name is \fBXmLabelGadget\fP\&.
.SS "New Resources"
.PP
The following table defines a set of widget resources used by the programmer
to specify data\&. The programmer can also set the resource values for the
inherited classes to set attributes for this widget\&. To reference a
resource by name or by class in a \fB\&.Xdefaults\fP file, remove the \fBXmN\fP or
\fBXmC\fP prefix and use the remaining letters\&. To specify one of the defined
values for a resource in a \fB\&.Xdefaults\fP file,
remove the \fBXm\fP prefix and use
the remaining letters (in either lowercase or uppercase, but include any
underscores between words)\&.
The codes in the access column indicate if the given resource can be
set at creation time (C),
set by using \fBXtSetValues\fP (S),
retrieved by using \fBXtGetValues\fP (G), or is not applicable (N/A)\&.
.PP
.TS
tab() box;
c s s s s
l| l| l| l| l.
\fBXmLabelGadget Resource Set\fP
\fBName\fP\fBClass\fP\fBType\fP\fBDefault\fP\fBAccess\fP
_____
XmNacceleratorXmCAcceleratorStringNULLCSG
_____
XmNacceleratorTextXmCAcceleratorTextXmStringNULLCSG
_____
XmNalignmentXmCAlignmentunsigned chardynamicCSG
_____
XmNfontListXmCFontListXmFontListdynamicCSG
_____
XmNlabelInsensitivePixmapXmCLabelInsensitivePixmapPixmapXmUNSPECIFIED_PIXMAPCSG
_____
XmNlabelPixmapXmCLabelPixmapPixmapXmUNSPECIFIED_PIXMAPCSG
_____
XmNlabelStringXmCXmStringXmStringdynamicCSG
_____
XmNlabelTypeXmCLabelTypeunsigned charXmSTRINGCSG
_____
XmNmarginBottomXmCMarginBottomDimension0CSG
_____
XmNmarginHeightXmCMarginHeightDimension2CSG
_____
XmNmarginLeftXmCMarginLeftDimension0CSG
_____
XmNmarginRightXmCMarginRightDimension0CSG
_____
XmNmarginTopXmCMarginTopDimension0CSG
_____
XmNmarginWidthXmCMarginWidthDimension2CSG
_____
XmNmnemonicXmCMnemonicKeySymNULLCSG
_____
XmNmnemonicCharSetXmCMnemonicCharSetStringdynamicCSG
_____
XmNpixmapPlacementXmCPixmapPlacementunsigned intXmPIXMAP_LEFTCSG
_____
XmNpixmapTextPaddingXmCSpaceDimension2CSG
_____
XmNrecomputeSizeXmCRecomputeSizeBooleanTrueCSG
_____
XmNrenderTableXmCRenderTableXmRenderTabledynamicCSG
_____
XmNstringDirectionXmCStringDirectionXmStringDirectiondynamicCSG
_____
.TE
.IP "\fBXmNaccelerator\fP" 10
Sets the accelerator on a button widget in a menu, which
activates a visible or invisible, but managed, button from the keyboard\&.
This resource is a string that describes a set of modifiers
and the key that may be used to select the button\&.
The format of this string
is identical to that used by the translations manager, with the exception
that only a single event may be specified and only \fBKeyPress\fP events are
allowed\&.
.IP "" 10
Accelerators for buttons are supported only for
PushButtonGadgets and ToggleButtonGadgets in Pulldown and Popup menus\&.
.IP "\fBXmNacceleratorText\fP" 10
Specifies the text displayed
for the accelerator\&.
The text is displayed
adjacent to the label string or pixmap\&. The direction of its layout depends on
the \fBXmNlayoutDirection\fP resource of the widget\&.
Accelerator text for buttons is displayed only for
PushButtonGadgets and ToggleButtonGadgets in Pulldown and Popup Menus\&.
.IP "\fBXmNalignment\fP" 10
Specifies the label alignment for text or pixmap\&.
.RS
.IP "\fBXmALIGNMENT_BEGINNING\fP (left alignment)" 10
Causes the left sides of
the lines of text to be vertically aligned with the
left edge of the gadget\&. For a pixmap, its left side is vertically
aligned with the left edge of the gadget\&.
.IP "\fBXmALIGNMENT_CENTER\fP (center alignment)" 10
Causes the centers of the
lines of text to be vertically aligned in the center
of the gadget\&. For a pixmap, its center is vertically aligned with the
center of the gadget\&.
.IP "\fBXmALIGNMENT_END\fP (right alignment)" 10
Causes the right sides of the
lines of text to be vertically aligned with the
right edge of the gadget\&. For a pixmap, its right side is
vertically aligned with the right edge of the gadget\&.
.RE
.IP "" 10
The preceding descriptions for text are correct when
\fBXmNlayoutDirection\fP is \fBXmLEFT_TO_RIGHT\fP\&. When that resource
is \fBXmRIGHT_TO_LEFT\fP, the descriptions for
\fBXmALIGNMENT_BEGINNING\fP and \fBXmALIGNMENT_END\fP are switched\&.
.IP "" 10
If the parent is a RowColumn whose \fBXmNisAligned\fP resource is True,
\fBXmNalignment\fP is forced to the same value as the RowColumn\&'s
\fBXmNentryAlignment\fP if the RowColumn\&'s \fBXmNrowColumnType\fP is
\fBXmWORK_AREA\fP or if the gadget is a subclass of \fBXmLabelGadget\fP\&.
Otherwise, the default is \fBXmALIGNMENT_CENTER\fP\&.
.IP "\fBXmNfontList\fP" 10
Specifies the font of the text used in the gadget\&. \fBXmNfontList\fP
is obsolete and exists for compatibility with previous releases\&. You
should now use \fBXmNrenderTable\fP instead of \fBXmNfontList\fP\&. If
both are specified, the render table will take precedence\&. If
\fBXmNfontList\fP is NULL at initialization, the parent hierarchy of
the widget is searched for an ancestor that is a subclass of the
\fBXmBulletinBoard\fP, \fBVendorShell\fP, or \fBXmMenuShell\fP widget
class\&. If such an ancestor is found, the font list is initialized to
the \fBXmNbuttonFontList\fP (for button gadget subclasses) or
\fBXmNlabelFontList\fP of the ancestor widget\&. If no such ancestor is
found, the default is implementation dependent\&. Refer to
\fBXmFontList\fP(3) for more information on the creation and
structure of a font list\&.
.IP "\fBXmNlabelInsensitivePixmap\fP" 10
Specifies a pixmap used as the button face if \fBXmNlabelType\fP is
\fBXmPIXMAP\fP or \fBXmPIXMAP_AND_STRING\fP and the button is
insensitive\&.
The default value, \fBXmUNSPECIFIED_PIXMAP\fP, displays an empty label\&.
.IP "\fBXmNlabelPixmap\fP" 10
Specifies the pixmap when \fBXmNlabelType\fP is
\fBXmPIXMAP\fP or \fBXmPIXMAP_AND_STRING\fP\&.
The default value, \fBXmUNSPECIFIED_PIXMAP\fP, displays an empty label\&.
.IP "\fBXmNlabelString\fP" 10
Specifies the compound string when \fBXmNlabelType\fP is \fBXmSTRING\fP or
\fBXmPIXMAP_AND_STRING\fP\&.
If the value of this resource is NULL, it is initialized to name of the
gadget converted to a compound string\&.
Refer to \fBXmString\fP(3)
for more information on the
creation and the structure of compound strings\&.
.IP "\fBXmNlabelType\fP" 10
Specifies the label type\&.
.RS
.IP "\fBXmSTRING\fP" 10
Text displays \fBXmNlabelString\fP
.IP "\fBXmPIXMAP\fP" 10
Icon data in pixmap displays \fBXmNlabelPixmap\fP or
\fBXmNlabelInsensitivePixmap\fP
\fBXmPIXMAP_AND_STRING\fP
Icon data in pixmap displays \fBXmNlabelPixmap\fP or
\fBXmNlabelInsensitivePixmap\fP and text displays \fBXmNlabelString\fP
.RE
.IP "\fBXmNmarginBottom\fP" 10
Specifies the amount of spacing between the bottom of the label text
and the top of the bottom margin specified by \fBXmNmarginHeight\fP\&.
This may be modified by LabelGadget\&'s subclasses\&.
For example, CascadeButtonGadget may increase this field to make room
for the cascade pixmap\&.
.IP "\fBXmNmarginHeight\fP" 10
Specifies an equal amount of spacing above the margin
defined by \fBXmNmarginTop\fP and below the margin defined by
\fBXmNmarginBottom\fP\&. \fBXmNmarginHeight\fP specifies the amount
of spacing between the top edge of the margin set by \fBXmNmarginTop\fP
and the bottom edge of the top shadow, and the amount of spacing between
the bottom edge of the margin specified by \fBXmNmarginBottom\fP and the
top edge of the bottom shadow\&.
.IP "\fBXmNmarginLeft\fP" 10
Specifies the amount of spacing
between the left edge of the label text and the right side of the left
margin (specified by \fBXmNmarginWidth\fP)\&.
This may be modified by LabelGadget\&'s subclasses\&.
For example, ToggleButtonGadget may increase this field to make room for
the toggle indicator and for spacing between the indicator and label\&.
Whether this actually applies to the left or right side of the label
depends on the value of
\fBXmNlayoutDirection\fP\&.
.IP "\fBXmNmarginRight\fP" 10
Specifies the amount of spacing
between the right edge of the label text and the left side of the right
margin (specified by \fBXmNmarginWidth\fP)\&.
This may be modified by LabelGadget\&'s subclasses\&.
For example, CascadeButtonGadget may increase this field to make room
for the cascade pixmap\&.
Whether this actually applies to the left or right side of the label
depends on the value of
\fBXmNlayoutDirection\fP\&.
.IP "\fBXmNmarginTop\fP" 10
Specifies the amount of spacing between the top of the label text and
the bottom of the top margin specified by \fBXmNmarginHeight\fP\&.
This may be modified by LabelGadget\&'s subclasses\&.
For example, CascadeButtonGadget may increase this field to make room
for the cascade pixmap\&.
.IP "\fBXmNmarginWidth\fP" 10
Specifies an equal amount of spacing to the left of the margin defined
by \fBXmNmarginLeft\fP and to the right of the margin defined by
\fBXmNmarginRight\fP\&. \fBXmNmarginWidth\fP specifies the amount
of spacing between the left edge of the margin set by \fBXmNmarginLeft\fP
and the right edge of the left shadow, and the amount of spacing between
the right edge of the margin specified by \fBXmNmarginRight\fP and the
left edge of the right shadow\&.
.IP "\fBXmNmnemonic\fP" 10
Provides the user with an alternate means of activating a button\&.
A button in a MenuBar, a Popup menu pane, or a Pulldown
menu pane can have a mnemonic\&.
.IP "" 10
This resource contains a keysym as listed in the X11 keysym table\&.
The first character in the label string that exactly matches
the mnemonic in the character set specified in
\fBXmNmnemonicCharSet\fP
is underlined when the button is displayed\&.
.IP "" 10
When a mnemonic has been specified, the user activates the button by
pressing the mnemonic key while the button is visible\&.
If the button is a CascadeButtonGadget in a MenuBar and the MenuBar does
not have the focus, the user must use the \fBMAlt\fP modifier while
pressing the mnemonic\&.
The user can activate the button by pressing either the shifted or the
unshifted mnemonic key\&.
.IP "\fBXmNmnemonicCharSet\fP" 10
Specifies the character set of the mnemonic for the label\&.
The default is \fBXmFONTLIST_DEFAULT_TAG\fP\&.
.IP "\fBXmNpixmapPlacement\fP" 10
The location of the pixmap with respect to the text label. This resource 
can take one of the following values: \fBXmPIXMAP_TOP\fP, \fBXmPIXMAP_BOTTOM\fP,
\fBXmPIXMAP_LEFT\fP, and \fBXmPIXMAP_RIGHT\fP. A type converter has been 
registered that converts the following strings: "top", "bottom", "left", and
"right".
.IP "\fBXmNpixmapTextPadding\fP" 10
The amount of space to be left between the pixmap and the label string.
.IP "\fBXmNrecomputeSize\fP" 10
Specifies a Boolean value that indicates whether the gadget
shrinks or expands to accommodate its contents (label string or
pixmap) as a result of an \fBXtSetValues\fP resource value that
would change the size of the gadget\&. If True, the gadget shrinks
or expands to exactly fit the label string or pixmap\&.
If False, the gadget never attempts to change size on its own\&.
.IP "\fBXmNrenderTable\fP" 10
Specifies the render table associated with the \fBlabelString\fP\&. If
this value is NULL at initialization, Label searches its parent
hierarchy for an ancestor that holds the \fBXmQTspecifyRenderTable\fP trait\&.
If such an ancestor is
found, Label initializes \fBXmNrenderTable\fP to the
\fBXmLABEL_RENDER_TABLE\fP value of the ancestor widget\&. Similarly, button
subclasses of Label initialize \fBXmNrenderTable\fP to the
\fBXmBUTTON_RENDER_TABLE\fP value of the ancestor widget\&. (Note that all
current subclasses of Label are button subclasses\&.) If no such
ancestor is found, the default is implementation dependent\&. If a font
list and a render table are both specified, the render table will take
precedence\&. Refer to \fBXmRenderTable\fP(3) for more information on
the creation and structure of a render table\&.
.IP "\fBXmNstringDirection\fP" 10
Is a synthetic resource for setting \fBXmNlayoutDirection\fP\&.
The values for this resource are \fBXmSTRING_DIRECTION_L_TO_R\fP and
\fBXmSTRING_DIRECTION_R_TO_L\fP\&. Refer to the
\fBXmNlayoutDirection\fP resource description\&. The
\fBXmNstringDirection\fP resource is obsoleted by
\fBXmNlayoutDirection\fP, but is kept here for backward compatibility\&.
.SS "Inherited Resources"
.PP
LabelGadget inherits behavior and resources from the
superclasses described in the following tables\&.
For a complete description of each resource, refer to the
reference page for that superclass\&.
.PP
.TS
tab() box;
c s s s s
l| l| l| l| l.
\fBXmGadget Resource Set\fP
\fBName\fP\fBClass\fP\fBType\fP\fBDefault\fP\fBAccess\fP
_____
XmNbackgroundXmCBackgroundPixeldynamicCSG
_____
XmNbackgroundPixmapXmCPixmapPixmapXmUNSPECIFIED_PIXMAPCSG
_____
XmNbottomShadowColorXmCBottomShadowColorPixeldynamicCSG
_____
XmNbottomShadowPixmapXmCBottomShadowPixmapPixmapdynamicCSG
_____
XmNhelpCallbackXmCCallbackXtCallbackListNULLC
_____
XmNforegroundXmCForegroundPixeldynamicCSG
_____
XmNhighlightColorXmCHighlightColorPixeldynamicCSG
_____
XmNhighlightOnEnterXmCHighlightOnEnterBooleanFalseCSG
_____
XmNhighlightPixmapXmCHighlightPixmapPixmapdynamicCSG
_____
XmNhighlightThicknessXmCHighlightThicknessDimension0CSG
_____
XmNlayoutDirectionXmNCLayoutDirectionXmDirectiondynamicCG
_____
XmNnavigationTypeXmCNavigationTypeXmNavigationTypeXmNONECSG
_____
XmNshadowThicknessXmCShadowThicknessDimension0CSG
_____
XmNtopShadowColorXmCTopShadowColorPixeldynamicCSG
_____
XmNtopShadowPixmapXmCTopShadowPixmapPixmapdynamicCSG
_____
XmNtraversalOnXmCTraversalOnBooleanFalseCSG
_____
XmNunitTypeXmCUnitTypeunsigned chardynamicCSG
_____
XmNuserDataXmCUserDataXtPointerNULLCSG
_____
.TE
.PP
.TS
tab() box;
c s s s s
l| l| l| l| l.
\fBRectObj Resource Set\fP
\fBName\fP\fBClass\fP\fBType\fP\fBDefault\fP\fBAccess\fP
_____
XmNancestorSensitiveXmCSensitiveBooleandynamicG
_____
XmNborderWidthXmCBorderWidthDimension0N/A
_____
XmNheightXmCHeightDimensiondynamicCSG
_____
XmNsensitiveXmCSensitiveBooleanTrueCSG
_____
XmNwidthXmCWidthDimensiondynamicCSG
_____
XmNxXmCPositionPosition0CSG
_____
XmNyXmCPositionPosition0CSG
_____
.TE
.PP
.TS
tab() box;
c s s s s
l| l| l| l| l.
\fBObject Resource Set\fP
\fBName\fP\fBClass\fP\fBType\fP\fBDefault\fP\fBAccess\fP
_____
XmNdestroyCallbackXmCCallbackXtCallbackListNULLC
_____
.TE
.SS "Behavior"
.PP
XmLabelGadget includes behavior from XmGadget\&.
Additional XmLabelGadget behavior is described in the following list:
.IP "\fB<Btn2Down>\fP:" 10
Drags the contents of a LabelGadget, identified when \fBBTransfer\fP is
pressed\&.
This action is undefined for LabelGadgets used in a menu system\&.
.IP "\fB<Key>\fP\fB<osfHelp>\fP:" 10
In a Popup or Pulldown MenuPane, unposts all menus in the menu hierarchy
and, when the shell\&'s keyboard focus policy is \fBXmEXPLICIT\fP,
restores keyboard focus to the widget that had the focus before the
menu system was entered\&.
Calls the callbacks for \fBXmNhelpCallback\fP if any exist\&.
If there are no help
callbacks for this widget, this action calls the help callbacks
for the nearest ancestor that has them\&.
.IP "\fB<key>\fP\fB<osfCancel>\fP:" 10
In a MenuBar, disarms the CascadeButton and the menu and, when the
shell\&'s keyboard focus policy is \fBXmEXPLICIT\fP, restores keyboard
focus to the widget that had the focus before the menu was entered\&.
.IP "" 10
In a toplevel Pulldown MenuPane from a MenuBar, unposts the menu,
disarms the MenuBar CascadeButton and the MenuBar, and, when the shell\&'s
keyboard focus policy is \fBXmEXPLICIT\fP, restores keyboard focus to
the widget that had the focus before the MenuBar was entered\&.
In other Pulldown MenuPanes, unposts the menu\&.
.IP "" 10
In a Popup MenuPane, unposts the menu and, when the shell\&'s keyboard
focus policy is \fBXmEXPLICIT\fP, restores keyboard focus to the widget
from which the menu was posted\&.
.IP "\fB<Key>\fP\fB<osfDown>\fP:" 10
If the current menu item has a submenu and is in a MenuBar, then this
action posts the submenu, disarms the current menu item, and arms
the submenu\&'s first traversable menu item\&.
.IP "" 10
If the current menu item is in a MenuPane, then this action disarms the
current menu item and arms the item below it\&. This action wraps within the
MenuPane\&. The direction of the wrapping depends on the
\fBXmNlayoutDirection\fP resource\&.
.IP "\fB<Key>\fP\fB<osfLeft>\fP:" 10
When the current menu item is in a MenuBar, then this action disarms the
current item and arms the MenuBar item to the left\&.
This action wraps within the MenuBar\&.
.IP "" 10
In MenuPanes, if the current menu item is not at the left edge of a MenuPane,
this action disarms the current item and arms the item to its left\&.
If the current menu item is at the left edge of a submenu attached to a
MenuBar item, then this action unposts the submenu and traverses to the
MenuBar item to the left, wrapping if necessary\&. If that MenuBar item
has a submenu, it posts the submenu and arms the first traversable
item in the submenu\&.
If the current menu item is at the left edge of a submenu not directly
attached to a MenuBar item, then this action unposts the current submenu only\&.
.IP "" 10
In Popup or Torn-off MenuPanes, when the current menu item is at the
left edge, this action wraps within the MenuPane\&. If the current menu
item is at the left edge of the MenuPane and not in the top row, this
action wraps to the rightmost menu item in the row above\&. If the current
menu item is in the upper, leftmost corner, this action wraps
to the tear-off control, if present, or else it wraps to the bottom,
rightmost menu item in the MenuPane\&.
The preceding description applies when the \fBXmNlayoutDirection\fP horizontal
direction is \fBXmLEFT_TO_RIGHT\fP\&. If the \fBXmNlayoutDirection\fP horizontal
direction is \fBXmRIGHT_TO_LEFT\fP, then the following applies\&.
.IP "" 10
If the current menu item is in a MenuBar, then this action disarms the
current item and arms the MenuBar item to the left\&.
This action wraps within the MenuBar\&.
.IP "" 10
In MenuPanes, if the current menu item is a CascadeButton, then this
action posts its associated submenu\&.
If the current menu item is not a CascadeButton and is not at the left
edge of a MenuPane, this action disarms the current item and arms the
item to its left, wrapping if necessary\&.
If the current menu item is not a CascadeButton and is at the left edge of a
submenu that is a descendent of a MenuBar, then this action unposts all
submenus and traverses to the MenuBar item to the left\&.
If that MenuBar item has a submenu, it posts the submenu and arms
the submenu\&'s first traversable item\&.
.IP "" 10
In Popup or Torn-off menus, if the current menu item is not a
CascadeButton and is at the left edge of a row (except the
bottom row), this action wraps to the rightmost menu item in the
row below\&. If the current menu item is not a CascadeButton and
is in the bottom, leftmost corner of a Popup or Pulldown MenuPane, this
action wraps to the tear-off control, if present, or else it wraps to
the top, rightmost menu item of the MenuPane\&.
.IP "\fB<Key>\fP\fB<osfRight>\fP:" 10
If the current menu item is in a MenuBar, then this action disarms the
current item and arms the MenuBar item to the right\&.
This action wraps within the MenuBar\&.
.IP "" 10
In MenuPanes, if the current menu item is a CascadeButton, then this
action posts its associated submenu\&.
If the current menu item is not a CascadeButton and is not at the right
edge of a MenuPane, this action disarms the current item and arms the
item to its right, wrapping if necessary\&.
If the current menu item is not a CascadeButton and is at the right edge of a
submenu that is a descendent of a MenuBar, then this action unposts all
submenus and traverses to the MenuBar item to the right\&.
If that MenuBar item has a submenu, it posts the submenu and arms
the submenu\&'s first traversable item\&.
.IP "" 10
In Popup or Torn-off menus, if the current menu item is not a
CascadeButton and is at the right edge of a row (except the
bottom row), this action wraps to the leftmost menu item in the
row below\&. If the current menu item is not a CascadeButton and
is in the bottom, rightmost corner of a Popup or Pulldown MenuPane, this
action wraps to the tear-off control, if present, or else it wraps to
the top, leftmost menu item of the MenuPane\&.
The preceding description applies when the \fBXmNlayoutDirection\fP horizontal
direction is \fBXmLEFT_TO_RIGHT\fP\&. If the \fBXmNlayoutDirection\fP horizontal
direction is \fBXmRIGHT_TO_LEFT\fP, then the following applies\&.
.IP "" 10
When the current menu item is in a MenuBar, then this action disarms the
current item and arms the MenuBar item to the right\&.
This action wraps within the MenuBar\&.
.IP "" 10
In MenuPanes, if the current menu item is not at the right edge of a MenuPane,
this action disarms the current item and arms the item to its right\&.
If the current menu item is at the right edge of a submenu attached to a
MenuBar item, then this action unposts the submenu and traverses to the
MenuBar item to the right, wrapping if necessary\&. If that MenuBar item
has a submenu, it posts the submenu and arms the first traversable
item in the submenu\&.
If the current menu item is at the right edge of a submenu not directly
attached to a MenuBar item, then this action unposts the current submenu only\&.
.IP "" 10
In Popup or Torn-off MenuPanes, when the current menu item is at the
right edge, this action wraps within the MenuPane\&. If the current menu
item is at the right edge of the MenuPane and not in the top row, this
action wraps to the leftmost menu item in the row above\&. If the current
menu item is in the upper, rightmost corner, this action wraps
to the tear-off control, if present, or else it wraps to the bottom,
leftmost menu item in the MenuPane\&.
.IP "\fB<Key>\fP\fB<osfUp>\fP:" 10
When the current menu item is in a MenuPane, then
this action disarms the current menu item and arms the item above it\&.
This action wraps within the MenuPane\&. The direction of the wrapping
depends on the \fBXmNlayoutDirection\fP resource\&.
.SS "Virtual Bindings"
.PP
The bindings for virtual keys are vendor specific\&.
For information about bindings for virtual buttons and keys, see \fBVirtualBindings\fP(3)\&.
.SH "RELATED"
.PP
\fBObject\fP(3), \fBRectObj\fP(3),
\fBXmCreateLabelGadget\fP(3),
\fBXmVaCreateLabelGadget\fP(3),
\fBXmVaCreateManagedLabelGadget\fP(3),
\fBXmFontListCreate\fP(3),
\fBXmStringCreate\fP(3),
\fBXmStringCreateLtoR\fP(3),
and \fBXmGadget\fP(3)\&.
...\" created by instant / docbook-to-man, Sun 22 Dec 1996, 20:25