


XmArrowButtonGadget(3X)				      XmArrowButtonGadget(3X)
OSF/Motif							    OSF/Motif



NAME
  XXmmAArrrroowwBBuuttttoonnGGaaddggeett -	The ArrowButtonGadget widget class

SYNOPSIS


  ##iinncclluuddee <<XXmm//AArrrroowwBBGG..h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 OObbjjeecctt, RReeccttOObbjj, and
  XXmmGGaaddggeett classes.

  The class pointer is xxmmAArrrroowwBBuuttttoonnGGaaddggeettCCllaassss.

  The class name is XXmmAArrrroowwBBuuttttoonnGGaaddggeett.

  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	XXmmNN or XXmmCC
  prefix and use the remaining letters.	 To specify one	of the defined values
  for a	resource in a .Xdefaults file, remove the XXmm prefix and	use the
  remaining 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 XXttSSeettVVaalluueess
  (S), retrieved by using XXttGGeettVVaalluueess (G), or is not applicable	(N/A).

			AArrrroowwBBuuttttoonnGGaaddggeett RReessoouurrccee SSeett
	   ________________________________________________________
	   NNaammee			     DDeeffaauulltt		     AAcccceessss
		 CCllaassss			   TTyyppee
	   ________________________________________________________
	   ________________________________________________________
	   XmNactivateCallback	     NULL		     C
		 XmCCallback		    XtCallbackList
	   ________________________________________________________
	   XmNarmCallback	     NULL		     C
		 XmCCallback		    XtCallbackList
	   ________________________________________________________
	   XmNarrowDirection	     XmARROW_UP		     CSG
		 XmCArrowDirection	    unsigned char
	   ________________________________________________________
	   XmNdisarmCallback	     NULL		     C
		 XmCCallback		    XtCallbackList
	   ________________________________________________________
	   XmNmultiClick	     dynamic		     CSG
		 XmCMultiClick		    unsigned char
	   ________________________________________________________

  XXmmNNaaccttiivvaatteeCCaallllbbaacckk
	    Specifies a	list of	callbacks that is called when the ArrowBut-
	    tonGadget is activated.  To	activate the button, press and
	    release BBSSeelleecctt while the pointer is inside	the ArrowBut-
	    tonGadget.	Activating the ArrowButtonGadget also disarms it.
	    The	reason sent by this callback is	XXmmCCRR__AACCTTIIVVAATTEE.

  XXmmNNaarrmmCCaallllbbaacckk
	    Specifies a	list of	callbacks that is called when the ArrowBut-
	    tonGadget is armed.	 To arm	this widget, press BBSSeelleecctt while the
	    pointer is inside the ArrowButtonGadget.  The reason sent by this
	    callback is	XXmmCCRR__AARRMM.

  XXmmNNaarrrroowwDDiirreeccttiioonn
	    Sets the arrow direction.  The values for this resource are:

	      oo++
	      XXmmAARRRROOWW__UUPP.

	      oo++
	      XXmmAARRRROOWW__DDOOWWNN.

	      oo++
	      XXmmAARRRROOWW__LLEEFFTT.

	      oo++
	      XXmmAARRRROOWW__RRIIGGHHTT.

  XXmmNNddiissaarrmmCCaallllbbaacckk
	    Specifies a	list of	callbacks that is called when the ArrowBut-
	    tonGadget is disarmed.  To disarm this widget, press and release
	    BBSSeelleecctt while the pointer is inside	the ArrowButtonGadget.	The
	    reason sent	by this	callback is XXmmCCRR__DDIISSAARRMM.

  XXmmNNmmuullttiiCClliicckk
	    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 XXmmMMUULLTTIICCLLIICCKK__DDIISSCCAARRDD, do	not process the
	    second click.  If this resource is set to XXmmMMUULLTTIICCLLIICCKK__KKEEEEPP, pro-
	    cess the event and increment _c_l_i_c_k__c_o_u_n_t in	the callback struc-
	    ture.  When	the ArrowButtonGadget is not in	a menu,	the default
	    value is XXmmMMUULLTTIICCLLIICCKK__KKEEEEPP.

  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.

			    XXmmGGaaddggeett RReessoouurrccee SSeett
	______________________________________________________________
	NNaammee			      DDeeffaauulltt			AAcccceessss
	      CCllaassss			    TTyyppee
	______________________________________________________________
	______________________________________________________________
	XmNbottomShadowColor	      dynamic			G
	      XmCBottomShadowColor	     Pixel
	______________________________________________________________
	XmNhelpCallback		      NULL			C
	      XmCCallback		     XtCallbackList
	______________________________________________________________
	XmNhighlightColor	      dynamic			G
	      XmCHighlightColor		     Pixel
	______________________________________________________________
	XmNhighlightOnEnter	      False			CSG
	      XmCHighlightOnEnter	     Boolean
	______________________________________________________________
	XmNhighlightThickness	      2				CSG
	      XmCHighlightThickness	     Dimension
	______________________________________________________________
	XmNnavigationType	      XmNONE			CSG
	      XmCNavigationType		     XmNavigationType
	______________________________________________________________
	XmNshadowThickness	      2				CSG
	      XmCShadowThickness	     Dimension
	______________________________________________________________
	XmNtopShadowColor	      dynamic			G
	      XmCTopShadowColor		     Pixel
	______________________________________________________________
	XmNtraversalOn		      True			CSG
	      XmCTraversalOn		     Boolean
	______________________________________________________________
	XmNunitType		      dynamic			CSG
	      XmCUnitType		     unsigned char
	______________________________________________________________
	XmNuserData		      NULL			CSG
	      XmCUserData		     XtPointer
	______________________________________________________________

			     RReeccttOObbjj RReessoouurrccee SSeett
	       ________________________________________________
	       NNaammee		      DDeeffaauulltt		 AAcccceessss
		     CCllaassss		    TTyyppee
	       ________________________________________________
	       ________________________________________________
	       XmNancestorSensitive   dynamic		 G
		     XmCSensitive	     Boolean
	       ________________________________________________
	       XmNborderWidth	      0			 CSG
		     XmCBorderWidth	     Dimension
	       ________________________________________________
	       XmNheight	      dynamic		 CSG
		     XmCHeight		     Dimension
	       ________________________________________________
	       XmNsensitive	      True		 CSG
		     XmCSensitive	     Boolean
	       ________________________________________________
	       XmNwidth		      dynamic		 CSG
		     XmCWidth		     Dimension
	       ________________________________________________
	       XmNx		      0			 CSG
		     XmCPosition	     Position
	       ________________________________________________
	       XmNy		      0			 CSG
		     XmCPosition	     Position
	       ________________________________________________

			      OObbjjeecctt RReessoouurrccee SSeett
	      ___________________________________________________
	      NNaammee		   DDeeffaauulltt		   AAcccceessss
		    CCllaassss		 TTyyppee
	      ___________________________________________________
	      ___________________________________________________
	      XmNdestroyCallback   NULL			   C
		    XmCCallback		  XtCallbackList
	      ___________________________________________________

  Callback Information

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


  ttyyppeeddeeff ssttrruucctt
  {{
    iinntt	     _r_e_a_s_o_n;;
    XXEEvveenntt   * _e_v_e_n_t;;
    iinntt	     _c_l_i_c_k__c_o_u_n_t;;
  }} XXmmAArrrroowwBBuuttttoonnCCaallllbbaacckkSSttrruucctt;;

  _r_e_a_s_o_n Indicates why the callback was	invoked.

  _e_v_e_n_t	 Points	to the XXEEvveenntt that triggered the callback.

  _c_l_i_c_k__c_o_u_n_t
	 This value is valid only when the reason is XXmmCCRR__AACCTTIIVVAATTEE.  It	con-
	 tains the number of clicks in the last	multiclick sequence if the
	 XXmmNNmmuullttiiCClliicckk resource	is set to XXmmMMUULLTTIICCLLIICCKK__KKEEEEPP, otherwise it
	 contains 11.  The activate callback is invoked for each	click if
	 XXmmNNmmuullttiiCClliicckk is set to XXmmMMUULLTTIICCLLIICCKK__KKEEEEPP.

  Behavior

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

  BBSSeelleecctt PPrreessss:
	    Draws the shadow in	the selected state and calls the callbacks
	    for	XXmmNNaarrmmCCaallllbbaacckk.

  BBSSeelleecctt CClliicckk	oorr BBSSeelleeccttRReelleeaassee:
	    Draws the shadow in	the unselected state.  If the pointer is
	    within the ArrowButtonGadget, calls	the callbacks for XXmmNNaacc--
	    ttiivvaatteeCCaallllbbaacckk.  Calls the callbacks for XXmmNNddiissaarrmmCCaallllbbaacckk.

  BBSSeelleecctt PPrreessss	22++:
	    If XXmmNNmmuullttiiCClliicckk is	XXmmMMUULLTTIICCLLIICCKK__DDIISSCCAARRDD, this action does noth-
	    ing.  If XXmmNNmmuullttiiCClliicckk is XXmmMMUULLTTIICCLLIICCKK__KKEEEEPP, this action draws
	    the	shadow in the selected state and calls the callbacks for
	    XXmmNNaarrmmCCaallllbbaacckk.

  BBSSeelleecctt RReelleeaassee 22++:
	    If XXmmNNmmuullttiiCClliicckk is	XXmmMMUULLTTIICCLLIICCKK__DDIISSCCAARRDD, this action does noth-
	    ing.
	    If XXmmNNmmuullttiiCClliicckk is	XXmmMMUULLTTIICCLLIICCKK__KKEEEEPP, this	action does the	fol-
	    lowing: Increments _c_l_i_c_k__c_o_u_n_t in the callback structure.  Draws
	    the	shadow in the unselected state.	 If the	pointer	is within the
	    ArrowButtonGadget, calls the callbacks for XXmmNNaaccttiivvaatteeCCaallllbbaacckk.
	    Calls the callbacks	for XXmmNNddiissaarrmmCCaallllbbaacckk.

  KKSSeelleecctt:  Draws the shadow in	the selected state and calls the callbacks
	    for	XXmmNNaarrmmCCaallllbbaacckk.	 Arranges for the shadow to be drawn in	the
	    unselected state and the callbacks for XXmmNNaaccttiivvaatteeCCaallllbbaacckk and
	    XXmmNNddiissaarrmmCCaallllbbaacckk to be called, either immediately or at a later
	    time.

  KKHHeellpp:    Calls the callbacks	for XXmmNNhheellppCCaallllbbaacckk 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.

  <<EEnntteerr>>:  Draws the ArrowButtonGadget	shadow in its selected state if	the
	    pointer leaves and re-enters the gadget while BSelect is pressed.

  <<LLeeaavvee>>:  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 VViirrttuuaallBBiinnddiinnggss((33XX)).

RELATED	INFORMATION
  OObbjjeecctt((33XX)), RReeccttOObbjj((33XX)), XXmmCCrreeaatteeAArrrroowwBBuuttttoonnGGaaddggeett((33XX)), and XXmmGGaaddggeett((33XX)).



























































