Initial commit of OpenSPARC T2 architecture model.
[OpenSPARC-T2-SAM] / sam-t2 / devtools / v9 / man / mann / checkbutton.n
CommitLineData
920dae64
AT
1'\"
2'\" Copyright (c) 1990-1994 The Regents of the University of California.
3'\" Copyright (c) 1994-1996 Sun Microsystems, Inc.
4'\"
5'\" See the file "license.terms" for information on usage and redistribution
6'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
7'\"
8'\" RCS: @(#) $Id: checkbutton.n,v 1.6.2.1 2004/10/28 10:19:29 dkf Exp $
9'\"
10'\" The definitions below are for supplemental macros used in Tcl/Tk
11'\" manual entries.
12'\"
13'\" .AP type name in/out ?indent?
14'\" Start paragraph describing an argument to a library procedure.
15'\" type is type of argument (int, etc.), in/out is either "in", "out",
16'\" or "in/out" to describe whether procedure reads or modifies arg,
17'\" and indent is equivalent to second arg of .IP (shouldn't ever be
18'\" needed; use .AS below instead)
19'\"
20'\" .AS ?type? ?name?
21'\" Give maximum sizes of arguments for setting tab stops. Type and
22'\" name are examples of largest possible arguments that will be passed
23'\" to .AP later. If args are omitted, default tab stops are used.
24'\"
25'\" .BS
26'\" Start box enclosure. From here until next .BE, everything will be
27'\" enclosed in one large box.
28'\"
29'\" .BE
30'\" End of box enclosure.
31'\"
32'\" .CS
33'\" Begin code excerpt.
34'\"
35'\" .CE
36'\" End code excerpt.
37'\"
38'\" .VS ?version? ?br?
39'\" Begin vertical sidebar, for use in marking newly-changed parts
40'\" of man pages. The first argument is ignored and used for recording
41'\" the version when the .VS was added, so that the sidebars can be
42'\" found and removed when they reach a certain age. If another argument
43'\" is present, then a line break is forced before starting the sidebar.
44'\"
45'\" .VE
46'\" End of vertical sidebar.
47'\"
48'\" .DS
49'\" Begin an indented unfilled display.
50'\"
51'\" .DE
52'\" End of indented unfilled display.
53'\"
54'\" .SO
55'\" Start of list of standard options for a Tk widget. The
56'\" options follow on successive lines, in four columns separated
57'\" by tabs.
58'\"
59'\" .SE
60'\" End of list of standard options for a Tk widget.
61'\"
62'\" .OP cmdName dbName dbClass
63'\" Start of description of a specific option. cmdName gives the
64'\" option's name as specified in the class command, dbName gives
65'\" the option's name in the option database, and dbClass gives
66'\" the option's class in the option database.
67'\"
68'\" .UL arg1 arg2
69'\" Print arg1 underlined, then print arg2 normally.
70'\"
71'\" RCS: @(#) $Id: man.macros,v 1.4 2000/08/25 06:18:32 ericm Exp $
72'\"
73'\" # Set up traps and other miscellaneous stuff for Tcl/Tk man pages.
74.if t .wh -1.3i ^B
75.nr ^l \n(.l
76.ad b
77'\" # Start an argument description
78.de AP
79.ie !"\\$4"" .TP \\$4
80.el \{\
81. ie !"\\$2"" .TP \\n()Cu
82. el .TP 15
83.\}
84.ta \\n()Au \\n()Bu
85.ie !"\\$3"" \{\
86\&\\$1 \\fI\\$2\\fP (\\$3)
87.\".b
88.\}
89.el \{\
90.br
91.ie !"\\$2"" \{\
92\&\\$1 \\fI\\$2\\fP
93.\}
94.el \{\
95\&\\fI\\$1\\fP
96.\}
97.\}
98..
99'\" # define tabbing values for .AP
100.de AS
101.nr )A 10n
102.if !"\\$1"" .nr )A \\w'\\$1'u+3n
103.nr )B \\n()Au+15n
104.\"
105.if !"\\$2"" .nr )B \\w'\\$2'u+\\n()Au+3n
106.nr )C \\n()Bu+\\w'(in/out)'u+2n
107..
108.AS Tcl_Interp Tcl_CreateInterp in/out
109'\" # BS - start boxed text
110'\" # ^y = starting y location
111'\" # ^b = 1
112.de BS
113.br
114.mk ^y
115.nr ^b 1u
116.if n .nf
117.if n .ti 0
118.if n \l'\\n(.lu\(ul'
119.if n .fi
120..
121'\" # BE - end boxed text (draw box now)
122.de BE
123.nf
124.ti 0
125.mk ^t
126.ie n \l'\\n(^lu\(ul'
127.el \{\
128.\" Draw four-sided box normally, but don't draw top of
129.\" box if the box started on an earlier page.
130.ie !\\n(^b-1 \{\
131\h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
132.\}
133.el \}\
134\h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
135.\}
136.\}
137.fi
138.br
139.nr ^b 0
140..
141'\" # VS - start vertical sidebar
142'\" # ^Y = starting y location
143'\" # ^v = 1 (for troff; for nroff this doesn't matter)
144.de VS
145.if !"\\$2"" .br
146.mk ^Y
147.ie n 'mc \s12\(br\s0
148.el .nr ^v 1u
149..
150'\" # VE - end of vertical sidebar
151.de VE
152.ie n 'mc
153.el \{\
154.ev 2
155.nf
156.ti 0
157.mk ^t
158\h'|\\n(^lu+3n'\L'|\\n(^Yu-1v\(bv'\v'\\n(^tu+1v-\\n(^Yu'\h'-|\\n(^lu+3n'
159.sp -1
160.fi
161.ev
162.\}
163.nr ^v 0
164..
165'\" # Special macro to handle page bottom: finish off current
166'\" # box/sidebar if in box/sidebar mode, then invoked standard
167'\" # page bottom macro.
168.de ^B
169.ev 2
170'ti 0
171'nf
172.mk ^t
173.if \\n(^b \{\
174.\" Draw three-sided box if this is the box's first page,
175.\" draw two sides but no top otherwise.
176.ie !\\n(^b-1 \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
177.el \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
178.\}
179.if \\n(^v \{\
180.nr ^x \\n(^tu+1v-\\n(^Yu
181\kx\h'-\\nxu'\h'|\\n(^lu+3n'\ky\L'-\\n(^xu'\v'\\n(^xu'\h'|0u'\c
182.\}
183.bp
184'fi
185.ev
186.if \\n(^b \{\
187.mk ^y
188.nr ^b 2
189.\}
190.if \\n(^v \{\
191.mk ^Y
192.\}
193..
194'\" # DS - begin display
195.de DS
196.RS
197.nf
198.sp
199..
200'\" # DE - end display
201.de DE
202.fi
203.RE
204.sp
205..
206'\" # SO - start of list of standard options
207.de SO
208.SH "STANDARD OPTIONS"
209.LP
210.nf
211.ta 5.5c 11c
212.ft B
213..
214'\" # SE - end of list of standard options
215.de SE
216.fi
217.ft R
218.LP
219See the \\fBoptions\\fR manual entry for details on the standard options.
220..
221'\" # OP - start of full description for a single option
222.de OP
223.LP
224.nf
225.ta 4c
226Command-Line Name: \\fB\\$1\\fR
227Database Name: \\fB\\$2\\fR
228Database Class: \\fB\\$3\\fR
229.fi
230.IP
231..
232'\" # CS - begin code excerpt
233.de CS
234.RS
235.nf
236.ta .25i .5i .75i 1i
237..
238'\" # CE - end code excerpt
239.de CE
240.fi
241.RE
242..
243.de UL
244\\$1\l'|0\(ul'\\$2
245..
246.TH checkbutton n 4.4 Tk "Tk Built-In Commands"
247.BS
248'\" Note: do not modify the .SH NAME line immediately below!
249.SH NAME
250checkbutton \- Create and manipulate checkbutton widgets
251.SH SYNOPSIS
252\fBcheckbutton\fI pathName \fR?\fIoptions\fR?
253.SO
254\-activebackground \-disabledforeground \-padx
255\-activeforeground \-font \-pady
256\-anchor \-foreground \-relief
257\-background \-highlightbackground \-takefocus
258\-bitmap \-highlightcolor \-text
259\-borderwidth \-highlightthickness \-textvariable
260\-compound \-image \-underline
261\-cursor \-justify \-wraplength
262.SE
263.SH "WIDGET-SPECIFIC OPTIONS"
264.OP \-command command Command
265Specifies a Tcl command to associate with the button. This command
266is typically invoked when mouse button 1 is released over the button
267window. The button's global variable (\fB\-variable\fR option) will
268be updated before the command is invoked.
269.OP \-height height Height
270Specifies a desired height for the button.
271If an image or bitmap is being displayed in the button then the value is in
272screen units (i.e. any of the forms acceptable to \fBTk_GetPixels\fR);
273for text it is in lines of text.
274If this option isn't specified, the button's desired height is computed
275from the size of the image or bitmap or text being displayed in it.
276.OP \-indicatoron indicatorOn IndicatorOn
277Specifies whether or not the indicator should be drawn. Must be a
278proper boolean value. If false, the \fBrelief\fR option is
279ignored and the widget's relief is always sunken if the widget is
280selected and raised otherwise.
281.VS 8.4
282.OP \-offrelief offRelief OffRelief
283Specifies the relief for the checkbutton when the indicator is not drawn and
284the checkbutton is off. The default value is "raised". By setting this option
285to "flat" and setting -indicatoron to false and -overrelief to raised,
286the effect is achieved
287of having a flat button that raises on mouse-over and which is
288depressed when activated. This is the behavior typically exhibited by
289the Bold, Italic, and Underline checkbuttons on the toolbar of a
290word-processor, for example.
291.VE 8.4
292.OP \-offvalue offValue Value
293Specifies value to store in the button's associated variable whenever
294this button is deselected. Defaults to ``0''.
295.OP \-onvalue onValue Value
296Specifies value to store in the button's associated variable whenever
297this button is selected. Defaults to ``1''.
298.VS 8.4
299.OP \-overrelief overRelief OverRelief
300Specifies an alternative relief for the checkbutton, to be used when the
301mouse cursor is over the widget. This option can be used to make
302toolbar buttons, by configuring \fB\-relief flat \-overrelief
303raised\fR. If the value of this option is the empty string, then no
304alternative relief is used when the mouse cursor is over the checkbutton.
305The empty string is the default value.
306.VE 8.4
307.OP \-selectcolor selectColor Background
308Specifies a background color to use when the button is selected.
309If \fBindicatorOn\fR is true then the color applies to the indicator.
310Under Windows, this color is used as the background for the indicator
311regardless of the select state.
312If \fBindicatorOn\fR is false, this color is used as the background
313for the entire widget, in place of \fBbackground\fR or \fBactiveBackground\fR,
314whenever the widget is selected.
315If specified as an empty string then no special color is used for
316displaying when the widget is selected.
317.OP \-selectimage selectImage SelectImage
318Specifies an image to display (in place of the \fBimage\fR option)
319when the checkbutton is selected.
320This option is ignored unless the \fBimage\fR option has been
321specified.
322.OP \-state state State
323Specifies one of three states for the checkbutton: \fBnormal\fR, \fBactive\fR,
324or \fBdisabled\fR. In normal state the checkbutton is displayed using the
325\fBforeground\fR and \fBbackground\fR options. The active state is
326typically used when the pointer is over the checkbutton. In active state
327the checkbutton is displayed using the \fBactiveForeground\fR and
328\fBactiveBackground\fR options. Disabled state means that the checkbutton
329should be insensitive: the default bindings will refuse to activate
330the widget and will ignore mouse button presses.
331In this state the \fBdisabledForeground\fR and
332\fBbackground\fR options determine how the checkbutton is displayed.
333.OP \-variable variable Variable
334Specifies name of global variable to set to indicate whether
335or not this button is selected. Defaults to the name of the
336button within its parent (i.e. the last element of the button
337window's path name).
338.OP \-width width Width
339Specifies a desired width for the button.
340If an image or bitmap is being displayed in the button then the value is in
341screen units (i.e. any of the forms acceptable to \fBTk_GetPixels\fR);
342for text it is in characters.
343If this option isn't specified, the button's desired width is computed
344from the size of the image or bitmap or text being displayed in it.
345.BE
346
347.SH DESCRIPTION
348.PP
349The \fBcheckbutton\fR command creates a new window (given by the
350\fIpathName\fR argument) and makes it into a checkbutton widget.
351Additional
352options, described above, may be specified on the command line
353or in the option database
354to configure aspects of the checkbutton such as its colors, font,
355text, and initial relief. The \fBcheckbutton\fR command returns its
356\fIpathName\fR argument. At the time this command is invoked,
357there must not exist a window named \fIpathName\fR, but
358\fIpathName\fR's parent must exist.
359.PP
360A checkbutton is a widget
361that displays a textual string, bitmap or image
362and a square called an \fIindicator\fR.
363If text is displayed, it must all be in a single font, but it
364can occupy multiple lines on the screen (if it contains newlines
365or if wrapping occurs because of the \fBwrapLength\fR option) and
366one of the characters may optionally be underlined using the
367\fBunderline\fR option.
368A checkbutton has
369all of the behavior of a simple button, including the
370following: it can display itself in either of three different
371ways, according to the \fBstate\fR option;
372it can be made to appear
373raised, sunken, or flat; it can be made to flash; and it invokes
374a Tcl command whenever mouse button 1 is clicked over the
375checkbutton.
376.PP
377In addition, checkbuttons can be \fIselected\fR.
378If a checkbutton is selected then the indicator is normally
379.VS
380drawn with a selected appearance, and
381a Tcl variable associated with the checkbutton is set to a particular
382value (normally 1).
383Under Unix, the indicator is drawn with a sunken relief and a special
384color. Under Windows, the indicator is drawn with a check mark inside.
385If the checkbutton is not selected, then the indicator is drawn with a
386deselected appearance, and the associated variable is
387set to a different value (typically 0).
388Under Unix, the indicator is drawn with a raised relief and no special
389color. Under Windows, the indicator is drawn without a check mark inside.
390.VE
391By default, the name of the variable associated with a checkbutton is the
392same as the \fIname\fR used to create the checkbutton.
393The variable name, and the ``on'' and ``off'' values stored in it,
394may be modified with options on the command line or in the option
395database.
396Configuration options may also be used to modify the way the
397indicator is displayed (or whether it is displayed at all).
398By default a checkbutton is configured to select and deselect
399itself on alternate button clicks.
400In addition, each checkbutton monitors its associated variable and
401automatically selects and deselects itself when the variables value
402changes to and from the button's ``on'' value.
403.SH "WIDGET COMMAND"
404.PP
405The \fBcheckbutton\fR command creates a new Tcl command whose
406name is \fIpathName\fR. This
407command may be used to invoke various
408operations on the widget. It has the following general form:
409.CS
410\fIpathName option \fR?\fIarg arg ...\fR?
411.CE
412\fIOption\fR and the \fIarg\fRs
413determine the exact behavior of the command. The following
414commands are possible for checkbutton widgets:
415.TP
416\fIpathName \fBcget\fR \fIoption\fR
417Returns the current value of the configuration option given
418by \fIoption\fR.
419\fIOption\fR may have any of the values accepted by the \fBcheckbutton\fR
420command.
421.TP
422\fIpathName \fBconfigure\fR ?\fIoption\fR? ?\fIvalue option value ...\fR?
423Query or modify the configuration options of the widget.
424If no \fIoption\fR is specified, returns a list describing all of
425the available options for \fIpathName\fR (see \fBTk_ConfigureInfo\fR for
426information on the format of this list). If \fIoption\fR is specified
427with no \fIvalue\fR, then the command returns a list describing the
428one named option (this list will be identical to the corresponding
429sublist of the value returned if no \fIoption\fR is specified). If
430one or more \fIoption\-value\fR pairs are specified, then the command
431modifies the given widget option(s) to have the given value(s); in
432this case the command returns an empty string.
433\fIOption\fR may have any of the values accepted by the \fBcheckbutton\fR
434command.
435.TP
436\fIpathName \fBdeselect\fR
437Deselects the checkbutton and sets the associated variable to its ``off''
438value.
439.TP
440\fIpathName \fBflash\fR
441Flashes the checkbutton. This is accomplished by redisplaying the checkbutton
442several times, alternating between active and normal colors. At
443the end of the flash the checkbutton is left in the same normal/active
444state as when the command was invoked.
445This command is ignored if the checkbutton's state is \fBdisabled\fR.
446.TP
447\fIpathName \fBinvoke\fR
448Does just what would have happened if the user invoked the checkbutton
449with the mouse: toggle the selection state of the button and invoke
450the Tcl command associated with the checkbutton, if there is one.
451The return value is the return value from the Tcl command, or an
452empty string if there is no command associated with the checkbutton.
453This command is ignored if the checkbutton's state is \fBdisabled\fR.
454.TP
455\fIpathName \fBselect\fR
456Selects the checkbutton and sets the associated variable to its ``on''
457value.
458.TP
459\fIpathName \fBtoggle\fR
460Toggles the selection state of the button, redisplaying it and
461modifying its associated variable to reflect the new state.
462.SH BINDINGS
463.PP
464Tk automatically creates class bindings for checkbuttons that give them
465the following default behavior:
466.VS
467.IP [1]
468On Unix systems, a checkbutton activates whenever the mouse passes
469over it and deactivates whenever the mouse leaves the checkbutton. On
470Mac and Windows systems, when mouse button 1 is pressed over a
471checkbutton, the button activates whenever the mouse pointer is inside
472the button, and deactivates whenever the mouse pointer leaves the
473button.
474.VE
475.IP [2]
476When mouse button 1 is pressed over a checkbutton, it is invoked (its
477selection state toggles and the command associated with the button is
478invoked, if there is one).
479.VS
480.IP [3]
481When a checkbutton has the input focus, the space key causes the checkbutton
482to be invoked. Under Windows, there are additional key bindings; plus
483(+) and equal (=) select the button, and minus (-) deselects the button.
484.VE
485.PP
486If the checkbutton's state is \fBdisabled\fR then none of the above
487actions occur: the checkbutton is completely non-responsive.
488.PP
489The behavior of checkbuttons can be changed by defining new bindings for
490individual widgets or by redefining the class bindings.
491
492.SH "SEE ALSO"
493button(n), options(n), radiobutton(n)
494
495.SH KEYWORDS
496checkbutton, widget