tk_as_gem 0.0.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 (345) hide show
  1. data/README +22 -0
  2. data/Rakefile +11 -0
  3. data/VERSION +1 -0
  4. data/ext/ChangeLog.tkextlib +935 -0
  5. data/ext/MANUAL_tcltklib.eng +469 -0
  6. data/ext/MANUAL_tcltklib.eucj +579 -0
  7. data/ext/README.1st +19 -0
  8. data/ext/README.ActiveTcl +49 -0
  9. data/ext/README.fork +34 -0
  10. data/ext/README.macosx-aqua +67 -0
  11. data/ext/README.tcltklib +85 -0
  12. data/ext/depend +2 -0
  13. data/ext/extconf.rb +451 -0
  14. data/ext/lib/README +30 -0
  15. data/ext/lib/multi-tk.rb +3491 -0
  16. data/ext/lib/remote-tk.rb +530 -0
  17. data/ext/lib/tcltk.rb +367 -0
  18. data/ext/lib/tk.rb +5584 -0
  19. data/ext/lib/tk/after.rb +6 -0
  20. data/ext/lib/tk/autoload.rb +414 -0
  21. data/ext/lib/tk/bgerror.rb +29 -0
  22. data/ext/lib/tk/bindtag.rb +138 -0
  23. data/ext/lib/tk/button.rb +30 -0
  24. data/ext/lib/tk/canvas.rb +789 -0
  25. data/ext/lib/tk/canvastag.rb +434 -0
  26. data/ext/lib/tk/checkbutton.rb +30 -0
  27. data/ext/lib/tk/clipboard.rb +75 -0
  28. data/ext/lib/tk/clock.rb +71 -0
  29. data/ext/lib/tk/composite.rb +458 -0
  30. data/ext/lib/tk/console.rb +52 -0
  31. data/ext/lib/tk/dialog.rb +326 -0
  32. data/ext/lib/tk/encodedstr.rb +187 -0
  33. data/ext/lib/tk/entry.rb +119 -0
  34. data/ext/lib/tk/event.rb +542 -0
  35. data/ext/lib/tk/font.rb +2344 -0
  36. data/ext/lib/tk/frame.rb +131 -0
  37. data/ext/lib/tk/grid.rb +279 -0
  38. data/ext/lib/tk/image.rb +275 -0
  39. data/ext/lib/tk/itemconfig.rb +1215 -0
  40. data/ext/lib/tk/itemfont.rb +327 -0
  41. data/ext/lib/tk/kinput.rb +71 -0
  42. data/ext/lib/tk/label.rb +21 -0
  43. data/ext/lib/tk/labelframe.rb +29 -0
  44. data/ext/lib/tk/listbox.rb +282 -0
  45. data/ext/lib/tk/macpkg.rb +78 -0
  46. data/ext/lib/tk/menu.rb +681 -0
  47. data/ext/lib/tk/menubar.rb +131 -0
  48. data/ext/lib/tk/menuspec.rb +275 -0
  49. data/ext/lib/tk/message.rb +22 -0
  50. data/ext/lib/tk/mngfocus.rb +33 -0
  51. data/ext/lib/tk/msgcat.rb +296 -0
  52. data/ext/lib/tk/namespace.rb +551 -0
  53. data/ext/lib/tk/optiondb.rb +377 -0
  54. data/ext/lib/tk/optionobj.rb +212 -0
  55. data/ext/lib/tk/pack.rb +107 -0
  56. data/ext/lib/tk/package.rb +143 -0
  57. data/ext/lib/tk/palette.rb +55 -0
  58. data/ext/lib/tk/panedwindow.rb +258 -0
  59. data/ext/lib/tk/place.rb +128 -0
  60. data/ext/lib/tk/radiobutton.rb +71 -0
  61. data/ext/lib/tk/root.rb +95 -0
  62. data/ext/lib/tk/scale.rb +111 -0
  63. data/ext/lib/tk/scrollable.rb +82 -0
  64. data/ext/lib/tk/scrollbar.rb +177 -0
  65. data/ext/lib/tk/scrollbox.rb +39 -0
  66. data/ext/lib/tk/selection.rb +86 -0
  67. data/ext/lib/tk/spinbox.rb +119 -0
  68. data/ext/lib/tk/tagfont.rb +43 -0
  69. data/ext/lib/tk/text.rb +1596 -0
  70. data/ext/lib/tk/textimage.rb +88 -0
  71. data/ext/lib/tk/textmark.rb +204 -0
  72. data/ext/lib/tk/texttag.rb +318 -0
  73. data/ext/lib/tk/textwindow.rb +154 -0
  74. data/ext/lib/tk/timer.rb +669 -0
  75. data/ext/lib/tk/toplevel.rb +262 -0
  76. data/ext/lib/tk/ttk_selector.rb +76 -0
  77. data/ext/lib/tk/txtwin_abst.rb +39 -0
  78. data/ext/lib/tk/validation.rb +397 -0
  79. data/ext/lib/tk/variable.rb +1765 -0
  80. data/ext/lib/tk/virtevent.rb +139 -0
  81. data/ext/lib/tk/winfo.rb +392 -0
  82. data/ext/lib/tk/winpkg.rb +153 -0
  83. data/ext/lib/tk/wm.rb +552 -0
  84. data/ext/lib/tk/xim.rb +122 -0
  85. data/ext/lib/tkafter.rb +4 -0
  86. data/ext/lib/tkbgerror.rb +4 -0
  87. data/ext/lib/tkcanvas.rb +4 -0
  88. data/ext/lib/tkclass.rb +47 -0
  89. data/ext/lib/tkconsole.rb +4 -0
  90. data/ext/lib/tkdialog.rb +4 -0
  91. data/ext/lib/tkentry.rb +4 -0
  92. data/ext/lib/tkextlib/ICONS.rb +13 -0
  93. data/ext/lib/tkextlib/ICONS/icons.rb +129 -0
  94. data/ext/lib/tkextlib/ICONS/setup.rb +8 -0
  95. data/ext/lib/tkextlib/SUPPORT_STATUS +196 -0
  96. data/ext/lib/tkextlib/blt.rb +187 -0
  97. data/ext/lib/tkextlib/blt/barchart.rb +79 -0
  98. data/ext/lib/tkextlib/blt/bitmap.rb +112 -0
  99. data/ext/lib/tkextlib/blt/busy.rb +82 -0
  100. data/ext/lib/tkextlib/blt/component.rb +2145 -0
  101. data/ext/lib/tkextlib/blt/container.rb +28 -0
  102. data/ext/lib/tkextlib/blt/cutbuffer.rb +23 -0
  103. data/ext/lib/tkextlib/blt/dragdrop.rb +268 -0
  104. data/ext/lib/tkextlib/blt/eps.rb +32 -0
  105. data/ext/lib/tkextlib/blt/graph.rb +67 -0
  106. data/ext/lib/tkextlib/blt/htext.rb +111 -0
  107. data/ext/lib/tkextlib/blt/setup.rb +8 -0
  108. data/ext/lib/tkextlib/blt/spline.rb +23 -0
  109. data/ext/lib/tkextlib/blt/stripchart.rb +74 -0
  110. data/ext/lib/tkextlib/blt/table.rb +399 -0
  111. data/ext/lib/tkextlib/blt/tabnotebook.rb +110 -0
  112. data/ext/lib/tkextlib/blt/tabset.rb +500 -0
  113. data/ext/lib/tkextlib/blt/ted.rb +65 -0
  114. data/ext/lib/tkextlib/blt/tile.rb +21 -0
  115. data/ext/lib/tkextlib/blt/tile/button.rb +16 -0
  116. data/ext/lib/tkextlib/blt/tile/checkbutton.rb +17 -0
  117. data/ext/lib/tkextlib/blt/tile/frame.rb +16 -0
  118. data/ext/lib/tkextlib/blt/tile/label.rb +16 -0
  119. data/ext/lib/tkextlib/blt/tile/radiobutton.rb +17 -0
  120. data/ext/lib/tkextlib/blt/tile/scrollbar.rb +16 -0
  121. data/ext/lib/tkextlib/blt/tile/toplevel.rb +16 -0
  122. data/ext/lib/tkextlib/blt/tree.rb +1058 -0
  123. data/ext/lib/tkextlib/blt/treeview.rb +1272 -0
  124. data/ext/lib/tkextlib/blt/unix_dnd.rb +135 -0
  125. data/ext/lib/tkextlib/blt/vector.rb +256 -0
  126. data/ext/lib/tkextlib/blt/watch.rb +175 -0
  127. data/ext/lib/tkextlib/blt/win_printer.rb +61 -0
  128. data/ext/lib/tkextlib/blt/winop.rb +107 -0
  129. data/ext/lib/tkextlib/bwidget.rb +151 -0
  130. data/ext/lib/tkextlib/bwidget/arrowbutton.rb +21 -0
  131. data/ext/lib/tkextlib/bwidget/bitmap.rb +21 -0
  132. data/ext/lib/tkextlib/bwidget/button.rb +31 -0
  133. data/ext/lib/tkextlib/bwidget/buttonbox.rb +90 -0
  134. data/ext/lib/tkextlib/bwidget/combobox.rb +51 -0
  135. data/ext/lib/tkextlib/bwidget/dialog.rb +182 -0
  136. data/ext/lib/tkextlib/bwidget/dragsite.rb +31 -0
  137. data/ext/lib/tkextlib/bwidget/dropsite.rb +39 -0
  138. data/ext/lib/tkextlib/bwidget/dynamichelp.rb +63 -0
  139. data/ext/lib/tkextlib/bwidget/entry.rb +43 -0
  140. data/ext/lib/tkextlib/bwidget/label.rb +41 -0
  141. data/ext/lib/tkextlib/bwidget/labelentry.rb +80 -0
  142. data/ext/lib/tkextlib/bwidget/labelframe.rb +52 -0
  143. data/ext/lib/tkextlib/bwidget/listbox.rb +358 -0
  144. data/ext/lib/tkextlib/bwidget/mainframe.rb +128 -0
  145. data/ext/lib/tkextlib/bwidget/messagedlg.rb +192 -0
  146. data/ext/lib/tkextlib/bwidget/notebook.rb +166 -0
  147. data/ext/lib/tkextlib/bwidget/pagesmanager.rb +73 -0
  148. data/ext/lib/tkextlib/bwidget/panedwindow.rb +37 -0
  149. data/ext/lib/tkextlib/bwidget/panelframe.rb +57 -0
  150. data/ext/lib/tkextlib/bwidget/passwddlg.rb +44 -0
  151. data/ext/lib/tkextlib/bwidget/progressbar.rb +20 -0
  152. data/ext/lib/tkextlib/bwidget/progressdlg.rb +58 -0
  153. data/ext/lib/tkextlib/bwidget/scrollableframe.rb +40 -0
  154. data/ext/lib/tkextlib/bwidget/scrolledwindow.rb +38 -0
  155. data/ext/lib/tkextlib/bwidget/scrollview.rb +25 -0
  156. data/ext/lib/tkextlib/bwidget/selectcolor.rb +73 -0
  157. data/ext/lib/tkextlib/bwidget/selectfont.rb +86 -0
  158. data/ext/lib/tkextlib/bwidget/separator.rb +20 -0
  159. data/ext/lib/tkextlib/bwidget/setup.rb +8 -0
  160. data/ext/lib/tkextlib/bwidget/spinbox.rb +98 -0
  161. data/ext/lib/tkextlib/bwidget/statusbar.rb +52 -0
  162. data/ext/lib/tkextlib/bwidget/titleframe.rb +33 -0
  163. data/ext/lib/tkextlib/bwidget/tree.rb +453 -0
  164. data/ext/lib/tkextlib/bwidget/widget.rb +129 -0
  165. data/ext/lib/tkextlib/itcl.rb +13 -0
  166. data/ext/lib/tkextlib/itcl/incr_tcl.rb +178 -0
  167. data/ext/lib/tkextlib/itcl/setup.rb +13 -0
  168. data/ext/lib/tkextlib/itk.rb +13 -0
  169. data/ext/lib/tkextlib/itk/incr_tk.rb +446 -0
  170. data/ext/lib/tkextlib/itk/setup.rb +13 -0
  171. data/ext/lib/tkextlib/iwidgets.rb +94 -0
  172. data/ext/lib/tkextlib/iwidgets/buttonbox.rb +120 -0
  173. data/ext/lib/tkextlib/iwidgets/calendar.rb +125 -0
  174. data/ext/lib/tkextlib/iwidgets/canvasprintbox.rb +53 -0
  175. data/ext/lib/tkextlib/iwidgets/canvasprintdialog.rb +38 -0
  176. data/ext/lib/tkextlib/iwidgets/checkbox.rb +129 -0
  177. data/ext/lib/tkextlib/iwidgets/combobox.rb +104 -0
  178. data/ext/lib/tkextlib/iwidgets/dateentry.rb +20 -0
  179. data/ext/lib/tkextlib/iwidgets/datefield.rb +58 -0
  180. data/ext/lib/tkextlib/iwidgets/dialog.rb +20 -0
  181. data/ext/lib/tkextlib/iwidgets/dialogshell.rb +120 -0
  182. data/ext/lib/tkextlib/iwidgets/disjointlistbox.rb +50 -0
  183. data/ext/lib/tkextlib/iwidgets/entryfield.rb +185 -0
  184. data/ext/lib/tkextlib/iwidgets/extbutton.rb +40 -0
  185. data/ext/lib/tkextlib/iwidgets/extfileselectionbox.rb +46 -0
  186. data/ext/lib/tkextlib/iwidgets/extfileselectiondialog.rb +33 -0
  187. data/ext/lib/tkextlib/iwidgets/feedback.rb +35 -0
  188. data/ext/lib/tkextlib/iwidgets/fileselectionbox.rb +46 -0
  189. data/ext/lib/tkextlib/iwidgets/fileselectiondialog.rb +33 -0
  190. data/ext/lib/tkextlib/iwidgets/finddialog.rb +42 -0
  191. data/ext/lib/tkextlib/iwidgets/hierarchy.rb +365 -0
  192. data/ext/lib/tkextlib/iwidgets/hyperhelp.rb +50 -0
  193. data/ext/lib/tkextlib/iwidgets/labeledframe.rb +39 -0
  194. data/ext/lib/tkextlib/iwidgets/labeledwidget.rb +45 -0
  195. data/ext/lib/tkextlib/iwidgets/mainwindow.rb +67 -0
  196. data/ext/lib/tkextlib/iwidgets/menubar.rb +211 -0
  197. data/ext/lib/tkextlib/iwidgets/messagebox.rb +92 -0
  198. data/ext/lib/tkextlib/iwidgets/messagedialog.rb +20 -0
  199. data/ext/lib/tkextlib/iwidgets/notebook.rb +174 -0
  200. data/ext/lib/tkextlib/iwidgets/optionmenu.rb +92 -0
  201. data/ext/lib/tkextlib/iwidgets/panedwindow.rb +133 -0
  202. data/ext/lib/tkextlib/iwidgets/promptdialog.rb +131 -0
  203. data/ext/lib/tkextlib/iwidgets/pushbutton.rb +35 -0
  204. data/ext/lib/tkextlib/iwidgets/radiobox.rb +120 -0
  205. data/ext/lib/tkextlib/iwidgets/scopedobject.rb +24 -0
  206. data/ext/lib/tkextlib/iwidgets/scrolledcanvas.rb +353 -0
  207. data/ext/lib/tkextlib/iwidgets/scrolledframe.rb +59 -0
  208. data/ext/lib/tkextlib/iwidgets/scrolledhtml.rb +58 -0
  209. data/ext/lib/tkextlib/iwidgets/scrolledlistbox.rb +207 -0
  210. data/ext/lib/tkextlib/iwidgets/scrolledtext.rb +564 -0
  211. data/ext/lib/tkextlib/iwidgets/scrolledwidget.rb +20 -0
  212. data/ext/lib/tkextlib/iwidgets/selectionbox.rb +102 -0
  213. data/ext/lib/tkextlib/iwidgets/selectiondialog.rb +92 -0
  214. data/ext/lib/tkextlib/iwidgets/setup.rb +8 -0
  215. data/ext/lib/tkextlib/iwidgets/shell.rb +38 -0
  216. data/ext/lib/tkextlib/iwidgets/spindate.rb +48 -0
  217. data/ext/lib/tkextlib/iwidgets/spinint.rb +30 -0
  218. data/ext/lib/tkextlib/iwidgets/spinner.rb +169 -0
  219. data/ext/lib/tkextlib/iwidgets/spintime.rb +48 -0
  220. data/ext/lib/tkextlib/iwidgets/tabnotebook.rb +180 -0
  221. data/ext/lib/tkextlib/iwidgets/tabset.rb +144 -0
  222. data/ext/lib/tkextlib/iwidgets/timeentry.rb +25 -0
  223. data/ext/lib/tkextlib/iwidgets/timefield.rb +58 -0
  224. data/ext/lib/tkextlib/iwidgets/toolbar.rb +112 -0
  225. data/ext/lib/tkextlib/iwidgets/watch.rb +56 -0
  226. data/ext/lib/tkextlib/pkg_checker.rb +184 -0
  227. data/ext/lib/tkextlib/setup.rb +8 -0
  228. data/ext/lib/tkextlib/tcllib.rb +90 -0
  229. data/ext/lib/tkextlib/tcllib/README +135 -0
  230. data/ext/lib/tkextlib/tcllib/autoscroll.rb +158 -0
  231. data/ext/lib/tkextlib/tcllib/ctext.rb +160 -0
  232. data/ext/lib/tkextlib/tcllib/cursor.rb +97 -0
  233. data/ext/lib/tkextlib/tcllib/datefield.rb +57 -0
  234. data/ext/lib/tkextlib/tcllib/dialog.rb +84 -0
  235. data/ext/lib/tkextlib/tcllib/getstring.rb +134 -0
  236. data/ext/lib/tkextlib/tcllib/history.rb +73 -0
  237. data/ext/lib/tkextlib/tcllib/ico.rb +116 -0
  238. data/ext/lib/tkextlib/tcllib/ip_entry.rb +66 -0
  239. data/ext/lib/tkextlib/tcllib/panelframe.rb +72 -0
  240. data/ext/lib/tkextlib/tcllib/plotchart.rb +886 -0
  241. data/ext/lib/tkextlib/tcllib/ruler.rb +65 -0
  242. data/ext/lib/tkextlib/tcllib/screenruler.rb +68 -0
  243. data/ext/lib/tkextlib/tcllib/scrollwin.rb +61 -0
  244. data/ext/lib/tkextlib/tcllib/setup.rb +8 -0
  245. data/ext/lib/tkextlib/tcllib/style.rb +61 -0
  246. data/ext/lib/tkextlib/tcllib/superframe.rb +51 -0
  247. data/ext/lib/tkextlib/tcllib/swaplist.rb +150 -0
  248. data/ext/lib/tkextlib/tcllib/tablelist.rb +27 -0
  249. data/ext/lib/tkextlib/tcllib/tablelist_core.rb +782 -0
  250. data/ext/lib/tkextlib/tcllib/tablelist_tile.rb +25 -0
  251. data/ext/lib/tkextlib/tcllib/tkpiechart.rb +314 -0
  252. data/ext/lib/tkextlib/tcllib/tooltip.rb +95 -0
  253. data/ext/lib/tkextlib/tcllib/widget.rb +48 -0
  254. data/ext/lib/tkextlib/tclx.rb +13 -0
  255. data/ext/lib/tkextlib/tclx/setup.rb +8 -0
  256. data/ext/lib/tkextlib/tclx/tclx.rb +74 -0
  257. data/ext/lib/tkextlib/tile.rb +419 -0
  258. data/ext/lib/tkextlib/tile/dialog.rb +96 -0
  259. data/ext/lib/tkextlib/tile/setup.rb +8 -0
  260. data/ext/lib/tkextlib/tile/sizegrip.rb +29 -0
  261. data/ext/lib/tkextlib/tile/style.rb +316 -0
  262. data/ext/lib/tkextlib/tile/tbutton.rb +33 -0
  263. data/ext/lib/tkextlib/tile/tcheckbutton.rb +36 -0
  264. data/ext/lib/tkextlib/tile/tcombobox.rb +54 -0
  265. data/ext/lib/tkextlib/tile/tentry.rb +48 -0
  266. data/ext/lib/tkextlib/tile/tframe.rb +33 -0
  267. data/ext/lib/tkextlib/tile/tlabel.rb +33 -0
  268. data/ext/lib/tkextlib/tile/tlabelframe.rb +36 -0
  269. data/ext/lib/tkextlib/tile/tmenubutton.rb +36 -0
  270. data/ext/lib/tkextlib/tile/tnotebook.rb +139 -0
  271. data/ext/lib/tkextlib/tile/tpaned.rb +231 -0
  272. data/ext/lib/tkextlib/tile/tprogressbar.rb +56 -0
  273. data/ext/lib/tkextlib/tile/tradiobutton.rb +36 -0
  274. data/ext/lib/tkextlib/tile/treeview.rb +1239 -0
  275. data/ext/lib/tkextlib/tile/tscale.rb +53 -0
  276. data/ext/lib/tkextlib/tile/tscrollbar.rb +54 -0
  277. data/ext/lib/tkextlib/tile/tseparator.rb +33 -0
  278. data/ext/lib/tkextlib/tile/tsquare.rb +30 -0
  279. data/ext/lib/tkextlib/tkDND.rb +18 -0
  280. data/ext/lib/tkextlib/tkDND/setup.rb +8 -0
  281. data/ext/lib/tkextlib/tkDND/shape.rb +125 -0
  282. data/ext/lib/tkextlib/tkDND/tkdnd.rb +182 -0
  283. data/ext/lib/tkextlib/tkHTML.rb +13 -0
  284. data/ext/lib/tkextlib/tkHTML/htmlwidget.rb +453 -0
  285. data/ext/lib/tkextlib/tkHTML/setup.rb +8 -0
  286. data/ext/lib/tkextlib/tkimg.rb +36 -0
  287. data/ext/lib/tkextlib/tkimg/README +26 -0
  288. data/ext/lib/tkextlib/tkimg/bmp.rb +33 -0
  289. data/ext/lib/tkextlib/tkimg/gif.rb +33 -0
  290. data/ext/lib/tkextlib/tkimg/ico.rb +33 -0
  291. data/ext/lib/tkextlib/tkimg/jpeg.rb +33 -0
  292. data/ext/lib/tkextlib/tkimg/pcx.rb +33 -0
  293. data/ext/lib/tkextlib/tkimg/pixmap.rb +44 -0
  294. data/ext/lib/tkextlib/tkimg/png.rb +33 -0
  295. data/ext/lib/tkextlib/tkimg/ppm.rb +33 -0
  296. data/ext/lib/tkextlib/tkimg/ps.rb +33 -0
  297. data/ext/lib/tkextlib/tkimg/setup.rb +8 -0
  298. data/ext/lib/tkextlib/tkimg/sgi.rb +33 -0
  299. data/ext/lib/tkextlib/tkimg/sun.rb +33 -0
  300. data/ext/lib/tkextlib/tkimg/tga.rb +33 -0
  301. data/ext/lib/tkextlib/tkimg/tiff.rb +33 -0
  302. data/ext/lib/tkextlib/tkimg/window.rb +33 -0
  303. data/ext/lib/tkextlib/tkimg/xbm.rb +33 -0
  304. data/ext/lib/tkextlib/tkimg/xpm.rb +33 -0
  305. data/ext/lib/tkextlib/tktable.rb +14 -0
  306. data/ext/lib/tkextlib/tktable/setup.rb +8 -0
  307. data/ext/lib/tkextlib/tktable/tktable.rb +957 -0
  308. data/ext/lib/tkextlib/tktrans.rb +14 -0
  309. data/ext/lib/tkextlib/tktrans/setup.rb +8 -0
  310. data/ext/lib/tkextlib/tktrans/tktrans.rb +64 -0
  311. data/ext/lib/tkextlib/treectrl.rb +13 -0
  312. data/ext/lib/tkextlib/treectrl/setup.rb +8 -0
  313. data/ext/lib/tkextlib/treectrl/tktreectrl.rb +2461 -0
  314. data/ext/lib/tkextlib/trofs.rb +13 -0
  315. data/ext/lib/tkextlib/trofs/setup.rb +8 -0
  316. data/ext/lib/tkextlib/trofs/trofs.rb +51 -0
  317. data/ext/lib/tkextlib/version.rb +6 -0
  318. data/ext/lib/tkextlib/vu.rb +48 -0
  319. data/ext/lib/tkextlib/vu/bargraph.rb +61 -0
  320. data/ext/lib/tkextlib/vu/charts.rb +53 -0
  321. data/ext/lib/tkextlib/vu/dial.rb +102 -0
  322. data/ext/lib/tkextlib/vu/pie.rb +282 -0
  323. data/ext/lib/tkextlib/vu/setup.rb +8 -0
  324. data/ext/lib/tkextlib/vu/spinbox.rb +22 -0
  325. data/ext/lib/tkextlib/winico.rb +14 -0
  326. data/ext/lib/tkextlib/winico/setup.rb +8 -0
  327. data/ext/lib/tkextlib/winico/winico.rb +224 -0
  328. data/ext/lib/tkfont.rb +4 -0
  329. data/ext/lib/tkmacpkg.rb +4 -0
  330. data/ext/lib/tkmenubar.rb +4 -0
  331. data/ext/lib/tkmngfocus.rb +4 -0
  332. data/ext/lib/tkpalette.rb +4 -0
  333. data/ext/lib/tkscrollbox.rb +4 -0
  334. data/ext/lib/tktext.rb +4 -0
  335. data/ext/lib/tkvirtevent.rb +4 -0
  336. data/ext/lib/tkwinpkg.rb +4 -0
  337. data/ext/old-README.tcltklib.eucj +159 -0
  338. data/ext/stubs.c +531 -0
  339. data/ext/stubs.h +33 -0
  340. data/ext/tcltklib.c +10155 -0
  341. data/ext/tkutil/.cvsignore +3 -0
  342. data/ext/tkutil/depend +1 -0
  343. data/ext/tkutil/extconf.rb +14 -0
  344. data/ext/tkutil/tkutil.c +1789 -0
  345. metadata +418 -0
@@ -0,0 +1,434 @@
1
+ #
2
+ # tk/canvastag.rb - methods for treating canvas tags
3
+ #
4
+ require 'tk'
5
+ require 'tk/tagfont'
6
+
7
+ module TkcTagAccess
8
+ include TkComm
9
+ include TkTreatTagFont
10
+ end
11
+
12
+ require 'tk/canvas'
13
+
14
+ module TkcTagAccess
15
+ def addtag(tag)
16
+ @c.addtag(tag, 'withtag', @id)
17
+ self
18
+ end
19
+
20
+ def bbox
21
+ @c.bbox(@id)
22
+ end
23
+
24
+ #def bind(seq, cmd=Proc.new, *args)
25
+ # @c.itembind(@id, seq, cmd, *args)
26
+ # self
27
+ #end
28
+ def bind(seq, *args)
29
+ # if args[0].kind_of?(Proc) || args[0].kind_of?(Method)
30
+ if TkComm._callback_entry?(args[0]) || !block_given?
31
+ cmd = args.shift
32
+ else
33
+ cmd = Proc.new
34
+ end
35
+ @c.itembind(@id, seq, cmd, *args)
36
+ self
37
+ end
38
+
39
+ #def bind_append(seq, cmd=Proc.new, *args)
40
+ # @c.itembind_append(@id, seq, cmd, *args)
41
+ # self
42
+ #end
43
+ def bind_append(seq, *args)
44
+ # if args[0].kind_of?(Proc) || args[0].kind_of?(Method)
45
+ if TkComm._callback_entry?(args[0]) || !block_given?
46
+ cmd = args.shift
47
+ else
48
+ cmd = Proc.new
49
+ end
50
+ @c.itembind_append(@id, seq, cmd, *args)
51
+ self
52
+ end
53
+
54
+ def bind_remove(seq)
55
+ @c.itembind_remove(@id, seq)
56
+ self
57
+ end
58
+
59
+ def bindinfo(seq=nil)
60
+ @c.itembindinfo(@id, seq)
61
+ end
62
+
63
+ def cget(option)
64
+ @c.itemcget(@id, option)
65
+ end
66
+ def cget_strict(option)
67
+ @c.itemcget_strict(@id, option)
68
+ end
69
+
70
+ def configure(key, value=None)
71
+ @c.itemconfigure(@id, key, value)
72
+ self
73
+ end
74
+ # def configure(keys)
75
+ # @c.itemconfigure @id, keys
76
+ # end
77
+
78
+ def configinfo(key=nil)
79
+ @c.itemconfiginfo(@id, key)
80
+ end
81
+
82
+ def current_configinfo(key=nil)
83
+ @c.current_itemconfiginfo(@id, key)
84
+ end
85
+
86
+ def coords(*args)
87
+ @c.coords(@id, *args)
88
+ end
89
+
90
+ def dchars(first, last=None)
91
+ @c.dchars(@id, first, last)
92
+ self
93
+ end
94
+
95
+ def dtag(tag_to_del=None)
96
+ @c.dtag(@id, tag_to_del)
97
+ self
98
+ end
99
+ alias deltag dtag
100
+
101
+ def find
102
+ @c.find('withtag', @id)
103
+ end
104
+ alias list find
105
+
106
+ def focus
107
+ @c.itemfocus(@id)
108
+ end
109
+
110
+ def gettags
111
+ @c.gettags(@id)
112
+ end
113
+
114
+ def icursor(index)
115
+ @c.icursor(@id, index)
116
+ self
117
+ end
118
+
119
+ def index(idx)
120
+ @c.index(@id, idx)
121
+ end
122
+
123
+ def insert(beforethis, string)
124
+ @c.insert(@id, beforethis, string)
125
+ self
126
+ end
127
+
128
+ def lower(belowthis=None)
129
+ @c.lower(@id, belowthis)
130
+ self
131
+ end
132
+
133
+ def move(xamount, yamount)
134
+ @c.move(@id, xamount, yamount)
135
+ self
136
+ end
137
+
138
+ def raise(abovethis=None)
139
+ @c.raise(@id, abovethis)
140
+ self
141
+ end
142
+
143
+ def scale(xorigin, yorigin, xscale, yscale)
144
+ @c.scale(@id, xorigin, yorigin, xscale, yscale)
145
+ self
146
+ end
147
+
148
+ def select_adjust(index)
149
+ @c.select('adjust', @id, index)
150
+ self
151
+ end
152
+ def select_from(index)
153
+ @c.select('from', @id, index)
154
+ self
155
+ end
156
+ def select_to(index)
157
+ @c.select('to', @id, index)
158
+ self
159
+ end
160
+
161
+ def itemtype
162
+ @c.itemtype(@id)
163
+ end
164
+
165
+ # Following operators support logical expressions of canvas tags
166
+ # (for Tk8.3+).
167
+ # If tag1.path is 't1' and tag2.path is 't2', then
168
+ # ltag = tag1 & tag2; ltag.path => "(t1)&&(t2)"
169
+ # ltag = tag1 | tag2; ltag.path => "(t1)||(t2)"
170
+ # ltag = tag1 ^ tag2; ltag.path => "(t1)^(t2)"
171
+ # ltag = - tag1; ltag.path => "!(t1)"
172
+ def & (tag)
173
+ if tag.kind_of? TkObject
174
+ TkcTagString.new(@c, '(' + @id + ')&&(' + tag.path + ')')
175
+ else
176
+ TkcTagString.new(@c, '(' + @id + ')&&(' + tag.to_s + ')')
177
+ end
178
+ end
179
+
180
+ def | (tag)
181
+ if tag.kind_of? TkObject
182
+ TkcTagString.new(@c, '(' + @id + ')||(' + tag.path + ')')
183
+ else
184
+ TkcTagString.new(@c, '(' + @id + ')||(' + tag.to_s + ')')
185
+ end
186
+ end
187
+
188
+ def ^ (tag)
189
+ if tag.kind_of? TkObject
190
+ TkcTagString.new(@c, '(' + @id + ')^(' + tag.path + ')')
191
+ else
192
+ TkcTagString.new(@c, '(' + @id + ')^(' + tag.to_s + ')')
193
+ end
194
+ end
195
+
196
+ def -@
197
+ TkcTagString.new(@c, '!(' + @id + ')')
198
+ end
199
+ end
200
+
201
+ class TkcTag<TkObject
202
+ include TkcTagAccess
203
+
204
+ CTagID_TBL = TkCore::INTERP.create_table
205
+
206
+ (Tk_CanvasTag_ID = ['ctag'.freeze, '00000'.taint]).instance_eval{
207
+ @mutex = Mutex.new
208
+ def mutex; @mutex; end
209
+ freeze
210
+ }
211
+
212
+ TkCore::INTERP.init_ip_env{
213
+ CTagID_TBL.mutex.synchronize{ CTagID_TBL.clear }
214
+ }
215
+
216
+ def TkcTag.id2obj(canvas, id)
217
+ cpath = canvas.path
218
+ CTagID_TBL.mutex.synchronize{
219
+ if CTagID_TBL[cpath]
220
+ CTagID_TBL[cpath][id]? CTagID_TBL[cpath][id]: id
221
+ else
222
+ id
223
+ end
224
+ }
225
+ end
226
+
227
+ def initialize(parent, mode=nil, *args)
228
+ #unless parent.kind_of?(TkCanvas)
229
+ # fail ArgumentError, "expect TkCanvas for 1st argument"
230
+ #end
231
+ @c = parent
232
+ @cpath = parent.path
233
+ Tk_CanvasTag_ID.mutex.synchronize{
234
+ # @path = @id = Tk_CanvasTag_ID.join('')
235
+ @path = @id = Tk_CanvasTag_ID.join(TkCore::INTERP._ip_id_)
236
+ Tk_CanvasTag_ID[1].succ!
237
+ }
238
+ CTagID_TBL.mutex.synchronize{
239
+ CTagID_TBL[@cpath] = {} unless CTagID_TBL[@cpath]
240
+ CTagID_TBL[@cpath][@id] = self
241
+ }
242
+ if mode
243
+ tk_call_without_enc(@c.path, "addtag", @id, mode, *args)
244
+ end
245
+ end
246
+ def id
247
+ @id
248
+ end
249
+
250
+ def exist?
251
+ if @c.find_withtag(@id)
252
+ true
253
+ else
254
+ false
255
+ end
256
+ end
257
+
258
+ def delete
259
+ @c.delete @id
260
+ CTagID_TBL.mutex.synchronize{
261
+ CTagID_TBL[@cpath].delete(@id) if CTagID_TBL[@cpath]
262
+ }
263
+ self
264
+ end
265
+ alias remove delete
266
+ alias destroy delete
267
+
268
+ def set_to_above(target)
269
+ @c.addtag_above(@id, target)
270
+ self
271
+ end
272
+ alias above set_to_above
273
+
274
+ def set_to_all
275
+ @c.addtag_all(@id)
276
+ self
277
+ end
278
+ alias all set_to_all
279
+
280
+ def set_to_below(target)
281
+ @c.addtag_below(@id, target)
282
+ self
283
+ end
284
+ alias below set_to_below
285
+
286
+ def set_to_closest(x, y, halo=None, start=None)
287
+ @c.addtag_closest(@id, x, y, halo, start)
288
+ self
289
+ end
290
+ alias closest set_to_closest
291
+
292
+ def set_to_enclosed(x1, y1, x2, y2)
293
+ @c.addtag_enclosed(@id, x1, y1, x2, y2)
294
+ self
295
+ end
296
+ alias enclosed set_to_enclosed
297
+
298
+ def set_to_overlapping(x1, y1, x2, y2)
299
+ @c.addtag_overlapping(@id, x1, y1, x2, y2)
300
+ self
301
+ end
302
+ alias overlapping set_to_overlapping
303
+
304
+ def set_to_withtag(target)
305
+ @c.addtag_withtag(@id, target)
306
+ self
307
+ end
308
+ alias withtag set_to_withtag
309
+ end
310
+
311
+ class TkcTagString<TkcTag
312
+ def self.new(parent, name, mode=nil, *args)
313
+ obj = nil
314
+ CTagID_TBL.mutex.synchronize{
315
+ if CTagID_TBL[parent.path] && CTagID_TBL[parent.path][name]
316
+ obj = CTagID_TBL[parent.path][name]
317
+ else
318
+ # super(parent, name, *args)
319
+ (obj = self.allocate).instance_eval{
320
+ @c = parent
321
+ @cpath = parent.path
322
+ @path = @id = name
323
+ CTagID_TBL[@cpath] = {} unless CTagID_TBL[@cpath]
324
+ CTagID_TBL[@cpath][@id] = self
325
+ }
326
+ end
327
+ }
328
+ if obj && mode
329
+ tk_call_without_enc(@c.path, "addtag", @id, mode, *args)
330
+ end
331
+ obj
332
+ end
333
+
334
+ def initialize(parent, name, mode=nil, *args)
335
+ # dummy:: not called by 'new' method
336
+
337
+ #unless parent.kind_of?(TkCanvas)
338
+ # fail ArgumentError, "expect TkCanvas for 1st argument"
339
+ #end
340
+ @c = parent
341
+ @cpath = parent.path
342
+ @path = @id = name
343
+
344
+ if mode
345
+ tk_call_without_enc(@c.path, "addtag", @id, mode, *args)
346
+ end
347
+ end
348
+ end
349
+ TkcNamedTag = TkcTagString
350
+
351
+ class TkcTagAll<TkcTagString
352
+ def self.new(parent)
353
+ super(parent, 'all')
354
+ end
355
+ =begin
356
+ def initialize(parent)
357
+ #unless parent.kind_of?(TkCanvas)
358
+ # fail ArgumentError, "expect TkCanvas for 1st argument"
359
+ #end
360
+ @c = parent
361
+ @cpath = parent.path
362
+ @path = @id = 'all'
363
+ CTagID_TBL.mutex.synchronize{
364
+ CTagID_TBL[@cpath] = {} unless CTagID_TBL[@cpath]
365
+ CTagID_TBL[@cpath][@id] = self
366
+ }
367
+ end
368
+ =end
369
+ end
370
+
371
+ class TkcTagCurrent<TkcTagString
372
+ def self.new(parent)
373
+ super(parent, 'current')
374
+ end
375
+ =begin
376
+ def initialize(parent)
377
+ #unless parent.kind_of?(TkCanvas)
378
+ # fail ArgumentError, "expect TkCanvas for 1st argument"
379
+ #end
380
+ @c = parent
381
+ @cpath = parent.path
382
+ @path = @id = 'current'
383
+ CTagID_TBL.mutex.synchronize{
384
+ CTagID_TBL[@cpath] = {} unless CTagID_TBL[@cpath]
385
+ CTagID_TBL[@cpath][@id] = self
386
+ }
387
+ end
388
+ =end
389
+ end
390
+
391
+ class TkcGroup<TkcTag
392
+ (Tk_cGroup_ID = ['tkcg'.freeze, '00000'.taint]).instance_eval{
393
+ @mutex = Mutex.new
394
+ def mutex; @mutex; end
395
+ freeze
396
+ }
397
+
398
+ #def create_self(parent, *args)
399
+ def initialize(parent, *args)
400
+ #unless parent.kind_of?(TkCanvas)
401
+ # fail ArgumentError, "expect TkCanvas for 1st argument"
402
+ #end
403
+ @c = parent
404
+ @cpath = parent.path
405
+ Tk_cGroup_ID.mutex.synchronize{
406
+ # @path = @id = Tk_cGroup_ID.join('')
407
+ @path = @id = Tk_cGroup_ID.join(TkCore::INTERP._ip_id_)
408
+ Tk_cGroup_ID[1].succ!
409
+ }
410
+ CTagID_TBL.mutex.synchronize{
411
+ CTagID_TBL[@cpath] = {} unless CTagID_TBL[@cpath]
412
+ CTagID_TBL[@cpath][@id] = self
413
+ }
414
+ include(*args) if args != []
415
+ end
416
+ #private :create_self
417
+
418
+ def include(*tags)
419
+ for i in tags
420
+ #i.addtag(@id)
421
+ @c.addtag_withtag(@id, i)
422
+ end
423
+ self
424
+ end
425
+ alias add include
426
+
427
+ def exclude(*tags)
428
+ for i in tags
429
+ #i.dtag(@id)
430
+ @c.dtag(i, @id)
431
+ end
432
+ self
433
+ end
434
+ end
@@ -0,0 +1,30 @@
1
+ #
2
+ # tk/checkbutton.rb : treat checkbutton widget
3
+ #
4
+ require 'tk'
5
+ require 'tk/radiobutton'
6
+
7
+ class Tk::CheckButton<Tk::RadioButton
8
+ TkCommandNames = ['checkbutton'.freeze].freeze
9
+ WidgetClassName = 'Checkbutton'.freeze
10
+ WidgetClassNames[WidgetClassName] = self
11
+ #def create_self(keys)
12
+ # if keys and keys != None
13
+ # tk_call_without_enc('checkbutton', @path, *hash_kv(keys, true))
14
+ # else
15
+ # tk_call_without_enc('checkbutton', @path)
16
+ # end
17
+ #end
18
+ #private :create_self
19
+
20
+ def toggle
21
+ tk_send_without_enc('toggle')
22
+ self
23
+ end
24
+ end
25
+
26
+ Tk::Checkbutton = Tk::CheckButton
27
+ #TkCheckButton = Tk::CheckButton unless Object.const_defined? :TkCheckButton
28
+ #TkCheckbutton = Tk::Checkbutton unless Object.const_defined? :TkCheckbutton
29
+ Tk.__set_toplevel_aliases__(:Tk, Tk::CheckButton,
30
+ :TkCheckButton, :TkCheckbutton)