XmDirection is the data type specifying the direction in which
the system displays subwidgets, children of
widgets, or other visual components that are to be laid out.
This data type also affects traversal order within tab groups.
XmDirection is implemented as an unsigned char bit mask.
The horizontal and vertical directions can be specified independent of
each other. XmDirection also specifies the precedence of the
horizontal and vertical directions relative to each other. For
example, a value of XmRIGHT_TO_LEFT_TOP_TO_BOTTOM lays out a
component horizontally from right to left first, then vertically
top to bottom.
XmDirection provides the following masks, each of which
corresponds to a particular bit in XmDirection:
•
XmRIGHT_TO_LEFT_MASK
•
XmLEFT_TO_RIGHT_MASK
•
XmTOP_TO_BOTTOM_MASK
•
XmBOTTOM_TO_TOP_MASK
•
XmPRECEDENCE_HORIZ_MASK
•
XmPRECEDENCE_VERT_MASK
In addition to the preceding single bit masks, XmDirection
also provides the following multiple bit masks. These multiple
bit masks are particularly useful as arguments to
XmDirectionMatchPartial:
•
XmHORIZONTAL_MASK
•
XmPRECEDENCE_MASK
•
XmVERTICAL_MASK
Motif also provides the following enumerated constants for
specifying various combinations of directions:
XmRIGHT_TO_LEFT_TOP_TO_BOTTOM
Specifies that the components are laid out from right to left first, then
top to bottom.
XmLEFT_TO_RIGHT_TOP_TO_BOTTOM
Specifies that the components are laid out from left to right first, then
top to bottom.
XmRIGHT_TO_LEFT_BOTTOM_TO_TOP
Specifies that the components are laid out from right to left first, then
bottom to top.
XmLEFT_TO_RIGHT_BOTTOM_TO_TOP
Specifies that the components are laid out from left to right first, then
bottom to top.
XmTOP_TO_BOTTOM_RIGHT_TO_LEFT
Specifies that the components are laid out from top to bottom first, then
right to left.
XmTOP_TO_BOTTOM_LEFT_TO_RIGHT
Specifies that the components are laid out from top to bottom first, then
left to right.
XmBOTTOM_TO_TOP_RIGHT_TO_LEFT
Specifies that the components are laid out from bottom to top first, then
right to left.
XmBOTTOM_TO_TOP_LEFT_TO_RIGHT
Specifies that the components are laid out from bottom to top first, then
left to right.
XmTOP_TO_BOTTOM
Specifies that the components are laid out from top to bottom.
If horizontal direction is important, do not use this constant.
XmBOTTOM_TO_TOP
Specifies that the components are laid out from bottom to top.
If horizontal direction is important, do not use this constant.
XmDEFAULT_DIRECTION
Specifies that the components are laid out according to the default
direction. (This constant is primarily for widget writers.)
XmLEFT_TO_RIGHT
Specifies that the components are laid out from left to right.
If vertical direction is important, do not use this constant.
XmRIGHT_TO_LEFT
Specifies that the components are laid out from right to left.
If vertical direction is important, do not use this constant.