MainWindow provides a standard layout for the primary window of an
application. This layout includes a MenuBar, a CommandWindow, a work
region, a MessageWindow, and ScrollBars. Any or all of these areas are
optional. The work region and ScrollBars in the MainWindow behave
identically to the work region and ScrollBars in the ScrolledWindow
widget. The user can think of the MainWindow as an extended ScrolledWindow
with an optional MenuBar and optional CommandWindow and MessageWindow.
In a fully-loaded MainWindow, the MenuBar spans the top of the window
horizontally. The CommandWindow spans the MainWindow horizontally just below
the MenuBar, and the work region lies below the CommandWindow.
The MessageWindow is is below the work region.
Any space remaining below the
MessageWindow is managed in a manner identical to ScrolledWindow.
The behavior of ScrolledWindow can be controlled by the ScrolledWindow
resources. To create a MainWindow, first create the
work region elements, a MenuBar, a CommandWindow, a MessageWindow, a
horizontal ScrollBar, and a vertical ScrollBar widget, and then
call XmMainWindowSetAreas with those widget IDs.
MainWindow
can also create three Separator widgets that provide a visual separation of
MainWindow's four components.
The user can specify resources in a resource file for the automatically
created gadgets that contain the MainWindow separators. The name of the
first separator gadget is ``Separator1''; the second is
``Separator2''; and the third is ``Separator3''.
Classes
MainWindow inherits behavior and resources from Core,
Composite, Constraint, XmManager,
and ScrolledWindow classes.
The class pointer is xmMainWindowWidgetClass.
The class name is XmMainWindow.
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).
XmMainWindow resource set
Name
Class
Type
Default
Access
XmNcommandWindow
XmCCommandWindow
Widget
NULL
CSG
XmNcommandWindowLocation
XmCCommandWindowLocation
unsigned
char
ABOVE
(SeeDesc.)
CG
XmNmainWindowMarginHeight
XmCMainWindowMarginHeight
Dimension
0
CSG
XmNmainWindowMarginWidth
XmCMainWindowMarginWidth
Dimension
0
CSG
XmNmenuBar
XmCMenuBar
Widget
NULL
CSG
XmNmessageWindow
XmCMessageWindow
Widget
NULL
CSG
XmNshowSeparator
XmCShowSeparator
Boolean
False
CSG
XmNcommandWindow
Specifies the widget to be laid out as the CommandWindow. This widget
must have been previously created and managed as a child of MainWindow.
XmNcommandWindowLocation
Controls the position of the command window. XmCOMMAND_ABOVE_WORKSPACE
locates the command window between the menu bar and the work window.
XmCOMMAND_BELOW_WORKSPACE locates the command window between the
work window and the message window.
XmNmainWindowMarginHeight
Specifies the margin height on the top and bottom of MainWindow. This
resource overrides any setting of the
ScrolledWindow resource
XmNscrolledWindowMarginHeight.
XmNmainWindowMarginWidth
Specifies the margin width on the right and left sides of MainWindow. This
resource overrides any setting of the ScrolledWindow resource
XmNscrolledWindowMarginWidth.
XmNmenuBar
Specifies the widget to be laid out as the MenuBar. This widget must
have been previously created and managed as a child of MainWindow.
XmNmessageWindow
Specifies the widget to be laid out as the MessageWindow. This widget
must have been previously created and managed as a child of MainWindow.
The MessageWindow is positioned at the bottom of the MainWindow.
If this value is NULL, no message window is included in the MainWindow.
XmNshowSeparator
Displays separators between the components of the MainWindow when set
to True. If set to False, no separators are displayed.
Inherited resources
MainWindow inherits behavior and resources from the following
superclasses. For a complete description of each resource, refer to the
man page for that superclass.
XmScrolledWindow resource set
Name
Class
Type
Default
Access
XmNclipWindow
XmCClipWindow
Widget
dynamic
G
XmNhorizontalScrollBar
XmCHorizontalScrollBar
Widget
dynamic
CSG
XmNscrollBarDisplayPolicy
XmCScrollBarDisplayPolicy
unsigned
char
dynamic
CSG
XmNscrollBarPlacement
XmCScrollBarPlacement
unsigned
char
XmBOTTOM_RIGHT
CSG
XmNscrolledWindowMarginHeight
XmCScrolledWindowMarginHeight
Dimension
0
N/A
XmNscrolledWindowMarginWidth
XmCScrolledWindowMarginWidth
Dimension
0
N/A
XmNscrollingPolicy
XmCScrollingPolicy
unsigned
char
XmAPPLICATION_DEFINED
CG
XmNspacing
XmCSpacing
Dimension
4
CSG
XmNtraverseObscuredCallback
XmCCallback
XtCallbackList
NULL
CSG
XmNverticalScrollBar
XmCVerticalScrollBar
Widget
dynamic
CSG
XmNvisualPolicy
XmCVisualPolicy
unsigned char
dynamic
G
XmNworkWindow
XmCWorkWindow
Widget
NULL
CSG
XmManager resource set
Name
Class
Type
Default
Access
XmNbottomShadowColor
XmCBottomShadowColor
Pixel
dynamic
CSG
XmNbottomShadowPixmap
XmCBottomShadowPixmap
Pixmap
XmUNSPECIFIED_PIXMAP
CSG
XmNforeground
XmCForeground
Pixel
dynamic
CSG
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
0
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
Composite resource set
Name
Class
Type
Default
Access
XmNchildren
XmCReadOnly
WidgetList
NULL
G
XmNinsertPosition
XmCInsertPosition
XtOrderProc
NULL
CSG
XmNnumChildren
XmCReadOnly
Cardinal
0
G
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
Translations
MainWindow inherits translations from ScrolledWindow.