XmBulletinBoard(3X) SDK X11 R4.11MU05 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.
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
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).
+----------------------------------------------------------------------------------+
| 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.
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
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.
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 the
BulletinBoard. If the parent of the BulletinBoard is a
DialogShell, the parent's XmNmwmInputMode 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:
· XmDIALOGSYSTEMMODAL--used for dialogs that must be responded
to before any other interaction in any application
· XmDIALOGPRIMARYAPPLICATIONMODAL--used for dialogs that must
be responded to before some other interactions in ancestors of
the widget
· XmDIALOGAPPLICATIONMODAL--used for dialogs that must be
responded to before some other interactions in ancestors of the
widget. This value is the same as
XmDIALOGPRIMARYAPPLICATIONMODAL, and remains for
compatibility.
· XmDIALOGFULLAPPLICATIONMODAL--used for dialogs that must be
responded to before some other interactions in the same
application
· XmDIALOGMODELESS--used for dialogs that do not interrupt
interaction of any application. This is the default when the
parent of the BulletinBoard is a DialogShell.
· XmDIALOGWORKAREA--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
XmNtitleEncoding of its parent. If the only character set
in XmNdialogTitle is ISO8859-1, XmNtitle 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 COMPOUNDTEXT.
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 XmCRFOCUS.
XmNlabelFontList
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.
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 XmCRMAP.
DialogShells are usually mapped when the DialogShell is
managed.
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 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.
XmNresizePolicy
Controls the policy for resizing BulletinBoard widgets.
Possible values include the following:
· XmRESIZENONE--fixed size
· XmRESIZEANY--shrink or grow as needed
· XmRESIZEGROW--grow only
XmNshadowType
Describes the shadow drawing style for BulletinBoard. This
resource can have the following values:
· XmSHADOWIN--draws the BulletinBoard shadow so that it appears
inset. This means that the bottom shadow visuals and top shadow
visuals are reversed.
· XmSHADOWOUT--draws the BulletinBoard shadow so that it appears
outset
· XmSHADOWETCHEDIN--draws the BulletinBoard shadow using a
double line giving the effect of a line etched into the window,
similar to the Separator widget
· XmSHADOWETCHEDOUT--draws the BulletinBoard shadow using a
double line giving the effect of a line coming out of the
window, similar to the Separator widget
XmNtextFontList
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 implementation
dependent. Refer to XmFontList(3X) for more information on
the creation and structure of a font list.
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 that
case, this callback list is invoked when the BulletinBoard
widget is unmapped. The callback reason is XmCRUNMAP.
DialogShells are usually unmapped when the DialogShell is
unmanaged.
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.
+--------------------------------------------------------------------------------------------------+
| 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:
typedef struct
{
int reason;
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. If no cancel button exists and if the parent of
the BulletinBoard is a manager, passes the event to the
parent.
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.
If no button has the focus, no default button exists, and
the parent of the BulletinBoard is a manager, passes the
event to the parent.
<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).
Licensed material--property of copyright holder(s)