XmArrowButtonGadget(3X)XmArrowButtonGadget(3X)NAMEXmArrowButtonGadget — 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 bor‐
der 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 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).
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
Specifies a list of callbacks that is called when the ArrowButtonGadget
is activated. To activate the button, press and release BSelect while
the pointer is inside the ArrowButtonGadget. Activating the ArrowBut‐
tonGadget also disarms it. The reason sent by this callback is
XmCR_ACTIVATE. Specifies a list of callbacks that is called when the
ArrowButtonGadget is armed. To arm this widget, press BSelect while
the pointer is inside the ArrowButtonGadget. The reason sent by this
callback is XmCR_ARM. Sets the arrow direction. The values for this
resource are: XmARROW_UP. XmARROW_DOWN. XmARROW_LEFT. XmARROW_RIGHT.
Specifies a list of callbacks that is called when the ArrowButtonGadget
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. If a button click is followed by another but‐
ton 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 second 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
superclasses. 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: type‐
def struct { int reason; XEvent * event;
int click_count; } XmArrowButtonCallbackStruct; Indicates why
the callback was invoked. Points to the XEvent that triggered the
callback. This value is valid only when the reason is XmCR_ACTIVATE.
It contains the number of clicks in the last multiclick sequence if the
XmNmultiClick resource is set to XmMULTICLICK_KEEP, otherwise it con‐
tains 1. The activate callback is invoked for each click if XmNmul‐
tiClick is set to XmMULTICLICK_KEEP.
Behavior
XmArrowButtonGadget includes behavior from XmGadget. Additional XmAr‐
rowButtonGadget behavior is described below: Draws the shadow in the
selected state and calls the callbacks for XmNarmCallback. Draws the
shadow in the unselected state. If the pointer is within the ArrowBut‐
tonGadget, calls the callbacks for XmNactivateCallback. Calls the
callbacks for XmNdisarmCallback. If XmNmultiClick is XmMULTICLICK_DIS‐
CARD, this action does nothing. If XmNmultiClick is XmMULTICLICK_KEEP,
this action draws the shadow in the selected state and calls the call‐
backs for XmNarmCallback. If XmNmultiClick is XmMULTICLICK_DISCARD,
this action does nothing.
If XmNmultiClick is XmMULTICLICK_KEEP, this action does the following:
Increments 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
XmNdisarmCallback. 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.
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. Draws the ArrowButtonGadget shadow in
its selected state if the pointer leaves and re-enters the gadget while
BSelect is pressed. Draws the ArrowButtonGadget shadow in its unse‐
lected 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 INFORMATIONObject(3X), RectObj(3X), XmCreateArrowButtonGadget(3X), and XmGad‐
get(3X).
XmArrowButtonGadget(3X)