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,119 @@
1
+ '\"
2
+ '\" Copyright (c) 2004 Joe English
3
+ '\" style.n,v 1.15 2007/12/12 15:55:15 jenglish Exp
4
+ '\"
5
+ .so man.macros
6
+ .TH style n 0.5 tile "Tile Widget Set"
7
+ .BS
8
+ .SH NAME
9
+ ttk::style \- Manipulate style database
10
+ .SH SYNOPSIS
11
+ \fBttk::style\fR \fIoption\fR ?\fIargs\fR?
12
+ .BE
13
+ .SH NOTES
14
+ See also the Tcl'2004 conference presentation,
15
+ available at
16
+ .UR http://tktable.sourceforge.net/tile/tile-tcl2004.pdf
17
+ http://tktable.sourceforge.net/tile/tile-tcl2004.pdf
18
+ .UE
19
+ .SH DEFINITIONS
20
+ Each widget is assigned a \fIstyle\fR,
21
+ which specifies the set of elements making up the widget
22
+ and how they are arranged, along with dynamic and default
23
+ settings for element options.
24
+ By default, the style name is the same as the widget's class;
25
+ this may be overridden by the \fB\-style\fR option.
26
+ .PP
27
+ A \fItheme\fR is a collection of elements and styles
28
+ which controls the overall look and feel of an application.
29
+ .SH DESCRIPTION
30
+ The \fBttk::style\fR command takes the following arguments:
31
+ .TP
32
+ \fBttk::style configure \fIstyle\fR ?\fI\-option\fR ?\fIvalue option value...\fR? ?
33
+ Sets the default value of the specified option(s) in \fIstyle\fR.
34
+ .TP
35
+ \fBttk::style map \fIstyle\fR ?\fI\-option\fB { \fIstatespec value...\fB }\fR?
36
+ Sets dynamic values of the specified option(s) in \fIstyle\fR.
37
+ Each \fIstatespec / value\fR pair is examined in order;
38
+ the value corresponding to the first matching \fIstatespec\fR
39
+ is used.
40
+ .TP
41
+ \fBttk::style lookup \fIstyle\fR \fI\-option \fR?\fIstate \fR?\fIdefault\fR??
42
+ Returns the value specified for \fI\-option\fR in style \fIstyle\fR
43
+ in state \fIstate\fR, using the standard lookup rules for element options.
44
+ \fIstate\fR is a list of state names; if omitted,
45
+ it defaults to all bits off (the ``normal'' state).
46
+ If the \fIdefault\fR argument is present, it is used as a fallback
47
+ value in case no specification for \fI\-option\fR is found.
48
+ .\" Otherwise -- signal error? return empty string? Leave unspecified for now.
49
+ .TP
50
+ \fBttk::style layout \fIstyle\fR ?\fIlayoutSpec\fR?
51
+ Define the widget layout for style \fIstyle\fR.
52
+ See \fBLAYOUTS\fR below for the format of \fIlayoutSpec\fR.
53
+ If \fIlayoutSpec\fR is omitted, return the layout specification
54
+ for style \fIstyle\fR.
55
+ .TP
56
+ \fBttk::style element create\fR \fIelementName\fR \fItype\fR ?\fIargs...\fR?
57
+ Creates a new element in the current theme of type \fItype\fR.
58
+ The only built-in element type is \fIimage\fR (see \fIimage(n)\fR),
59
+ although themes may define other element types
60
+ (see \fBTtk_RegisterElementFactory\fR).
61
+ .TP
62
+ \fBttk::style element names\fR
63
+ Returns the list of elements defined in the current theme.
64
+ .TP
65
+ \fBttk::style element options \fIelement\fR
66
+ Returns the list of \fIelement\fR's options.
67
+ .TP
68
+ \fBttk::style theme create\fR \fIthemeName\fR ?\fB\-parent \fIbasedon\fR? ?\fB\-settings \fIscript...\fR ?
69
+ Creates a new theme. It is an error if \fIthemeName\fR already exists.
70
+ If \fB\-parent\fR is specified, the new theme will inherit
71
+ styles, elements, and layouts from the parent theme \fIbasedon\fR.
72
+ If \fB\-settings\fR is present, \fIscript\fR is evaluated in the
73
+ context of the new theme as per \fBttk::style theme settings\fR.
74
+ .TP
75
+ \fBttk::style theme settings \fIthemeName\fR \fIscript\fR
76
+ Temporarily sets the current theme to \fIthemeName\fR,
77
+ evaluate \fIscript\fR, then restore the previous theme.
78
+ Typically \fIscript\fR simply defines styles and elements,
79
+ though arbitrary Tcl code may appear.
80
+ .TP
81
+ \fBttk::style theme names\fR
82
+ Returns a list of all known themes.
83
+ .TP
84
+ \fBttk::style theme use\fR \fIthemeName\fR
85
+ Sets the current theme to \fIthemeName\fR, and refreshes all widgets.
86
+ .SH LAYOUTS
87
+ A \fIlayout\fR specifies a list of elements, each followed
88
+ by one or more options specifying how to arrange the element.
89
+ The layout mechanism uses a simplified version of the \fBpack\fR
90
+ geometry manager: given an initial cavity,
91
+ each element is allocated a parcel.
92
+ Valid options are:
93
+ .TP
94
+ \fB\-side \fIside\fR
95
+ Specifies which side of the cavity to place the element;
96
+ one of \fBleft\fR, \fBright\fR, \fBtop\fR, or \fBbottom\fR.
97
+ If omitted, the element occupies the entire cavity.
98
+ .TP
99
+ \fB\-sticky\fR \fB[\fInswe\fB]\fR
100
+ Specifies where the element is placed inside its allocated parcel.
101
+ .TP
102
+ \fB\-children { \fIsublayout... \fB}\fR
103
+ Specifies a list of elements to place inside the element.
104
+ .\" Also: -border, -unit, -expand: may go away.
105
+ .PP
106
+ For example:
107
+ .CS
108
+ ttk::style layout Horizontal.TScrollbar {
109
+ Scrollbar.trough \-children {
110
+ Scrollbar.leftarrow \-side left
111
+ Scrollbar.rightarrow \-side right
112
+ Horizontal.Scrollbar.thumb \-side left \-sticky ew
113
+ }
114
+ }
115
+ .CE
116
+ .SH "SEE ALSO"
117
+ tile-intro, widget, pixmap
118
+ .SH KEYWORDS
119
+ style, theme, appearance
@@ -0,0 +1,165 @@
1
+ '\"
2
+ '\" Copyright (c) 2004 Joe English
3
+ '\"
4
+ .so man.macros
5
+ .TH intro n 0.2 tile "Tile Widget Set"
6
+ .BS
7
+ .SH NAME
8
+ tile_intro \- Introduction to the Tile theme engine
9
+ .BE
10
+ .SH "OVERVIEW"
11
+ The tile widget set is based on a revised and enhanced version
12
+ of the
13
+ .UR http://purl.org/tcl/tip/48
14
+ TIP #48
15
+ .UE
16
+ style engine.
17
+ The main concepts are described below.
18
+ The basic idea is to separate, to the extent possible,
19
+ the code implementing a widget's behavior from
20
+ the code implementing its appearance.
21
+ Widget class bindings are primarily responsible for
22
+ maintaining the widget state and invoking callbacks;
23
+ all aspects of the widgets appearance is
24
+ .SH "THEMES"
25
+ A \fItheme\fR is a collection of elements and styles
26
+ that determine the look and feel of the widget set.
27
+ Themes can be used to:
28
+ .IP \(bu
29
+ Isolate platform differences (X11 vs. classic Windows vs. XP vs. Aqua ...)
30
+ .IP \(bu
31
+ Adapt to display limitations (low-color, grayscale, monochrome, tiny screens)
32
+ .IP \(bu
33
+ Accessibility (high contrast, large type)
34
+ .IP \(bu
35
+ Application suite branding
36
+ .IP \(bu
37
+ Blend in with the rest of the desktop (Gnome, KDE, Java)
38
+ .IP \(bu
39
+ And, of course: eye candy.
40
+ .SH "ELEMENTS"
41
+ An \fIelement\fR displays an individual part of a widget.
42
+ For example, a vertical scrollbar widget contains \fBuparrow\fR,
43
+ \fBdownarrow\fR, \fBtrough\fR and \fBslider\fR elements.
44
+ .PP
45
+ Element names use a recursive dotted notation.
46
+ For example, \fBuparrow\fR identifies a generic arrow element,
47
+ and \fBScrollbar.uparrow\fR and \fBCombobox.uparrow\fR identify
48
+ widget-specific elements.
49
+ When looking for an element, the style engine looks for
50
+ the specific name first, and if an element of that name is
51
+ not found it looks for generic elements by stripping off
52
+ successive leading components of the element name.
53
+ .PP
54
+ Like widgets, elements have \fIoptions\fR which
55
+ specify what to display and how to display it.
56
+ For example, the \fBtext\fR element
57
+ (which displays a text string) has
58
+ \fB\-text\fR, \fB\-font\fR, \fB\-foreground\fR, \fB\-background\fR,
59
+ \fB\-underline\fR, and \fB\-width\fR options.
60
+ The value of an element option is taken from:
61
+ .IP \(bu
62
+ An option of the same name and type in the widget containing the element;
63
+ .IP \(bu
64
+ A dynamic setting specified by \fBstyle map\fR and the current state;
65
+ .IP \(bu
66
+ The default setting specified by \fBstyle configure\fR; or
67
+ .IP \(bu
68
+ The element's built-in default value for the option.
69
+ .SH "LAYOUTS"
70
+ A \fIlayout\fR specifies which elements make up a widget
71
+ and how they are arranged.
72
+ The layout engine uses a simplified version of the \fBpack\fR
73
+ algorithm: starting with an initial cavity equal to the size
74
+ of the widget, elements are allocated a parcel within the cavity along
75
+ the side specified by the \fB\-side\fR option,
76
+ and placed within the parcel according to the \fB\-sticky\fR
77
+ option.
78
+ For example, the layout for a horizontal scrollbar
79
+ .CS
80
+ ttk::style layout Horizontal.TScrollbar {
81
+ Scrollbar.trough \-children {
82
+ Scrollbar.leftarrow \-side left \-sticky w
83
+ Scrollbar.rightarrow \-side right \-sticky e
84
+ Scrollbar.thumb \-side left \-expand true \-sticky ew
85
+ }
86
+ }
87
+ .CE
88
+ By default, the layout for a widget is the same as its class name.
89
+ Some widgets may override this (for example, the \fBttk::scrollbar\fR
90
+ widget chooses different layouts based on the \fB\-orient\fR option).
91
+ .SH "STATES"
92
+ In standard Tk, many widgets have a \fB\-state\fR option
93
+ which (in most cases) is either \fBnormal\fR or \fBdisabled\fR.
94
+ Some widgets support additional states, such
95
+ as the \fBentry\fR widget which has a \fBreadonly\fR state
96
+ and the various flavors of buttons which have \fBactive\fR state.
97
+ .PP
98
+ The Tile widget set generalizes this idea:
99
+ every widget has a bitmap of independent state flags.
100
+ Widget state flags include \fBactive\fR, \fBdisabled\fR,
101
+ \fBpressed\fR, \fBfocus\fR, etc.,
102
+ (see \fIwidget(n)\fR for the full list of state flags).
103
+ .PP
104
+ Instead of a \fB\-state\fR option, every widget now has
105
+ a \fBstate\fR widget command which is used to set or query
106
+ the state.
107
+ A \fIstate specification\fR is a list of symbolic state names
108
+ indicating which bits are set, each optionally prefixed with an
109
+ exclamation point indicating that the bit is cleared instead.
110
+ .PP
111
+ For example, the class bindings for the \fBttk::button\fR
112
+ widget are:
113
+ .CS
114
+ bind TButton <Enter> { %W state active }
115
+ bind TButton <Leave> { %W state !active }
116
+ bind TButton <ButtonPress-1> { %W state pressed }
117
+ bind TButton <Button1-Leave> { %W state !pressed }
118
+ bind TButton <Button1-Enter> { %W state pressed }
119
+ bind TButton <ButtonRelease-1> \e
120
+ { %W instate {pressed} { %W state !pressed ; %W invoke } }
121
+ .CE
122
+ This specifies that the widget becomes \fBactive\fR when
123
+ the pointer enters the widget, and inactive when it leaves.
124
+ Similarly it becomes \fBpressed\fR when the mouse button is pressed,
125
+ and \fB!pressed\fR on the ButtonRelease event.
126
+ In addition, the button unpresses if
127
+ pointer is dragged outside the widget while Button-1 is held down,
128
+ and represses if it's dragged back in.
129
+ Finally, when the mouse button is released, the widget's
130
+ \fB\-command\fR is invoked, but only if the button is currently
131
+ in the \fBpressed\fR state.
132
+ (The actual bindings are a little more complicated than the above,
133
+ but not by much).
134
+ .PP
135
+ \fINote to self: rewrite that paragraph. It's horrible.\fR
136
+ .SH "STYLES"
137
+ Each widget is associated with a \fIstyle\fR,
138
+ which specifies values for element options.
139
+ Style names use a recursive dotted notation like layouts and elements;
140
+ by default, widgets use the class name to look up a style in the current theme.
141
+ For example:
142
+ .CS
143
+ ttk::style configure TButton \e
144
+ \-background #d9d9d9 \e
145
+ \-foreground black \e
146
+ \-relief raised \e
147
+ ;
148
+ .CE
149
+ Many elements are displayed differently depending on the widget state.
150
+ For example, buttons have a different background when they are active,
151
+ a different foreground when disabled, and a different relief when pressed.
152
+ The \fBstyle map\fR command specifies dynamic option settings
153
+ for a particular style:
154
+ .CS
155
+ ttk::style map TButton \e
156
+ \-background [list disabled #d9d9d9 active #ececec] \e
157
+ \-foreground [list disabled #a3a3a3] \e
158
+ \-relief [list {pressed !disabled} sunken] \e
159
+ ;
160
+ .CE
161
+ .SH "SEE ALSO"
162
+ widget(n), style(n),
163
+ .UR http://purl.org/tcl/tip/48
164
+ TIP #48
165
+ .UE
@@ -0,0 +1,4 @@
1
+ set Options(xsltProcessor) tdom
2
+ set dictionary(pathname) cmd
3
+ set manpageCategories(widget.n) stdopt
4
+ set manpageCategories(tile-intro.n) misc
@@ -0,0 +1,415 @@
1
+ '\"
2
+ '\" Copyright (c) 2004 Joe English
3
+ '\"
4
+ .so man.macros
5
+ .TH treeview n 0.5 tile "Tile Widget Set"
6
+ .SH NAME
7
+ ttk::treeview \- hierarchical multicolumn data display widget
8
+ .SH SYNOPSIS
9
+ \fBttk::treeview\fR \fIpathname \fR?\fIoptions\fR?
10
+ .SH "DESCRIPTION"
11
+ The treeview widget displays a hierarchical collection of items.
12
+ Each item has a textual label, an optional image,
13
+ and an optional list of data values.
14
+ The data values are displayed in successive columns after
15
+ the tree label.
16
+ .PP
17
+ The order in which data values are displayed may be controlled
18
+ by setting the \fB-displaycolumns\fR widget option.
19
+ The tree widget can also display column headings.
20
+ Columns may be accessed by number or by symbolic names
21
+ listed in the \fB-columns\fR widget option;
22
+ see \fBCOLUMN IDENTIFIERS\fR.
23
+ .PP
24
+ Each item is identified by a unique name.
25
+ The widget will generate item IDs if they are not supplied by the caller.
26
+ There is a distinguished root item, named \fB{}\fR.
27
+ The root item itself is not displayed;
28
+ its children appear at the top level of the hierarchy.
29
+ .PP
30
+ Each item also has a list of \fItags\fR,
31
+ which can be used to associate event bindings with individual items
32
+ and control the appearance of the item.
33
+ .\" .PP
34
+ .\" @@@HERE: describe selection, focus item
35
+ .PP
36
+ Treeview widgets support horizontal and vertical scrolling with the
37
+ standard \fB-[xy]scrollcommand\fR options
38
+ and \fB[xy]view\fR widget commands.
39
+ .SO
40
+ \-class \-cursor \-takefocus \-style
41
+ \-xscrollcommand \-yscrollcommand
42
+ .SE
43
+ .SH "WIDGET OPTIONS"
44
+ .OP \-columns columns Columns
45
+ A list of column identifiers,
46
+ specifying the number of columns and their names.
47
+ .\"X: This is a read-only option; it may only be set when the widget is created.
48
+ .OP \-displaycolumns displayColumns DisplayColumns
49
+ A list of column identifiers
50
+ (either symbolic names or integer indices)
51
+ specifying which data columns are displayed
52
+ and the order in which they appear,
53
+ or the string \fB#all\fP.
54
+ .br
55
+ If set to \fB#all\fP (the default), all columns are shown in the order given.
56
+ .OP \-height height Height
57
+ Specifies the number of rows which should be visible.
58
+ Note:
59
+ the requested width is determined from the sum of the column widths.
60
+ .OP \-padding padding Padding
61
+ Specifies the internal padding for the widget.
62
+ The padding is a list of up to four length specifications;
63
+ see \fBTtk_GetPaddingFromObj()\fR for details.
64
+ .OP \-selectmode selectMode SelectMode
65
+ Controls how the built-in class bindings manage the selection.
66
+ One of \fBextended\fR, \fBbrowse\fR, or \fBnone\fR.
67
+ .br
68
+ If set to \fBextended\fR (the default), multiple items may be selected.
69
+ If \fBbrowse\fR, only a single item will be selected at a time.
70
+ If \fBnone\fR, the selection will not be changed.
71
+ .br
72
+ Note that application code and tag bindings can set the selection
73
+ however they wish, regardless of the value of \fB-selectmode\fR.
74
+ .OP \-show show Show
75
+ A list containing zero or more of the following values, specifying
76
+ which elements of the tree to display.
77
+ .RS
78
+ .IP \fBtree\fR
79
+ Display tree labels in column #0.
80
+ .IP \fBheadings\fR
81
+ Display the heading row.
82
+ .PP
83
+ The default is \fBtree headings\fR, i.e., show all elements.
84
+ .PP
85
+ \fBNOTE:\fR Column #0 always refers to the tree column,
86
+ even if \fB-show tree\fR is not specified.
87
+ .RE
88
+ .SH "WIDGET COMMAND"
89
+ .TP
90
+ \fIpathname \fBbbox\fR \fIitem\fR ?\fIcolumn\fR?
91
+ Returns the bounding box (relative to the treeview widget's window)
92
+ of the specified \fIitem\fR
93
+ in the form \fIx y width height\fR.
94
+ If \fIcolumn\fR is specified, returns the bounding box of that cell.
95
+ If the \fIitem\fR is not visible
96
+ (i.e., if it is a descendant of a closed item or is scrolled offscreen),
97
+ returns the empty list.
98
+ .TP
99
+ \fIpathname \fBcget\fR \fIoption\fR
100
+ Returns the current value of the specified \fIoption\fR; see \fIwidget(n)\fR.
101
+ .TP
102
+ \fIpathname \fBchildren\fR \fIitem\fR ?\fInewchildren\fR?
103
+ If \fInewchildren\fR is not specified,
104
+ returns the list of children belonging to \fIitem\fR.
105
+ .br
106
+ If \fInewchildren\fR is specified, replaces \fIitem\fR's child list
107
+ with \fInewchildren\fR.
108
+ Items in the old child list not present in the new child list
109
+ are detached from the tree.
110
+ None of the items in \fInewchildren\fR may be an ancestor
111
+ of \fIitem\fR.
112
+ .TP
113
+ \fIpathname \fBcolumn\fR \fIcolumn\fR ?\fI-option \fR?\fIvalue -option value...\fR?
114
+ Query or modify the options for the specified \fIcolumn\fR.
115
+ If no \fI-option\fR is specified,
116
+ returns a dictionary of option/value pairs.
117
+ If a single \fI-option\fR is specified,
118
+ returns the value of that option.
119
+ Otherwise, the options are updated with the specified values.
120
+ The following options may be set on each column:
121
+ .RS
122
+ .TP
123
+ \fB-id \fIname\fR
124
+ The column name. This is a read-only option.
125
+ For example, [\fI$pathname \fBcolumn #\fIn \fB-id\fR]
126
+ returns the data column associated with display column #\fIn\fR.
127
+ .TP
128
+ \fB-anchor\fR
129
+ Specifies how the text in this column should be aligned
130
+ with respect to the cell. One of
131
+ \fBn\fR, \fBne\fR, \fBe\fR, \fBse\fR,
132
+ \fBs\fR, \fBsw\fR, \fBw\fR, \fBnw\fR, or \fBcenter\fR.
133
+ .TP
134
+ \fB-minwidth\fR
135
+ The minimum width of the column in pixels.
136
+ The treeview widget will not make the column any smaller than
137
+ \fB-minwidth\fR when the widget is resized or the user drags a
138
+ column separator.
139
+ .TP
140
+ \fB-stretch\fR
141
+ Specifies whether or not the column's width should be adjusted
142
+ when the widget is resized.
143
+ .TP
144
+ \fB-width \fIw\fR
145
+ The width of the column in pixels. Default is something reasonable,
146
+ probably 200 or so.
147
+ .PP
148
+ Use \fIpathname column #0\fR to configure the tree column.
149
+ .RE
150
+ .TP
151
+ \fIpathname \fBconfigure\fR ?\fIoption\fR? ?\fIvalue option value ...\fR?
152
+ Modify or query widget options; see \fIwidget(n)\fR.
153
+ .TP
154
+ \fIpathname \fBdelete\fR \fIitemList\fR
155
+ Deletes each of the items in \fIitemList\fR and all of their descendants.
156
+ The root item may not be deleted.
157
+ See also: \fBdetach\fR.
158
+ .TP
159
+ \fIpathname \fBdetach\fR \fIitemList\fR
160
+ Unlinks all of the specified items in \fIitemList\fR from the tree.
161
+ The items and all of their descendants are still present
162
+ and may be reinserted at another point in the tree
163
+ but will not be displayed.
164
+ The root item may not be detached.
165
+ See also: \fBdelete\fR.
166
+ .TP
167
+ \fIpathname \fBexists \fIitem\fR
168
+ Returns 1 if the specified \fIitem\fR is present in the tree,
169
+ 0 otherwise.
170
+ .TP
171
+ \fIpathname \fBfocus \fR?\fIitem\fR?
172
+ If \fIitem\fR is specified, sets the focus item to \fIitem\fR.
173
+ Otherwise, returns the current focus item, or \fB{}\fR if there is none.
174
+ .\" Need: way to clear the focus item. {} works for this...
175
+ .TP
176
+ \fIpathname \fBheading\fR \fIcolumn\fR ?\fI-option \fR?\fIvalue -option value...\fR?
177
+ Query or modify the heading options for the specified \fIcolumn\fR.
178
+ Valid options are:
179
+ .RS
180
+ .TP
181
+ \fB-text \fItext\fR
182
+ The text to display in the column heading.
183
+ .TP
184
+ \fB-image \fIimageName\fR
185
+ Specifies an image to display to the right of the column heading.
186
+ .TP
187
+ \fB-anchor \fIanchor\fR
188
+ Specifies how the heading text should be aligned.
189
+ One of the standard Tk anchor values.
190
+ .TP
191
+ \fB-command \fIscript\fR
192
+ A script to evaluate when the heading label is pressed.
193
+ .PP
194
+ Use \fIpathname heading #0\fR to configure the tree column heading.
195
+ .RE
196
+ .TP
197
+ \fIpathname \fBidentify \fIcomponent x y\fR
198
+ Returns a description of the specified \fIcomponent\fR
199
+ under the point given by \fIx\fR and \fIy\fR,
200
+ or the empty string if no such \fIcomponent\fR is present at that position.
201
+ The following subcommands are supported:
202
+ .RS
203
+ .TP
204
+ \fIpathname \fBidentify row\fR \fIx y\fR
205
+ Returns the item ID of the item at position \fIy\fR.
206
+ .TP
207
+ \fIpathname \fBidentify column\fR \fIx y\fR
208
+ Returns the data column identifier of the cell at position \fIx\fR.
209
+ The tree column has ID \fB#0\fR.
210
+ .PP
211
+ See \fBCOLUMN IDENTIFIERS\fR for a discussion of display columns
212
+ and data columns.
213
+ .RE
214
+ .TP
215
+ \fIpathname \fBindex \fIitem\fR
216
+ Returns the integer index of \fIitem\fR within its parent's list of children.
217
+ .TP
218
+ \fIpathname \fBinsert\fR \fIparent\fR \fIindex\fR ?\fB-id \fIid\fR? \fIoptions...\fR
219
+ Creates a new item.
220
+ \fIparent\fR is the item ID of the parent item,
221
+ or the empty string \fB{}\fR
222
+ to create a new top-level item.
223
+ \fIindex\fR is an integer, or the value \fBend\fR, specifying where in the
224
+ list of \fIparent\fR's children to insert the new item.
225
+ If \fIindex\fR is less than or equal to zero,
226
+ the new node is inserted at the beginning;
227
+ if \fIindex\fR is greater than or equal to the current number of children,
228
+ it is inserted at the end.
229
+ If \fB-id\fR is specified, it is used as the item identifier;
230
+ \fIid\fR must not already exist in the tree.
231
+ Otherwise, a new unique identifier is generated.
232
+ .br
233
+ \fIpathname \fBinsert\fR returns the item identifier of the
234
+ newly created item.
235
+ See \fBITEM OPTIONS\fR for the list of available options.
236
+ .TP
237
+ \fIpathname \fBinstate \fIstatespec\fR ?\fIscript\fR?
238
+ Test the widget state; see \fIwidget(n)\fR.
239
+ .TP
240
+ \fIpathname \fBitem\fR \fIitem\fR ?\fI-option \fR?\fIvalue -option value...\fR?
241
+ Query or modify the options for the specified \fIitem\fR.
242
+ If no \fI-option\fR is specified,
243
+ returns a dictionary of option/value pairs.
244
+ If a single \fI-option\fR is specified,
245
+ returns the value of that option.
246
+ Otherwise, the item's options are updated with the specified values.
247
+ See \fBITEM OPTIONS\fR for the list of available options.
248
+ .TP
249
+ \fIpathname \fBmove \fIitem parent index\fR
250
+ Moves \fIitem\fR to position \fIindex\fR in \fIparent\fR's list of children.
251
+ It is illegal to move an item under one of its descendants.
252
+ .br
253
+ If \fIindex\fR is less than or equal to zero, \fIitem\fR is moved
254
+ to the beginning; if greater than or equal to the number of children,
255
+ it's moved to the end.
256
+ .TP
257
+ \fIpathname \fBnext \fIitem\fR
258
+ Returns the identifier of \fIitem\fR's next sibling,
259
+ or \fB{}\fR if \fIitem\fR is the last child of its parent.
260
+ .TP
261
+ \fIpathname \fBparent \fIitem\fR
262
+ Returns the ID of the parent of \fIitem\fR,
263
+ or \fB{}\fR if \fIitem\fR is at the top level of the hierarchy.
264
+ .TP
265
+ \fIpathname \fBprev \fIitem\fR
266
+ Returns the identifier of \fIitem\fR's previous sibling,
267
+ or \fB{}\fR if \fIitem\fR is the first child of its parent.
268
+ .TP
269
+ \fIpathname \fBsee\fR \fIitem\fR
270
+ Ensure that \fIitem\fR is visible:
271
+ sets all of \fIitem\fR's ancestors to \fB-open true\fR,
272
+ and scrolls the widget if necessary so that \fIitem\fR is
273
+ within the visible portion of the tree.
274
+ .TP
275
+ \fIpathname \fBselection\fR ?\fIselop\fR \fIitemList\fR?
276
+ If \fIselop\fR is not specified, returns the list of selected items.
277
+ Otherwise, \fIselop\fR is one of the following:
278
+ .RS
279
+ .TP
280
+ \fIpathname \fBselection set \fIitemList\fR
281
+ \fIitemList\fR becomes the new selection.
282
+ .TP
283
+ \fIpathname \fBselection add \fIitemList\fR
284
+ Add \fIitemList\fR to the selection
285
+ .TP
286
+ \fIpathname \fBselection remove \fIitemList\fR
287
+ Remove \fIitemList\fR from the selection
288
+ .TP
289
+ \fIpathname \fBselection toggle \fIitemList\fR
290
+ Toggle the selection state of each item in \fIitemList\fR.
291
+ .RE
292
+ .TP
293
+ \fIpathname \fBset\fR \fIitem\fR ?\fIcolumn\fR ?\fIvalue\fR??
294
+ With one argument, returns a dictionary of column/value pairs
295
+ for the specified \fIitem\fR.
296
+ With two arguments, returns the current value of the specified \fIcolumn\fR.
297
+ With three arguments, sets the value of column \fIcolumn\fR
298
+ in item \fIitem\fR to the specified \fIvalue\fR.
299
+ See also \fBCOLUMN IDENTIFIERS\fR.
300
+ .TP
301
+ \fIpathname \fBstate\fR ?\fIstateSpec\fR?
302
+ Modify or query the widget state; see \fIwidget(n)\fR.
303
+ .TP
304
+ \fIpathName \fBtag \fIargs...\fR
305
+ .RS
306
+ .TP
307
+ \fIpathName \fBtag bind \fItagName \fR?\fIsequence \fR?\fIscript\fR??
308
+ Add a Tk binding script for the event sequence \fIsequence\fR
309
+ to the tag \fItagName\fR. When an X event is delivered to an item,
310
+ binding scripts for each of the item's \fB-tags\fR are evaluated
311
+ in order as per \fIbindtags(n)\fR.
312
+ .br
313
+ \fB<KeyPress>\fR, \fB<KeyRelease>\fR, and virtual events
314
+ are sent to the focus item.
315
+ \fB<ButtonPress>\fR, \fB<ButtonRelease>\fR, and \fB<Motion>\fR events
316
+ are sent to the item under the mouse pointer.
317
+ No other event types are supported.
318
+ .br
319
+ The binding \fIscript\fR undergoes \fB%\fR-substitutions before
320
+ evaluation; see \fBbind(n)\fR for details.
321
+ .TP
322
+ \fIpathName \fBtag configure\fR \fItagName\fR ?\fIoption\fR? ?\fIvalue option value...\fR?
323
+ Query or modify the options for the specified \fItagName\fR.
324
+ If one or more \fIoption/value\fR pairs are specified,
325
+ sets the value of those options for the specified tag.
326
+ If a single \fIoption\fR is specified,
327
+ returns the value of that option
328
+ (or the empty string if the option has not been specified for \fItagName\fR).
329
+ With no additional arguments,
330
+ returns a dictionary of the option settings for \fItagName\fR.
331
+ See \fBTAG OPTIONS\fR for the list of available options.
332
+ .RE
333
+ .TP
334
+ \fIpathName \fBxview \fIargs\fR
335
+ Standard command for horizontal scrolling; see \fIwidget(n)\fR.
336
+ .TP
337
+ \fIpathName \fByview \fIargs\fR
338
+ Standard command for vertical scrolling; see \fIwidget(n)\fR.
339
+
340
+ .PP
341
+ .SH "ITEM OPTIONS"
342
+ The following item options may be specified for items
343
+ in the \fBinsert\fR and \fBitem\fR widget commands.
344
+ .OP \-text text Text
345
+ The textual label to display for the item.
346
+ .OP \-image image Image
347
+ A Tk image, displayed to the left of the label.
348
+ .OP \-values values Values
349
+ The list of values associated with the item.
350
+ .br
351
+ Each item should have the same number of values as
352
+ the \fB-columns\fR widget option.
353
+ If there are fewer values than columns,
354
+ the remaining values are assumed empty.
355
+ If there are more values than columns,
356
+ the extra values are ignored.
357
+ .OP \-open open Open
358
+ A boolean value indicating whether the item's children
359
+ should be displayed (\fB-open true\fR) or hidden (\fB-open false\fR).
360
+ .OP \-tags tags Tags
361
+ A list of tags associated with this item.
362
+ .SH "TAG OPTIONS"
363
+ The following options may be specified on tags:
364
+ .IP \-foreground
365
+ Specifies the text foreground color.
366
+ .IP \-background
367
+ Specifies the cell or item background color.
368
+ .IP \-font
369
+ Specifies the font to use when drawing text.
370
+ .\" ??? Maybe: .IP \-anchor
371
+ .\" ??? Maybe: .IP \-padding
372
+ .\" ??? Maybe: .IP \-text
373
+ .IP \-image
374
+ Specifies the item image, in case the item's \fB-image\fR option is empty.
375
+ .PP
376
+ \fI(@@@ TODO: sort out order of precedence for options)\fR
377
+ .SH "COLUMN IDENTIFIERS"
378
+ Column identifiers take any of the following forms:
379
+ .IP \(bu
380
+ A symbolic name from the list of \fB-columns\fR.
381
+ .IP \(bu
382
+ An integer \fIn\fR, specifying the \fIn\fRth data column.
383
+ .IP \(bu
384
+ A string of the form \fB#\fIn\fR, where \fIn\fR is an integer,
385
+ specifying the \fIn\fRth display column.
386
+ .PP
387
+ \fBNOTE:\fR
388
+ Item \fB-values\fR may be displayed in a different order than
389
+ the order in which they are stored.
390
+ .PP
391
+ \fBNOTE:\fR Column #0 always refers to the tree column,
392
+ even if \fB-show tree\fR is not specified.
393
+ .PP
394
+ A \fIdata column number\fR is an index into an item's \fB-values\fR list;
395
+ a \fIdisplay column number\fR is the column number in the tree
396
+ where the values are displayed.
397
+ Tree labels are displayed in column #0.
398
+ If \fB-displaycolumns\fR is not set,
399
+ then data column \fIn\fR is displayed in display column \fB#\fIn+1\fR.
400
+ Again, \fBcolumn #0 always refers to the tree column\fR.
401
+ .SH "VIRTUAL EVENTS"
402
+ The treeview widget generates the following virtual events.
403
+ .IP <<TreeviewSelect>>
404
+ Generated whenever the selection changes.
405
+ .IP <<TreeviewOpen>>
406
+ Generated just before setting the focus item to \fB-open true\fR.
407
+ .IP <<TreeviewClose>>
408
+ Generated just after setting the focus item to \fB-open false\fR.
409
+ .PP
410
+ The \fBfocus\fR and \fBselection\fR widget commands can be used
411
+ to determine the affected item or items.
412
+ In Tk 8.5, the affected item is also passed as the \fB-detail\fR field
413
+ of the virtual event.
414
+ .SH "SEE ALSO"
415
+ widget(n), listbox(n), image(n), bind(n)