XmPanedWindow(3X) UNIX System V 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 XmNnavigationType is not XmEXCLUSIVETABGROUP,
PanedWindow sets it to XmSTICKYTABGROUP.
Classes
PanedWindow inherits behavior and resources from the Core,
Composite, Constraint, and XmManager classes.
The class pointer is xmPanedWindowWidgetClass.
The class name is XmPanedWindow.
1 (printed 6/8/92)
XmPanedWindow(3X) UNIX System V XmPanedWindow(3X)
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
Name Class Type Default Access
__________________________________________________________________________
XmNmarginHeight XmCMarginHeight Dimension 3 CSG
XmNmarginWidth XmCMarginWidth Dimension 3 CSG
XmNrefigureMode XmCBoolean Boolean True CSG
XmNsashHeight XmCSashHeight Dimension 10 CSG
XmNsashIndent XmCSashIndent Position -10 CSG
XmNsashShadowThickness XmCShadowThickness Dimension dynamic CSG
XmNsashWidth XmCSashWidth Dimension 10 CSG
XmNseparatorOn XmCSeparatorOn Boolean True CSG
XmNspacing XmCSpacing Dimension 8 CSG
XmNmarginHeight
Specifies the distance between the top and bottom
edges of the PanedWindow and its children.
XmNmarginWidth
Specifies the distance between the left and right
edges of the PanedWindow and its children.
XmNrefigureMode
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.
XmNsashHeight
Specifies the height of the sash.
XmNsashIndent
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
2 (printed 6/8/92)
XmPanedWindow(3X) UNIX System V XmPanedWindow(3X)
to be offset from the far (right) side of the
PanedWindow. 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 XmNstringDirection resource.
XmNsashShadowThickness
Specifies the thickness of the shadows of the
sashes.
XmNsashWidth
Specifies the width of the sash.
XmNseparatorOn
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.
XmNspacing
Specifies the distance between each child pane.
XmPanedWindow Constraint Resource Set
Name Class Type Default Access
__________________________________________________________________________
XmNallowResize XmCBoolean Boolean False CSG
XmNpaneMaximum XmCPaneMaximum Dimension 1000 CSG
XmNpaneMinimum XmCPaneMinimum Dimension 1 CSG
XmNpositionIndex XmCPositionIndex short XmLAST_POSITION CSG
XmNskipAdjust XmCBoolean Boolean False CSG
XmNallowResize
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.
XmNpaneMaximum
Allows an application to specify the maximum size
to which a pane may be resized. This value must
be greater than the specified minimum.
XmNpaneMinimum
Allows an application to specify the minimum size
3 (printed 6/8/92)
XmPanedWindow(3X) UNIX System V XmPanedWindow(3X)
to which a pane may be resized. This value must
be greater than 0.
XmNpositionIndex
Specifies the position of the widget in its
parent'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
XmLASTPOSITION (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.
XmNskipAdjust
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
Name Class Type Default Access
_________________________________________________________________________________________________
XmNbottomShadowColor XmCBottomShadowColor Pixel dynamic CSG
XmNbottomShadowPixmap XmCBottomShadowPixmap Pixmap XmUNSPECIFIED_PIXMAP CSG
XmNforeground XmCForeground Pixel dynamic CSG
4 (printed 6/8/92)
XmPanedWindow(3X) UNIX System V XmPanedWindow(3X)
XmNhelpCallback XmCCallback XtCallbackList NULL C
XmNhighlightColor XmCHighlightColor Pixel dynamic CSG
XmNhighlightPixmap XmCHighlightPixmap Pixmap dynamic CSG
XmNinitialFocus XmCInitialFocus Widget NULL CSG
XmNnavigationType XmCNavigationType XmNavigationType XmTAB_GROUP CSG
XmNshadowThickness XmCShadowThickness Dimension 2 CSG
XmNstringDirection XmCStringDirection XmStringDirection dynamic CG
XmNtopShadowColor XmCTopShadowColor Pixel dynamic CSG
XmNtopShadowPixmap XmCTopShadowPixmap Pixmap dynamic CSG
XmNtraversalOn XmCTraversalOn Boolean True CSG
XmNunitType XmCUnitType unsigned char dynamic CSG
XmNuserData XmCUserData XtPointer NULL CSG
Core Resource Set
Name Class Type Default Access
______________________________________________________________________________________________________________
XmNaccelerators XmCAccelerators XtAccelerators dynamic CSG
XmNancestorSensitive XmCSensitive Boolean dynamic G
XmNbackground XmCBackground Pixel dynamic CSG
XmNbackgroundPixmap XmCPixmap Pixmap XmUNSPECIFIED_PIXMAP CSG
XmNborderColor XmCBorderColor Pixel XtDefaultForeground CSG
XmNborderPixmap XmCPixmap Pixmap XmUNSPECIFIED_PIXMAP CSG
XmNborderWidth XmCBorderWidth Dimension 0 CSG
XmNcolormap XmCColormap Colormap dynamic CG
XmNdepth XmCDepth int dynamic CG
XmNdestroyCallback XmCCallback XtCallbackList NULL C
XmNheight XmCHeight Dimension dynamic CSG
XmNinitialResourcesPersistent XmCInitialResourcesPersistent Boolean True C
XmNmappedWhenManaged XmCMappedWhenManaged Boolean True CSG
XmNscreen XmCScreen Screen * dynamic CG
XmNsensitive XmCSensitive Boolean True CSG
XmNtranslations XmCTranslations XtTranslations dynamic CSG
XmNwidth XmCWidth Dimension dynamic CSG
XmNx XmCPosition Position 0 CSG
XmNy XmCPosition Position 0 CSG
Composite Resource Set
Name Class Type Default Access
________________________________________________________________________________
XmNchildren XmCReadOnly WidgetList NULL G
XmNinsertPosition XmCInsertPosition XtOrderProc default procedure CSG
XmNnumChildren XmCReadOnly Cardinal 0 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 table.
BSelect Press: SashAction(Start)
BSelect Motion:SashAction(Move)
5 (printed 6/8/92)
XmPanedWindow(3X) UNIX System V XmPanedWindow(3X)
BSelect Release:SashAction(Commit)
BDrag Press: SashAction(Start)
BDrag Motion: SashAction(Move)
BDrag Release: SashAction(Commit)
KUp: SashAction(Key,DefaultIncr,Up)
MCtrl KUp: SashAction(Key,LargeIncr,Up)
KDown: SashAction(Key,DefaultIncr,Down)
MCtrl KDown: SashAction(Key,LargeIncr,Down)
KNextField: NextTabGroup()
KPrevField: PrevTabGroup()
KHelp: Help()
Action Routines
The XmPanedWindow action routines are described below:
Help(): Calls the callbacks for XmNhelpCallback if any
exist. If there are no help callbacks for this
widget, this action calls the help callbacks for
the nearest ancestor that has them.
NextTabGroup():
Moves the keyboard focus to the next tab group.
By default each pane and sash is a tab group.
PrevTabGroup():
Moves the keyboard focus to the previous tab
group. By default each pane and sash is a tab
group.
SashAction(action) or SashAction(Key,increment,direction):
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.
6 (printed 6/8/92)
XmPanedWindow(3X) UNIX System V XmPanedWindow(3X)
Note that the SashAction action routine is not a
direct action routine of the XmPanedWindow, but
rather an action of the Sash control created by
the XmPanedWindow.
Additional Behavior
This widget has the additional behavior described below:
<FocusIn>:
Moves the keyboard focus to the sash and
highlights it.
<FocusOut>:
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).
RELATED INFORMATION
Composite(3X), Constraint(3X), Core(3X),
XmCreatePanedWindow(3X), and XmManager(3X).
7 (printed 6/8/92)