Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ XmCreaOpt(Xm) — OpenDesktop Software Development System 3.0.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought


 XmCreateOptionMenu(Xm)         6 January 1993         XmCreateOptionMenu(Xm)


 Name

    XmCreateOptionMenu - a RowColumn widget convenience creation function

 Syntax


    #include <Xm/RowColumn.h>

    Widget XmCreateOptionMenu (parent, name, arglist, argcount)
    Widget parent;
    String name;
    ArgList arglist;
    Cardinal argcount;


 Description

    XmCreateOptionMenu creates an instance of a RowColumn widget of type
    XmMENUOPTION and returns the associated widget ID.

    It is provided as a convenience function for creating a RowColumn widget
    configured to operate as an OptionMenu and is not implemented as a
    separate widget class.

    The OptionMenu widget is a specialized RowColumn manager composed of a
    label, a selection area, and a single Pulldown MenuPane. When an applica-
    tion creates an OptionMenu widget, it supplies the label string and the
    Pulldown MenuPane.  In order to succeed, there must be a valid XmNsub-
    MenuId resource set when calling this function.  When the OptionMenu is
    created, the Pulldown MenuPane must have been created as a child of the
    OptionMenu's parent and must be specified.  The LabelGadget and the
    selection area (a CascadeButtonGadget) are created by the OptionMenu.

    The OptionMenu's Pulldown MenuPane must not contain any ToggleButtons or
    ToggleButtonGadgets.  The results of including CascadeButtons or Cascade-
    ButtonGadgets in the OptionMenu's Pulldown MenuPane are undefined.

    An OptionMenu is laid out with the label displayed on one side of the
    widget and the selection area on the other side when XmNorientation is
    XmHORIZONTAL. If the value is XmVERTICAL, the label is above the selec-
    tion area.  The selection area has a dual purpose; it displays the label
    of the last item selected from the associated Pulldown MenuPane, and it
    provides the means for posting the Pulldown MenuPane.

    The OptionMenu typically does not display any 3-D visuals around itself
    or the internal LabelGadget. By default, the internal CascadeButtonGadget
    has a visible 3-D shadow.  The application may change this by getting the
    CascadeButtonGadget ID using XmOptionButtonGadget, and then calling
    XtSetValues using the standard visual-related resources.

    The Pulldown MenuPane is posted by moving the mouse pointer over the
    selection area and pressing a mouse button defined by OptionMenu's
    RowColumn parent.  The Pulldown MenuPane is posted and positioned so that
    the last selected item is directly over the selection area. The mouse is
    then used to arm the desired menu item. When the mouse button is
    released, the armed menu item is selected and the label within the selec-
    tion area is changed to match that of the selected item. By default,
    BSelect is used to interact with an OptionMenu.  The default can be
    changed via the RowColumn resource XmNmenuPost.

    The OptionMenu also operates by using the keyboard interface mechanism.
    If the application has established a mnemonic with the OptionMenu, typing
    Alt with the mnemonic causes the Pulldown MenuPane to be posted with
    traversal enabled.  The standard traversal keys can then be used to move
    within the MenuPane. Selection can occur as the result of pressing the
    Return key or typing a mnemonic or accelerator for one of the menu items.

    An application may use the XmNmenuHistory resource to indicate which item
    in the Pulldown MenuPane should be treated as the current choice and have
    its label displayed in the selection area. By default, the first item in
    the Pulldown MenuPane is used.

    parent  Specifies the parent widget ID

    name    Specifies the name of the created widget

    arglist Specifies the argument list

    argcount
            Specifies the number of attribute/value pairs in the argument
            list (arglist)

    The user can specify resources in a resource file for the automatically
    created widgets and gadgets of an OptionMenu. The following list identi-
    fies the names of these widgets (or gadgets) and the associated Option-
    Menu areas.

    +  Option Menu Label Gadget -- ``OptionLabel''

    +  Option Menu Cascade Button -- ``OptionButton''

    For a complete definition of RowColumn and its associated resources, see
    XmRowColumn(Xm).

 Return value

    Returns the RowColumn widget ID.

 See also

    XmCascadeButtonGadget(Xm), XmCreatePulldownMenu(Xm),
    XmCreateSimpleOptionMenu(Xm), XmLabelGadget(Xm),
    XmOptionButtonGadget(Xm), XmOptionLabelGadget(Xm), XmRowColumn(Xm) and
    XmVaCreateSimpleOptionMenu(Xm).


Typewritten Software • bear@typewritten.org • Edmonds, WA 98026