The Button Box widget manages children (usually buttons) in a single row or single
column layout.
The Button Box maintains equal spacing between its children at all times and attempts
to adjust its height and width as necessary so that all children will fit. If this is not
possible, due to parent or application programmer constraints, the Button Box will resize
its children as necessary to fit within the available space.
Note: in what follows, major direction refers to the direction of orientation, and minor
direction refers to the perpendicular direction.
Classes
Button Box inherits behavior, resources, and traits from Core,
Composite, Constraint, and
XmManager.
The class pointer is xmButtonBoxWidgetClass.
The class name is XmButtonBox.
New Resources
The following table defines a set of widget resources used by the
programmer to specify data. The programmer can also set the resource
values for the inherited classes to set attributes for this widget.
To reference a resource by name or by class in a .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), retrieved by using XtGetValues (G), or is not
applicable (N/A).
XmButtonBox Resource Set
Name
Class
Type
Default
Access
XmNequalSize
XmCEqualSize
Boolean
False
CSG
XmNfillOption
XmCFillOption
unsigned char
XmFillNone
CSG
XmNmarginHeight
XmCMargin
VerticalDimension
0
CSG
XmNmarginWidth
XmCMargin
HorizontalDimension
0
CSG
XmNorientation
XmCOrientation
unsigned char
XmHORIZONTAL
CSG
XmNdefaultButton
XmCWidget
Widget
NULL
SG
XmNequalSize
Specifies whether the children are to be maintained with equal sized heights and
widths. The chosen height and width for the children is found by asking each
child for its preferred size and taking the largest value in each direction.
XmNfillOption
Specifies how to use any extra space left over once all children have been sized
according to either their preference or equalSize. There are four options:
XmFillNone
No automatic filling is performed. Center the children in the minor direction and
place the children with equal padding between them in the major direction.
XmFillMinor
Place the children with equal padding between them in
the major direction, but force all the children to take on
the Button Box minor dimension as their minor
direction.
XmFillMajor
Center the children in the minor direction, but expand
all the children in their major direction so that there is
no padding between them. Expand the children such
that their relative sizes remain constant.
XmFillAll
This option combines the placement actions and sizing
actions of XmFillMinor and XmFillMajor.
Regardless of the fill mode, the ButtonBox widget will always leave the specified
margin between its edge and the nearest child. A new String to fillOption
resource converter has been registered to convert the following strings to fill
options: "none", "major", "minor", "all." This resource can therefore be set in an
application defaults file.
XmNmarginHeight
XmNmarginWidth
Specifies the number of pixels to use as a margin around the entire group of
children. The marginHeight value applies to both the top and bottom margins,
while the marginWidth applies to the left and right margins.
XmNorientation
Specifies whether children are to be placed in a row or a column. The orientation
may be either XmHORIZONTAL or XmVERTICAL. If the orientation is
XmHORIZONTAL, the children are placed in a row with the major dimension
being width and the minor dimension being height. If the value is
XmVERTICAL, the children are placed in a column with the major dimension
being height and the minor dimension being width. The default value is
XmHORIZONTAL.
Inherited Resources
Button Box inherits behavior and resources from the
superclasses described in the following tables.
For a complete description of each resource, refer to the
reference page for that superclass.