XmArrowButtonGadget(3X)

XmArrowButtonGadget --The ArrowButtonGadget widget class

As shipped in IRIX 6.5.7. Unchanged since IRIX 6.5.

NAME
     XmArrowButtonGadget --The ArrowButtonGadget widget class

SYNOPSIS
     #include <Xm/ArrowBG.h>


VERSION
     This page documents version 1.2 of the Motif library.

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

                           ArrowButtonGadget Resource Set
   Name                  Class               Type             Default      Access
   -------------------------------------------------------------------------------
   XmNactivateCallback   XmCCallback         XtCallbackList   NULL         C
   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  re-
               lease  BSelect while the pointer is inside the ArrowButtonGadget.
               Activating the ArrowButtonGadget also  disarms  it.   The  reason
               sent by this callback is XmCR_ACTIVATE.

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

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


                 *  XmARROW_UP.

                 *  XmARROW_DOWN.

                 *  XmARROW_LEFT.

                 *  XmARROW_RIGHT.


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

     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 XmMULTICLICK_DISCARD, do not process the  sec-
               ond click.  If this resource is set to XmMULTICLICK_KEEP, process
               the  event  and  increment click_count in the callback structure.
               When the ArrowButtonGadget is not in a menu, the default value is
               XmMULTICLICK_KEEP.


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

                               XmGadget Resource Set
Name                    Class                   Type               Default   Access
------------------------------------------------------------------------------------
XmNbottomShadowColor    XmCBottomShadowColor    Pixel              dynamic   G
XmNhelpCallback         XmCCallback             XtCallbackList     NULL      C
XmNhighlightColor       XmCHighlightColor       Pixel              dynamic   G
XmNhighlightOnEnter     XmCHighlightOnEnter     Boolean            False     CSG
XmNhighlightThickness   XmCHighlightThickness   Dimension          2         CSG
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
        ---------------------------------------------------------------------
        XmNancestorSensitive   XmCSensitive     Boolean     dynamic   G
        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.

     click_count
            This  value is valid only when the reason is XmCR_ACTIVATE.  It con-
            tains the number of clicks in the last multiclick  sequence  if  the
            XmNmultiClick  resource  is  set  to XmMULTICLICK_KEEP, otherwise it
            contains 1.  The activate callback is invoked for each click if XmN-
            multiClick is set to XmMULTICLICK_KEEP.


   Behavior
     XmArrowButtonGadget includes behavior from XmGadget.   Additional  XmArrow-
     ButtonGadget 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 XmNacti-
               vateCallback.  Calls the callbacks for XmNdisarmCallback.

     BSelect Press 2+:
               If XmNmultiClick is XmMULTICLICK_DISCARD, this action does  noth-
               ing.   If  XmNmultiClick  is XmMULTICLICK_KEEP, this action draws
               the shadow in the selected state and calls the callbacks for XmN-
               armCallback.

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

     If  XmNmultiClick is XmMULTICLICK_KEEP, this action does the following: In-
     crements click_count 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  XmNdisarm-
     Callback.

     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  call-
               backs 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(3X).

RELATED INFORMATION
     Object(3X), RectObj(3X), XmCreateArrowButtonGadget(3X), and XmGadget(3X).

                                                         XmArrowButtonGadget(3X)