Blame doc/man/man3/XmRowColumn.3

Packit b099d7
'\" t
Packit b099d7
...\" RowCol.sgm /main/11 1996/09/08 20:59:24 rws $
Packit b099d7
.de P!
Packit b099d7
.fl
Packit b099d7
\!!1 setgray
Packit b099d7
.fl
Packit b099d7
\\&.\"
Packit b099d7
.fl
Packit b099d7
\!!0 setgray
Packit b099d7
.fl			\" force out current output buffer
Packit b099d7
\!!save /psv exch def currentpoint translate 0 0 moveto
Packit b099d7
\!!/showpage{}def
Packit b099d7
.fl			\" prolog
Packit b099d7
.sy sed -e 's/^/!/' \\$1\" bring in postscript file
Packit b099d7
\!!psv restore
Packit b099d7
.
Packit b099d7
.de pF
Packit b099d7
.ie     ?\\*(f1?? .ds f1 \\n(.f
Packit b099d7
.el .ie ?\\*(f2?? .ds f2 \\n(.f
Packit b099d7
.el .ie ?\\*(f3?? .ds f3 \\n(.f
Packit b099d7
.el .ie ?\\*(f4?? .ds f4 \\n(.f
Packit b099d7
.el .tm ? font overflow
Packit b099d7
.ft \\$1
Packit b099d7
..
Packit b099d7
.de fP
Packit b099d7
.ie     !?\\*(f4?? \{\
Packit b099d7
.	ft \\*(f4
Packit b099d7
.	ds f4\"
Packit b099d7
'	br \}
Packit b099d7
.el .ie !?\\*(f3?? \{\
Packit b099d7
.	ft \\*(f3
Packit b099d7
.	ds f3\"
Packit b099d7
'	br \}
Packit b099d7
.el .ie !?\\*(f2?? \{\
Packit b099d7
.	ft \\*(f2
Packit b099d7
.	ds f2\"
Packit b099d7
'	br \}
Packit b099d7
.el .ie !?\\*(f1?? \{\
Packit b099d7
.	ft \\*(f1
Packit b099d7
.	ds f1\"
Packit b099d7
'	br \}
Packit b099d7
.el .tm ? font underflow
Packit b099d7
..
Packit b099d7
.ds f1\"
Packit b099d7
.ds f2\"
Packit b099d7
.ds f3\"
Packit b099d7
.ds f4\"
Packit b099d7
.ta 8n 16n 24n 32n 40n 48n 56n 64n 72n 
Packit b099d7
.TH "XmRowColumn" "library call"
Packit b099d7
.SH "NAME"
Packit b099d7
\fBXmRowColumn\fP \(em The RowColumn widget class
Packit b099d7
.iX "XmRowColumn"
Packit b099d7
.iX "widget class" "RowColumn"
Packit b099d7
.SH "SYNOPSIS"
Packit b099d7
.PP
Packit b099d7
.nf
Packit b099d7
#include <Xm/RowColumn\&.h>
Packit b099d7
.fi
Packit b099d7
.SH "DESCRIPTION"
Packit b099d7
.PP
Packit b099d7
The RowColumn widget is a general purpose RowColumn manager capable
Packit b099d7
of containing any widget type as a child\&.
Packit b099d7
In general, it requires no special
Packit b099d7
knowledge about how its children function and provides nothing
Packit b099d7
beyond support for several different layout styles\&. However, it can be
Packit b099d7
configured as a menu, in which case, it expects only certain children, and
Packit b099d7
it configures to a particular layout\&. The menus supported are MenuBar,
Packit b099d7
Pulldown or Popup menu panes, and OptionMenu\&.
Packit b099d7
RowColumn uses the \fBXmQTmenuSavvy\fP trait and holds the
Packit b099d7
\fBXmQTmenuSystem\fP trait\&.
Packit b099d7
.PP
Packit b099d7
The type of layout performed is controlled by how the application has set
Packit b099d7
the various layout resources\&.
Packit b099d7
It can be configured to lay out its children in either rows or
Packit b099d7
columns\&. In addition, the application can specify how the children are
Packit b099d7
laid out, as follows:
Packit b099d7
.IP "   \(bu" 6
Packit b099d7
The children are packed tightly together into either rows or columns
Packit b099d7
.IP "   \(bu" 6
Packit b099d7
Each child is placed in an identically sized
Packit b099d7
box (producing a symmetrical look)
Packit b099d7
.IP "   \(bu" 6
Packit b099d7
A specific layout (the current \fIx\fP and \fIy\fP positions of the children
Packit b099d7
control their location)
Packit b099d7
.PP
Packit b099d7
In addition, the application has control over both the spacing that
Packit b099d7
occurs between each row and column and the margin spacing
Packit b099d7
present between the edges of the RowColumn widget and any children
Packit b099d7
that are placed against it\&.
Packit b099d7
.PP
Packit b099d7
The default \fBXmNinsertPosition\fP procedure for the RowColumn
Packit b099d7
returns the value of \fBXmNpositionIndex\fP if one has been specified
Packit b099d7
for the child\&. Otherwise, this procedure returns the number of
Packit b099d7
children in the RowColumn\&'s \fBXmNnumChildren\fP list\&.
Packit b099d7
In a MenuBar, Pulldown menu pane, or Popup menu pane the default for the
Packit b099d7
\fBXmNshadowThickness\fP resource is 2\&.
Packit b099d7
In an OptionMenu or a WorkArea, (such as a RadioBox or CheckBox) this
Packit b099d7
resource is not applicable and its use is undefined\&.
Packit b099d7
If an application wishes to place a 3-D shadow around an OptionMenu or
Packit b099d7
WorkArea, it can create the RowColumn as a child of a Frame widget\&.
Packit b099d7
.PP
Packit b099d7
In a MenuBar, Pulldown menu pane, or Popup menu pane the
Packit b099d7
\fBXmNnavigationType\fP resource is not applicable and its use is
Packit b099d7
undefined\&.
Packit b099d7
In a WorkArea, the default for \fBXmNnavigationType\fP is
Packit b099d7
\fBXmTAB_GROUP\fP\&.
Packit b099d7
In an OptionMenu the default for \fBXmNnavigationType\fP is
Packit b099d7
\fBXmNONE\fP\&.
Packit b099d7
.PP
Packit b099d7
In a MenuBar, Pulldown menu pane, or Popup menu pane the
Packit b099d7
\fBXmNtraversalOn\fP resource is not applicable and its use is
Packit b099d7
undefined\&.
Packit b099d7
In an OptionMenu or WorkArea, the default for \fBXmNtraversalOn\fP is
Packit b099d7
True\&.
Packit b099d7
.PP
Packit b099d7
If the parent of the RowColumn is a MenuShell, the
Packit b099d7
\fBXmNmappedWhenManaged\fP resource is forced to False when the widget
Packit b099d7
is realized\&.
Packit b099d7
.PP
Packit b099d7
The user can specify resources in a resource file for the automatically
Packit b099d7
created widgets and gadgets of an OptionMenu\&. The following list
Packit b099d7
identifies the names of these widgets (or gadgets) and the associated
Packit b099d7
OptionMenu areas\&.
Packit b099d7
.IP "Option Menu Label Gadget" 10
Packit b099d7
\fBOptionLabel\fP
Packit b099d7
.IP "Option Menu Cascade Button" 10
Packit b099d7
\fBOptionButton\fP
Packit b099d7
.PP
Packit b099d7
For the Popup and Pulldown Menupanes, popup and pulldown menus have
Packit b099d7
particular behaviors when the
Packit b099d7
\fB<Btn1>\fP button is pressed outside the menus\&. These behaviors
Packit b099d7
are summarized here\&.
Packit b099d7
.PP
Packit b099d7
When there is already a popped up menu, a user can either press
Packit b099d7
\fB<Btn1>\fP in the same area as the
Packit b099d7
popped up menu, or can press \fB<Btn1>\fP in another area that should
Packit b099d7
have a menu popped up\&. When \fB<Btn1>\fP is pressed in the same
Packit b099d7
area as the already popped up menu, that menu is unposted\&.
Packit b099d7
If \fB<Btn1>\fP is pressed in a different area,
Packit b099d7
the associated popup menu is posted for the new area\&. Note, however,
Packit b099d7
that if the
Packit b099d7
\fBXmNpopupHandlerCallback\fP of either \fBXmManager\fP or
Packit b099d7
\fBXmPrimitive\fP is available, then the callback may override these
Packit b099d7
default behaviors\&.
Packit b099d7
.PP
Packit b099d7
For pulldown menus, a user can press \fB<Btn1>\fP on the
Packit b099d7
Cascade button to post the pulldown menu, then click on it again\&. Upon the
Packit b099d7
second click, the pulldown menu is unposted\&.
Packit b099d7
.PP
Packit b099d7
Popup menus are not allowed to have NULL parents\&.
Packit b099d7
.SS "Tear-off Menus"
Packit b099d7
.PP
Packit b099d7
Pulldown and Popup menu panes support tear-off menus, which enable the
Packit b099d7
user to retain a menu pane on the display to facilitate subsequent
Packit b099d7
menu selections\&. A menu pane that can be torn-off is identified by
Packit b099d7
a tear-off button that spans the width of the menu pane and displays
Packit b099d7
a dashed line\&. A torn-off menu pane contains a window manager system
Packit b099d7
menu icon and a title bar\&. The window title displays the label of the
Packit b099d7
cascade button that initiated the action when the label type is
Packit b099d7
\fBXmSTRING\fP\&. If the label contains a pixmap the window title is
Packit b099d7
empty\&. A tear-off menu from a Popup menu pane also displays
Packit b099d7
an empty title\&.
Packit b099d7
Tear-off menus should not be shared\&.
Packit b099d7
.PP
Packit b099d7
The user can tear off a menu pane using the mouse or keyboard\&.
Packit b099d7
Clicking \fB<Btn1>\fP or pressing \fB<osfActivate>\fP (or \fB<osfSelect>\fP)
Packit b099d7
on the tear-off button, tears off the menu pane at the current
Packit b099d7
position\&. Pressing \fB<Btn2>\fP on the tear-off button tears off the
Packit b099d7
menu pane and allows the user to drag the torn-off menu to a new
Packit b099d7
position designated by releasing the mouse button\&. Tearing off a
Packit b099d7
menu pane unposts the current active menu\&. Only one tear-off copy
Packit b099d7
for each menu pane is allowed\&. Subsequent tear-off actions of a
Packit b099d7
torn menu pane unpost the existing copy first\&.
Packit b099d7
.PP
Packit b099d7
The name of the tear-off button of a torn-off menu pane is
Packit b099d7
\fBTearOffControl\fP\&. The name can be used to set resources in a resource
Packit b099d7
file\&. An application can also obtain the tear-off button itself using
Packit b099d7
\fBXmGetTearOffControl\fP and then set resource values by calling
Packit b099d7
\fBXtSetValues\fP\&.
Packit b099d7
.PP
Packit b099d7
The tear-off button has Separator-like behavior\&. Its appearance can be
Packit b099d7
specified with the following tear-off button resources:
Packit b099d7
\fBXmNbackground\fP, \fBXmNbackgroundPixmap\fP,
Packit b099d7
\fBXmNbottomShadowColor\fP, \fBXmNforeground\fP, \fBXmNheight\fP,
Packit b099d7
\fBXmNmargin\fP, \fBXmNseparatorType\fP, \fBXmNshadowThickness\fP, and
Packit b099d7
\fBXmNtopShadowColor\fP\&. Refer to the \fBXmSeparator\fP reference
Packit b099d7
page for a complete description of each of these resources\&.
Packit b099d7
.PP
Packit b099d7
The \fBXmNtearOffModel\fP, \fBXmNtearOffMenuActivateCallback\fP, and
Packit b099d7
\fBXmNtearOffMenuDeactivateCallback\fP
Packit b099d7
are RowColumn resources that affect tear-off menu behavior\&.
Packit b099d7
The \fBXmNtearOffTitle\fP resource enables the application to specify
Packit b099d7
the tear-off menu\&'s title if the menu is torn off\&.
Packit b099d7
.PP
Packit b099d7
By default, menus do not tear off\&. Setting the
Packit b099d7
\fBXmNtearOffModel\fP resource to \fBXmTEAR_OFF_ENABLED\fP
Packit b099d7
enables tear-off functionality\&.
Packit b099d7
There is no resource converter
Packit b099d7
preregistered for \fBXmNtearOffModel\fP\&. To allow tear-off
Packit b099d7
functionality to be enabled through the resource database, call the
Packit b099d7
function \fBXmRepTypeInstallTearOffModelConverter\fP\&.
Packit b099d7
.PP
Packit b099d7
Tear-off menu focus policy follows standard window
Packit b099d7
manager policy\&. It is recommended that the
Packit b099d7
\fBstartupKeyFocus\fP and \fBautoKeyFocus\fP
Packit b099d7
\fBmwm\fP resources be set to True\&.
Packit b099d7
.SS "Descendants"
Packit b099d7
.PP
Packit b099d7
RowColumn automatically creates the descendants shown in the
Packit b099d7
following table\&.
Packit b099d7
An application can use \fBXtNameToWidget\fP to gain access
Packit b099d7
to the named descendant\&. In addition, a user or an application
Packit b099d7
can use the named descendant when specifying resource values\&.
Packit b099d7
.TS
Packit b099d7
tab(?) box;
Packit b099d7
l| l| l.
Packit b099d7
\fBNamed Descendant\fP?\fBClass\fP?\fBIdentity\fP
Packit b099d7
_?_?_?
Packit b099d7
=
Packit b099d7
_?_?_?
Packit b099d7
\fBOptionButton\fP?\fBXmCascadeButtonGadget\fP?option menu button
Packit b099d7
_?_?_?
Packit b099d7
\fBOptionLabel\fP?\fBXmLabelGadget\fP?option menu label
Packit b099d7
_?_?_?
Packit b099d7
\fBTearOffControl\fP?subclass of \fBXmPrimitive\fP?T{
Packit b099d7
tear-off button of torn-off menu pane
Packit b099d7
T}
Packit b099d7
_?_?_?
Packit b099d7
.TE
Packit b099d7
.SS "Classes"
Packit b099d7
.PP
Packit b099d7
RowColumn inherits behavior, resources, and traits from \fBCore\fP,
Packit b099d7
\fBComposite\fP,
Packit b099d7
\fBConstraint\fP, and \fBXmManager\fP classes\&.
Packit b099d7
.PP
Packit b099d7
The class pointer is \fBxmRowColumnWidgetClass\fP\&.
Packit b099d7
.PP
Packit b099d7
The class name is \fBXmRowColumn\fP\&.
Packit b099d7
.SS "New Resources"
Packit b099d7
.PP
Packit b099d7
The following table defines a set of widget resources used by the programmer
Packit b099d7
to specify data\&. The programmer can also set the resource values for the
Packit b099d7
inherited classes to set attributes for this widget\&. To reference a
Packit b099d7
resource by name or by class in a \fB\&.Xdefaults\fP file, remove the \fBXmN\fP or
Packit b099d7
\fBXmC\fP prefix and use the remaining letters\&. To specify one of the defined
Packit b099d7
values for a resource in a \fB\&.Xdefaults\fP file, remove the \fBXm\fP prefix and use
Packit b099d7
the remaining letters (in either lowercase or uppercase, but include any
Packit b099d7
underscores between words)\&.
Packit b099d7
The codes in the access column indicate if the given resource can be
Packit b099d7
set at creation time (C),
Packit b099d7
set by using \fBXtSetValues\fP (S),
Packit b099d7
retrieved by using \fBXtGetValues\fP (G), or is not applicable (N/A)\&.
Packit b099d7
.PP
Packit b099d7
.TS
Packit b099d7
tab(?) box;
Packit b099d7
c s s s s
Packit b099d7
l| l| l| l| l.
Packit b099d7
\fBXmRowColumn Resource Set\fP
Packit b099d7
\fBName\fP?\fBClass\fP?\fBType\fP?\fBDefault\fP?\fBAccess\fP
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNadjustLast?XmCAdjustLast?Boolean?True?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNadjustMargin?XmCAdjustMargin?Boolean?True?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNentryAlignment?XmCAlignment?unsigned char?XmALIGNMENT_BEGINNING?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNentryBorder?XmCEntryBorder?Dimension?0?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNentryCallback?XmCCallback?XtCallbackList?NULL?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNentryClass?XmCEntryClass?WidgetClass?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNentryVerticalAlignment?XmCVerticalAlignment?unsigned char?XmALIGNMENT_CENTER?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNisAligned?XmCIsAligned?Boolean?True?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNisHomogeneous?XmCIsHomogeneous?Boolean?dynamic?CG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNlabelString?XmCXmString?XmString?NULL?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNmapCallback?XmCCallback?XtCallbackList?NULL?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNmarginHeight?XmCMarginHeight?Dimension?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNmarginWidth?XmCMarginWidth?Dimension?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNmenuAccelerator?XmCAccelerators?String?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNmenuHelpWidget?XmCMenuWidget?Widget?NULL?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNmenuHistory?XmCMenuWidget?Widget?NULL?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNmenuPost?XmCMenuPost?String?NULL?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNmnemonic?XmCMnemonic?KeySym?NULL?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNmnemonicCharSet?XmCMnemonicCharSet?String?XmFONTLIST_DEFAULT_TAG?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNnumColumns?XmCNumColumns?short?1?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNorientation?XmCOrientation?unsigned char?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNpacking?XmCPacking?unsigned char?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNpopupEnabled?XmCPopupEnabled?int?XmPOPUP_KEYBOARD?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNradioAlwaysOne?XmCRadioAlwaysOne?Boolean?True?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNradioBehavior?XmCRadioBehavior?Boolean?False?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNresizeHeight?XmCResizeHeight?Boolean?True?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNresizeWidth?XmCResizeWidth?Boolean?True?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNrowColumnType?XmCRowColumnType?unsigned char?XmWORK_AREA?CG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNspacing?XmCSpacing?Dimension?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNsubMenuId?XmCMenuWidget?Widget?NULL?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNtearOffMenuActivateCallback?XmCCallback?XtCallbackList?NULL?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNtearOffMenuDeactivateCallback?XmCCallback?XtCallbackList?NULL?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNtearOffModel?XmCTearOffModel?unsigned char?XmTEAR_OFF_DISABLED?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNtearOffTitle?XmCTearOffTitle?XmString?NULL?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNunmapCallback?XmCCallback?XtCallbackList?NULL?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNwhichButton?XmCWhichButton?unsigned int?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
.TE
Packit b099d7
.IP "\fBXmNadjustLast\fP" 10
Packit b099d7
Extends the last row of children to the bottom edge of RowColumn (when
Packit b099d7
\fBXmNorientation\fP is \fBXmHORIZONTAL\fP) or extends the last column to the
Packit b099d7
right edge of RowColumn (when \fBXmNorientation\fP is \fBXmVERTICAL\fP)\&.
Packit b099d7
Setting \fBXmNadjustLast\fP to False disables this feature\&.
Packit b099d7
.IP "\fBXmNadjustMargin\fP" 10
Packit b099d7
Specifies whether the inner minor margins of all
Packit b099d7
items contained within the RowColumn widget are
Packit b099d7
forced to the same value\&. The inner minor margin
Packit b099d7
corresponds to the \fBXmNmarginLeft\fP, \fBXmNmarginRight\fP,
Packit b099d7
\fBXmNmarginTop\fP,
Packit b099d7
and \fBXmNmarginBottom\fP resources supported by \fBXmLabel\fP and
Packit b099d7
\fBXmLabelGadget\fP\&.
Packit b099d7
.IP "" 10
Packit b099d7
A horizontal orientation causes \fBXmNmarginTop\fP and
Packit b099d7
\fBXmNmarginBottom\fP for all items in a particular row to be forced to the
Packit b099d7
same value; the value is the largest margin specified
Packit b099d7
for one of the Label items\&.
Packit b099d7
.IP "" 10
Packit b099d7
A vertical orientation causes
Packit b099d7
\fBXmNmarginLeft\fP and \fBXmNmarginRight\fP for all items in a particular
Packit b099d7
column to be forced to the same value; the value is the largest
Packit b099d7
margin specified for one of the Label items\&.
Packit b099d7
.IP "" 10
Packit b099d7
This keeps all text within each row or column
Packit b099d7
lined up with all other text in its row or column\&.
Packit b099d7
If \fBXmNrowColumnType\fP is either \fBXmMENU_POPUP\fP or
Packit b099d7
\fBXmMENU_PULLDOWN\fP and this resource is True, only button children
Packit b099d7
have their margins adjusted\&.
Packit b099d7
.IP "\fBXmNentryAlignment\fP" 10
Packit b099d7
Specifies the alignment type for children that are subclasses of
Packit b099d7
\fBXmLabel\fP or \fBXmLabelGadget\fP when \fBXmNisAligned\fP is enabled\&.
Packit b099d7
The following are textual alignment types:
Packit b099d7
.RS
Packit b099d7
.IP "   \(bu" 6
Packit b099d7
\fBXmALIGNMENT_BEGINNING\fP (default)
Packit b099d7
.IP "   \(bu" 6
Packit b099d7
\fBXmALIGNMENT_CENTER\fP
Packit b099d7
.IP "   \(bu" 6
Packit b099d7
\fBXmALIGNMENT_END\fP
Packit b099d7
.RE
Packit b099d7
.IP "" 10
Packit b099d7
See the description of \fBXmNalignment\fP in the \fBXmLabel\fP(3)
Packit b099d7
reference page for an explanation of these actions\&.
Packit b099d7
.IP "\fBXmNentryBorder\fP" 10
Packit b099d7
Imposes a uniform border width upon all RowColumn\&'s children\&.
Packit b099d7
The default value is 0 (zero), which disables the feature\&.
Packit b099d7
.IP "\fBXmNentryCallback\fP" 10
Packit b099d7
Disables the \fBXmNactivateCallback\fP and \fBXmNvalueChangedCallback\fP
Packit b099d7
callbacks for all CascadeButton, DrawnButton, PushButton, and
Packit b099d7
ToggleButton widgets and gadgets contained within the RowColumn widget\&.
Packit b099d7
If the application supplies this resource, the \fBXmNactivateCallback\fP
Packit b099d7
and \fBXmNvalueChangedCallback\fP callbacks are then revectored to the
Packit b099d7
\fBXmNentryCallback\fP callbacks\&.
Packit b099d7
This allows an application to supply a single callback routine for
Packit b099d7
handling all items contained in a RowColumn widget\&.
Packit b099d7
The callback reason is \fBXmCR_ACTIVATE\fP\&.
Packit b099d7
If the application does not supply this resource, the
Packit b099d7
\fBXmNactivateCallback\fP and \fBXmNvalueChangedCallback\fP
Packit b099d7
callbacks for each item in the RowColumn widget work as normal\&.
Packit b099d7
.IP "" 10
Packit b099d7
The application must supply this resource when this widget is created\&.
Packit b099d7
Changing this resource using the \fBXtSetValues\fP is not
Packit b099d7
supported\&.
Packit b099d7
.IP "\fBXmNentryClass\fP" 10
Packit b099d7
Specifies the only widget class that can be added
Packit b099d7
to the RowColumn widget; this resource is meaningful only when the
Packit b099d7
\fBXmNisHomogeneous\fP resource is set to True\&.
Packit b099d7
Both widget and gadget variants of the specified class may be added to
Packit b099d7
the widget\&.
Packit b099d7
.IP "" 10
Packit b099d7
When \fBXmCreateRadioBox\fP is called or when \fBXmNrowColumnType\fP is
Packit b099d7
set to \fBXmWORK_AREA\fP and \fBXmNradioBehavior\fP is True, the default
Packit b099d7
value of \fBXmNentryClass\fP is
Packit b099d7
\fBxmToggleButtonGadgetClass\fP\&.
Packit b099d7
When \fBXmNrowColumnType\fP is set to \fBXmMENU_BAR\fP, the value of
Packit b099d7
\fBXmNentryClass\fP is forced to \fBxmCascadeButtonWidgetClass\fP\&.
Packit b099d7
.IP "\fBXmNentryVerticalAlignment\fP" 10
Packit b099d7
Specifies the type of vertical alignment for children that are
Packit b099d7
subclasses of \fBXmLabel\fP, \fBXmLabelGadget, and\fP \fBXmText\fP\&.
Packit b099d7
This resource is invalid if \fBXmNorientation\fP is \fBXmVERTICAL\fP
Packit b099d7
and \fBXmNpacking\fP is \fBXmPACK_TIGHT\fP, because this layout
Packit b099d7
preserves variable heights among the children\&. The vertical alignment
Packit b099d7
types include:
Packit b099d7
.RS
Packit b099d7
.IP "\fBXmALIGNMENT_BASELINE_BOTTOM\fP" 10
Packit b099d7
Causes the bottom baseline of all
Packit b099d7
children in a row to be aligned\&.
Packit b099d7
This resource is applicable only when all children in a row
Packit b099d7
contain textual data\&.
Packit b099d7
.IP "\fBXmALIGNMENT_BASELINE_TOP\fP" 10
Packit b099d7
Causes the top baseline of all
Packit b099d7
children in a row to be aligned\&.
Packit b099d7
This resource is applicable only when all children in a
Packit b099d7
row contain textual data\&.
Packit b099d7
.IP "\fBXmALIGNMENT_CONTENTS_BOTTOM\fP" 10
Packit b099d7
Causes the bottom of the
Packit b099d7
contents (text or
Packit b099d7
pixmap) of all children in a row to be aligned\&.
Packit b099d7
.IP "\fBXmALIGNMENT_CENTER\fP" 10
Packit b099d7
Causes the center of all children in a row to be
Packit b099d7
aligned\&.
Packit b099d7
.IP "\fBXmALIGNMENT_CONTENTS_TOP\fP" 10
Packit b099d7
Causes the top of the contents (text or
Packit b099d7
pixmap) of all children in a row to be aligned\&.
Packit b099d7
.RE
Packit b099d7
.IP "\fBXmNisAligned\fP" 10
Packit b099d7
Specifies text alignment for each item within the RowColumn widget;
Packit b099d7
this applies only to items that are subclasses of
Packit b099d7
\fBXmLabel\fP or \fBXmLabelGadget\fP\&.
Packit b099d7
However, if the item is a Label widget or gadget and its parent is either
Packit b099d7
a Popup menu pane or a Pulldown menu pane, alignment is not
Packit b099d7
performed; the Label is treated as the
Packit b099d7
title within the
Packit b099d7
menu pane, and the alignment
Packit b099d7
set by the application is not overridden\&.
Packit b099d7
\fBXmNentryAlignment\fP controls the type of textual alignment\&.
Packit b099d7
.IP "\fBXmNisHomogeneous\fP" 10
Packit b099d7
Indicates whether the RowColumn
Packit b099d7
widget should enforce exact homogeneity among the items
Packit b099d7
it contains; if this resource is set to True, only the widgets that are
Packit b099d7
of the class indicated by \fBXmNentryClass\fP
Packit b099d7
are allowed as children of the RowColumn widget\&.
Packit b099d7
This is most often used when creating a MenuBar\&.
Packit b099d7
Attempting to insert a child that is not a member of the
Packit b099d7
specified class generates a warning message\&.
Packit b099d7
.IP "" 10
Packit b099d7
In a MenuBar, the value of \fBXmNisHomogeneous\fP is forced to True\&.
Packit b099d7
In an OptionMenu, the value is forced to False\&.
Packit b099d7
When \fBXmCreateRadioBox\fP is called the default value is True\&.
Packit b099d7
Otherwise, the default value is False\&.
Packit b099d7
.IP "\fBXmNlabelString\fP" 10
Packit b099d7
When \fBXmNrowColumnType\fP is set to \fBXmMENU_OPTION\fP,
Packit b099d7
this resource points to a text string that displays the label with
Packit b099d7
respect to the selection area\&. The positioning of the label relative to the
Packit b099d7
selection area depends on the layout
Packit b099d7
direction in the horizontal orientation\&.
Packit b099d7
This resource is not meaningful for all other RowColumn types\&.
Packit b099d7
If the application wishes to change the label after creation, it must get the
Packit b099d7
LabelGadget ID (\fBXmOptionLabelGadget\fP) and call \fBXtSetValues\fP on the
Packit b099d7
LabelGadget directly\&. The default value is no label\&.
Packit b099d7
.IP "\fBXmNmapCallback\fP" 10
Packit b099d7
Specifies a widget-specific callback function that is
Packit b099d7
invoked when the window associated with the RowColumn widget
Packit b099d7
is about to be mapped\&. The callback reason is \fBXmCR_MAP\fP\&.
Packit b099d7
.IP "\fBXmNmarginHeight\fP" 10
Packit b099d7
Specifies the amount of blank space between the top
Packit b099d7
edge of the RowColumn widget and the first item in each column,
Packit b099d7
and the bottom edge of the RowColumn widget and the last item
Packit b099d7
in each column\&.
Packit b099d7
The default value is 0 (zero) for Pulldown and Popup menu panes, and 3
Packit b099d7
pixels for other RowColumn types\&.
Packit b099d7
.IP "\fBXmNmarginWidth\fP" 10
Packit b099d7
Specifies the amount of blank space between the left
Packit b099d7
edge of the RowColumn widget and the first item in each row,
Packit b099d7
and the right edge of the RowColumn widget and the last item in
Packit b099d7
each row\&.
Packit b099d7
The default value is 0 (zero) for Pulldown and Popup menu panes, and 3
Packit b099d7
pixels for other RowColumn types\&.
Packit b099d7
.IP "\fBXmNmenuAccelerator\fP" 10
Packit b099d7
This resource is useful only when the RowColumn widget has been configured
Packit b099d7
to operate as a Popup menu pane or a MenuBar\&.
Packit b099d7
The format of this resource is similar to the left side specification
Packit b099d7
of a translation string, with the limitation that it must specify a key
Packit b099d7
event\&.
Packit b099d7
For a Popup menu pane, when the accelerator is typed by the user, the Popup
Packit b099d7
menu pane is posted\&.
Packit b099d7
For a MenuBar, when the accelerator is typed by the user, the first item
Packit b099d7
in the MenuBar is highlighted, and traversal is enabled in the
Packit b099d7
MenuBar\&.
Packit b099d7
The default for a Popup menu pane is \fB<osfMenu>\fP\&.
Packit b099d7
The default for a MenuBar is \fB<osfMenuBar>\fP\&.
Packit b099d7
Setting the \fBXmNpopupEnabled\fP resource to False disables
Packit b099d7
the accelerator\&.
Packit b099d7
.IP "\fBXmNmenuHelpWidget\fP" 10
Packit b099d7
Specifies the widget ID for the CascadeButton, which is treated as
Packit b099d7
the Help widget if \fBXmNrowColumnType\fP is set to \fBXmMENU_BAR\fP\&.
Packit b099d7
Which corner of the MenuBar the Help widget is placed at depends on
Packit b099d7
the \fBXmNlayoutDirection\fP resource of the widget\&.
Packit b099d7
If the RowColumn widget is any type other than \fBXmMENU_BAR\fP,
Packit b099d7
this resource is not meaningful\&.
Packit b099d7
.IP "\fBXmNmenuHistory\fP" 10
Packit b099d7
Specifies the widget ID of the last menu entry to be activated\&. It is
Packit b099d7
also useful for specifying the current selection for an OptionMenu\&. If
Packit b099d7
\fBXmNrowColumnType\fP is set to \fBXmMENU_OPTION\fP, the specified
Packit b099d7
menu item is positioned under the cursor when the menu is displayed\&.
Packit b099d7
.IP "" 10
Packit b099d7
If the RowColumn widget has the \fBXmNradioBehavior\fP resource set to
Packit b099d7
True,
Packit b099d7
the widget field associated with this resource
Packit b099d7
contains the widget ID of the last ToggleButton or ToggleButtonGadget
Packit b099d7
to change from unselected to selected\&.
Packit b099d7
The default value is the widget ID of the first child in
Packit b099d7
the widget\&.
Packit b099d7
.IP "\fBXmNmenuPost\fP" 10
Packit b099d7
Specifies an X event description indicating a button event that posts a menu
Packit b099d7
system\&.
Packit b099d7
The default for \fBXmMENU_POPUP\fP is \fBBMenu Press\fP\&.
Packit b099d7
The default for \fBXmMENU_OPTION\fP, \fBXmMENU_BAR\fP, and
Packit b099d7
\fBXmWORK_AREA\fP is \fB<Btn1>\fP \fBPress\fP\&.
Packit b099d7
The \fBXmNmenuPost\fP resource for pulldowns should be consistent with that of
Packit b099d7
the top-level parent menu (although the event type is ignored)\&.
Packit b099d7
Setting this resource to \fBBTransfer Press\fP will conflict with drag and drop
Packit b099d7
operations, which use \fBBTransfer Press\fP as a default button binding\&.
Packit b099d7
Therefore, this resource cannot be \fBBTransfer Press\fP\&.
Packit b099d7
.IP "\fBXmNmnemonic\fP" 10
Packit b099d7
This resource is useful only when \fBXmNrowColumnType\fP is
Packit b099d7
set to \fBXmMENU_OPTION\fP\&.
Packit b099d7
It specifies a keysym for a key that, when pressed by the user along with
Packit b099d7
the \fBMAlt\fP modifier, posts
Packit b099d7
the associated Pulldown menu pane\&.
Packit b099d7
The first character in the OptionMenu label string that exactly matches
Packit b099d7
the mnemonic in the character set specified in \fBXmNmnemonicCharSet\fP
Packit b099d7
is underlined\&.
Packit b099d7
The user can post the menu by pressing either the shifted or the
Packit b099d7
unshifted mnemonic key\&.
Packit b099d7
The default is no mnemonic\&.
Packit b099d7
.IP "\fBXmNmnemonicCharSet\fP" 10
Packit b099d7
Specifies the character set of the mnemonic for an OptionMenu\&.
Packit b099d7
The default is \fBXmFONTLIST_DEFAULT_TAG\fP\&.
Packit b099d7
If the RowColumn widget is any type other than \fBXmMENU_OPTION\fP,
Packit b099d7
this resource is not meaningful\&.
Packit b099d7
.IP "\fBXmNnumColumns\fP" 10
Packit b099d7
Specifies the number of minor dimension extensions
Packit b099d7
that are made to accommodate the entries; this
Packit b099d7
attribute is meaningful only when \fBXmNpacking\fP is set to
Packit b099d7
\fBXmPACK_COLUMN\fP\&.
Packit b099d7
.IP "" 10
Packit b099d7
For vertically oriented RowColumn widgets, this attribute
Packit b099d7
indicates how many columns are built; the number of
Packit b099d7
entries per column is adjusted to maintain this
Packit b099d7
number of columns, if possible\&.
Packit b099d7
.IP "" 10
Packit b099d7
For horizontally oriented RowColumn widgets, this attribute
Packit b099d7
indicates how many rows are built\&.
Packit b099d7
.IP "" 10
Packit b099d7
The default value is 1\&.
Packit b099d7
In an OptionMenu the value is forced to 1\&.
Packit b099d7
The value must be greater than 0 (zero)\&.
Packit b099d7
.IP "\fBXmNorientation\fP" 10
Packit b099d7
Determines whether RowColumn layouts are row-major or column-major\&.
Packit b099d7
In a column-major layout, the children of the RowColumn
Packit b099d7
are laid out in
Packit b099d7
columns within the widget\&. In a row-major layout the children of
Packit b099d7
the RowColumn are laid out in rows\&. The direction of the horizontal
Packit b099d7
layout in the row-major layout (from left or right), and the wrapping in
Packit b099d7
the column-major layout (vertical), depend on the
Packit b099d7
\fBXmNlayoutDirection\fP resource of the widget\&.
Packit b099d7
The \fBXmVERTICAL\fP resource value
Packit b099d7
selects a column-major layout\&.
Packit b099d7
\fBXmHORIZONTAL\fP selects a row-major layout\&.
Packit b099d7
.IP "" 10
Packit b099d7
When creating a MenuBar or an OptionMenu, the default is
Packit b099d7
\fBXmHORIZONTAL\fP\&.
Packit b099d7
Otherwise, the default value is \fBXmVERTICAL\fP\&.
Packit b099d7
The results of specifying a value of \fBXmVERTICAL\fP for a MenuBar are
Packit b099d7
undefined\&.
Packit b099d7
.IP "\fBXmNpacking\fP" 10
Packit b099d7
Specifies how to pack the items contained within a
Packit b099d7
RowColumn widget\&. This can be set to \fBXmPACK_TIGHT, XmPACK_COLUMN\fP or \fBXmPACK_NONE\fP\&. When a RowColumn widget
Packit b099d7
packs the items it contains, it determines its major
Packit b099d7
dimension using the value of the \fBXmNorientation\fP resource\&.
Packit b099d7
.IP "" 10
Packit b099d7
\fBXmPACK_TIGHT\fP indicates that given the current major
Packit b099d7
dimension (for example, vertical if \fBXmNorientation\fP is \fBXmVERTICAL\fP), entries
Packit b099d7
are placed one after the other until
Packit b099d7
the RowColumn widget must wrap\&. RowColumn wraps when there is no room left
Packit b099d7
for a complete child in that dimension\&.
Packit b099d7
Wrapping occurs
Packit b099d7
by beginning a new row or column in the next available
Packit b099d7
space\&. Wrapping continues, as often as necessary, until
Packit b099d7
all of the children are laid out\&.
Packit b099d7
In the vertical dimension (columns), boxes are set to the same width; in the
Packit b099d7
horizontal dimension (rows), boxes are set to the same depth\&.
Packit b099d7
Each
Packit b099d7
entry\&'s position in the major dimension is left unaltered (for example,
Packit b099d7
\fBXmNy\fP is left unchanged when \fBXmNorientation\fP is \fBXmVERTICAL\fP); its
Packit b099d7
position in the minor
Packit b099d7
dimension is set to the same value as the greatest entry
Packit b099d7
in that particular row or column\&. The position in the minor
Packit b099d7
dimension of any particular row or column is independent
Packit b099d7
of all other rows or columns\&.
Packit b099d7
.IP "" 10
Packit b099d7
\fBXmPACK_COLUMN\fP indicates that all entries are placed in
Packit b099d7
identically sized boxes\&. The boxes are based on the largest height
Packit b099d7
and width values of all the children widgets\&.
Packit b099d7
The value of the \fBXmNnumColumns\fP
Packit b099d7
resource determines how many boxes are placed in the
Packit b099d7
major dimension, before extending in the minor dimension\&.
Packit b099d7
.IP "" 10
Packit b099d7
\fBXmPACK_NONE\fP indicates that no packing is performed\&.
Packit b099d7
The \fIx\fP and \fIy\fP attributes of each entry are left alone, and
Packit b099d7
the RowColumn widget attempts to become large enough to enclose all
Packit b099d7
entries\&.
Packit b099d7
.IP "" 10
Packit b099d7
When \fBXmCreateRadioBox\fP is called or when \fBXmNrowColumnType\fP
Packit b099d7
is set to \fBXmWORK_AREA\fP and \fBXmNradioBehavior\fP is True, the
Packit b099d7
default value of \fBXmNpacking\fP is \fBXmPACK_COLUMN\fP\&.
Packit b099d7
In an OptionMenu the value is initialized to \fBXmPACK_TIGHT\fP\&.
Packit b099d7
Otherwise, the value defaults to \fBXmPACK_TIGHT\fP\&.
Packit b099d7
.IP "\fBXmNpopupEnabled\fP" 10
Packit b099d7
Allows the menu system
Packit b099d7
to enable keyboard input (accelerators and mnemonics) defined for the Popup
Packit b099d7
menu pane and any of its submenus\&.
Packit b099d7
The Popup menu pane needs to be informed whenever its accessibility to the user
Packit b099d7
changes because posting of the Popup menu pane is controlled by the
Packit b099d7
application\&.
Packit b099d7
This resource can take four values, including:
Packit b099d7
.RS
Packit b099d7
.IP "\fBXmPOPUP_KEYBOARD\fP" 10
Packit b099d7
Specifies that the keyboard
Packit b099d7
input\(emaccelerators and mnemonics\(emdefined for the Popup menu pane
Packit b099d7
and any of its submenus is enabled\&. This is the default\&.
Packit b099d7
.IP "\fBXmPOPUP_DISABLED\fP" 10
Packit b099d7
Specifies that the keyboard input is disabled\&.
Packit b099d7
.IP "\fBXmPOPUP_AUTOMATIC\fP" 10
Packit b099d7
Specifies that the keyboard is enabled for automatic popup menus\&.
Packit b099d7
.IP "\fBXmPOPUP_AUTOMATIC_RECURSIVE\fP" 10
Packit b099d7
Specifies that the keyboard is enabled for recursive automatic popup menus\&.
Packit b099d7
.RE
Packit b099d7
.IP "\fBXmNradioAlwaysOne\fP" 10
Packit b099d7
If True, forces the active ToggleButton or ToggleButtonGadget
Packit b099d7
to be automatically selected after having
Packit b099d7
been unselected (if no other toggle was activated)\&.
Packit b099d7
If False, the active toggle may be unselected\&.
Packit b099d7
The default value is True\&. This resource is important only when
Packit b099d7
\fBXmNradioBehavior\fP is True\&.
Packit b099d7
.IP "" 10
Packit b099d7
The application can always add and subtract toggles from
Packit b099d7
RowColumn regardless of the selected/unselected state of the toggle\&. The
Packit b099d7
application can also manage and unmanage toggle
Packit b099d7
children of RowColumn at any time regardless of state\&. Therefore,
Packit b099d7
the application can sometimes
Packit b099d7
create a RowColumn that has \fBXmNradioAlwaysOne\fP set to
Packit b099d7
True and none
Packit b099d7
of the toggle children selected\&.
Packit b099d7
The result is undefined if the value of this resource is True and the
Packit b099d7
application sets more than one ToggleButton at a time\&.
Packit b099d7
.IP "\fBXmNradioBehavior\fP" 10
Packit b099d7
Specifies a Boolean value that when True, indicates
Packit b099d7
that the RowColumn widget should enforce a RadioBox-type behavior
Packit b099d7
on all of its children that are ToggleButtons or
Packit b099d7
ToggleButtonGadgets\&.
Packit b099d7
.IP "" 10
Packit b099d7
When the value of this resource is True,
Packit b099d7
\fBXmNindicatorType\fP defaults to \fBXmONE_OF_MANY\fP
Packit b099d7
for ToggleButton and ToggleButtonGadget children\&.
Packit b099d7
.IP "" 10
Packit b099d7
RadioBox
Packit b099d7
behavior dictates that when one toggle is selected and the user selects another
Packit b099d7
toggle, the first toggle is unselected
Packit b099d7
automatically\&.
Packit b099d7
The RowColumn usually does not enforce this behavior if the application,
Packit b099d7
rather than the user, changes the state of a toggle\&.
Packit b099d7
The RowColumn does enforce this behavior if a toggle child is selected
Packit b099d7
with \fBXmToggleButtonSetState\fP or \fBXmToggleButtonGadgetSetState\fP
Packit b099d7
with a \fInotify\fP argument of True\&.
Packit b099d7
.IP "" 10
Packit b099d7
When \fBXmCreateRadioBox\fP is called, the default value of
Packit b099d7
\fBXmNradioBehavior\fP is True\&.
Packit b099d7
Otherwise, the default value is False\&.
Packit b099d7
.IP "\fBXmNresizeHeight\fP" 10
Packit b099d7
Requests a new height if necessary, when set to True\&. When this
Packit b099d7
resource is set to
Packit b099d7
False, the widget does not request a new height regardless of any
Packit b099d7
changes to the widget or its children\&.
Packit b099d7
.IP "\fBXmNresizeWidth\fP" 10
Packit b099d7
Requests a new width if necessary, when set to True\&. When set to
Packit b099d7
False, the widget does not request a new width regardless of any
Packit b099d7
changes to the widget or its children\&.
Packit b099d7
.IP "\fBXmNrowColumnType\fP" 10
Packit b099d7
Specifies the type of RowColumn widget
Packit b099d7
to be created\&.
Packit b099d7
It is a nonstandard resource that cannot be changed after it is set\&.
Packit b099d7
If an application uses any of the
Packit b099d7
convenience routines, except \fBXmCreateRowColumn\fP,
Packit b099d7
this resource is automatically forced to the appropriate
Packit b099d7
value by the convenience routine\&. If an application uses
Packit b099d7
the Xt Intrinsics API to create its RowColumn widgets,
Packit b099d7
it must specify this resource itself\&. The set
Packit b099d7
of possible settings for this resource are
Packit b099d7
.RS
Packit b099d7
.IP "   \(bu" 6
Packit b099d7
\fBXmWORK_AREA\fP (default)
Packit b099d7
.IP "   \(bu" 6
Packit b099d7
\fBXmMENU_BAR\fP
Packit b099d7
.IP "   \(bu" 6
Packit b099d7
\fBXmMENU_PULLDOWN\fP
Packit b099d7
.IP "   \(bu" 6
Packit b099d7
\fBXmMENU_POPUP\fP
Packit b099d7
.IP "   \(bu" 6
Packit b099d7
\fBXmMENU_OPTION\fP
Packit b099d7
.RE
Packit b099d7
.IP "" 10
Packit b099d7
This resource cannot be changed after the RowColumn widget
Packit b099d7
is created\&. Any changes attempted through \fBXtSetValues\fP
Packit b099d7
are ignored\&.
Packit b099d7
.IP "" 10
Packit b099d7
The value of this resource is used to determine the value of a number
Packit b099d7
of other resources\&. The descriptions of RowColumn resources explain
Packit b099d7
this when it is the case\&. The resource \fBXmNnavigationType\fP,
Packit b099d7
inherited from \fBXmManager\fP, is changed to \fBXmNONE\fP if
Packit b099d7
\fBXmNrowColumnType\fP is \fBXmMENU_OPTION\fP\&.
Packit b099d7
.IP "\fBXmNspacing\fP" 10
Packit b099d7
Specifies the horizontal and vertical spacing between
Packit b099d7
items contained within the RowColumn widget\&.
Packit b099d7
The default value is 3 pixels for \fBXmOPTION_MENU\fP and
Packit b099d7
\fBXmWORK_AREA\fP and 0 (zero) for other RowColumn types\&.
Packit b099d7
.IP "\fBXmNsubMenuId\fP" 10
Packit b099d7
Specifies the widget ID for the Pulldown menu pane to be associated with
Packit b099d7
an OptionMenu\&. This resource is useful only when \fBXmNrowColumnType\fP is
Packit b099d7
set to \fBXmMENU_OPTION\fP\&.
Packit b099d7
The default value is NULL\&.
Packit b099d7
.IP "\fBXmNtearOffMenuActivateCallback\fP" 10
Packit b099d7
Specifies the callback list that notifies the application when
Packit b099d7
the tear-off menu pane is about to be activated\&. It precedes the tear-off\&'s
Packit b099d7
map callback\&.
Packit b099d7
.IP "" 10
Packit b099d7
Use this resource when your application has shared menu panes and when
Packit b099d7
the torn-off menu can have two or
Packit b099d7
more parents that can have opposing sensitivity states for the same
Packit b099d7
menu item\&.
Packit b099d7
This resource enables
Packit b099d7
the application to track
Packit b099d7
whether a menu item is sensitive or insensitive and to set the state to the
Packit b099d7
original parent\&'s menu item state when the torn-off menu is reposted\&.
Packit b099d7
The application can use \fBXmGetPostedFromWidget\fP to determine from which
Packit b099d7
parent the menu was torn\&. The callback reason is \fBXmCR_TEAR_OFF_ACTIVATE\fP\&.
Packit b099d7
The default is NULL\&.
Packit b099d7
.IP "\fBXmNtearOffMenuDeactivateCallback\fP" 10
Packit b099d7
Specifies the callback list that notifies the application when
Packit b099d7
the tear-off menu pane is about to be deactivated\&. It follows the tear-off\&'s
Packit b099d7
unmap callback\&.
Packit b099d7
.IP "" 10
Packit b099d7
Use this resource when your application has shared menu panes and when
Packit b099d7
the torn-off menu can have two or
Packit b099d7
more parents that can have opposing sensitivity states for the same
Packit b099d7
menu item\&.
Packit b099d7
This resource enables
Packit b099d7
the application to track
Packit b099d7
whether a menu item is sensitive or insensitive and to set the state to the
Packit b099d7
original parent\&'s menu item state when the torn-off menu is reposted\&.
Packit b099d7
The application can use \fBXmGetPostedFromWidget\fP to determine from which
Packit b099d7
parent the menu was torn\&.
Packit b099d7
The callback reason is \fBXmCR_TEAR_OFF_DEACTIVATE\fP\&. The default is NULL\&.
Packit b099d7
.IP "\fBXmNtearOffModel\fP" 10
Packit b099d7
Indicates whether tear-off functionality is enabled or disabled
Packit b099d7
when \fBXmNrowColumnType\fP is set to \fBXmMENU_PULLDOWN\fP or
Packit b099d7
\fBXmMENU_POPUP\fP\&. The values are \fBXmTEAR_OFF_ENABLED\fP or
Packit b099d7
\fBXmTEAR_OFF_DISABLED\fP (default value)\&. This resource is
Packit b099d7
invalid for type \fBXmMENU_OPTION\fP; however, it does affect
Packit b099d7
any pulldown
Packit b099d7
submenus within an OptionMenu\&.
Packit b099d7
The function \fBXmRepTypeInstallTearOffModelConverter\fP installs
Packit b099d7
a resource converter for this resource\&.
Packit b099d7
.IP "\fBXmNtearoffTitle\fP" 10
Packit b099d7
Used by the TearOff shell to set the title for the window manager to
Packit b099d7
display\&.
Packit b099d7
.IP "\fBXmNunmapCallback\fP" 10
Packit b099d7
Specifies a list of callbacks that is called
Packit b099d7
after the window associated with the RowColumn
Packit b099d7
widget has been unmapped\&. The callback reason is \fBXmCR_UNMAP\fP\&.
Packit b099d7
The default value is NULL\&.
Packit b099d7
.IP "\fBXmNwhichButton\fP" 10
Packit b099d7
This resource is obsolete; it has been replaced by \fBXmNmenuPost\fP and
Packit b099d7
is present for compatibility with older releases of Motif\&.
Packit b099d7
This resource cannot be 2\&.
Packit b099d7
.PP
Packit b099d7
.TS
Packit b099d7
tab(?) box;
Packit b099d7
c s s s s
Packit b099d7
l| l| l| l| l.
Packit b099d7
\fBXmRowColumn Constraint Resource Set\fP
Packit b099d7
\fBName\fP?\fBClass\fP?\fBType\fP?\fBDefault\fP?\fBAccess\fP
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNpositionIndex?XmCPositionIndex?short?XmLAST_POSITION?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
.TE
Packit b099d7
.IP "\fBXmNpositionIndex\fP" 10
Packit b099d7
Specifies the position of the widget in its parent\&'s list of
Packit b099d7
children (the value of the \fBXmNchildren\fP resource)\&. The value
Packit b099d7
is an integer that is no less than 0 (zero) and no greater than
Packit b099d7
the number of children in the list at the time the value is
Packit b099d7
specified\&. A value of 0 (zero) means that the child is placed at the
Packit b099d7
beginning of the list\&. The value can also be specified as
Packit b099d7
\fBXmLAST_POSITION\fP (the default), which means that the child
Packit b099d7
is placed at the end of the list\&. Any other value is ignored\&.
Packit b099d7
\fBXtGetValues\fP returns the position of the widget in its parent\&'s
Packit b099d7
child list at the time of the call to \fBXtGetValues\fP\&.
Packit b099d7
.IP "" 10
Packit b099d7
When a widget is inserted into its parent\&'s child list, the positions
Packit b099d7
of any existing children that are greater than or equal to the
Packit b099d7
specified widget\&'s \fBXmNpositionIndex\fP are increased by 1\&.
Packit b099d7
The effect of a call to \fBXtSetValues\fP for \fBXmNpositionIndex\fP
Packit b099d7
is to remove the specified widget from its parent\&'s child list, decrease
Packit b099d7
by 1 the positions of any existing children that are greater than
Packit b099d7
the specified widget\&'s former position in the list, and then insert
Packit b099d7
the specified widget into its parent\&'s child list as described in the
Packit b099d7
preceding sentence\&.
Packit b099d7
.PP
Packit b099d7
.TS
Packit b099d7
tab(?) box;
Packit b099d7
c s s s s
Packit b099d7
l| l| l| l| l.
Packit b099d7
\fBSimple Menu Creation Resource Set\fP
Packit b099d7
\fBName\fP?\fBClass\fP?\fBType\fP?\fBDefault\fP?\fBAccess\fP
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNbuttonAccelerators?XmCButtonAccelerators?StringTable?NULL?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNbuttonAcceleratorText?XmCButtonAcceleratorText?XmStringTable?NULL?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNbuttonCount?XmCButtonCount?int?0?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNbuttonMnemonicCharSets?XmCButtonMnemonicCharSets?XmStringCharSetTable?NULL?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNbuttonMnemonics?XmCButtonMnemonics?XmKeySymTable?NULL?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNbuttons?XmCButtons?XmStringTable?NULL?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNbuttonSet?XmCButtonSet?int?-1?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNbuttonType?XmCButtonType?XmButtonTypeTable?NULL?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNoptionLabel?XmCOptionLabel?XmString?NULL?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNoptionMnemonic?XmCOptionMnemonic?KeySym?NULL?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNpostFromButton?XmCPostFromButton?int?-1?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNsimpleCallback?XmCCallback?XtCallbackProc?NULL?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
.TE
Packit b099d7
.IP "\fBXmNbuttonAccelerators\fP" 10
Packit b099d7
This resource is for use with the simple menu creation routines\&.
Packit b099d7
It specifies a list of accelerators for the buttons created\&.
Packit b099d7
The list contains one element for each button, separator, and title
Packit b099d7
created\&.
Packit b099d7
.IP "\fBXmNbuttonAcceleratorText\fP" 10
Packit b099d7
This resource is for use with the simple menu creation routines\&.
Packit b099d7
It specifies a list of compound strings to display for the accelerators for
Packit b099d7
the buttons created\&.
Packit b099d7
The list contains one element for each button, separator, and title
Packit b099d7
created\&.
Packit b099d7
.IP "\fBXmNbuttonCount\fP" 10
Packit b099d7
This resource is for use with the simple menu creation routines\&.
Packit b099d7
It specifies the total number of menu buttons, separators, and titles to
Packit b099d7
create\&.
Packit b099d7
The value must not be negative\&.
Packit b099d7
.IP "\fBXmNbuttonMnemonicCharSets\fP" 10
Packit b099d7
This resource is for use with the simple menu creation routines\&.
Packit b099d7
It specifies a list of character sets with which button mnemonics are to be
Packit b099d7
displayed\&.
Packit b099d7
The list contains one element for each button, separator, and title
Packit b099d7
created\&.
Packit b099d7
The default is determined dynamically depending on the locale of the
Packit b099d7
widget\&.
Packit b099d7
.IP "\fBXmNbuttonMnemonics\fP" 10
Packit b099d7
This resource is for use with the simple menu creation routines\&.
Packit b099d7
It specifies a list of mnemonics for the buttons created\&.
Packit b099d7
The list contains one element for each button, separator, and title
Packit b099d7
created\&.
Packit b099d7
.IP "\fBXmNbuttons\fP" 10
Packit b099d7
This resource is for use with the simple menu creation routines\&.
Packit b099d7
It specifies a list of compound strings to use as labels for the buttons
Packit b099d7
created\&.
Packit b099d7
The list contains one element for each button, separator, and title
Packit b099d7
created\&.
Packit b099d7
.IP "\fBXmNbuttonSet\fP" 10
Packit b099d7
This resource is for use with the simple menu creation routines\&.
Packit b099d7
It specifies which button of a RadioBox or OptionMenu Pulldown submenu
Packit b099d7
is initially set\&.
Packit b099d7
The value is an integer \fIn\fP indicating the \fIn\fPth
Packit b099d7
ToggleButtonGadget specified for a RadioBox or the \fIn\fPth
Packit b099d7
PushButtonGadget specified for an OptionMenu Pulldown submenu\&.
Packit b099d7
The first button specified is number 0\&.
Packit b099d7
The value must not be negative\&.
Packit b099d7
.IP "\fBXmNbuttonType\fP" 10
Packit b099d7
This resource is for use with the simple menu creation routines\&.
Packit b099d7
It specifies a list of button types associated with the buttons to be
Packit b099d7
created\&.
Packit b099d7
The list contains one element for each button, separator, and title
Packit b099d7
created\&.
Packit b099d7
If this resource is not specified, each button in a MenuBar is a
Packit b099d7
CascadeButtonGadget, each button in a RadioBox or CheckBox is a
Packit b099d7
ToggleButtonGadget, and
Packit b099d7
each button in any other type
Packit b099d7
of RowColumn widget is a PushButtonGadget\&.
Packit b099d7
Each button type is of type \fBXmButtonType\fR, an enumeration with the
Packit b099d7
following possible values:
Packit b099d7
.RS
Packit b099d7
.IP "\fBXmCASCADEBUTTON\fP" 10
Packit b099d7
Specifies a CascadeButtonGadget for a MenuBar,
Packit b099d7
Popup menu pane, or Pulldown menu pane\&.
Packit b099d7
.IP "\fBXmCHECKBUTTON\fP" 10
Packit b099d7
Specifies a ToggleButtonGadget for a CheckBox,
Packit b099d7
Popup menu pane, or Pulldown menu pane\&.
Packit b099d7
.IP "\fBXmDOUBLE_SEPARATOR\fP" 10
Packit b099d7
Specifies a SeparatorGadget for a Popup
Packit b099d7
menu pane, Pulldown menu pane, or OptionMenu Pulldown submenu\&.
Packit b099d7
The separator type is \fBXmDOUBLE_LINE\fP\&.
Packit b099d7
.IP "\fBXmPUSHBUTTON\fP" 10
Packit b099d7
Specifies a PushButtonGadget for a Popup menu pane,
Packit b099d7
Pulldown menu pane, or OptionMenu Pulldown submenu\&.
Packit b099d7
.IP "\fBXmRADIOBUTTON\fP" 10
Packit b099d7
Specifies a ToggleButtonGadget for a RadioBox,
Packit b099d7
Popup menu pane, or Pulldown menu pane\&.
Packit b099d7
.IP "\fBXmSEPARATOR\fP" 10
Packit b099d7
Specifies a SeparatorGadget for a Popup menu pane,
Packit b099d7
Pulldown menu pane, or OptionMenu Pulldown submenu\&.
Packit b099d7
.IP "\fBXmTITLE\fP" 10
Packit b099d7
Specifies a LabelGadget used as a title for a Popup
Packit b099d7
menu pane or Pulldown menu pane\&.
Packit b099d7
.RE
Packit b099d7
.IP "\fBXmNoptionLabel\fP" 10
Packit b099d7
This resource is for use with the simple menu creation routines\&.
Packit b099d7
It specifies a compound string for the label string to be used on the left
Packit b099d7
side of an OptionMenu\&.
Packit b099d7
.IP "\fBXmNoptionMnemonic\fP" 10
Packit b099d7
This resource is for use with the simple menu creation routines\&.
Packit b099d7
It specifies a keysym for a key that, when pressed by the user along
Packit b099d7
with the \fBMAlt\fP modifier, posts
Packit b099d7
the associated Pulldown menu pane for an OptionMenu\&.
Packit b099d7
.IP "\fBXmNpostFromButton\fP" 10
Packit b099d7
This resource is for use with the simple menu creation routines\&.
Packit b099d7
For a Pulldown menu pane, it specifies the button in the parent to which
Packit b099d7
the submenu is attached\&.
Packit b099d7
The menu is then posted from this button\&.
Packit b099d7
The value is an integer \fIn\fP indicating the \fIn\fPth
Packit b099d7
CascadeButton or CascadeButtonGadget specified for the parent of the
Packit b099d7
Pulldown menu pane\&.
Packit b099d7
The first button specified is number 0\&.
Packit b099d7
The value must not be negative\&.
Packit b099d7
.IP "\fBXmNsimpleCallback\fP" 10
Packit b099d7
This resource is for use with the simple menu creation routines\&.
Packit b099d7
It specifies a callback procedure to be called when a button is
Packit b099d7
activated or when its value changes\&.
Packit b099d7
This callback function is added to each button after creation\&.
Packit b099d7
For a CascadeButtonGadget or a PushButtonGadget, the callback is added
Packit b099d7
as the button\&'s \fBXmNactivateCallback\fP, and it is called when the
Packit b099d7
button is activated\&.
Packit b099d7
For a ToggleButtonGadget, the callback is added as the button\&'s
Packit b099d7
\fBXmNvalueChangedCallback\fP, and it is called when the button\&'s value
Packit b099d7
changes\&.
Packit b099d7
The button number is passed in the \fIclient_data\fP field\&.
Packit b099d7
.SS "Inherited Resources"
Packit b099d7
.PP
Packit b099d7
RowColumn inherits behavior and resources from the
Packit b099d7
superclasses described in the following tables\&.
Packit b099d7
For a complete description of each resource, refer to the
Packit b099d7
reference page for that superclass\&.
Packit b099d7
.PP
Packit b099d7
.TS
Packit b099d7
tab(?) box;
Packit b099d7
c s s s s
Packit b099d7
l| l| l| l| l.
Packit b099d7
\fBXmManager Resource Set\fP
Packit b099d7
\fBName\fP?\fBClass\fP?\fBType\fP?\fBDefault\fP?\fBAccess\fP
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNbottomShadowColor?XmCBottomShadowColor?Pixel?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNbottomShadowPixmap?XmCBottomShadowPixmap?Pixmap?XmUNSPECIFIED_PIXMAP?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNforeground?XmCForeground?Pixel?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNhelpCallback?XmCCallback?XtCallbackList?NULL?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNhighlightColor?XmCHighlightColor?Pixel?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNhighlightPixmap?XmCHighlightPixmap?Pixmap?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNinitialFocus?XmCInitialFocus?Widget?NULL?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNlayoutDirection?XmCLayoutDirection?XmDirection?dynamic?CG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNnavigationType?XmCNavigationType?XmNavigationType?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNpopupHandlerCallback?XmCCallback?XtCallbackList?NULL?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNshadowThickness?XmCShadowThickness?Dimension?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNstringDirection?XmCStringDirection?XmStringDirection?dynamic?CG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNtopShadowColor?XmCTopShadowColor?Pixel?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNtopShadowPixmap?XmCTopShadowPixmap?Pixmap?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNtraversalOn?XmCTraversalOn?Boolean?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNunitType?XmCUnitType?unsigned char?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNuserData?XmCUserData?XtPointer?NULL?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
.TE
Packit b099d7
.PP
Packit b099d7
.TS
Packit b099d7
tab(?) box;
Packit b099d7
c s s s s
Packit b099d7
l| l| l| l| l.
Packit b099d7
\fBComposite Resource Set\fP
Packit b099d7
\fBName\fP?\fBClass\fP?\fBType\fP?\fBDefault\fP?\fBAccess\fP
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNchildren?XmCReadOnly?WidgetList?NULL?G
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNinsertPosition?XmCInsertPosition?XtOrderProc?default procedure?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNnumChildren?XmCReadOnly?Cardinal?0?G
Packit b099d7
_?_?_?_?_?
Packit b099d7
.TE
Packit b099d7
.PP
Packit b099d7
.TS
Packit b099d7
tab(?) box;
Packit b099d7
c s s s s
Packit b099d7
l| l| l| l| l.
Packit b099d7
\fBCore Resource Set\fP
Packit b099d7
\fBName\fP?\fBClass\fP?\fBType\fP?\fBDefault\fP?\fBAccess\fP
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNaccelerators?XmCAccelerators?XtAccelerators?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNancestorSensitive?XmCSensitive?Boolean?dynamic?G
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNbackground?XmCBackground?Pixel?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNbackgroundPixmap?XmCPixmap?Pixmap?XmUNSPECIFIED_PIXMAP?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNborderColor?XmCBorderColor?Pixel?XtDefaultForeground?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNborderPixmap?XmCPixmap?Pixmap?XmUNSPECIFIED_PIXMAP?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNborderWidth?XmCBorderWidth?Dimension?0?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNcolormap?XmCColormap?Colormap?dynamic?CG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNdepth?XmCDepth?int?dynamic?CG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNdestroyCallback?XmCCallback?XtCallbackList?NULL?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNheight?XmCHeight?Dimension?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNinitialResourcesPersistent?XmCInitialResourcesPersistent?Boolean?True?C
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNmappedWhenManaged?XmCMappedWhenManaged?Boolean?True?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNscreen?XmCScreen?Screen *?dynamic?CG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNsensitive?XmCSensitive?Boolean?True?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNtranslations?XmCTranslations?XtTranslations?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNwidth?XmCWidth?Dimension?dynamic?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNx?XmCPosition?Position?0?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
XmNy?XmCPosition?Position?0?CSG
Packit b099d7
_?_?_?_?_?
Packit b099d7
.TE
Packit b099d7
.SS "Callback Information"
Packit b099d7
.PP
Packit b099d7
A pointer to the following structure is passed to each callback:
Packit b099d7
.PP
Packit b099d7
.nf
Packit b099d7
typedef struct
Packit b099d7
{
Packit b099d7
        int \fIreason\fP;
Packit b099d7
        XEvent \fI* event\fP;
Packit b099d7
        Widget \fIwidget\fP;
Packit b099d7
        char \fI* data\fP;
Packit b099d7
        char \fI* callbackstruct\fP;
Packit b099d7
} XmRowColumnCallbackStruct;
Packit b099d7
.fi
Packit b099d7
.IP "\fIreason\fP" 10
Packit b099d7
Indicates why the callback was invoked
Packit b099d7
.IP "\fIevent\fP" 10
Packit b099d7
Points to the \fBXEvent\fP that triggered the callback
Packit b099d7
.PP
Packit b099d7
The following fields apply only when the callback reason is \fBXmCR_ACTIVATE\fP;
Packit b099d7
for all other callback reasons, these fields are set to NULL\&.
Packit b099d7
The \fBXmCR_ACTIVATE\fP callback reason is generated only when the application
Packit b099d7
has supplied an entry callback, which overrides any activation callbacks
Packit b099d7
registered with the individual RowColumn items\&.
Packit b099d7
.IP "\fIwidget\fP" 10
Packit b099d7
Is set to the widget ID of the RowColumn item that has been activated
Packit b099d7
.IP "\fIdata\fP" 10
Packit b099d7
Contains the client-data value supplied by the
Packit b099d7
application when the RowColumn item\&'s activation callback was registered
Packit b099d7
.IP "\fIcallbackstruct\fP" 10
Packit b099d7
Points to the callback structure
Packit b099d7
generated by the RowColumn item\&'s activation callback
Packit b099d7
.SS "Translations"
Packit b099d7
.PP
Packit b099d7
\fBXmRowColumn\fP translations depend on the value of
Packit b099d7
the \fBXmNrowColumnType\fP resource\&.
Packit b099d7
.PP
Packit b099d7
If \fBXmNrowColumnType\fP is set to \fBXmWORK_AREA\fP,
Packit b099d7
\fBXmRowColumn\fP inherits translations from \fBXmManager\fP\&.
Packit b099d7
.PP
Packit b099d7
If \fBXmNrowColumnType\fP is set to \fBXmMENU_OPTION\fP,
Packit b099d7
\fBXmRowColumn\fP inherits traversal, \fB<osfActivate>\fP, and \fB<osfCancel>\fP
Packit b099d7
translations from \fBXmManager\fP
Packit b099d7
and has the following additional translations\&.
Packit b099d7
.PP
Packit b099d7
The following key names are listed in the
Packit b099d7
X standard key event translation table syntax\&.
Packit b099d7
This format is the one used by Motif to
Packit b099d7
specify the widget actions corresponding to a given key\&.
Packit b099d7
A brief overview of the format is provided under
Packit b099d7
\fBVirtualBindings\fP(3)\&.
Packit b099d7
For a complete description of the format, please refer to the
Packit b099d7
X Toolkit Instrinsics Documentation\&.
Packit b099d7
.IP "\fB<Btn2Down>\fP:" 10
Packit b099d7
MenuGadgetDrag()
Packit b099d7
.IP "\fBc<Btn1Down>\fP:" 10
Packit b099d7
MenuGadgetTraverseCurrent()
Packit b099d7
.IP "\fBc<Btn1Up>\fP:" 10
Packit b099d7
MenuGadgetTraverseCurrentUp()
Packit b099d7
.IP "\fB\(apc\fP\fB<BtnDown>\fP:" 10
Packit b099d7
MenuBtnDown()
Packit b099d7
.IP "\fB\(apc\fP\fB<BtnUp>\fP:" 10
Packit b099d7
MenuBtnUp()
Packit b099d7
.IP "\fB:\fP\fB<Key>\fP\fB<osfHelp>\fP:" 10
Packit b099d7
MenuHelp()
Packit b099d7
.PP
Packit b099d7
The translations for \fBXmRowColumn\fP if
Packit b099d7
\fBXmNrowColumnType\fP is set to \fBXmMENU_BAR\fP
Packit b099d7
\fBXmMENU_PULLDOWN\fP, or \fBXmMENU_POPUP\fP
Packit b099d7
are described in the following list\&.
Packit b099d7
In a Popup menu system, \fB<Btn3>\fP also performs the \fB<Btn1>\fP
Packit b099d7
actions\&.
Packit b099d7
.IP "\fB:\fP\fB<Key>\fP\fB<osfHelp>\fP:" 10
Packit b099d7
MenuHelp()
Packit b099d7
.IP "\fB:\fP\fB<Key>\fP\fB<osfLeft>\fP:" 10
Packit b099d7
MenuGadgetTraverseLeft()
Packit b099d7
.IP "\fB:\fP\fB<Key>\fP\fB<osfRight>\fP:" 10
Packit b099d7
MenuGadgetTraverseRight()
Packit b099d7
.IP "\fB:\fP\fB<Key>\fP\fB<osfUp>\fP:" 10
Packit b099d7
MenuGadgetTraverseUp()
Packit b099d7
.IP "\fB:\fP\fB<Key>\fP\fB<osfDown>\fP:" 10
Packit b099d7
MenuGadgetTraverseDown()
Packit b099d7
.SS "Action Routines"
Packit b099d7
.PP
Packit b099d7
The \fBXmRowColumn\fP action routines are
Packit b099d7
.IP "Help():" 10
Packit b099d7
Calls the callbacks for \fBXmNhelpCallback\fP if any exist\&. If there are no help
Packit b099d7
callbacks for this widget, this action calls the help callbacks
Packit b099d7
for the nearest ancestor that has them\&.
Packit b099d7
.IP "ManagerGadgetSelect():" 10
Packit b099d7
When a gadget child of the menu has the focus, invokes the gadget
Packit b099d7
child\&'s behavior associated with \fB<osfSelect>\fP\&.
Packit b099d7
This generally has the effect of unposting the menu hierarchy and arming
Packit b099d7
and activating the gadget, except that, for a CascadeButtonGadget with a
Packit b099d7
submenu, it posts the submenu\&.
Packit b099d7
.IP "MenuBtnDown():" 10
Packit b099d7
When a gadget child of the menu has focus, invokes the gadget
Packit b099d7
child\&'s behavior associated with \fB<Btn1Down>\fP\&.
Packit b099d7
This generally has the effect of unposting any menus posted by the
Packit b099d7
parent menu, enabling mouse traversal in the menu, and arming the
Packit b099d7
gadget\&.
Packit b099d7
For a CascadeButtonGadget with a submenu, it also posts the associated
Packit b099d7
submenu\&.
Packit b099d7
.IP "MenuBtnUp():" 10
Packit b099d7
When a gadget child of the menu has focus, invokes the gadget
Packit b099d7
child\&'s behavior associated with \fB<Btn1Up>\fP\&.
Packit b099d7
This generally has the effect of unposting the menu hierarchy and
Packit b099d7
activating the gadget,
Packit b099d7
except that for a CascadeButtonGadget with a
Packit b099d7
submenu, it posts the submenu and enables keyboard traversal in the
Packit b099d7
menu\&.
Packit b099d7
.IP "MenuGadgetEscape():" 10
Packit b099d7
In a top-level Pulldown MenuPane from a MenuBar, unposts the menu,
Packit b099d7
disarms the MenuBar CascadeButton and the MenuBar, and, when the shell\&'s
Packit b099d7
keyboard focus policy is \fBXmEXPLICIT\fP, restores keyboard focus to
Packit b099d7
the widget that had the focus before the MenuBar was entered\&.
Packit b099d7
In other Pulldown MenuPanes, unposts the menu\&.
Packit b099d7
.IP "" 10
Packit b099d7
In a Popup MenuPane, unposts the menu and, when the shell\&'s keyboard
Packit b099d7
focus policy is \fBXmEXPLICIT\fP, restores keyboard focus to the widget
Packit b099d7
from which the menu was posted\&.
Packit b099d7
In a TearOff MenuPane that has no submenus posted, dismisses the
Packit b099d7
menu; otherwise, if one or more submenus are posted, unposts the last
Packit b099d7
menu pane\&.
Packit b099d7
.IP "MenuGadgetTraverseDown():" 10
Packit b099d7
If the current menu item has a submenu and is in a MenuBar, then this
Packit b099d7
action posts the submenu, disarms the current menu item, and arms
Packit b099d7
the submenu\&'s first traversable menu item\&.
Packit b099d7
.IP "" 10
Packit b099d7
If the current menu item is in a MenuPane, then this action disarms the
Packit b099d7
current menu item and arms the item below it\&. This action wraps within the
Packit b099d7
MenuPane\&. The direction of the wrapping depends on the
Packit b099d7
\fBXmNlayoutDirection\fP resource\&.
Packit b099d7
.IP "MenuGadgetTraverseLeft():" 10
Packit b099d7
When the current menu item is in a MenuBar, this action disarms the
Packit b099d7
current item and arms the MenuBar item to the left\&.
Packit b099d7
This action wraps within the MenuBar\&.
Packit b099d7
.IP "" 10
Packit b099d7
In MenuPanes, if the current menu item is not at the left edge of a MenuPane,
Packit b099d7
this action disarms the current item and arms the item to its left\&.
Packit b099d7
If the current menu item is at the left edge of a submenu attached to a
Packit b099d7
MenuBar item, then this action unposts the submenu and traverses to the
Packit b099d7
MenuBar item to the left, wrapping if necessary\&. If that MenuBar item
Packit b099d7
has a submenu, it posts the submenu and arms the first traversable
Packit b099d7
item in the submenu\&.
Packit b099d7
If the current menu item is at the left edge of a submenu not directly
Packit b099d7
attached to a MenuBar item, then this action unposts the current submenu only\&.
Packit b099d7
.IP "" 10
Packit b099d7
In Popup or Torn-off MenuPanes, when the current menu item is at the
Packit b099d7
left edge, this action wraps within the MenuPane\&. If the current menu
Packit b099d7
item is at the left edge of the MenuPane and not in the top row, this
Packit b099d7
action wraps to the rightmost menu item in the row above\&. If the current
Packit b099d7
menu item is in the upper, leftmost corner, this action wraps
Packit b099d7
to the tear-off control, if present, or else it wraps to the bottom,
Packit b099d7
rightmost menu item in the MenuPane\&.
Packit b099d7
.IP "" 10
Packit b099d7
The preceding description applies when the \fBXmNlayoutDirection\fP horizontal
Packit b099d7
direction is \fBXmLEFT_TO_RIGHT\fP\&. If the \fBXmNlayoutDirection\fP horizontal
Packit b099d7
direction is \fBXmRIGHT_TO_LEFT\fP, then the following applies\&.
Packit b099d7
.IP "" 10
Packit b099d7
If the current menu item is in a MenuBar, then this action disarms the
Packit b099d7
current item and arms the MenuBar item to the left\&.
Packit b099d7
This action wraps within the MenuBar\&.
Packit b099d7
.IP "" 10
Packit b099d7
In MenuPanes, if the current menu item is a CascadeButton, then this
Packit b099d7
action posts its associated submenu\&.
Packit b099d7
If the current menu item is not a CascadeButton and is not at the left
Packit b099d7
edge of a MenuPane, this action disarms the current item and arms the
Packit b099d7
item to its left, wrapping if necessary\&.
Packit b099d7
If the current menu item is not a CascadeButton and is at the left edge of a
Packit b099d7
submenu that is a descendent of a MenuBar, then this action unposts all
Packit b099d7
submenus and traverses to the MenuBar item to the left\&.
Packit b099d7
If that MenuBar item has a submenu, it posts the submenu and arms
Packit b099d7
the submenu\&'s first traversable item\&.
Packit b099d7
.IP "" 10
Packit b099d7
In Popup or Torn-off menus, if the current menu item is not a
Packit b099d7
CascadeButton and is at the left edge of a row (except the
Packit b099d7
bottom row), this action wraps to the rightmost menu item in the
Packit b099d7
row below\&. If the current menu item is not a CascadeButton and
Packit b099d7
is in the bottom, leftmost corner of a Popup or Pulldown MenuPane, this
Packit b099d7
action wraps to the tear-off control, if present, or else it wraps to
Packit b099d7
the top, rightmost menu item of the MenuPane\&.
Packit b099d7
.IP "MenuGadgetTraverseRight():" 10
Packit b099d7
If the current menu item is in a MenuBar, then this action disarms the
Packit b099d7
current item and arms the MenuBar item to the right\&.
Packit b099d7
This action wraps within the MenuBar\&.
Packit b099d7
.IP "" 10
Packit b099d7
In MenuPanes, if the current menu item is a CascadeButton, then this
Packit b099d7
action posts its associated submenu\&.
Packit b099d7
If the current menu item is not a CascadeButton and is not at the right
Packit b099d7
edge of a MenuPane, this action disarms the current item and arms the
Packit b099d7
item to its right, wrapping if necessary\&.
Packit b099d7
If the current menu item is not a CascadeButton and is at the right edge of a
Packit b099d7
submenu that is a descendent of a MenuBar, then this action unposts all
Packit b099d7
submenus and traverses to the MenuBar item to the right\&.
Packit b099d7
If that MenuBar item has a submenu, it posts the submenu and arms
Packit b099d7
the submenu\&'s first traversable item\&.
Packit b099d7
.IP "" 10
Packit b099d7
In Popup or Torn-off menus, if the current menu item is not a
Packit b099d7
CascadeButton and is at the right edge of a row (except the
Packit b099d7
bottom row), this action wraps to the leftmost menu item in the
Packit b099d7
row below\&. If the current menu item is not a CascadeButton and
Packit b099d7
is in the bottom, rightmost corner of a Popup or Pulldown MenuPane, this
Packit b099d7
action wraps to the tear-off control, if present, or else it wraps to
Packit b099d7
the top, leftmost menu item of the MenuPane\&.
Packit b099d7
.IP "" 10
Packit b099d7
The preceding description applies when the \fBXmNlayoutDirection\fP horizontal
Packit b099d7
direction is \fBXmLEFT_TO_RIGHT\fP\&. If the \fBXmNlayoutDirection\fP horizontal
Packit b099d7
direction is \fBXmRIGHT_TO_LEFT\fP, then the following applies\&.
Packit b099d7
When the current menu item is in a MenuBar, this action disarms the
Packit b099d7
current item and arms the MenuBar item to the left\&.
Packit b099d7
This action wraps within the MenuBar\&.
Packit b099d7
.IP "" 10
Packit b099d7
In MenuPanes, if the current menu item is not at the right edge of a MenuPane,
Packit b099d7
this action disarms the current item and arms the item to its right\&.
Packit b099d7
If the current menu item is at the right edge of a submenu attached to a
Packit b099d7
MenuBar item, then this action unposts the submenu and traverses to the
Packit b099d7
MenuBar item to the right, wrapping if necessary\&. If that MenuBar item
Packit b099d7
has a submenu, it posts the submenu and arms the first traversable
Packit b099d7
item in the submenu\&.
Packit b099d7
If the current menu item is at the right edge of a submenu not directly
Packit b099d7
attached to a MenuBar item, then this action unposts the current submenu only\&.
Packit b099d7
.IP "" 10
Packit b099d7
In Popup or Torn-off MenuPanes, when the current menu item is at the
Packit b099d7
right edge, this action wraps within the MenuPane\&. If the current menu
Packit b099d7
item is at the right edge of the MenuPane and not in the top row, this
Packit b099d7
action wraps to the leftmost menu item in the row above\&. If the current
Packit b099d7
menu item is in the upper, rightmost corner, this action wraps
Packit b099d7
to the tear-off control, if present, or else it wraps to the bottom,
Packit b099d7
leftmost menu item in the MenuPane\&.
Packit b099d7
.IP "MenuGadgetTraverseUp():" 10
Packit b099d7
When the current menu item is in a MenuPane, then
Packit b099d7
this action disarms the current menu item and arms the item above it\&.
Packit b099d7
This action wraps within the MenuPane\&. The direction of the wrapping
Packit b099d7
depends on the \fBXmNlayoutDirection\fP resource\&.
Packit b099d7
.SS "Related Behavior"
Packit b099d7
.PP
Packit b099d7
The following menu functions are available:
Packit b099d7
.IP "\fB<osfMenuBar>\fP:" 10
Packit b099d7
In any non-popup descendant of a MenuBar\&'s parent, excluding the MenuBar
Packit b099d7
itself, this action enables keyboard traversal and moves keyboard focus
Packit b099d7
to the first item in the MenuBar\&.
Packit b099d7
In the MenuBar or any menu cascaded from it, this action unposts the
Packit b099d7
menu hierarchy and, when the shell\&'s keyboard focus policy is
Packit b099d7
\fBXmEXPLICIT\fP, restores focus to the widget that had the focus
Packit b099d7
when the menu system was entered\&.
Packit b099d7
.IP "\fB<osfMenu>\fP:" 10
Packit b099d7
Pops up the menu associated with the control that has the keyboard focus\&.
Packit b099d7
Enables keyboard traversal in the menu\&.
Packit b099d7
In the Popup menu system or any menu cascaded from it, this action
Packit b099d7
unposts the menu hierarchy and, when the shell\&'s keyboard focus policy
Packit b099d7
is \fBXmEXPLICIT\fP, restores focus to the widget that had the focus
Packit b099d7
when the menu system was entered\&.
Packit b099d7
.SS "Virtual Bindings"
Packit b099d7
.PP
Packit b099d7
The bindings for virtual keys are vendor specific\&.
Packit b099d7
For information about bindings for virtual buttons and keys, see \fBVirtualBindings\fP(3)\&.
Packit b099d7
.SH "RELATED"
Packit b099d7
.PP
Packit b099d7
\fBComposite\fP(3),
Packit b099d7
\fBConstraint\fP(3),
Packit b099d7
\fBCore\fP(3),
Packit b099d7
\fBXmCreateMenuBar\fP(3),
Packit b099d7
\fBXmCreateOptionMenu\fP(3),
Packit b099d7
\fBXmCreatePopupMenu\fP(3),
Packit b099d7
\fBXmCreatePulldownMenu\fP(3),
Packit b099d7
\fBXmCreateRadioBox\fP(3),
Packit b099d7
\fBXmCreateRowColumn\fP(3),
Packit b099d7
\fBXmCreateSimpleCheckBox\fP(3),
Packit b099d7
\fBXmCreateSimpleMenuBar\fP(3),
Packit b099d7
\fBXmCreateSimpleOptionMenu\fP(3),
Packit b099d7
\fBXmCreateSimplePopupMenu\fP(3),
Packit b099d7
\fBXmCreateSimplePulldownMenu\fP(3),
Packit b099d7
\fBXmCreateSimpleRadioBox\fP(3),
Packit b099d7
\fBXmCreateWorkArea\fP(3),
Packit b099d7
\fBXmGetMenuCursor\fP(3),
Packit b099d7
\fBXmGetPostedFromWidget\fP(3),
Packit b099d7
\fBXmGetTearOffControl\fP,
Packit b099d7
\fBXmLabel\fP(3),
Packit b099d7
\fBXmManager\fP(3),
Packit b099d7
\fBXmMenuPosition\fP(3),
Packit b099d7
\fBXmOptionButtonGadget\fP(3),
Packit b099d7
\fBXmOptionLabelGadget\fP(3),
Packit b099d7
\fBXmRepTypeInstallTearOffModelConverter\fP,
Packit b099d7
\fBXmSetMenuCursor\fP(3),
Packit b099d7
\fBXmUpdateDisplay\fP(3),
Packit b099d7
\fBXmVaCreateManagedRowColumn\fP(3),
Packit b099d7
\fBXmVaCreateRowColumn\fP(3),
Packit b099d7
\fBXmVaCreateSimpleCheckBox\fP(3),
Packit b099d7
\fBXmVaCreateSimpleMenuBar\fP(3),
Packit b099d7
\fBXmVaCreateSimpleOptionMenu\fP(3),
Packit b099d7
\fBXmVaCreateSimplePopupMenu\fP(3),
Packit b099d7
\fBXmVaCreateSimplePulldownMenu\fP(3), and
Packit b099d7
\fBXmVaCreateSimpleRadioBox\fP(3)\&.