308 lines
		
	
	
	
		
			7.6 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			308 lines
		
	
	
	
		
			7.6 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <TITLE>spinner - Create and manipulate a spinner widget</TITLE>
 | |
| <H1>spinner - Create and manipulate a spinner widget</H1>
 | |
| 
 | |
| </pre><H2>SYNOPSIS</H2>
 | |
| <B>spinner<I> <I>pathName </I>?<I>options</I>?
 | |
| </pre><H2>INHERITANCE</H2>
 | |
| itk::Widget <- Labeledwidget <- Spinner
 | |
| </pre><H2>STANDARD OPTIONS</H2>
 | |
| <P>
 | |
| <table cellpadding=5>
 | |
| <td valign=top>
 | |
| <B>background</B><br>
 | |
| <B>foreground</B><br>
 | |
| <B>insertBorderWidth</B><br>
 | |
| <B>justify</B><br>
 | |
| <B>selectForeground</B><br>
 | |
| </td>
 | |
| <td valign=top>
 | |
| <B>borderWidth</B><br>
 | |
| <B>highlightColor</B><br>
 | |
| <B>insertOffTime</B><br>
 | |
| <B>relief</B><br>
 | |
| <B>textVariable</B><br>
 | |
| </td>
 | |
| <td valign=top>
 | |
| <B>cursor</B><br>
 | |
| <B>highlightThickness</B><br>
 | |
| <B>insertOnTime</B><br>
 | |
| <B>selectBackground</B><br>
 | |
| </td>
 | |
| <td valign=top>
 | |
| <B>exportSelection</B><br>
 | |
| <B>insertBackground</B><br>
 | |
| <B>insertWidth</B><br>
 | |
| <B>selectBorderWidth</B><br>
 | |
| </td>
 | |
| </table>
 | |
| <P>
 | |
| See the <A HREF="http://www.sco.com/Technology/tcl/man/tk_man/options.n.html"> "options" </A> manual entry for details on the standard options.
 | |
| </pre><H2>ASSOCIATED OPTIONS</H2>
 | |
| <P>
 | |
| <table cellpadding=5>
 | |
| <td valign=top>
 | |
| <B>show</B><br>
 | |
| </td>
 | |
| <td valign=top>
 | |
| <B>state</B><br>
 | |
| </td>
 | |
| <td valign=top>
 | |
| </td>
 | |
| <td valign=top>
 | |
| </td>
 | |
| </table>
 | |
| <P>
 | |
| See the <A HREF="http://www.sco.com/Technology/tcl/man/tk_man/entry.n.html"> "entry" </A> manual entry for details on the associated options.
 | |
| </pre><H2>INHERITED OPTIONS</H2>
 | |
| <P>
 | |
| <table cellpadding=5>
 | |
| <td valign=top>
 | |
| <B>childSitePos</B><br>
 | |
| <B>invalid</B><br>
 | |
| <B>width</B><br>
 | |
| </td>
 | |
| <td valign=top>
 | |
| <B>command</B><br>
 | |
| <B>textBackground</B><br>
 | |
| </td>
 | |
| <td valign=top>
 | |
| <B>fixed</B><br>
 | |
| <B>textFont</B><br>
 | |
| </td>
 | |
| <td valign=top>
 | |
| <B>focusCommand</B><br>
 | |
| <B>validate</B><br>
 | |
| </td>
 | |
| </table>
 | |
| <P>
 | |
| See the <A HREF="entryfield.n.html"> "entryfield" </A> widget manual entry for details on the above
 | |
| inherited options.
 | |
| <P>
 | |
| <table cellpadding=5>
 | |
| <td valign=top>
 | |
| <B>disabledForeground</B><br>
 | |
| <B>labelMargin</B><br>
 | |
| <B>state</B><br>
 | |
| </td>
 | |
| <td valign=top>
 | |
| <B>labelBitmap</B><br>
 | |
| <B>labelPos</B><br>
 | |
| </td>
 | |
| <td valign=top>
 | |
| <B>labelFont</B><br>
 | |
| <B>labelText</B><br>
 | |
| </td>
 | |
| <td valign=top>
 | |
| <B>labelImage</B><br>
 | |
| <B>labelVariable</B><br>
 | |
| </td>
 | |
| </table>
 | |
| <P>
 | |
| See the <A HREF="labeledwidget.n.html"> "labeledwidget" </A> widget manual entry for details on the above
 | |
| inherited options.
 | |
| </pre><H2>WIDGET-SPECIFIC OPTIONS</H2>
 | |
| <P>
 | |
| <pre>
 | |
| Name:                   <B>arrowOrient</B>
 | |
| Class:                  <B>Orient</B>
 | |
| Command-Line Switch:	<B>-arroworient</B>
 | |
| </pre>
 | |
| <UL>
 | |
| Specifies placement of arrow buttons: <B>horizontal</B> or <B>vertical</B>.
 | |
| The default is vertical.
 | |
| </UL>
 | |
| <P>
 | |
| <pre>
 | |
| Name:                   <B>decrement</B>
 | |
| Class:                  <B>Command</B>
 | |
| Command-Line Switch:	<B>-decrement</B>
 | |
| </pre>
 | |
| <UL>
 | |
| Tcl command to be executed when down arrow is pressed.
 | |
| </UL>
 | |
| <P>
 | |
| <pre>
 | |
| Name:                   <B>increment</B>
 | |
| Class:                  <B>Command</B>
 | |
| Command-Line Switch:	<B>-increment</B>
 | |
| </pre>
 | |
| <UL>
 | |
| Tcl command to be executed when up arrow is pressed.
 | |
| </UL>
 | |
| <P>
 | |
| <pre>
 | |
| Name:                   <B>repeatDelay</B>
 | |
| Class:                  <B>RepeatDelay</B>
 | |
| Command-Line Switch:	<B>-repeatdelay</B>
 | |
| </pre>
 | |
| <UL>
 | |
| Specifies the initial delay in milliseconds before the spinner repeat action 
 | |
| on the arrow buttons engages.  The default is 300 milliseconds.
 | |
| </UL>
 | |
| <P>
 | |
| <pre>
 | |
| Name:                   <B>repeatInterval</B>
 | |
| Class:                  <B>RepeatInterval</B>
 | |
| Command-Line Switch:	<B>-repeatinterval</B>
 | |
| </pre>
 | |
| <UL>
 | |
| Specifies the repeat delay in milliseconds between selections of the arrow 
 | |
| buttons.  A repeatinterval of 0 disables button repeat.  The default is 
 | |
| 100 milliseconds.
 | |
| </UL>
 | |
| <P>
 | |
| </pre><HR>
 | |
| 
 | |
| </pre><H2>DESCRIPTION</H2>
 | |
| <P>
 | |
| The <B>spinner</B> command creates a spinner widget.  The spinner is 
 | |
| comprised of an entryfield plus up and down arrow buttons. 
 | |
| Arrows may be drawn horizontally or vertically.
 | |
| </pre>
 | |
| 
 | |
| </pre><H2>METHODS</H2>
 | |
| <P>
 | |
| The <B>spinner</B> command creates a new Tcl command whose
 | |
| name is <I>pathName</I>.  This
 | |
| command may be used to invoke various
 | |
| operations on the widget.  It has the following general form:
 | |
| <pre>
 | |
| <I>pathName option </I>?<I>arg arg ...</I>?
 | |
| </pre>
 | |
| <I>Option</I> and the <I>arg</I>s
 | |
| determine the exact behavior of the command.  The following
 | |
| commands are possible for spinner widgets:
 | |
| </pre><H2>ASSOCIATED METHODS</H2>
 | |
| <P>
 | |
| <table cellpadding=5>
 | |
| <td valign=top>
 | |
| <B>delete</B><br>
 | |
| <B>insert</B><br>
 | |
| </td>
 | |
| <td valign=top>
 | |
| <B>get</B><br>
 | |
| <B>scan</B><br>
 | |
| </td>
 | |
| <td valign=top>
 | |
| <B>icursor</B><br>
 | |
| <B>selection</B><br>
 | |
| </td>
 | |
| <td valign=top>
 | |
| <B>index</B><br>
 | |
| <B>xview</B><br>
 | |
| </td>
 | |
| </table>
 | |
| <P>
 | |
| See the <A HREF="http://www.sco.com/Technology/tcl/man/tk_man/entry.n.html"> "entry" </A> manual entry for details on the associated methods.
 | |
| </pre><H2>INHERITED METHODS</H2>
 | |
| <P>
 | |
| <table cellpadding=5>
 | |
| <td valign=top>
 | |
| <B>childsite</B><br>
 | |
| </td>
 | |
| <td valign=top>
 | |
| <B>clear</B><br>
 | |
| </td>
 | |
| <td valign=top>
 | |
| <B>peek</B><br>
 | |
| </td>
 | |
| <td valign=top>
 | |
| </td>
 | |
| </table>
 | |
| <P>
 | |
| See the <A HREF="entryfield.n.html"> "entryfield" </A> manual entry for details on the associated methods.
 | |
| </pre><H2>WIDGET-SPECIFIC METHODS</H2>
 | |
| <DL>
 | |
| <DT> <I>pathName <B>cget</B> <I>option</I>
 | |
| </I></B>
 | |
| <DD> Returns the current value of the configuration option given
 | |
| by <I>option</I>.
 | |
| <I>Option</I> may have any of the values accepted by the <B>spinner</B>
 | |
| command.
 | |
| </DL>
 | |
| <DL>
 | |
| <DT> <I>pathName</I> <B>configure</B> ?<I>option</I>? ?<I>value option value ...</I>?
 | |
| </I></B>
 | |
| <DD> Query or modify the configuration options of the widget.
 | |
| If no <I>option</I> is specified, returns a list describing all of
 | |
| the available options for <I>pathName</I> (see <B>Tk_ConfigureInfo</B> for
 | |
| information on the format of this list).  If <I>option</I> is specified
 | |
| with no <I>value</I>, then the command returns a list describing the
 | |
| one named option (this list will be identical to the corresponding
 | |
| sublist of the value returned if no <I>option</I> is specified).  If
 | |
| one or more <I>option-value</I> pairs are specified, then the command
 | |
| modifies the given widget option(s) to have the given value(s);  in
 | |
| this case the command returns an empty string.
 | |
| <I>Option</I> may have any of the values accepted by the <B>spinner</B>
 | |
| command.
 | |
| </DL>
 | |
| <DL>
 | |
| <DT> <I>pathName <B>down</B>
 | |
| </I></B>
 | |
| <DD> Derived classes may overload this method to specialize functionality.
 | |
| </DL>
 | |
| <DL>
 | |
| <DT> <I>pathName <B>up</B>
 | |
| </I></B>
 | |
| <DD> Derived classes may overload this method to specialize functionality.
 | |
| 
 | |
| </DL>
 | |
| </pre><H2>COMPONENTS</H2>
 | |
| <P>
 | |
| <pre>
 | |
| Name:                   <B>downarrow</B>
 | |
| Class:                  <B>Canvas</B>
 | |
| </pre>
 | |
| <UL>
 | |
| The downarrow component is the downward pointing button of the spinner.  See
 | |
| the "canvas" widget manual entry for details on the downarrow component item.
 | |
| </UL>
 | |
| <P>
 | |
| <pre>
 | |
| Name:                   <B>uparrow</B>
 | |
| Class:                  <B>Canvas</B>
 | |
| </pre>
 | |
| <UL>
 | |
| The uparrow component is the upward pointing button of the spinner.  See
 | |
| the "canvas" widget manual entry for details on the uparrow component item.
 | |
| </UL>
 | |
| </table>
 | |
| 
 | |
| </pre><H2>EXAMPLE</H2>
 | |
| <pre>
 | |
|  set months {January February March April May June July \\
 | |
|                  August September October November December}
 | |
| 
 | |
|  proc blockInput {char} {
 | |
|      return 0
 | |
|  }
 | |
| 
 | |
|  proc spinMonth {step} {
 | |
|      global months
 | |
| 
 | |
|      set index [expr [lsearch $months [.sm get]] + $step]
 | |
| 
 | |
|      if {$index < 0} {set index 11}
 | |
|      if {$index > 11} {set index 0}
 | |
| 
 | |
|      .sm delete 0 end
 | |
|      .sm insert 0 [lindex $months $index]
 | |
|  }
 | |
| 
 | |
|  spinner .sm -labeltext "Month : " -width 10 -fixed 10 -validate blockInput \\
 | |
|              -decrement {spinMonth -1} -increment {spinMonth 1}
 | |
|  .sm insert 0 January
 | |
| 
 | |
|  pack .sm -padx 10 -pady 10
 | |
| </pre>
 | |
| </pre><H2>ACKNOWLEDGEMENTS:</H2>
 | |
| <P>
 | |
| Ken Copeland <ken@hilco.com>
 | |
| <UL>
 | |
| 10/18/95 - Added auto-repeat action to spinner arrow buttons.
 | |
| </UL>
 | |
| <P>
 | |
| </pre><H2>AUTHOR</H2>
 | |
| Sue Yockey
 | |
| </pre><H2>KEYWORDS</H2>
 | |
| spinner, widget
 |