tk 0.1.0

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 (1060) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +10 -0
  3. data/.travis.yml +6 -0
  4. data/BSDL +22 -0
  5. data/ChangeLog.tkextlib +949 -0
  6. data/Gemfile +4 -0
  7. data/LICENSE.txt +56 -0
  8. data/MANUAL_tcltklib.eng +467 -0
  9. data/MANUAL_tcltklib.ja +578 -0
  10. data/README.1st +19 -0
  11. data/README.ActiveTcl +62 -0
  12. data/README.fork +34 -0
  13. data/README.macosx-aqua +67 -0
  14. data/README.md +33 -0
  15. data/README.tcltklib +152 -0
  16. data/Rakefile +16 -0
  17. data/bin/console +14 -0
  18. data/bin/setup +8 -0
  19. data/ext/tk/config_list.in +41 -0
  20. data/ext/tk/extconf.rb +2098 -0
  21. data/ext/tk/old-extconf.rb +441 -0
  22. data/ext/tk/stubs.c +592 -0
  23. data/ext/tk/stubs.h +33 -0
  24. data/ext/tk/tcltklib.c +11066 -0
  25. data/ext/tk/tkutil/extconf.rb +14 -0
  26. data/ext/tk/tkutil/tkutil.c +1900 -0
  27. data/lib/README +30 -0
  28. data/lib/multi-tk.rb +3743 -0
  29. data/lib/remote-tk.rb +527 -0
  30. data/lib/tcltk.rb +369 -0
  31. data/lib/tk.rb +5758 -0
  32. data/lib/tk/after.rb +7 -0
  33. data/lib/tk/autoload.rb +763 -0
  34. data/lib/tk/bgerror.rb +30 -0
  35. data/lib/tk/bindtag.rb +139 -0
  36. data/lib/tk/busy.rb +119 -0
  37. data/lib/tk/button.rb +32 -0
  38. data/lib/tk/canvas.rb +847 -0
  39. data/lib/tk/canvastag.rb +460 -0
  40. data/lib/tk/checkbutton.rb +33 -0
  41. data/lib/tk/clipboard.rb +76 -0
  42. data/lib/tk/clock.rb +72 -0
  43. data/lib/tk/composite.rb +485 -0
  44. data/lib/tk/console.rb +53 -0
  45. data/lib/tk/dialog.rb +327 -0
  46. data/lib/tk/encodedstr.rb +188 -0
  47. data/lib/tk/entry.rb +121 -0
  48. data/lib/tk/event.rb +563 -0
  49. data/lib/tk/font.rb +2352 -0
  50. data/lib/tk/fontchooser.rb +181 -0
  51. data/lib/tk/frame.rb +133 -0
  52. data/lib/tk/grid.rb +280 -0
  53. data/lib/tk/image.rb +396 -0
  54. data/lib/tk/itemconfig.rb +1222 -0
  55. data/lib/tk/itemfont.rb +328 -0
  56. data/lib/tk/kinput.rb +72 -0
  57. data/lib/tk/label.rb +23 -0
  58. data/lib/tk/labelframe.rb +32 -0
  59. data/lib/tk/listbox.rb +285 -0
  60. data/lib/tk/macpkg.rb +81 -0
  61. data/lib/tk/menu.rb +719 -0
  62. data/lib/tk/menubar.rb +138 -0
  63. data/lib/tk/menuspec.rb +457 -0
  64. data/lib/tk/message.rb +25 -0
  65. data/lib/tk/mngfocus.rb +34 -0
  66. data/lib/tk/msgcat.rb +300 -0
  67. data/lib/tk/namespace.rb +547 -0
  68. data/lib/tk/optiondb.rb +372 -0
  69. data/lib/tk/optionobj.rb +213 -0
  70. data/lib/tk/pack.rb +108 -0
  71. data/lib/tk/package.rb +144 -0
  72. data/lib/tk/palette.rb +56 -0
  73. data/lib/tk/panedwindow.rb +261 -0
  74. data/lib/tk/place.rb +129 -0
  75. data/lib/tk/radiobutton.rb +74 -0
  76. data/lib/tk/root.rb +96 -0
  77. data/lib/tk/scale.rb +113 -0
  78. data/lib/tk/scrollable.rb +83 -0
  79. data/lib/tk/scrollbar.rb +184 -0
  80. data/lib/tk/scrollbox.rb +40 -0
  81. data/lib/tk/selection.rb +87 -0
  82. data/lib/tk/spinbox.rb +145 -0
  83. data/lib/tk/tagfont.rb +44 -0
  84. data/lib/tk/text.rb +1605 -0
  85. data/lib/tk/textimage.rb +89 -0
  86. data/lib/tk/textmark.rb +205 -0
  87. data/lib/tk/texttag.rb +322 -0
  88. data/lib/tk/textwindow.rb +155 -0
  89. data/lib/tk/timer.rb +666 -0
  90. data/lib/tk/tk_mac.rb +159 -0
  91. data/lib/tk/toplevel.rb +265 -0
  92. data/lib/tk/ttk_selector.rb +99 -0
  93. data/lib/tk/txtwin_abst.rb +40 -0
  94. data/lib/tk/validation.rb +398 -0
  95. data/lib/tk/variable.rb +1797 -0
  96. data/lib/tk/virtevent.rb +140 -0
  97. data/lib/tk/winfo.rb +393 -0
  98. data/lib/tk/winpkg.rb +157 -0
  99. data/lib/tk/wm.rb +553 -0
  100. data/lib/tk/xim.rb +123 -0
  101. data/lib/tkafter.rb +5 -0
  102. data/lib/tkbgerror.rb +5 -0
  103. data/lib/tkcanvas.rb +5 -0
  104. data/lib/tkclass.rb +48 -0
  105. data/lib/tkconsole.rb +5 -0
  106. data/lib/tkdialog.rb +5 -0
  107. data/lib/tkentry.rb +5 -0
  108. data/lib/tkextlib/ICONS.rb +14 -0
  109. data/lib/tkextlib/ICONS/icons.rb +130 -0
  110. data/lib/tkextlib/ICONS/setup.rb +9 -0
  111. data/lib/tkextlib/SUPPORT_STATUS +193 -0
  112. data/lib/tkextlib/blt.rb +190 -0
  113. data/lib/tkextlib/blt/barchart.rb +80 -0
  114. data/lib/tkextlib/blt/bitmap.rb +113 -0
  115. data/lib/tkextlib/blt/busy.rb +84 -0
  116. data/lib/tkextlib/blt/component.rb +2219 -0
  117. data/lib/tkextlib/blt/container.rb +29 -0
  118. data/lib/tkextlib/blt/cutbuffer.rb +24 -0
  119. data/lib/tkextlib/blt/dragdrop.rb +270 -0
  120. data/lib/tkextlib/blt/eps.rb +33 -0
  121. data/lib/tkextlib/blt/graph.rb +68 -0
  122. data/lib/tkextlib/blt/htext.rb +113 -0
  123. data/lib/tkextlib/blt/setup.rb +9 -0
  124. data/lib/tkextlib/blt/spline.rb +24 -0
  125. data/lib/tkextlib/blt/stripchart.rb +75 -0
  126. data/lib/tkextlib/blt/table.rb +413 -0
  127. data/lib/tkextlib/blt/tabnotebook.rb +111 -0
  128. data/lib/tkextlib/blt/tabset.rb +505 -0
  129. data/lib/tkextlib/blt/ted.rb +69 -0
  130. data/lib/tkextlib/blt/tile.rb +26 -0
  131. data/lib/tkextlib/blt/tile/button.rb +17 -0
  132. data/lib/tkextlib/blt/tile/checkbutton.rb +18 -0
  133. data/lib/tkextlib/blt/tile/frame.rb +17 -0
  134. data/lib/tkextlib/blt/tile/label.rb +17 -0
  135. data/lib/tkextlib/blt/tile/radiobutton.rb +18 -0
  136. data/lib/tkextlib/blt/tile/scrollbar.rb +17 -0
  137. data/lib/tkextlib/blt/tile/toplevel.rb +17 -0
  138. data/lib/tkextlib/blt/tree.rb +1059 -0
  139. data/lib/tkextlib/blt/treeview.rb +1288 -0
  140. data/lib/tkextlib/blt/unix_dnd.rb +142 -0
  141. data/lib/tkextlib/blt/vector.rb +257 -0
  142. data/lib/tkextlib/blt/watch.rb +176 -0
  143. data/lib/tkextlib/blt/win_printer.rb +62 -0
  144. data/lib/tkextlib/blt/winop.rb +108 -0
  145. data/lib/tkextlib/bwidget.rb +154 -0
  146. data/lib/tkextlib/bwidget/arrowbutton.rb +22 -0
  147. data/lib/tkextlib/bwidget/bitmap.rb +22 -0
  148. data/lib/tkextlib/bwidget/button.rb +32 -0
  149. data/lib/tkextlib/bwidget/buttonbox.rb +91 -0
  150. data/lib/tkextlib/bwidget/combobox.rb +63 -0
  151. data/lib/tkextlib/bwidget/dialog.rb +195 -0
  152. data/lib/tkextlib/bwidget/dragsite.rb +32 -0
  153. data/lib/tkextlib/bwidget/dropsite.rb +40 -0
  154. data/lib/tkextlib/bwidget/dynamichelp.rb +64 -0
  155. data/lib/tkextlib/bwidget/entry.rb +44 -0
  156. data/lib/tkextlib/bwidget/label.rb +42 -0
  157. data/lib/tkextlib/bwidget/labelentry.rb +81 -0
  158. data/lib/tkextlib/bwidget/labelframe.rb +53 -0
  159. data/lib/tkextlib/bwidget/listbox.rb +362 -0
  160. data/lib/tkextlib/bwidget/mainframe.rb +133 -0
  161. data/lib/tkextlib/bwidget/messagedlg.rb +193 -0
  162. data/lib/tkextlib/bwidget/notebook.rb +167 -0
  163. data/lib/tkextlib/bwidget/pagesmanager.rb +74 -0
  164. data/lib/tkextlib/bwidget/panedwindow.rb +43 -0
  165. data/lib/tkextlib/bwidget/panelframe.rb +68 -0
  166. data/lib/tkextlib/bwidget/passwddlg.rb +45 -0
  167. data/lib/tkextlib/bwidget/progressbar.rb +21 -0
  168. data/lib/tkextlib/bwidget/progressdlg.rb +59 -0
  169. data/lib/tkextlib/bwidget/scrollableframe.rb +41 -0
  170. data/lib/tkextlib/bwidget/scrolledwindow.rb +49 -0
  171. data/lib/tkextlib/bwidget/scrollview.rb +26 -0
  172. data/lib/tkextlib/bwidget/selectcolor.rb +74 -0
  173. data/lib/tkextlib/bwidget/selectfont.rb +92 -0
  174. data/lib/tkextlib/bwidget/separator.rb +21 -0
  175. data/lib/tkextlib/bwidget/setup.rb +9 -0
  176. data/lib/tkextlib/bwidget/spinbox.rb +99 -0
  177. data/lib/tkextlib/bwidget/statusbar.rb +63 -0
  178. data/lib/tkextlib/bwidget/titleframe.rb +34 -0
  179. data/lib/tkextlib/bwidget/tree.rb +501 -0
  180. data/lib/tkextlib/bwidget/widget.rb +130 -0
  181. data/lib/tkextlib/itcl.rb +14 -0
  182. data/lib/tkextlib/itcl/incr_tcl.rb +179 -0
  183. data/lib/tkextlib/itcl/setup.rb +14 -0
  184. data/lib/tkextlib/itk.rb +14 -0
  185. data/lib/tkextlib/itk/incr_tk.rb +447 -0
  186. data/lib/tkextlib/itk/setup.rb +14 -0
  187. data/lib/tkextlib/iwidgets.rb +95 -0
  188. data/lib/tkextlib/iwidgets/buttonbox.rb +122 -0
  189. data/lib/tkextlib/iwidgets/calendar.rb +126 -0
  190. data/lib/tkextlib/iwidgets/canvasprintbox.rb +54 -0
  191. data/lib/tkextlib/iwidgets/canvasprintdialog.rb +39 -0
  192. data/lib/tkextlib/iwidgets/checkbox.rb +131 -0
  193. data/lib/tkextlib/iwidgets/combobox.rb +105 -0
  194. data/lib/tkextlib/iwidgets/dateentry.rb +21 -0
  195. data/lib/tkextlib/iwidgets/datefield.rb +59 -0
  196. data/lib/tkextlib/iwidgets/dialog.rb +21 -0
  197. data/lib/tkextlib/iwidgets/dialogshell.rb +122 -0
  198. data/lib/tkextlib/iwidgets/disjointlistbox.rb +51 -0
  199. data/lib/tkextlib/iwidgets/entryfield.rb +186 -0
  200. data/lib/tkextlib/iwidgets/extbutton.rb +41 -0
  201. data/lib/tkextlib/iwidgets/extfileselectionbox.rb +47 -0
  202. data/lib/tkextlib/iwidgets/extfileselectiondialog.rb +34 -0
  203. data/lib/tkextlib/iwidgets/feedback.rb +36 -0
  204. data/lib/tkextlib/iwidgets/fileselectionbox.rb +47 -0
  205. data/lib/tkextlib/iwidgets/fileselectiondialog.rb +34 -0
  206. data/lib/tkextlib/iwidgets/finddialog.rb +43 -0
  207. data/lib/tkextlib/iwidgets/hierarchy.rb +366 -0
  208. data/lib/tkextlib/iwidgets/hyperhelp.rb +51 -0
  209. data/lib/tkextlib/iwidgets/labeledframe.rb +40 -0
  210. data/lib/tkextlib/iwidgets/labeledwidget.rb +46 -0
  211. data/lib/tkextlib/iwidgets/mainwindow.rb +68 -0
  212. data/lib/tkextlib/iwidgets/menubar.rb +213 -0
  213. data/lib/tkextlib/iwidgets/messagebox.rb +94 -0
  214. data/lib/tkextlib/iwidgets/messagedialog.rb +21 -0
  215. data/lib/tkextlib/iwidgets/notebook.rb +176 -0
  216. data/lib/tkextlib/iwidgets/optionmenu.rb +93 -0
  217. data/lib/tkextlib/iwidgets/panedwindow.rb +135 -0
  218. data/lib/tkextlib/iwidgets/promptdialog.rb +132 -0
  219. data/lib/tkextlib/iwidgets/pushbutton.rb +36 -0
  220. data/lib/tkextlib/iwidgets/radiobox.rb +122 -0
  221. data/lib/tkextlib/iwidgets/scopedobject.rb +25 -0
  222. data/lib/tkextlib/iwidgets/scrolledcanvas.rb +354 -0
  223. data/lib/tkextlib/iwidgets/scrolledframe.rb +60 -0
  224. data/lib/tkextlib/iwidgets/scrolledhtml.rb +59 -0
  225. data/lib/tkextlib/iwidgets/scrolledlistbox.rb +208 -0
  226. data/lib/tkextlib/iwidgets/scrolledtext.rb +569 -0
  227. data/lib/tkextlib/iwidgets/scrolledwidget.rb +21 -0
  228. data/lib/tkextlib/iwidgets/selectionbox.rb +103 -0
  229. data/lib/tkextlib/iwidgets/selectiondialog.rb +93 -0
  230. data/lib/tkextlib/iwidgets/setup.rb +9 -0
  231. data/lib/tkextlib/iwidgets/shell.rb +39 -0
  232. data/lib/tkextlib/iwidgets/spindate.rb +49 -0
  233. data/lib/tkextlib/iwidgets/spinint.rb +31 -0
  234. data/lib/tkextlib/iwidgets/spinner.rb +170 -0
  235. data/lib/tkextlib/iwidgets/spintime.rb +49 -0
  236. data/lib/tkextlib/iwidgets/tabnotebook.rb +182 -0
  237. data/lib/tkextlib/iwidgets/tabset.rb +146 -0
  238. data/lib/tkextlib/iwidgets/timeentry.rb +26 -0
  239. data/lib/tkextlib/iwidgets/timefield.rb +59 -0
  240. data/lib/tkextlib/iwidgets/toolbar.rb +113 -0
  241. data/lib/tkextlib/iwidgets/watch.rb +57 -0
  242. data/lib/tkextlib/pkg_checker.rb +185 -0
  243. data/lib/tkextlib/setup.rb +9 -0
  244. data/lib/tkextlib/tcllib.rb +106 -0
  245. data/lib/tkextlib/tcllib/README +135 -0
  246. data/lib/tkextlib/tcllib/autoscroll.rb +159 -0
  247. data/lib/tkextlib/tcllib/calendar.rb +56 -0
  248. data/lib/tkextlib/tcllib/canvas_sqmap.rb +37 -0
  249. data/lib/tkextlib/tcllib/canvas_zoom.rb +22 -0
  250. data/lib/tkextlib/tcllib/chatwidget.rb +152 -0
  251. data/lib/tkextlib/tcllib/crosshair.rb +118 -0
  252. data/lib/tkextlib/tcllib/ctext.rb +161 -0
  253. data/lib/tkextlib/tcllib/cursor.rb +98 -0
  254. data/lib/tkextlib/tcllib/dateentry.rb +63 -0
  255. data/lib/tkextlib/tcllib/datefield.rb +58 -0
  256. data/lib/tkextlib/tcllib/diagrams.rb +225 -0
  257. data/lib/tkextlib/tcllib/dialog.rb +85 -0
  258. data/lib/tkextlib/tcllib/getstring.rb +135 -0
  259. data/lib/tkextlib/tcllib/history.rb +74 -0
  260. data/lib/tkextlib/tcllib/ico.rb +147 -0
  261. data/lib/tkextlib/tcllib/ip_entry.rb +76 -0
  262. data/lib/tkextlib/tcllib/khim.rb +69 -0
  263. data/lib/tkextlib/tcllib/menuentry.rb +48 -0
  264. data/lib/tkextlib/tcllib/ntext.rb +147 -0
  265. data/lib/tkextlib/tcllib/panelframe.rb +79 -0
  266. data/lib/tkextlib/tcllib/plotchart.rb +1405 -0
  267. data/lib/tkextlib/tcllib/ruler.rb +66 -0
  268. data/lib/tkextlib/tcllib/screenruler.rb +69 -0
  269. data/lib/tkextlib/tcllib/scrolledwindow.rb +58 -0
  270. data/lib/tkextlib/tcllib/scrollwin.rb +62 -0
  271. data/lib/tkextlib/tcllib/setup.rb +9 -0
  272. data/lib/tkextlib/tcllib/statusbar.rb +80 -0
  273. data/lib/tkextlib/tcllib/style.rb +62 -0
  274. data/lib/tkextlib/tcllib/superframe.rb +52 -0
  275. data/lib/tkextlib/tcllib/swaplist.rb +151 -0
  276. data/lib/tkextlib/tcllib/tablelist.rb +29 -0
  277. data/lib/tkextlib/tcllib/tablelist_core.rb +1073 -0
  278. data/lib/tkextlib/tcllib/tablelist_tile.rb +44 -0
  279. data/lib/tkextlib/tcllib/tkpiechart.rb +315 -0
  280. data/lib/tkextlib/tcllib/toolbar.rb +176 -0
  281. data/lib/tkextlib/tcllib/tooltip.rb +105 -0
  282. data/lib/tkextlib/tcllib/validator.rb +66 -0
  283. data/lib/tkextlib/tcllib/widget.rb +83 -0
  284. data/lib/tkextlib/tclx.rb +14 -0
  285. data/lib/tkextlib/tclx/setup.rb +9 -0
  286. data/lib/tkextlib/tclx/tclx.rb +75 -0
  287. data/lib/tkextlib/tile.rb +450 -0
  288. data/lib/tkextlib/tile/dialog.rb +103 -0
  289. data/lib/tkextlib/tile/setup.rb +9 -0
  290. data/lib/tkextlib/tile/sizegrip.rb +33 -0
  291. data/lib/tkextlib/tile/style.rb +337 -0
  292. data/lib/tkextlib/tile/tbutton.rb +35 -0
  293. data/lib/tkextlib/tile/tcheckbutton.rb +39 -0
  294. data/lib/tkextlib/tile/tcombobox.rb +56 -0
  295. data/lib/tkextlib/tile/tentry.rb +50 -0
  296. data/lib/tkextlib/tile/tframe.rb +35 -0
  297. data/lib/tkextlib/tile/tlabel.rb +35 -0
  298. data/lib/tkextlib/tile/tlabelframe.rb +39 -0
  299. data/lib/tkextlib/tile/tmenubutton.rb +39 -0
  300. data/lib/tkextlib/tile/tnotebook.rb +148 -0
  301. data/lib/tkextlib/tile/tpaned.rb +246 -0
  302. data/lib/tkextlib/tile/tprogressbar.rb +58 -0
  303. data/lib/tkextlib/tile/tradiobutton.rb +39 -0
  304. data/lib/tkextlib/tile/treeview.rb +1337 -0
  305. data/lib/tkextlib/tile/tscale.rb +57 -0
  306. data/lib/tkextlib/tile/tscrollbar.rb +64 -0
  307. data/lib/tkextlib/tile/tseparator.rb +35 -0
  308. data/lib/tkextlib/tile/tspinbox.rb +108 -0
  309. data/lib/tkextlib/tile/tsquare.rb +31 -0
  310. data/lib/tkextlib/tkDND.rb +19 -0
  311. data/lib/tkextlib/tkDND/setup.rb +9 -0
  312. data/lib/tkextlib/tkDND/shape.rb +126 -0
  313. data/lib/tkextlib/tkDND/tkdnd.rb +183 -0
  314. data/lib/tkextlib/tkHTML.rb +14 -0
  315. data/lib/tkextlib/tkHTML/htmlwidget.rb +454 -0
  316. data/lib/tkextlib/tkHTML/setup.rb +9 -0
  317. data/lib/tkextlib/tkimg.rb +37 -0
  318. data/lib/tkextlib/tkimg/README +26 -0
  319. data/lib/tkextlib/tkimg/bmp.rb +34 -0
  320. data/lib/tkextlib/tkimg/dted.rb +34 -0
  321. data/lib/tkextlib/tkimg/gif.rb +34 -0
  322. data/lib/tkextlib/tkimg/ico.rb +34 -0
  323. data/lib/tkextlib/tkimg/jpeg.rb +34 -0
  324. data/lib/tkextlib/tkimg/pcx.rb +34 -0
  325. data/lib/tkextlib/tkimg/pixmap.rb +45 -0
  326. data/lib/tkextlib/tkimg/png.rb +34 -0
  327. data/lib/tkextlib/tkimg/ppm.rb +34 -0
  328. data/lib/tkextlib/tkimg/ps.rb +34 -0
  329. data/lib/tkextlib/tkimg/raw.rb +34 -0
  330. data/lib/tkextlib/tkimg/setup.rb +9 -0
  331. data/lib/tkextlib/tkimg/sgi.rb +34 -0
  332. data/lib/tkextlib/tkimg/sun.rb +34 -0
  333. data/lib/tkextlib/tkimg/tga.rb +34 -0
  334. data/lib/tkextlib/tkimg/tiff.rb +34 -0
  335. data/lib/tkextlib/tkimg/window.rb +34 -0
  336. data/lib/tkextlib/tkimg/xbm.rb +34 -0
  337. data/lib/tkextlib/tkimg/xpm.rb +34 -0
  338. data/lib/tkextlib/tktable.rb +15 -0
  339. data/lib/tkextlib/tktable/setup.rb +9 -0
  340. data/lib/tkextlib/tktable/tktable.rb +967 -0
  341. data/lib/tkextlib/tktrans.rb +15 -0
  342. data/lib/tkextlib/tktrans/setup.rb +9 -0
  343. data/lib/tkextlib/tktrans/tktrans.rb +65 -0
  344. data/lib/tkextlib/treectrl.rb +14 -0
  345. data/lib/tkextlib/treectrl/setup.rb +9 -0
  346. data/lib/tkextlib/treectrl/tktreectrl.rb +2523 -0
  347. data/lib/tkextlib/trofs.rb +14 -0
  348. data/lib/tkextlib/trofs/setup.rb +9 -0
  349. data/lib/tkextlib/trofs/trofs.rb +52 -0
  350. data/lib/tkextlib/version.rb +7 -0
  351. data/lib/tkextlib/vu.rb +49 -0
  352. data/lib/tkextlib/vu/bargraph.rb +62 -0
  353. data/lib/tkextlib/vu/charts.rb +54 -0
  354. data/lib/tkextlib/vu/dial.rb +103 -0
  355. data/lib/tkextlib/vu/pie.rb +287 -0
  356. data/lib/tkextlib/vu/setup.rb +9 -0
  357. data/lib/tkextlib/vu/spinbox.rb +23 -0
  358. data/lib/tkextlib/winico.rb +15 -0
  359. data/lib/tkextlib/winico/setup.rb +9 -0
  360. data/lib/tkextlib/winico/winico.rb +225 -0
  361. data/lib/tkfont.rb +5 -0
  362. data/lib/tkmacpkg.rb +5 -0
  363. data/lib/tkmenubar.rb +5 -0
  364. data/lib/tkmngfocus.rb +5 -0
  365. data/lib/tkpalette.rb +5 -0
  366. data/lib/tkscrollbox.rb +5 -0
  367. data/lib/tktext.rb +5 -0
  368. data/lib/tkvirtevent.rb +5 -0
  369. data/lib/tkwinpkg.rb +5 -0
  370. data/old-README.tcltklib.ja +159 -0
  371. data/sample/24hr_clock.rb +287 -0
  372. data/sample/binding_sample.rb +88 -0
  373. data/sample/bindtag_sample.rb +128 -0
  374. data/sample/binstr_usage.rb +46 -0
  375. data/sample/btn_with_frame.rb +21 -0
  376. data/sample/cd_timer.rb +82 -0
  377. data/sample/cmd_res_test.rb +18 -0
  378. data/sample/cmd_resource +5 -0
  379. data/sample/demos-en/ChangeLog +64 -0
  380. data/sample/demos-en/ChangeLog.prev +9 -0
  381. data/sample/demos-en/README +138 -0
  382. data/sample/demos-en/README.1st +18 -0
  383. data/sample/demos-en/README.tkencoding +29 -0
  384. data/sample/demos-en/anilabel.rb +175 -0
  385. data/sample/demos-en/aniwave.rb +119 -0
  386. data/sample/demos-en/arrow.rb +250 -0
  387. data/sample/demos-en/bind.rb +128 -0
  388. data/sample/demos-en/bitmap.rb +76 -0
  389. data/sample/demos-en/browse1 +63 -0
  390. data/sample/demos-en/browse2 +82 -0
  391. data/sample/demos-en/button.rb +85 -0
  392. data/sample/demos-en/check.rb +73 -0
  393. data/sample/demos-en/check2.rb +110 -0
  394. data/sample/demos-en/clrpick.rb +88 -0
  395. data/sample/demos-en/colors.rb +159 -0
  396. data/sample/demos-en/combo.rb +97 -0
  397. data/sample/demos-en/cscroll.rb +137 -0
  398. data/sample/demos-en/ctext.rb +208 -0
  399. data/sample/demos-en/dialog1.rb +39 -0
  400. data/sample/demos-en/dialog2.rb +42 -0
  401. data/sample/demos-en/doc.org/README +7 -0
  402. data/sample/demos-en/doc.org/README.JP +14 -0
  403. data/sample/demos-en/doc.org/README.tk80 +46 -0
  404. data/sample/demos-en/doc.org/license.terms +39 -0
  405. data/sample/demos-en/doc.org/license.terms.tk80 +39 -0
  406. data/sample/demos-en/entry1.rb +59 -0
  407. data/sample/demos-en/entry2.rb +94 -0
  408. data/sample/demos-en/entry3.rb +221 -0
  409. data/sample/demos-en/filebox.rb +103 -0
  410. data/sample/demos-en/floor.rb +1724 -0
  411. data/sample/demos-en/floor2.rb +1723 -0
  412. data/sample/demos-en/form.rb +65 -0
  413. data/sample/demos-en/goldberg.rb +2007 -0
  414. data/sample/demos-en/hello +14 -0
  415. data/sample/demos-en/hscale.rb +76 -0
  416. data/sample/demos-en/icon.rb +106 -0
  417. data/sample/demos-en/image1.rb +66 -0
  418. data/sample/demos-en/image2.rb +108 -0
  419. data/sample/demos-en/image3.rb +126 -0
  420. data/sample/demos-en/items.rb +382 -0
  421. data/sample/demos-en/ixset +333 -0
  422. data/sample/demos-en/ixset2 +367 -0
  423. data/sample/demos-en/knightstour.rb +272 -0
  424. data/sample/demos-en/label.rb +73 -0
  425. data/sample/demos-en/labelframe.rb +96 -0
  426. data/sample/demos-en/mclist.rb +118 -0
  427. data/sample/demos-en/menu.rb +197 -0
  428. data/sample/demos-en/menu84.rb +216 -0
  429. data/sample/demos-en/menubu.rb +238 -0
  430. data/sample/demos-en/msgbox.rb +91 -0
  431. data/sample/demos-en/msgbox2.rb +92 -0
  432. data/sample/demos-en/paned1.rb +48 -0
  433. data/sample/demos-en/paned2.rb +95 -0
  434. data/sample/demos-en/pendulum.rb +241 -0
  435. data/sample/demos-en/plot.rb +125 -0
  436. data/sample/demos-en/puzzle.rb +135 -0
  437. data/sample/demos-en/radio.rb +87 -0
  438. data/sample/demos-en/radio2.rb +110 -0
  439. data/sample/demos-en/radio3.rb +118 -0
  440. data/sample/demos-en/rmt +268 -0
  441. data/sample/demos-en/rolodex +320 -0
  442. data/sample/demos-en/ruler.rb +206 -0
  443. data/sample/demos-en/sayings.rb +107 -0
  444. data/sample/demos-en/search.rb +188 -0
  445. data/sample/demos-en/spin.rb +66 -0
  446. data/sample/demos-en/square +81 -0
  447. data/sample/demos-en/states.rb +81 -0
  448. data/sample/demos-en/style.rb +232 -0
  449. data/sample/demos-en/tcolor +526 -0
  450. data/sample/demos-en/text.rb +129 -0
  451. data/sample/demos-en/textpeer.rb +77 -0
  452. data/sample/demos-en/timer +136 -0
  453. data/sample/demos-en/tkencoding.rb +43 -0
  454. data/sample/demos-en/toolbar.rb +131 -0
  455. data/sample/demos-en/tree.rb +120 -0
  456. data/sample/demos-en/ttkbut.rb +140 -0
  457. data/sample/demos-en/ttkmenu.rb +86 -0
  458. data/sample/demos-en/ttknote.rb +90 -0
  459. data/sample/demos-en/ttkpane.rb +214 -0
  460. data/sample/demos-en/ttkprogress.rb +67 -0
  461. data/sample/demos-en/twind.rb +292 -0
  462. data/sample/demos-en/twind2.rb +385 -0
  463. data/sample/demos-en/unicodeout.rb +115 -0
  464. data/sample/demos-en/vscale.rb +80 -0
  465. data/sample/demos-en/widget +1087 -0
  466. data/sample/demos-jp/README +54 -0
  467. data/sample/demos-jp/README.1st +20 -0
  468. data/sample/demos-jp/anilabel.rb +178 -0
  469. data/sample/demos-jp/aniwave.rb +121 -0
  470. data/sample/demos-jp/arrow.rb +248 -0
  471. data/sample/demos-jp/bind.rb +126 -0
  472. data/sample/demos-jp/bitmap.rb +75 -0
  473. data/sample/demos-jp/browse1 +63 -0
  474. data/sample/demos-jp/browse2 +82 -0
  475. data/sample/demos-jp/button.rb +84 -0
  476. data/sample/demos-jp/check.rb +71 -0
  477. data/sample/demos-jp/check2.rb +111 -0
  478. data/sample/demos-jp/clrpick.rb +85 -0
  479. data/sample/demos-jp/colors.rb +156 -0
  480. data/sample/demos-jp/combo.rb +99 -0
  481. data/sample/demos-jp/cscroll.rb +135 -0
  482. data/sample/demos-jp/ctext.rb +205 -0
  483. data/sample/demos-jp/dialog1.rb +40 -0
  484. data/sample/demos-jp/dialog2.rb +44 -0
  485. data/sample/demos-jp/doc.org/README +7 -0
  486. data/sample/demos-jp/doc.org/README.JP +14 -0
  487. data/sample/demos-jp/doc.org/README.tk80 +46 -0
  488. data/sample/demos-jp/doc.org/license.terms +39 -0
  489. data/sample/demos-jp/doc.org/license.terms.tk80 +39 -0
  490. data/sample/demos-jp/entry1.rb +61 -0
  491. data/sample/demos-jp/entry2.rb +92 -0
  492. data/sample/demos-jp/entry3.rb +226 -0
  493. data/sample/demos-jp/filebox.rb +103 -0
  494. data/sample/demos-jp/floor.rb +1722 -0
  495. data/sample/demos-jp/floor2.rb +1720 -0
  496. data/sample/demos-jp/form.rb +67 -0
  497. data/sample/demos-jp/goldberg.rb +2012 -0
  498. data/sample/demos-jp/hello +10 -0
  499. data/sample/demos-jp/hscale.rb +79 -0
  500. data/sample/demos-jp/icon.rb +104 -0
  501. data/sample/demos-jp/image1.rb +65 -0
  502. data/sample/demos-jp/image2.rb +107 -0
  503. data/sample/demos-jp/image3.rb +128 -0
  504. data/sample/demos-jp/items.rb +380 -0
  505. data/sample/demos-jp/ixset +333 -0
  506. data/sample/demos-jp/ixset2 +369 -0
  507. data/sample/demos-jp/knightstour.rb +274 -0
  508. data/sample/demos-jp/label.rb +70 -0
  509. data/sample/demos-jp/labelframe.rb +103 -0
  510. data/sample/demos-jp/mclist.rb +122 -0
  511. data/sample/demos-jp/menu.rb +202 -0
  512. data/sample/demos-jp/menu84.rb +214 -0
  513. data/sample/demos-jp/menu8x.rb +234 -0
  514. data/sample/demos-jp/menubu.rb +239 -0
  515. data/sample/demos-jp/msgbox.rb +90 -0
  516. data/sample/demos-jp/msgbox2.rb +91 -0
  517. data/sample/demos-jp/paned1.rb +53 -0
  518. data/sample/demos-jp/paned2.rb +101 -0
  519. data/sample/demos-jp/pendulum.rb +243 -0
  520. data/sample/demos-jp/plot.rb +127 -0
  521. data/sample/demos-jp/puzzle.rb +132 -0
  522. data/sample/demos-jp/radio.rb +85 -0
  523. data/sample/demos-jp/radio2.rb +113 -0
  524. data/sample/demos-jp/radio3.rb +120 -0
  525. data/sample/demos-jp/rmt +268 -0
  526. data/sample/demos-jp/rolodex +320 -0
  527. data/sample/demos-jp/rolodex-j +300 -0
  528. data/sample/demos-jp/ruler.rb +204 -0
  529. data/sample/demos-jp/sayings.rb +104 -0
  530. data/sample/demos-jp/search.rb +185 -0
  531. data/sample/demos-jp/spin.rb +72 -0
  532. data/sample/demos-jp/square +81 -0
  533. data/sample/demos-jp/states.rb +75 -0
  534. data/sample/demos-jp/style.rb +271 -0
  535. data/sample/demos-jp/tcolor +534 -0
  536. data/sample/demos-jp/text.rb +121 -0
  537. data/sample/demos-jp/textpeer.rb +83 -0
  538. data/sample/demos-jp/timer +136 -0
  539. data/sample/demos-jp/toolbar.rb +137 -0
  540. data/sample/demos-jp/tree.rb +121 -0
  541. data/sample/demos-jp/ttkbut.rb +146 -0
  542. data/sample/demos-jp/ttkmenu.rb +92 -0
  543. data/sample/demos-jp/ttknote.rb +98 -0
  544. data/sample/demos-jp/ttkpane.rb +217 -0
  545. data/sample/demos-jp/ttkprogress.rb +72 -0
  546. data/sample/demos-jp/twind.rb +293 -0
  547. data/sample/demos-jp/twind2.rb +385 -0
  548. data/sample/demos-jp/unicodeout.rb +120 -0
  549. data/sample/demos-jp/vscale.rb +81 -0
  550. data/sample/demos-jp/widget +1122 -0
  551. data/sample/editable_listbox.rb +149 -0
  552. data/sample/encstr_usage.rb +31 -0
  553. data/sample/figmemo_sample.rb +457 -0
  554. data/sample/images/earth.gif +0 -0
  555. data/sample/images/earthris.gif +0 -0
  556. data/sample/images/face.xbm +173 -0
  557. data/sample/images/flagdown.xbm +27 -0
  558. data/sample/images/flagup.xbm +27 -0
  559. data/sample/images/gray25.xbm +6 -0
  560. data/sample/images/grey.25 +6 -0
  561. data/sample/images/grey.5 +6 -0
  562. data/sample/images/letters.xbm +27 -0
  563. data/sample/images/noletter.xbm +27 -0
  564. data/sample/images/pattern.xbm +6 -0
  565. data/sample/images/tcllogo.gif +0 -0
  566. data/sample/images/teapot.ppm +31 -0
  567. data/sample/irbtk.rb +31 -0
  568. data/sample/irbtkw.rbw +156 -0
  569. data/sample/iso2022-kr.txt +2 -0
  570. data/sample/menubar1.rb +52 -0
  571. data/sample/menubar2.rb +57 -0
  572. data/sample/menubar3.rb +73 -0
  573. data/sample/msgs_rb/README +3 -0
  574. data/sample/msgs_rb/cs.msg +84 -0
  575. data/sample/msgs_rb/de.msg +88 -0
  576. data/sample/msgs_rb/el.msg +98 -0
  577. data/sample/msgs_rb/en.msg +83 -0
  578. data/sample/msgs_rb/en_gb.msg +7 -0
  579. data/sample/msgs_rb/eo.msg +87 -0
  580. data/sample/msgs_rb/es.msg +84 -0
  581. data/sample/msgs_rb/fr.msg +84 -0
  582. data/sample/msgs_rb/it.msg +84 -0
  583. data/sample/msgs_rb/ja.msg +13 -0
  584. data/sample/msgs_rb/nl.msg +123 -0
  585. data/sample/msgs_rb/pl.msg +87 -0
  586. data/sample/msgs_rb/ru.msg +87 -0
  587. data/sample/msgs_rb2/README +5 -0
  588. data/sample/msgs_rb2/de.msg +88 -0
  589. data/sample/msgs_rb2/ja.msg +85 -0
  590. data/sample/msgs_tk/README +4 -0
  591. data/sample/msgs_tk/cs.msg +84 -0
  592. data/sample/msgs_tk/de.msg +88 -0
  593. data/sample/msgs_tk/el.msg +103 -0
  594. data/sample/msgs_tk/en.msg +83 -0
  595. data/sample/msgs_tk/en_gb.msg +7 -0
  596. data/sample/msgs_tk/eo.msg +87 -0
  597. data/sample/msgs_tk/es.msg +84 -0
  598. data/sample/msgs_tk/fr.msg +84 -0
  599. data/sample/msgs_tk/it.msg +84 -0
  600. data/sample/msgs_tk/ja.msg +13 -0
  601. data/sample/msgs_tk/license.terms +39 -0
  602. data/sample/msgs_tk/nl.msg +123 -0
  603. data/sample/msgs_tk/pl.msg +87 -0
  604. data/sample/msgs_tk/ru.msg +87 -0
  605. data/sample/multi-ip_sample.rb +104 -0
  606. data/sample/multi-ip_sample2.rb +30 -0
  607. data/sample/optobj_sample.rb +68 -0
  608. data/sample/propagate.rb +31 -0
  609. data/sample/remote-ip_sample.rb +34 -0
  610. data/sample/remote-ip_sample2.rb +57 -0
  611. data/sample/resource.en +13 -0
  612. data/sample/resource.ja +13 -0
  613. data/sample/safe-tk.rb +132 -0
  614. data/sample/scrollframe.rb +250 -0
  615. data/sample/tcltklib/batsu.gif +0 -0
  616. data/sample/tcltklib/lines0.tcl +42 -0
  617. data/sample/tcltklib/lines1.rb +51 -0
  618. data/sample/tcltklib/lines2.rb +55 -0
  619. data/sample/tcltklib/lines3.rb +55 -0
  620. data/sample/tcltklib/lines4.rb +55 -0
  621. data/sample/tcltklib/maru.gif +0 -0
  622. data/sample/tcltklib/safeTk.rb +23 -0
  623. data/sample/tcltklib/sample0.rb +40 -0
  624. data/sample/tcltklib/sample1.rb +635 -0
  625. data/sample/tcltklib/sample2.rb +452 -0
  626. data/sample/tkalignbox.rb +236 -0
  627. data/sample/tkballoonhelp.rb +221 -0
  628. data/sample/tkbiff.rb +156 -0
  629. data/sample/tkbrowse.rb +80 -0
  630. data/sample/tkcombobox.rb +498 -0
  631. data/sample/tkdialog.rb +62 -0
  632. data/sample/tkextlib/ICONS/Orig_LICENSE.txt +61 -0
  633. data/sample/tkextlib/ICONS/tkIcons +195 -0
  634. data/sample/tkextlib/ICONS/tkIcons-sample.kde +658 -0
  635. data/sample/tkextlib/ICONS/tkIcons.kde +195 -0
  636. data/sample/tkextlib/ICONS/viewIcons.rb +330 -0
  637. data/sample/tkextlib/blt/barchart5.rb +102 -0
  638. data/sample/tkextlib/blt/calendar.rb +118 -0
  639. data/sample/tkextlib/blt/graph6.rb +2223 -0
  640. data/sample/tkextlib/blt/graph7.rb +41 -0
  641. data/sample/tkextlib/blt/graph7a.rb +64 -0
  642. data/sample/tkextlib/blt/graph7b.rb +42 -0
  643. data/sample/tkextlib/blt/graph7c.rb +46 -0
  644. data/sample/tkextlib/blt/images/buckskin.gif +0 -0
  645. data/sample/tkextlib/blt/images/chalk.gif +0 -0
  646. data/sample/tkextlib/blt/images/qv100.t.gif +0 -0
  647. data/sample/tkextlib/blt/images/rain.gif +0 -0
  648. data/sample/tkextlib/blt/images/sample.gif +0 -0
  649. data/sample/tkextlib/blt/pareto.rb +91 -0
  650. data/sample/tkextlib/blt/plot1.rb +10 -0
  651. data/sample/tkextlib/blt/plot1b.rb +11 -0
  652. data/sample/tkextlib/blt/readme.txt +2 -0
  653. data/sample/tkextlib/blt/scripts/stipples.rb +157 -0
  654. data/sample/tkextlib/blt/winop1.rb +41 -0
  655. data/sample/tkextlib/blt/winop2.rb +29 -0
  656. data/sample/tkextlib/bwidget/Orig_LICENSE.txt +53 -0
  657. data/sample/tkextlib/bwidget/basic.rb +199 -0
  658. data/sample/tkextlib/bwidget/bwidget.xbm +46 -0
  659. data/sample/tkextlib/bwidget/demo.rb +244 -0
  660. data/sample/tkextlib/bwidget/dnd.rb +47 -0
  661. data/sample/tkextlib/bwidget/manager.rb +151 -0
  662. data/sample/tkextlib/bwidget/select.rb +83 -0
  663. data/sample/tkextlib/bwidget/tmpldlg.rb +222 -0
  664. data/sample/tkextlib/bwidget/tree.rb +290 -0
  665. data/sample/tkextlib/bwidget/x1.xbm +2258 -0
  666. data/sample/tkextlib/iwidgets/catalog_demo/Orig_LICENSE.txt +42 -0
  667. data/sample/tkextlib/iwidgets/catalog_demo/images/box.xbm +14 -0
  668. data/sample/tkextlib/iwidgets/catalog_demo/images/clear.gif +0 -0
  669. data/sample/tkextlib/iwidgets/catalog_demo/images/close.gif +0 -0
  670. data/sample/tkextlib/iwidgets/catalog_demo/images/copy.gif +0 -0
  671. data/sample/tkextlib/iwidgets/catalog_demo/images/cut.gif +0 -0
  672. data/sample/tkextlib/iwidgets/catalog_demo/images/exit.gif +0 -0
  673. data/sample/tkextlib/iwidgets/catalog_demo/images/find.gif +0 -0
  674. data/sample/tkextlib/iwidgets/catalog_demo/images/help.gif +0 -0
  675. data/sample/tkextlib/iwidgets/catalog_demo/images/line.xbm +14 -0
  676. data/sample/tkextlib/iwidgets/catalog_demo/images/mag.gif +0 -0
  677. data/sample/tkextlib/iwidgets/catalog_demo/images/new.gif +0 -0
  678. data/sample/tkextlib/iwidgets/catalog_demo/images/open.gif +0 -0
  679. data/sample/tkextlib/iwidgets/catalog_demo/images/oval.xbm +14 -0
  680. data/sample/tkextlib/iwidgets/catalog_demo/images/paste.gif +0 -0
  681. data/sample/tkextlib/iwidgets/catalog_demo/images/points.xbm +14 -0
  682. data/sample/tkextlib/iwidgets/catalog_demo/images/poly.gif +0 -0
  683. data/sample/tkextlib/iwidgets/catalog_demo/images/print.gif +0 -0
  684. data/sample/tkextlib/iwidgets/catalog_demo/images/ruler.gif +0 -0
  685. data/sample/tkextlib/iwidgets/catalog_demo/images/save.gif +0 -0
  686. data/sample/tkextlib/iwidgets/catalog_demo/images/select.gif +0 -0
  687. data/sample/tkextlib/iwidgets/catalog_demo/images/text.xbm +14 -0
  688. data/sample/tkextlib/iwidgets/sample/buttonbox.rb +23 -0
  689. data/sample/tkextlib/iwidgets/sample/calendar.rb +11 -0
  690. data/sample/tkextlib/iwidgets/sample/canvasprintbox.rb +9 -0
  691. data/sample/tkextlib/iwidgets/sample/canvasprintdialog.rb +9 -0
  692. data/sample/tkextlib/iwidgets/sample/checkbox.rb +13 -0
  693. data/sample/tkextlib/iwidgets/sample/combobox.rb +33 -0
  694. data/sample/tkextlib/iwidgets/sample/dateentry.rb +8 -0
  695. data/sample/tkextlib/iwidgets/sample/datefield.rb +9 -0
  696. data/sample/tkextlib/iwidgets/sample/dialog.rb +21 -0
  697. data/sample/tkextlib/iwidgets/sample/dialogshell.rb +15 -0
  698. data/sample/tkextlib/iwidgets/sample/disjointlistbox.rb +17 -0
  699. data/sample/tkextlib/iwidgets/sample/entryfield-1.rb +40 -0
  700. data/sample/tkextlib/iwidgets/sample/entryfield-2.rb +45 -0
  701. data/sample/tkextlib/iwidgets/sample/entryfield-3.rb +41 -0
  702. data/sample/tkextlib/iwidgets/sample/extbutton.rb +21 -0
  703. data/sample/tkextlib/iwidgets/sample/extfileselectionbox.rb +9 -0
  704. data/sample/tkextlib/iwidgets/sample/extfileselectiondialog.rb +30 -0
  705. data/sample/tkextlib/iwidgets/sample/feedback.rb +11 -0
  706. data/sample/tkextlib/iwidgets/sample/fileselectionbox.rb +9 -0
  707. data/sample/tkextlib/iwidgets/sample/fileselectiondialog.rb +29 -0
  708. data/sample/tkextlib/iwidgets/sample/finddialog.rb +16 -0
  709. data/sample/tkextlib/iwidgets/sample/hierarchy.rb +26 -0
  710. data/sample/tkextlib/iwidgets/sample/hyperhelp.rb +15 -0
  711. data/sample/tkextlib/iwidgets/sample/labeledframe.rb +15 -0
  712. data/sample/tkextlib/iwidgets/sample/labeledwidget.rb +14 -0
  713. data/sample/tkextlib/iwidgets/sample/mainwindow.rb +65 -0
  714. data/sample/tkextlib/iwidgets/sample/menubar.rb +125 -0
  715. data/sample/tkextlib/iwidgets/sample/menubar2.rb +45 -0
  716. data/sample/tkextlib/iwidgets/sample/messagebox1.rb +20 -0
  717. data/sample/tkextlib/iwidgets/sample/messagebox2.rb +20 -0
  718. data/sample/tkextlib/iwidgets/sample/messagedialog.rb +45 -0
  719. data/sample/tkextlib/iwidgets/sample/notebook.rb +31 -0
  720. data/sample/tkextlib/iwidgets/sample/notebook2.rb +31 -0
  721. data/sample/tkextlib/iwidgets/sample/optionmenu.rb +15 -0
  722. data/sample/tkextlib/iwidgets/sample/panedwindow.rb +23 -0
  723. data/sample/tkextlib/iwidgets/sample/panedwindow2.rb +23 -0
  724. data/sample/tkextlib/iwidgets/sample/promptdialog.rb +18 -0
  725. data/sample/tkextlib/iwidgets/sample/pushbutton.rb +10 -0
  726. data/sample/tkextlib/iwidgets/sample/radiobox.rb +14 -0
  727. data/sample/tkextlib/iwidgets/sample/scrolledcanvas.rb +14 -0
  728. data/sample/tkextlib/iwidgets/sample/scrolledframe.rb +19 -0
  729. data/sample/tkextlib/iwidgets/sample/scrolledhtml.rb +16 -0
  730. data/sample/tkextlib/iwidgets/sample/scrolledlistbox.rb +23 -0
  731. data/sample/tkextlib/iwidgets/sample/scrolledtext.rb +12 -0
  732. data/sample/tkextlib/iwidgets/sample/selectionbox.rb +20 -0
  733. data/sample/tkextlib/iwidgets/sample/selectiondialog.rb +13 -0
  734. data/sample/tkextlib/iwidgets/sample/shell.rb +18 -0
  735. data/sample/tkextlib/iwidgets/sample/spindate.rb +8 -0
  736. data/sample/tkextlib/iwidgets/sample/spinint.rb +11 -0
  737. data/sample/tkextlib/iwidgets/sample/spinner.rb +34 -0
  738. data/sample/tkextlib/iwidgets/sample/spintime.rb +8 -0
  739. data/sample/tkextlib/iwidgets/sample/tabnotebook.rb +27 -0
  740. data/sample/tkextlib/iwidgets/sample/tabnotebook2.rb +31 -0
  741. data/sample/tkextlib/iwidgets/sample/tabset.rb +35 -0
  742. data/sample/tkextlib/iwidgets/sample/timeentry.rb +8 -0
  743. data/sample/tkextlib/iwidgets/sample/timefield.rb +9 -0
  744. data/sample/tkextlib/iwidgets/sample/toolbar.rb +153 -0
  745. data/sample/tkextlib/iwidgets/sample/watch.rb +19 -0
  746. data/sample/tkextlib/tcllib/Orig_LICENSE.txt +46 -0
  747. data/sample/tkextlib/tcllib/datefield.rb +30 -0
  748. data/sample/tkextlib/tcllib/plotdemos1.rb +159 -0
  749. data/sample/tkextlib/tcllib/plotdemos2.rb +72 -0
  750. data/sample/tkextlib/tcllib/plotdemos3.rb +84 -0
  751. data/sample/tkextlib/tcllib/xyplot.rb +18 -0
  752. data/sample/tkextlib/tile/Orig_LICENSE.txt +30 -0
  753. data/sample/tkextlib/tile/demo.rb +984 -0
  754. data/sample/tkextlib/tile/iconlib.tcl +110 -0
  755. data/sample/tkextlib/tile/readme.txt +2 -0
  756. data/sample/tkextlib/tile/repeater.tcl +117 -0
  757. data/sample/tkextlib/tile/themes/blue/blue.tcl +149 -0
  758. data/sample/tkextlib/tile/themes/blue/blue/arrowdown-h.gif +0 -0
  759. data/sample/tkextlib/tile/themes/blue/blue/arrowdown-p.gif +0 -0
  760. data/sample/tkextlib/tile/themes/blue/blue/arrowdown.gif +0 -0
  761. data/sample/tkextlib/tile/themes/blue/blue/arrowleft-h.gif +0 -0
  762. data/sample/tkextlib/tile/themes/blue/blue/arrowleft-p.gif +0 -0
  763. data/sample/tkextlib/tile/themes/blue/blue/arrowleft.gif +0 -0
  764. data/sample/tkextlib/tile/themes/blue/blue/arrowright-h.gif +0 -0
  765. data/sample/tkextlib/tile/themes/blue/blue/arrowright-p.gif +0 -0
  766. data/sample/tkextlib/tile/themes/blue/blue/arrowright.gif +0 -0
  767. data/sample/tkextlib/tile/themes/blue/blue/arrowup-h.gif +0 -0
  768. data/sample/tkextlib/tile/themes/blue/blue/arrowup-p.gif +0 -0
  769. data/sample/tkextlib/tile/themes/blue/blue/arrowup.gif +0 -0
  770. data/sample/tkextlib/tile/themes/blue/blue/button-h.gif +0 -0
  771. data/sample/tkextlib/tile/themes/blue/blue/button-n.gif +0 -0
  772. data/sample/tkextlib/tile/themes/blue/blue/button-n.xcf +0 -0
  773. data/sample/tkextlib/tile/themes/blue/blue/button-p.gif +0 -0
  774. data/sample/tkextlib/tile/themes/blue/blue/check-hc.gif +0 -0
  775. data/sample/tkextlib/tile/themes/blue/blue/check-hu.gif +0 -0
  776. data/sample/tkextlib/tile/themes/blue/blue/check-nc.gif +0 -0
  777. data/sample/tkextlib/tile/themes/blue/blue/check-nu.gif +0 -0
  778. data/sample/tkextlib/tile/themes/blue/blue/radio-hc.gif +0 -0
  779. data/sample/tkextlib/tile/themes/blue/blue/radio-hu.gif +0 -0
  780. data/sample/tkextlib/tile/themes/blue/blue/radio-nc.gif +0 -0
  781. data/sample/tkextlib/tile/themes/blue/blue/radio-nu.gif +0 -0
  782. data/sample/tkextlib/tile/themes/blue/blue/sb-thumb-p.gif +0 -0
  783. data/sample/tkextlib/tile/themes/blue/blue/sb-thumb.gif +0 -0
  784. data/sample/tkextlib/tile/themes/blue/blue/sb-vthumb-p.gif +0 -0
  785. data/sample/tkextlib/tile/themes/blue/blue/sb-vthumb.gif +0 -0
  786. data/sample/tkextlib/tile/themes/blue/blue/slider-p.gif +0 -0
  787. data/sample/tkextlib/tile/themes/blue/blue/slider.gif +0 -0
  788. data/sample/tkextlib/tile/themes/blue/blue/vslider-p.gif +0 -0
  789. data/sample/tkextlib/tile/themes/blue/blue/vslider.gif +0 -0
  790. data/sample/tkextlib/tile/themes/blue/pkgIndex.tcl +6 -0
  791. data/sample/tkextlib/tile/themes/keramik/keramik.tcl +194 -0
  792. data/sample/tkextlib/tile/themes/keramik/keramik/arrowdown-n.gif +0 -0
  793. data/sample/tkextlib/tile/themes/keramik/keramik/arrowdown-p.gif +0 -0
  794. data/sample/tkextlib/tile/themes/keramik/keramik/arrowleft-n.gif +0 -0
  795. data/sample/tkextlib/tile/themes/keramik/keramik/arrowleft-p.gif +0 -0
  796. data/sample/tkextlib/tile/themes/keramik/keramik/arrowright-n.gif +0 -0
  797. data/sample/tkextlib/tile/themes/keramik/keramik/arrowright-p.gif +0 -0
  798. data/sample/tkextlib/tile/themes/keramik/keramik/arrowup-n.gif +0 -0
  799. data/sample/tkextlib/tile/themes/keramik/keramik/arrowup-p.gif +0 -0
  800. data/sample/tkextlib/tile/themes/keramik/keramik/button-d.gif +0 -0
  801. data/sample/tkextlib/tile/themes/keramik/keramik/button-h.gif +0 -0
  802. data/sample/tkextlib/tile/themes/keramik/keramik/button-n.gif +0 -0
  803. data/sample/tkextlib/tile/themes/keramik/keramik/button-p.gif +0 -0
  804. data/sample/tkextlib/tile/themes/keramik/keramik/button-s.gif +0 -0
  805. data/sample/tkextlib/tile/themes/keramik/keramik/check-c.gif +0 -0
  806. data/sample/tkextlib/tile/themes/keramik/keramik/check-u.gif +0 -0
  807. data/sample/tkextlib/tile/themes/keramik/keramik/hsb-n.gif +0 -0
  808. data/sample/tkextlib/tile/themes/keramik/keramik/hsb-p.gif +0 -0
  809. data/sample/tkextlib/tile/themes/keramik/keramik/hslider-n.gif +0 -0
  810. data/sample/tkextlib/tile/themes/keramik/keramik/mbut-a.gif +0 -0
  811. data/sample/tkextlib/tile/themes/keramik/keramik/mbut-arrow-n.gif +0 -0
  812. data/sample/tkextlib/tile/themes/keramik/keramik/mbut-d.gif +0 -0
  813. data/sample/tkextlib/tile/themes/keramik/keramik/mbut-n.gif +0 -0
  814. data/sample/tkextlib/tile/themes/keramik/keramik/radio-c.gif +0 -0
  815. data/sample/tkextlib/tile/themes/keramik/keramik/radio-u.gif +0 -0
  816. data/sample/tkextlib/tile/themes/keramik/keramik/tab-n.gif +0 -0
  817. data/sample/tkextlib/tile/themes/keramik/keramik/tab-p.gif +0 -0
  818. data/sample/tkextlib/tile/themes/keramik/keramik/tbar-a.gif +0 -0
  819. data/sample/tkextlib/tile/themes/keramik/keramik/tbar-n.gif +0 -0
  820. data/sample/tkextlib/tile/themes/keramik/keramik/tbar-p.gif +0 -0
  821. data/sample/tkextlib/tile/themes/keramik/keramik/vsb-n.gif +0 -0
  822. data/sample/tkextlib/tile/themes/keramik/keramik/vsb-p.gif +0 -0
  823. data/sample/tkextlib/tile/themes/keramik/keramik/vslider-n.gif +0 -0
  824. data/sample/tkextlib/tile/themes/keramik/pkgIndex.tcl +15 -0
  825. data/sample/tkextlib/tile/themes/kroc.rb +227 -0
  826. data/sample/tkextlib/tile/themes/kroc/kroc.tcl +163 -0
  827. data/sample/tkextlib/tile/themes/kroc/kroc/button-h.gif +0 -0
  828. data/sample/tkextlib/tile/themes/kroc/kroc/button-n.gif +0 -0
  829. data/sample/tkextlib/tile/themes/kroc/kroc/button-p.gif +0 -0
  830. data/sample/tkextlib/tile/themes/kroc/kroc/check-hc.gif +0 -0
  831. data/sample/tkextlib/tile/themes/kroc/kroc/check-hu.gif +0 -0
  832. data/sample/tkextlib/tile/themes/kroc/kroc/check-nc.gif +0 -0
  833. data/sample/tkextlib/tile/themes/kroc/kroc/check-nu.gif +0 -0
  834. data/sample/tkextlib/tile/themes/kroc/kroc/radio-hc.gif +0 -0
  835. data/sample/tkextlib/tile/themes/kroc/kroc/radio-hu.gif +0 -0
  836. data/sample/tkextlib/tile/themes/kroc/kroc/radio-nc.gif +0 -0
  837. data/sample/tkextlib/tile/themes/kroc/kroc/radio-nu.gif +0 -0
  838. data/sample/tkextlib/tile/themes/kroc/pkgIndex.tcl +15 -0
  839. data/sample/tkextlib/tile/themes/plastik/pkgIndex.tcl +16 -0
  840. data/sample/tkextlib/tile/themes/plastik/plastik.tcl +125 -0
  841. data/sample/tkextlib/tile/themes/plastik/plastik/arrowdown-n.gif +0 -0
  842. data/sample/tkextlib/tile/themes/plastik/plastik/arrowdown-p.gif +0 -0
  843. data/sample/tkextlib/tile/themes/plastik/plastik/arrowleft-n.gif +0 -0
  844. data/sample/tkextlib/tile/themes/plastik/plastik/arrowleft-p.gif +0 -0
  845. data/sample/tkextlib/tile/themes/plastik/plastik/arrowright-n.gif +0 -0
  846. data/sample/tkextlib/tile/themes/plastik/plastik/arrowright-p.gif +0 -0
  847. data/sample/tkextlib/tile/themes/plastik/plastik/arrowup-n.gif +0 -0
  848. data/sample/tkextlib/tile/themes/plastik/plastik/arrowup-p.gif +0 -0
  849. data/sample/tkextlib/tile/themes/plastik/plastik/button-h.gif +0 -0
  850. data/sample/tkextlib/tile/themes/plastik/plastik/button-n.gif +0 -0
  851. data/sample/tkextlib/tile/themes/plastik/plastik/button-p.gif +0 -0
  852. data/sample/tkextlib/tile/themes/plastik/plastik/check-hc.gif +0 -0
  853. data/sample/tkextlib/tile/themes/plastik/plastik/check-hu.gif +0 -0
  854. data/sample/tkextlib/tile/themes/plastik/plastik/check-nc.gif +0 -0
  855. data/sample/tkextlib/tile/themes/plastik/plastik/check-nu.gif +0 -0
  856. data/sample/tkextlib/tile/themes/plastik/plastik/check-pc.gif +0 -0
  857. data/sample/tkextlib/tile/themes/plastik/plastik/hsb-n.gif +0 -0
  858. data/sample/tkextlib/tile/themes/plastik/plastik/hslider-n.gif +0 -0
  859. data/sample/tkextlib/tile/themes/plastik/plastik/radio-hc.gif +0 -0
  860. data/sample/tkextlib/tile/themes/plastik/plastik/radio-hu.gif +0 -0
  861. data/sample/tkextlib/tile/themes/plastik/plastik/radio-nc.gif +0 -0
  862. data/sample/tkextlib/tile/themes/plastik/plastik/radio-nu.gif +0 -0
  863. data/sample/tkextlib/tile/themes/plastik/plastik/radio-pc.gif +0 -0
  864. data/sample/tkextlib/tile/themes/plastik/plastik/vsb-n.gif +0 -0
  865. data/sample/tkextlib/tile/themes/plastik/plastik/vslider-n.gif +0 -0
  866. data/sample/tkextlib/tile/toolbutton.tcl +152 -0
  867. data/sample/tkextlib/tkHTML/Orig_COPYRIGHT.txt +12 -0
  868. data/sample/tkextlib/tkHTML/README +12 -0
  869. data/sample/tkextlib/tkHTML/hv.rb +314 -0
  870. data/sample/tkextlib/tkHTML/page1/image1 +0 -0
  871. data/sample/tkextlib/tkHTML/page1/image10 +0 -0
  872. data/sample/tkextlib/tkHTML/page1/image11 +0 -0
  873. data/sample/tkextlib/tkHTML/page1/image12 +0 -0
  874. data/sample/tkextlib/tkHTML/page1/image13 +0 -0
  875. data/sample/tkextlib/tkHTML/page1/image14 +0 -0
  876. data/sample/tkextlib/tkHTML/page1/image2 +0 -0
  877. data/sample/tkextlib/tkHTML/page1/image3 +0 -0
  878. data/sample/tkextlib/tkHTML/page1/image4 +0 -0
  879. data/sample/tkextlib/tkHTML/page1/image5 +0 -0
  880. data/sample/tkextlib/tkHTML/page1/image6 +0 -0
  881. data/sample/tkextlib/tkHTML/page1/image7 +0 -0
  882. data/sample/tkextlib/tkHTML/page1/image8 +0 -0
  883. data/sample/tkextlib/tkHTML/page1/image9 +0 -0
  884. data/sample/tkextlib/tkHTML/page1/index.html +115 -0
  885. data/sample/tkextlib/tkHTML/page2/image1 +0 -0
  886. data/sample/tkextlib/tkHTML/page2/image10 +0 -0
  887. data/sample/tkextlib/tkHTML/page2/image11 +0 -0
  888. data/sample/tkextlib/tkHTML/page2/image12 +0 -0
  889. data/sample/tkextlib/tkHTML/page2/image13 +0 -0
  890. data/sample/tkextlib/tkHTML/page2/image14 +0 -0
  891. data/sample/tkextlib/tkHTML/page2/image15 +0 -0
  892. data/sample/tkextlib/tkHTML/page2/image16 +0 -0
  893. data/sample/tkextlib/tkHTML/page2/image17 +0 -0
  894. data/sample/tkextlib/tkHTML/page2/image18 +0 -0
  895. data/sample/tkextlib/tkHTML/page2/image19 +0 -0
  896. data/sample/tkextlib/tkHTML/page2/image2 +0 -0
  897. data/sample/tkextlib/tkHTML/page2/image20 +0 -0
  898. data/sample/tkextlib/tkHTML/page2/image21 +0 -0
  899. data/sample/tkextlib/tkHTML/page2/image22 +0 -0
  900. data/sample/tkextlib/tkHTML/page2/image23 +0 -0
  901. data/sample/tkextlib/tkHTML/page2/image24 +0 -0
  902. data/sample/tkextlib/tkHTML/page2/image25 +0 -0
  903. data/sample/tkextlib/tkHTML/page2/image26 +0 -0
  904. data/sample/tkextlib/tkHTML/page2/image27 +0 -0
  905. data/sample/tkextlib/tkHTML/page2/image28 +0 -0
  906. data/sample/tkextlib/tkHTML/page2/image29 +0 -0
  907. data/sample/tkextlib/tkHTML/page2/image3 +0 -0
  908. data/sample/tkextlib/tkHTML/page2/image30 +0 -0
  909. data/sample/tkextlib/tkHTML/page2/image31 +0 -0
  910. data/sample/tkextlib/tkHTML/page2/image32 +0 -0
  911. data/sample/tkextlib/tkHTML/page2/image33 +0 -0
  912. data/sample/tkextlib/tkHTML/page2/image34 +0 -0
  913. data/sample/tkextlib/tkHTML/page2/image35 +0 -0
  914. data/sample/tkextlib/tkHTML/page2/image36 +0 -0
  915. data/sample/tkextlib/tkHTML/page2/image37 +0 -0
  916. data/sample/tkextlib/tkHTML/page2/image38 +0 -0
  917. data/sample/tkextlib/tkHTML/page2/image39 +0 -0
  918. data/sample/tkextlib/tkHTML/page2/image4 +0 -0
  919. data/sample/tkextlib/tkHTML/page2/image5 +0 -0
  920. data/sample/tkextlib/tkHTML/page2/image6 +0 -0
  921. data/sample/tkextlib/tkHTML/page2/image7 +0 -0
  922. data/sample/tkextlib/tkHTML/page2/image8 +0 -0
  923. data/sample/tkextlib/tkHTML/page2/image9 +0 -0
  924. data/sample/tkextlib/tkHTML/page2/index.html +433 -0
  925. data/sample/tkextlib/tkHTML/page3/image1 +0 -0
  926. data/sample/tkextlib/tkHTML/page3/image10 +0 -0
  927. data/sample/tkextlib/tkHTML/page3/image11 +0 -0
  928. data/sample/tkextlib/tkHTML/page3/image12 +0 -0
  929. data/sample/tkextlib/tkHTML/page3/image13 +0 -0
  930. data/sample/tkextlib/tkHTML/page3/image14 +0 -0
  931. data/sample/tkextlib/tkHTML/page3/image2 +0 -0
  932. data/sample/tkextlib/tkHTML/page3/image3 +0 -0
  933. data/sample/tkextlib/tkHTML/page3/image4 +0 -0
  934. data/sample/tkextlib/tkHTML/page3/image5 +0 -0
  935. data/sample/tkextlib/tkHTML/page3/image6 +0 -0
  936. data/sample/tkextlib/tkHTML/page3/image7 +0 -0
  937. data/sample/tkextlib/tkHTML/page3/image8 +0 -0
  938. data/sample/tkextlib/tkHTML/page3/image9 +0 -0
  939. data/sample/tkextlib/tkHTML/page3/index.html +2787 -0
  940. data/sample/tkextlib/tkHTML/page4/image1 +0 -0
  941. data/sample/tkextlib/tkHTML/page4/image2 +0 -0
  942. data/sample/tkextlib/tkHTML/page4/image3 +0 -0
  943. data/sample/tkextlib/tkHTML/page4/image4 +0 -0
  944. data/sample/tkextlib/tkHTML/page4/image5 +0 -0
  945. data/sample/tkextlib/tkHTML/page4/image6 +0 -0
  946. data/sample/tkextlib/tkHTML/page4/image7 +0 -0
  947. data/sample/tkextlib/tkHTML/page4/image8 +0 -0
  948. data/sample/tkextlib/tkHTML/page4/image9 +0 -0
  949. data/sample/tkextlib/tkHTML/page4/index.html +768 -0
  950. data/sample/tkextlib/tkHTML/ss.rb +437 -0
  951. data/sample/tkextlib/tkimg/demo.rb +1479 -0
  952. data/sample/tkextlib/tkimg/license_terms_of_Img_extension +41 -0
  953. data/sample/tkextlib/tkimg/readme.txt +3 -0
  954. data/sample/tkextlib/tktable/Orig_LICENSE.txt +52 -0
  955. data/sample/tkextlib/tktable/basic.rb +61 -0
  956. data/sample/tkextlib/tktable/buttons.rb +77 -0
  957. data/sample/tkextlib/tktable/command.rb +90 -0
  958. data/sample/tkextlib/tktable/debug.rb +102 -0
  959. data/sample/tkextlib/tktable/dynarows.rb +100 -0
  960. data/sample/tkextlib/tktable/maxsize.rb +68 -0
  961. data/sample/tkextlib/tktable/spreadsheet.rb +138 -0
  962. data/sample/tkextlib/tktable/tcllogo.gif +0 -0
  963. data/sample/tkextlib/tktable/valid.rb +89 -0
  964. data/sample/tkextlib/treectrl/bitmaps.rb +77 -0
  965. data/sample/tkextlib/treectrl/demo.rb +1306 -0
  966. data/sample/tkextlib/treectrl/explorer.rb +431 -0
  967. data/sample/tkextlib/treectrl/help.rb +405 -0
  968. data/sample/tkextlib/treectrl/imovie.rb +131 -0
  969. data/sample/tkextlib/treectrl/layout.rb +160 -0
  970. data/sample/tkextlib/treectrl/mailwasher.rb +270 -0
  971. data/sample/tkextlib/treectrl/outlook-folders.rb +125 -0
  972. data/sample/tkextlib/treectrl/outlook-newgroup.rb +449 -0
  973. data/sample/tkextlib/treectrl/pics/big-dll.gif +0 -0
  974. data/sample/tkextlib/treectrl/pics/big-exe.gif +0 -0
  975. data/sample/tkextlib/treectrl/pics/big-file.gif +0 -0
  976. data/sample/tkextlib/treectrl/pics/big-folder.gif +0 -0
  977. data/sample/tkextlib/treectrl/pics/big-txt.gif +0 -0
  978. data/sample/tkextlib/treectrl/pics/checked.gif +0 -0
  979. data/sample/tkextlib/treectrl/pics/file.gif +0 -0
  980. data/sample/tkextlib/treectrl/pics/folder-closed.gif +0 -0
  981. data/sample/tkextlib/treectrl/pics/folder-open.gif +0 -0
  982. data/sample/tkextlib/treectrl/pics/help-book-closed.gif +0 -0
  983. data/sample/tkextlib/treectrl/pics/help-book-open.gif +0 -0
  984. data/sample/tkextlib/treectrl/pics/help-page.gif +0 -0
  985. data/sample/tkextlib/treectrl/pics/imovie-01.gif +0 -0
  986. data/sample/tkextlib/treectrl/pics/imovie-02.gif +0 -0
  987. data/sample/tkextlib/treectrl/pics/imovie-03.gif +0 -0
  988. data/sample/tkextlib/treectrl/pics/imovie-04.gif +0 -0
  989. data/sample/tkextlib/treectrl/pics/imovie-05.gif +0 -0
  990. data/sample/tkextlib/treectrl/pics/imovie-06.gif +0 -0
  991. data/sample/tkextlib/treectrl/pics/imovie-07.gif +0 -0
  992. data/sample/tkextlib/treectrl/pics/internet-check-off.gif +0 -0
  993. data/sample/tkextlib/treectrl/pics/internet-check-on.gif +0 -0
  994. data/sample/tkextlib/treectrl/pics/internet-print.gif +0 -0
  995. data/sample/tkextlib/treectrl/pics/internet-radio-off.gif +0 -0
  996. data/sample/tkextlib/treectrl/pics/internet-radio-on.gif +0 -0
  997. data/sample/tkextlib/treectrl/pics/internet-search.gif +0 -0
  998. data/sample/tkextlib/treectrl/pics/internet-security.gif +0 -0
  999. data/sample/tkextlib/treectrl/pics/mac-collapse.gif +0 -0
  1000. data/sample/tkextlib/treectrl/pics/mac-expand.gif +0 -0
  1001. data/sample/tkextlib/treectrl/pics/outlook-arrow.gif +0 -0
  1002. data/sample/tkextlib/treectrl/pics/outlook-clip.gif +0 -0
  1003. data/sample/tkextlib/treectrl/pics/outlook-deleted.gif +0 -0
  1004. data/sample/tkextlib/treectrl/pics/outlook-draft.gif +0 -0
  1005. data/sample/tkextlib/treectrl/pics/outlook-folder.gif +0 -0
  1006. data/sample/tkextlib/treectrl/pics/outlook-group.gif +0 -0
  1007. data/sample/tkextlib/treectrl/pics/outlook-inbox.gif +0 -0
  1008. data/sample/tkextlib/treectrl/pics/outlook-local.gif +0 -0
  1009. data/sample/tkextlib/treectrl/pics/outlook-main.gif +0 -0
  1010. data/sample/tkextlib/treectrl/pics/outlook-outbox.gif +0 -0
  1011. data/sample/tkextlib/treectrl/pics/outlook-read-2.gif +0 -0
  1012. data/sample/tkextlib/treectrl/pics/outlook-read.gif +0 -0
  1013. data/sample/tkextlib/treectrl/pics/outlook-sent.gif +0 -0
  1014. data/sample/tkextlib/treectrl/pics/outlook-server.gif +0 -0
  1015. data/sample/tkextlib/treectrl/pics/outlook-unread.gif +0 -0
  1016. data/sample/tkextlib/treectrl/pics/outlook-watch.gif +0 -0
  1017. data/sample/tkextlib/treectrl/pics/sky.gif +0 -0
  1018. data/sample/tkextlib/treectrl/pics/small-dll.gif +0 -0
  1019. data/sample/tkextlib/treectrl/pics/small-exe.gif +0 -0
  1020. data/sample/tkextlib/treectrl/pics/small-file.gif +0 -0
  1021. data/sample/tkextlib/treectrl/pics/small-folder.gif +0 -0
  1022. data/sample/tkextlib/treectrl/pics/small-txt.gif +0 -0
  1023. data/sample/tkextlib/treectrl/pics/unchecked.gif +0 -0
  1024. data/sample/tkextlib/treectrl/random.rb +509 -0
  1025. data/sample/tkextlib/treectrl/readme.txt +2 -0
  1026. data/sample/tkextlib/treectrl/www-options.rb +304 -0
  1027. data/sample/tkextlib/vu/Orig_LICENSE.txt +51 -0
  1028. data/sample/tkextlib/vu/README.txt +50 -0
  1029. data/sample/tkextlib/vu/canvItems.rb +91 -0
  1030. data/sample/tkextlib/vu/canvSticker.rb +83 -0
  1031. data/sample/tkextlib/vu/canvSticker2.rb +102 -0
  1032. data/sample/tkextlib/vu/dial_demo.rb +114 -0
  1033. data/sample/tkextlib/vu/m128_000.xbm +174 -0
  1034. data/sample/tkextlib/vu/oscilloscope.rb +69 -0
  1035. data/sample/tkextlib/vu/pie.rb +57 -0
  1036. data/sample/tkextlib/vu/vu_demo.rb +68 -0
  1037. data/sample/tkfrom.rb +133 -0
  1038. data/sample/tkhello.rb +11 -0
  1039. data/sample/tkline.rb +48 -0
  1040. data/sample/tkmenubutton.rb +136 -0
  1041. data/sample/tkmsgcat-load_rb.rb +103 -0
  1042. data/sample/tkmsgcat-load_rb2.rb +103 -0
  1043. data/sample/tkmsgcat-load_tk.rb +119 -0
  1044. data/sample/tkmulticolumnlist.rb +744 -0
  1045. data/sample/tkmultilistbox.rb +655 -0
  1046. data/sample/tkmultilistframe.rb +941 -0
  1047. data/sample/tkoptdb-safeTk.rb +74 -0
  1048. data/sample/tkoptdb.rb +107 -0
  1049. data/sample/tkrttimer.rb +78 -0
  1050. data/sample/tksleep_sample.rb +30 -0
  1051. data/sample/tktextframe.rb +282 -0
  1052. data/sample/tktextio.rb +1061 -0
  1053. data/sample/tktimer.rb +51 -0
  1054. data/sample/tktimer2.rb +48 -0
  1055. data/sample/tktimer3.rb +60 -0
  1056. data/sample/tktree.rb +104 -0
  1057. data/sample/tktree.tcl +305 -0
  1058. data/sample/ttk_wrapper.rb +155 -0
  1059. data/tk.gemspec +24 -0
  1060. metadata +1144 -0
@@ -0,0 +1,151 @@
1
+ # frozen_string_literal: false
2
+ #
3
+ # tkextlib/tcllib/swaplist.rb
4
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
5
+ #
6
+ # * Part of tcllib extension
7
+ # * A dialog which allows a user to move options between two lists
8
+ #
9
+
10
+ require 'tk'
11
+ require 'tkextlib/tcllib.rb'
12
+
13
+ # TkPackage.require('swaplist', '0.1')
14
+ TkPackage.require('swaplist')
15
+
16
+ module Tk::Tcllib
17
+ class Swaplist_Dialog < TkWindow
18
+ PACKAGE_NAME = 'swaplist'.freeze
19
+ def self.package_name
20
+ PACKAGE_NAME
21
+ end
22
+
23
+ def self.package_version
24
+ begin
25
+ TkPackage.require('swaplist')
26
+ rescue
27
+ ''
28
+ end
29
+ end
30
+ end
31
+ end
32
+
33
+
34
+ class Tk::Tcllib::Swaplist_Dialog
35
+ TkCommandNames = ['::swaplist::swaplist'.freeze].freeze
36
+ WidgetClassName = 'Swaplist'.freeze
37
+ WidgetClassNames[WidgetClassName] ||= self
38
+
39
+ def self.show(*args)
40
+ dialog = self.new(*args)
41
+ dialog.show
42
+ [dialog.status, dialog.value]
43
+ end
44
+ def self.display(*args)
45
+ self.show(*args)
46
+ end
47
+
48
+ def initialize(*args)
49
+ # args = (parent=nil, complete_list=[], selected_list=[], keys=nil)
50
+ keys = args.pop
51
+ if keys.kind_of?(Hash)
52
+ @selected_list = args.pop
53
+ @complete_list = args.pop
54
+ @keys = _symbolkey2str(keys)
55
+ args.push(keys)
56
+ else
57
+ @selected_list = keys
58
+ @complete_list = args.pop
59
+ @keys = {}
60
+ end
61
+
62
+ @selected_list = [] unless @selected_list
63
+ @complete_list = [] unless @complete_list
64
+
65
+ @variable = TkVariable.new
66
+ @status = nil
67
+
68
+ super(*args)
69
+ end
70
+
71
+ def create_self(keys)
72
+ # dummy
73
+ end
74
+ private :create_self
75
+
76
+ def show
77
+ @variable.value = ''
78
+ @status = bool(tk_call(self.class::TkCommandNames[0],
79
+ @path, @variable,
80
+ @complete_list, @selected_list,
81
+ *hash_kv(@keys)))
82
+ end
83
+ alias display show
84
+
85
+ def status
86
+ @status
87
+ end
88
+
89
+ def value
90
+ @variable.list
91
+ end
92
+ alias selected value
93
+
94
+ def cget_strict(slot)
95
+ slot = slot.to_s
96
+ if slot == 'complete_list'
97
+ @complete_list
98
+ elsif slot == 'selected_list'
99
+ @selected_list
100
+ else
101
+ @keys[slot]
102
+ end
103
+ end
104
+ def cget(slot)
105
+ cget_strict(slot)
106
+ end
107
+
108
+ def configure(slot, value=None)
109
+ if slot.kind_of?(Hash)
110
+ slot.each{|k, v| configure(k, v)}
111
+ else
112
+ slot = slot.to_s
113
+ value = _symbolkey2str(value) if value.kind_of?(Hash)
114
+ if value && value != None
115
+ if slot == 'complete_list'
116
+ @complete_list = value
117
+ elsif slot == 'selected_list'
118
+ @selected_list = value
119
+ else
120
+ @keys[slot] = value
121
+ end
122
+ else
123
+ if slot == 'complete_list'
124
+ @complete_list = []
125
+ elsif slot == 'selected_list'
126
+ @selected_list = []
127
+ else
128
+ @keys.delete(slot)
129
+ end
130
+ end
131
+ end
132
+ self
133
+ end
134
+
135
+ def configinfo(slot = nil)
136
+ if slot
137
+ slot = slot.to_s
138
+ if slot == 'complete_list'
139
+ [ slot, nil, nil, nil, @complete_list ]
140
+ elsif slot == 'selected_list'
141
+ [ slot, nil, nil, nil, @selected_list ]
142
+ else
143
+ [ slot, nil, nil, nil, @keys[slot] ]
144
+ end
145
+ else
146
+ @keys.collect{|k, v| [ k, nil, nil, nil, v ] } \
147
+ << [ 'complete_list', nil, nil, nil, @complete_list ] \
148
+ << [ 'selected_list', nil, nil, nil, @selected_list ]
149
+ end
150
+ end
151
+ end
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: false
2
+ #
3
+ # tkextlib/tcllib/tablelist.rb
4
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
5
+ #
6
+ # * Part of tcllib extension
7
+ # * A multi-column listbox
8
+
9
+ require 'tk'
10
+ require 'tkextlib/tcllib.rb'
11
+
12
+ # check Tile extension :: If already loaded, use tablelist_tile.
13
+ unless defined? Tk::Tcllib::Tablelist_usingTile
14
+ Tk::Tcllib::Tablelist_usingTile =
15
+ TkPackage.provide('tile') || TkPackage.provide('Ttk')
16
+ end
17
+
18
+ if Tk::Tcllib::Tablelist_usingTile
19
+ # with Tile
20
+ require 'tkextlib/tcllib/tablelist_tile'
21
+
22
+ else
23
+ # without Tile
24
+
25
+ # TkPackage.require('tablelist', '4.2')
26
+ TkPackage.require('tablelist')
27
+
28
+ require 'tkextlib/tcllib/tablelist_core'
29
+ end
@@ -0,0 +1,1073 @@
1
+ # frozen_string_literal: false
2
+ #
3
+ # tkextlib/tcllib/tablelist_core.rb
4
+ #
5
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
6
+ #
7
+ # * Part of tcllib extension
8
+ # * This file is required by 'tkextlib/tcllib/tablelist.rb' or
9
+ # 'tkextlib/tcllib/tablelist_tile.rb'.
10
+ #
11
+
12
+ module Tk
13
+ module Tcllib
14
+ class Tablelist < TkWindow
15
+ if Tk::Tcllib::Tablelist_usingTile
16
+ PACKAGE_NAME = 'Tablelist_tile'.freeze
17
+ else
18
+ PACKAGE_NAME = 'Tablelist'.freeze
19
+ end
20
+ def self.package_name
21
+ PACKAGE_NAME
22
+ end
23
+
24
+ def self.package_version
25
+ begin
26
+ TkPackage.require(self.package_name)
27
+ rescue
28
+ ''
29
+ end
30
+ end
31
+
32
+ def self.use_Tile?
33
+ (Tk::Tcllib::Tablelist_usingTile)? true: false
34
+ end
35
+ end
36
+ TableList = Tablelist
37
+ end
38
+ end
39
+
40
+ module Tk::Tcllib::TablelistItemConfig
41
+ include TkItemConfigMethod
42
+
43
+ def _to_idx(idx)
44
+ if idx.kind_of?(Array)
45
+ idx.collect{|elem| _get_eval_string(elem)}.join(',')
46
+ else
47
+ idx
48
+ end
49
+ end
50
+ def _from_idx(idx)
51
+ return idx unless idx.kind_of?(String)
52
+
53
+ if idx[0] == ?@ # '@x,y'
54
+ idx
55
+ elsif idx =~ /([^,]+),([^,]+)/
56
+ row = $1, column = $2
57
+ [num_or_str(row), num_or_str(column)]
58
+ else
59
+ num_or_str(idx)
60
+ end
61
+ end
62
+ private :_to_idx, :_from_idx
63
+
64
+ def __item_cget_cmd(mixed_id)
65
+ [self.path, mixed_id[0] + 'cget', _to_idx(mixed_id[1])]
66
+ end
67
+ def __item_config_cmd(mixed_id)
68
+ [self.path, mixed_id[0] + 'configure', _to_idx(mixed_id[1])]
69
+ end
70
+
71
+ def cell_cget_tkstring(tagOrId, option)
72
+ itemcget_tkstring(['cell', tagOrId], option)
73
+ end
74
+ def cell_cget(tagOrId, option)
75
+ itemcget(['cell', tagOrId], option)
76
+ end
77
+ def cell_cget_strict(tagOrId, option)
78
+ itemcget_strict(['cell', tagOrId], option)
79
+ end
80
+ def cell_configure(tagOrId, slot, value=None)
81
+ itemconfigure(['cell', tagOrId], slot, value)
82
+ end
83
+ def cell_configinfo(tagOrId, slot=nil)
84
+ itemconfiginfo(['cell', tagOrId], slot)
85
+ end
86
+ def current_cell_configinfo(tagOrId, slot=nil)
87
+ current_itemconfiginfo(['cell', tagOrId], slot)
88
+ end
89
+ alias cellcget_tkstring cell_cget_tkstring
90
+ alias cellcget cell_cget
91
+ alias cellcget_strict cell_cget_strict
92
+ alias cellconfigure cell_configure
93
+ alias cellconfiginfo cell_configinfo
94
+ alias current_cellconfiginfo current_cell_configinfo
95
+
96
+ def column_cget_tkstring(tagOrId, option)
97
+ itemcget_tkstring(['column', tagOrId], option)
98
+ end
99
+ def column_cget(tagOrId, option)
100
+ itemcget(['column', tagOrId], option)
101
+ end
102
+ def column_cget_strict(tagOrId, option)
103
+ itemcget_strict(['column', tagOrId], option)
104
+ end
105
+ def column_configure(tagOrId, slot, value=None)
106
+ itemconfigure(['column', tagOrId], slot, value)
107
+ end
108
+ def column_configinfo(tagOrId, slot=nil)
109
+ itemconfiginfo(['column', tagOrId], slot)
110
+ end
111
+ def current_column_configinfo(tagOrId, slot=nil)
112
+ current_itemconfiginfo(['column', tagOrId], slot)
113
+ end
114
+ alias columncget_tkstring column_cget_tkstring
115
+ alias columncget column_cget
116
+ alias columncget_strict column_cget_strict
117
+ alias columnconfigure column_configure
118
+ alias columnconfiginfo column_configinfo
119
+ alias current_columnconfiginfo current_column_configinfo
120
+
121
+ def row_cget_tkstring(tagOrId, option)
122
+ itemcget_tkstring(['row', tagOrId], option)
123
+ end
124
+ def row_cget(tagOrId, option)
125
+ itemcget(['row', tagOrId], option)
126
+ end
127
+ def row_cget_strict(tagOrId, option)
128
+ itemcget_strict(['row', tagOrId], option)
129
+ end
130
+ def row_configure(tagOrId, slot, value=None)
131
+ itemconfigure(['row', tagOrId], slot, value)
132
+ end
133
+ def row_configinfo(tagOrId, slot=nil)
134
+ itemconfiginfo(['row', tagOrId], slot)
135
+ end
136
+ def current_row_configinfo(tagOrId, slot=nil)
137
+ current_itemconfiginfo(['row', tagOrId], slot)
138
+ end
139
+ alias rowcget_tkstring row_cget_tkstring
140
+ alias rowcget row_cget
141
+ alias rowcget_strict row_cget_strict
142
+ alias rowconfigure row_configure
143
+ alias rowconfiginfo row_configinfo
144
+ alias current_rowconfiginfo current_row_configinfo
145
+
146
+ private :itemcget_tkstring, :itemcget, :itemcget_strict
147
+ private :itemconfigure, :itemconfiginfo, :current_itemconfiginfo
148
+ end
149
+
150
+ class Tk::Tcllib::Tablelist
151
+ include Tk::Tcllib::TablelistItemConfig
152
+ include Scrollable
153
+
154
+ TkCommandNames = ['::tablelist::tablelist'.freeze].freeze
155
+ WidgetClassName = 'Tablelist'.freeze
156
+ WidgetClassNames[WidgetClassName] ||= self
157
+
158
+ def create_self(keys)
159
+ if keys and keys != None
160
+ tk_call_without_enc(self.class::TkCommandNames[0], @path,
161
+ *hash_kv(keys, true))
162
+ else
163
+ tk_call_without_enc(self.class::TkCommandNames[0], @path)
164
+ end
165
+ end
166
+ private :create_self
167
+
168
+ ##########################
169
+
170
+ def __numval_optkeys
171
+ super() + ['titlecolumns']
172
+ end
173
+ private :__numval_optkeys
174
+
175
+ def __strval_optkeys
176
+ super() + ['snipstring']
177
+ end
178
+ private :__strval_optkeys
179
+
180
+ def __boolval_optkeys
181
+ super() - ['takefocus'] + [
182
+ 'forceeditendcommand', 'movablecolumns', 'movablerows',
183
+ 'protecttitlecolumns', 'resizablecolumns', 'setfocus',
184
+ 'showarrow', 'showlabels', 'showseparators'
185
+ ]
186
+ end
187
+ private :__boolval_optkeys
188
+
189
+ def __listval_optkeys
190
+ super() + ['columns', 'columntitles']
191
+ end
192
+ private :__listval_optkeys
193
+
194
+ def __tkvariable_optkeys
195
+ super() + ['listvariable']
196
+ end
197
+ private :__tkvariable_optkeys
198
+
199
+ def __val2ruby_optkeys # { key=>proc, ... }
200
+ # The method is used to convert a opt-value to a ruby's object.
201
+ # When get the value of the option "key", "proc.call(value)" is called.
202
+ super().update('stretch'=>proc{|v|
203
+ (v == 'all')? v: simplelist(v)
204
+ },
205
+ 'takefocus'=>proc{|v|
206
+ case v
207
+ when '1'
208
+ true
209
+ when '0'
210
+ false
211
+ when ''
212
+ nil
213
+ else # cmd
214
+ tk_tcl2ruby(cmd)
215
+ end
216
+ })
217
+ end
218
+ private :__val2ruby_optkeys
219
+
220
+ def __ruby2val_optkeys # { key=>proc, ... }
221
+ # The method is used to convert a ruby's object to a opt-value.
222
+ # When set the value of the option "key", "proc.call(value)" is called.
223
+ # That is, "-#{key} #{proc.call(value)}".
224
+ super().update('stretch'=>proc{|v|
225
+ (v.kind_of?(Array))? v.collect{|e| _to_idx(e)}: v
226
+ },
227
+ 'takefocus'=>proc{|v|
228
+ case v
229
+ when true
230
+ '1'
231
+ when false
232
+ '0'
233
+ when nil
234
+ ''
235
+ else
236
+ _get_eval_string(v)
237
+ end
238
+ })
239
+ end
240
+ private :__ruby2val_optkeys
241
+
242
+ def __font_optkeys
243
+ super() + ['labelfont']
244
+ end
245
+ private :__font_optkeys
246
+
247
+ ##########################
248
+
249
+ def __item_strval_optkeys(id)
250
+ if id[0] == 'cell'
251
+ super(id) + ['title']
252
+ else
253
+ super(id) - ['text'] + ['title', 'name']
254
+ end
255
+ end
256
+ private :__item_strval_optkeys
257
+
258
+ def __item_boolval_optkeys(id)
259
+ super(id) + [
260
+ 'changesnipside', 'editable', 'hide', 'resizable', 'selectable',
261
+ 'showarrow', 'showlinenumbers', 'stretchable', 'stretchwindow', 'wrap'
262
+ ]
263
+ end
264
+ private :__item_boolval_optkeys
265
+
266
+ def __item_listval_optkeys(id)
267
+ if id[0] == 'cell'
268
+ super(id)
269
+ else
270
+ super(id) + ['text']
271
+ end
272
+ end
273
+ private :__item_listval_optkeys
274
+
275
+ def __item_font_optkeys(id)
276
+ # maybe need to override
277
+ super(id) + ['labelfont']
278
+ end
279
+ private :__item_font_optkeys
280
+
281
+ ##########################
282
+
283
+ def activate(index)
284
+ tk_send('activate', _to_idx(index))
285
+ self
286
+ end
287
+
288
+ def activate_cell(index)
289
+ tk_send('activatecell', _to_idx(index))
290
+ self
291
+ end
292
+ alias activatecell activate_cell
293
+
294
+ def get_attrib(name=nil)
295
+ if name && name != None
296
+ tk_send('attrib', name)
297
+ else
298
+ ret = []
299
+ lst = simplelist(tk_send('attrib'))
300
+ until lst.empty?
301
+ ret << ( [lst.shift] << lst.shift )
302
+ end
303
+ ret
304
+ end
305
+ end
306
+ def set_attrib(*args)
307
+ tk_send('attrib', *(args.flatten))
308
+ self
309
+ end
310
+
311
+ def bbox(index)
312
+ list(tk_send('bbox', _to_idx(index)))
313
+ end
314
+
315
+ def bodypath
316
+ window(tk_send('bodypath'))
317
+ end
318
+
319
+ def bodytag
320
+ TkBindTag.new_by_name(tk_send('bodytag'))
321
+ end
322
+
323
+ def cancel_editing
324
+ tk_send('cancelediting')
325
+ self
326
+ end
327
+ alias cancelediting cancel_editing
328
+
329
+ def get_cellattrib(name=nil)
330
+ if name && name != None
331
+ tk_send('cellattrib', name)
332
+ else
333
+ ret = []
334
+ lst = simplelist(tk_send('cellattrib'))
335
+ until lst.empty?
336
+ ret << ( [lst.shift] << lst.shift )
337
+ end
338
+ ret
339
+ end
340
+ end
341
+ def set_cellattrib(*args)
342
+ tk_send('cellattrib', *(args.flatten))
343
+ self
344
+ end
345
+
346
+ def cellindex(idx)
347
+ _from_idx(tk_send('cellindex', _to_idx(idx)))
348
+ end
349
+
350
+ def cellselection_anchor(idx)
351
+ tk_send('cellselection', 'anchor', _to_idx(idx))
352
+ self
353
+ end
354
+
355
+ def cellselection_clear(first, last=nil)
356
+ if first.kind_of?(Array)
357
+ tk_send('cellselection', 'clear', first.collect{|idx| _to_idx(idx)})
358
+ else
359
+ first = _to_idx(first)
360
+ last = (last)? _to_idx(last): first
361
+ tk_send('cellselection', 'clear', first, last)
362
+ end
363
+ self
364
+ end
365
+
366
+ def cellselection_includes(idx)
367
+ bool(tk_send('cellselection', 'includes', _to_idx(idx)))
368
+ end
369
+
370
+ def cellselection_set(first, last=nil)
371
+ if first.kind_of?(Array)
372
+ tk_send('cellselection', 'set', first.collect{|idx| _to_idx(idx)})
373
+ else
374
+ first = _to_idx(first)
375
+ last = (last)? _to_idx(last): first
376
+ tk_send('cellselection', 'set', first, last)
377
+ end
378
+ self
379
+ end
380
+
381
+ def get_columnattrib(name=nil)
382
+ if name && name != None
383
+ tk_send('columnattrib', name)
384
+ else
385
+ ret = []
386
+ lst = simplelist(tk_send('columnattrib'))
387
+ until lst.empty?
388
+ ret << ( [lst.shift] << lst.shift )
389
+ end
390
+ ret
391
+ end
392
+ end
393
+ def set_columnattrib(*args)
394
+ tk_send('columnattrib', *(args.flatten))
395
+ self
396
+ end
397
+
398
+ def columncount
399
+ number(tk_send('columncount'))
400
+ end
401
+
402
+ def columnindex(idx)
403
+ number(tk_send('columnindex', _to_idx(idx)))
404
+ end
405
+
406
+ def columnwidth(idx, opt=nil)
407
+ if opt
408
+ number(tk_send('columnwidth', _to_idx(idx), "-#{opt}"))
409
+ else
410
+ number(tk_send('columnwidth', _to_idx(idx)))
411
+ end
412
+ end
413
+ def requested_columnwidth(idx)
414
+ columnwidth(idx, 'requested')
415
+ end
416
+ def stretched_columnwidth(idx)
417
+ columnwidth(idx, 'stretched')
418
+ end
419
+ def total_columnwidth(idx)
420
+ columnwidth(idx, 'total')
421
+ end
422
+
423
+ def configcelllist(lst) # lst ==> [idx, opt, val, idx, opt, val, ...]
424
+ ary = []
425
+ lst.slice(3){|idx, opt, val|
426
+ ary << _to_idx(idx) << "-#{opt}" << val
427
+ }
428
+ tk_send('configcelllist', ary)
429
+ self
430
+ end
431
+ alias config_celllist configcelllist
432
+
433
+ def configcells(*args) # args ==> idx, opt, val, idx, opt, val, ...
434
+ ary = []
435
+ args.slice(3){|idx, opt, val|
436
+ ary << _to_idx(idx) << "-#{opt}" << val
437
+ }
438
+ tk_send('configcells', *ary)
439
+ self
440
+ end
441
+ alias config_cells configcells
442
+
443
+ def configcolumnlist(lst) # lst ==> [idx, opt, val, idx, opt, val, ...]
444
+ ary = []
445
+ lst.slice(3){|idx, opt, val|
446
+ ary << _to_idx(idx) << "-#{opt}" << val
447
+ }
448
+ tk_send('configcolumnlist', ary)
449
+ self
450
+ end
451
+ alias config_columnlist configcolumnlist
452
+
453
+ def configcolumns(*args) # args ==> idx, opt, val, idx, opt, val, ...
454
+ ary = []
455
+ args.slice(3){|idx, opt, val|
456
+ ary << _to_idx(idx) << "-#{opt}" << val
457
+ }
458
+ tk_send('configcolumns', *ary)
459
+ self
460
+ end
461
+ alias config_columns configcolumns
462
+
463
+ def configrowlist(lst) # lst ==> [idx, opt, val, idx, opt, val, ...]
464
+ ary = []
465
+ lst.slice(3){|idx, opt, val|
466
+ ary << _to_idx(idx) << "-#{opt}" << val
467
+ }
468
+ tk_send('configrowlist', ary)
469
+ self
470
+ end
471
+ alias config_rowlist configrowlist
472
+
473
+ def configrows(*args) # args ==> idx, opt, val, idx, opt, val, ...
474
+ ary = []
475
+ args.slice(3){|idx, opt, val|
476
+ ary << _to_idx(idx) << "-#{opt}" << val
477
+ }
478
+ tk_send('configrows', *ary)
479
+ self
480
+ end
481
+ alias config_rows configrows
482
+
483
+ def containing(y)
484
+ idx = num_or_str(tk_send('containing', y))
485
+ (idx.kind_of?(Fixnum) && idx < 0)? nil: idx
486
+ end
487
+
488
+ def containing_cell(x, y)
489
+ idx = _from_idx(tk_send('containingcell', x, y))
490
+ if idx.kind_of?(Array)
491
+ [
492
+ ((idx[0].kind_of?(Fixnum) && idx[0] < 0)? nil: idx[0]),
493
+ ((idx[1].kind_of?(Fixnum) && idx[1] < 0)? nil: idx[1])
494
+ ]
495
+ else
496
+ idx
497
+ end
498
+ end
499
+ alias containingcell containing_cell
500
+
501
+ def containing_column(x)
502
+ idx = num_or_str(tk_send('containingcolumn', x))
503
+ (idx.kind_of?(Fixnum) && idx < 0)? nil: idx
504
+ end
505
+ alias containingcolumn containing_column
506
+
507
+ def curcellselection
508
+ simplelist(tk_send('curcellselection')).collect!{|idx| _from_idx(idx)}
509
+ end
510
+
511
+ def curselection
512
+ list(tk_send('curselection'))
513
+ end
514
+
515
+ def delete_items(first, last=nil)
516
+ if first.kind_of?(Array)
517
+ tk_send('delete', first.collect{|idx| _to_idx(idx)})
518
+ else
519
+ first = _to_idx(first)
520
+ last = (last)? _to_idx(last): first
521
+ tk_send('delete', first, last)
522
+ end
523
+ self
524
+ end
525
+ alias delete delete_items
526
+ alias deleteitems delete_items
527
+
528
+ def delete_columns(first, last=nil)
529
+ if first.kind_of?(Array)
530
+ tk_send('deletecolumns', first.collect{|idx| _to_idx(idx)})
531
+ else
532
+ first = _to_idx(first)
533
+ last = (last)? _to_idx(last): first
534
+ tk_send('deletecolumns', first, last)
535
+ end
536
+ self
537
+ end
538
+ alias deletecolumns delete_columns
539
+
540
+ def edit_cell(idx)
541
+ tk_send('editcell', _to_idx(idx))
542
+ self
543
+ end
544
+ alias editcell edit_cell
545
+
546
+ def editwintag
547
+ TkBindTag.new_by_name(tk_send('editwintag'))
548
+ end
549
+
550
+ def editwinpath
551
+ window(tk_send('editwinpath'))
552
+ end
553
+
554
+ def entrypath
555
+ window(tk_send('entrypath'))
556
+ end
557
+
558
+ def fill_column(idx, txt)
559
+ tk_send('fillcolumn', _to_idx(idx), txt)
560
+ self
561
+ end
562
+ alias fillcolumn fill_column
563
+
564
+ def finish_editing
565
+ tk_send('finishediting')
566
+ self
567
+ end
568
+ alias finishediting finish_editing
569
+
570
+ def formatinfo
571
+ key, row, col = simplelist(tk_send('formatinfo'))
572
+ [key, number(row), number(col)]
573
+ end
574
+
575
+ def get(first, last=nil)
576
+ if first.kind_of?(Array)
577
+ simplelist(tk_send('get', first.collect{|idx| _to_idx(idx)})).collect!{|elem| simplelist(elem) }
578
+ else
579
+ first = _to_idx(first)
580
+ last = (last)? _to_idx(last): first
581
+ simplelist(tk_send('get', first, last))
582
+ end
583
+ end
584
+
585
+ def get_cells(first, last=nil)
586
+ if first.kind_of?(Array)
587
+ simplelist(tk_send('getcells', first.collect{|idx| _to_idx(idx)})).collect!{|elem| simplelist(elem) }
588
+ else
589
+ first = _to_idx(first)
590
+ last = (last)? _to_idx(last): first
591
+ simplelist(tk_send('getcells', first, last))
592
+ end
593
+ end
594
+ alias getcells get_cells
595
+
596
+ def get_columns(first, last=nil)
597
+ if first.kind_of?(Array)
598
+ simplelist(tk_send('getcolumns', first.collect{|idx| _to_idx(idx)})).collect!{|elem| simplelist(elem) }
599
+ else
600
+ first = _to_idx(first)
601
+ last = (last)? _to_idx(last): first
602
+ simplelist(tk_send('getcolumns', first, last))
603
+ end
604
+ end
605
+ alias getcolumns get_columns
606
+
607
+ def get_keys(first, last=nil)
608
+ if first.kind_of?(Array)
609
+ simplelist(tk_send('getkeys', first.collect{|idx| _to_idx(idx)})).collect!{|elem| simplelist(elem) }
610
+ else
611
+ first = _to_idx(first)
612
+ last = (last)? _to_idx(last): first
613
+ simplelist(tk_send('getkeys', first, last))
614
+ end
615
+ end
616
+ alias getkeys get_keys
617
+
618
+ def has_attrib?(name)
619
+ bool(tk_send('hasattrib', name))
620
+ end
621
+
622
+ def has_cellattrib?(idx, name)
623
+ bool(tk_send('hascellattrib', _to_idx(idx), name))
624
+ end
625
+
626
+ def has_columnattrib?(idx, name)
627
+ bool(tk_send('hascolumnattrib', _to_idx(idx), name))
628
+ end
629
+
630
+ def has_rowattrib?(idx, name)
631
+ bool(tk_send('hasrowattrib', _to_idx(idx), name))
632
+ end
633
+
634
+ def imagelabelpath(idx)
635
+ window(tk_send('imagelabelpath', _to_idx(idx)))
636
+ end
637
+
638
+ def index(idx)
639
+ number(tk_send('index', _to_idx(idx)))
640
+ end
641
+
642
+ def insert(idx, *items)
643
+ tk_send('insert', _to_idx(idx), *items)
644
+ self
645
+ end
646
+
647
+ def insert_columnlist(idx, columnlist)
648
+ tk_send('insertcolumnlist', _to_idx(idx), columnlist)
649
+ self
650
+ end
651
+ alias insertcolumnlist insert_columnlist
652
+
653
+ def insert_columns(idx, *args)
654
+ tk_send('insertcolums', _to_idx(idx), *args)
655
+ self
656
+ end
657
+ alias insertcolumns insert_columns
658
+
659
+ def insert_list(idx, list)
660
+ tk_send('insertlist', _to_idx(idx), list)
661
+ self
662
+ end
663
+ alias insertlist insert_list
664
+
665
+ def is_elem_snipped?(cellidx, tkvar)
666
+ bool(tk_send('iselemsnipped', _to_idx(cellidx), tkvar))
667
+ end
668
+ alias elem_snipped? is_elem_snipped?
669
+
670
+ def is_title_snipped?(colidx, tkvar)
671
+ bool(tk_send('istitlesnipped', _to_idx(colidx), tkvar))
672
+ end
673
+ alias title_snipped? is_title_snipped?
674
+
675
+ def itemlistvar
676
+ TkVarAccess.new(tk_send('itemlistvar'))
677
+ end
678
+
679
+ def labelpath(idx)
680
+ window(tk_send('labelpath', _to_idx(idx)))
681
+ end
682
+
683
+ def labels
684
+ simplelist(tk_send('labels'))
685
+ end
686
+
687
+ def labeltag
688
+ TkBindTag.new_by_name(tk_send('labeltag'))
689
+ end
690
+
691
+ def move(src, target)
692
+ tk_send('move', _to_idx(src), _to_idx(target))
693
+ self
694
+ end
695
+
696
+ def move_column(src, target)
697
+ tk_send('movecolumn', _to_idx(src), _to_idx(target))
698
+ self
699
+ end
700
+ alias movecolumn move_column
701
+
702
+ def nearest(y)
703
+ _from_idx(tk_send('nearest', y))
704
+ end
705
+
706
+ def nearest_cell(x, y)
707
+ _from_idx(tk_send('nearestcell', x, y))
708
+ end
709
+ alias nearestcell nearest_cell
710
+
711
+ def nearest_column(x)
712
+ _from_idx(tk_send('nearestcolumn', x))
713
+ end
714
+ alias nearestcolumn nearest_column
715
+
716
+ def reject_input
717
+ tk_send('rejectinput')
718
+ self
719
+ end
720
+ alias rejectinput reject_input
721
+
722
+ def reset_sortinfo
723
+ tk_send('resetsortinfo')
724
+ self
725
+ end
726
+ alias resetsortinfo reset_sortinfo
727
+
728
+ def get_rowattrib(name=nil)
729
+ if name && name != None
730
+ tk_send('rowattrib', name)
731
+ else
732
+ ret = []
733
+ lst = simplelist(tk_send('rowattrib'))
734
+ until lst.empty?
735
+ ret << ( [lst.shift] << lst.shift )
736
+ end
737
+ ret
738
+ end
739
+ end
740
+ def set_rowattrib(*args)
741
+ tk_send('rowattrib', *(args.flatten))
742
+ self
743
+ end
744
+
745
+ def scan_mark(x, y)
746
+ tk_send('scan', 'mark', x, y)
747
+ self
748
+ end
749
+
750
+ def scan_dragto(x, y)
751
+ tk_send('scan', 'dragto', x, y)
752
+ self
753
+ end
754
+
755
+ def see(idx)
756
+ tk_send('see', _to_idx(idx))
757
+ self
758
+ end
759
+
760
+ def see_cell(idx)
761
+ tk_send('seecell', _to_idx(idx))
762
+ self
763
+ end
764
+ alias seecell see_cell
765
+
766
+ def see_column(idx)
767
+ tk_send('seecolumn', _to_idx(idx))
768
+ self
769
+ end
770
+ alias seecolumn see_column
771
+
772
+ def selection_anchor(idx)
773
+ tk_send('selection', 'anchor', _to_idx(idx))
774
+ self
775
+ end
776
+
777
+ def selection_clear(first, last=nil)
778
+ if first.kind_of?(Array)
779
+ tk_send('selection', 'clear', first.collect{|idx| _to_idx(idx)})
780
+ else
781
+ first = _to_idx(first)
782
+ last = (last)? _to_idx(last): first
783
+ tk_send('selection', 'clear', first, last)
784
+ end
785
+ self
786
+ end
787
+
788
+ def selection_includes(idx)
789
+ bool(tk_send('selection', 'includes', _to_idx(idx)))
790
+ end
791
+
792
+ def selection_set(first, last=nil)
793
+ if first.kind_of?(Array)
794
+ tk_send('selection', 'set', first.collect{|idx| _to_idx(idx)})
795
+ else
796
+ first = _to_idx(first)
797
+ last = (last)? _to_idx(last): first
798
+ tk_send('selection', 'set', first, last)
799
+ end
800
+ self
801
+ end
802
+
803
+ def separatorpath(idx=nil)
804
+ if idx
805
+ window(tk_send('separatorpath', _to_idx(idx)))
806
+ else
807
+ window(tk_send('separatorpath'))
808
+ end
809
+ end
810
+
811
+ def separators
812
+ simplelist(tk_send('separators')).collect!{|w| window(w)}
813
+ end
814
+
815
+ def size
816
+ number(tk_send('size'))
817
+ end
818
+
819
+ def sort(order=nil)
820
+ if order
821
+ order = order.to_s
822
+ order = '-' << order if order[0] != ?-
823
+ if order.length < 2
824
+ order = nil
825
+ end
826
+ end
827
+ if order
828
+ tk_send('sort', order)
829
+ else
830
+ tk_send('sort')
831
+ end
832
+ self
833
+ end
834
+ def sort_increasing
835
+ tk_send('sort', '-increasing')
836
+ self
837
+ end
838
+ def sort_decreasing
839
+ tk_send('sort', '-decreasing')
840
+ self
841
+ end
842
+
843
+
844
+ # default of 'labelcommand' option
845
+ DEFAULT_labelcommand_value =
846
+ DEFAULT_sortByColumn_cmd = '::tablelist::sortByColumn'
847
+
848
+ # default of 'labelcommand2' option
849
+ DEFAULT_labelcommand2_value =
850
+ DEFAULT_addToSortColumns_cmd = '::tablelist::addToSortColumns'
851
+
852
+ def sortByColumn_with_event_generate(idx)
853
+ tk_call('::tablelist::sortByColumn', @path, _to_idx(idx))
854
+ end
855
+
856
+ def addToSortColumns_with_event_generate(idx)
857
+ tk_call('::tablelist::addToSortColumns', @path, _to_idx(idx))
858
+ end
859
+
860
+ def sort_by_column(idx, order=nil)
861
+ if order
862
+ order = order.to_s
863
+ order = '-' << order if order[0] != ?-
864
+ if order.length < 2
865
+ order = nil
866
+ end
867
+ end
868
+ if order
869
+ tk_send('sortbycolumn', _to_idx(idx), order)
870
+ else
871
+ tk_send('sortbycolumn', _to_idx(idx))
872
+ end
873
+ self
874
+ end
875
+ def sort_by_column_increasing(idx)
876
+ tk_send('sortbycolumn', _to_idx(idx), '-increasing')
877
+ self
878
+ end
879
+ def sort_by_column_decreasing(idx)
880
+ tk_send('sortbycolumn', _to_idx(idx), '-decreasing')
881
+ self
882
+ end
883
+
884
+ def sort_by_columnlist(idxlist, orderlist=None)
885
+ # orderlist :: list of 'increasing' or 'decreasing'
886
+ tk_send('sortbycolumnlist', idxlist.map{|idx| _to_idx(idx)}, orderlist)
887
+ self
888
+ end
889
+
890
+ def sortcolumn
891
+ idx = num_or_str(tk_send('sortcolum'))
892
+ (idx.kind_of?(Fixnum) && idx < 0)? nil: idx
893
+ end
894
+
895
+ def sortcolumnlist
896
+ simplelist(tk_send('sortcolumlist')).map{|col| num_or_str(col)}
897
+ end
898
+
899
+ def sortorder
900
+ tk_send('sortorder')
901
+ end
902
+
903
+ def sortorderlist
904
+ simplelist(tk_send('sortorderlist'))
905
+ end
906
+
907
+ def toggle_columnhide(first, last=nil)
908
+ if first.kind_of?(Array)
909
+ tk_send('togglecolumnhide', first.collect{|idx| _to_idx(idx)})
910
+ else
911
+ first = _to_idx(first)
912
+ last = (last)? _to_idx(last): first
913
+ tk_send('togglecolumnhide', first, last)
914
+ end
915
+ end
916
+
917
+ def toggle_rowhide(first, last=nil)
918
+ if first.kind_of?(Array)
919
+ tk_send('togglerowhide', first.collect{|idx| _to_idx(idx)})
920
+ else
921
+ first = _to_idx(first)
922
+ last = (last)? _to_idx(last): first
923
+ tk_send('togglerowhide', first, last)
924
+ end
925
+ end
926
+
927
+ def toggle_visibility(first, last=nil)
928
+ if first.kind_of?(Array)
929
+ tk_send('togglevisibility', first.collect{|idx| _to_idx(idx)})
930
+ else
931
+ first = _to_idx(first)
932
+ last = (last)? _to_idx(last): first
933
+ tk_send('togglevisibility', first, last)
934
+ end
935
+ self
936
+ end
937
+ alias togglevisibility toggle_visibility
938
+
939
+ def unset_attrib(name)
940
+ tk_send('unsetattrib', name)
941
+ self
942
+ end
943
+
944
+ def unset_cellattrib(idx, name)
945
+ tk_send('unsetcellattrib', _to_idx(idx), name)
946
+ self
947
+ end
948
+
949
+ def unset_columnattrib(idx, name)
950
+ tk_send('unsetcolumnattrib', _to_idx(idx), name)
951
+ self
952
+ end
953
+
954
+ def unset_rowattrib(idx, name)
955
+ tk_send('unsetrowattrib', _to_idx(idx), name)
956
+ self
957
+ end
958
+
959
+ def windowpath(idx)
960
+ window(tk_send('windowpath', _to_idx(idx)))
961
+ end
962
+ end
963
+
964
+ class << Tk::Tcllib::Tablelist
965
+ ############################################################
966
+ # helper commands
967
+ def getTablelistPath(descendant)
968
+ window(Tk.tk_call('::tablelist::getTablelistPath', descendant))
969
+ end
970
+
971
+ def getTablelistColumn(descendant)
972
+ num_or_str(Tk.tk_call('::tablelist::getTablelistColumn', headerlabel))
973
+ end
974
+
975
+
976
+ def convEventFields(descendant, x, y)
977
+ window(Tk.tk_call('::tablelist::convEventFields', descendant, x, y))
978
+ end
979
+
980
+
981
+ ############################################################
982
+ # with the BWidget package
983
+ def addBWidgetEntry(name=None)
984
+ Tk.tk_call('::tablelist::addBWidgetEntry', name)
985
+ end
986
+
987
+ def addBWidgetSpinBox(name=None)
988
+ Tk.tk_call('::tablelist::addBWidgetSpinBox', name)
989
+ end
990
+
991
+ def addBWidgetComboBox(name=None)
992
+ Tk.tk_call('::tablelist::addBWidgetComboBox', name)
993
+ end
994
+
995
+
996
+ ############################################################
997
+ # with the Iwidgets ([incr Widgets]) package
998
+ def addIncrEntryfield(name=None)
999
+ Tk.tk_call('::tablelist::addIncrEntry', name)
1000
+ end
1001
+
1002
+ def addIncrDateTimeWidget(type, seconds=false, name=None)
1003
+ # type := 'datefield'|'dateentry'|timefield'|'timeentry'
1004
+ if seconds && seconds != None
1005
+ seconds = '-seconds'
1006
+ else
1007
+ seconds = None
1008
+ end
1009
+ Tk.tk_call('::tablelist::addDateTimeWidget', type, seconds, name)
1010
+ end
1011
+
1012
+ def addIncrSpinner(name=None)
1013
+ Tk.tk_call('::tablelist::addIncrSpinner', name)
1014
+ end
1015
+
1016
+ def addIncrSpinint(name=None)
1017
+ Tk.tk_call('::tablelist::addIncrSpinint', name)
1018
+ end
1019
+
1020
+ def addIncrCombobox(name=None)
1021
+ Tk.tk_call('::tablelist::addIncrCombobox', name)
1022
+ end
1023
+
1024
+
1025
+ ############################################################
1026
+ # with Bryan Oakley's combobox package
1027
+ def addOakleyCombobox(name=None)
1028
+ Tk.tk_call('::tablelist::addOakleyCombobox', name)
1029
+ end
1030
+
1031
+ ############################################################
1032
+ # with the multi-entry package Mentry is a library extension
1033
+ def addDateMentry(format, separator, gmt=false, name=None)
1034
+ if gmt && gmt != None
1035
+ gmt = '-gmt'
1036
+ else
1037
+ gmt = None
1038
+ end
1039
+ Tk.tk_call('::tablelist::addDateMentry', format, separator, gmt, name)
1040
+ end
1041
+
1042
+ def addTimeMentry(format, separator, gmt=false, name=None)
1043
+ if gmt && gmt != None
1044
+ gmt = '-gmt'
1045
+ else
1046
+ gmt = None
1047
+ end
1048
+ Tk.tk_call('::tablelist::addTimeMentry', format, separator, gmt, name)
1049
+ end
1050
+
1051
+ def addDateTimeMentry(format, date_sep, time_sep, gmt=false, name=None)
1052
+ if gmt && gmt != None
1053
+ gmt = '-gmt'
1054
+ else
1055
+ gmt = None
1056
+ end
1057
+ Tk.tk_call('::tablelist::addDateTimeMentry',
1058
+ format, date_sep, time_sep, gmt, name)
1059
+ end
1060
+
1061
+ def addFixedPointMentry(count1, count2, comma=false, name=None)
1062
+ if comma && comma != None
1063
+ comma = '-comma'
1064
+ else
1065
+ comma = None
1066
+ end
1067
+ Tk.tk_call('::tablelist::addFixedPoingMentry', count1, count2, comma, name)
1068
+ end
1069
+
1070
+ def addIPAddrMentry(name=None)
1071
+ Tk.tk_call('::tablelist::addIPAddrMentry', name)
1072
+ end
1073
+ end