tk-win 0.2.0-x86-mingw32

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 (329) hide show
  1. data/.document +5 -0
  2. data/.gitignore +21 -0
  3. data/LICENSE +20 -0
  4. data/README.rdoc +17 -0
  5. data/Rakefile +46 -0
  6. data/VERSION +1 -0
  7. data/lib/tcltk.rb +367 -0
  8. data/lib/tk.rb +5682 -0
  9. data/lib/tk/after.rb +6 -0
  10. data/lib/tk/autoload.rb +760 -0
  11. data/lib/tk/bgerror.rb +29 -0
  12. data/lib/tk/bindtag.rb +138 -0
  13. data/lib/tk/button.rb +31 -0
  14. data/lib/tk/canvas.rb +816 -0
  15. data/lib/tk/canvastag.rb +459 -0
  16. data/lib/tk/checkbutton.rb +32 -0
  17. data/lib/tk/clipboard.rb +75 -0
  18. data/lib/tk/clock.rb +71 -0
  19. data/lib/tk/composite.rb +484 -0
  20. data/lib/tk/console.rb +52 -0
  21. data/lib/tk/dialog.rb +326 -0
  22. data/lib/tk/encodedstr.rb +187 -0
  23. data/lib/tk/entry.rb +120 -0
  24. data/lib/tk/event.rb +562 -0
  25. data/lib/tk/font.rb +2351 -0
  26. data/lib/tk/frame.rb +132 -0
  27. data/lib/tk/grid.rb +279 -0
  28. data/lib/tk/image.rb +275 -0
  29. data/lib/tk/itemconfig.rb +1222 -0
  30. data/lib/tk/itemfont.rb +327 -0
  31. data/lib/tk/kinput.rb +71 -0
  32. data/lib/tk/label.rb +22 -0
  33. data/lib/tk/labelframe.rb +31 -0
  34. data/lib/tk/listbox.rb +284 -0
  35. data/lib/tk/macpkg.rb +80 -0
  36. data/lib/tk/menu.rb +718 -0
  37. data/lib/tk/menubar.rb +137 -0
  38. data/lib/tk/menuspec.rb +456 -0
  39. data/lib/tk/message.rb +24 -0
  40. data/lib/tk/mngfocus.rb +33 -0
  41. data/lib/tk/msgcat.rb +296 -0
  42. data/lib/tk/namespace.rb +551 -0
  43. data/lib/tk/optiondb.rb +377 -0
  44. data/lib/tk/optionobj.rb +212 -0
  45. data/lib/tk/pack.rb +107 -0
  46. data/lib/tk/package.rb +143 -0
  47. data/lib/tk/palette.rb +55 -0
  48. data/lib/tk/panedwindow.rb +260 -0
  49. data/lib/tk/place.rb +128 -0
  50. data/lib/tk/radiobutton.rb +73 -0
  51. data/lib/tk/root.rb +95 -0
  52. data/lib/tk/scale.rb +112 -0
  53. data/lib/tk/scrollable.rb +82 -0
  54. data/lib/tk/scrollbar.rb +183 -0
  55. data/lib/tk/scrollbox.rb +39 -0
  56. data/lib/tk/selection.rb +86 -0
  57. data/lib/tk/spinbox.rb +144 -0
  58. data/lib/tk/tagfont.rb +43 -0
  59. data/lib/tk/text.rb +1604 -0
  60. data/lib/tk/textimage.rb +88 -0
  61. data/lib/tk/textmark.rb +204 -0
  62. data/lib/tk/texttag.rb +321 -0
  63. data/lib/tk/textwindow.rb +154 -0
  64. data/lib/tk/timer.rb +669 -0
  65. data/lib/tk/toplevel.rb +264 -0
  66. data/lib/tk/ttk_selector.rb +98 -0
  67. data/lib/tk/txtwin_abst.rb +39 -0
  68. data/lib/tk/validation.rb +397 -0
  69. data/lib/tk/variable.rb +1799 -0
  70. data/lib/tk/virtevent.rb +139 -0
  71. data/lib/tk/winfo.rb +392 -0
  72. data/lib/tk/winpkg.rb +156 -0
  73. data/lib/tk/wm.rb +552 -0
  74. data/lib/tk/xim.rb +122 -0
  75. data/lib/tkafter.rb +4 -0
  76. data/lib/tkbgerror.rb +4 -0
  77. data/lib/tkcanvas.rb +4 -0
  78. data/lib/tkclass.rb +47 -0
  79. data/lib/tkconsole.rb +4 -0
  80. data/lib/tkdialog.rb +4 -0
  81. data/lib/tkentry.rb +4 -0
  82. data/lib/tkextlib/ICONS.rb +13 -0
  83. data/lib/tkextlib/ICONS/icons.rb +129 -0
  84. data/lib/tkextlib/ICONS/setup.rb +8 -0
  85. data/lib/tkextlib/SUPPORT_STATUS +198 -0
  86. data/lib/tkextlib/blt.rb +189 -0
  87. data/lib/tkextlib/blt/barchart.rb +79 -0
  88. data/lib/tkextlib/blt/bitmap.rb +112 -0
  89. data/lib/tkextlib/blt/busy.rb +83 -0
  90. data/lib/tkextlib/blt/component.rb +2218 -0
  91. data/lib/tkextlib/blt/container.rb +28 -0
  92. data/lib/tkextlib/blt/cutbuffer.rb +23 -0
  93. data/lib/tkextlib/blt/dragdrop.rb +269 -0
  94. data/lib/tkextlib/blt/eps.rb +32 -0
  95. data/lib/tkextlib/blt/graph.rb +67 -0
  96. data/lib/tkextlib/blt/htext.rb +112 -0
  97. data/lib/tkextlib/blt/setup.rb +8 -0
  98. data/lib/tkextlib/blt/spline.rb +23 -0
  99. data/lib/tkextlib/blt/stripchart.rb +74 -0
  100. data/lib/tkextlib/blt/table.rb +412 -0
  101. data/lib/tkextlib/blt/tabnotebook.rb +110 -0
  102. data/lib/tkextlib/blt/tabset.rb +504 -0
  103. data/lib/tkextlib/blt/ted.rb +68 -0
  104. data/lib/tkextlib/blt/tile.rb +25 -0
  105. data/lib/tkextlib/blt/tile/button.rb +16 -0
  106. data/lib/tkextlib/blt/tile/checkbutton.rb +17 -0
  107. data/lib/tkextlib/blt/tile/frame.rb +16 -0
  108. data/lib/tkextlib/blt/tile/label.rb +16 -0
  109. data/lib/tkextlib/blt/tile/radiobutton.rb +17 -0
  110. data/lib/tkextlib/blt/tile/scrollbar.rb +16 -0
  111. data/lib/tkextlib/blt/tile/toplevel.rb +16 -0
  112. data/lib/tkextlib/blt/tree.rb +1058 -0
  113. data/lib/tkextlib/blt/treeview.rb +1287 -0
  114. data/lib/tkextlib/blt/unix_dnd.rb +141 -0
  115. data/lib/tkextlib/blt/vector.rb +256 -0
  116. data/lib/tkextlib/blt/watch.rb +175 -0
  117. data/lib/tkextlib/blt/win_printer.rb +61 -0
  118. data/lib/tkextlib/blt/winop.rb +107 -0
  119. data/lib/tkextlib/bwidget.rb +153 -0
  120. data/lib/tkextlib/bwidget/arrowbutton.rb +21 -0
  121. data/lib/tkextlib/bwidget/bitmap.rb +21 -0
  122. data/lib/tkextlib/bwidget/button.rb +31 -0
  123. data/lib/tkextlib/bwidget/buttonbox.rb +90 -0
  124. data/lib/tkextlib/bwidget/combobox.rb +62 -0
  125. data/lib/tkextlib/bwidget/dialog.rb +194 -0
  126. data/lib/tkextlib/bwidget/dragsite.rb +31 -0
  127. data/lib/tkextlib/bwidget/dropsite.rb +39 -0
  128. data/lib/tkextlib/bwidget/dynamichelp.rb +63 -0
  129. data/lib/tkextlib/bwidget/entry.rb +43 -0
  130. data/lib/tkextlib/bwidget/label.rb +41 -0
  131. data/lib/tkextlib/bwidget/labelentry.rb +80 -0
  132. data/lib/tkextlib/bwidget/labelframe.rb +52 -0
  133. data/lib/tkextlib/bwidget/listbox.rb +361 -0
  134. data/lib/tkextlib/bwidget/mainframe.rb +132 -0
  135. data/lib/tkextlib/bwidget/messagedlg.rb +192 -0
  136. data/lib/tkextlib/bwidget/notebook.rb +166 -0
  137. data/lib/tkextlib/bwidget/pagesmanager.rb +73 -0
  138. data/lib/tkextlib/bwidget/panedwindow.rb +42 -0
  139. data/lib/tkextlib/bwidget/panelframe.rb +67 -0
  140. data/lib/tkextlib/bwidget/passwddlg.rb +44 -0
  141. data/lib/tkextlib/bwidget/progressbar.rb +20 -0
  142. data/lib/tkextlib/bwidget/progressdlg.rb +58 -0
  143. data/lib/tkextlib/bwidget/scrollableframe.rb +40 -0
  144. data/lib/tkextlib/bwidget/scrolledwindow.rb +48 -0
  145. data/lib/tkextlib/bwidget/scrollview.rb +25 -0
  146. data/lib/tkextlib/bwidget/selectcolor.rb +73 -0
  147. data/lib/tkextlib/bwidget/selectfont.rb +91 -0
  148. data/lib/tkextlib/bwidget/separator.rb +20 -0
  149. data/lib/tkextlib/bwidget/setup.rb +8 -0
  150. data/lib/tkextlib/bwidget/spinbox.rb +98 -0
  151. data/lib/tkextlib/bwidget/statusbar.rb +62 -0
  152. data/lib/tkextlib/bwidget/titleframe.rb +33 -0
  153. data/lib/tkextlib/bwidget/tree.rb +500 -0
  154. data/lib/tkextlib/bwidget/widget.rb +129 -0
  155. data/lib/tkextlib/itcl.rb +13 -0
  156. data/lib/tkextlib/itcl/incr_tcl.rb +178 -0
  157. data/lib/tkextlib/itcl/setup.rb +13 -0
  158. data/lib/tkextlib/itk.rb +13 -0
  159. data/lib/tkextlib/itk/incr_tk.rb +446 -0
  160. data/lib/tkextlib/itk/setup.rb +13 -0
  161. data/lib/tkextlib/iwidgets.rb +94 -0
  162. data/lib/tkextlib/iwidgets/buttonbox.rb +121 -0
  163. data/lib/tkextlib/iwidgets/calendar.rb +125 -0
  164. data/lib/tkextlib/iwidgets/canvasprintbox.rb +53 -0
  165. data/lib/tkextlib/iwidgets/canvasprintdialog.rb +38 -0
  166. data/lib/tkextlib/iwidgets/checkbox.rb +130 -0
  167. data/lib/tkextlib/iwidgets/combobox.rb +104 -0
  168. data/lib/tkextlib/iwidgets/dateentry.rb +20 -0
  169. data/lib/tkextlib/iwidgets/datefield.rb +58 -0
  170. data/lib/tkextlib/iwidgets/dialog.rb +20 -0
  171. data/lib/tkextlib/iwidgets/dialogshell.rb +121 -0
  172. data/lib/tkextlib/iwidgets/disjointlistbox.rb +50 -0
  173. data/lib/tkextlib/iwidgets/entryfield.rb +185 -0
  174. data/lib/tkextlib/iwidgets/extbutton.rb +40 -0
  175. data/lib/tkextlib/iwidgets/extfileselectionbox.rb +46 -0
  176. data/lib/tkextlib/iwidgets/extfileselectiondialog.rb +33 -0
  177. data/lib/tkextlib/iwidgets/feedback.rb +35 -0
  178. data/lib/tkextlib/iwidgets/fileselectionbox.rb +46 -0
  179. data/lib/tkextlib/iwidgets/fileselectiondialog.rb +33 -0
  180. data/lib/tkextlib/iwidgets/finddialog.rb +42 -0
  181. data/lib/tkextlib/iwidgets/hierarchy.rb +365 -0
  182. data/lib/tkextlib/iwidgets/hyperhelp.rb +50 -0
  183. data/lib/tkextlib/iwidgets/labeledframe.rb +39 -0
  184. data/lib/tkextlib/iwidgets/labeledwidget.rb +45 -0
  185. data/lib/tkextlib/iwidgets/mainwindow.rb +67 -0
  186. data/lib/tkextlib/iwidgets/menubar.rb +212 -0
  187. data/lib/tkextlib/iwidgets/messagebox.rb +93 -0
  188. data/lib/tkextlib/iwidgets/messagedialog.rb +20 -0
  189. data/lib/tkextlib/iwidgets/notebook.rb +175 -0
  190. data/lib/tkextlib/iwidgets/optionmenu.rb +92 -0
  191. data/lib/tkextlib/iwidgets/panedwindow.rb +134 -0
  192. data/lib/tkextlib/iwidgets/promptdialog.rb +131 -0
  193. data/lib/tkextlib/iwidgets/pushbutton.rb +35 -0
  194. data/lib/tkextlib/iwidgets/radiobox.rb +121 -0
  195. data/lib/tkextlib/iwidgets/scopedobject.rb +24 -0
  196. data/lib/tkextlib/iwidgets/scrolledcanvas.rb +353 -0
  197. data/lib/tkextlib/iwidgets/scrolledframe.rb +59 -0
  198. data/lib/tkextlib/iwidgets/scrolledhtml.rb +58 -0
  199. data/lib/tkextlib/iwidgets/scrolledlistbox.rb +207 -0
  200. data/lib/tkextlib/iwidgets/scrolledtext.rb +568 -0
  201. data/lib/tkextlib/iwidgets/scrolledwidget.rb +20 -0
  202. data/lib/tkextlib/iwidgets/selectionbox.rb +102 -0
  203. data/lib/tkextlib/iwidgets/selectiondialog.rb +92 -0
  204. data/lib/tkextlib/iwidgets/setup.rb +8 -0
  205. data/lib/tkextlib/iwidgets/shell.rb +38 -0
  206. data/lib/tkextlib/iwidgets/spindate.rb +48 -0
  207. data/lib/tkextlib/iwidgets/spinint.rb +30 -0
  208. data/lib/tkextlib/iwidgets/spinner.rb +169 -0
  209. data/lib/tkextlib/iwidgets/spintime.rb +48 -0
  210. data/lib/tkextlib/iwidgets/tabnotebook.rb +181 -0
  211. data/lib/tkextlib/iwidgets/tabset.rb +145 -0
  212. data/lib/tkextlib/iwidgets/timeentry.rb +25 -0
  213. data/lib/tkextlib/iwidgets/timefield.rb +58 -0
  214. data/lib/tkextlib/iwidgets/toolbar.rb +112 -0
  215. data/lib/tkextlib/iwidgets/watch.rb +56 -0
  216. data/lib/tkextlib/pkg_checker.rb +184 -0
  217. data/lib/tkextlib/setup.rb +8 -0
  218. data/lib/tkextlib/tcllib.rb +105 -0
  219. data/lib/tkextlib/tcllib/autoscroll.rb +158 -0
  220. data/lib/tkextlib/tcllib/ctext.rb +160 -0
  221. data/lib/tkextlib/tcllib/cursor.rb +97 -0
  222. data/lib/tkextlib/tcllib/datefield.rb +57 -0
  223. data/lib/tkextlib/tcllib/dialog.rb +84 -0
  224. data/lib/tkextlib/tcllib/getstring.rb +134 -0
  225. data/lib/tkextlib/tcllib/history.rb +73 -0
  226. data/lib/tkextlib/tcllib/ico.rb +146 -0
  227. data/lib/tkextlib/tcllib/ip_entry.rb +75 -0
  228. data/lib/tkextlib/tcllib/panelframe.rb +78 -0
  229. data/lib/tkextlib/tcllib/plotchart.rb +1404 -0
  230. data/lib/tkextlib/tcllib/ruler.rb +65 -0
  231. data/lib/tkextlib/tcllib/screenruler.rb +68 -0
  232. data/lib/tkextlib/tcllib/scrollwin.rb +61 -0
  233. data/lib/tkextlib/tcllib/setup.rb +8 -0
  234. data/lib/tkextlib/tcllib/style.rb +61 -0
  235. data/lib/tkextlib/tcllib/superframe.rb +51 -0
  236. data/lib/tkextlib/tcllib/swaplist.rb +150 -0
  237. data/lib/tkextlib/tcllib/tablelist.rb +28 -0
  238. data/lib/tkextlib/tcllib/tablelist_core.rb +1072 -0
  239. data/lib/tkextlib/tcllib/tablelist_tile.rb +43 -0
  240. data/lib/tkextlib/tcllib/tkpiechart.rb +314 -0
  241. data/lib/tkextlib/tcllib/tooltip.rb +104 -0
  242. data/lib/tkextlib/tcllib/widget.rb +82 -0
  243. data/lib/tkextlib/tclx.rb +13 -0
  244. data/lib/tkextlib/tclx/setup.rb +8 -0
  245. data/lib/tkextlib/tclx/tclx.rb +74 -0
  246. data/lib/tkextlib/tile.rb +449 -0
  247. data/lib/tkextlib/tile/dialog.rb +102 -0
  248. data/lib/tkextlib/tile/setup.rb +8 -0
  249. data/lib/tkextlib/tile/sizegrip.rb +32 -0
  250. data/lib/tkextlib/tile/style.rb +336 -0
  251. data/lib/tkextlib/tile/tbutton.rb +34 -0
  252. data/lib/tkextlib/tile/tcheckbutton.rb +38 -0
  253. data/lib/tkextlib/tile/tcombobox.rb +55 -0
  254. data/lib/tkextlib/tile/tentry.rb +49 -0
  255. data/lib/tkextlib/tile/tframe.rb +34 -0
  256. data/lib/tkextlib/tile/tlabel.rb +34 -0
  257. data/lib/tkextlib/tile/tlabelframe.rb +38 -0
  258. data/lib/tkextlib/tile/tmenubutton.rb +38 -0
  259. data/lib/tkextlib/tile/tnotebook.rb +147 -0
  260. data/lib/tkextlib/tile/tpaned.rb +245 -0
  261. data/lib/tkextlib/tile/tprogressbar.rb +57 -0
  262. data/lib/tkextlib/tile/tradiobutton.rb +38 -0
  263. data/lib/tkextlib/tile/treeview.rb +1306 -0
  264. data/lib/tkextlib/tile/tscale.rb +56 -0
  265. data/lib/tkextlib/tile/tscrollbar.rb +63 -0
  266. data/lib/tkextlib/tile/tseparator.rb +34 -0
  267. data/lib/tkextlib/tile/tsquare.rb +30 -0
  268. data/lib/tkextlib/tkDND.rb +18 -0
  269. data/lib/tkextlib/tkDND/setup.rb +8 -0
  270. data/lib/tkextlib/tkDND/shape.rb +125 -0
  271. data/lib/tkextlib/tkDND/tkdnd.rb +182 -0
  272. data/lib/tkextlib/tkHTML.rb +13 -0
  273. data/lib/tkextlib/tkHTML/htmlwidget.rb +453 -0
  274. data/lib/tkextlib/tkHTML/setup.rb +8 -0
  275. data/lib/tkextlib/tkimg.rb +36 -0
  276. data/lib/tkextlib/tkimg/bmp.rb +33 -0
  277. data/lib/tkextlib/tkimg/gif.rb +33 -0
  278. data/lib/tkextlib/tkimg/ico.rb +33 -0
  279. data/lib/tkextlib/tkimg/jpeg.rb +33 -0
  280. data/lib/tkextlib/tkimg/pcx.rb +33 -0
  281. data/lib/tkextlib/tkimg/pixmap.rb +44 -0
  282. data/lib/tkextlib/tkimg/png.rb +33 -0
  283. data/lib/tkextlib/tkimg/ppm.rb +33 -0
  284. data/lib/tkextlib/tkimg/ps.rb +33 -0
  285. data/lib/tkextlib/tkimg/setup.rb +8 -0
  286. data/lib/tkextlib/tkimg/sgi.rb +33 -0
  287. data/lib/tkextlib/tkimg/sun.rb +33 -0
  288. data/lib/tkextlib/tkimg/tga.rb +33 -0
  289. data/lib/tkextlib/tkimg/tiff.rb +33 -0
  290. data/lib/tkextlib/tkimg/window.rb +33 -0
  291. data/lib/tkextlib/tkimg/xbm.rb +33 -0
  292. data/lib/tkextlib/tkimg/xpm.rb +33 -0
  293. data/lib/tkextlib/tktable.rb +14 -0
  294. data/lib/tkextlib/tktable/setup.rb +8 -0
  295. data/lib/tkextlib/tktable/tktable.rb +966 -0
  296. data/lib/tkextlib/tktrans.rb +14 -0
  297. data/lib/tkextlib/tktrans/setup.rb +8 -0
  298. data/lib/tkextlib/tktrans/tktrans.rb +64 -0
  299. data/lib/tkextlib/treectrl.rb +13 -0
  300. data/lib/tkextlib/treectrl/setup.rb +8 -0
  301. data/lib/tkextlib/treectrl/tktreectrl.rb +2522 -0
  302. data/lib/tkextlib/trofs.rb +13 -0
  303. data/lib/tkextlib/trofs/setup.rb +8 -0
  304. data/lib/tkextlib/trofs/trofs.rb +51 -0
  305. data/lib/tkextlib/version.rb +6 -0
  306. data/lib/tkextlib/vu.rb +48 -0
  307. data/lib/tkextlib/vu/bargraph.rb +61 -0
  308. data/lib/tkextlib/vu/charts.rb +53 -0
  309. data/lib/tkextlib/vu/dial.rb +102 -0
  310. data/lib/tkextlib/vu/pie.rb +286 -0
  311. data/lib/tkextlib/vu/setup.rb +8 -0
  312. data/lib/tkextlib/vu/spinbox.rb +22 -0
  313. data/lib/tkextlib/winico.rb +14 -0
  314. data/lib/tkextlib/winico/setup.rb +8 -0
  315. data/lib/tkextlib/winico/winico.rb +224 -0
  316. data/lib/tkfont.rb +4 -0
  317. data/lib/tkmacpkg.rb +4 -0
  318. data/lib/tkmenubar.rb +4 -0
  319. data/lib/tkmngfocus.rb +4 -0
  320. data/lib/tkpalette.rb +4 -0
  321. data/lib/tkscrollbox.rb +4 -0
  322. data/lib/tktext.rb +4 -0
  323. data/lib/tkvirtevent.rb +4 -0
  324. data/lib/tkwinpkg.rb +4 -0
  325. data/spec/spec.opts +1 -0
  326. data/spec/spec_helper.rb +9 -0
  327. data/spec/tk-win_spec.rb +7 -0
  328. data/tk-win.gemspec +373 -0
  329. metadata +412 -0
@@ -0,0 +1,20 @@
1
+ #
2
+ # tkextlib/iwidgets/scrolledwidget.rb
3
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4
+ #
5
+
6
+ require 'tk'
7
+ require 'tkextlib/iwidgets.rb'
8
+
9
+ module Tk
10
+ module Iwidgets
11
+ class Scrolledwidget < Tk::Iwidgets::Labeledwidget
12
+ end
13
+ end
14
+ end
15
+
16
+ class Tk::Iwidgets::Scrolledwidget
17
+ TkCommandNames = ['::iwidgets::scrolledwidget'.freeze].freeze
18
+ WidgetClassName = 'Scrolledwidget'.freeze
19
+ WidgetClassNames[WidgetClassName] ||= self
20
+ end
@@ -0,0 +1,102 @@
1
+ #
2
+ # tkextlib/iwidgets/selectionbox.rb
3
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4
+ #
5
+
6
+ require 'tk'
7
+ require 'tkextlib/iwidgets.rb'
8
+
9
+ module Tk
10
+ module Iwidgets
11
+ class Selectionbox < Tk::Itk::Widget
12
+ end
13
+ end
14
+ end
15
+
16
+ class Tk::Iwidgets::Selectionbox
17
+ TkCommandNames = ['::iwidgets::selectionbox'.freeze].freeze
18
+ WidgetClassName = 'Selectionbox'.freeze
19
+ WidgetClassNames[WidgetClassName] ||= self
20
+
21
+ def __boolval_optkeys
22
+ super() << 'itemson' << 'selectionon'
23
+ end
24
+ private :__boolval_optkeys
25
+
26
+ def __strval_optkeys
27
+ super() << 'itemslabel' << 'selectionlabel'
28
+ end
29
+ private :__strval_optkeys
30
+
31
+ def child_site
32
+ window(tk_call(@path, 'childsite'))
33
+ end
34
+
35
+ def clear_items
36
+ tk_call(@path, 'clear', 'items')
37
+ self
38
+ end
39
+
40
+ def clear_selection
41
+ tk_call(@path, 'clear', 'selection')
42
+ self
43
+ end
44
+
45
+ def get
46
+ tk_call(@path, 'get')
47
+ end
48
+
49
+ def insert_items(idx, *args)
50
+ tk_call(@path, 'insert', 'items', idx, *args)
51
+ end
52
+
53
+ def insert_selection(pos, text)
54
+ tk_call(@path, 'insert', 'selection', pos, text)
55
+ end
56
+
57
+ def select_item
58
+ tk_call(@path, 'selectitem')
59
+ self
60
+ end
61
+
62
+ # based on Tk::Listbox ( and TkTextWin )
63
+ def curselection
64
+ list(tk_send_without_enc('curselection'))
65
+ end
66
+ def delete(first, last=None)
67
+ tk_send_without_enc('delete', first, last)
68
+ self
69
+ end
70
+ def index(idx)
71
+ tk_send_without_enc('index', idx).to_i
72
+ end
73
+ def nearest(y)
74
+ tk_send_without_enc('nearest', y).to_i
75
+ end
76
+ def scan_mark(x, y)
77
+ tk_send_without_enc('scan', 'mark', x, y)
78
+ self
79
+ end
80
+ def scan_dragto(x, y)
81
+ tk_send_without_enc('scan', 'dragto', x, y)
82
+ self
83
+ end
84
+ def selection_anchor(index)
85
+ tk_send_without_enc('selection', 'anchor', index)
86
+ self
87
+ end
88
+ def selection_clear(first, last=None)
89
+ tk_send_without_enc('selection', 'clear', first, last)
90
+ self
91
+ end
92
+ def selection_includes(index)
93
+ bool(tk_send_without_enc('selection', 'includes', index))
94
+ end
95
+ def selection_set(first, last=None)
96
+ tk_send_without_enc('selection', 'set', first, last)
97
+ self
98
+ end
99
+ def size
100
+ tk_send_without_enc('size').to_i
101
+ end
102
+ end
@@ -0,0 +1,92 @@
1
+ #
2
+ # tkextlib/iwidgets/selectiondialog.rb
3
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4
+ #
5
+
6
+ require 'tk'
7
+ require 'tkextlib/iwidgets.rb'
8
+
9
+ module Tk
10
+ module Iwidgets
11
+ class Selectiondialog < Tk::Iwidgets::Dialog
12
+ end
13
+ end
14
+ end
15
+
16
+ class Tk::Iwidgets::Selectiondialog
17
+ TkCommandNames = ['::iwidgets::selectiondialog'.freeze].freeze
18
+ WidgetClassName = 'Selectiondialog'.freeze
19
+ WidgetClassNames[WidgetClassName] ||= self
20
+
21
+ def child_site
22
+ window(tk_call(@path, 'childsite'))
23
+ end
24
+
25
+ def clear_items
26
+ tk_call(@path, 'clear', 'items')
27
+ self
28
+ end
29
+
30
+ def clear_selection
31
+ tk_call(@path, 'clear', 'selection')
32
+ self
33
+ end
34
+
35
+ def get
36
+ tk_call(@path, 'get')
37
+ end
38
+
39
+ def insert_items(idx, *args)
40
+ tk_call(@path, 'insert', 'items', idx, *args)
41
+ end
42
+
43
+ def insert_selection(pos, text)
44
+ tk_call(@path, 'insert', 'selection', pos, text)
45
+ end
46
+
47
+ def select_item
48
+ tk_call(@path, 'selectitem')
49
+ self
50
+ end
51
+
52
+ # based on Tk::Listbox ( and TkTextWin )
53
+ def curselection
54
+ list(tk_send_without_enc('curselection'))
55
+ end
56
+ def delete(first, last=None)
57
+ tk_send_without_enc('delete', first, last)
58
+ self
59
+ end
60
+ def index(idx)
61
+ tk_send_without_enc('index', idx).to_i
62
+ end
63
+ def nearest(y)
64
+ tk_send_without_enc('nearest', y).to_i
65
+ end
66
+ def scan_mark(x, y)
67
+ tk_send_without_enc('scan', 'mark', x, y)
68
+ self
69
+ end
70
+ def scan_dragto(x, y)
71
+ tk_send_without_enc('scan', 'dragto', x, y)
72
+ self
73
+ end
74
+ def selection_anchor(index)
75
+ tk_send_without_enc('selection', 'anchor', index)
76
+ self
77
+ end
78
+ def selection_clear(first, last=None)
79
+ tk_send_without_enc('selection', 'clear', first, last)
80
+ self
81
+ end
82
+ def selection_includes(index)
83
+ bool(tk_send_without_enc('selection', 'includes', index))
84
+ end
85
+ def selection_set(first, last=None)
86
+ tk_send_without_enc('selection', 'set', first, last)
87
+ self
88
+ end
89
+ def size
90
+ tk_send_without_enc('size').to_i
91
+ end
92
+ end
@@ -0,0 +1,8 @@
1
+ #
2
+ # setup.rb -- setup script before calling TkPackage.require()
3
+ #
4
+ # If you need some setup operations (for example, add a library path
5
+ # to the library search path) before using Tcl/Tk library packages
6
+ # wrapped by Ruby scripts in this directory, please write the setup
7
+ # operations in this file.
8
+ #
@@ -0,0 +1,38 @@
1
+ #
2
+ # tkextlib/iwidgets/shell.rb
3
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4
+ #
5
+
6
+ require 'tk'
7
+ require 'tkextlib/iwidgets.rb'
8
+
9
+ module Tk
10
+ module Iwidgets
11
+ class Shell < Tk::Itk::Toplevel
12
+ end
13
+ end
14
+ end
15
+
16
+ class Tk::Iwidgets::Shell
17
+ TkCommandNames = ['::iwidgets::shell'.freeze].freeze
18
+ WidgetClassName = 'Shell'.freeze
19
+ WidgetClassNames[WidgetClassName] ||= self
20
+
21
+ def activate
22
+ tk_call(@path, 'activate') # may return val of deactibate method
23
+ end
24
+
25
+ def center(win=None)
26
+ tk_call(@path, 'center', win)
27
+ self
28
+ end
29
+
30
+ def child_site
31
+ window(tk_call(@path, 'childsite'))
32
+ end
33
+
34
+ def deactivate(val=None)
35
+ tk_call(@path, 'deactivate', val)
36
+ self
37
+ end
38
+ end
@@ -0,0 +1,48 @@
1
+ #
2
+ # tkextlib/iwidgets/spindate.rb
3
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4
+ #
5
+
6
+ require 'tk'
7
+ require 'tkextlib/iwidgets.rb'
8
+
9
+ module Tk
10
+ module Iwidgets
11
+ class Spindate < Tk::Itk::Widget
12
+ end
13
+ end
14
+ end
15
+
16
+ class Tk::Iwidgets::Spindate
17
+ TkCommandNames = ['::iwidgets::spindate'.freeze].freeze
18
+ WidgetClassName = 'Spindate'.freeze
19
+ WidgetClassNames[WidgetClassName] ||= self
20
+
21
+ def __boolval_optkeys
22
+ super() << 'dayon' << 'monthon' << 'yearon'
23
+ end
24
+ private :__boolval_optkeys
25
+
26
+ def __strval_optkeys
27
+ super() << 'daylabel' << 'monthformat' << 'monthlabel' << 'yearlabel'
28
+ end
29
+ private :__strval_optkeys
30
+
31
+ def get_string
32
+ tk_call(@path, 'get', '-string')
33
+ end
34
+ alias get get_string
35
+
36
+ def get_clicks
37
+ number(tk_call(@path, 'get', '-clicks'))
38
+ end
39
+
40
+ def show(date=None)
41
+ tk_call(@path, 'show', date)
42
+ self
43
+ end
44
+ def show_now
45
+ tk_call(@path, 'show', 'now')
46
+ self
47
+ end
48
+ end
@@ -0,0 +1,30 @@
1
+ #
2
+ # tkextlib/iwidgets/spinint.rb
3
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4
+ #
5
+
6
+ require 'tk'
7
+ require 'tkextlib/iwidgets.rb'
8
+
9
+ module Tk
10
+ module Iwidgets
11
+ class Spinint < Tk::Iwidgets::Spinner
12
+ end
13
+ end
14
+ end
15
+
16
+ class Tk::Iwidgets::Spinint
17
+ TkCommandNames = ['::iwidgets::spinint'.freeze].freeze
18
+ WidgetClassName = 'Spinint'.freeze
19
+ WidgetClassNames[WidgetClassName] ||= self
20
+
21
+ def __boolval_optkeys
22
+ super() << 'wrap'
23
+ end
24
+ private :__boolval_optkeys
25
+
26
+ def __numlistval_optkeys
27
+ super() << 'range'
28
+ end
29
+ private :__numlistval_optkeys
30
+ end
@@ -0,0 +1,169 @@
1
+ #
2
+ # tkextlib/iwidgets/spinner.rb
3
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4
+ #
5
+
6
+ require 'tk'
7
+ require 'tkextlib/iwidgets.rb'
8
+
9
+ module Tk
10
+ module Iwidgets
11
+ class Spinner < Tk::Iwidgets::Labeledwidget
12
+ end
13
+ end
14
+ end
15
+
16
+ class Tk::Iwidgets::Spinner
17
+ TkCommandNames = ['::iwidgets::spinner'.freeze].freeze
18
+ WidgetClassName = 'Spinner'.freeze
19
+ WidgetClassNames[WidgetClassName] ||= self
20
+
21
+ ####################################
22
+
23
+ include Tk::ValidateConfigure
24
+
25
+ class EntryfieldValidate < TkValidateCommand
26
+ #class CalCmdArgs < TkUtil::CallbackSubst
27
+ class ValidateArgs < TkUtil::CallbackSubst
28
+ KEY_TBL = [
29
+ [ ?c, ?s, :char ],
30
+ [ ?P, ?s, :post ],
31
+ [ ?S, ?s, :current ],
32
+ [ ?W, ?w, :widget ],
33
+ nil
34
+ ]
35
+ PROC_TBL = [
36
+ [ ?s, TkComm.method(:string) ],
37
+ [ ?w, TkComm.method(:window) ],
38
+ nil
39
+ ]
40
+
41
+ =begin
42
+ # for Ruby m17n :: ?x --> String --> char-code ( getbyte(0) )
43
+ KEY_TBL.map!{|inf|
44
+ if inf.kind_of?(Array)
45
+ inf[0] = inf[0].getbyte(0) if inf[0].kind_of?(String)
46
+ inf[1] = inf[1].getbyte(0) if inf[1].kind_of?(String)
47
+ end
48
+ inf
49
+ }
50
+
51
+ PROC_TBL.map!{|inf|
52
+ if inf.kind_of?(Array)
53
+ inf[0] = inf[0].getbyte(0) if inf[0].kind_of?(String)
54
+ end
55
+ inf
56
+ }
57
+ =end
58
+
59
+ _setup_subst_table(KEY_TBL, PROC_TBL);
60
+ end
61
+
62
+ def self._config_keys
63
+ ['validate', 'invalid']
64
+ end
65
+ end
66
+
67
+ def __validation_class_list
68
+ super() << EntryfieldValidate
69
+ end
70
+
71
+ Tk::ValidateConfigure.__def_validcmd(binding, EntryfieldValidate)
72
+
73
+ ####################################
74
+
75
+ def up
76
+ tk_call_without_enc(@path, 'up')
77
+ self
78
+ end
79
+
80
+ def down
81
+ tk_call_without_enc(@path, 'down')
82
+ self
83
+ end
84
+
85
+ def clear
86
+ tk_call_without_enc(@path, 'clear')
87
+ self
88
+ end
89
+
90
+ def delete(first, last=None)
91
+ tk_send_without_enc('delete', first, last)
92
+ self
93
+ end
94
+
95
+ def value
96
+ _fromUTF8(tk_send_without_enc('get'))
97
+ end
98
+ def value= (val)
99
+ tk_send_without_enc('delete', 0, 'end')
100
+ tk_send_without_enc('insert', 0, _get_eval_enc_str(val))
101
+ val
102
+ end
103
+ alias get value
104
+ alias set value=
105
+
106
+ def cursor=(index)
107
+ tk_send_without_enc('icursor', index)
108
+ #self
109
+ index
110
+ end
111
+ alias icursor cursor=
112
+
113
+ def index(idx)
114
+ number(tk_send_without_enc('index', idx))
115
+ end
116
+
117
+ def insert(pos,text)
118
+ tk_send_without_enc('insert', pos, _get_eval_enc_str(text))
119
+ self
120
+ end
121
+
122
+ def mark(pos)
123
+ tk_send_without_enc('scan', 'mark', pos)
124
+ self
125
+ end
126
+ def dragto(pos)
127
+ tk_send_without_enc('scan', 'dragto', pos)
128
+ self
129
+ end
130
+ def selection_adjust(index)
131
+ tk_send_without_enc('selection', 'adjust', index)
132
+ self
133
+ end
134
+ def selection_clear
135
+ tk_send_without_enc('selection', 'clear')
136
+ self
137
+ end
138
+ def selection_from(index)
139
+ tk_send_without_enc('selection', 'from', index)
140
+ self
141
+ end
142
+ def selection_present()
143
+ bool(tk_send_without_enc('selection', 'present'))
144
+ end
145
+ def selection_range(s, e)
146
+ tk_send_without_enc('selection', 'range', s, e)
147
+ self
148
+ end
149
+ def selection_to(index)
150
+ tk_send_without_enc('selection', 'to', index)
151
+ self
152
+ end
153
+
154
+ # based on tk/scrollable.rb
155
+ def xview(*index)
156
+ if index.size == 0
157
+ list(tk_send_without_enc('xview'))
158
+ else
159
+ tk_send_without_enc('xview', *index)
160
+ self
161
+ end
162
+ end
163
+ def xview_moveto(*index)
164
+ xview('moveto', *index)
165
+ end
166
+ def xview_scroll(*index)
167
+ xview('scroll', *index)
168
+ end
169
+ end