XmMainWindow(3X)

NAME
XmMainWindow - The MainWindow widget class

SYNOPSIS
#include <Xm/MainW.h>

DESCRIPTION
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.

RELATED INFORMATION
Composite(3X), Constraint(3X), Core(3X), XmCreateMainWindow(3X), XmMainWindowSep1(3X), XmMainWindowSep2(3X), XmMainWindowSep3(3X), XmMainWindowSetAreas(3X), XmManager(3X), and XmScrolledWindow(3X)