VendorShell - Man Page

The VendorShell widget class

Synopsis

#include <Xm/Xm.h>
#include <X11/Shell.h>

Description

VendorShell is a Motif widget class used as a supporting superclass for all shell classes that are visible to the window manager and that are not override redirect. It contains resources that describe the MWM-specific look and feel. It also manages the MWM-specific communication needed by all VendorShell subclasses. See the mwm reference page for more information.

It is also responsible for managing toolTips. All XmPrimitive and XmGadget subclasses have an XmNtoolTipString resource. If XmNtoolTipEnable is True, and the pointer enters a Primitive or Gadget that has traversal enabled, and the XmNtoolTipString is not NULL, the XmNtoolTipString will be displayed according to the VendorShell resources for controlling toolTips. VendorShell displays the XmNtooTipString in an XmLabel that is a child of a transientShell. The name of the transientShell is TipShell, and the name of the XmLabel is TipLabel. The appearance of the tip can be controlled by specifing resources on these widgets.

If an application uses the XmNmwmDecorations, XmNmwmFunctions, or XmNmwmInputMode resource, it should include the file Xm/MwmUtil.h.

Setting XmNheight, XmNwidth, or XmNborderWidth for either a VendorShell or its managed child usually sets that resource to the same value in both the parent and the child. When an off-the-spot input method exists, the height and width of the shell may be greater than those of the managed child in order to accommodate the input method. In this case, setting XmNheight or XmNwidth for the shell does not necessarily set that resource to the same value in the managed child, and setting XmNheight or XmNwidth for the child does not necessarily set that resource to the same value in the shell.

For the managed child of a VendorShell, regardless of the value of the shell's XmNallowShellResize, setting XmNx or XmNy sets the corresponding resource of the parent but does not change the child's position relative to the parent. XtGetValues for the child's XmNx or XmNy yields the value of the corresponding resource in the parent. The x and y-coordinates of the child's upper left outside corner relative to the parent's upper left inside corner are both 0 (zero) minus the value of XmNborderWidth.

Note that the Inter-Client Communication Conventions Manual (ICCCM) allows a window manager to change or control the border width of a reparented top-level window.

VendorShell holds the XmQTspecifyRenderTable trait.

Classes

VendorShell inherits behavior, resources, and traits from the Core, Composite, Shell, and WMShell classes.

The class pointer is vendorShellWidgetClass.

The class name is VendorShell.

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 subresource 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 subresource 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 subresource can be set at creation time (C), set by using XtSetValues (S), retrieved by using XtGetValues (G), or is not applicable (N/A).

VendorShell Resource Set
NameClassTypeDefaultAccess





XmNaudibleWarningXmCAudibleWarningunsigned charXmBELLCSG





XmNbuttonFontListXmCButtonFontListXmFontListdynamicCSG





XmNbuttonRenderTableXmCButtonRenderTableXmRenderTabledynamicCSG





XmNdefaultFontListXmCDefaultFontListXmFontListdynamicCG





XmNdeleteResponseXmCDeleteResponseunsigned charXmDESTROYCSG





XmNinputMethodXmCInputMethodstringNULLCSG





XmNinputPolicyXmCInputPolicyXmInputPolicyXmPER_SHELLCSG





XmNkeyboardFocusPolicyXmCKeyboardFocusPolicyunsigned charXmEXPLICITCSG





XmNlabelFontListXmCLabelFontListXmFontListdynamicCSG





XmNlabelRenderTableXmCLabelRenderTabelXmRenderTabledynamicCSG





XmNlayoutDirectionXmCLayoutDirectionXmDirectionXmLEFT_TO_RIGHTCG





XmNmwmDecorationsXmCMwmDecorationsint-1CG





XmNmwmFunctionsXmCMwmFunctionsint-1CG





XmNmwmInputModeXmCMwmInputModeint-1CG





XmNmwmMenuXmCMwmMenuStringNULLCG





XmNpreeditTypeXmCPreeditTypeStringdynamicCSG





XmNverifyPreeditXmCVerifyPreeditBooleanFalseCSG





XmNshellUnitTypeXmCShellUnitTypeunsigned charXmPIXELSCSG





XmNtextFontListXmCTextFontListXmFontListdynamicCSG





XmNtextRenderTableXmCTextRenderTableXmRenderTabledynamicCSG





XmNtoolTipPostDelayXmCToolTipPostDelayint5000CSG





XmNtoolTipPostDurationXmCToolTipPostDurationint5000CSG





XmNtoolTipEnableXmCToolTipEnableBooleanFalseCSG





XmNunitTypeXmCUnitTypeunsigned charXmPIXELSCSG





XmNuseAsyncGeometryXmCUseAsyncGeometryBooleanFalseCSG





XmNaudibleWarning

Determines whether an action activates its associated audible cue. The possible values are XmBELL and XmNONE.

XmNbuttonFontList

Specifies the font list used for button descendants. See the XmNbuttonRenderTable resource.

XmNbuttonRenderTable

Specifies the render table used for VendorShell's button descendants. If this value is NULL at initialization and if the value of XmNdefaultFontList is not NULL, XmNbuttonRenderTable is initialized to the value of XmNdefaultFontList. If the value of XmNdefaultFontList is NULL, the parent hierarchy of the widget is searched for an ancestor that holds the XmQTspecifyRenderTable trait. If such an ancestor is found, XmNbuttonRenderTable is initialized to the XmBUTTON_RENDER_TABLE value of the ancestor widget. If no such ancestor is found, the default is implementation dependent. Refer to XmRenderTable(3) for more information on the creation and structure of a render table.

XmNdefaultFontList

Specifies a default font list for VendorShell's descendants. This resource is obsolete and exists for compatibility with earlier releases. It has been replaced by XmNbuttonFontList, XmNlabelFontList, and XmNtextFontList.

XmNdeleteResponse

Determines what action the shell takes in response to a WM_DELETE_WINDOW message. The setting can be one of three values: XmDESTROY, XmUNMAP, and XmDO_NOTHING. The resource is scanned, and the appropriate action is taken after the WM_DELETE_WINDOW callback list (if any) that is registered with the Protocol manager has been called.

XmNinputMethod

Specifies the string that sets the locale modifier for the input method. When XtGetValues is called on this resource, the returned value is a pointer to the actual resource value and should not be freed.

XmNinputPolicy

Specifies the policy to follow for creating an Input Context (IC) for this shell. This resource can have the following values:

XmPER_SHELL

Specifies that only one XIC is created per shell.

XmPER_WIDGET

Specifies that one XIC is created for each widget.

XmNkeyboardFocusPolicy

Determines allocation of keyboard focus within the widget hierarchy rooted at this shell. The X keyboard focus must be directed to somewhere in the hierarchy for this client-side focus management to take effect. Possible values are XmEXPLICIT, specifying a click-to-type policy, and XmPOINTER, specifying a pointer-driven policy.

XmNlabelFontList

Specifies the font list used for label descendants. See the XmNlabelRenderTable resource.

XmNlabelRenderTable

Specifies the font list used for VendorShell's label descendants (Labels and LabelGadgets). If this value is NULL at initialization and if the value of XmNdefaultFontList is not NULL, XmNlabelFontList is initialized to the value of XmNdefaultFontList. If the value of XmNdefaultFontList is NULL, the parent hierarchy of the widget is searched for an ancestor that holds the XmQTspecifyRenderTable trait. If such an ancestor is found, XmNlabelRenderTable is initialized to the XmLABEL_RENDER_TABLE of the ancestor widget. If no such ancestor is found, the default is implementation dependent. Refer to XmRenderTable(3) for more information on the creation and structure of a render table.

XmNlayoutDirection

Specifies the direction in which the subwidgets, children of a widget, or other visual components are to be laid out. This policy will apply as the default layout policy for all descendants of this VendorShell.

XmNmwmDecorations

Specifies the decoration flags (specific decorations to add or remove from the window manager frame) for the _MOTIF_WM_HINTS property. If any decoration flags are specified by the _MOTIF_WM_HINTS property, only decorations indicated by both that property and the MWM clientDecoration and transientDecoration resources are displayed. If no decoration flags are specified by the _MOTIF_WM_HINTS property, decorations indicated by the MWM clientDecoration and transientDecoration resources are displayed. The default for the XmNmwmDecorations resource is not to specify any decoration flags for the _MOTIF_WM_HINTS property.

The value of this resource is the bitwise inclusive OR of one or more flag bits. The possible flag bit constants, defined in the include file Xm/MwmUtil.h, are

MWM_DECOR_ALL

All decorations except those specified by other flag bits that are set

MWM_DECOR_BORDER

Client window border

MWM_DECOR_RESIZEH

Resize frame handles

MWM_DECOR_TITLE

Title bar

MWM_DECOR_MENU

Window menu button

MWM_DECOR_MINIMIZE

Minimize window button

MWM_DECOR_MAXIMIZE

Maximize window button

XmNmwmFunctions

Specifies the function flags (specific window manager functions to apply or not apply to the client window) for the _MOTIF_WM_HINTS property. If any function flags are specified by the _MOTIF_WM_HINTS property, only functions indicated by both that property and the MWM clientFunctions and transientFunctions resources are applied. If no function flags are specified by the _MOTIF_WM_HINTS property, functions indicated by the MWM clientFunctions and transientFunctions resources are applied. The default for the XmNmwmFunctions resource is not to specify any function flags for the _MOTIF_WM_HINTS property.

The value of this resource is the bitwise inclusive OR of one or more flag bits. The possible flag bit constants, defined in the include file Xm/MwmUtil.h, are

MWM_FUNC_ALL

All functions except those specified by other flag bits that are set

MWM_FUNC_RESIZE

f.resize

MWM_FUNC_MOVE

f.move

MWM_FUNC_MINIMIZE

f.minimize

MWM_FUNC_MAXIMIZE

f.maximize

MWM_FUNC_CLOSE

f.kill

XmNmwmInputMode

Specifies the input mode flag (application modal or system modal input constraints) for the _MOTIF_WM_HINTS property. If no input mode flag is specified by the _MOTIF_WM_HINTS property, no input constraints are applied, and input goes to any window. The default for the XmNmwmInputMode resource is not to specify any input mode flag for the _MOTIF_WM_HINTS property.

An application that sets input constraints on a dialog usually uses the BulletinBoard's XmNdialogStyle resource rather than the parent DialogShell's XmNmwmInputMode resource.

The possible values for this resource, defined in the include file Xm/MwmUtil.h, are

MWM_INPUT_MODELESS

Input goes to any window.

MWM_INPUT_PRIMARY_APPLICATION_MODAL

Input does not go to ancestors of this window.

MWM_INPUT_SYSTEM_MODAL

Input goes only to this window.

MWM_INPUT_FULL_APPLICATION_MODAL

Input does not go to other windows in this application.

XmNmwmMenu

Specifies the menu items that the Motif window manager should add to the end of the window menu. The string contains a list of items separated by 0fP with the following format:

label [mnemonic] [accelerator] function

If more than one item is specified, the items should be separated by a newline character.

When XtGetValues is called on this resource, the returned value is a pointer to the actual resource value and should not be freed.

XmNpreeditType

Specifies the input method style or styles available to the input manager. The resource can be a comma-separated list of the following values:

Preedit Values
Preedit ValueXIM Style


OffTheSpotXIMPreeditArea


RootXIMPreeditNothing


NoneXIMPreeditNone


OverTheSpotXIMPreeditPosition


OnTheSpotXIMPreeditCallbacks


When XtGetValues is called on this resource, the returned value is a pointer to the actual resource value and should not be freed.

XmNshellUnitType

This resource is obsolete, and is included only for compatibility with earlier releases of Motif. Use the XmNunitType resource instead.

XmNtextFontList

Specifies the font list used for text descendants. See the XmNtextRenderTable resource.

XmNtextRenderTable

Specifies the render table used for VendorShell's Text and List descendants. If this value is NULL at initialization and if the value of XmNdefaultFontList is not NULL, XmNtextRenderTable is initialized to the value of XmNdefaultFontList. If the value of XmNdefaultFontList is NULL, the parent hierarchy of the widget is searched for an ancestor that holds the XmQTspecifyRenderTable trait. If such an ancestor is found, XmNtextRenderTable is initialized to the XmTEXT_RENDER_TABLE value of the ancestor widget. If no such ancestor is found, the default is implementation dependent. Refer to XmRenderTable(3) for more information on the creation and structure of a render table.

XmNtoolTipEnable

Specifies whether toolTips are enabled for this shell or not.

XmNtoolTipPostDelay

Specifies the time, in milliseconds, to wait after the pointer enters a widget before posting the toolTip associated with this widget.

XmNtoolTipPostDuration

Specifies the time, in milliseconds, that the toolTip is displayed. A value of 0 will display the tip indefinitely.

XmNunitType

Provides the basic support for resolution independence. It defines the type of units a widget uses with sizing and positioning resources. The resource has a default unit type of XmPIXELS.

The unit type can also be specified in resource files, with the following format:

<floating value><unit>

where:

unit

is <" ", pixels, inches, centimeters, millimeters, points, font units>

pixels

is <pix, pixel, pixels>

inches

is <in, inch, inches>

centimeter

is <cm, centimeter, centimeters>

millimeters

is <mm, millimeter, millimeters>

points

is <pt, point, points>

font units

is <fu, font_unit, font_units>

float

is {"+"|"-"}{{<"0"-"9">*}.}<"0"-"9">*

Note that the type Dimension must always be positive.

For example,

xmfonts*XmMainWindow.height: 10.4cm
*PostIn.width: 3inches

XmNunitType can have the following values:

XmPIXELS

All values provided to the widget are treated as normal pixel values.

XmMILLIMETERS

All values provided to the widget are treated as normal millimeter values.

Xm100TH_MILLIMETERS

All values provided to the widget are treated as 1/100 of a millimeter.

XmCENTIMETERS

All values provided to the widget are treated as normal centimeter values.

XmINCHES

All values provided to the widget are treated as normal inch values.

Xm1000TH_INCHES

All values provided to the widget are treated as 1/1000 of an inch.

XmPOINTS

All values provided to the widget are treated as normal point values. A point is a unit used in text processing applications and is defined as 1/72 of an inch.

Xm100TH_POINTS

All values provided to the widget are treated as 1/100 of a point. A point is a unit used in text processing applications and is defined as 1/72 of an inch.

XmFONT_UNITS

All values provided to the widget are treated as normal font units. A font unit has horizontal and vertical components. These are the values of the XmScreen resources XmNhorizontalFontUnit and XmNverticalFontUnit.

Xm100TH_FONT_UNITS

All values provided to the widget are treated as 1/100 of a font unit. A font unit has horizontal and vertical components. These are the values of the XmScreen resources XmNhorizontalFontUnit and XmNverticalFontUnit.

For more information about units, refer to the XmConvertUnits reference page.

XmNuseAsyncGeometry

Specifies whether the geometry manager should wait for confirmation of a geometry request to the window manager. When the value of this resource is True, the geometry manager forces XmNwaitForWm to False and XmNwmTimeout to 0, and it relies on asynchronous notification. When the value of this resource is False, XmNwaitForWm and XmNwmTimeout are unaffected. The default is False.

Inherited Resources

VendorShell inherits behavior and resources from the superclasses described in the following tables. For a complete description of each resource, refer to the reference page for that superclass.

WMShell Resource Set
NameClassTypeDefaultAccess





XmNbaseHeightXmCBaseHeightintXtUnspecifiedShellIntCSG





XmNbaseWidthXmCBaseWidthintXtUnspecifiedShellIntCSG





XmNheightIncXmCHeightIncintXtUnspecifiedShellIntCSG





XmNiconMaskXmCIconMaskPixmapNULLCSG





XmNiconPixmapXmCIconPixmapPixmapNULLCSG





XmNiconWindowXmCIconWindowWindowNULLCSG





XmNiconXXmCIconXintXtUnspecifiedShellIntCSG





XmNiconYXmCIconYintXtUnspecifiedShellIntCSG





XmNinitialStateXmCInitialStateintNormalStateCSG





XmNinputXmCInputBooleanTrueCSG





XmNmaxAspectXXmCMaxAspectXintXtUnspecifiedShellIntCSG





XmNmaxAspectYXmCMaxAspectYintXtUnspecifiedShellIntCSG





XmNmaxHeightXmCMaxHeightintXtUnspecifiedShellIntCSG





XmNmaxWidthXmCMaxWidthintXtUnspecifiedShellIntCSG





XmNminAspectXXmCMinAspectXintXtUnspecifiedShellIntCSG





XmNminAspectYXmCMinAspectYintXtUnspecifiedShellIntCSG





XmNminHeightXmCMinHeightintXtUnspecifiedShellIntCSG





XmNminWidthXmCMinWidthintXtUnspecifiedShellIntCSG





XmNtitleXmCTitleStringdynamicCSG





XmNtitleEncodingXmCTitleEncodingAtomdynamicCSG





XmNtransientXmCTransientBooleanFalseCSG





XmNwaitForWmXmCWaitForWmBooleanTrueCSG





XmNwidthIncXmCWidthIncintXtUnspecifiedShellIntCSG





XmNwindowGroupXmCWindowGroupWindowdynamicCSG





mNwinGravityXmCWinGravityintdynamicCSG





XmNwmTimeoutXmCWmTimeoutint5000 msCSG





Shell Resource Set
NameClassTypeDefaultAccess





XmNallowShellResizeXmCAllowShellResizeBooleanFalseCG





XmNcreatePopupChildProcXmCCreatePopupChildProcXtCreatePopupChildProcNULLCSG





XmNgeometryXmCGeometryStringNULLCSG





XmNoverrideRedirectXmCOverrideRedirectBooleanFalseCSG





XmNpopdownCallbackXmCCallbackXtCallbackListNULLC





XmNpopupCallbackXmCCallbackXtCallbackListNULLC





XmNsaveUnderXmCSaveUnderBooleanFalseCSG





XmNvisualXmCVisualVisual *CopyFromParentCSG





Composite Resource Set
NameClassTypeDefaultAccess





XmNchildrenXmCReadOnlyWidgetListNULLG





XmNinsertPositionXmCInsertPositionXtOrderProcNULLCSG





XmNnumChildrenXmCReadOnlyCardinal0G





Core Resource Set
NameClassTypeDefaultAccess





XmNacceleratorsXmCAcceleratorsXtAcceleratorsdynamicCSG





XmNancestorSensitiveXmCSensitiveBooleandynamicG





XmNbackgroundXmCBackgroundPixeldynamicCSG





XmNbackgroundPixmapXmCPixmapPixmapXmUNSPECIFIED_PIXMAPCSG





XmNborderColorXmCBorderColorPixelXtDefaultForegroundCSG





XmNborderPixmapXmCPixmapPixmapXmUNSPECIFIED_PIXMAPCSG





XmNborderWidthXmCBorderWidthDimension0CSG





XmNcolormapXmCColormapColormapdynamicCG





XmNdepthXmCDepthintdynamicCG





XmNdestroyCallbackXmCCallbackXtCallbackListNULLC





XmNheightXmCHeightDimensiondynamicCSG





XmNinitialResourcesPersistentXmCInitialResourcesPersistentBooleanTrueC





XmNmappedWhenManagedXmCMappedWhenManagedBooleanTrueCSG





XmNscreenXmCScreenScreen *dynamicCG





XmNsensitiveXmCSensitiveBooleanTrueCSG





XmNtranslationsXmCTranslationsXtTranslationsdynamicCSG





XmNwidthXmCWidthDimensiondynamicCSG





XmNxXmCPositionPosition0CSG





XmNyXmCPositionPosition0CSG





Translations

There are no translations for VendorShell.

Referenced By

ApplicationShell(3), mwm(1), TopLevelShell(3), TransientShell(3), XmActivateProtocol(3), XmActivateWMProtocol(3), XmAddProtocolCallback(3), XmAddProtocols(3), XmAddWMProtocolCallback(3), XmAddWMProtocols(3), XmDeactivateProtocol(3), XmDeactivateWMProtocol(3), XmDialogShell(3), XmDisplay(3), XmGadget(3), XmPrimitive(3), XmRemoveProtocolCallback(3), XmRemoveProtocols(3), XmRemoveWMProtocolCallback(3), XmRemoveWMProtocols(3), XmSetProtocolHooks(3), XmSetWMProtocolHooks(3).