DOKK / manpages / debian 12 / libmotif-dev / XmDirection.3.en
XmDirection(3) Library Functions Manual XmDirection(3)

XmDirection — Data type for the direction of widget components "XmDirection" "data types" "XmDirection"

#include <Xm/Xm.h>

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:

Specifies that the components are laid out from right to left first, then top to bottom.
Specifies that the components are laid out from left to right first, then top to bottom.
Specifies that the components are laid out from right to left first, then bottom to top.
Specifies that the components are laid out from left to right first, then bottom to top.
Specifies that the components are laid out from top to bottom first, then right to left.
Specifies that the components are laid out from top to bottom first, then left to right.
Specifies that the components are laid out from bottom to top first, then right to left.
Specifies that the components are laid out from bottom to top first, then left to right.
Specifies that the components are laid out from top to bottom. If horizontal direction is important, do not use this constant.
Specifies that the components are laid out from bottom to top. If horizontal direction is important, do not use this constant.
Specifies that the components are laid out according to the default direction. (This constant is primarily for widget writers.)
Specifies that the components are laid out from left to right. If vertical direction is important, do not use this constant.
Specifies that the components are laid out from right to left. If vertical direction is important, do not use this constant.

XmDirectionMatch(3), XmDirectionMatchPartial(3), XmDirectionToStringDirection(3), XmString(3), XmStringDirection(3), and XmStringDirectionToDirection(3).