Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ XmArrButB(Xm) — OpenDesktop Software Development System 3.0.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought


 XmArrowButtonGadget(Xm)        6 January 1993        XmArrowButtonGadget(Xm)


 Name

    XmArrowButtonGadget - the ArrowButtonGadget widget class

 Syntax


    #include <Xm/ArrowBG.h>


 Description

    ArrowButtonGadget consists of a directional arrow surrounded by a border
    shadow.  When it is selected, the shadow changes to give the appearance
    that the ArrowButtonGadget has been pressed in.  When it is unselected,
    the shadow reverts to give the appearance that the button is released, or
    out.

    Classes

    ArrowButtonGadget inherits behavior and resources from Object, RectObj,
    and XmGadget classes.

    The class pointer is xmArrowButtonGadgetClass.

    The class name is XmArrowButtonGadget.

    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 values
    for the inherited classes to set attributes for this widget.  To refer-
    ence 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).

 ArrowButtonGadget resource set

 ____________________________________________________________________________
 Name                Class               Type             Default      Access
 ____________________________________________________________________________
 XmNactivate-        XmCCallback         XtCallbackList   NULL         C
 Callback
 XmNarmCallback      XmCCallback         XtCallbackList   NULL         C
 XmNarrowDirection   XmCArrowDirection   unsigned char    XmARROW_UP   CSG
 XmNdisarmCallback   XmCCallback         XtCallbackList   NULL         C
 XmNmultiClick       XmCMultiClick       unsigned char    dynamic      CSG


    XmNactivateCallback
            Specifies a list of callbacks that is called when the ArrowBut-
            tonGadget is activated.  To activate the button, press and
            release BSelect while the pointer is inside the ArrowBut-
            tonGadget.  Activating the ArrowButtonGadget also disarms it.
            The reason sent by this callback is XmCRACTIVATE.

    XmNarmCallback
            Specifies a list of callbacks that is called when the ArrowBut-
            tonGadget is armed.  To arm this widget, press BSelect while the
            pointer is inside the ArrowButtonGadget.  The reason sent by this
            callback is XmCRARM.

    XmNarrowDirection
            Sets the arrow direction.  The values for this resource are:

            +  XmARROWUP.

            +  XmARROWDOWN.

            +  XmARROWLEFT.

            +  XmARROWRIGHT.

    XmNdisarmCallback
            Specifies a list of callbacks that is called when the ArrowBut-
            tonGadget is disarmed.  To disarm this widget, press and release
            BSelect while the pointer is inside the ArrowButtonGadget.  The
            reason sent by this callback is XmCRDISARM.

    XmNmultiClick
            If a button click is followed by another button click within the
            time span specified by the display's multi-click time, and this
            resource is set to XmMULTICLICKDISCARD, do not process the
            second click.  If this resource is set to XmMULTICLICKKEEP, pro-
            cess the event and increment clickcount in the callback struc-
            ture.  When the ArrowButtonGadget is not in a menu, the default
            value is XmMULTICLICKKEEP.

    Inherited resources

    ArrowButtonGadget inherits behavior and resources from the following
    superclasses.  For a complete description of each resource, refer to the
    man page for that superclass.

 XmGadget resource set

 ____________________________________________________________________________
 Name                Class               Type               Default    Access
 ____________________________________________________________________________
 XmNbottom-          XmCBottom-          Pixel              dynamic    G
 ShadowColor         ShadowColor
 XmNhelpCallback     XmCCallback         XtCallbackList     NULL       C
 XmNhighlightColor   XmCHighlightColor   Pixel              dynamic    G
 XmNhighlight-       XmCHighlight-       Boolean            False      CSG
 OnEnter             OnEnter
 XmNhighlight-       XmCHighlight-       Dimension          2          CSG
 Thickness           Thickness
 XmNnavigationType   XmCNavigationType   XmNavigationType   XmNONE     CSG
 XmNshadowThickness  XmCShadowThickness  Dimension          2          CSG
 XmNtopShadowColor   XmCTopShadowColor   Pixel              dynamic    G
 XmNtraversalOn      XmCTraversalOn      Boolean            True       CSG
 XmNunitType         XmCUnitType         unsigned char      dynamic    CSG
 XmNuserData         XmCUserData         XtPointer          NULL       CSG


 RectObj resource set

 ____________________________________________________________________________
 Name                 Class                 Type         Default       Access
 ____________________________________________________________________________
 XmNancestor-         XmCSensitive          Boolean      dynamic       G
 Sensitive
 XmNborderWidth       XmCBorderWidth        Dimension    0             CSG
 XmNheight            XmCHeight             Dimension    dynamic       CSG
 XmNsensitive         XmCSensitive          Boolean      True          CSG
 XmNwidth             XmCWidth              Dimension    dynamic       CSG
 XmNx                 XmCPosition           Position     0             CSG
 XmNy                 XmCPosition           Position     0             CSG


 Object resource set

 ____________________________________________________________________________
 Name                 Class               Type             Default     Access
 ____________________________________________________________________________
 XmNdestroyCallback   XmCCallback         XtCallbackList   NULL        C


    Callback information

    A pointer to the following structure is passed to each callback:

       typedef struct
       {
           int reason;
           XEvent      * event;
           int click_count;
       } XmArrowButtonCallbackStruct;


    reason  Indicates why the callback was invoked.

    event   Points to the XEvent that triggered the callback.

    clickcount
            This value is valid only when the reason is XmCRACTIVATE.  It
            contains the number of clicks in the last multiclick sequence if
            the XmNmultiClick resource is set to XmMULTICLICKKEEP, otherwise
            it contains 1.  The activate callback is invoked for each click
            if XmNmultiClick is set to XmMULTICLICKKEEP.

    Behavior

    XmArrowButtonGadget includes behavior from XmGadget.  Additional XmAr-
    rowButtonGadget behavior is described below:

    BSelect Press:
            Draws the shadow in the selected state and calls the callbacks
            for XmNarmCallback.
    BSelect Click or BSelectRelease:
            Draws the shadow in the unselected state.  If the pointer is
            within the ArrowButtonGadget, calls the callbacks for XmNac-
            tivateCallback.  Calls the callbacks for XmNdisarmCallback.

    BSelect Press 2+:
            If XmNmultiClick is XmMULTICLICKDISCARD, this action does noth-
            ing.  If XmNmultiClick is XmMULTICLICKKEEP, this action draws
            the shadow in the selected state and calls the callbacks for
            XmNarmCallback.

    BSelect Release 2+:
            If XmNmultiClick is XmMULTICLICKDISCARD, this action does noth-
            ing.

            If XmNmultiClick is XmMULTICLICKKEEP, this action does the fol-
            lowing:  Increments clickcount in the callback structure.  Draws
            the shadow in the unselected state.  If the pointer is within the
            ArrowButtonGadget, calls the callbacks for XmNactivateCallback.
            Calls the callbacks for XmNdisarmCallback.

    KSelect:
            Draws the shadow in the selected state and calls the callbacks
            for XmNarmCallback.  Arranges for the shadow to be drawn in the
            unselected state and the callbacks for XmNactivateCallback and
            XmNdisarmCallback to be called, either immediately or at a later
            time.

    KHelp:  Calls the callbacks for XmNhelpCallback if any exist.  If there
            are no help callbacks for this widget, this calls the help
            callbacks for the nearest ancestor that has them.

    <Enter>:
            Draws the ArrowButtonGadget shadow in its selected state if the
            pointer leaves and re-enters the gadget while BSelect is pressed.

    <Leave>:
            Draws the ArrowButtonGadget shadow in its unselected state if the
            pointer leaves the gadget while BSelect is pressed.

    Virtual bindings

    The bindings for virtual keys are vendor specific.  For information about
    bindings for virtual buttons and keys, see VirtualBindings(Xm).

 See also

    Object(Xm), RectObj(Xm), XmCreateArrowButtonGadget(Xm) and XmGadget(Xm).



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