


XmArrowButton(3X)					    XmArrowButton(3X)
OSF/Motif							    OSF/Motif



NAME
  XXmmAArrrroowwBBuuttttoonn	- The ArrowButton widget class

SYNOPSIS


  ##iinncclluuddee <<XXmm//AArrrroowwBB..hh>>

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

  Classes

  ArrowButton inherits behavior	and resources from CCoorree	and XXmmPPrriimmiittiivvee
  classes.

  The class pointer is xxmmAArrrroowwBBuuttttoonnWWiid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n.

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

			  XXmmAArrrroowwBBuuttttoonn	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 ArrowButton
	    is activated.  To activate the button, press and release BBSSeelleecctt
	    while the pointer is inside	the ArrowButton	widget.	 Activating
	    the	ArrowButton also disarms it.  The reason sent by this call-
	    back 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 ArrowButton
	    is armed.  To arm this widget, press BBSSeelleecctt while the pointer is
	    inside the ArrowButton.  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 following are values	for this
	    resource:

	      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 ArrowButton
	    is disarmed.  To disarm this widget, press and release BBSSeelleecctt
	    while the pointer is inside	the ArrowButton.  The reason for 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 button 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

  ArrowButton inherits behavior	and resources from the following superc-
  lasses.  For a complete description of each resource,	refer to the man page
  for that superclass.

			   XXmmPPrriimmiittiivvee 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			CSG
	      XmCBottomShadowColor	     Pixel
	______________________________________________________________
	XmNbottomShadowPixmap	      XmUNSPECIFIED_PIXMAP	CSG
	      XmCBottomShadowPixmap	     Pixmap
	______________________________________________________________
	XmNforeground		      dynamic			CSG
	      XmCForeground		     Pixel
	______________________________________________________________
	XmNhelpCallback		      NULL			C
	      XmCCallback		     XtCallbackList
	______________________________________________________________
	XmNhighlightColor	      dynamic			CSG
	      XmCHighlightColor		     Pixel
	______________________________________________________________
	XmNhighlightOnEnter	      False			CSG
	      XmCHighlightOnEnter	     Boolean
	______________________________________________________________
	XmNhighlightPixmap	      dynamic			CSG
	      XmCHighlightPixmap	     Pixmap
	______________________________________________________________
	XmNhighlightThickness	      2				CSG
	      XmCHighlightThickness	     Dimension
	______________________________________________________________
	XmNnavigationType	      XmNONE			CSG
	      XmCNavigationType		     XmNavigationType
	______________________________________________________________
	XmNshadowThickness	      2				CSG
	      XmCShadowThickness	     Dimension
	______________________________________________________________
	XmNtopShadowColor	      dynamic			CSG
	      XmCTopShadowColor		     Pixel
	______________________________________________________________
	XmNtopShadowPixmap	      dynamic			CSG
	      XmCTopShadowPixmap	     Pixmap
	______________________________________________________________
	XmNtraversalOn		      True			CSG
	      XmCTraversalOn		     Boolean
	______________________________________________________________
	XmNunitType		      dynamic			CSG
	      XmCUnitType		     unsigned char
	______________________________________________________________
	XmNuserData		      NULL			CSG
	      XmCUserData		     XtPointer
	______________________________________________________________

			      CCoorree 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
     ____________________________________________________________________
     ____________________________________________________________________
     XmNaccelerators			   dynamic		   CSG
	   XmCAccelerators			  XtAccelerators
     ____________________________________________________________________
     XmNancestorSensitive		   dynamic		   G
	   XmCSensitive				  Boolean
     ____________________________________________________________________
     XmNbackground			   dynamic		   CSG
	   XmCBackground			  Pixel
     ____________________________________________________________________
     XmNbackgroundPixmap		   XmUNSPECIFIED_PIXMAP	   CSG
	   XmCPixmap				  Pixmap
     ____________________________________________________________________
     XmNborderColor			   XtDefaultForeground	   CSG
	   XmCBorderColor			  Pixel
     ____________________________________________________________________
     XmNborderPixmap			   XmUNSPECIFIED_PIXMAP	   CSG
	   XmCPixmap				  Pixmap
     ____________________________________________________________________
     XmNborderWidth			   0			   CSG
	   XmCBorderWidth			  Dimension
     ____________________________________________________________________
     XmNcolormap			   dynamic		   CG
	   XmCColormap				  Colormap
     ____________________________________________________________________
     XmNdepth				   dynamic		   CG
	   XmCDepth				  int
     ____________________________________________________________________
     XmNdestroyCallback			   NULL			   C
	   XmCCallback				  XtCallbackList
     ____________________________________________________________________
     XmNheight				   dynamic		   CSG
	   XmCHeight				  Dimension
     ____________________________________________________________________
     XmNinitialResourcesPersistent	   True			   C
	   XmCInitialResourcesPersistent	  Boolean
     ____________________________________________________________________
     XmNmappedWhenManaged		   True			   CSG
	   XmCMappedWhenManaged			  Boolean
     ____________________________________________________________________
     XmNscreen				   dynamic		   CG
	   XmCScreen				  Screen *
     ____________________________________________________________________
     XmNsensitive			   True			   CSG
	   XmCSensitive				  Boolean
     ____________________________________________________________________
     XmNtranslations			   dynamic		   CSG
	   XmCTranslations			  XtTranslations
     ____________________________________________________________________
     XmNwidth				   dynamic		   CSG
	   XmCWidth				  Dimension
     ____________________________________________________________________
     XmNx				   0			   CSG
	   XmCPosition				  Position
     ____________________________________________________________________
     XmNy				   0			   CSG
	   XmCPosition				  Position
     ____________________________________________________________________

  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.



  Translations

  XmArrowButton	includes translations for XmPrimitive.	Additional XmAr-
  rowButton translations are listed below.  These translations may not
  directly correspond to a translation table.

       BBSSeelleecctt PPrreessss:: AArrmm(())
       BBSSeelleecctt CClliicckk:: AAccttiivvaattee(())
		      DDiissaarrmm(())
       BBSSeelleecctt RReelleeaassee::AAccttiivvaattee(())
		      DDiissaarrmm(())
       BBSSeelleecctt PPrreessss 22++::MMuullttiiAArrmm(())
       BBSSeelleecctt RReelleeaassee 22++::MMuullttiiAAccttiivvaattee(())
       KKSSeelleecctt::	      AArrmmAAnnddAAccttiivvaattee(())
       KKHHeellpp::	      HHeellpp(())

  Action Routines

  The XmArrowButton action routines are	described below:

  AAccttiivvaattee(()):
	    Draws the shadow in	the unselected state.  If the pointer is
	    within the ArrowButton, calls the callbacks	for XXmmNNaaccttiivvaatteeCCaallll--
	    bbaacckk.

  AArrmm(()):    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.

  AArrmmAAnnddAAccttiivvaattee(()):
	    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.

  DDiissaarrmm(()): Draws the shadow in	the unselected state and calls the callbacks
	    for	XXmmNNddiissaarrmmCCaallllbbaacckk.

  H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	action calls the help
	    callbacks for the nearest ancestor that has	them.

  MMuullttiiAAccttiivvaattee(()):
	    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
	    ArrowButton, 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.

  MMuullttiiAArrmm(()):
	    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.











  Additional Behavior

  This widget has the additional behavior described below:

  <<EEnntteerrWWiinnddooww>>:
	    Draws the ArrowButton shadow in its	selected state if the pointer
	    leaves and re-enters the window while BSelect is pressed.

  <<LLeeaavveeWWiinnddooww>>:
	    Draws the ArrowButton shadow in its	unselected state if the
	    pointer leaves the window 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
  CCoorree((33XX)), XXmmCCrreeaatteeAArrrroowwBBuuttttoonn((33XX)), and XXmmPPrriimmiittiivvee((33XX)).




















































