Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

Composite(3X)

Constraint(3X)

Core(3X)

XmBulletinBoard(3X)

XmCreateErrorDialog(3X)

XmCreateInformationDialog(3X)

XmCreateMessageBox(3X)

XmCreateMessageDialog(3X)

XmCreateQuestionDialog(3X)

XmCreateTemplateDialog(3X)

XmCreateWarningDialog(3X)

XmCreateWorkingDialog(3X)

XmManager(3X)

XmMessageBoxGetChild(3X)

XmMessageBox(3X)  —  Subroutines

OSF/Motif

NAME

XmMessageBox − The MessageBox widget class

SYNOPSIS

#include <Xm/MessageB.h>

DESCRIPTION

MessageBox is a dialog class used for creating simple message dialogs. Convenience dialogs based on MessageBox are provided for several common interaction tasks, which include giving information, asking questions, and reporting errors. 

A MessageBox dialog is typically transient in nature, displayed for the duration of a single interaction. MessageBox is a subclass of XmBulletinBoard and depends on it for much of its general dialog behavior. 

The default value for XmNinitialFocus is the value of XmNdefaultButton. 

A typical MessageBox contains a message symbol, a message, and up to three standard default PushButtons:  OK, Cancel, and Help. It is laid out with the symbol and message on top and the PushButtons on the bottom.  The help button is positioned to the side of the other push buttons. You can localize the default symbols and button labels for MessageBox convenience dialogs. 

The user can specify resources in a resource file for the gadgets created automatically that contain the MessageBox symbol pixmap and separator.  The gadget names are "Symbol" and "Separator". 

A MessageBox can also be customized by creating and managing new children that are added to the MessageBox children created automatically by the convenience dialogs. In the case of TemplateDialog, only the separator child is created by default. If the callback, string, or pixmap symbol resources are specified, the appropriate child will be created. 

Additional children are laid out in the following manner:

       •The first MenuBar child is placed at the top of the window. 

       •All XmPushButton widgets or gadgets, and their subclasses are placed after the OK button in the order of their creation. 

       •A child that is not in the above categories is placed above the row of buttons.  If a message label exists, the child is placed below the label.  If a message pixmap exists, but a message label is absent, the child is placed on the same row as the pixmap.  The child behaves as a work area and grows or shrinks to fill the space above the row of buttons.  The layout of multiple work area children is undefined. 

At initialization, MessageBox looks for the following bitmap files:

       •xm_error

       •xm_information

       •xm_question

       •xm_working

       •xm_warning

See XmGetPixmap(3X) for a list of the paths that are searched for these files. 

Classes

MessageBox inherits behavior and resources from Core, Composite, Constraint, XmManager, and XmBulletinBoard. 

The class pointer is xmMessageBoxWidgetClass. 

The class name is XmMessageBox. 

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

XmMessageBox Resource Set

XmNcancelCallback

Class: XmCCallback
Default: NULL
Type:  XtCallbackList
Access: C

XmNcancelLabelString

Class: XmCCancelLabelString
Default: dynamic
Type:  XmString
Access: CSG

XmNdefaultButtonType

Class: XmCDefaultButtonType
Default: XmDIALOG_OK_BUTTON
Type:  unsigned char
Access: CSG

XmNdialogType

Class: XmCDialogType
Default: XmDIALOG_MESSAGE
Type:  unsigned char
Access: CSG

XmNhelpLabelString

Class: XmCHelpLabelString
Default: dynamic
Type:  XmString
Access: CSG

XmNmessageAlignment

Class: XmCAlignment
Default: XmALIGNMENT_BEGINNING
Type:  unsigned char
Access: CSG

XmNmessageString

Class: XmCMessageString
Default: ""
Type:  XmString
Access: CSG

XmNminimizeButtons

Class: XmCMinimizeButtons
Default: False
Type:  Boolean
Access: CSG

XmNokCallback

Class: XmCCallback
Default: NULL
Type:  XtCallbackList
Access: C

XmNokLabelString

Class: XmCOkLabelString
Default: dynamic
Type:  XmString
Access: CSG

XmNsymbolPixmap

Class: XmCPixmap
Default: dynamic
Type:  Pixmap
Access: CSG

XmNcancelCallback
Specifies the list of callbacks that is called when the user clicks on the cancel button. The reason sent by the callback is XmCR_CANCEL. 

XmNcancelLabelString
Specifies the string label for the cancel button. The default for this resource depends on the locale. In the C locale the default is “Cancel”.

XmNdefaultButtonType
Specifies the default PushButton. A value of XmDIALOG_NONE means that there should be no default PushButton. The following are valid types:

       •XmDIALOG_CANCEL_BUTTON

       •XmDIALOG_OK_BUTTON

       •XmDIALOG_HELP_BUTTON

       •XmDIALOG_NONE

XmNdialogType
Specifies the type of MessageBox dialog, which determines the default message symbol. The following are the possible values for this resource:

       •XmDIALOG_ERROR−−indicates an ErrorDialog

       •XmDIALOG_INFORMATION−−indicates an InformationDialog

       •XmDIALOG_MESSAGE−−indicates a MessageDialog.  This is the default MessageBox dialog type. It does not have an associated message symbol. 

       •XmDIALOG_QUESTION−−indicates a QuestionDialog

       •XmDIALOG_TEMPLATE−−indicates a TemplateDialog.  The TemplateDialog contains only a separator child.  It does not have an associated message symbol. 

       •XmDIALOG_WARNING−−indicates a WarningDialog

       •XmDIALOG_WORKING−−indicates a WorkingDialog

If this resource is changed via XtSetValues, the symbol bitmap is modified to the new XmNdialogType bitmap unless XmNsymbolPixmap is also being set in the call to XtSetValues. If the dialog type does not have an associated message symbol, then no bitmap will be displayed. 

XmNhelpLabelString
Specifies the string label for the help button. The default for this resource depends on the locale. In the C locale the default is “Help”.

XmNmessageAlignment
Controls the alignment of the message Label. Possible values include the following:

       •XmALIGNMENT_BEGINNING−−the default

       •XmALIGNMENT_CENTER

       •XmALIGNMENT_END

XmNmessageString
Specifies the string to be used as the message.

XmNminimizeButtons
Sets the buttons to the width of the widest button and height of the tallest button if False.  If True, button width and height are set to the preferred size of each button.

XmNokCallback
Specifies the list of callbacks that is called when the user clicks on the OK button. The reason sent by the callback is XmCR_OK. 

XmNokLabelString
Specifies the string label for the OK button. The default for this resource depends on the locale. In the C locale the default is “OK”.

XmNsymbolPixmap
Specifies the pixmap label to be used as the message symbol.

Inherited Resources

MessageBox inherits behavior and resources from the following superclasses.  For a complete description of each resource, refer to the man page for that superclass. 

XmBulletinBoard Resource Set

XmNallowOverlap

Class: XmCAllowOverlap
Default: True
Type:  Boolean
Access: CSG

XmNautoUnmanage

Class: XmCAutoUnmanage
Default: True
Type:  Boolean
Access: CG

XmNbuttonFontList

Class: XmCButtonFontList
Default: dynamic
Type:  XmFontList
Access: CSG

XmNcancelButton

Class: XmCWidget
Default: Cancel button
Type:  Widget
Access: SG

XmNdefaultButton

Class: XmCWidget
Default: dynamic
Type:  Widget
Access: SG

XmNdefaultPosition

Class: XmCDefaultPosition
Default: True
Type:  Boolean
Access: CSG

XmNdialogStyle

Class: XmCDialogStyle
Default: dynamic
Type:  unsigned char
Access: CSG

XmNdialogTitle

Class: XmCDialogTitle
Default: NULL
Type:  XmString
Access: CSG

XmNfocusCallback

Class: XmCCallback
Default: NULL
Type:  XtCallbackList
Access: C

XmNlabelFontList

Class: XmCLabelFontList
Default: dynamic
Type:  XmFontList
Access: CSG

XmNmapCallback

Class: XmCCallback
Default: NULL
Type:  XtCallbackList
Access: C

XmNmarginHeight

Class: XmCMarginHeight
Default: 10
Type:  Dimension
Access: CSG

XmNmarginWidth

Class: XmCMarginWidth
Default: 10
Type:  Dimension
Access: CSG

XmNnoResize

Class: XmCNoResize
Default: False
Type:  Boolean
Access: CSG

XmNresizePolicy

Class: XmCResizePolicy
Default: XmRESIZE_ANY
Type:  unsigned char
Access: CSG

XmNshadowType

Class: XmCShadowType
Default: XmSHADOW_OUT
Type:  unsigned char
Access: CSG

XmNtextFontList

Class: XmCTextFontList
Default: dynamic
Type:  XmFontList
Access: CSG

XmNtextTranslations

Class: XmCTranslations
Default: NULL
Type:  XtTranslations
Access: C

XmNunmapCallback

Class: XmCCallback
Default: NULL
Type:  XtCallbackList
Access: C

XmManager Resource Set

XmNbottomShadowColor

Class: XmCBottomShadowColor
Default: dynamic
Type:  Pixel
Access: CSG

XmNbottomShadowPixmap

Class: XmCBottomShadowPixmap
Default: XmUNSPECIFIED_PIXMAP
Type:  Pixmap
Access: CSG

XmNforeground

Class: XmCForeground
Default: dynamic
Type:  Pixel
Access: CSG

XmNhelpCallback

Class: XmCCallback
Default: NULL
Type:  XtCallbackList
Access: C

XmNhighlightColor

Class: XmCHighlightColor
Default: dynamic
Type:  Pixel
Access: CSG

XmNhighlightPixmap

Class: XmCHighlightPixmap
Default: dynamic
Type:  Pixmap
Access: CSG

XmNinitialFocus

Class: XmCInitialFocus
Default: dynamic
Type:  Widget
Access: CSG

XmNnavigationType

Class: XmCNavigationType
Default: XmTAB_GROUP
Type:  XmNavigationType
Access: CSG

XmNshadowThickness

Class: XmCShadowThickness
Default: dynamic
Type:  Dimension
Access: CSG

XmNstringDirection

Class: XmCStringDirection
Default: dynamic
Type:  XmStringDirection
Access: CG

XmNtopShadowColor

Class: XmCTopShadowColor
Default: dynamic
Type:  Pixel
Access: CSG

XmNtopShadowPixmap

Class: XmCTopShadowPixmap
Default: dynamic
Type:  Pixmap
Access: CSG

XmNtraversalOn

Class: XmCTraversalOn
Default: True
Type:  Boolean
Access: CSG

XmNunitType

Class: XmCUnitType
Default: dynamic
Type:  unsigned char
Access: CSG

XmNuserData

Class: XmCUserData
Default: NULL
Type:  XtPointer
Access: CSG

Composite Resource Set

XmNchildren

Class: XmCReadOnly
Default: NULL
Type:  WidgetList
Access: G

XmNinsertPosition

Class: XmCInsertPosition
Default: NULL
Type:  XtOrderProc
Access: CSG

XmNnumChildren

Class: XmCReadOnly
Default: 0
Type:  Cardinal
Access: G

Core Resource Set

XmNaccelerators

Class: XmCAccelerators
Default: dynamic
Type:  XtAccelerators
Access: N/A

XmNancestorSensitive

Class: XmCSensitive
Default: dynamic
Type:  Boolean
Access: G

XmNbackground

Class: XmCBackground
Default: dynamic
Type:  Pixel
Access: CSG

XmNbackgroundPixmap

Class: XmCPixmap
Default: XmUNSPECIFIED_PIXMAP
Type:  Pixmap
Access: CSG

XmNborderColor

Class: XmCBorderColor
Default: XtDefaultForeground
Type:  Pixel
Access: CSG

XmNborderPixmap

Class: XmCPixmap
Default: XmUNSPECIFIED_PIXMAP
Type:  Pixmap
Access: CSG

XmNborderWidth

Class: XmCBorderWidth
Default: 0
Type:  Dimension
Access: CSG

XmNcolormap

Class: XmCColormap
Default: dynamic
Type:  Colormap
Access: CG

XmNdepth

Class: XmCDepth
Default: dynamic
Type:  int
Access: CG

XmNdestroyCallback

Class: XmCCallback
Default: NULL
Type:  XtCallbackList
Access: C

XmNheight

Class: XmCHeight
Default: dynamic
Type:  Dimension
Access: CSG

XmNinitialResourcesPersistent

Class: XmCInitialResourcesPersistent
Default: True
Type:  Boolean
Access: C

XmNmappedWhenManaged

Class: XmCMappedWhenManaged
Default: True
Type:  Boolean
Access: CSG

XmNscreen

Class: XmCScreen
Default: dynamic
Type:  Screen ∗
Access: CG

XmNsensitive

Class: XmCSensitive
Default: True
Type:  Boolean
Access: CSG

XmNtranslations

Class: XmCTranslations
Default: dynamic
Type:  XtTranslations
Access: CSG

XmNwidth

Class: XmCWidth
Default: dynamic
Type:  Dimension
Access: CSG

XmNx

Class: XmCPosition
Default: 0
Type:  Position
Access: CSG

XmNy

Class: XmCPosition
Default: 0
Type:  Position
Access: CSG

Callback Information

A pointer to the following structure is passed to each callback:

typedef struct
{
  int      reason;
  XEvent   ∗ event;
} XmAnyCallbackStruct;

reasonIndicates why the callback was invoked

eventPoints to the XEvent that triggered the callback

Translations

XmMessageBox includes the translations from XmManager. 

Additional Behavior

The XmMessageBox widget has the additional behavior described below:

MAny KCancel:
Calls the activate callbacks for the cancel button if it is sensitive.

KActivate:
Calls the activate callbacks for the button with the keyboard focus. If no button has the keyboard focus, calls the activate callbacks for the default button if it is sensitive.

<Ok Button Activated>:
Calls the callbacks for XmNokCallback. 

<Cancel Button Activated>:
Calls the callbacks for XmNcancelCallback. 

<Help Button Activated>:
Calls the callbacks for XmNhelpCallback. 

<FocusIn>:
Calls the callbacks for XmNfocusCallback. 

<Map>:
Calls the callbacks for XmNmapCallback if the parent is a DialogShell. 

<Unmap>:
Calls the callbacks for XmNunmapCallback if the parent is a DialogShell. 

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), XmBulletinBoard(3X), XmCreateErrorDialog(3X), XmCreateInformationDialog(3X), XmCreateMessageBox(3X), XmCreateMessageDialog(3X), XmCreateQuestionDialog(3X), XmCreateTemplateDialog(3X), XmCreateWarningDialog(3X), XmCreateWorkingDialog(3X), XmManager(3X), XmMessageBoxGetChild(3X)

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026