Pratt 1.5.6
Sign up to get free protection for your applications and to get access to all the features.
- data/.exrc +61 -0
- data/.gitignore +4 -0
- data/History.txt +6 -0
- data/Manifest.txt +46 -0
- data/Pratt.gemspec +351 -0
- data/README.txt +66 -0
- data/Rakefile +85 -0
- data/TODO +54 -0
- data/VERSION +1 -0
- data/bin/pratt.rb +13 -0
- data/config.rb +34 -0
- data/lib/pratt.rb +527 -0
- data/lib/pratt/array.rb +11 -0
- data/lib/pratt/string.rb +18 -0
- data/models/app.rb +40 -0
- data/models/customer.rb +24 -0
- data/models/payment.rb +22 -0
- data/models/pratt.rb +19 -0
- data/models/project.rb +82 -0
- data/models/whence.rb +70 -0
- data/pkgs/tile-0.8.2.tar.gz +0 -0
- data/pkgs/tile-0.8.2/ANNOUNCE.txt +95 -0
- data/pkgs/tile-0.8.2/ChangeLog +4651 -0
- data/pkgs/tile-0.8.2/Makefile +250 -0
- data/pkgs/tile-0.8.2/Makefile.in +250 -0
- data/pkgs/tile-0.8.2/README.txt +86 -0
- data/pkgs/tile-0.8.2/aclocal.m4 +2 -0
- data/pkgs/tile-0.8.2/altTheme.o +0 -0
- data/pkgs/tile-0.8.2/blink.o +0 -0
- data/pkgs/tile-0.8.2/button.o +0 -0
- data/pkgs/tile-0.8.2/cache.o +0 -0
- data/pkgs/tile-0.8.2/clamTheme.o +0 -0
- data/pkgs/tile-0.8.2/classicTheme.o +0 -0
- data/pkgs/tile-0.8.2/config.log +1330 -0
- data/pkgs/tile-0.8.2/config.status +795 -0
- data/pkgs/tile-0.8.2/configure +15248 -0
- data/pkgs/tile-0.8.2/configure.in +89 -0
- data/pkgs/tile-0.8.2/demos/autocomplete.tcl +59 -0
- data/pkgs/tile-0.8.2/demos/demo.tcl +870 -0
- data/pkgs/tile-0.8.2/demos/dirbrowser.tcl +167 -0
- data/pkgs/tile-0.8.2/demos/dlgtest.tcl +97 -0
- data/pkgs/tile-0.8.2/demos/iconlib.tcl +110 -0
- data/pkgs/tile-0.8.2/demos/repeater.tcl +117 -0
- data/pkgs/tile-0.8.2/demos/toolbutton.tcl +101 -0
- data/pkgs/tile-0.8.2/doc/Geometry.3 +230 -0
- data/pkgs/tile-0.8.2/doc/INDEX.MAP +153 -0
- data/pkgs/tile-0.8.2/doc/Makefile +36 -0
- data/pkgs/tile-0.8.2/doc/TILE.XML +45 -0
- data/pkgs/tile-0.8.2/doc/Theme.3 +34 -0
- data/pkgs/tile-0.8.2/doc/button.n +75 -0
- data/pkgs/tile-0.8.2/doc/checkbutton.n +61 -0
- data/pkgs/tile-0.8.2/doc/combobox.n +98 -0
- data/pkgs/tile-0.8.2/doc/converting.txt +97 -0
- data/pkgs/tile-0.8.2/doc/dialog.n +122 -0
- data/pkgs/tile-0.8.2/doc/entry.n +438 -0
- data/pkgs/tile-0.8.2/doc/frame.n +43 -0
- data/pkgs/tile-0.8.2/doc/html/Geometry.html +304 -0
- data/pkgs/tile-0.8.2/doc/html/Theme.html +48 -0
- data/pkgs/tile-0.8.2/doc/html/button.html +120 -0
- data/pkgs/tile-0.8.2/doc/html/category-index.html +18 -0
- data/pkgs/tile-0.8.2/doc/html/checkbutton.html +94 -0
- data/pkgs/tile-0.8.2/doc/html/combobox.html +164 -0
- data/pkgs/tile-0.8.2/doc/html/converting.txt +97 -0
- data/pkgs/tile-0.8.2/doc/html/dialog.html +159 -0
- data/pkgs/tile-0.8.2/doc/html/entry.html +613 -0
- data/pkgs/tile-0.8.2/doc/html/frame.html +76 -0
- data/pkgs/tile-0.8.2/doc/html/image.html +100 -0
- data/pkgs/tile-0.8.2/doc/html/index.html +25 -0
- data/pkgs/tile-0.8.2/doc/html/keyword-index.html +228 -0
- data/pkgs/tile-0.8.2/doc/html/label.html +133 -0
- data/pkgs/tile-0.8.2/doc/html/labelframe.html +91 -0
- data/pkgs/tile-0.8.2/doc/html/manpage.css +212 -0
- data/pkgs/tile-0.8.2/doc/html/menubutton.html +63 -0
- data/pkgs/tile-0.8.2/doc/html/notebook.html +280 -0
- data/pkgs/tile-0.8.2/doc/html/paned.html +149 -0
- data/pkgs/tile-0.8.2/doc/html/progressbar.html +138 -0
- data/pkgs/tile-0.8.2/doc/html/radiobutton.html +89 -0
- data/pkgs/tile-0.8.2/doc/html/scrollbar.html +221 -0
- data/pkgs/tile-0.8.2/doc/html/separator.html +48 -0
- data/pkgs/tile-0.8.2/doc/html/sizegrip.html +62 -0
- data/pkgs/tile-0.8.2/doc/html/style.html +172 -0
- data/pkgs/tile-0.8.2/doc/html/tile-intro.html +164 -0
- data/pkgs/tile-0.8.2/doc/html/treeview.html +634 -0
- data/pkgs/tile-0.8.2/doc/html/widget.html +342 -0
- data/pkgs/tile-0.8.2/doc/image.n +81 -0
- data/pkgs/tile-0.8.2/doc/internals.txt +409 -0
- data/pkgs/tile-0.8.2/doc/label.n +75 -0
- data/pkgs/tile-0.8.2/doc/labelframe.n +64 -0
- data/pkgs/tile-0.8.2/doc/man.macros +239 -0
- data/pkgs/tile-0.8.2/doc/menubutton.n +41 -0
- data/pkgs/tile-0.8.2/doc/notebook.n +188 -0
- data/pkgs/tile-0.8.2/doc/paned.n +95 -0
- data/pkgs/tile-0.8.2/doc/progressbar.n +79 -0
- data/pkgs/tile-0.8.2/doc/radiobutton.n +57 -0
- data/pkgs/tile-0.8.2/doc/scrollbar.n +160 -0
- data/pkgs/tile-0.8.2/doc/separator.n +30 -0
- data/pkgs/tile-0.8.2/doc/sizegrip.n +53 -0
- data/pkgs/tile-0.8.2/doc/style.n +119 -0
- data/pkgs/tile-0.8.2/doc/tile-intro.n +165 -0
- data/pkgs/tile-0.8.2/doc/tmml.options +4 -0
- data/pkgs/tile-0.8.2/doc/treeview.n +415 -0
- data/pkgs/tile-0.8.2/doc/widget.n +227 -0
- data/pkgs/tile-0.8.2/doc/xml/Geometry.tmml +379 -0
- data/pkgs/tile-0.8.2/doc/xml/INDEX.MAP +153 -0
- data/pkgs/tile-0.8.2/doc/xml/Theme.tmml +63 -0
- data/pkgs/tile-0.8.2/doc/xml/button.tmml +134 -0
- data/pkgs/tile-0.8.2/doc/xml/checkbutton.tmml +119 -0
- data/pkgs/tile-0.8.2/doc/xml/combobox.tmml +184 -0
- data/pkgs/tile-0.8.2/doc/xml/dialog.tmml +195 -0
- data/pkgs/tile-0.8.2/doc/xml/entry.tmml +630 -0
- data/pkgs/tile-0.8.2/doc/xml/frame.tmml +98 -0
- data/pkgs/tile-0.8.2/doc/xml/image.tmml +101 -0
- data/pkgs/tile-0.8.2/doc/xml/label.tmml +154 -0
- data/pkgs/tile-0.8.2/doc/xml/labelframe.tmml +116 -0
- data/pkgs/tile-0.8.2/doc/xml/menubutton.tmml +80 -0
- data/pkgs/tile-0.8.2/doc/xml/notebook.tmml +306 -0
- data/pkgs/tile-0.8.2/doc/xml/paned.tmml +154 -0
- data/pkgs/tile-0.8.2/doc/xml/progressbar.tmml +151 -0
- data/pkgs/tile-0.8.2/doc/xml/radiobutton.tmml +109 -0
- data/pkgs/tile-0.8.2/doc/xml/scrollbar.tmml +233 -0
- data/pkgs/tile-0.8.2/doc/xml/separator.tmml +59 -0
- data/pkgs/tile-0.8.2/doc/xml/sizegrip.tmml +82 -0
- data/pkgs/tile-0.8.2/doc/xml/style.tmml +171 -0
- data/pkgs/tile-0.8.2/doc/xml/tile-intro.tmml +192 -0
- data/pkgs/tile-0.8.2/doc/xml/treeview.tmml +604 -0
- data/pkgs/tile-0.8.2/doc/xml/widget.tmml +372 -0
- data/pkgs/tile-0.8.2/entry.o +0 -0
- data/pkgs/tile-0.8.2/frame.o +0 -0
- data/pkgs/tile-0.8.2/generic/Makefile.in +221 -0
- data/pkgs/tile-0.8.2/generic/TODO +493 -0
- data/pkgs/tile-0.8.2/generic/altTheme.c +1172 -0
- data/pkgs/tile-0.8.2/generic/blink.c +168 -0
- data/pkgs/tile-0.8.2/generic/button.c +858 -0
- data/pkgs/tile-0.8.2/generic/cache.c +354 -0
- data/pkgs/tile-0.8.2/generic/clamTheme.c +974 -0
- data/pkgs/tile-0.8.2/generic/classicTheme.c +518 -0
- data/pkgs/tile-0.8.2/generic/configure +10334 -0
- data/pkgs/tile-0.8.2/generic/configure.in +100 -0
- data/pkgs/tile-0.8.2/generic/entry.c +1922 -0
- data/pkgs/tile-0.8.2/generic/frame.c +648 -0
- data/pkgs/tile-0.8.2/generic/gunk.h +44 -0
- data/pkgs/tile-0.8.2/generic/image.c +416 -0
- data/pkgs/tile-0.8.2/generic/label.c +663 -0
- data/pkgs/tile-0.8.2/generic/layout.c +1215 -0
- data/pkgs/tile-0.8.2/generic/manager.c +554 -0
- data/pkgs/tile-0.8.2/generic/manager.h +91 -0
- data/pkgs/tile-0.8.2/generic/notebook.c +1380 -0
- data/pkgs/tile-0.8.2/generic/paned.c +958 -0
- data/pkgs/tile-0.8.2/generic/pkgIndex.tcl.in +7 -0
- data/pkgs/tile-0.8.2/generic/progress.c +549 -0
- data/pkgs/tile-0.8.2/generic/scale.c +526 -0
- data/pkgs/tile-0.8.2/generic/scroll.c +253 -0
- data/pkgs/tile-0.8.2/generic/scrollbar.c +346 -0
- data/pkgs/tile-0.8.2/generic/separator.c +132 -0
- data/pkgs/tile-0.8.2/generic/square.c +306 -0
- data/pkgs/tile-0.8.2/generic/tagset.c +147 -0
- data/pkgs/tile-0.8.2/generic/tile.c +296 -0
- data/pkgs/tile-0.8.2/generic/tkElements.c +1280 -0
- data/pkgs/tile-0.8.2/generic/tkTheme.c +1708 -0
- data/pkgs/tile-0.8.2/generic/tkTheme.h +419 -0
- data/pkgs/tile-0.8.2/generic/tkThemeInt.h +45 -0
- data/pkgs/tile-0.8.2/generic/tkstate.c +268 -0
- data/pkgs/tile-0.8.2/generic/trace.c +145 -0
- data/pkgs/tile-0.8.2/generic/track.c +174 -0
- data/pkgs/tile-0.8.2/generic/treeview.c +3211 -0
- data/pkgs/tile-0.8.2/generic/ttk.decls +154 -0
- data/pkgs/tile-0.8.2/generic/ttkDecls.h +340 -0
- data/pkgs/tile-0.8.2/generic/ttkStubInit.c +61 -0
- data/pkgs/tile-0.8.2/generic/ttkStubLib.c +70 -0
- data/pkgs/tile-0.8.2/generic/widget.c +785 -0
- data/pkgs/tile-0.8.2/generic/widget.h +263 -0
- data/pkgs/tile-0.8.2/image.o +0 -0
- data/pkgs/tile-0.8.2/label.o +0 -0
- data/pkgs/tile-0.8.2/layout.o +0 -0
- data/pkgs/tile-0.8.2/library/altTheme.tcl +101 -0
- data/pkgs/tile-0.8.2/library/aquaTheme.tcl +62 -0
- data/pkgs/tile-0.8.2/library/button.tcl +85 -0
- data/pkgs/tile-0.8.2/library/clamTheme.tcl +139 -0
- data/pkgs/tile-0.8.2/library/classicTheme.tcl +108 -0
- data/pkgs/tile-0.8.2/library/combobox.tcl +439 -0
- data/pkgs/tile-0.8.2/library/cursors.tcl +36 -0
- data/pkgs/tile-0.8.2/library/defaults.tcl +118 -0
- data/pkgs/tile-0.8.2/library/dialog.tcl +274 -0
- data/pkgs/tile-0.8.2/library/entry.tcl +580 -0
- data/pkgs/tile-0.8.2/library/fonts.tcl +153 -0
- data/pkgs/tile-0.8.2/library/icons.tcl +105 -0
- data/pkgs/tile-0.8.2/library/keynav.tcl +192 -0
- data/pkgs/tile-0.8.2/library/menubutton.tcl +171 -0
- data/pkgs/tile-0.8.2/library/notebook.tcl +193 -0
- data/pkgs/tile-0.8.2/library/paned.tcl +87 -0
- data/pkgs/tile-0.8.2/library/progress.tcl +51 -0
- data/pkgs/tile-0.8.2/library/scale.tcl +54 -0
- data/pkgs/tile-0.8.2/library/scrollbar.tcl +125 -0
- data/pkgs/tile-0.8.2/library/sizegrip.tcl +77 -0
- data/pkgs/tile-0.8.2/library/tile.tcl +211 -0
- data/pkgs/tile-0.8.2/library/treeview.tcl +382 -0
- data/pkgs/tile-0.8.2/library/utils.tcl +254 -0
- data/pkgs/tile-0.8.2/library/winTheme.tcl +77 -0
- data/pkgs/tile-0.8.2/library/xpTheme.tcl +63 -0
- data/pkgs/tile-0.8.2/libtile0.8.2.so +0 -0
- data/pkgs/tile-0.8.2/libttkstub.a +0 -0
- data/pkgs/tile-0.8.2/license.terms +24 -0
- data/pkgs/tile-0.8.2/macosx/aquaTheme.c +1076 -0
- data/pkgs/tile-0.8.2/manager.o +0 -0
- data/pkgs/tile-0.8.2/notebook.o +0 -0
- data/pkgs/tile-0.8.2/paned.o +0 -0
- data/pkgs/tile-0.8.2/pkgIndex.tcl +3 -0
- data/pkgs/tile-0.8.2/progress.o +0 -0
- data/pkgs/tile-0.8.2/scale.o +0 -0
- data/pkgs/tile-0.8.2/scroll.o +0 -0
- data/pkgs/tile-0.8.2/scrollbar.o +0 -0
- data/pkgs/tile-0.8.2/separator.o +0 -0
- data/pkgs/tile-0.8.2/tagset.o +0 -0
- data/pkgs/tile-0.8.2/tclconfig/install-sh +119 -0
- data/pkgs/tile-0.8.2/tclconfig/tcl.m4 +4069 -0
- data/pkgs/tile-0.8.2/tclconfig/teax.m4 +109 -0
- data/pkgs/tile-0.8.2/tests/all.tcl +18 -0
- data/pkgs/tile-0.8.2/tests/bwidget.test +103 -0
- data/pkgs/tile-0.8.2/tests/cbtest.tcl +125 -0
- data/pkgs/tile-0.8.2/tests/combobox.test +51 -0
- data/pkgs/tile-0.8.2/tests/compound.tcl +92 -0
- data/pkgs/tile-0.8.2/tests/entry.test +285 -0
- data/pkgs/tile-0.8.2/tests/entrytest.tcl +78 -0
- data/pkgs/tile-0.8.2/tests/image.test +94 -0
- data/pkgs/tile-0.8.2/tests/labelframe.tcl +41 -0
- data/pkgs/tile-0.8.2/tests/labelframe.test +137 -0
- data/pkgs/tile-0.8.2/tests/layout.test +33 -0
- data/pkgs/tile-0.8.2/tests/misc.test +35 -0
- data/pkgs/tile-0.8.2/tests/nbtest.tcl +66 -0
- data/pkgs/tile-0.8.2/tests/notebook.test +500 -0
- data/pkgs/tile-0.8.2/tests/paned.test +298 -0
- data/pkgs/tile-0.8.2/tests/progress.test +92 -0
- data/pkgs/tile-0.8.2/tests/pwtest.tcl +90 -0
- data/pkgs/tile-0.8.2/tests/sbtest.tcl +79 -0
- data/pkgs/tile-0.8.2/tests/scrollbar.test +77 -0
- data/pkgs/tile-0.8.2/tests/sgtest.tcl +52 -0
- data/pkgs/tile-0.8.2/tests/testutils.tcl +20 -0
- data/pkgs/tile-0.8.2/tests/tile.test +674 -0
- data/pkgs/tile-0.8.2/tests/treetags.test +78 -0
- data/pkgs/tile-0.8.2/tests/treeview.test +563 -0
- data/pkgs/tile-0.8.2/tests/tvtest.tcl +332 -0
- data/pkgs/tile-0.8.2/tests/validate.test +278 -0
- data/pkgs/tile-0.8.2/tile.o +0 -0
- data/pkgs/tile-0.8.2/tkElements.o +0 -0
- data/pkgs/tile-0.8.2/tkTheme.o +0 -0
- data/pkgs/tile-0.8.2/tkstate.o +0 -0
- data/pkgs/tile-0.8.2/tools/genStubs.tcl +861 -0
- data/pkgs/tile-0.8.2/trace.o +0 -0
- data/pkgs/tile-0.8.2/track.o +0 -0
- data/pkgs/tile-0.8.2/treeview.o +0 -0
- data/pkgs/tile-0.8.2/ttkStubInit.o +0 -0
- data/pkgs/tile-0.8.2/ttkStubLib.o +0 -0
- data/pkgs/tile-0.8.2/widget.o +0 -0
- data/pkgs/tile-0.8.2/win/Tile.dsp +261 -0
- data/pkgs/tile-0.8.2/win/makefile.vc +527 -0
- data/pkgs/tile-0.8.2/win/monitor.c +164 -0
- data/pkgs/tile-0.8.2/win/nmakehlp.c +483 -0
- data/pkgs/tile-0.8.2/win/rules.vc +512 -0
- data/pkgs/tile-0.8.2/win/tile.rc +40 -0
- data/pkgs/tile-0.8.2/win/winTheme.c +734 -0
- data/pkgs/tile-0.8.2/win/xpTheme.c +1029 -0
- data/spec/app_spec.rb +48 -0
- data/spec/customer_spec.rb +31 -0
- data/spec/fixtures/graph.expectation +18 -0
- data/spec/payment_spec.rb +19 -0
- data/spec/pratt_spec.rb +148 -0
- data/spec/project_spec.rb +163 -0
- data/spec/rcov.opts +0 -0
- data/spec/spec.opts +1 -0
- data/spec/spec_helper.rb +21 -0
- data/spec/whence_spec.rb +54 -0
- data/tasks/pratt.rb +84 -0
- data/templates/model.eruby +12 -0
- data/templates/spec.eruby +8 -0
- data/views/env.rb +22 -0
- data/views/graph.eruby +20 -0
- data/views/invoice.eruby +148 -0
- data/views/main.rb +92 -0
- data/views/pid.eruby +3 -0
- data/views/pop.rb +94 -0
- data/views/pop2.rb +75 -0
- data/views/raw.eruby +11 -0
- metadata +390 -0
@@ -0,0 +1,122 @@
|
|
1
|
+
'\"
|
2
|
+
'\" Copyright (c) 2005 Joe English
|
3
|
+
'\"
|
4
|
+
.so man.macros
|
5
|
+
.TH dialog n 0.8 tile "Tile Widget Set"
|
6
|
+
.SH "NAME"
|
7
|
+
ttk::dialog \- create a dialog box
|
8
|
+
.SH "SYNOPSIS"
|
9
|
+
\fBpackage require ttk::dialog\fR ?\fI0.8\fR?
|
10
|
+
.br
|
11
|
+
\fBttk::dialog\fR \fIpathname\fR ?\fIoptions...\fR?
|
12
|
+
\fBttk::dialog::define\fR \fIdialogType\fR ?\fIoptions...\fR?
|
13
|
+
.SH "DESCRIPTION"
|
14
|
+
A dialog box is a transient top-level window
|
15
|
+
containing an icon, a short message, an optional, longer, detail message,
|
16
|
+
and a row of command buttons.
|
17
|
+
When the user presses any of the buttons,
|
18
|
+
a callback function is invoked
|
19
|
+
and then the dialog is destroyed.
|
20
|
+
.PP
|
21
|
+
Additional widgets may be added in the dialog \fIclient frame\fR.
|
22
|
+
.SH "OPTIONS"
|
23
|
+
.OP \-title n/a n/a
|
24
|
+
Specifies a string to use as the window manager title.
|
25
|
+
.OP \-message n/a n/a
|
26
|
+
Specifies the message to display in this dialog.
|
27
|
+
.OP \-detail n/a n/a
|
28
|
+
Specifies a longer auxiliary message.
|
29
|
+
.OP \-command n/a n/a
|
30
|
+
Specifies a command prefix to be invoked when the user presses
|
31
|
+
one of the command buttons.
|
32
|
+
The symbolic name of the button is passed as an additional argument
|
33
|
+
to the command.
|
34
|
+
The dialog is dismissed after invoking the command.
|
35
|
+
.OP \-parent n/a n/a
|
36
|
+
Specifies a toplevel window for which the dialog is transient.
|
37
|
+
If omitted, the default is the nearest ancestor toplevel.
|
38
|
+
If set to the empty string, the dialog will not be a transient window.
|
39
|
+
.OP \-type n/a n/a
|
40
|
+
Specifies a built-in or user-defined dialog type.
|
41
|
+
See \fBPREDEFINED DIALOG TYPES\fR, below.
|
42
|
+
.OP \-icon n/a n/a
|
43
|
+
Specifies one of the stock dialog icons,
|
44
|
+
\fBinfo\fR, \fBquestion\fR, \fBwarning\fR, \fBerror\fR,
|
45
|
+
\fBauth\fR, or \fBbusy\fR.
|
46
|
+
If set to the empty string (the default), no icon is displayed.
|
47
|
+
.OP \-buttons n/a n/a
|
48
|
+
A list of symbolic button names.
|
49
|
+
.OP \-labels n/a n/a
|
50
|
+
A dictionary mapping symbolic button names to textual labels.
|
51
|
+
May be omitted if all the buttons are predefined.
|
52
|
+
.OP \-default n/a n/a
|
53
|
+
The symbolic name of the default button.
|
54
|
+
.OP \-cancel n/a n/a
|
55
|
+
The symbolic name of the "cancel" button.
|
56
|
+
The cancel button is invoked if the user presses the Escape key
|
57
|
+
and when the dialog is closed from the window manager.
|
58
|
+
If \fB-cancel\fR is not specified,
|
59
|
+
the dialog ignores window manager close commands (WM_DELETE_WINDOW).
|
60
|
+
.SH "WIDGET COMMANDS"
|
61
|
+
.TP
|
62
|
+
\fBttk::dialog::clientframe \fIdlg\fR
|
63
|
+
Returns the widget path of the client frame.
|
64
|
+
Other widgets may be added to the client frame.
|
65
|
+
The client frame appears between the detail message and the command buttons.
|
66
|
+
.SH "PREDEFINED DIALOG TYPES"
|
67
|
+
The \fB-type\fR option, if present, specifies default values
|
68
|
+
for other options. \fBttk::dialog::define \fItype options...\fR
|
69
|
+
specifies a new stock dialog \fItype\fR.
|
70
|
+
The following stock dialog types are predefined:
|
71
|
+
.CS
|
72
|
+
ttk::dialog::define ok \e
|
73
|
+
-icon info -buttons {ok} -default ok
|
74
|
+
ttk::dialog::define okcancel \e
|
75
|
+
-icon info -buttons {ok cancel} -default ok -cancel cancel
|
76
|
+
ttk::dialog::define yesno \e
|
77
|
+
-icon question -buttons {yes no}
|
78
|
+
ttk::dialog::define yesnocancel \e
|
79
|
+
-icon question -buttons {yes no cancel} -cancel cancel
|
80
|
+
ttk::dialog::define retrycancel \e
|
81
|
+
-icon question -buttons {retry cancel} -cancel cancel
|
82
|
+
.CE
|
83
|
+
.SH "STOCK BUTTONS"
|
84
|
+
The following ``stock'' symbolic button names have predefined labels:
|
85
|
+
\fByes\fR, \fBno\fR, \fBok\fR, \fBcancel\fR, and \fBretry\fR.
|
86
|
+
.PP
|
87
|
+
It is not necessary to list these in the \fB-labels\fR dictionary.
|
88
|
+
.\" .SH "DIFFERENCES FROM MESSAGE BOXES"
|
89
|
+
.\" The \fBttk::dialog\fR constructor is similar to
|
90
|
+
.\" the Tk library procedure \fBtk_messageBox\fR,
|
91
|
+
.\" but with the following notable differences:
|
92
|
+
.\" .IP \(bu
|
93
|
+
.\" The first argument to \fBttk::dialog\fR is the name of
|
94
|
+
.\" the widget to create; \fBtk_messageBox\fR has
|
95
|
+
.\" .IP \(bu
|
96
|
+
.\" Tile dialog boxes are non-modal by default.
|
97
|
+
.\" .IP \(bu
|
98
|
+
.\" The \fBtk_messageBox\fR command is blocking:
|
99
|
+
.\" it does not return until the user presses one of the command buttons.
|
100
|
+
.\" \fBttk::dialog\fR returns immediately after creating the dialog box.
|
101
|
+
.SH EXAMPLE
|
102
|
+
.CS
|
103
|
+
proc saveFileComplete {button} {
|
104
|
+
switch -- $button {
|
105
|
+
yes { # save file ... }
|
106
|
+
no { exit }
|
107
|
+
cancel { # no-op }
|
108
|
+
}
|
109
|
+
}
|
110
|
+
|
111
|
+
ttk::dialog .saveFileDialog \e
|
112
|
+
-title "Save file?" \e
|
113
|
+
-icon question \e
|
114
|
+
-message "Save file before closing?" \e
|
115
|
+
-detail "If you do not save the file, your work will be lost" \e
|
116
|
+
-buttons [list yes no cancel] \e
|
117
|
+
-labels [list yes "Save file" no "Don't save"] \e
|
118
|
+
-command saveFileComplete \e
|
119
|
+
;
|
120
|
+
.CE
|
121
|
+
.SH "SEE ALSO"
|
122
|
+
tk_messageBox(n), wm(n), toplevel(n)
|
@@ -0,0 +1,438 @@
|
|
1
|
+
'\"
|
2
|
+
'\" SOURCE: entry.n, r1.12
|
3
|
+
'\"
|
4
|
+
'\" Copyright (c) 1990-1994 The Regents of the University of California.
|
5
|
+
'\" Copyright (c) 1994-1996 Sun Microsystems, Inc.
|
6
|
+
'\" Copyright (c) 1998-2000 Scriptics Corporation.
|
7
|
+
'\" Copyright (c) 2004 Joe English
|
8
|
+
'\"
|
9
|
+
'\" See the file "license.terms" for information on usage and redistribution
|
10
|
+
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
11
|
+
'\"
|
12
|
+
.so man.macros
|
13
|
+
.TH entry n 0.4 tile "Tile Widget Set"
|
14
|
+
.BS
|
15
|
+
.SH NAME
|
16
|
+
ttk::entry \- Editable text field widget
|
17
|
+
.SH SYNOPSIS
|
18
|
+
\fBttk::entry\fR \fIpathName \fR?\fIoptions\fR?
|
19
|
+
.SH DESCRIPTION
|
20
|
+
.PP
|
21
|
+
An \fBentry\fR widget displays a one-line text string and
|
22
|
+
allows that string to be edited by the user.
|
23
|
+
The value of the string may be linked to a Tcl variable
|
24
|
+
with the \fB-textvariable\fR option.
|
25
|
+
Entry widgets support horizontal scrolling with the
|
26
|
+
standard \fB-xscrollcommand\fR option and \fBxview\fR widget command.
|
27
|
+
.SO
|
28
|
+
\-class \-cursor \-style \-takefocus
|
29
|
+
\-xscrollcommand
|
30
|
+
.SE
|
31
|
+
.SH "WIDGET-SPECIFIC OPTIONS"
|
32
|
+
.OP \-exportselection exportSelection ExportSelection
|
33
|
+
A boolean value specifying whether or not
|
34
|
+
a selection in the widget should be linked to the X selection.
|
35
|
+
If the selection is exported, then selecting in the widget deselects
|
36
|
+
the current X selection, selecting outside the widget deselects any
|
37
|
+
widget selection, and the widget will respond to selection retrieval
|
38
|
+
requests when it has a selection.
|
39
|
+
.\" MAYBE: .OP \-font font Font
|
40
|
+
.\" MAYBE: .OP \-foreground foreground Foreground
|
41
|
+
.\" MAYBE: .OP \-insertbackground insertBackground Foreground
|
42
|
+
.\" MAYBE: .OP \-insertwidth insertWidth InsertWidth
|
43
|
+
.OP \-invalidcommand invalidCommand InvalidCommand
|
44
|
+
A script template to evaluate whenever the \fBvalidateCommand\fR returns 0.
|
45
|
+
See \fBVALIDATION\fR below for more information.
|
46
|
+
.OP \-justify justify Justify
|
47
|
+
Specifies how the text is aligned within the entry widget.
|
48
|
+
One of \fBleft\fR, \fBcenter\fR, or \fBright\fR.
|
49
|
+
.\" MAYBE: .OP \-selectbackground selectBackground Foreground
|
50
|
+
.\" MAYBE: .OP \-selectborderwidth selectBorderWidth BorderWidth
|
51
|
+
.\" MAYBE: .OP \-selectforeground selectForeground Background
|
52
|
+
.OP \-show show Show
|
53
|
+
If this option is specified, then the true contents of the entry
|
54
|
+
are not displayed in the window.
|
55
|
+
Instead, each character in the entry's value will be displayed as
|
56
|
+
the first character in the value of this option, such as ``*''.
|
57
|
+
This is useful, for example, if the entry is to be used to enter
|
58
|
+
a password.
|
59
|
+
If characters in the entry are selected and copied elsewhere, the
|
60
|
+
information copied will be what is displayed, not the true contents
|
61
|
+
of the entry.
|
62
|
+
.OP \-state state State
|
63
|
+
Compatibility option; see \fBwidget(n)\fR for details.
|
64
|
+
Specifies one of three states for the entry,
|
65
|
+
\fBnormal\fR, \fBdisabled\fR, or \fBreadonly\fR.
|
66
|
+
See \fBWIDGET STATES\fR, below.
|
67
|
+
.OP \-textvariable textVariable Variable
|
68
|
+
Specifies the name of a variable whose value is linked
|
69
|
+
to the entry widget's contents.
|
70
|
+
Whenever the variable changes value, the widget's contents are updated,
|
71
|
+
and vice versa.
|
72
|
+
.OP \-validate validate Validate
|
73
|
+
Specifies the mode in which validation should operate:
|
74
|
+
\fBnone\fR, \fBfocus\fR, \fBfocusin\fR, \fBfocusout\fR, \fBkey\fR, or \fBall\fR.
|
75
|
+
Default is \fBnone\fR, meaning that validation is disabled.
|
76
|
+
See \fBVALIDATION\fR below.
|
77
|
+
.OP \-validatecommand validateCommand ValidateCommand
|
78
|
+
A script template to evaluate whenever validation is triggered.
|
79
|
+
If set to the empty string (the default), validation is disabled.
|
80
|
+
The script must return a boolean value.
|
81
|
+
See \fBVALIDATION\fR below.
|
82
|
+
.OP \-width width Width
|
83
|
+
Specifies an integer value indicating the desired width of the entry window,
|
84
|
+
in average-size characters of the widget's font.
|
85
|
+
.\" Not in tile: If the value is less than or equal to zero, the widget picks a
|
86
|
+
.\" Not in tile: size just large enough to hold its current text.
|
87
|
+
.BE
|
88
|
+
.SH NOTES
|
89
|
+
A portion of the entry may be selected as described below.
|
90
|
+
If an entry is exporting its selection (see the \fBexportSelection\fR
|
91
|
+
option), then it will observe the standard X11 protocols for handling the
|
92
|
+
selection; entry selections are available as type \fBSTRING\fR.
|
93
|
+
Entries also observe the standard Tk rules for dealing with the
|
94
|
+
input focus. When an entry has the input focus it displays an
|
95
|
+
\fIinsert cursor\fR to indicate where new characters will be
|
96
|
+
inserted.
|
97
|
+
.PP
|
98
|
+
Entries are capable of displaying strings that are too long to
|
99
|
+
fit entirely within the widget's window. In this case, only a
|
100
|
+
portion of the string will be displayed; commands described below
|
101
|
+
may be used to change the view in the window. Entries use
|
102
|
+
the standard \fBxScrollCommand\fR mechanism for interacting with
|
103
|
+
scrollbars (see the description of the \fBxScrollCommand\fR option
|
104
|
+
for details).
|
105
|
+
.SH "INDICES"
|
106
|
+
Many of the \fBentry\fR widget commands take one or more indices as
|
107
|
+
arguments. An index specifies a particular character in the entry's
|
108
|
+
string, in any of the following ways:
|
109
|
+
.IP \fInumber\fR
|
110
|
+
Specifies the character as a numerical index, where 0 corresponds
|
111
|
+
to the first character in the string.
|
112
|
+
.IP \fB@\fInumber\fR
|
113
|
+
In this form, \fInumber\fR is treated as an x-coordinate in the
|
114
|
+
entry's window; the character spanning that x-coordinate is used.
|
115
|
+
For example, ``\fB@0\fR'' indicates the left-most character in the
|
116
|
+
window.
|
117
|
+
.IP \fBend\fR
|
118
|
+
Indicates the character just after the last one in the entry's string.
|
119
|
+
This is equivalent to specifying a numerical index equal to the length
|
120
|
+
of the entry's string.
|
121
|
+
.IP \fBinsert\fR
|
122
|
+
Indicates the character adjacent to and immediately following the
|
123
|
+
insert cursor.
|
124
|
+
.IP \fBsel.first\fR
|
125
|
+
Indicates the first character in the selection. It is an error to
|
126
|
+
use this form if the selection isn't in the entry window.
|
127
|
+
.IP \fBsel.last\fR
|
128
|
+
Indicates the character just after the last one in the selection.
|
129
|
+
It is an error to use this form if the selection isn't in the
|
130
|
+
entry window.
|
131
|
+
.LP
|
132
|
+
Abbreviations may be used for any of the forms above, e.g. ``\fBe\fR''
|
133
|
+
or ``\fBsel.f\fR''. In general, out-of-range indices are automatically
|
134
|
+
rounded to the nearest legal value.
|
135
|
+
.SH "WIDGET COMMAND"
|
136
|
+
.PP
|
137
|
+
The following commands are possible for entry widgets:
|
138
|
+
.TP
|
139
|
+
\fIpathName \fBbbox \fIindex\fR
|
140
|
+
Returns a list of four numbers describing the bounding box of the
|
141
|
+
character given by \fIindex\fR.
|
142
|
+
The first two elements of the list give the x and y coordinates of
|
143
|
+
the upper-left corner of the screen area covered by the character
|
144
|
+
(in pixels relative to the widget) and the last two elements give
|
145
|
+
the width and height of the character, in pixels.
|
146
|
+
The bounding box may refer to a region outside the visible area
|
147
|
+
of the window.
|
148
|
+
.TP
|
149
|
+
\fIpathName \fBcget\fR \fIoption\fR
|
150
|
+
Returns the current value of the specified \fIoption\fR.
|
151
|
+
See \fIwidget(n)\fR.
|
152
|
+
.TP
|
153
|
+
\fIpathName \fBconfigure\fR ?\fIoption\fR? ?\fIvalue option value ...\fR?
|
154
|
+
Modify or query widget options.
|
155
|
+
See \fIwidget(n)\fR.
|
156
|
+
.TP
|
157
|
+
\fIpathName \fBdelete \fIfirst \fR?\fIlast\fR?
|
158
|
+
Delete one or more elements of the entry.
|
159
|
+
\fIFirst\fR is the index of the first character to delete, and
|
160
|
+
\fIlast\fR is the index of the character just after the last
|
161
|
+
one to delete.
|
162
|
+
If \fIlast\fR isn't specified it defaults to \fIfirst\fR+1,
|
163
|
+
i.e. a single character is deleted.
|
164
|
+
This command returns the empty string.
|
165
|
+
.TP
|
166
|
+
\fIpathName \fBget\fR
|
167
|
+
Returns the entry's string.
|
168
|
+
.TP
|
169
|
+
\fIpathName \fBicursor \fIindex\fR
|
170
|
+
Arrange for the insert cursor to be displayed just before the character
|
171
|
+
given by \fIindex\fR. Returns the empty string.
|
172
|
+
.TP
|
173
|
+
\fIpathName \fBidentify \fIx y\fR
|
174
|
+
Returns the name of the element at position \fIx\fR, \fIy\fR,
|
175
|
+
or the empty string if the coordinates are outside the window.
|
176
|
+
.TP
|
177
|
+
\fIpathName \fBindex\fI index\fR
|
178
|
+
Returns the numerical index corresponding to \fIindex\fR.
|
179
|
+
.TP
|
180
|
+
\fIpathName \fBinsert \fIindex string\fR
|
181
|
+
Insert \fIstring\fR just before the character
|
182
|
+
indicated by \fIindex\fR. Returns the empty string.
|
183
|
+
.TP
|
184
|
+
\fIpathName \fBinstate \fIstatespec\fR ?\fIscript\fR?
|
185
|
+
Test the widget state.
|
186
|
+
See \fIwidget(n)\fR.
|
187
|
+
.TP
|
188
|
+
\fIpathName \fBselection \fIoption arg\fR
|
189
|
+
This command is used to adjust the selection within an entry. It
|
190
|
+
has several forms, depending on \fIoption\fR:
|
191
|
+
.RS
|
192
|
+
.TP
|
193
|
+
\fIpathName \fBselection clear\fR
|
194
|
+
Clear the selection if it is currently in this widget.
|
195
|
+
If the selection isn't in this widget then the command has no effect.
|
196
|
+
Returns the empty string.
|
197
|
+
.TP
|
198
|
+
\fIpathName \fBselection present\fR
|
199
|
+
Returns 1 if there is are characters selected in the entry,
|
200
|
+
0 if nothing is selected.
|
201
|
+
.TP
|
202
|
+
\fIpathName \fBselection range \fIstart\fR \fIend\fR
|
203
|
+
Sets the selection to include the characters starting with
|
204
|
+
the one indexed by \fIstart\fR and ending with the one just
|
205
|
+
before \fIend\fR.
|
206
|
+
If \fIend\fR refers to the same character as \fIstart\fR or an
|
207
|
+
earlier one, then the entry's selection is cleared.
|
208
|
+
.RE
|
209
|
+
.TP
|
210
|
+
\fIpathName \fBstate\fR ?\fIstateSpec\fR?
|
211
|
+
Modify or query the widget state.
|
212
|
+
See \fIwidget(n)\fR.
|
213
|
+
.TP
|
214
|
+
\fIpathName \fBvalidate\fR
|
215
|
+
Force revalidation, independent of the conditions specified
|
216
|
+
by the \fB-validate\fR option.
|
217
|
+
Returns 0 if validation fails, 1 if it succeeds.
|
218
|
+
Sets or clears the \fBinvalid\fR state accordingly.
|
219
|
+
.TP
|
220
|
+
\fIpathName \fBxview \fIargs\fR
|
221
|
+
This command is used to query and change the horizontal position of the
|
222
|
+
text in the widget's window. It can take any of the following
|
223
|
+
forms:
|
224
|
+
.RS
|
225
|
+
.TP
|
226
|
+
\fIpathName \fBxview\fR
|
227
|
+
Returns a list containing two elements.
|
228
|
+
Each element is a real fraction between 0 and 1; together they describe
|
229
|
+
the horizontal span that is visible in the window.
|
230
|
+
For example, if the first element is .2 and the second element is .6,
|
231
|
+
20% of the entry's text is off-screen to the left, the middle 40% is visible
|
232
|
+
in the window, and 40% of the text is off-screen to the right.
|
233
|
+
These are the same values passed to scrollbars via the \fB\-xscrollcommand\fR
|
234
|
+
option.
|
235
|
+
.TP
|
236
|
+
\fIpathName \fBxview\fR \fIindex\fR
|
237
|
+
Adjusts the view in the window so that the character given by \fIindex\fR
|
238
|
+
is displayed at the left edge of the window.
|
239
|
+
.TP
|
240
|
+
\fIpathName \fBxview moveto\fI fraction\fR
|
241
|
+
Adjusts the view in the window so that the character \fIfraction\fR of the
|
242
|
+
way through the text appears at the left edge of the window.
|
243
|
+
\fIFraction\fR must be a fraction between 0 and 1.
|
244
|
+
.TP
|
245
|
+
\fIpathName \fBxview scroll \fInumber what\fR
|
246
|
+
This command shifts the view in the window left or right according to
|
247
|
+
\fInumber\fR and \fIwhat\fR.
|
248
|
+
\fINumber\fR must be an integer.
|
249
|
+
\fIWhat\fR must be either \fBunits\fR or \fBpages\fR.
|
250
|
+
'\" or an abbreviation of one of these, but we don't document that.
|
251
|
+
If \fIwhat\fR is \fBunits\fR, the view adjusts left or right by
|
252
|
+
\fInumber\fR average-width characters on the display; if it is
|
253
|
+
\fBpages\fR then the view adjusts by \fInumber\fR screenfuls.
|
254
|
+
If \fInumber\fR is negative then characters farther to the left
|
255
|
+
become visible; if it is positive then characters farther to the right
|
256
|
+
become visible.
|
257
|
+
.RE
|
258
|
+
.SH VALIDATION
|
259
|
+
The \fB-validate\fR, \fB-validatecommand\fR, and \fB-invalidcommand\fR
|
260
|
+
options are used to enable entry widget validation.
|
261
|
+
.SS "VALIDATION MODES"
|
262
|
+
There are two main validation modes: \fIprevalidation\fR,
|
263
|
+
in which the \fB-validatecommand\fR is evaluated prior to each edit
|
264
|
+
and the return value is used to determine whether to accept
|
265
|
+
or reject the change;
|
266
|
+
and \fIrevalidation\fR, in which the \fB-validatecommand\fR is
|
267
|
+
evaluated to determine whether the current value is valid.
|
268
|
+
.PP
|
269
|
+
The \fB-validate\fR option determines when validation occurs;
|
270
|
+
it may be set to any of the following values:
|
271
|
+
.IP \fBnone\fR
|
272
|
+
Default. This means validation will only occur when
|
273
|
+
specifically requested by the \fBvalidate\fR widget command.
|
274
|
+
.IP \fBkey\fR
|
275
|
+
The entry will be prevalidated prior to each edit
|
276
|
+
(specifically, whenever the \fBinsert\fR or \fBdelete\fR
|
277
|
+
widget commands are called).
|
278
|
+
If prevalidation fails, the edit is rejected.
|
279
|
+
.IP \fBfocus\fR
|
280
|
+
The entry is revalidated when the entry receives or loses focus.
|
281
|
+
.IP \fBfocusin\fR
|
282
|
+
The entry is revalidated when the entry receives focus.
|
283
|
+
.IP \fBfocusout\fR
|
284
|
+
The entry is revalidated when the entry loses focus.
|
285
|
+
.IP \fBall\fR
|
286
|
+
Validation is performed for all above conditions.
|
287
|
+
.PP
|
288
|
+
The \fB-invalidcommand\fR is evaluated whenever
|
289
|
+
the \fB-validatecommand\fR returns a false value.
|
290
|
+
.PP
|
291
|
+
The \fB-validatecommand\fR and \fB-invalidcommand\fR
|
292
|
+
may modify the entry widget's value
|
293
|
+
via the widget \fBinsert\fR or \fBdelete\fR commands,
|
294
|
+
or by setting the linked \fB-textvariable\fR.
|
295
|
+
If either does so during prevalidation,
|
296
|
+
then the edit is rejected
|
297
|
+
regardless of the value returned by the \fB-validatecommand\fR.
|
298
|
+
.PP
|
299
|
+
If \fB-validatecommand\fR is empty (the default),
|
300
|
+
validation always succeeds.
|
301
|
+
.SS "VALIDATION SCRIPT SUBSTITUTIONS"
|
302
|
+
It is possible to perform percent substitutions on the
|
303
|
+
\fB-validatecommand\fR and \fBinvalidCommand\fR,
|
304
|
+
just as in a \fBbind\fR script.
|
305
|
+
The following substitutions are recognized:
|
306
|
+
.IP \fB%d\fR
|
307
|
+
Type of action: 1 for \fBinsert\fR prevalidation,
|
308
|
+
0 for \fBdelete\fR prevalidation,
|
309
|
+
or -1 for revalidation.
|
310
|
+
.IP \fB%i\fR
|
311
|
+
Index of character string to be inserted/deleted, if any, otherwise -1.
|
312
|
+
.IP \fB%P\fR
|
313
|
+
In prevalidation, the new value of the entry if the edit is accepted.
|
314
|
+
In revalidation, the current value of the entry.
|
315
|
+
.IP \fB%s\fR
|
316
|
+
The current value of entry prior to editing.
|
317
|
+
.IP \fB%S\fR
|
318
|
+
The text string being inserted/deleted, if any, {} otherwise.
|
319
|
+
.IP \fB%v\fR
|
320
|
+
The current value of the \fB-validate\fR option.
|
321
|
+
.IP \fB%V\fR
|
322
|
+
The validation condition that triggered the callback
|
323
|
+
(\fBkey\fR, \fBfocusin\fR, \fBfocusout\fR, or \fBforced\fR).
|
324
|
+
.IP \fB%W\fR
|
325
|
+
The name of the entry widget.
|
326
|
+
.SS "DIFFERENCES FROM TK ENTRY WIDGET VALIDATION"
|
327
|
+
.IP \(bu
|
328
|
+
The standard Tk entry widget automatically disables validation
|
329
|
+
(by setting \fB-validate\fR to \fBnone\fR)
|
330
|
+
if the \fB-validatecommand\fR or \fB-invalidcommand\fR modifies
|
331
|
+
the entry's value.
|
332
|
+
The Tile entry widget only disables validation if one
|
333
|
+
of the validation scripts raises an error, or if \fB-validatecommand\fR
|
334
|
+
does not return a valid boolean value.
|
335
|
+
(Thus, it is not necessary to reenable validation after
|
336
|
+
modifying the entry value in a validation script).
|
337
|
+
.IP \(bu
|
338
|
+
The standard entry widget invokes validation whenever the linked
|
339
|
+
\fB-textvariable\fR is modified; the Tile entry widget does not.
|
340
|
+
.SH "DEFAULT BINDINGS"
|
341
|
+
The entry widget's default bindings enable the following behavior.
|
342
|
+
In the descriptions below, ``word'' refers to a contiguous group
|
343
|
+
of letters, digits, or ``_'' characters, or any single character
|
344
|
+
other than these.
|
345
|
+
.IP \(bu
|
346
|
+
Clicking mouse button 1 positions the insert cursor
|
347
|
+
just before the character underneath the mouse cursor, sets the
|
348
|
+
input focus to this widget, and clears any selection in the widget.
|
349
|
+
Dragging with mouse button 1 down strokes out a selection between
|
350
|
+
the insert cursor and the character under the mouse.
|
351
|
+
.IP \(bu
|
352
|
+
Double-clicking with mouse button 1 selects the word under the mouse
|
353
|
+
and positions the insert cursor at the end of the word.
|
354
|
+
Dragging after a double click strokes out a selection consisting
|
355
|
+
of whole words.
|
356
|
+
.IP \(bu
|
357
|
+
Triple-clicking with mouse button 1 selects all of the text in the
|
358
|
+
entry and positions the insert cursor at the end of the line.
|
359
|
+
.IP \(bu
|
360
|
+
The ends of the selection can be adjusted by dragging with mouse
|
361
|
+
button 1 while the Shift key is down.
|
362
|
+
If the button is double-clicked before dragging then the selection
|
363
|
+
will be adjusted in units of whole words.
|
364
|
+
.IP \(bu
|
365
|
+
Clicking mouse button 1 with the Control key down will position the
|
366
|
+
insert cursor in the entry without affecting the selection.
|
367
|
+
.IP \(bu
|
368
|
+
If any normal printing characters are typed in an entry, they are
|
369
|
+
inserted at the point of the insert cursor.
|
370
|
+
.IP \(bu
|
371
|
+
The view in the entry can be adjusted by dragging with mouse button 2.
|
372
|
+
If mouse button 2 is clicked without moving the mouse, the selection
|
373
|
+
is copied into the entry at the position of the mouse cursor.
|
374
|
+
.IP \(bu
|
375
|
+
If the mouse is dragged out of the entry on the left or right sides
|
376
|
+
while button 1 is pressed, the entry will automatically scroll to
|
377
|
+
make more text visible (if there is more text off-screen on the side
|
378
|
+
where the mouse left the window).
|
379
|
+
.IP \(bu
|
380
|
+
The Left and Right keys move the insert cursor one character to the
|
381
|
+
left or right; they also clear any selection in the entry.
|
382
|
+
If Left or Right is typed with the Shift key down, then the insertion
|
383
|
+
cursor moves and the selection is extended to include the new character.
|
384
|
+
Control-Left and Control-Right move the insert cursor by words, and
|
385
|
+
Control-Shift-Left and Control-Shift-Right move the insert cursor
|
386
|
+
by words and also extend the selection.
|
387
|
+
Control-b and Control-f behave the same as Left and Right, respectively.
|
388
|
+
.IP \(bu
|
389
|
+
The Home key and Control-a move the insert cursor to the
|
390
|
+
beginning of the entry and clear any selection in the entry.
|
391
|
+
Shift-Home moves the insert cursor to the beginning of the entry
|
392
|
+
and extends the selection to that point.
|
393
|
+
.IP \(bu
|
394
|
+
The End key and Control-e move the insert cursor to the
|
395
|
+
end of the entry and clear any selection in the entry.
|
396
|
+
Shift-End moves the cursor to the end and extends the selection
|
397
|
+
to that point.
|
398
|
+
.IP \(bu
|
399
|
+
Control-/ selects all the text in the entry.
|
400
|
+
.IP \(bu
|
401
|
+
Control-\e clears any selection in the entry.
|
402
|
+
.IP \(bu
|
403
|
+
The standard Tk <<Cut>>, <<Copy>>, <<Paste>>, and <<Clear>>
|
404
|
+
virtual events operate on the selection in the expected manner.
|
405
|
+
.IP \(bu
|
406
|
+
The Delete key deletes the selection, if there is one in the entry.
|
407
|
+
If there is no selection, it deletes the character to the right of
|
408
|
+
the insert cursor.
|
409
|
+
.IP \(bu
|
410
|
+
The BackSpace key and Control-h delete the selection, if there is one
|
411
|
+
in the entry.
|
412
|
+
If there is no selection, it deletes the character to the left of
|
413
|
+
the insert cursor.
|
414
|
+
.IP \(bu
|
415
|
+
Control-d deletes the character to the right of the insert cursor.
|
416
|
+
.IP \(bu
|
417
|
+
Control-k deletes all the characters to the right of the insertion
|
418
|
+
cursor.
|
419
|
+
.SH "WIDGET STATES"
|
420
|
+
In the \fBdisabled\fR state,
|
421
|
+
the entry cannot be edited and the text cannot be selected.
|
422
|
+
In the \fBreadonly\fR state,
|
423
|
+
no insert cursor is displayed and
|
424
|
+
the entry cannot be edited
|
425
|
+
(specifically: the \fBinsert\fR and \fBdelete\fR commands have no effect).
|
426
|
+
The \fBdisabled\fR state is the same as \fBreadonly\fR,
|
427
|
+
and in addition text cannot be selected.
|
428
|
+
.PP
|
429
|
+
Note that changes to the linked \fB-textvariable\fR will
|
430
|
+
still be reflected in the entry, even if it is disabled or readonly.
|
431
|
+
.PP
|
432
|
+
Typically, the text is "grayed-out" in the \fBdisabled\fR state,
|
433
|
+
and a different background is used in the \fBreadonly\fR state.
|
434
|
+
.PP
|
435
|
+
The entry widget sets the \fBinvalid\fR state if revalidation fails,
|
436
|
+
and clears it whenever validation succeeds.
|
437
|
+
.SH KEYWORDS
|
438
|
+
entry, widget, text field
|