Manual Page Result
0
Command: XmMenuShell | Section: 3 | Source: Digital UNIX | File: XmMenuShell.3X.gz
XmMenuShell(3X) XmMenuShell(3X)
NAME
XmMenuShell - The MenuShell widget class
SYNOPSIS
#include <Xm/MenuShell.h>
DESCRIPTION
The MenuShell widget is a custom OverrideShell widget. An Over-
rideShell widget bypasses mwm when displaying itself. It is designed
specifically to contain Popup or Pulldown MenuPanes.
Most application writers never encounter this widget if they use the
menu-system convenience functions, XmCreatePopupMenu or XmCreatePull-
downMenu, to create a Popup or Pulldown MenuPane. The convenience func-
tions automatically create a MenuShell widget as the parent of the
MenuPane. However, if the convenience functions are not used, the ap-
plication programmer must create the required MenuShell. In this case,
it is important to note that the parent of the MenuShell depends on the
type of menu system being built. If the MenuShell is for the top-level
Popup MenuPane, the MenuShell's parent must be the widget from which
the Popup MenuPane is popped up. If the MenuShell is for a MenuPane
that is pulled down from a Popup or another Pulldown MenuPane, the
MenuShell's parent must be the Popup or Pulldown MenuPane. If the
MenuShell is for a MenuPane that is pulled down from a MenuBar, the
MenuShell's parent must be the MenuBar. If the MenuShell is for a
Pulldown MenuPane in an OptionMenu, the MenuShell's parent must be the
OptionMenu's parent.
Setting XmNheight, XmNwidth, or XmNborderWidth for either a MenuShell
or its child sets that resource to the same value in both the parent
and the child. An application should always specify these resources for
the child, not the parent.
For the managed child of a MenuShell, regardless of the value of the
shell's XmNallowShellResize, setting XmNx or XmNy sets the correspond-
ing resource of the parent but does not change the child's position
relative to the parent. XtGetValues for the child's XmNx or XmNy yields
the value of the corresponding resource in the parent. The x and y co-
ordinates of the child's upper left outside corner relative to the par-
ent's upper left inside corner are both zero minus the value of XmNbor-
derWidth.
Classes
MenuShell inherits behavior and resources from Core, Composite, Shell,
and OverrideShell classes.
The class pointer is xmMenuShellWidgetClass.
The class name is XmMenuShell.
New Resources
MenuShell overrides the XmNallowShellResize resource in Shell. The fol-
lowing 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 .Xdefaults file, remove the XmN or
XmC prefix and use the remaining letters. To specify one of the defined
values for a resource in a .Xdefaults file, remove the Xm prefix and
use the remaining letters (in either lowercase or uppercase, but in-
clude 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 XtSetValues (S), retrieved by using XtGetValues (G), or is not
applicable (N/A).
XmMenuShell Resource Set
Class: XmCButtonFontList Default: dynamic Type: XmFontList Access: CSG
Class: XmCDefaultFontList Default: dynamic Type: XmFontList Access: CG
Class: XmCLabelFontList Default: dynamic Type: XmFontList Access: CSG
Specifies the font list used for MenuShell's button descendants.
If this value is NULL at initialization and if the value of XmN-
defaultFontList is not NULL, XmNbuttonFontList is initialized to
the value of XmNdefaultFontList. If the value of XmNdefault-
FontList is NULL, XmNbuttonFontList is initialized by looking up
the parent hierarchy of the widget for an ancestor that is a
subclass of the XmBulletinBoard, VendorShell, or XmMenuShell
widget class. If such an ancestor is found, XmNbuttonFontList
is initialized to the XmNbuttonFontList of the ancestor widget.
If no such ancestor is found, the default is implementation de-
pendent. Specifies a default font list for MenuShell's descen-
dants. This resource is obsolete and exists for compatibility
with earlier releases. It has been replaced by XmNbutton-
FontList and XmNlabelFontList. Specifies the font list used for
MenuShell's label descendants (Labels and LabelGadgets). If
this value is NULL at initialization and if the value of XmNde-
faultFontList is not NULL, XmNlabelFontList is initialized to
the value of XmNdefaultFontList. If the value of XmNdefault-
FontList is NULL, XmNlabelFontList is initialized by looking up
the parent hierarchy of the widget for an ancestor that is a
subclass of the XmBulletinBoard, VendorShell, or XmMenuShell
widget class. If such an ancestor is found, XmNlabelFontList is
initialized to the XmNlabelFontList of the ancestor widget. If
no such ancestor is found, the default is implementation depen-
dent.
Inherited Resources
MenuShell inherits behavior and resources from the following super-
classes. For a complete description of each resource, refer to the man
page for that superclass. The following tables define a set of widget
resources used by the programmer to specify data. The programmer can
set the resource values for these inherited classes to set attributes
for this widget. To reference a resource by name or by class in a
.Xdefaults file, remove the XmN or XmC prefix and use the remaining
letters. To specify one of the defined values for a resource in a
.Xdefaults file, remove the Xm 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 XtSetValues (S), re-
trieved by using XtGetValues (G), or is not applicable (N/A).
Shell Resource Set
Class: XmCAllowShellResize Default: True Type: Boolean Access: G
Class: XmCCreatePopupChildProc Default: NULL Type: XtCreatePopupChild-
Proc Access: CSG Class: XmCGeometry Default: NULL Type: String Access:
CSG Class: XmCOverrideRedirect Default: True Type: Boolean Access: CSG
Class: XmCCallback Default: NULL Type: XtCallbackList Access: C Class:
XmCCallback Default: NULL Type: XtCallbackList Access: C Class: XmC-
SaveUnder Default: True Type: Boolean Access: CSG Class: XmCVisual De-
fault: CopyFromParent Type: Visual * Access: CSG
Composite Resource Set
Class: XmCReadOnly Default: NULL Type: WidgetList Access: G Class: Xm-
CInsertPosition Default: NULL Type: XtOrderProc Access: CSG Class: Xm-
CReadOnly Default: 0 Type: Cardinal Access: G
Core Resource Set
Class: XmCAccelerators Default: dynamic Type: XtAccelerators Access:
CSG Class: XmCSensitive Default: dynamic Type: Boolean Access: G
Class: XmCBackground Default: dynamic Type: Pixel Access: CSG Class:
XmCPixmap Default: XmUNSPECIFIED_PIXMAP Type: Pixmap Access: CSG
Class: XmCBorderColor Default: XtDefaultForeground Type: Pixel Access:
CSG Class: XmCPixmap Default: XmUNSPECIFIED_PIXMAP Type: Pixmap Ac-
cess: CSG Class: XmCBorderWidth Default: 1 Type: Dimension Access: CSG
Class: XmCColormap Default: dynamic Type: Colormap Access: CG Class:
XmCDepth Default: dynamic Type: int Access: CG Class: XmCCallback De-
fault: NULL Type: XtCallbackList Access: C Class: XmCHeight Default:
dynamic Type: Dimension Access: CSG Class: XmCInitialResourcesPersis-
tent Default: True Type: Boolean Access: C Class: XmCMappedWhenManaged
Default: True Type: Boolean Access: CSG Class: XmCScreen Default: dy-
namic Type: Screen * Access: CG Class: XmCSensitive Default: True
Type: Boolean Access: CSG Class: XmCTranslations Default: dynamic
Type: XtTranslations Access: CSG Class: XmCWidth Default: dynamic
Type: Dimension Access: CSG Class: XmCPosition Default: 0 Type: Posi-
tion Access: CSG Class: XmCPosition Default: 0 Type: Position Access:
CSG
Translations
The XmMenuShell translations are listed below. These translations may
not directly correspond to a translation table.
BSelect Press: ClearTraversal() BSelect Release:MenuShellPopdownDone()
Action Routines
The XmMenuShell action routines are described below: Disables keyboard
traversal for the menu, enables mouse traversal, and unposts any menus
posted by this menu. Unposts the menu hierarchy and, when the shell's
keyboard focus policy is XmEXPLICIT, restores focus to the widget that
had the focus before the menu system was entered. In a toplevel Pull-
down MenuPane from a MenuBar, unposts the menu, disarms the MenuBar
CascadeButton and the MenuBar, and, when the shell's keyboard focus
policy is XmEXPLICT, restores keyboard focus to the widget that had the
focus before the MenuBar was entered. In other Pulldown MenuPanes, un-
posts the menu. In a Popup MenuPane, unposts the menu, and, when the
shell's keyboard focus policy is XmEXPLICT, restores keyboard focus to
the widget from which the menu was posted.
Virtual Bindings
The bindings for virtual keys are vendor specific. For information
about bindings for virtual buttons and keys, see VirtualBindings(3X).
SEE ALSO
Composite(3X), Core(3X), OverrideShell(3X), Shell(3X), XmCreate-
MenuShell(3X), XmCreatePopupMenu(3X), XmCreatePulldownMenu(3X), XmRow-
Column(3X)
XmMenuShell(3X)