XmSelectionBox(3X)

XmSelectionBox --The SelectionBox widget class

As shipped in IRIX 6.5.19. Unchanged since IRIX 6.5.

NAME
     XmSelectionBox --The SelectionBox widget class

SYNOPSIS
     #include <Xm/SelectioB.h>


VERSION
     This page documents version 1.2 of the Motif library.

DESCRIPTION
     SelectionBox  is a general dialog widget that allows the user to select one
     item from a list.  By default a SelectionBox includes the following:


       *  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 determines if the work  area  is
     placed  above or below the Text area, or above or below the List area.  Ad-
     ditional children are laid out in the following 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 creation.

       *  The  layout  of  additional  children which are not in the above cate-
          gories 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_COMMAND, when the default
     is NULL.

     For SelectionBox and its subclasses, the default value for  XmNinitialFocus
     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 identifies
     the names of these widgets (or gadgets) and the associated SelectionBox ar-
     eas.


       *  List Items Label-"Items"

       *  List Items-"ItemsList"

       *  Selection Label-"Selection"

       *  Selection Text-"Text"

       *  Selection Separator-"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 program-
     mer 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 re-
     maining letters (in either lowercase or uppercase, but include  any  under-
     scores  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                      Class                     Type             Default                   Access
------------------------------------------------------------------------------------------------------
XmNapplyCallback          XmCCallback               XtCallbackList   NULL                      C
XmNapplyLabelString       XmCApplyLabelString       XmString         dynamic                   CSG
XmNcancelCallback         XmCCallback               XtCallbackList   NULL                      C
XmNcancelLabelString      XmCCancelLabelString      XmString         dynamic                   CSG
XmNchildPlacement         XmCChildPlacement         unsigned char    XmPLACE_ABOVE_SELECTION   CSG
XmNdialogType             XmCDialogType             unsigned char    dynamic                   CG
XmNhelpLabelString        XmCHelpLabelString        XmString         dynamic                   CSG
XmNlistItemCount          XmCItemCount              int              0                         CSG
XmNlistItems              XmCItems                  XmStringTable    NULL                      CSG
XmNlistLabelString        XmCListLabelString        XmString         dynamic                   CSG
XmNlistVisibleItemCount   XmCVisibleItemCount       int              dynamic                   CSG
XmNminimizeButtons        XmCMinimizeButtons        Boolean          False                     CSG
XmNmustMatch              XmCMustMatch              Boolean          False                     CSG
XmNnoMatchCallback        XmCCallback               XtCallbackList   NULL                      C
XmNokCallback             XmCCallback               XtCallbackList   NULL                      C
XmNokLabelString          XmCOkLabelString          XmString         dynamic                   CSG
XmNselectionLabelString   XmCSelectionLabelString   XmString         dynamic                   CSG
XmNtextAccelerators       XmCTextAccelerators       XtAccelerators   default                   C
XmNtextColumns            XmCColumns                short            dynamic                   CSG
XmNtextString             XmCTextString             XmString         ""                        CSG


     XmNapplyCallback
               Specifies  the  list  of callbacks called when the user activates
               the Apply button.  The callback reason is XmCR_APPLY.

     XmNapplyLabelString
               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".

     XmNcancelCallback
               Specifies the list of callbacks called when  the  user  activates
               the Cancel button.  The callback reason 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 de-
               fault is "Cancel".

     XmNchildPlacement
               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


     XmNdialogType
               Determines the set of SelectionBox children widgets that are cre-
               ated and managed at initialization.  The following  are  possible
               values:


                 *  XmDIALOG_PROMPT-all  standard  children  except the list and
                    list label are created, and all except the Apply button  are
                    managed

                 *  XmDIALOG_COMMAND-only the list, the selection label, and the
                    text field are created and managed

                 *  XmDIALOG_SELECTION-all  standard  children  are  created and
                    managed

                 *  XmDIALOG_FILE_SELECTION-all standard  children  are  created
                    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   XmDIA-
                 LOG_WORK_AREA.   XmCreatePromptDialog and XmCreateSelectionDia-
                 log set and append this resource to the creation  arglist  sup-
                 plied by the application.  This resource cannot be modified af-
                 ter creation.

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

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

     XmNlistItemCount
               Specifies  the  number  of  items  in the SelectionBox list.  The
               value must not be negative.

     XmNlistLabelString
               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 XmDIALOG_PROMPT; in that case the default
               is NULL.

     XmNlistVisibleItemCount
               Specifies the number of items displayed in the SelectionBox list.
               The  value  must be greater than 0 unless XmNdialogType is XmDIA-
               LOG_PROMPT; in that case the value is always 0.  The  default  is
               dynamic based on the height of the list.

     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 not modified.

     XmNmustMatch
               Specifies whether the selection widget should check if the user's
               selection in the text edit field has an exact match in the Selec-
               tionBox  list  when the OK button is activated.  If the selection
               does not have an exact match, and XmNmustMatch is True, the  XmN-
               noMatchCallback callbacks are called.  If the selection does have
               an  exact  match or if XmNmustMatch is False, XmNokCallback call-
               backs are called.

     XmNnoMatchCallback
               Specifies the list of callbacks called when the user makes a  se-
               lection  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 XmN-
               mustMatch is true.

     XmNokCallback
               Specifies the list of callbacks called when  the  user  activates
               the OK button.  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.

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

     XmNselectionLabelString
               Specifies  the  string  label  for the selection text edit field.
               The default for this resource depends on the locale.   In  the  C
               locale the default is "Selection".

     XmNtextAccelerators
               Specifies  translations added to the Text widget child of the Se-
               lectionBox.  The default includes bindings for the  up  and  down
               keys  for auto selection of list items.  This resource is ignored
               if XmNaccelerators is initialized to a nondefault value.

     XmNtextColumns
               Specifies the number of columns in the Text  widget.   The  value
               must be greater than 0.

     XmNtextString
               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                  Class                Type             Default        Access
 ----------------------------------------------------------------------------------
 XmNallowOverlap       XmCAllowOverlap      Boolean          True           CSG
 XmNautoUnmanage       XmCAutoUnmanage      Boolean          True           CG
 XmNbuttonFontList     XmCButtonFontList    XmFontList       dynamic        CSG
 XmNcancelButton       XmCWidget            Widget           dynamic        SG
 XmNdefaultButton      XmCWidget            Widget           dynamic        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

                                     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;
       XmString     value;
       int          length;
     } XmSelectionBoxCallbackStruct;


     reason Indicates why the callback was invoked

     event  Points to the XEvent that triggered the callback

     value  Indicates  the  XmString  value selected by the user from the Selec-
            tionBox list or entered into the SelectionBox text field

     length 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 XmSelectionBox.
     The default accelerators are listed below.  These accelerators may not  di-
     rectly correspond to a translation table.

     KUp:           SelectionBoxUpOrDown(0)
     KDown:         SelectionBoxUpOrDown(1)
     KBeginData:    SelectionBoxUpOrDown(2)
     KEndData:      SelectionBoxUpOrDown(3)
     KRestore:      SelectionBoxRestore()


   Action Routines
     The XmSelectionBox action routines are described below:


     SelectionBoxUpOrDown(0|1|2|3):
               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  re-
     places the text with that item.

     When  called  with a 2 argument, selects the first item in the list and re-
     places the text with that item.

     When called with a 3 argument, selects the last item in the  list  and  re-
     places the text with that item.

     SelectionBoxRestore():
               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:


     MAny KCancel:
               Calls the activate callbacks for the cancel button if it is  sen-
               sitive.   If no cancel button exists and the parent of the Selec-
               tionBox is a manager, passes the event to the parent.

     KActivate:Calls the activate callbacks for the button with the keyboard fo-
               cus.  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  asso-
               ciated  with  KActivate is called before the SelectionBox actions
               associated with KActivate.  In a multi-line Text widget, any KAc-
               tivate event except KEnter calls the Text action associated  with
               KActivate,  then  the SelectionBox actions associated with KActi-
               vate.  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.

     <OK Button Activated>:
               If XmNmustMatch is True and the text does not match  an  item  in
               the file list, calls the XmNnoMatchCallback callbacks with reason
               XmCR_NO_MATCH.  Otherwise, calls the XmNokCallback callbacks with
               reason XmCR_OK.

     <Apply Button Activated>:
               Calls the XmNapplyCallback callbacks with reason XmCR_APPLY.

     <Cancel Button Activated>:
               Calls the XmNcancelCallback callbacks with reason XmCR_CANCEL.

     <Help Button Activated>:
               Calls the XmNhelpCallback callbacks with reason XmCR_HELP.

     <MapWindow>:
               Calls  the  callbacks for XmNmapCallback if the SelectionBox is a
               child of a Dialog shell.

     <UnmapWindow>:
               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 INFORMATION
     Composite(3X), Constraint(3X), Core(3X), XmBulletinBoard(3X), XmCreateSe-
     lectionBox(3X), XmCreateSelectionDialog(3X), XmCreatePromptDialog(3X), Xm-
     Manager(3X), and XmSelectionBoxGetChild(3X).

                                                              XmSelectionBox(3X)