XmBulletinBoard(3X) UNIX System V XmBulletinBoard(3X)
NAME
XmBulletinBoard - The BulletinBoard widget class.
SYNOPSIS
#include <Xm/BulletinB.h>
DESCRIPTION
BulletinBoard is a composite widget that provides simple geometry
management 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.
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
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).
10/89 Page 1
XmBulletinBoard(3X) UNIX System V XmBulletinBoard(3X)
___________________________________________________________________________________
| 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 |
|____________________|____________________|________________|______________|________|
XmNallowOverlap
Controls the policy for overlapping children widgets. If True,
BulletinBoard allows geometry requests that result in overlapping
children.
Page 2 10/89
XmBulletinBoard(3X) UNIX System V XmBulletinBoard(3X)
XmNautoUnmanage
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 DrawnButtons) 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 BulletinBoard.
XmNbuttonFontList
Specifies the font list used for BulletinBoard's button children
(PushButtons, PushButtonGadgets, ToggleButtons, and
ToggleButtonGadgets). If this value is NULL at initialization, it
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 appropriate default font list of
the ancestor widget (XmNdefaultFontList for VendorShell and
XmMenuShell, XmNbuttonFontList for XmBulletinBoard).
XmNcancelButton
Specifies the widget ID of the Cancel button. BulletinBoard's
subclasses, which define a Cancel button, set this resource.
BulletinBoard does not directly provide any behavior for that
button.
XmNdefaultButton
Specifies the widget ID of the default button. Some BulletinBoard
subclasses, which define a default button, set this resource.
BulletinBoard defines translations and installs accelerators that
activate that button when KActivate is pressed and the keyboard
focus is not in another button.
XmNdefaultPosition
Controls whether or not the BulletinBoard is automatically
positioned by its parent. If True, and the parent of the
BulletinBoard 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 positioned.
XmNdialogStyle
Indicates the dialog style associated with BulletinBoard. If the
parent of BulletinBoard is a DialogShell, the parent is configured
according to this resource and DialogShell sets the XmNinputMode of
VendorShell accordingly. This resource can be set only if the
BulletinBoard is unmanaged. Possible values for this resource
include the following:
10/89 Page 3
XmBulletinBoard(3X) UNIX System V XmBulletinBoard(3X)
⊕ 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 interrupt
interaction of any application. This is the default when the
parent of the BulletinBoard is a DialogShell.
⊕ XmDIALOG_WORK_AREA - used for BulletinBoard widgets whose
parents are not DialogShells. XmNdialogStyle is forced to have
this value when the parent of the BulletinBoard is not a
DialogShell.
XmNdialogTitle
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 XmNnameEncoding of its parent. If the only
character set in XmNdialogTitle is ISO8859-1, XmNtitle is set to
the string of the title, and XmNnameEncoding 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 XmNnameEncoding is set to COMPOUND_TEXT.
XmNfocusCallback
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.
Page 4 10/89
XmBulletinBoard(3X) UNIX System V XmBulletinBoard(3X)
XmNlabelFontList
Specifies the font list used for BulletinBoard's Label children
(Labels and LabelGadgets). If this value is NULL at
initialization, it 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
appropriate default font list of the ancestor widget
(XmNdefaultFontList for VendorShell and XmMenuShell,
XmNlabelFontList for XmBulletinBoard).
XmNmapCallback
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 BulletinBoard widget is mapped. The
callback reason is XmCR_MAP.
XmNmarginHeight
Specifies the minimum spacing in pixels between the top or bottom
edge of BulletinBoard and any child widget.
XmNmarginWidth
Specifies the minimum spacing in pixels between the left or right
edge of BulletinBoard and any child widget.
XmNnoResize
Controls whether or not resize controls are included in the window
manager frame around the dialog. If set to True, the mwm does not
include resize controls in the window manager frame containing the
DialogShell or TopLevelShell parent of the BulletinBoard. 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.
XmNresizePolicy
Controls the policy for resizing BulletinBoard widgets. Possible
values include the following:
⊕ XmRESIZE_NONE - fixed size
⊕ XmRESIZE_ANY - shrink or grow as needed
⊕ XmRESIZE_GROW - grow only
XmNshadowType
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.
10/89 Page 5
XmBulletinBoard(3X) UNIX System V XmBulletinBoard(3X)
⊕ 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,
similar 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
BulletinBoard widgets draw shadows just within their borders if
XmNshadowThickness is greater than zero. If the parent of a
BulletinBoard widget is a DialogShell, BulletinBoard dynamically
changes the default for XmNshadowThickness from 0 to 1.
XmNtextFontList
Specifies the font list used for BulletinBoard's Text children. If
this value is NULL at initialization, it 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 appropriate default font list of the ancestor widget
(XmNdefaultFontList for VendorShell and XmMenuShell,
XmNtextFontList for XmBulletinBoard).
XmNtextTranslations
Adds translations to any Text widget or Text widget subclass that
is added as a child of BulletinBoard.
XmNunmapCallback
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 BulletinBoard widget is unmapped. The
callback reason is XmCR_UNMAP.
Inherited Resources
BulletinBoard inherits behavior and resources from the following
superclasses. For a complete description of each resource, refer to the
man page for that superclass.
Page 6 10/89
XmBulletinBoard(3X) UNIX System V XmBulletinBoard(3X)
_________________________________________________________________________________________________________
| 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 |
|_____________________|_____________________________|___________________|______________________|________|
|XmNnavigationType | XmCNavigationType | XmNavigationType | XmTAB_GROUP | CSG |
|_____________________|_____________________________|___________________|______________________|________|
|XmNshadowThickness | XmCShadowThickness | Dimension | dynamic | CSG |
|_____________________|_____________________________|___________________|______________________|________|
|XmNstringDirection | XmCStringDirection | XmStringDirection| dynamic | CG |
|_____________________|_____________________________|___________________|______________________|________|
|XmNtopShadowColor | XmCBackgroundTopShadowColor| Pixel | dynamic | CSG |
|_____________________|_____________________________|___________________|______________________|________|
|XmNtopShadowPixmap | XmCTopShadowPixmap | Pixmap | dynamic | CSG |
|_____________________|_____________________________|___________________|______________________|________|
|XmNtraversalOn | XmCTraversalOn | Boolean | True | CSG |
|_____________________|_____________________________|___________________|______________________|________|
|XmNunitType | XmCUnitType | unsigned char | dynamic | CSG |
|_____________________|_____________________________|___________________|______________________|________|
|XmNuserData | XmCUserData | Pointer | NULL | CSG |
|_____________________|_____________________________|___________________|______________________|________|
_______________________________________________________________________
| Composite Resource Set |
|__________________|___________________|____________|_________|________|
| Name | Class | Type | Default| Access|
|__________________|___________________|____________|_________|________|
|__________________|___________________|____________|_________|________|
| XmNchildren | XmCReadOnly | WidgetList| NULL | G |
|__________________|___________________|____________|_________|________|
| XmNinsertPosition| XmCInsertPosition| (*)() | NULL | CSG |
|__________________|___________________|____________|_________|________|
| XmNnumChildren | XmCReadOnly | Cardinal | 0 | G |
|__________________|___________________|____________|_________|________|
10/89 Page 7
XmBulletinBoard(3X) UNIX System V XmBulletinBoard(3X)
________________________________________________________________________________________________________________
| 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:
typedef struct
{
int reason;
Page 8 10/89
XmBulletinBoard(3X) UNIX System V XmBulletinBoard(3X)
XEvent * event;
} XmAnyCallbackStruct;
reason Indicates why the callback was invoked.
event 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:
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. In a List
widget or single-line Text widget, the List or Text action
associated with KActivate is called before the BulletinBoard
actions associated with KActivate. In a multi-line Text widget,
any KActivate event except KEnter calls the Text action associated
with KActivate, then the BulletinBoard actions associated with
KActivate.
<FocusIn>:
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.
<Map>:
Calls the callbacks for XmNmapCallback.
<Unmap>:
Calls the callbacks 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 INFORMATION
Composite(3X), Constraint(3X), Core(3X), XmCreateBulletinBoard(3X),
XmCreateBulletinBoardDialog(3X), XmDialogShell(3X), and XmManager(3X).
10/89 Page 9