2
...\" MenuSh.sgm /main/9 1996/09/08 20:54:09 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 "XmMenuShell" "library call"
51
\fBXmMenuShell\fP \(em The MenuShell widget class
53
.iX "widget class" "MenuShell"
57
#include <Xm/MenuShell\&.h>
61
The MenuShell widget is a custom OverrideShell widget\&. An OverrideShell
62
widget bypasses \fBmwm\fP when displaying itself\&. It is designed
63
specifically to contain Popup or Pulldown menu panes\&.
65
Most application writers never encounter this widget if they use the
66
menu-system convenience functions,
67
\fBXmCreatePopupMenu\fP or \fBXmCreatePulldown Menu\fP,
68
to create a Popup or Pulldown menu pane\&.
69
The convenience functions automatically create a MenuShell widget as the
70
parent of the menu pane\&. However, if the convenience functions are
71
not used, the application programmer must create
72
the required MenuShell\&. In this case, it is important to note that the
73
parent of the MenuShell depends on the type of menu system
76
If the MenuShell is for the top-level Popup menu pane, the MenuShell\&'s
77
parent must be the widget from which the Popup menu pane is popped up\&.
79
If the MenuShell is for a menu pane that is pulled down from a Popup or
80
another Pulldown menu pane, the MenuShell\&'s parent must be the Popup or
83
If the MenuShell is for a menu pane that is pulled down from a MenuBar,
84
the MenuShell\&'s parent must be the MenuBar\&.
86
If the MenuShell is for a Pulldown menu pane in an OptionMenu, the
87
MenuShell\&'s parent must be the OptionMenu\&'s parent\&.
89
Setting \fBXmNheight\fP, \fBXmNwidth\fP, or \fBXmNborderWidth\fP for
90
either a MenuShell or its child sets that resource to the same value
91
in both the parent and the child\&.
92
An application should always specify these resources for the child, not
95
For the managed child of a MenuShell, regardless of the value of
96
the shell\&'s \fBXmNallowShellResize\fP, setting \fBXmNx\fP or \fBXmNy\fP
97
sets the corresponding resource of the parent but does not change the
98
child\&'s position relative to the parent\&.
99
\fBXtGetValues\fP for the child\&'s \fBXmNx\fP or \fBXmNy\fP yields the
100
value of the corresponding resource in the parent\&.
101
The x and y-coordinates of the child\&'s upper left outside
102
corner relative to the parent\&'s upper left inside corner are both 0 (zero)
103
minus the value of \fBXmNborderWidth\fP\&.
105
MenuShell uses the \fBXmQTmenuSystem\fP trait and holds the
106
\fBXmQTspecifyRenderTable\fP trait\&.
109
MenuShell inherits behavior, resources, and traits from \fBCore\fP,
110
\fBComposite\fP, \fBShell\fP, and
111
\fBOverrideShell\fP\&.
113
The class pointer is \fBxmMenuShellWidgetClass\fP\&.
115
The class name is \fBXmMenuShell\fP\&.
118
MenuShell overrides the \fBXmNallowShellResize\fP resource in Shell\&.
119
The following table defines a set of widget resources used by the programmer
120
to specify data\&. The programmer can also set the resource values for the
121
inherited classes to set attributes for this widget\&. To reference a
122
resource by name or by class in a \fB\&.Xdefaults\fP file, remove the \fBXmN\fP or
123
\fBXmC\fP prefix and use the remaining letters\&. To specify one of the defined
124
values for a resource in a \fB\&.Xdefaults\fP file, remove the \fBXm\fP prefix and use
125
the remaining letters (in either lowercase or uppercase, but include any
126
underscores between words)\&.
127
The codes in the access column indicate if the given resource can be
128
set at creation time (C),
129
set by using \fBXtSetValues\fP (S),
130
retrieved by using \fBXtGetValues\fP (G), or is not applicable (N/A)\&.
136
\fBXmMenuShell Resource Set\fP
137
\fBName\fP\fBClass\fP\fBType\fP\fBDefault\fP\fBAccess\fP
139
XmNbuttonFontListXmCButtonFontListXmFontListdynamicCSG
141
XmNbuttonRenderTableXmCButtonRenderTableXmRenderTableNULLCSG
143
XmNdefaultFontListXmCDefaultFontListXmFontListdynamicCG
145
XmNlabelFontListXmCLabelFontListXmFontListdynamicCSG
147
XmNlabelRenderTableXmCLabelRenderTableXmRenderTableNULLCSG
149
XmNlayoutDirectionXmCLayoutDirectionXmDirectionXmLEFT_TO_RIGHTCG
151
XmNanimateXmCAnimateBooleanFalseCG
154
.IP "\fBXmNbuttonFontList\fP" 10
155
Specifies the font list used for button descendants\&. See the
156
\fBXmNbuttonRenderTable\fP resource\&.
157
.IP "\fBXmNbuttonRenderTable\fP" 10
158
Specifies the render table used for MenuShell\&'s button descendants\&.
159
If this value is NULL at initialization and if the value of
160
\fBXmNdefaultFontList\fP is not NULL, \fBXmNbuttonRenderTable\fP
161
is initialized to the value of \fBXmNdefaultFontList\fP\&. If
162
the value of \fBXmNdefaultFontList\fP is NULL, \fBXmNbuttonRenderTable\fP
163
is initialized by looking up the parent hierarchy of the widget for
164
an ancestor that holds the \fBXmQTspecifyRenderTable\fP trait\&.
165
If such an ancestor is found,
166
\fBXmNbuttonRenderTable\fP is initialized to the
167
\fBXmBUTTON_RENDER_TABLE\fP value
168
of the ancestor widget\&. If no such ancestor is found, the default
169
is implementation dependent\&.
171
\fBXmRenderTable\fP(3) for more information on the creation and structure
173
.IP "\fBXmNdefaultFontList\fP" 10
174
Specifies a default font list for MenuShell\&'s descendants\&.
175
This resource is obsolete and exists for compatibility with
176
earlier releases\&. It has been replaced by \fBXmNbuttonFontList\fP
177
and \fBXmNlabelFontList\fP\&.
178
.IP "\fBXmNlabelFontList\fP" 10
179
Specifies the font list used for label descendants\&. See the
180
\fBXmNlabelRenderTable\fP resource\&.
181
.IP "\fBXmNlabelRenderTable\fP" 10
182
Specifies the render table used for MenuShell\&'s label descendants
183
(Labels and LabelGadgets)\&. If this value is NULL at initialization
184
and if the value of \fBXmNdefaultFontList\fP is not NULL,
185
\fBXmNlabelRenderTable\fP is initialized to the value of
186
\fBXmNdefaultFontList\fP\&. If the value of \fBXmNdefaultFontList\fP is
187
NULL, the parent hierarchy of the widget is searched
188
for an ancestor that holds the \fBXmQTspecifyRenderTable\fP trait\&.
190
an ancestor is found, \fBXmNlabelRenderTable\fP is initialized to the
191
\fBXmLABEL_RENDER_TABLE\fP value of the ancestor widget\&. If no such ancestor
192
is found, the default is implementation dependent\&. Refer to
193
\fBXmRenderTable\fP(3) for more information on the creation and structure
195
.IP "\fBXmNlayoutDirection\fP" 10
196
Specifies the direction in which the subwidgets, children of a
197
widget, or other visual components are to be laid out\&. This policy
198
will apply as the default layout policy for all descendants of this
201
.IP "\fBXmNanimate\fP" 10
202
Controls whether menus will post in an animated fashion.
204
.SS "Inherited Resources"
206
MenuShell inherits behavior and resources from the
207
superclasses described in the following tables\&.
208
For a complete description of each resource, refer to the
209
reference page for that superclass\&.
210
The programmer can set the resource values for these
211
inherited classes to set attributes for this widget\&. To reference a
212
resource by name or by class in a \fB\&.Xdefaults\fP file, remove the \fBXmN\fP or
213
\fBXmC\fP prefix and use the remaining letters\&. To specify one of the defined
214
values for a resource in a \fB\&.Xdefaults\fP file, remove the \fBXm\fP prefix and use
215
the remaining letters (in either lowercase or uppercase, but include any
216
underscores between words)\&.
217
The codes in the access column indicate if the given resource can be
218
set at creation time (C),
219
set by using \fBXtSetValues\fP (S),
220
retrieved by using \fBXtGetValues\fP (G),
221
or is not applicable (N/A)\&.
227
\fBShell Resource Set\fP
228
\fBName\fP\fBClass\fP\fBType\fP\fBDefault\fP\fBAccess\fP
230
XmNallowShellResizeXmCAllowShellResizeBooleanTrueG
232
XmNcreatePopupChildProcXmCCreatePopupChildProcXtCreatePopupChildProcNULLCSG
234
XmNgeometryXmCGeometryStringNULLCSG
236
XmNoverrideRedirectXmCOverrideRedirectBooleanTrueCSG
238
XmNpopdownCallbackXmCCallbackXtCallbackListNULLC
240
XmNpopupCallbackXmCCallbackXtCallbackListNULLC
242
XmNsaveUnderXmCSaveUnderBooleanTrueCSG
244
XmNvisualXmCVisualVisual *CopyFromParentCSG
252
\fBComposite Resource Set\fP
253
\fBName\fP\fBClass\fP\fBType\fP\fBDefault\fP\fBAccess\fP
255
XmNchildrenXmCReadOnlyWidgetListNULLG
257
XmNinsertPositionXmCInsertPositionXtOrderProcNULLCSG
259
XmNnumChildrenXmCReadOnlyCardinal0G
267
\fBCore Resource Set\fP
268
\fBName\fP\fBClass\fP\fBType\fP\fBDefault\fP\fBAccess\fP
270
XmNacceleratorsXmCAcceleratorsXtAcceleratorsdynamicCSG
272
XmNancestorSensitiveXmCSensitiveBooleandynamicG
274
XmNbackgroundXmCBackgroundPixeldynamicCSG
276
XmNbackgroundPixmapXmCPixmapPixmapXmUNSPECIFIED_PIXMAPCSG
278
XmNborderColorXmCBorderColorPixelXtDefaultForegroundCSG
280
XmNborderPixmapXmCPixmapPixmapXmUNSPECIFIED_PIXMAPCSG
282
XmNborderWidthXmCBorderWidthDimension0CSG
284
XmNcolormapXmCColormapColormapdynamicCG
286
XmNdepthXmCDepthintdynamicCG
288
XmNdestroyCallbackXmCCallbackXtCallbackListNULLC
290
XmNheightXmCHeightDimensiondynamicCSG
292
XmNinitialResourcesPersistentXmCInitialResourcesPersistentBooleanTrueC
294
XmNmappedWhenManagedXmCMappedWhenManagedBooleanTrueCSG
296
XmNscreenXmCScreenScreen *dynamicCG
298
XmNsensitiveXmCSensitiveBooleanTrueCSG
300
XmNtranslationsXmCTranslationsXtTranslationsdynamicCSG
302
XmNwidthXmCWidthDimensiondynamicCSG
304
XmNxXmCPositionPosition0CSG
306
XmNyXmCPositionPosition0CSG
311
The XmMenuShell translations are described in the following list\&.
313
The following key names are listed in the
314
X standard key event translation table syntax\&.
315
This format is the one used by Motif to
316
specify the widget actions corresponding to a given key\&.
317
A brief overview of the format is provided under
318
\fBVirtualBindings\fP(3)\&.
319
For a complete description of the format, please refer to the
320
X Toolkit Instrinsics Documentation\&.
321
.IP "\fB<BtnDown>\fP:" 10
323
.IP "\fB<BtnUp>\fP:" 10
324
MenuShellPopdownDone()
325
.SS "Action Routines"
327
The \fBXmMenuShell\fP action routines are
328
.IP "ClearTraversal():" 10
329
Disables keyboard traversal for the menu, enables mouse traversal, and
330
unposts any menus posted by this menu\&.
331
.IP "MenuShellPopdownDone():" 10
332
Unposts the menu hierarchy and, when the shell\&'s keyboard focus policy is
334
restores focus to the widget that had
335
the focus before the menu system was entered\&.
336
.IP "MenuShellPopdownOne():" 10
337
In a top-level Pulldown MenuPane from a MenuBar, this action unposts the menu,
338
disarms the MenuBar CascadeButton and the MenuBar, and,
339
when the shell\&'s keyboard focus policy is
342
focus to the widget that had the focus before the MenuBar was
344
In other Pulldown MenuPanes, this action unposts the menu\&.
346
In a Popup MenuPane, this action unposts the menu, and,
347
when the shell\&'s keyboard focus policy is
349
restores keyboard focus to the
350
widget from which the menu was posted\&.
351
.SS "Virtual Bindings"
353
The bindings for virtual keys are vendor specific\&.
354
For information about bindings for virtual buttons and keys, see \fBVirtualBindings\fP(3)\&.
357
\fBComposite\fP(3), \fBCore\fP(3), \fBOverrideShell\fP(3), \fBShell\fP(3),
358
\fBXmCreateMenuShell\fP(3),
359
\fBXmCreatePopupMenu\fP(3), \fBXmCreatePulldownMenu\fP(3), and
360
\fBXmRowColumn\fP(3)\&.
361
...\" created by instant / docbook-to-man, Sun 22 Dec 1996, 20:27