XmSelectionBox(3X) OSF/Motif XmSelectionBox(3X)NAMEXmSelectionBox - The SelectionBox widget class
SYNOPSIS
#include <Xm/SelectioB.h>
DESCRIPTION
SelectionBox is a general dialog widget that allows the user to select
one item from a list. By default a SelectionBox includes the follow‐
ing: A scrolling list of alternatives An editable text field for the
selected alternative Labels for the list and text field Three or four
buttons
The default button labels are OK, Cancel, and Help. By default an
Apply button is also created; if the parent of the SelectionBox is a
DialogShell it is managed, and otherwise it is unmanaged. Additional
children may be added to the SelectionBox after creation. The first
child is used as a work area. The value of XmNchildPlacement deter‐
mines if the work area is placed above or below the Text area, or above
or below the List area. Additional children are laid out in the fol‐
lowing manner: Menubar—The first menu bar child is placed at the top of
the window. Buttons—All XmPushButton widgets or gadgets, and their
subclasses are placed after the OK button in the order of their cre‐
ation. The layout of additional children which are not in the above
categories is undefined.
The user can select an item in two ways: by scrolling through the list
and selecting the desired item or by entering the item name directly
into the text edit area. Selecting an item from the list causes that
item name to appear in the selection text edit area.
The user may select a new item as many times as desired. The item is
not actually selected until the user presses the OK PushButton.
The default value for the XmBulletinBoard resource XmNcancelButton is
the Cancel button unless XmNdialogType is XmDIALOG_COMMAND, when the
default is NULL. The default value for the XmBulletinBoard resource
XmNdefaultButton is the OK button unless XmNdialogType is XmDIALOG_COM‐
MAND, when the default is NULL.
For SelectionBox and its subclasses, the default value for XmNinitial‐
Focus is the text edit area.
The user can specify resources in a resource file for the automatically
created widgets and gadgets of SelectionBox. The following list iden‐
tifies the names of these widgets (or gadgets) and the associated
SelectionBox areas. List Items Label—"Items" List Items—"ItemsList"
Selection Label—"Selection" Selection Text—"Text" Selection Separa‐
tor—"Separator"
Classes
SelectionBox inherits behavior and resources from Core, Composite, Con‐
straint, XmManager, and XmBulletinBoard Classes.
The class pointer is xmSelectionBoxWidgetClass.
The class name is XmSelectionBox.
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).
XmSelectionBox Resource Set
─────────────────────────────────────────────────────────────────
Name Default Access
Class Type
─────────────────────────────────────────────────────────────────
─────────────────────────────────────────────────────────────────
XmNapplyCallback NULL C
XmCCallback XtCallbackList
─────────────────────────────────────────────────────────────────
XmNapplyLabelString dynamic CSG
XmCApplyLabelString XmString
─────────────────────────────────────────────────────────────────
XmNcancelCallback NULL C
XmCCallback XtCallbackList
─────────────────────────────────────────────────────────────────
XmNcancelLabelString dynamic CSG
XmCCancelLabelString XmString
─────────────────────────────────────────────────────────────────
XmNchildPlacement XmPLACE_ABOVE_SELECTION CSG
XmCChildPlacement unsigned char
─────────────────────────────────────────────────────────────────
XmNdialogType dynamic CG
XmCDialogType unsigned char
─────────────────────────────────────────────────────────────────
XmNhelpLabelString dynamic CSG
XmCHelpLabelString XmString
─────────────────────────────────────────────────────────────────
XmNlistItemCount 0 CSG
XmCItemCount int
─────────────────────────────────────────────────────────────────
XmNlistItems NULL CSG
XmCItems XmStringTable
─────────────────────────────────────────────────────────────────
XmNlistLabelString dynamic CSG
XmCListLabelString XmString
─────────────────────────────────────────────────────────────────
XmNlistVisibleItemCount dynamic CSG
XmCVisibleItemCount int
─────────────────────────────────────────────────────────────────
XmNminimizeButtons False CSG
XmCMinimizeButtons Boolean
─────────────────────────────────────────────────────────────────
XmNmustMatch False CSG
XmCMustMatch Boolean
─────────────────────────────────────────────────────────────────
XmNnoMatchCallback NULL C
XmCCallback XtCallbackList
─────────────────────────────────────────────────────────────────
XmNokCallback NULL C
XmCCallback XtCallbackList
─────────────────────────────────────────────────────────────────
XmNokLabelString dynamic CSG
XmCOkLabelString XmString
─────────────────────────────────────────────────────────────────
XmNselectionLabelString dynamic CSG
XmCSelectionLabelString XmString
─────────────────────────────────────────────────────────────────
XmNtextAccelerators default C
XmCTextAccelerators XtAccelerators
─────────────────────────────────────────────────────────────────
XmNtextColumns dynamic CSG
XmCColumns short
─────────────────────────────────────────────────────────────────
XmNtextString "" CSG
XmCTextString XmString
─────────────────────────────────────────────────────────────────
Specifies the list of callbacks called when the user activates the
Apply button. The callback reason is XmCR_APPLY. Specifies the string
label for the Apply button. The default for this resource depends on
the locale. In the C locale the default is "Apply". Specifies the
list of callbacks called when the user activates the Cancel button.
The callback reason is XmCR_CANCEL. 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". Specifies the placement of
the work area child. The possible values are: XmPLACE_ABOVE_SELECTION—
places the work area child above the Text area XmPLACE_BELOW_SELECTION—
places the work area child below the Text area XmPLACE_TOP—places the
work area child above the List area, and below a menubar, if one is
present Determines the set of SelectionBox children widgets that are
created and managed at initialization. The following are possible val‐
ues: XmDIALOG_PROMPT—all standard children except the list and list
label are created, and all except the Apply button are managed XmDIA‐
LOG_COMMAND—only the list, the selection label, and the text field are
created and managed XmDIALOG_SELECTION—all standard children are cre‐
ated and managed XmDIALOG_FILE_SELECTION—all standard children are cre‐
ated and managed XmDIALOG_WORK_AREA—all standard children are created,
and all except the Apply button are managed
If the parent of the SelectionBox is a DialogShell, the default is
XmDIALOG_SELECTION; otherwise, the default is XmDIALOG_WORK_AREA.
XmCreatePromptDialog and XmCreateSelectionDialog set and append this
resource to the creation arglist supplied by the application. This
resource cannot be modified after creation. 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". Specifies the items in
the SelectionBox list. XtGetValues for this resource returns the list
items themselves, not a copy of the list items. The application must
not free the returned items. Specifies the number of items in the
SelectionBox list. The value must not be negative. Specifies the
string label to appear above the SelectionBox list containing the
selection items. The default for this resource depends on the locale.
In the C locale the default is "Items" unless XmNdialogType is XmDIA‐
LOG_PROMPT; in that case the default is NULL. Specifies the number of
items displayed in the SelectionBox list. The value must be greater
than 0 unless XmNdialogType is XmDIALOG_PROMPT; in that case the value
is always 0. The default is dynamic based on the height of the list.
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 not mod‐
ified. Specifies whether the selection widget should check if the
user's selection in the text edit field has an exact match in the
SelectionBox list when the OK button is activated. If the selection
does not have an exact match, and XmNmustMatch is True, the XmNnoMatch‐
Callback callbacks are called. If the selection does have an exact
match or if XmNmustMatch is False, XmNokCallback callbacks are called.
Specifies the list of callbacks called when the user makes a selection
from the text edit field that does not have an exact match with any of
the items in the list box. The callback reason is XmCR_NO_MATCH.
Callbacks in this list are called only if XmNmustMatch is true. Speci‐
fies the list of callbacks called when the user activates the OK but‐
ton. The callback reason is XmCR_OK. If the selection text does not
match a list item, and XmNmustMatch is True, the XmNnoMatchCallback
callbacks are called instead. 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". Specifies the string label for the selec‐
tion text edit field. The default for this resource depends on the
locale. In the C locale the default is "Selection". Specifies trans‐
lations added to the Text widget child of the SelectionBox. The
default includes bindings for the up and down keys for auto selection
of list items. This resource is ignored if XmNaccelerators is initial‐
ized to a nondefault value. Specifies the number of columns in the
Text widget. The value must be greater than 0. Specifies the text in
the text edit selection field.
Inherited Resources
SelectionBox inherits behavior and resources from the following super‐
classes. For a complete description of each resource, refer to the man
page for that superclass.
XmBulletinBoard Resource Set
──────────────────────────────────────────────────────────
Name Default Access
Class Type
──────────────────────────────────────────────────────────
──────────────────────────────────────────────────────────
XmNallowOverlap True CSG
XmCAllowOverlap Boolean
──────────────────────────────────────────────────────────
XmNautoUnmanage True CG
XmCAutoUnmanage Boolean
──────────────────────────────────────────────────────────
XmNbuttonFontList dynamic CSG
XmCButtonFontList XmFontList
──────────────────────────────────────────────────────────
XmNcancelButton dynamic SG
XmCWidget Widget
──────────────────────────────────────────────────────────
XmNdefaultButton dynamic SG
XmCWidget Widget
──────────────────────────────────────────────────────────
XmNdefaultPosition True CSG
XmCDefaultPosition Boolean
──────────────────────────────────────────────────────────
XmNdialogStyle dynamic CSG
XmCDialogStyle unsigned char
──────────────────────────────────────────────────────────
XmNdialogTitle NULL CSG
XmCDialogTitle XmString
──────────────────────────────────────────────────────────
XmNfocusCallback NULL C
XmCCallback XtCallbackList
──────────────────────────────────────────────────────────
XmNlabelFontList dynamic CSG
XmCLabelFontList XmFontList
──────────────────────────────────────────────────────────
XmNmapCallback NULL C
XmCCallback XtCallbackList
──────────────────────────────────────────────────────────
XmNmarginHeight 10 CSG
XmCMarginHeight Dimension
──────────────────────────────────────────────────────────
XmNmarginWidth 10 CSG
XmCMarginWidth Dimension
──────────────────────────────────────────────────────────
XmNnoResize False CSG
XmCNoResize Boolean
──────────────────────────────────────────────────────────
XmNresizePolicy XmRESIZE_ANY CSG
XmCResizePolicy unsigned char
──────────────────────────────────────────────────────────
XmNshadowType XmSHADOW_OUT CSG
XmCShadowType unsigned char
──────────────────────────────────────────────────────────
XmNtextFontList dynamic CSG
XmCTextFontList XmFontList
──────────────────────────────────────────────────────────
XmNtextTranslations NULL C
XmCTranslations XtTranslations
──────────────────────────────────────────────────────────
XmNunmapCallback NULL C
XmCCallback XtCallbackList
──────────────────────────────────────────────────────────
XmManager Resource Set
────────────────────────────────────────────────────────────────
Name Default Access
Class Type
────────────────────────────────────────────────────────────────
────────────────────────────────────────────────────────────────
XmNbottomShadowColor dynamic CSG
XmCBottomShadowColor Pixel
────────────────────────────────────────────────────────────────
XmNbottomShadowPixmap XmUNSPECIFIED_PIXMAP CSG
XmCBottomShadowPixmap Pixmap
────────────────────────────────────────────────────────────────
XmNforeground dynamic CSG
XmCForeground Pixel
────────────────────────────────────────────────────────────────
XmNhelpCallback NULL C
XmCCallback XtCallbackList
────────────────────────────────────────────────────────────────
XmNhighlightColor dynamic CSG
XmCHighlightColor Pixel
────────────────────────────────────────────────────────────────
XmNhighlightPixmap dynamic CSG
XmCHighlightPixmap Pixmap
────────────────────────────────────────────────────────────────
XmNinitialFocus dynamic CSG
XmCInitialFocus Widget
────────────────────────────────────────────────────────────────
XmNnavigationType XmTAB_GROUP CSG
XmCNavigationType XmNavigationType
────────────────────────────────────────────────────────────────
XmNshadowThickness dynamic CSG
XmCShadowThickness Dimension
────────────────────────────────────────────────────────────────
XmNstringDirection dynamic CG
XmCStringDirection XmStringDirection
────────────────────────────────────────────────────────────────
XmNtopShadowColor dynamic CSG
XmCTopShadowColor Pixel
────────────────────────────────────────────────────────────────
XmNtopShadowPixmap dynamic CSG
XmCTopShadowPixmap Pixmap
────────────────────────────────────────────────────────────────
XmNtraversalOn True CSG
XmCTraversalOn Boolean
────────────────────────────────────────────────────────────────
XmNunitType dynamic CSG
XmCUnitType unsigned char
────────────────────────────────────────────────────────────────
XmNuserData NULL CSG
XmCUserData XtPointer
────────────────────────────────────────────────────────────────
Composite Resource Set
──────────────────────────────────────────────────────
Name Default Access
Class Type
──────────────────────────────────────────────────────
──────────────────────────────────────────────────────
XmNchildren NULL G
XmCReadOnly WidgetList
──────────────────────────────────────────────────────
XmNinsertPosition NULL CSG
XmCInsertPosition XtOrderProc
──────────────────────────────────────────────────────
XmNnumChildren 0 G
XmCReadOnly Cardinal
──────────────────────────────────────────────────────
Core Resource Set
─────────────────────────────────────────────────────────────────────
Name Default Access
Class Type
─────────────────────────────────────────────────────────────────────
─────────────────────────────────────────────────────────────────────
XmNaccelerators dynamic N/A
XmCAccelerators XtAccelerators
─────────────────────────────────────────────────────────────────────
XmNancestorSensitive dynamic G
XmCSensitive Boolean
─────────────────────────────────────────────────────────────────────
XmNbackground dynamic CSG
XmCBackground Pixel
─────────────────────────────────────────────────────────────────────
XmNbackgroundPixmap XmUNSPECIFIED_PIXMAP CSG
XmCPixmap Pixmap
─────────────────────────────────────────────────────────────────────
XmNborderColor XtDefaultForeground CSG
XmCBorderColor Pixel
─────────────────────────────────────────────────────────────────────
XmNborderPixmap XmUNSPECIFIED_PIXMAP CSG
XmCPixmap Pixmap
─────────────────────────────────────────────────────────────────────
XmNborderWidth 0 CSG
XmCBorderWidth Dimension
─────────────────────────────────────────────────────────────────────
XmNcolormap dynamic CG
XmCColormap Colormap
─────────────────────────────────────────────────────────────────────
XmNdepth dynamic CG
XmCDepth int
─────────────────────────────────────────────────────────────────────
XmNdestroyCallback NULL C
XmCCallback XtCallbackList
─────────────────────────────────────────────────────────────────────
XmNheight dynamic CSG
XmCHeight Dimension
─────────────────────────────────────────────────────────────────────
XmNinitialResourcesPersistent True C
XmCInitialResourcesPersistent Boolean
─────────────────────────────────────────────────────────────────────
XmNmappedWhenManaged True CSG
XmCMappedWhenManaged Boolean
─────────────────────────────────────────────────────────────────────
XmNscreen dynamic CG
XmCScreen Screen *
─────────────────────────────────────────────────────────────────────
XmNsensitive True CSG
XmCSensitive Boolean
─────────────────────────────────────────────────────────────────────
XmNtranslations dynamic CSG
XmCTranslations XtTranslations
─────────────────────────────────────────────────────────────────────
XmNwidth dynamic CSG
XmCWidth Dimension
─────────────────────────────────────────────────────────────────────
XmNx 0 CSG
XmCPosition Position
─────────────────────────────────────────────────────────────────────
XmNy 0 CSG
XmCPosition Position
─────────────────────────────────────────────────────────────────────
Callback Information
A pointer to the following structure is passed to each callback: type‐
def struct { int reason; XEvent * event;
XmString value; int length; } XmSelectionBoxCallback‐
Struct; Indicates why the callback was invoked Points to the XEvent
that triggered the callback Indicates the XmString value selected by
the user from the SelectionBox list or entered into the SelectionBox
text field Indicates the size in bytes of the XmString value
Translations
XmSelectionBox inherits translations from XmBulletinBoard.
Accelerators
The XmNtextAccelerators are added to the Text descendant of XmSelec‐
tionBox. The default accelerators are listed below. These accelera‐
tors may not directly correspond to a translation table.
KUp: SelectionBoxUpOrDown(0) KDown: SelectionBoxUpOr‐
Down(1) KBeginData: SelectionBoxUpOrDown(2) KEndData: Selec‐
tionBoxUpOrDown(3) KRestore: SelectionBoxRestore()
Action Routines
The XmSelectionBox action routines are described below: When called
with a 0 argument, selects the previous item in the list and replaces
the text with that item.
When called with a 1 argument, selects the next item in the list and
replaces the text with that item.
When called with a 2 argument, selects the first item in the list and
replaces the text with that item.
When called with a 3 argument, selects the last item in the list and
replaces the text with that item. Replaces the text value with the
list selection. If no item in the list is selected, clears the text.
Additional Behavior
The SelectionBox 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 the parent of the SelectionBox is a man‐
ager, 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 SelectionBox
actions associated with KActivate. In a multi-line Text widget, any
KActivate event except KEnter calls the Text action associated with
KActivate, then the SelectionBox actions associated with KActivate. If
no button has the focus, no default button exists, and the parent of
the SelectionBox is a manager, passes the event to the parent. If XmN‐
mustMatch is True and the text does not match an item in the file list,
calls the XmNnoMatchCallback callbacks with reason XmCR_NO_MATCH. Oth‐
erwise, calls the XmNokCallback callbacks with reason XmCR_OK. Calls
the XmNapplyCallback callbacks with reason XmCR_APPLY. Calls the XmN‐
cancelCallback callbacks with reason XmCR_CANCEL. Calls the XmNhelp‐
Callback callbacks with reason XmCR_HELP. Calls the callbacks for XmN‐
mapCallback if the SelectionBox is a child of a Dialog shell. Calls
the callbacks for XmNunmapCallback if the SelectionBox is the child of
a DialogShell.
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), XmBulletinBoard(3X), XmCreate‐
SelectionBox(3X), XmCreateSelectionDialog(3X), XmCreatePromptDia‐
log(3X), XmManager(3X), and XmSelectionBoxGetChild(3X).
XmSelectionBox(3X)