XmPanedWindow(3X) XmPanedWindow(3X)
NAME
XmPanedWindow - The PanedWindow widget class
SYNOPSIS
#include <Xm/PanedW.h>
DESCRIPTION
PanedWindow is a composite widget that lays out children in a vertically tiled format. Children appear in top-to-bottom fashion, with the
first child inserted appearing at the top of the PanedWindow and the last child inserted appearing at the bottom. The PanedWindow grows to
match the width of its widest child and all other children are forced to this width. The height of the PanedWindow is equal to the sum of
the heights of all its children, the spacing between them, and the size of the top and bottom margins.
The user can also adjust the size of the panes. To facilitate this adjustment, a pane control sash is created for most children. The sash
appears as a square box positioned on the bottom of the pane that it controls. The user can adjust the size of a pane by using the mouse
or keyboard.
The PanedWindow is also a constraint widget, which means that it creates and manages a set of constraints for each child. You can specify
a minimum and maximum size for each pane. The PanedWindow does not allow a pane to be resized below its minimum size or beyond its maximum
size. Also, when the minimum size of a pane is equal to its maximum size, no control sash is presented for that pane or for the lowest
pane.
The default XmNinsertPosition procedure for PanedWindow causes sashes to be inserted at the end of the list of children and causes non-sash
widgets to be inserted after other non-sash children but before any sashes.
All panes and sashes in a PanedWindow must be tab groups. When a pane is inserted as a child of the PanedWindow, if the pane's XmNnaviga-
tionType is not XmEXCLUSIVE_TAB_GROUP, PanedWindow sets it to XmSTICKY_TAB_GROUP.
Classes
PanedWindow inherits behavior and resources from the Core, Composite, Constraint, and XmManager classes.
The class pointer is xmPanedWindowWidgetClass.
The class name is XmPanedWindow.
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).
XmPanedWindow Resource Set
Class: XmCMarginHeight Default: 3 Type: Dimension Access: CSG Class: XmCMarginWidth Default: 3 Type: Dimension Access: CSG Class: XmC-
Boolean Default: True Type: Boolean Access: CSG Class: XmCSashHeight Default: 10 Type: Dimension Access: CSG Class: XmCSashIndent
Default: -10 Type: Position Access: CSG Class: XmCShadowThickness Default: dynamic Type: Dimension Access: CSG Class: XmCSashWidth
Default: 10 Type: Dimension Access: CSG Class: XmCSeparatorOn Default: True Type: Boolean Access: CSG Class: XmCSpacing Default: 8 Type:
Dimension Access: CSG
Specifies the distance between the top and bottom edges of the PanedWindow and its children. Specifies the distance between the left and
right edges of the PanedWindow and its children. Determines whether the panes' positions are recomputed and repositioned when programmatic
changes are being made to the PanedWindow. Setting this resource to True resets the children to their appropriate positions. Specifies
the height of the sash. Specifies the horizontal placement of the sash along each pane. A positive value causes the sash to be offset
from the near (left) side of the PanedWindow, and a negative value causes the sash to be offset from the far (right) side of the PanedWin-
dow. If the offset is greater than the width of the PanedWindow minus the width of the sash, the sash is placed flush against the near
side of the PanedWindow.
Whether the placement actually corresponds to the left or right side of the PanedWindow may depend on the value of the XmNstringDi-
rection resource. Specifies the thickness of the shadows of the sashes. Specifies the width of the sash. Determines whether a
separator is created between each of the panes. Setting this resource to True creates a Separator at the midpoint between each of
the panes. Specifies the distance between each child pane.
XmPanedWindow Constraint Resource Set
Class: XmCBoolean Default: False Type: Boolean Access: CSG Class: XmCPaneMaximum Default: 1000 Type: Dimension Access: CSG Class: XmC-
PaneMinimum Default: 1 Type: Dimension Access: CSG Class: XmCPositionIndex Default: XmLAST_POSITION Type: short Access: CSG Class: XmC-
Boolean Default: False Type: Boolean Access: CSG
Allows an application to specify whether the PanedWindow should allow a pane to request to be resized. This flag has an effect only
after the PanedWindow and its children have been realized. If this flag is set to True, the PanedWindow tries to honor requests to
alter the height of the pane. If False, it always denies pane requests to resize. Allows an application to specify the maximum
size to which a pane may be resized. This value must be greater than the specified minimum. Allows an application to specify the
minimum size to which a pane may be resized. This value must be greater than 0. Specifies the position of the widget in its par-
ent's list of children (the list of pane children, not including sashes). The value is an integer that is no less than zero and no
greater than the number of children in the list at the time the value is specified. A value of zero means that the child is placed
at the beginning of the list. The value can also be specified as XmLAST_POSITION (the default), which means that the child is
placed at the end of the list. Any other value is ignored. XtGetValues returns the position of the widget in its parent's child
list at the time of the call to XtGetValues.
When a widget is inserted into its parent's child list, the positions of any existing children that are greater than or equal to the
specified widget's XmNpositionIndex are increased by one. The effect of a call to XtSetValues for XmNpositionIndex is to remove the
specified widget from its parent's child list, decrease by one the positions of any existing children that are greater than the
specified widget's former position in the list, and then insert the specified widget into its parent's child list as described in
the preceding sentence. When set to True, this Boolean resource allows an application to specify that the PanedWindow should not
automatically resize this pane.
Inherited Resources
PanedWindow inherits behavior and resources from the following superclasses. For a complete description of each resource, refer to the man
page for that superclass.
XmManager Resource Set
Class: XmCBottomShadowColor Default: dynamic Type: Pixel Access: CSG Class: XmCBottomShadowPixmap Default: XmUNSPECIFIED_PIXMAP Type:
Pixmap Access: CSG Class: XmCForeground Default: dynamic Type: Pixel Access: CSG Class: XmCCallback Default: NULL Type: XtCallbackList
Access: C Class: XmCHighlightColor Default: dynamic Type: Pixel Access: CSG Class: XmCHighlightPixmap Default: dynamic Type: Pixmap
Access: CSG Class: XmCInitialFocus Default: NULL Type: Widget Access: CSG Class: XmCNavigationType Default: XmTAB_GROUP Type: XmNaviga-
tionType Access: CSG Class: XmCShadowThickness Default: 2 Type: Dimension Access: CSG Class: XmCStringDirection Default: dynamic Type:
XmStringDirection Access: CG Class: XmCTopShadowColor Default: dynamic Type: Pixel Access: CSG Class: XmCTopShadowPixmap Default: dynamic
Type: Pixmap Access: CSG Class: XmCTraversalOn Default: True Type: Boolean Access: CSG Class: XmCUnitType Default: dynamic Type:
unsigned char Access: CSG Class: XmCUserData Default: NULL Type: XtPointer Access: CSG
Core Resource Set
Class: XmCAccelerators Default: dynamic Type: XtAccelerators Access: CSG Class: XmCSensitive Default: dynamic Type: Boolean Access: G
Class: XmCBackground Default: dynamic Type: Pixel Access: CSG Class: XmCPixmap Default: XmUNSPECIFIED_PIXMAP Type: Pixmap Access: CSG
Class: XmCBorderColor Default: XtDefaultForeground Type: Pixel Access: CSG Class: XmCPixmap Default: XmUNSPECIFIED_PIXMAP Type: Pixmap
Access: CSG Class: XmCBorderWidth Default: 0 Type: Dimension Access: CSG Class: XmCColormap Default: dynamic Type: Colormap Access: CG
Class: XmCDepth Default: dynamic Type: int Access: CG Class: XmCCallback Default: NULL Type: XtCallbackList Access: C Class: XmCHeight
Default: dynamic Type: Dimension Access: CSG Class: XmCInitialResourcesPersistent Default: True Type: Boolean Access: C Class: XmCMapped-
WhenManaged Default: True Type: Boolean Access: CSG Class: XmCScreen Default: dynamic Type: Screen * Access: CG Class: XmCSensitive
Default: True Type: Boolean Access: CSG Class: XmCTranslations Default: dynamic Type: XtTranslations Access: CSG Class: XmCWidth Default:
dynamic Type: Dimension Access: CSG Class: XmCPosition Default: 0 Type: Position Access: CSG Class: XmCPosition Default: 0 Type: Posi-
tion Access: CSG
Composite Resource Set
Class: XmCReadOnly Default: NULL Type: WidgetList Access: G Class: XmCInsertPosition Default: default procedure Type: XtOrderProc Access:
CSG Class: XmCReadOnly Default: 0 Type: Cardinal Access: G
Translations
XmPanedWindow inherits translations from XmManager.
The translations for sashes within the PanedWindow are listed below. These translations may not directly correspond to a translation ta-
ble. BSelect Press: SashAction(Start) BSelect Motion:SashAction(Move) BSelect Release:SashAction(Commit) BDrag Press: SashAction(Start)
BDrag Motion: SashAction(Move) BDrag Release: SashAction(Commit) KUp: SashAction(Key,DefaultIncr,Up) MCtrl KUp: SashAc-
tion(Key,LargeIncr,Up) KDown: SashAction(Key,DefaultIncr,Down) MCtrl KDown: SashAction(Key,LargeIncr,Down) KNextField: Next-
TabGroup() KPrevField: PrevTabGroup() KHelp: Help()
Action Routines
The XmPanedWindow action routines are described below: Calls the callbacks for XmNhelpCallback if any exist. If there are no help call-
backs for this widget, this action calls the help callbacks for the nearest ancestor that has them. Moves the keyboard focus to the next
tab group. By default each pane and sash is a tab group. Moves the keyboard focus to the previous tab group. By default each pane and sash
is a tab group. The Start action activates the interactive placement of the pane's borders. The Move action causes the sash to track the
position of the pointer. If one of the panes reaches its minimum or maximum size, adjustment continues with the next adjustable pane. The
Commit action ends sash motion.
When sash action is caused by a keyboard event, the sash with the keyboard focus is moved according to the increment and direction
specified. DefaultIncr adjusts the sash by one line. LargeIncr adjusts the sash by one view region. The direction is specified as
either Up or Down.
Note that the SashAction action routine is not a direct action routine of the XmPanedWindow, but rather an action of the Sash con-
trol created by the XmPanedWindow.
Additional Behavior
This widget has the additional behavior described below: Moves the keyboard focus to the sash and highlights it. Unsets the keyboard focus
in the sash and unhighlights it.
Virtual Bindings
The bindings for virtual keys are vendor specific. For information about bindings for virtual buttons and keys, see VirtualBindings(3X).
SEE ALSO
Composite(3X), Constraint(3X), Core(3X), XmCreatePanedWindow(3X), XmManager(3X)
XmPanedWindow(3X)