<TITLE>pushbutton - Create and manipulate a push button widget</TITLE>
<H1>pushbutton - Create and manipulate a push button widget</H1>

</pre><H2>SYNOPSIS</H2>
<B>pushbutton<I> <I>pathName </I>?<I>options</I>?
</pre><H2>INHERITANCE</H2>
itk::Widget &lt;- pushbutton
</pre><H2>STANDARD OPTIONS</H2>
<P>
<table cellpadding=5>
<td valign=top>
<B>activeBackground</B><br>
<B>borderWidth</B><br>
<B>font</B><br>
<B>highlightThickness</B><br>
<B>state</B><br>
</td>
<td valign=top>
<B>activeForeground</B><br>
<B>command</B><br>
<B>foreground</B><br>
<B>image</B><br>
<B>text</B><br>
</td>
<td valign=top>
<B>background</B><br>
<B>cursor</B><br>
<B>highlightBackground</B><br>
<B>padX</B><br>
<B>underline</B><br>
</td>
<td valign=top>
<B>bitmap</B><br>
<B>disabledForeground</B><br>
<B>highlightColor</B><br>
<B>padY</B><br>
<B>wrapLength</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>WIDGET-SPECIFIC OPTIONS</H2>
<P>
<pre>
Name:                   <B>defaultRing</B>
Class:                  <B>DefaultRing</B>
Command-Line Switch:	<B>-defaultring</B>
</pre>
<UL>
Boolean describing whether the button displays its default ring given in 
any of the forms acceptable to <B>Tcl_GetBoolean</B>.  The default is false.
</UL>
<P>
<pre>
Name:                   <B>defaultRingPad</B>
Class:                  <B>Pad</B>
Command-Line Switch:	<B>-defaultringpad</B>
</pre>
<UL>
Specifies the amount of space to be allocated to the indentation of the
default ring ring given in any of the forms acceptable to <B>Tcl_GetPixels</B>.
The option has no effect if the defaultring option is set to false.  The 
default is 2 pixels.
</UL>
<P>
<pre>
Name:                   <B>height</B>
Class:                  <B>Height</B>
Command-Line Switch:	<B>-height</B>
</pre>
<UL>
Specifies the height of the button inclusive of any default ring given in
any of the forms acceptable to <B>Tk_GetPixels</B>.  A value of zero lets 
the push button determine the height based on the requested height plus 
highlightring and defaultringpad.
</UL>
<P>
<pre>
Name:                   <B>width</B>
Class:                  <B>Width</B>
Command-Line Switch:	<B>-width</B>
</pre>
<UL>
Specifies the width of the button inclusive of any default ring given in
any of the forms acceptable to <B>Tk_GetPixels</B>.  A value of zero lets 
the push button determine the width based on the requested width plus 
highlightring and defaultringpad.
</UL>
<P>
</pre><HR>

</pre><H2>DESCRIPTION</H2>
<P>
The <B>pushbutton</B> command creates a push button with an 
optional default ring used for default designation and traversal.

</pre><H2>METHODS</H2>
<P>
The <B>pushbutton</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 pushbutton widgets:
</pre><H2>ASSOCIATED METHODS</H2>
<P>
<table cellpadding=5>
<td valign=top>
<B>flash</B><br>
</td>
<td valign=top>
<B>invoke</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/button.n.html"> "button" </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>pushbutton</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>pushbutton</B>
command.

</DL>
</pre><H2>COMPONENTS</H2>
<P>
<pre>
Name:                   <B>pushbutton</B>
Class:                  <B>Button</B>
</pre>
<UL>
The pushbutton component is the button surrounded by the optional default ring.
See the <A HREF="http://www.sco.com/Technology/tcl/man/tk_man/button.n.html"> "button" </A> widget manual entry for details on the pushbutton
component item.
</UL>
</table>

</pre><H2>EXAMPLE</H2>
<pre>
pushbutton .pb -text "Hello" -command {puts "Hello World"} -defaultring 1
pack .pb -padx 10 -pady 10
</pre>
</pre><H2>AUTHOR</H2>
Bret A. Schuhmacher
<P>
Mark L. Ulferts
</pre><H2>KEYWORDS</H2>
pushbutton, widget
