XmBulletinBoard(3X)XmBulletinBoard(3X)NAMEXmBulletinBoard — The BulletinBoard widget class
SYNOPSIS
#include <Xm/BulletinB.h>
VERSION
This page documents version 1.2 of the Motif library.
DESCRIPTION
BulletinBoard is a composite widget that provides simple geometry man‐
agement for children widgets. It does not force positioning on its
children, but can be set to reject geometry requests that result in
overlapping children. BulletinBoard is the base widget for most dialog
widgets and is also used as a general container widget.
Modal and modeless dialogs are implemented as collections of widgets
that include a DialogShell, a BulletinBoard (or subclass) child of the
shell, and various dialog components (buttons, labels, etc.) that are
children of BulletinBoard. BulletinBoard defines callbacks useful for
dialogs (focus, map, unmap), which are available for application use.
If its parent is a DialogShell, BulletinBoard passes title and input
mode (based on dialog style) information to the parent, which is
responsible for appropriate communication with the window manager.
The default value for XmNinitialFocus is the value of XmNdefaultButton.
Classes
BulletinBoard inherits behavior and resources from Core, Composite,
Constraint, and XmManager classes.
The class pointer is xmBulletinBoardWidgetClass.
The class name is XmBulletinBoard.
New Resources
The following table defines a set of widget resources used by the pro‐
grammer to specify data. The programmer can also set the resource val‐
ues 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).
XmBulletinBoard Resource Set
Name Class Type Default Access
──────────────────────────────────────────────────────────────────────────────────
XmNallowOverlap XmCAllowOverlap Boolean True CSG
XmNautoUnmanage XmCAutoUnmanage Boolean True CG
XmNbuttonFontList XmCButtonFontList XmFontList dynamic CSG
XmNcancelButton XmCWidget Widget NULL SG
XmNdefaultButton XmCWidget Widget NULL SG
XmNdefaultPosition XmCDefaultPosition Boolean True CSG
XmNdialogStyle XmCDialogStyle unsigned char dynamic CSG
XmNdialogTitle XmCDialogTitle XmString NULL CSG
XmNfocusCallback XmCCallback XtCallbackList NULL C
XmNlabelFontList XmCLabelFontList XmFontList dynamic CSG
XmNmapCallback XmCCallback XtCallbackList NULL C
XmNmarginHeight XmCMarginHeight Dimension 10 CSG
XmNmarginWidth XmCMarginWidth Dimension 10 CSG
XmNnoResize XmCNoResize Boolean False CSG
XmNresizePolicy XmCResizePolicy unsigned char XmRESIZE_ANY CSG
XmNshadowType XmCShadowType unsigned char XmSHADOW_OUT CSG
XmNtextFontList XmCTextFontList XmFontList dynamic CSG
XmNtextTranslations XmCTranslations XtTranslations NULL C
XmNunmapCallback XmCCallback XtCallbackList NULL C
Controls the policy for overlapping children widgets. If True, Bullet‐
inBoard allows geometry requests that result in overlapping children.
Controls whether or not BulletinBoard is automatically unmanaged after
a button is activated. If this resource is True on initialization and
if the BulletinBoard's parent is a DialogShell, BulletinBoard adds a
callback to button children (PushButtons, PushButtonGadgets, and Drawn‐
Buttons) that unmanages the BulletinBoard when a button is activated.
If this resource is False on initialization or if the BulletinBoard's
parent is not a DialogShell, the BulletinBoard is not automatically
unmanaged. For BulletinBoard subclasses with Apply or Help buttons,
activating those buttons does not automatically unmanage the Bullet‐
inBoard. Specifies the font list used for BulletinBoard's button
descendants. If this value is NULL at initialization, the font list is
initialized by looking up the parent hierarchy of the widget for an
ancestor that is a subclass of the XmBulletinBoard, VendorShell, or
XmMenuShell widget class. If such an ancestor is found, the font list
is initialized to the XmNbuttonFontList of the ancestor widget. If no
such ancestor is found, the default is implementation dependent. Refer
to XmFontList(3X) for more information on the creation and structure of
a font list. Specifies the widget ID of the Cancel button. Bullet‐
inBoard's subclasses, which define a Cancel button, set this resource.
BulletinBoard does not directly provide any behavior for that button.
Specifies the widget ID of the default button. Some BulletinBoard sub‐
classes, which define a default button, set this resource. Bullet‐
inBoard defines translations and installs accelerators that activate
that button when KActivate is pressed and the keyboard focus is not in
another button. Controls whether or not the BulletinBoard is automati‐
cally positioned by its parent. If True, and the parent of the Bullet‐
inBoard is a DialogShell, the BulletinBoard is centered within or
around the parent of the DialogShell when the BulletinBoard is mapped
and managed. If False, the BulletinBoard is not automatically posi‐
tioned. Indicates the dialog style associated with the BulletinBoard.
If the parent of the BulletinBoard is a DialogShell, the parent's XmN‐
mwmInputMode is set according to the value of this resource. This
resource can be set only if the BulletinBoard is unmanaged. Possible
values for this resource include the following: XmDIALOG_SYSTEM_MODAL—
used for dialogs that must be responded to before any other interaction
in any application XmDIALOG_PRIMARY_APPLICATION_MODAL—used for dialogs
that must be responded to before some other interactions in ancestors
of the widget XmDIALOG_APPLICATION_MODAL—used for dialogs that must be
responded to before some other interactions in ancestors of the widget.
This value is the same as XmDIALOG_PRIMARY_APPLICATION_MODAL, and
remains for compatibility. XmDIALOG_FULL_APPLICATION_MODAL—used for
dialogs that must be responded to before some other interactions in the
same application XmDIALOG_MODELESS—used for dialogs that do not inter‐
rupt interaction of any application. This is the default when the par‐
ent of the BulletinBoard is a DialogShell. XmDIALOG_WORK_AREA—used for
BulletinBoard widgets whose parents are not DialogShells. XmNdi‐
alogStyle is forced to have this value when the parent of the Bullet‐
inBoard is not a DialogShell. Specifies the dialog title. If this
resource is not NULL, and the parent of the BulletinBoard is a subclass
of WMShell, BulletinBoard sets the XmNtitle and XmNtitleEncoding of its
parent. If the only character set in XmNdialogTitle is ISO8859-1, XmN‐
title is set to the string of the title, and XmNtitleEncoding is set to
STRING. If XmNdialogTitle contains character sets other than
ISO8859-1, XmNtitle is set to the string of the title converted to a
compound text string, and XmNtitleEncoding is set to COMPOUND_TEXT.
Specifies the list of callbacks that is called when the BulletinBoard
widget or one of its descendants accepts the input focus. The callback
reason is XmCR_FOCUS. Specifies the font list used for BulletinBoard's
label descendants (Labels and LabelGadgets). If this value is NULL at
initialization, the font list is initialized by looking up the parent
hierarchy of the widget for an ancestor that is a subclass of the
XmBulletinBoard, VendorShell, or XmMenuShell widget class. If such an
ancestor is found, the font list is initialized to the XmNlabelFontList
of the ancestor widget. If no such ancestor is found, the default is
implementation dependent. Refer to XmFontList(3X) for more information
on the creation and structure of a font list. Specifies the list of
callbacks that is called only when the parent of the BulletinBoard is a
DialogShell; in which case, this callback list is invoked when the Bul‐
letinBoard widget is mapped. The callback reason is XmCR_MAP.
DialogShells are usually mapped when the DialogShell is managed. Spec‐
ifies the minimum spacing in pixels between the top or bottom edge of
BulletinBoard and any child widget. Specifies the minimum spacing in
pixels between the left or right edge of BulletinBoard and any child
widget. Controls whether or not resize controls are included in the
window manager frame around the BulletinBoard's parent. If set to
True, the mwm does not include resize controls in the window manager
frame containing the parent of the BulletinBoard if the parent is a
subclass of VendorShell. If set to False, the window manager frame
does include resize controls. Other controls provided by mwm can be
included or excluded through the mwm resources provided by VendorShell.
Controls the policy for resizing BulletinBoard widgets. Possible val‐
ues include the following: XmRESIZE_NONE—fixed size XmRESIZE_ANY—shrink
or grow as needed XmRESIZE_GROW—grow only Describes the shadow drawing
style for BulletinBoard. This resource can have the following values:
XmSHADOW_IN—draws the BulletinBoard shadow so that it appears inset.
This means that the bottom shadow visuals and top shadow visuals are
reversed. XmSHADOW_OUT—draws the BulletinBoard shadow so that it
appears outset XmSHADOW_ETCHED_IN—draws the BulletinBoard shadow using
a double line giving the effect of a line etched into the window, simi‐
lar to the Separator widget XmSHADOW_ETCHED_OUT—draws the BulletinBoard
shadow using a double line giving the effect of a line coming out of
the window, similar to the Separator widget Specifies the font list
used for BulletinBoard's Text and List descendants. If this value is
NULL at initialization, the font list is initialized by looking up the
parent hierarchy of the widget for an ancestor that is a subclass of
the XmBulletinBoard or VendorShell widget class. If such an ancestor
is found, the font list is initialized to the XmNtextFontList of the
ancestor widget. If no such ancestor is found, the default is imple‐
mentation dependent. Refer to XmFontList(3X) for more information on
the creation and structure of a font list. Adds translations to any
Text widget or Text widget subclass that is added as a child of Bullet‐
inBoard. Specifies the list of callbacks that is called only when the
parent of the BulletinBoard is a DialogShell. In that case, this call‐
back list is invoked when the BulletinBoard widget is unmapped. The
callback reason is XmCR_UNMAP. DialogShells are usually unmapped when
the DialogShell is unmanaged.
Inherited Resources
BulletinBoard inherits behavior and resources from the following super‐
classes. 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
XmNhelpCallback XmCCallback XtCallbackList NULL C
XmNhighlightColor XmCHighlightColor Pixel dynamic CSG
XmNhighlightPixmap XmCHighlightPixmap Pixmap dynamic CSG
XmNinitialFocus XmCInitialFocus Widget dynamic CSG
XmNnavigationType XmCNavigationType XmNavigationType XmTAB_GROUP CSG
XmNshadowThickness XmCShadowThickness Dimension dynamic 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 N/A
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
Callback Information
A pointer to the following structure is passed to each callback: type‐
def struct { int reason; XEvent * event; } XmAnyCallback‐
Struct; Indicates why the callback was invoked. Points to the XEvent
that triggered the callback.
Translations
XmBulletinBoard includes the translations from XmManager.
Additional Behavior
The XmBulletinBoard widget has the additional behavior described below:
Calls the activate callbacks for the cancel button if it is sensitive.
If no cancel button exists and if the parent of the BulletinBoard is a
manager, passes the event to the parent. 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. In a List widget or single-line Text widget, the List or
Text action associated with KActivate is called before the Bullet‐
inBoard actions associated with KActivate. In a multi-line Text wid‐
get, any KActivate event except KEnter calls the Text action associated
with KActivate, then the BulletinBoard actions associated with KActi‐
vate. If no button has the focus, no default button exists, and the
parent of the BulletinBoard is a manager, passes the event to the par‐
ent. Calls the callbacks for XmNfocusCallback. When the focus policy
is XmPOINTER, this happens when the pointer enters the window. When
the focus policy is XmEXPLICIT, this happens when the user traverses to
the widget. Calls the callbacks for XmNmapCallback. Calls the call‐
backs for XmNunmapCallback.
Virtual Bindings
The bindings for virtual keys are vendor specific. For information
about bindings for virtual buttons and keys, see VirtualBindings(3X).
RELATED INFORMATIONComposite(3X), Constraint(3X), Core(3X), XmCreateBulletinBoard(3X),
XmCreateBulletinBoardDialog(3X), XmDialogShell(3X), and XmManager(3X).
XmBulletinBoard(3X)