XmArrowButtonGadget(3X) X11 SDE 5.4R3.00 XmArrowButtonGadget(3X)
NAME
XmArrowButtonGadget--The ArrowButtonGadget widget class
SYNOPSIS
#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
programmer 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 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
XmNactivateCallback
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 ArrowButtonGadget also
disarms it. The reason sent by this callback is
Licensed material--property of copyright holder(s) 1
XmArrowButtonGadget(3X) X11 SDE 5.4R3.00 XmArrowButtonGadget(3X)
XmCR_ACTIVATE.
XmNarmCallback
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.
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
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.
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 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
Licensed material--property of copyright holder(s) 2
XmArrowButtonGadget(3X) X11 SDE 5.4R3.00 XmArrowButtonGadget(3X)
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 contains 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 XmNmultiClick is set to
XmMULTICLICK_KEEP.
Behavior
XmArrowButtonGadget includes behavior from XmGadget. Additional
XmArrowButtonGadget 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
Licensed material--property of copyright holder(s) 3
XmArrowButtonGadget(3X) X11 SDE 5.4R3.00 XmArrowButtonGadget(3X)
XmNactivateCallback. Calls the callbacks for
XmNdisarmCallback.
BSelect Press 2+:
If XmNmultiClick is XmMULTICLICK_DISCARD, this action does
nothing. If XmNmultiClick is XmMULTICLICK_KEEP, this
action draws the shadow in the selected state and calls the
callbacks for XmNarmCallback.
BSelect Release 2+:
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.
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(3X).
RELATED INFORMATION
Object(3X), RectObj(3X), XmCreateArrowButtonGadget(3X), and
XmGadget(3X).
Licensed material--property of copyright holder(s) 4