Pratt 1.5.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (283) hide show
  1. data/.exrc +61 -0
  2. data/.gitignore +4 -0
  3. data/History.txt +6 -0
  4. data/Manifest.txt +46 -0
  5. data/Pratt.gemspec +351 -0
  6. data/README.txt +66 -0
  7. data/Rakefile +85 -0
  8. data/TODO +54 -0
  9. data/VERSION +1 -0
  10. data/bin/pratt.rb +13 -0
  11. data/config.rb +34 -0
  12. data/lib/pratt.rb +527 -0
  13. data/lib/pratt/array.rb +11 -0
  14. data/lib/pratt/string.rb +18 -0
  15. data/models/app.rb +40 -0
  16. data/models/customer.rb +24 -0
  17. data/models/payment.rb +22 -0
  18. data/models/pratt.rb +19 -0
  19. data/models/project.rb +82 -0
  20. data/models/whence.rb +70 -0
  21. data/pkgs/tile-0.8.2.tar.gz +0 -0
  22. data/pkgs/tile-0.8.2/ANNOUNCE.txt +95 -0
  23. data/pkgs/tile-0.8.2/ChangeLog +4651 -0
  24. data/pkgs/tile-0.8.2/Makefile +250 -0
  25. data/pkgs/tile-0.8.2/Makefile.in +250 -0
  26. data/pkgs/tile-0.8.2/README.txt +86 -0
  27. data/pkgs/tile-0.8.2/aclocal.m4 +2 -0
  28. data/pkgs/tile-0.8.2/altTheme.o +0 -0
  29. data/pkgs/tile-0.8.2/blink.o +0 -0
  30. data/pkgs/tile-0.8.2/button.o +0 -0
  31. data/pkgs/tile-0.8.2/cache.o +0 -0
  32. data/pkgs/tile-0.8.2/clamTheme.o +0 -0
  33. data/pkgs/tile-0.8.2/classicTheme.o +0 -0
  34. data/pkgs/tile-0.8.2/config.log +1330 -0
  35. data/pkgs/tile-0.8.2/config.status +795 -0
  36. data/pkgs/tile-0.8.2/configure +15248 -0
  37. data/pkgs/tile-0.8.2/configure.in +89 -0
  38. data/pkgs/tile-0.8.2/demos/autocomplete.tcl +59 -0
  39. data/pkgs/tile-0.8.2/demos/demo.tcl +870 -0
  40. data/pkgs/tile-0.8.2/demos/dirbrowser.tcl +167 -0
  41. data/pkgs/tile-0.8.2/demos/dlgtest.tcl +97 -0
  42. data/pkgs/tile-0.8.2/demos/iconlib.tcl +110 -0
  43. data/pkgs/tile-0.8.2/demos/repeater.tcl +117 -0
  44. data/pkgs/tile-0.8.2/demos/toolbutton.tcl +101 -0
  45. data/pkgs/tile-0.8.2/doc/Geometry.3 +230 -0
  46. data/pkgs/tile-0.8.2/doc/INDEX.MAP +153 -0
  47. data/pkgs/tile-0.8.2/doc/Makefile +36 -0
  48. data/pkgs/tile-0.8.2/doc/TILE.XML +45 -0
  49. data/pkgs/tile-0.8.2/doc/Theme.3 +34 -0
  50. data/pkgs/tile-0.8.2/doc/button.n +75 -0
  51. data/pkgs/tile-0.8.2/doc/checkbutton.n +61 -0
  52. data/pkgs/tile-0.8.2/doc/combobox.n +98 -0
  53. data/pkgs/tile-0.8.2/doc/converting.txt +97 -0
  54. data/pkgs/tile-0.8.2/doc/dialog.n +122 -0
  55. data/pkgs/tile-0.8.2/doc/entry.n +438 -0
  56. data/pkgs/tile-0.8.2/doc/frame.n +43 -0
  57. data/pkgs/tile-0.8.2/doc/html/Geometry.html +304 -0
  58. data/pkgs/tile-0.8.2/doc/html/Theme.html +48 -0
  59. data/pkgs/tile-0.8.2/doc/html/button.html +120 -0
  60. data/pkgs/tile-0.8.2/doc/html/category-index.html +18 -0
  61. data/pkgs/tile-0.8.2/doc/html/checkbutton.html +94 -0
  62. data/pkgs/tile-0.8.2/doc/html/combobox.html +164 -0
  63. data/pkgs/tile-0.8.2/doc/html/converting.txt +97 -0
  64. data/pkgs/tile-0.8.2/doc/html/dialog.html +159 -0
  65. data/pkgs/tile-0.8.2/doc/html/entry.html +613 -0
  66. data/pkgs/tile-0.8.2/doc/html/frame.html +76 -0
  67. data/pkgs/tile-0.8.2/doc/html/image.html +100 -0
  68. data/pkgs/tile-0.8.2/doc/html/index.html +25 -0
  69. data/pkgs/tile-0.8.2/doc/html/keyword-index.html +228 -0
  70. data/pkgs/tile-0.8.2/doc/html/label.html +133 -0
  71. data/pkgs/tile-0.8.2/doc/html/labelframe.html +91 -0
  72. data/pkgs/tile-0.8.2/doc/html/manpage.css +212 -0
  73. data/pkgs/tile-0.8.2/doc/html/menubutton.html +63 -0
  74. data/pkgs/tile-0.8.2/doc/html/notebook.html +280 -0
  75. data/pkgs/tile-0.8.2/doc/html/paned.html +149 -0
  76. data/pkgs/tile-0.8.2/doc/html/progressbar.html +138 -0
  77. data/pkgs/tile-0.8.2/doc/html/radiobutton.html +89 -0
  78. data/pkgs/tile-0.8.2/doc/html/scrollbar.html +221 -0
  79. data/pkgs/tile-0.8.2/doc/html/separator.html +48 -0
  80. data/pkgs/tile-0.8.2/doc/html/sizegrip.html +62 -0
  81. data/pkgs/tile-0.8.2/doc/html/style.html +172 -0
  82. data/pkgs/tile-0.8.2/doc/html/tile-intro.html +164 -0
  83. data/pkgs/tile-0.8.2/doc/html/treeview.html +634 -0
  84. data/pkgs/tile-0.8.2/doc/html/widget.html +342 -0
  85. data/pkgs/tile-0.8.2/doc/image.n +81 -0
  86. data/pkgs/tile-0.8.2/doc/internals.txt +409 -0
  87. data/pkgs/tile-0.8.2/doc/label.n +75 -0
  88. data/pkgs/tile-0.8.2/doc/labelframe.n +64 -0
  89. data/pkgs/tile-0.8.2/doc/man.macros +239 -0
  90. data/pkgs/tile-0.8.2/doc/menubutton.n +41 -0
  91. data/pkgs/tile-0.8.2/doc/notebook.n +188 -0
  92. data/pkgs/tile-0.8.2/doc/paned.n +95 -0
  93. data/pkgs/tile-0.8.2/doc/progressbar.n +79 -0
  94. data/pkgs/tile-0.8.2/doc/radiobutton.n +57 -0
  95. data/pkgs/tile-0.8.2/doc/scrollbar.n +160 -0
  96. data/pkgs/tile-0.8.2/doc/separator.n +30 -0
  97. data/pkgs/tile-0.8.2/doc/sizegrip.n +53 -0
  98. data/pkgs/tile-0.8.2/doc/style.n +119 -0
  99. data/pkgs/tile-0.8.2/doc/tile-intro.n +165 -0
  100. data/pkgs/tile-0.8.2/doc/tmml.options +4 -0
  101. data/pkgs/tile-0.8.2/doc/treeview.n +415 -0
  102. data/pkgs/tile-0.8.2/doc/widget.n +227 -0
  103. data/pkgs/tile-0.8.2/doc/xml/Geometry.tmml +379 -0
  104. data/pkgs/tile-0.8.2/doc/xml/INDEX.MAP +153 -0
  105. data/pkgs/tile-0.8.2/doc/xml/Theme.tmml +63 -0
  106. data/pkgs/tile-0.8.2/doc/xml/button.tmml +134 -0
  107. data/pkgs/tile-0.8.2/doc/xml/checkbutton.tmml +119 -0
  108. data/pkgs/tile-0.8.2/doc/xml/combobox.tmml +184 -0
  109. data/pkgs/tile-0.8.2/doc/xml/dialog.tmml +195 -0
  110. data/pkgs/tile-0.8.2/doc/xml/entry.tmml +630 -0
  111. data/pkgs/tile-0.8.2/doc/xml/frame.tmml +98 -0
  112. data/pkgs/tile-0.8.2/doc/xml/image.tmml +101 -0
  113. data/pkgs/tile-0.8.2/doc/xml/label.tmml +154 -0
  114. data/pkgs/tile-0.8.2/doc/xml/labelframe.tmml +116 -0
  115. data/pkgs/tile-0.8.2/doc/xml/menubutton.tmml +80 -0
  116. data/pkgs/tile-0.8.2/doc/xml/notebook.tmml +306 -0
  117. data/pkgs/tile-0.8.2/doc/xml/paned.tmml +154 -0
  118. data/pkgs/tile-0.8.2/doc/xml/progressbar.tmml +151 -0
  119. data/pkgs/tile-0.8.2/doc/xml/radiobutton.tmml +109 -0
  120. data/pkgs/tile-0.8.2/doc/xml/scrollbar.tmml +233 -0
  121. data/pkgs/tile-0.8.2/doc/xml/separator.tmml +59 -0
  122. data/pkgs/tile-0.8.2/doc/xml/sizegrip.tmml +82 -0
  123. data/pkgs/tile-0.8.2/doc/xml/style.tmml +171 -0
  124. data/pkgs/tile-0.8.2/doc/xml/tile-intro.tmml +192 -0
  125. data/pkgs/tile-0.8.2/doc/xml/treeview.tmml +604 -0
  126. data/pkgs/tile-0.8.2/doc/xml/widget.tmml +372 -0
  127. data/pkgs/tile-0.8.2/entry.o +0 -0
  128. data/pkgs/tile-0.8.2/frame.o +0 -0
  129. data/pkgs/tile-0.8.2/generic/Makefile.in +221 -0
  130. data/pkgs/tile-0.8.2/generic/TODO +493 -0
  131. data/pkgs/tile-0.8.2/generic/altTheme.c +1172 -0
  132. data/pkgs/tile-0.8.2/generic/blink.c +168 -0
  133. data/pkgs/tile-0.8.2/generic/button.c +858 -0
  134. data/pkgs/tile-0.8.2/generic/cache.c +354 -0
  135. data/pkgs/tile-0.8.2/generic/clamTheme.c +974 -0
  136. data/pkgs/tile-0.8.2/generic/classicTheme.c +518 -0
  137. data/pkgs/tile-0.8.2/generic/configure +10334 -0
  138. data/pkgs/tile-0.8.2/generic/configure.in +100 -0
  139. data/pkgs/tile-0.8.2/generic/entry.c +1922 -0
  140. data/pkgs/tile-0.8.2/generic/frame.c +648 -0
  141. data/pkgs/tile-0.8.2/generic/gunk.h +44 -0
  142. data/pkgs/tile-0.8.2/generic/image.c +416 -0
  143. data/pkgs/tile-0.8.2/generic/label.c +663 -0
  144. data/pkgs/tile-0.8.2/generic/layout.c +1215 -0
  145. data/pkgs/tile-0.8.2/generic/manager.c +554 -0
  146. data/pkgs/tile-0.8.2/generic/manager.h +91 -0
  147. data/pkgs/tile-0.8.2/generic/notebook.c +1380 -0
  148. data/pkgs/tile-0.8.2/generic/paned.c +958 -0
  149. data/pkgs/tile-0.8.2/generic/pkgIndex.tcl.in +7 -0
  150. data/pkgs/tile-0.8.2/generic/progress.c +549 -0
  151. data/pkgs/tile-0.8.2/generic/scale.c +526 -0
  152. data/pkgs/tile-0.8.2/generic/scroll.c +253 -0
  153. data/pkgs/tile-0.8.2/generic/scrollbar.c +346 -0
  154. data/pkgs/tile-0.8.2/generic/separator.c +132 -0
  155. data/pkgs/tile-0.8.2/generic/square.c +306 -0
  156. data/pkgs/tile-0.8.2/generic/tagset.c +147 -0
  157. data/pkgs/tile-0.8.2/generic/tile.c +296 -0
  158. data/pkgs/tile-0.8.2/generic/tkElements.c +1280 -0
  159. data/pkgs/tile-0.8.2/generic/tkTheme.c +1708 -0
  160. data/pkgs/tile-0.8.2/generic/tkTheme.h +419 -0
  161. data/pkgs/tile-0.8.2/generic/tkThemeInt.h +45 -0
  162. data/pkgs/tile-0.8.2/generic/tkstate.c +268 -0
  163. data/pkgs/tile-0.8.2/generic/trace.c +145 -0
  164. data/pkgs/tile-0.8.2/generic/track.c +174 -0
  165. data/pkgs/tile-0.8.2/generic/treeview.c +3211 -0
  166. data/pkgs/tile-0.8.2/generic/ttk.decls +154 -0
  167. data/pkgs/tile-0.8.2/generic/ttkDecls.h +340 -0
  168. data/pkgs/tile-0.8.2/generic/ttkStubInit.c +61 -0
  169. data/pkgs/tile-0.8.2/generic/ttkStubLib.c +70 -0
  170. data/pkgs/tile-0.8.2/generic/widget.c +785 -0
  171. data/pkgs/tile-0.8.2/generic/widget.h +263 -0
  172. data/pkgs/tile-0.8.2/image.o +0 -0
  173. data/pkgs/tile-0.8.2/label.o +0 -0
  174. data/pkgs/tile-0.8.2/layout.o +0 -0
  175. data/pkgs/tile-0.8.2/library/altTheme.tcl +101 -0
  176. data/pkgs/tile-0.8.2/library/aquaTheme.tcl +62 -0
  177. data/pkgs/tile-0.8.2/library/button.tcl +85 -0
  178. data/pkgs/tile-0.8.2/library/clamTheme.tcl +139 -0
  179. data/pkgs/tile-0.8.2/library/classicTheme.tcl +108 -0
  180. data/pkgs/tile-0.8.2/library/combobox.tcl +439 -0
  181. data/pkgs/tile-0.8.2/library/cursors.tcl +36 -0
  182. data/pkgs/tile-0.8.2/library/defaults.tcl +118 -0
  183. data/pkgs/tile-0.8.2/library/dialog.tcl +274 -0
  184. data/pkgs/tile-0.8.2/library/entry.tcl +580 -0
  185. data/pkgs/tile-0.8.2/library/fonts.tcl +153 -0
  186. data/pkgs/tile-0.8.2/library/icons.tcl +105 -0
  187. data/pkgs/tile-0.8.2/library/keynav.tcl +192 -0
  188. data/pkgs/tile-0.8.2/library/menubutton.tcl +171 -0
  189. data/pkgs/tile-0.8.2/library/notebook.tcl +193 -0
  190. data/pkgs/tile-0.8.2/library/paned.tcl +87 -0
  191. data/pkgs/tile-0.8.2/library/progress.tcl +51 -0
  192. data/pkgs/tile-0.8.2/library/scale.tcl +54 -0
  193. data/pkgs/tile-0.8.2/library/scrollbar.tcl +125 -0
  194. data/pkgs/tile-0.8.2/library/sizegrip.tcl +77 -0
  195. data/pkgs/tile-0.8.2/library/tile.tcl +211 -0
  196. data/pkgs/tile-0.8.2/library/treeview.tcl +382 -0
  197. data/pkgs/tile-0.8.2/library/utils.tcl +254 -0
  198. data/pkgs/tile-0.8.2/library/winTheme.tcl +77 -0
  199. data/pkgs/tile-0.8.2/library/xpTheme.tcl +63 -0
  200. data/pkgs/tile-0.8.2/libtile0.8.2.so +0 -0
  201. data/pkgs/tile-0.8.2/libttkstub.a +0 -0
  202. data/pkgs/tile-0.8.2/license.terms +24 -0
  203. data/pkgs/tile-0.8.2/macosx/aquaTheme.c +1076 -0
  204. data/pkgs/tile-0.8.2/manager.o +0 -0
  205. data/pkgs/tile-0.8.2/notebook.o +0 -0
  206. data/pkgs/tile-0.8.2/paned.o +0 -0
  207. data/pkgs/tile-0.8.2/pkgIndex.tcl +3 -0
  208. data/pkgs/tile-0.8.2/progress.o +0 -0
  209. data/pkgs/tile-0.8.2/scale.o +0 -0
  210. data/pkgs/tile-0.8.2/scroll.o +0 -0
  211. data/pkgs/tile-0.8.2/scrollbar.o +0 -0
  212. data/pkgs/tile-0.8.2/separator.o +0 -0
  213. data/pkgs/tile-0.8.2/tagset.o +0 -0
  214. data/pkgs/tile-0.8.2/tclconfig/install-sh +119 -0
  215. data/pkgs/tile-0.8.2/tclconfig/tcl.m4 +4069 -0
  216. data/pkgs/tile-0.8.2/tclconfig/teax.m4 +109 -0
  217. data/pkgs/tile-0.8.2/tests/all.tcl +18 -0
  218. data/pkgs/tile-0.8.2/tests/bwidget.test +103 -0
  219. data/pkgs/tile-0.8.2/tests/cbtest.tcl +125 -0
  220. data/pkgs/tile-0.8.2/tests/combobox.test +51 -0
  221. data/pkgs/tile-0.8.2/tests/compound.tcl +92 -0
  222. data/pkgs/tile-0.8.2/tests/entry.test +285 -0
  223. data/pkgs/tile-0.8.2/tests/entrytest.tcl +78 -0
  224. data/pkgs/tile-0.8.2/tests/image.test +94 -0
  225. data/pkgs/tile-0.8.2/tests/labelframe.tcl +41 -0
  226. data/pkgs/tile-0.8.2/tests/labelframe.test +137 -0
  227. data/pkgs/tile-0.8.2/tests/layout.test +33 -0
  228. data/pkgs/tile-0.8.2/tests/misc.test +35 -0
  229. data/pkgs/tile-0.8.2/tests/nbtest.tcl +66 -0
  230. data/pkgs/tile-0.8.2/tests/notebook.test +500 -0
  231. data/pkgs/tile-0.8.2/tests/paned.test +298 -0
  232. data/pkgs/tile-0.8.2/tests/progress.test +92 -0
  233. data/pkgs/tile-0.8.2/tests/pwtest.tcl +90 -0
  234. data/pkgs/tile-0.8.2/tests/sbtest.tcl +79 -0
  235. data/pkgs/tile-0.8.2/tests/scrollbar.test +77 -0
  236. data/pkgs/tile-0.8.2/tests/sgtest.tcl +52 -0
  237. data/pkgs/tile-0.8.2/tests/testutils.tcl +20 -0
  238. data/pkgs/tile-0.8.2/tests/tile.test +674 -0
  239. data/pkgs/tile-0.8.2/tests/treetags.test +78 -0
  240. data/pkgs/tile-0.8.2/tests/treeview.test +563 -0
  241. data/pkgs/tile-0.8.2/tests/tvtest.tcl +332 -0
  242. data/pkgs/tile-0.8.2/tests/validate.test +278 -0
  243. data/pkgs/tile-0.8.2/tile.o +0 -0
  244. data/pkgs/tile-0.8.2/tkElements.o +0 -0
  245. data/pkgs/tile-0.8.2/tkTheme.o +0 -0
  246. data/pkgs/tile-0.8.2/tkstate.o +0 -0
  247. data/pkgs/tile-0.8.2/tools/genStubs.tcl +861 -0
  248. data/pkgs/tile-0.8.2/trace.o +0 -0
  249. data/pkgs/tile-0.8.2/track.o +0 -0
  250. data/pkgs/tile-0.8.2/treeview.o +0 -0
  251. data/pkgs/tile-0.8.2/ttkStubInit.o +0 -0
  252. data/pkgs/tile-0.8.2/ttkStubLib.o +0 -0
  253. data/pkgs/tile-0.8.2/widget.o +0 -0
  254. data/pkgs/tile-0.8.2/win/Tile.dsp +261 -0
  255. data/pkgs/tile-0.8.2/win/makefile.vc +527 -0
  256. data/pkgs/tile-0.8.2/win/monitor.c +164 -0
  257. data/pkgs/tile-0.8.2/win/nmakehlp.c +483 -0
  258. data/pkgs/tile-0.8.2/win/rules.vc +512 -0
  259. data/pkgs/tile-0.8.2/win/tile.rc +40 -0
  260. data/pkgs/tile-0.8.2/win/winTheme.c +734 -0
  261. data/pkgs/tile-0.8.2/win/xpTheme.c +1029 -0
  262. data/spec/app_spec.rb +48 -0
  263. data/spec/customer_spec.rb +31 -0
  264. data/spec/fixtures/graph.expectation +18 -0
  265. data/spec/payment_spec.rb +19 -0
  266. data/spec/pratt_spec.rb +148 -0
  267. data/spec/project_spec.rb +163 -0
  268. data/spec/rcov.opts +0 -0
  269. data/spec/spec.opts +1 -0
  270. data/spec/spec_helper.rb +21 -0
  271. data/spec/whence_spec.rb +54 -0
  272. data/tasks/pratt.rb +84 -0
  273. data/templates/model.eruby +12 -0
  274. data/templates/spec.eruby +8 -0
  275. data/views/env.rb +22 -0
  276. data/views/graph.eruby +20 -0
  277. data/views/invoice.eruby +148 -0
  278. data/views/main.rb +92 -0
  279. data/views/pid.eruby +3 -0
  280. data/views/pop.rb +94 -0
  281. data/views/pop2.rb +75 -0
  282. data/views/raw.eruby +11 -0
  283. metadata +390 -0
@@ -0,0 +1,184 @@
1
+ <manpage cat="cmd" id="combobox" title="combobox" version="0.4">
2
+ <!-- This file was automatically generated. DO NOT EDIT (yet)! -->
3
+ <!--
4
+ Copyright (c) 2004 Joe English
5
+ -->
6
+ <?TROFF.TH title="combobox" section="n" date="0.4" source="tile" manual="Tile Widget Set" ?>
7
+ <namesection>
8
+ <name>ttk::combobox</name>
9
+ <desc>text field with popdown selection list</desc>
10
+ </namesection>
11
+ <synopsis>
12
+ <syntax>
13
+ <b>ttk::combobox</b> <m>pathName</m> ?<m>options</m>?
14
+ </syntax>
15
+ </synopsis>
16
+ <section>
17
+ <title>STANDARD OPTIONS</title>
18
+ <sl cat="stdopt" cols="4">
19
+ <li>-class</li>
20
+ <li>-cursor</li>
21
+ <li>-style</li>
22
+ <li>-takefocus</li>
23
+ </sl>
24
+ </section>
25
+ <section>
26
+ <title>OPTIONS</title>
27
+ <optionlist>
28
+ <optiondef>
29
+ <name>-exportselection</name>
30
+ <dbname>exportSelection</dbname>
31
+ <dbclass>ExportSelection</dbclass>
32
+ <desc>Boolean value.
33
+ If set, the widget selection is linked to the X selection.
34
+ </desc>
35
+ </optiondef>
36
+ <optiondef>
37
+ <name>-justify</name>
38
+ <dbname>justify</dbname>
39
+ <dbclass>Justify</dbclass>
40
+ <desc>Specifies how the text is aligned within the widget.
41
+ One of <b>left</b>, <b>center</b>, or <b>right</b>.
42
+ </desc>
43
+ </optiondef>
44
+ <optiondef>
45
+ <name>-height</name>
46
+ <dbname>height</dbname>
47
+ <dbclass>Height</dbclass>
48
+ <desc>Specifies the height of the pop-down listbox, in rows.
49
+ </desc>
50
+ </optiondef>
51
+ <optiondef>
52
+ <name>-postcommand</name>
53
+ <dbname>postCommand</dbname>
54
+ <dbclass>PostCommand</dbclass>
55
+ <desc>A Tcl script to evaluate immediately before displaying the listbox.
56
+ The <b>-postcommand</b> script may specify the <b>-values</b> to display.
57
+ </desc>
58
+ </optiondef>
59
+ <optiondef>
60
+ <name>-state</name>
61
+ <dbname>state</dbname>
62
+ <dbclass>State</dbclass>
63
+ <desc>One of <b>normal</b>, <b>readonly</b>, or <b>disabled</b>.
64
+ In the <b>readonly</b> state,
65
+ the value may not be edited directly, and
66
+ the user can only select one of the <b>-values</b> from the
67
+ dropdown list.
68
+ In the <b>normal</b> state,
69
+ the text field is directly editable.
70
+ In the <b>disabled</b> state, no interaction is possible.
71
+ </desc>
72
+ </optiondef>
73
+ <optiondef>
74
+ <name>-textvariable</name>
75
+ <dbname>textVariable</dbname>
76
+ <dbclass>TextVariable</dbclass>
77
+ <desc>Specifies the name of a variable whose value is linked
78
+ to the widget value.
79
+ Whenever the variable changes value the widget value is updated,
80
+ and vice versa.
81
+ </desc>
82
+ </optiondef>
83
+ <optiondef>
84
+ <name>-values</name>
85
+ <dbname>values</dbname>
86
+ <dbclass>Values</dbclass>
87
+ <desc>Specifies the list of values to display in the drop-down listbox.
88
+ </desc>
89
+ </optiondef>
90
+ <optiondef>
91
+ <name>-width</name>
92
+ <dbname>width</dbname>
93
+ <dbclass>Width</dbclass>
94
+ <desc>Specifies an integer value indicating the desired width of the entry window,
95
+ in average-size characters of the widget's font.
96
+ </desc>
97
+ </optiondef>
98
+ </optionlist>
99
+ </section>
100
+ <section>
101
+ <title>DESCRIPTION</title>
102
+ <p>A combobox combines a text field with a pop-down list of values;
103
+ the user may select the value of the text field from among the
104
+ values in the list.
105
+ </p>
106
+ </section>
107
+ <section>
108
+ <title>WIDGET COMMAND</title>
109
+ <dl>
110
+ <dle>
111
+ <dt><m>pathName</m> <b>cget</b> <m>option</m></dt>
112
+ <dd>Returns the current value of the specified <i>option</i>.
113
+ See <i>widget(n)</i>.
114
+ </dd>
115
+ </dle>
116
+ <dle>
117
+ <dt><m>pathName</m> <b>configure</b> ?<m>option</m>? ?<m>value option value ...</m>?</dt>
118
+ <dd>Modify or query widget options.
119
+ See <i>widget(n)</i>.
120
+ </dd>
121
+ </dle>
122
+ <dle>
123
+ <dt><m>pathName</m> <b>current</b> ?<m>newIndex</m>?</dt>
124
+ <dd>If <i>newIndex</i> is supplied, sets the combobox value
125
+ to the element at position <i>newIndex</i> in the list of <b>-values</b>.
126
+ Otherwise, returns the index of the current value in the list of <b>-values</b>
127
+ or <b>-1</b> if the current value does not appear in the list.
128
+ </dd>
129
+ </dle>
130
+ <dle>
131
+ <dt><m>pathName</m> <b>get</b></dt>
132
+ <dd>Returns the current value of the combobox.
133
+ </dd>
134
+ </dle>
135
+ <dle>
136
+ <dt><m>pathName</m> <b>identify</b> <m>x y</m></dt>
137
+ <dd>Returns the name of the element at position <i>x</i>, <i>y</i>,
138
+ or the empty string if the coordinates are outside the window.
139
+ </dd>
140
+ </dle>
141
+ <dle>
142
+ <dt><m>pathName</m> <b>instate</b> <m>statespec</m> ?<m>script</m>?</dt>
143
+ <dd>Test the widget state.
144
+ See <i>widget(n)</i>.
145
+ </dd>
146
+ </dle>
147
+ <dle>
148
+ <dt><m>pathName</m> <b>set</b> <m>value</m></dt>
149
+ <dd>Sets the value of the combobox to <i>value</i>.
150
+ </dd>
151
+ </dle>
152
+ <dle>
153
+ <dt><m>pathName</m> <b>state</b> ?<m>stateSpec</m>?</dt>
154
+ <dd>Modify or query the widget state.
155
+ See <i>widget(n)</i>.
156
+ </dd>
157
+ </dle>
158
+ </dl>
159
+ <p>The combobox widget also supports the following <i>entry</i>
160
+ widget commands (see <i>entry(n)</i> for details):
161
+ </p>
162
+ <?TABSTOPS 5.5c 11c?>
163
+ <sl cols="3">
164
+ <li>bbox</li>
165
+ <li>delete</li>
166
+ <li>icursor</li>
167
+ <li>index</li>
168
+ <li>insert</li>
169
+ <li>selection</li>
170
+ <li>xview</li>
171
+ </sl>
172
+ </section>
173
+ <section>
174
+ <title>VIRTUAL EVENTS</title>
175
+ <p>The combobox widget generates a <b>&lt;&lt;ComboboxSelected&gt;&gt;</b> virtual event
176
+ when the user selects an element from the list of values.
177
+ This event is generated after the listbox is unposted.
178
+ </p>
179
+ </section>
180
+ <seealso>
181
+ <ref>widget(n)</ref>
182
+ <ref>entry(n)</ref>
183
+ </seealso>
184
+ </manpage>
@@ -0,0 +1,195 @@
1
+ <manpage cat="cmd" id="dialog" title="dialog" version="0.8">
2
+ <!-- This file was automatically generated. DO NOT EDIT (yet)! -->
3
+ <!--
4
+ Copyright (c) 2005 Joe English
5
+ -->
6
+ <?TROFF.TH title="dialog" section="n" date="0.8" source="tile" manual="Tile Widget Set" ?>
7
+ <namesection>
8
+ <name>ttk::dialog</name>
9
+ <desc>create a dialog box</desc>
10
+ </namesection>
11
+ <synopsis>
12
+ <syntax>
13
+ <b>package require ttk::dialog</b> ?<m>0.8</m>?
14
+
15
+ <b>ttk::dialog</b> <m>pathname</m> ?<m>options...</m>?
16
+ <b>ttk::dialog::define</b> <m>dialogType</m> ?<m>options...</m>?
17
+ </syntax>
18
+ </synopsis>
19
+ <section>
20
+ <title>DESCRIPTION</title>
21
+ <p>A dialog box is a transient top-level window
22
+ containing an icon, a short message, an optional, longer, detail message,
23
+ and a row of command buttons.
24
+ When the user presses any of the buttons,
25
+ a callback function is invoked
26
+ and then the dialog is destroyed.
27
+ </p>
28
+ <p>Additional widgets may be added in the dialog <i>client frame</i>.
29
+ </p>
30
+ </section>
31
+ <section>
32
+ <title>OPTIONS</title>
33
+ <optionlist>
34
+ <optiondef>
35
+ <name>-title</name>
36
+ <dbname>n/a</dbname>
37
+ <dbclass>n/a</dbclass>
38
+ <desc>Specifies a string to use as the window manager title.
39
+ </desc>
40
+ </optiondef>
41
+ <optiondef>
42
+ <name>-message</name>
43
+ <dbname>n/a</dbname>
44
+ <dbclass>n/a</dbclass>
45
+ <desc>Specifies the message to display in this dialog.
46
+ </desc>
47
+ </optiondef>
48
+ <optiondef>
49
+ <name>-detail</name>
50
+ <dbname>n/a</dbname>
51
+ <dbclass>n/a</dbclass>
52
+ <desc>Specifies a longer auxiliary message.
53
+ </desc>
54
+ </optiondef>
55
+ <optiondef>
56
+ <name>-command</name>
57
+ <dbname>n/a</dbname>
58
+ <dbclass>n/a</dbclass>
59
+ <desc>Specifies a command prefix to be invoked when the user presses
60
+ one of the command buttons.
61
+ The symbolic name of the button is passed as an additional argument
62
+ to the command.
63
+ The dialog is dismissed after invoking the command.
64
+ </desc>
65
+ </optiondef>
66
+ <optiondef>
67
+ <name>-parent</name>
68
+ <dbname>n/a</dbname>
69
+ <dbclass>n/a</dbclass>
70
+ <desc>Specifies a toplevel window for which the dialog is transient.
71
+ If omitted, the default is the nearest ancestor toplevel.
72
+ If set to the empty string, the dialog will not be a transient window.
73
+ </desc>
74
+ </optiondef>
75
+ <optiondef>
76
+ <name>-type</name>
77
+ <dbname>n/a</dbname>
78
+ <dbclass>n/a</dbclass>
79
+ <desc>Specifies a built-in or user-defined dialog type.
80
+ See <ref refid="predefined-dialog-types">PREDEFINED DIALOG TYPES</ref>, below.
81
+ </desc>
82
+ </optiondef>
83
+ <optiondef>
84
+ <name>-icon</name>
85
+ <dbname>n/a</dbname>
86
+ <dbclass>n/a</dbclass>
87
+ <desc>Specifies one of the stock dialog icons,
88
+ <b cat="AMBIGUOUS ambiguous cmd">info</b>, <b>question</b>, <b>warning</b>, <b cat="AMBIGUOUS ambiguous cmd">error</b>,
89
+ <b>auth</b>, or <b>busy</b>.
90
+ If set to the empty string (the default), no icon is displayed.
91
+ </desc>
92
+ </optiondef>
93
+ <optiondef>
94
+ <name>-buttons</name>
95
+ <dbname>n/a</dbname>
96
+ <dbclass>n/a</dbclass>
97
+ <desc>A list of symbolic button names.
98
+ </desc>
99
+ </optiondef>
100
+ <optiondef>
101
+ <name>-labels</name>
102
+ <dbname>n/a</dbname>
103
+ <dbclass>n/a</dbclass>
104
+ <desc>A dictionary mapping symbolic button names to textual labels.
105
+ May be omitted if all the buttons are predefined.
106
+ </desc>
107
+ </optiondef>
108
+ <optiondef>
109
+ <name>-default</name>
110
+ <dbname>n/a</dbname>
111
+ <dbclass>n/a</dbclass>
112
+ <desc>The symbolic name of the default button.
113
+ </desc>
114
+ </optiondef>
115
+ <optiondef>
116
+ <name>-cancel</name>
117
+ <dbname>n/a</dbname>
118
+ <dbclass>n/a</dbclass>
119
+ <desc>The symbolic name of the "cancel" button.
120
+ The cancel button is invoked if the user presses the Escape key
121
+ and when the dialog is closed from the window manager.
122
+ If <b>-cancel</b> is not specified,
123
+ the dialog ignores window manager close commands (WM_DELETE_WINDOW).
124
+ </desc>
125
+ </optiondef>
126
+ </optionlist>
127
+ </section>
128
+ <section>
129
+ <title>WIDGET COMMANDS</title>
130
+ <dl>
131
+ <dle>
132
+ <dt><b>ttk::dialog::clientframe</b> <m>dlg</m></dt>
133
+ <dd>Returns the widget path of the client frame.
134
+ Other widgets may be added to the client frame.
135
+ The client frame appears between the detail message and the command buttons.
136
+ </dd>
137
+ </dle>
138
+ </dl>
139
+ </section>
140
+ <section id="predefined-dialog-types">
141
+ <title>PREDEFINED DIALOG TYPES</title>
142
+ <p>The <b>-type</b> option, if present, specifies default values
143
+ for other options. <b>ttk::dialog::define</b> <i>type options...</i>
144
+ specifies a new stock dialog <i>type</i>.
145
+ The following stock dialog types are predefined:
146
+ </p>
147
+ <example>
148
+ ttk::dialog::define ok \
149
+ -icon info -buttons {ok} -default ok
150
+ ttk::dialog::define okcancel \
151
+ -icon info -buttons {ok cancel} -default ok -cancel cancel
152
+ ttk::dialog::define yesno \
153
+ -icon question -buttons {yes no}
154
+ ttk::dialog::define yesnocancel \
155
+ -icon question -buttons {yes no cancel} -cancel cancel
156
+ ttk::dialog::define retrycancel \
157
+ -icon question -buttons {retry cancel} -cancel cancel
158
+ </example>
159
+ </section>
160
+ <section>
161
+ <title>STOCK BUTTONS</title>
162
+ <p>The following ``stock'' symbolic button names have predefined labels:
163
+ <b>yes</b>, <b>no</b>, <b>ok</b>, <b>cancel</b>, and <b>retry</b>.
164
+ </p>
165
+ <p>It is not necessary to list these in the <b>-labels</b> dictionary.
166
+ </p>
167
+ </section>
168
+ <section>
169
+ <title>EXAMPLE</title>
170
+ <example>
171
+ proc saveFileComplete {button} {
172
+ switch -- $button {
173
+ yes { # save file ... }
174
+ no { exit }
175
+ cancel { # no-op }
176
+ }
177
+ }
178
+
179
+ ttk::dialog .saveFileDialog \
180
+ -title "Save file?" \
181
+ -icon question \
182
+ -message "Save file before closing?" \
183
+ -detail "If you do not save the file, your work will be lost" \
184
+ -buttons [list yes no cancel] \
185
+ -labels [list yes "Save file" no "Don't save"] \
186
+ -command saveFileComplete \
187
+ ;
188
+ </example>
189
+ </section>
190
+ <seealso>
191
+ <ref>tk_messageBox(n)</ref>
192
+ <ref>wm(n)</ref>
193
+ <ref>toplevel(n)</ref>
194
+ </seealso>
195
+ </manpage>
@@ -0,0 +1,630 @@
1
+ <manpage cat="widget" id="entry" title="entry" version="0.4">
2
+ <!-- This file was automatically generated. DO NOT EDIT (yet)! -->
3
+ <!--
4
+ SOURCE: entry.n, r1.12
5
+
6
+ Copyright (c) 1990-1994 The Regents of the University of California.
7
+ Copyright (c) 1994-1996 Sun Microsystems, Inc.
8
+ Copyright (c) 1998-2000 Scriptics Corporation.
9
+ Copyright (c) 2004 Joe English
10
+
11
+ See the file "license.terms" for information on usage and redistribution
12
+ of this file, and for a DISCLAIMER OF ALL WARRANTIES.
13
+ -->
14
+ <?TROFF.TH title="entry" section="n" date="0.4" source="tile" manual="Tile Widget Set" ?>
15
+ <namesection>
16
+ <name>ttk::entry</name>
17
+ <desc>Editable text field widget</desc>
18
+ </namesection>
19
+ <synopsis>
20
+ <syntax>
21
+ <b>ttk::entry</b> <m>pathName</m> ?<m>options</m>?
22
+ </syntax>
23
+ </synopsis>
24
+ <section>
25
+ <title>DESCRIPTION</title>
26
+ <p>An <b cat="AMBIGUOUS widget cmd">entry</b> widget displays a one-line text string and
27
+ allows that string to be edited by the user.
28
+ The value of the string may be linked to a Tcl variable
29
+ with the <b>-textvariable</b> option.
30
+ Entry widgets support horizontal scrolling with the
31
+ standard <b>-xscrollcommand</b> option and <b>xview</b> widget command.
32
+ </p>
33
+ </section>
34
+ <section>
35
+ <title>STANDARD OPTIONS</title>
36
+ <sl cat="stdopt" cols="4">
37
+ <li>-class</li>
38
+ <li>-cursor</li>
39
+ <li>-style</li>
40
+ <li>-takefocus</li>
41
+ <li>-xscrollcommand</li>
42
+ </sl>
43
+ </section>
44
+ <section>
45
+ <title>WIDGET-SPECIFIC OPTIONS</title>
46
+ <optionlist>
47
+ <optiondef>
48
+ <name>-exportselection</name>
49
+ <dbname>exportSelection</dbname>
50
+ <dbclass>ExportSelection</dbclass>
51
+ <desc>A boolean value specifying whether or not
52
+ a selection in the widget should be linked to the X selection.
53
+ If the selection is exported, then selecting in the widget deselects
54
+ the current X selection, selecting outside the widget deselects any
55
+ widget selection, and the widget will respond to selection retrieval
56
+ requests when it has a selection.
57
+ </desc>
58
+ </optiondef>
59
+ <optiondef>
60
+ <name>-invalidcommand</name>
61
+ <dbname>invalidCommand</dbname>
62
+ <dbclass>InvalidCommand</dbclass>
63
+ <desc>A script template to evaluate whenever the <b>validateCommand</b> returns 0.
64
+ See <ref refid="validation">VALIDATION</ref> below for more information.
65
+ </desc>
66
+ </optiondef>
67
+ <optiondef>
68
+ <name>-justify</name>
69
+ <dbname>justify</dbname>
70
+ <dbclass>Justify</dbclass>
71
+ <desc>Specifies how the text is aligned within the entry widget.
72
+ One of <b>left</b>, <b>center</b>, or <b>right</b>.
73
+ </desc>
74
+ </optiondef>
75
+ <optiondef>
76
+ <name>-show</name>
77
+ <dbname>show</dbname>
78
+ <dbclass>Show</dbclass>
79
+ <desc>If this option is specified, then the true contents of the entry
80
+ are not displayed in the window.
81
+ Instead, each character in the entry's value will be displayed as
82
+ the first character in the value of this option, such as ``*''.
83
+ This is useful, for example, if the entry is to be used to enter
84
+ a password.
85
+ If characters in the entry are selected and copied elsewhere, the
86
+ information copied will be what is displayed, not the true contents
87
+ of the entry.
88
+ </desc>
89
+ </optiondef>
90
+ <optiondef>
91
+ <name>-state</name>
92
+ <dbname>state</dbname>
93
+ <dbclass>State</dbclass>
94
+ <desc>Compatibility option; see <b>widget(n)</b> for details.
95
+ Specifies one of three states for the entry,
96
+ <b>normal</b>, <b>disabled</b>, or <b>readonly</b>.
97
+ See <ref refid="widget-states">WIDGET STATES</ref>, below.
98
+ </desc>
99
+ </optiondef>
100
+ <optiondef>
101
+ <name>-textvariable</name>
102
+ <dbname>textVariable</dbname>
103
+ <dbclass>Variable</dbclass>
104
+ <desc>Specifies the name of a variable whose value is linked
105
+ to the entry widget's contents.
106
+ Whenever the variable changes value, the widget's contents are updated,
107
+ and vice versa.
108
+ </desc>
109
+ </optiondef>
110
+ <optiondef>
111
+ <name>-validate</name>
112
+ <dbname>validate</dbname>
113
+ <dbclass>Validate</dbclass>
114
+ <desc>Specifies the mode in which validation should operate:
115
+ <b>none</b>, <cmd>focus</cmd>, <b>focusin</b>, <b>focusout</b>, <b>key</b>, or <b>all</b>.
116
+ Default is <b>none</b>, meaning that validation is disabled.
117
+ See <ref refid="validation">VALIDATION</ref> below.
118
+ </desc>
119
+ </optiondef>
120
+ <optiondef>
121
+ <name>-validatecommand</name>
122
+ <dbname>validateCommand</dbname>
123
+ <dbclass>ValidateCommand</dbclass>
124
+ <desc>A script template to evaluate whenever validation is triggered.
125
+ If set to the empty string (the default), validation is disabled.
126
+ The script must return a boolean value.
127
+ See <ref refid="validation">VALIDATION</ref> below.
128
+ </desc>
129
+ </optiondef>
130
+ <optiondef>
131
+ <name>-width</name>
132
+ <dbname>width</dbname>
133
+ <dbclass>Width</dbclass>
134
+ <desc>Specifies an integer value indicating the desired width of the entry window,
135
+ in average-size characters of the widget's font.
136
+ </desc>
137
+ </optiondef>
138
+ </optionlist>
139
+ </section>
140
+ <section>
141
+ <title>NOTES</title>
142
+ <p>A portion of the entry may be selected as described below.
143
+ If an entry is exporting its selection (see the <b>exportSelection</b>
144
+ option), then it will observe the standard X11 protocols for handling the
145
+ selection; entry selections are available as type <b>STRING</b>.
146
+ Entries also observe the standard Tk rules for dealing with the
147
+ input focus. When an entry has the input focus it displays an
148
+ <i>insert cursor</i> to indicate where new characters will be
149
+ inserted.
150
+ </p>
151
+ <p>Entries are capable of displaying strings that are too long to
152
+ fit entirely within the widget's window. In this case, only a
153
+ portion of the string will be displayed; commands described below
154
+ may be used to change the view in the window. Entries use
155
+ the standard <b>xScrollCommand</b> mechanism for interacting with
156
+ scrollbars (see the description of the <b>xScrollCommand</b> option
157
+ for details).
158
+ </p>
159
+ </section>
160
+ <section>
161
+ <title>INDICES</title>
162
+ <p>Many of the <b cat="AMBIGUOUS widget cmd">entry</b> widget commands take one or more indices as
163
+ arguments. An index specifies a particular character in the entry's
164
+ string, in any of the following ways:
165
+ </p>
166
+ <dl>
167
+ <dle>
168
+ <dt><m>number</m></dt>
169
+ <dd>Specifies the character as a numerical index, where 0 corresponds
170
+ to the first character in the string.
171
+ </dd>
172
+ </dle>
173
+ <dle>
174
+ <dt><b>@</b><m>number</m></dt>
175
+ <dd>In this form, <i>number</i> is treated as an x-coordinate in the
176
+ entry's window; the character spanning that x-coordinate is used.
177
+ For example, ``<b>@0</b>'' indicates the left-most character in the
178
+ window.
179
+ </dd>
180
+ </dle>
181
+ <dle>
182
+ <dt><b>end</b></dt>
183
+ <dd>Indicates the character just after the last one in the entry's string.
184
+ This is equivalent to specifying a numerical index equal to the length
185
+ of the entry's string.
186
+ </dd>
187
+ </dle>
188
+ <dle>
189
+ <dt><b>insert</b></dt>
190
+ <dd>Indicates the character adjacent to and immediately following the
191
+ insert cursor.
192
+ </dd>
193
+ </dle>
194
+ <dle>
195
+ <dt><b>sel.first</b></dt>
196
+ <dd>Indicates the first character in the selection. It is an error to
197
+ use this form if the selection isn't in the entry window.
198
+ </dd>
199
+ </dle>
200
+ <dle>
201
+ <dt><b>sel.last</b></dt>
202
+ <dd>Indicates the character just after the last one in the selection.
203
+ It is an error to use this form if the selection isn't in the
204
+ entry window.
205
+ </dd>
206
+ </dle>
207
+ </dl>
208
+ <p>Abbreviations may be used for any of the forms above, e.g. ``<b>e</b>''
209
+ or ``<b>sel.f</b>''. In general, out-of-range indices are automatically
210
+ rounded to the nearest legal value.
211
+ </p>
212
+ </section>
213
+ <section>
214
+ <title>WIDGET COMMAND</title>
215
+ <p>The following commands are possible for entry widgets:
216
+ </p>
217
+ <dl>
218
+ <dle>
219
+ <dt><m>pathName</m> <b>bbox</b> <m>index</m></dt>
220
+ <dd>Returns a list of four numbers describing the bounding box of the
221
+ character given by <i>index</i>.
222
+ The first two elements of the list give the x and y coordinates of
223
+ the upper-left corner of the screen area covered by the character
224
+ (in pixels relative to the widget) and the last two elements give
225
+ the width and height of the character, in pixels.
226
+ The bounding box may refer to a region outside the visible area
227
+ of the window.
228
+ </dd>
229
+ </dle>
230
+ <dle>
231
+ <dt><m>pathName</m> <b>cget</b> <m>option</m></dt>
232
+ <dd>Returns the current value of the specified <i>option</i>.
233
+ See <i>widget(n)</i>.
234
+ </dd>
235
+ </dle>
236
+ <dle>
237
+ <dt><m>pathName</m> <b>configure</b> ?<m>option</m>? ?<m>value option value ...</m>?</dt>
238
+ <dd>Modify or query widget options.
239
+ See <i>widget(n)</i>.
240
+ </dd>
241
+ </dle>
242
+ <dle>
243
+ <dt><m>pathName</m> <b>delete</b> <m>first</m> ?<m>last</m>?</dt>
244
+ <dd>Delete one or more elements of the entry.
245
+ <i>First</i> is the index of the first character to delete, and
246
+ <i>last</i> is the index of the character just after the last
247
+ one to delete.
248
+ If <i>last</i> isn't specified it defaults to <i>first</i>+1,
249
+ i.e. a single character is deleted.
250
+ This command returns the empty string.
251
+ </dd>
252
+ </dle>
253
+ <dle>
254
+ <dt><m>pathName</m> <b>get</b></dt>
255
+ <dd>Returns the entry's string.
256
+ </dd>
257
+ </dle>
258
+ <dle>
259
+ <dt><m>pathName</m> <b>icursor</b> <m>index</m></dt>
260
+ <dd>Arrange for the insert cursor to be displayed just before the character
261
+ given by <i>index</i>. Returns the empty string.
262
+ </dd>
263
+ </dle>
264
+ <dle>
265
+ <dt><m>pathName</m> <b>identify</b> <m>x y</m></dt>
266
+ <dd>Returns the name of the element at position <i>x</i>, <i>y</i>,
267
+ or the empty string if the coordinates are outside the window.
268
+ </dd>
269
+ </dle>
270
+ <dle>
271
+ <dt><m>pathName</m> <b>index</b> <m>index</m></dt>
272
+ <dd>Returns the numerical index corresponding to <i>index</i>.
273
+ </dd>
274
+ </dle>
275
+ <dle>
276
+ <dt><m>pathName</m> <b>insert</b> <m>index string</m></dt>
277
+ <dd>Insert <i>string</i> just before the character
278
+ indicated by <i>index</i>. Returns the empty string.
279
+ </dd>
280
+ </dle>
281
+ <dle>
282
+ <dt><m>pathName</m> <b>instate</b> <m>statespec</m> ?<m>script</m>?</dt>
283
+ <dd>Test the widget state.
284
+ See <i>widget(n)</i>.
285
+ </dd>
286
+ </dle>
287
+ <dle>
288
+ <dt><m>pathName</m> <b>selection</b> <m>option arg</m></dt>
289
+ <dd>This command is used to adjust the selection within an entry. It
290
+ has several forms, depending on <i>option</i>:
291
+ <dl>
292
+ <dle>
293
+ <dt><m>pathName</m> <b>selection clear</b></dt>
294
+ <dd>Clear the selection if it is currently in this widget.
295
+ If the selection isn't in this widget then the command has no effect.
296
+ Returns the empty string.
297
+ </dd>
298
+ </dle>
299
+ <dle>
300
+ <dt><m>pathName</m> <b>selection present</b></dt>
301
+ <dd>Returns 1 if there is are characters selected in the entry,
302
+ 0 if nothing is selected.
303
+ </dd>
304
+ </dle>
305
+ <dle>
306
+ <dt><m>pathName</m> <b>selection range</b> <m>start</m> <m>end</m></dt>
307
+ <dd>Sets the selection to include the characters starting with
308
+ the one indexed by <i>start</i> and ending with the one just
309
+ before <i>end</i>.
310
+ If <i>end</i> refers to the same character as <i>start</i> or an
311
+ earlier one, then the entry's selection is cleared.
312
+ </dd>
313
+ </dle>
314
+ </dl></dd>
315
+ </dle>
316
+ <dle>
317
+ <dt><m>pathName</m> <b>state</b> ?<m>stateSpec</m>?</dt>
318
+ <dd>Modify or query the widget state.
319
+ See <i>widget(n)</i>.
320
+ </dd>
321
+ </dle>
322
+ <dle>
323
+ <dt><m>pathName</m> <b>validate</b></dt>
324
+ <dd>Force revalidation, independent of the conditions specified
325
+ by the <b>-validate</b> option.
326
+ Returns 0 if validation fails, 1 if it succeeds.
327
+ Sets or clears the <b>invalid</b> state accordingly.
328
+ </dd>
329
+ </dle>
330
+ <dle>
331
+ <dt><m>pathName</m> <b>xview</b> <m>args</m></dt>
332
+ <dd>This command is used to query and change the horizontal position of the
333
+ text in the widget's window. It can take any of the following
334
+ forms:
335
+ <dl>
336
+ <dle>
337
+ <dt><m>pathName</m> <b>xview</b></dt>
338
+ <dd>Returns a list containing two elements.
339
+ Each element is a real fraction between 0 and 1; together they describe
340
+ the horizontal span that is visible in the window.
341
+ For example, if the first element is .2 and the second element is .6,
342
+ 20% of the entry's text is off-screen to the left, the middle 40% is visible
343
+ in the window, and 40% of the text is off-screen to the right.
344
+ These are the same values passed to scrollbars via the <b>-xscrollcommand</b>
345
+ option.
346
+ </dd>
347
+ </dle>
348
+ <dle>
349
+ <dt><m>pathName</m> <b>xview</b> <m>index</m></dt>
350
+ <dd>Adjusts the view in the window so that the character given by <i>index</i>
351
+ is displayed at the left edge of the window.
352
+ </dd>
353
+ </dle>
354
+ <dle>
355
+ <dt><m>pathName</m> <b>xview moveto</b> <m>fraction</m></dt>
356
+ <dd>Adjusts the view in the window so that the character <i>fraction</i> of the
357
+ way through the text appears at the left edge of the window.
358
+ <i>Fraction</i> must be a fraction between 0 and 1.
359
+ </dd>
360
+ </dle>
361
+ <dle>
362
+ <dt><m>pathName</m> <b>xview scroll</b> <m>number what</m></dt>
363
+ <dd>This command shifts the view in the window left or right according to
364
+ <i>number</i> and <i>what</i>.
365
+ <i>Number</i> must be an integer.
366
+ <i>What</i> must be either <b>units</b> or <b>pages</b>.
367
+ If <i>what</i> is <b>units</b>, the view adjusts left or right by
368
+ <i>number</i> average-width characters on the display; if it is
369
+ <b>pages</b> then the view adjusts by <i>number</i> screenfuls.
370
+ If <i>number</i> is negative then characters farther to the left
371
+ become visible; if it is positive then characters farther to the right
372
+ become visible.
373
+ </dd>
374
+ </dle>
375
+ </dl></dd>
376
+ </dle>
377
+ </dl>
378
+ </section>
379
+ <section id="validation">
380
+ <title>VALIDATION</title>
381
+ <p>The <b>-validate</b>, <b>-validatecommand</b>, and <b>-invalidcommand</b>
382
+ options are used to enable entry widget validation.
383
+ </p>
384
+ <subsection>
385
+ <title>VALIDATION MODES</title>
386
+ <p>There are two main validation modes: <i>prevalidation</i>,
387
+ in which the <b>-validatecommand</b> is evaluated prior to each edit
388
+ and the return value is used to determine whether to accept
389
+ or reject the change;
390
+ and <i>revalidation</i>, in which the <b>-validatecommand</b> is
391
+ evaluated to determine whether the current value is valid.
392
+ </p>
393
+ <p>The <b>-validate</b> option determines when validation occurs;
394
+ it may be set to any of the following values:
395
+ </p>
396
+ <dl>
397
+ <dle>
398
+ <dt><b>none</b></dt>
399
+ <dd>Default. This means validation will only occur when
400
+ specifically requested by the <b>validate</b> widget command.
401
+ </dd>
402
+ </dle>
403
+ <dle>
404
+ <dt><b>key</b></dt>
405
+ <dd>The entry will be prevalidated prior to each edit
406
+ (specifically, whenever the <b>insert</b> or <b>delete</b>
407
+ widget commands are called).
408
+ If prevalidation fails, the edit is rejected.
409
+ </dd>
410
+ </dle>
411
+ <dle>
412
+ <dt><b>focus</b></dt>
413
+ <dd>The entry is revalidated when the entry receives or loses focus.
414
+ </dd>
415
+ </dle>
416
+ <dle>
417
+ <dt><b>focusin</b></dt>
418
+ <dd>The entry is revalidated when the entry receives focus.
419
+ </dd>
420
+ </dle>
421
+ <dle>
422
+ <dt><b>focusout</b></dt>
423
+ <dd>The entry is revalidated when the entry loses focus.
424
+ </dd>
425
+ </dle>
426
+ <dle>
427
+ <dt><b>all</b></dt>
428
+ <dd>Validation is performed for all above conditions.
429
+ </dd>
430
+ </dle>
431
+ </dl>
432
+ <p>The <b>-invalidcommand</b> is evaluated whenever
433
+ the <b>-validatecommand</b> returns a false value.
434
+ </p>
435
+ <p>The <b>-validatecommand</b> and <b>-invalidcommand</b>
436
+ may modify the entry widget's value
437
+ via the widget <b>insert</b> or <b>delete</b> commands,
438
+ or by setting the linked <b>-textvariable</b>.
439
+ If either does so during prevalidation,
440
+ then the edit is rejected
441
+ regardless of the value returned by the <b>-validatecommand</b>.
442
+ </p>
443
+ <p>If <b>-validatecommand</b> is empty (the default),
444
+ validation always succeeds.
445
+ </p>
446
+ </subsection>
447
+ <subsection>
448
+ <title>VALIDATION SCRIPT SUBSTITUTIONS</title>
449
+ <p>It is possible to perform percent substitutions on the
450
+ <b>-validatecommand</b> and <b>invalidCommand</b>,
451
+ just as in a <cmd>bind</cmd> script.
452
+ The following substitutions are recognized:
453
+ </p>
454
+ <dl>
455
+ <dle>
456
+ <dt><b>%d</b></dt>
457
+ <dd>Type of action: 1 for <b>insert</b> prevalidation,
458
+ 0 for <b>delete</b> prevalidation,
459
+ or -1 for revalidation.
460
+ </dd>
461
+ </dle>
462
+ <dle>
463
+ <dt><b>%i</b></dt>
464
+ <dd>Index of character string to be inserted/deleted, if any, otherwise -1.
465
+ </dd>
466
+ </dle>
467
+ <dle>
468
+ <dt><b>%P</b></dt>
469
+ <dd>In prevalidation, the new value of the entry if the edit is accepted.
470
+ In revalidation, the current value of the entry.
471
+ </dd>
472
+ </dle>
473
+ <dle>
474
+ <dt><b>%s</b></dt>
475
+ <dd>The current value of entry prior to editing.
476
+ </dd>
477
+ </dle>
478
+ <dle>
479
+ <dt><b>%S</b></dt>
480
+ <dd>The text string being inserted/deleted, if any, {} otherwise.
481
+ </dd>
482
+ </dle>
483
+ <dle>
484
+ <dt><b>%v</b></dt>
485
+ <dd>The current value of the <b>-validate</b> option.
486
+ </dd>
487
+ </dle>
488
+ <dle>
489
+ <dt><b>%V</b></dt>
490
+ <dd>The validation condition that triggered the callback
491
+ (<b>key</b>, <b>focusin</b>, <b>focusout</b>, or <b>forced</b>).
492
+ </dd>
493
+ </dle>
494
+ <dle>
495
+ <dt><b>%W</b></dt>
496
+ <dd>The name of the entry widget.
497
+ </dd>
498
+ </dle>
499
+ </dl>
500
+ </subsection>
501
+ <subsection>
502
+ <title>DIFFERENCES FROM TK ENTRY WIDGET VALIDATION</title>
503
+ <ul>
504
+ <li>The standard Tk entry widget automatically disables validation
505
+ (by setting <b>-validate</b> to <b>none</b>)
506
+ if the <b>-validatecommand</b> or <b>-invalidcommand</b> modifies
507
+ the entry's value.
508
+ The Tile entry widget only disables validation if one
509
+ of the validation scripts raises an error, or if <b>-validatecommand</b>
510
+ does not return a valid boolean value.
511
+ (Thus, it is not necessary to reenable validation after
512
+ modifying the entry value in a validation script).
513
+ </li>
514
+ <li>The standard entry widget invokes validation whenever the linked
515
+ <b>-textvariable</b> is modified; the Tile entry widget does not.
516
+ </li>
517
+ </ul>
518
+ </subsection>
519
+ </section>
520
+ <section>
521
+ <title>DEFAULT BINDINGS</title>
522
+ <p>The entry widget's default bindings enable the following behavior.
523
+ In the descriptions below, ``word'' refers to a contiguous group
524
+ of letters, digits, or ``_'' characters, or any single character
525
+ other than these.
526
+ </p>
527
+ <ul>
528
+ <li>Clicking mouse button 1 positions the insert cursor
529
+ just before the character underneath the mouse cursor, sets the
530
+ input focus to this widget, and clears any selection in the widget.
531
+ Dragging with mouse button 1 down strokes out a selection between
532
+ the insert cursor and the character under the mouse.
533
+ </li>
534
+ <li>Double-clicking with mouse button 1 selects the word under the mouse
535
+ and positions the insert cursor at the end of the word.
536
+ Dragging after a double click strokes out a selection consisting
537
+ of whole words.
538
+ </li>
539
+ <li>Triple-clicking with mouse button 1 selects all of the text in the
540
+ entry and positions the insert cursor at the end of the line.
541
+ </li>
542
+ <li>The ends of the selection can be adjusted by dragging with mouse
543
+ button 1 while the Shift key is down.
544
+ If the button is double-clicked before dragging then the selection
545
+ will be adjusted in units of whole words.
546
+ </li>
547
+ <li>Clicking mouse button 1 with the Control key down will position the
548
+ insert cursor in the entry without affecting the selection.
549
+ </li>
550
+ <li>If any normal printing characters are typed in an entry, they are
551
+ inserted at the point of the insert cursor.
552
+ </li>
553
+ <li>The view in the entry can be adjusted by dragging with mouse button 2.
554
+ If mouse button 2 is clicked without moving the mouse, the selection
555
+ is copied into the entry at the position of the mouse cursor.
556
+ </li>
557
+ <li>If the mouse is dragged out of the entry on the left or right sides
558
+ while button 1 is pressed, the entry will automatically scroll to
559
+ make more text visible (if there is more text off-screen on the side
560
+ where the mouse left the window).
561
+ </li>
562
+ <li>The Left and Right keys move the insert cursor one character to the
563
+ left or right; they also clear any selection in the entry.
564
+ If Left or Right is typed with the Shift key down, then the insertion
565
+ cursor moves and the selection is extended to include the new character.
566
+ Control-Left and Control-Right move the insert cursor by words, and
567
+ Control-Shift-Left and Control-Shift-Right move the insert cursor
568
+ by words and also extend the selection.
569
+ Control-b and Control-f behave the same as Left and Right, respectively.
570
+ </li>
571
+ <li>The Home key and Control-a move the insert cursor to the
572
+ beginning of the entry and clear any selection in the entry.
573
+ Shift-Home moves the insert cursor to the beginning of the entry
574
+ and extends the selection to that point.
575
+ </li>
576
+ <li>The End key and Control-e move the insert cursor to the
577
+ end of the entry and clear any selection in the entry.
578
+ Shift-End moves the cursor to the end and extends the selection
579
+ to that point.
580
+ </li>
581
+ <li>Control-/ selects all the text in the entry.
582
+ </li>
583
+ <li>Control-\ clears any selection in the entry.
584
+ </li>
585
+ <li>The standard Tk &lt;&lt;Cut&gt;&gt;, &lt;&lt;Copy&gt;&gt;, &lt;&lt;Paste&gt;&gt;, and &lt;&lt;Clear&gt;&gt;
586
+ virtual events operate on the selection in the expected manner.
587
+ </li>
588
+ <li>The Delete key deletes the selection, if there is one in the entry.
589
+ If there is no selection, it deletes the character to the right of
590
+ the insert cursor.
591
+ </li>
592
+ <li>The BackSpace key and Control-h delete the selection, if there is one
593
+ in the entry.
594
+ If there is no selection, it deletes the character to the left of
595
+ the insert cursor.
596
+ </li>
597
+ <li>Control-d deletes the character to the right of the insert cursor.
598
+ </li>
599
+ <li>Control-k deletes all the characters to the right of the insertion
600
+ cursor.
601
+ </li>
602
+ </ul>
603
+ </section>
604
+ <section id="widget-states">
605
+ <title>WIDGET STATES</title>
606
+ <p>In the <b>disabled</b> state,
607
+ the entry cannot be edited and the text cannot be selected.
608
+ In the <b>readonly</b> state,
609
+ no insert cursor is displayed and
610
+ the entry cannot be edited
611
+ (specifically: the <b>insert</b> and <b>delete</b> commands have no effect).
612
+ The <b>disabled</b> state is the same as <b>readonly</b>,
613
+ and in addition text cannot be selected.
614
+ </p>
615
+ <p>Note that changes to the linked <b>-textvariable</b> will
616
+ still be reflected in the entry, even if it is disabled or readonly.
617
+ </p>
618
+ <p>Typically, the text is "grayed-out" in the <b>disabled</b> state,
619
+ and a different background is used in the <b>readonly</b> state.
620
+ </p>
621
+ <p>The entry widget sets the <b>invalid</b> state if revalidation fails,
622
+ and clears it whenever validation succeeds.
623
+ </p>
624
+ </section>
625
+ <keywords>
626
+ <keyword>entry</keyword>
627
+ <keyword>widget</keyword>
628
+ <keyword>text field</keyword>
629
+ </keywords>
630
+ </manpage>