]]>]]>DtMenuButton
library callDtMenuButtonthe MenuButton widget class
#include <Dt/MenuButton.h>
DESCRIPTION
The DtMenuButton widget is a command widget that complements the menu
cascading functionality of an XmCascadeButton widget. As a complement to the
XmCascadeButton widget, DtMenuButton can only be instantiated outside a MenuPane;
the application must use XmCascadeButton widget inside a MenuPane.
The DtMenuButton widget belongs to a subclass of the XmLabel class.
Visually, the DtMenuButton widget consists of a label string and a menu glyph.
The menu glyph always appears on the right end of the widget and, by default,
is a downward pointing arrow.
The DtMenuButton widget has an implicitly created submenu attached to
it. The submenu is a popup MenuPane and has this DtMenuButton
widget as its parent. The name of the implicitly created submenu is obtained
by adding submenu_ as a prefix to the name of this DtMenuButton
widget. The widget ID of the submenu can be obtained by doing an XtGetValues on the DtNsubMenuId
resource of this DtMenuButton widget. The implicitly created submenu must
not be destroyed by the user of this widget.
The submenu can be popped up by pressing the menu post Button (see the XmNmenuPost resource of the anywhere on the DtMenuButton widget.
Widget subclassing is not supported for the DtMenuButton widget class.
Classes
The DtMenuButton widget inherits behavior and resources from the Core, Composite, XmPrimitive and XmLabel classes.
The class pointer is dtMenuButtonWidgetClass.
The class name is DtMenuButtonWidget.
New Resources
The following table defines a set of widget resources used by the application
to specify data. The application 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, the application
must remove the DtN or DtC prefix and
use the remaining letters. To specify one of the defined values for a resource
in a .Xdefaults file, the application must remove the Dt prefix and use the remaining letters (in either lower case or
upper case, but including 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).
DtMenuButton Resource
Set
Name
Class
Type
Default
Access
DtNcascadingCallback
DtCCallback
XtCallbackList
NULL
C
DtNcascadePixmap
DtCPixmap
Pixmap
XmUNSPECIFIED_PIXMAP
CSG
DtNsubMenuId
DtCMenuWidget
Widget
NULL
SG
DtNcascadingCallback
Specifies the list of callbacks that is called before the popping up
of the attached submenu. The reason for the callback is DtCR_CASCADING.
DtNcascadePixmap
Specifies the pixmap displayed as the menu glyph. If no pixmap is specified,
a downward pointing arrow is displayed.
DtNsubMenuId
Specifies the widget ID of the popup MenuPane to be associated with
this DtMenuButton widget. The popup MenuPane must be created with this DtMenuButton
as its parent. This resource cannot be specified at the time of widget creation.
The implicit submenu is automatically destroyed by DtMenuButton when this
resource is set.
Inherited Resources
The DtMenuButton widget inherits behavior and resources from the following
named superclasses. For a complete description of each resource, see the for that superclass.
XmLabel Resource
Set
Name
Class
Type
Default
Access
XmNaccelerator
XmCAccelerator
String
NULL
CSG
XmNacceleratorText
XmCAcceleratorText
XmString
NULL
CSG
XmNalignment
XmCAlignment
unsigned char
dynamic
CSG
XmNfontList
XmCFontList
XmFontList
dynamic
CSG
XmNlabelInsensitivePixmap
XmCLabelInsensitivePixmap
Pixmap
XmUNSPECIFIED_PIXMAP
CSG
XmNlabelPixmap
XmCLabelPixmap
Pixmap
XmUNSPECIFIED_PIXMAP
CSG
XmNlabelString
XmCXmString
XmString
dynamic
CSG
XmNlabelType
XmCLabelType
unsigned char
XmSTRING
CSG
XmNmarginBottom
XmCMarginBottom
Dimension
0
CSG
XmNmarginHeight
XmCMarginHeight
Dimension
2
CSG
XmNmarginLeft
XmCMarginLeft
Dimension
0
CSG
XmNmarginRight
XmCMarginRight
Dimension
0
CSG
XmNmarginTop
XmCMarginTop
Dimension
0
CSG
XmNmarginWidth
XmCMarginWidth
Dimension
2
CSG
XmNmnemonic
XmCMnemonic
KeySym
NULL
CSG
XmNmnemonicCharSet
XmCMnemonicCharSet
String
XmFONTLIST-_DEFAULT_TAG
CSG
XmNrecomputeSize
XmCRecomputeSize
Boolean
True
CSG
XmNstringDirection
XmCStringDirection
XmStringDirection
dynamic
CSG
XmPrimitive Resource
Set
Name
Class
Type
Default
Access
XmNbottomShadowColor
XmCBottomShadowColor
Pixel
dynamic
CSG
XmNbottomShadowPixmap
XmCBottomShadowPixmap
Pixmap
XmUNSPECIFIED_PIXMAP
CSG
XmNforeground
XmCForeground
Pixel
dynamic
CSG
XmNhelpCallback
XmCCallback
XtCallbackList
NULL
C
XmNhighlightColor
XmCHighlightColor
Pixel
dynamic
CSG
XmNhighlightOnEnter
XmCHighlightOnEnter
Boolean
False
CSG
XmNhighlightPixmap
XmCHighlightPixmap
Pixmap
dynamic
CSG
XmNhighlightThickness
XmCHighlightThickness
Dimension
0
CSG
XmNnavigationType
XmCNavigationType
XmNavigationType
XmNONE
CSG
XmNshadowThickness
XmCShadowThickness
Dimension
0
CSG
XmNtopShadowColor
XmCTopShadowColor
Pixel
dynamic
CSG
XmNtopShadowPixmap
XmCTopShadowPixmap
Pixmap
dynamic
CSG
XmNtraversalOn
XmCTraversalOn
Boolean
False
CSG
XmNunitType
XmCUnitType
unsigned char
dynamic
CSG
XmNuserData
XmCUserData
XtPointer
NULL
CSG
Core Resource Set
Name
Class
Type
Default
Access
XmNaccelerators
XmCAccelerators
XtAccelerators
dynamic
CSG
XmNancestorSensitive
XmCSensitive
Boolean
dynamic
G
XmNbackground
XmCBackground
Pixel
dynamic
CSG
XmNbackgroundPixmap
XmCPixmap
Pixmap
XmUNSPECIFIED_PIXMAP
CSG
XmNborderColor
XmCBorderColor
Pixel
XtDefaultForeground
CSG
XmNborderPixmap
XmCPixmap
Pixmap
XmUNSPECIFIED_PIXMAP
CSG
XmNborderWidth
XmCBorderWidth
Dimension
0
CSG
XmNcolormap
XmCColormap
Colormap
dynamic
CG
XmNdepth
XmCDepth
int
dynamic
CG
XmNdestroyCallback
XmCCallback
XtCallbackList
NULL
C
XmNheight
XmCHeight
Dimension
dynamic
CSG
XmNinitialResourcesPersistent
XmCInitialResourcesPersistent
Boolean
True
C
XmNmappedWhenManaged
XmCMappedWhenManaged
Boolean
True
CSG
XmNscreen
XmCScreen
Screen *
dynamic
CG
XmNsensitive
XmCSensitive
Boolean
True
CSG
XmNtranslations
XmCTranslations
XtTranslations
dynamic
CSG
XmNwidth
XmCWidth
Dimension
dynamic
CSG
XmNx
XmCPosition
Position
0
CSG
XmNy
XmCPosition
Position
0
CSG
Callback Information
A pointer to the following structure is passed to each DtMenuButton
callback:
typedef struct {
int reason;
XEvent *event;
} XmAnyCallbackStruct;
The reason argument indicates why the
callback was invoked; it is always DtCR_CASCADING when the DtNcascadingCallback
is issued.
The event argument points to the XEvent that triggered the callback or NULL if the callback was not triggered by an XEvent.
SEE ALSO&cdeman.DtCreateMenuButton;, &cdeman.Core;, &cdeman.XmLabel;, &cdeman.XmPrimitive;, &cdeman.XmRowColumn;, XtGetValues(3), XtSetValues(3).
]]>&cdeman.DtCreateMenuButton;; Core, XmLabel, XmPrimitive, XmRowColumn, in the &str-ZM;; XtGetValues, XtSetValues in the &str-Zt;.]]>