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,53 @@
1
+ #
2
+ # tscale & tprogress widget
3
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4
+ #
5
+ require 'tk'
6
+ require 'tkextlib/tile.rb'
7
+
8
+ module Tk
9
+ module Tile
10
+ class TScale < Tk::Scale
11
+ end
12
+ Scale = TScale
13
+
14
+ class TProgress < TScale
15
+ end
16
+ Progress = TProgress
17
+ end
18
+ end
19
+
20
+ Tk.__set_toplevel_aliases__(:Ttk, Tk::Tile::Scale, :TkScale)
21
+
22
+
23
+ class Tk::Tile::TScale < Tk::Scale
24
+ include Tk::Tile::TileWidget
25
+
26
+ if Tk::Tile::USE_TTK_NAMESPACE
27
+ TkCommandNames = ['::ttk::scale'.freeze].freeze
28
+ else
29
+ TkCommandNames = ['::tscale'.freeze].freeze
30
+ end
31
+ WidgetClassName = 'TScale'.freeze
32
+ WidgetClassNames[WidgetClassName] = self
33
+
34
+ def self.style(*args)
35
+ [self::WidgetClassName, *(args.map!{|a| _get_eval_string(a)})].join('.')
36
+ end
37
+ end
38
+
39
+ class Tk::Tile::TProgress < Tk::Tile::TScale
40
+ include Tk::Tile::TileWidget
41
+
42
+ if Tk::Tile::USE_TTK_NAMESPACE
43
+ TkCommandNames = ['::ttk::progress'.freeze].freeze
44
+ else
45
+ TkCommandNames = ['::tprogress'.freeze].freeze
46
+ end
47
+ WidgetClassName = 'TProgress'.freeze
48
+ WidgetClassNames[WidgetClassName] = self
49
+
50
+ def self.style(*args)
51
+ [self::WidgetClassName, *(args.map!{|a| _get_eval_string(a)})].join('.')
52
+ end
53
+ end
@@ -0,0 +1,54 @@
1
+ #
2
+ # tscrollbar widget
3
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4
+ #
5
+ require 'tk'
6
+ require 'tkextlib/tile.rb'
7
+
8
+ module Tk
9
+ module Tile
10
+ class TScrollbar < Tk::Scrollbar
11
+ end
12
+ Scrollbar = TScrollbar
13
+ end
14
+ end
15
+
16
+ Tk.__set_toplevel_aliases__(:Ttk, Tk::Tile::Scrollbar, :TkScrollbar)
17
+
18
+
19
+ class Tk::Tile::TScrollbar < Tk::Scrollbar
20
+ include Tk::Tile::TileWidget
21
+
22
+ if Tk::Tile::USE_TTK_NAMESPACE
23
+ TkCommandNames = ['::ttk::scrollbar'.freeze].freeze
24
+ else
25
+ TkCommandNames = ['::tscrollbar'.freeze].freeze
26
+ end
27
+ WidgetClassName = 'TScrollbar'.freeze
28
+ WidgetClassNames[WidgetClassName] = self
29
+
30
+ def self.style(*args)
31
+ [self::WidgetClassName, *(args.map!{|a| _get_eval_string(a)})].join('.')
32
+ end
33
+ end
34
+
35
+ class Tk::Tile::XScrollbar < Tk::Tile::TScrollbar
36
+ def create_self(keys)
37
+ keys = {} unless keys
38
+ keys['orient'] = 'horizontal'
39
+ super(keys)
40
+ end
41
+ private :create_self
42
+ end
43
+
44
+ class Tk::Tile::YScrollbar < Tk::Tile::TScrollbar
45
+ def create_self(keys)
46
+ keys = {} unless keys
47
+ keys['orient'] = 'vertical'
48
+ super(keys)
49
+ end
50
+ private :create_self
51
+ end
52
+
53
+ Tk.__set_toplevel_aliases__(:Ttk, Tk::Tile::XScrollbar, :TkXScrollbar)
54
+ Tk.__set_toplevel_aliases__(:Ttk, Tk::Tile::YScrollbar, :TkYScrollbar)
@@ -0,0 +1,33 @@
1
+ #
2
+ # tseparator widget
3
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4
+ #
5
+ require 'tk'
6
+ require 'tkextlib/tile.rb'
7
+
8
+ module Tk
9
+ module Tile
10
+ class TSeparator < TkWindow
11
+ end
12
+ Separator = TSeparator
13
+ end
14
+ end
15
+
16
+ Tk.__set_toplevel_aliases__(:Ttk, Tk::Tile::Separator, :TkSeparator)
17
+
18
+
19
+ class Tk::Tile::TSeparator < TkWindow
20
+ include Tk::Tile::TileWidget
21
+
22
+ if Tk::Tile::USE_TTK_NAMESPACE
23
+ TkCommandNames = ['::ttk::separator'.freeze].freeze
24
+ else
25
+ TkCommandNames = ['::tseparator'.freeze].freeze
26
+ end
27
+ WidgetClassName = 'TSeparator'.freeze
28
+ WidgetClassNames[WidgetClassName] = self
29
+
30
+ def self.style(*args)
31
+ [self::WidgetClassName, *(args.map!{|a| _get_eval_string(a)})].join('.')
32
+ end
33
+ end
@@ -0,0 +1,30 @@
1
+ #
2
+ # tsquare widget
3
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4
+ #
5
+ require 'tk'
6
+ require 'tkextlib/tile.rb'
7
+
8
+ module Tk
9
+ module Tile
10
+ class TSquare < TkWindow
11
+ end
12
+ Square = TSquare
13
+ end
14
+ end
15
+
16
+ class Tk::Tile::TSquare < TkWindow
17
+ include Tk::Tile::TileWidget
18
+
19
+ if Tk::Tile::USE_TTK_NAMESPACE
20
+ TkCommandNames = ['::ttk::square'.freeze].freeze
21
+ else
22
+ TkCommandNames = ['::tsquare'.freeze].freeze
23
+ end
24
+ WidgetClassName = 'TSquare'.freeze
25
+ WidgetClassNames[WidgetClassName] = self
26
+
27
+ def self.style(*args)
28
+ [self::WidgetClassName, *(args.map!{|a| _get_eval_string(a)})].join('.')
29
+ end
30
+ end
@@ -0,0 +1,18 @@
1
+ #
2
+ # TkDND (Tk Drag & Drop Extension) support
3
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4
+ #
5
+ require 'tk'
6
+
7
+ # call setup script for general 'tkextlib' libraries
8
+ require 'tkextlib/setup.rb'
9
+
10
+ # call setup script
11
+ require 'tkextlib/tkDND/setup.rb'
12
+
13
+ module Tk
14
+ module TkDND
15
+ autoload :DND, 'tkextlib/tkDND/tkdnd'
16
+ autoload :Shape, 'tkextlib/tkDND/shape'
17
+ end
18
+ 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,125 @@
1
+ #
2
+ # tkextlib/tkDND/shape.rb
3
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4
+ #
5
+
6
+ require 'tk'
7
+
8
+ # call setup script for general 'tkextlib' libraries
9
+ require 'tkextlib/setup.rb'
10
+
11
+ # call setup script
12
+ require 'tkextlib/tkDND/setup.rb'
13
+
14
+ # TkPackage.require('Shape', '0.3')
15
+ TkPackage.require('Shape')
16
+
17
+ module Tk
18
+ module TkDND
19
+ module Shape
20
+ extend TkCore
21
+
22
+ PACKAGE_NAME = 'Shape'.freeze
23
+ def self.package_name
24
+ PACKAGE_NAME
25
+ end
26
+
27
+ =begin
28
+ def self.package_version
29
+ begin
30
+ TkPackage.require('Shape')
31
+ rescue
32
+ ''
33
+ end
34
+ end
35
+ =end
36
+ class << self
37
+ def package_version
38
+ Tk.tk_call('set', 'shape_version')
39
+ end
40
+ alias shape_version package_version
41
+
42
+ def package_patchlevel
43
+ Tk.tk_call('set', 'shape_patchLevel')
44
+ end
45
+ alias shape_patchlevel package_patchlevel
46
+
47
+ def version
48
+ tk_call('shape', 'version')
49
+ end
50
+ alias xshape_version version
51
+ end
52
+
53
+ ############################
54
+
55
+ def shape_bounds(kind=nil)
56
+ if kind
57
+ ret = tk_call('shape', 'bounds', @path, "-#{kind}")
58
+ else
59
+ ret = tk_call('shape', 'bounds', @path)
60
+ end
61
+ if ret == ""
62
+ nil
63
+ else
64
+ list(ret)
65
+ end
66
+ end
67
+
68
+ def shape_get(kind=nil)
69
+ if kind
70
+ list(tk_call('shape', 'get', @path, "-#{kind}"))
71
+ else
72
+ list(tk_call('shape', 'get', @path))
73
+ end
74
+ end
75
+
76
+ def shape_offset(x, y, kind=nil)
77
+ if kind
78
+ tk_call('shape', 'get', @path, "-#{kind}", x, y)
79
+ else
80
+ tk_call('shape', 'get', @path, x, y)
81
+ end
82
+ self
83
+ end
84
+
85
+ def _parse_shapespec_param(args)
86
+ cmd = []
87
+
88
+ kind_keys = ['bounding', 'clip', 'both']
89
+ offset_keys = ['offset']
90
+ srckind_keys = ['bitmap', 'rectangles', 'reset', 'test', 'window']
91
+
92
+ cmd << "-#{args.shift}" if kind_keys.member?(args[0].to_s)
93
+
94
+ if offset_keys.member?(args[0].to_s)
95
+ cmd << "-#{args.shift}"
96
+ cmd << args.shift # xOffset
97
+ cmd << args.shift # yOffset
98
+ end
99
+
100
+ if srckind_keys.member?(args[0].to_s)
101
+ cmd << "-#{args.shift}"
102
+ end
103
+
104
+ cmd.concat(args)
105
+
106
+ cmd
107
+ end
108
+ private :_parse_shapespec_param
109
+
110
+ def shape_set(*args) # ?kind? ?offset <x> <y>? srckind ?arg ...?
111
+ tk_call('shape', 'set', @path, *(_parse_shapespec_param(args)))
112
+ self
113
+ end
114
+
115
+ def shape_update(op, *args) # ?kind? ?offset <x> <y>? srckind ?arg ...?
116
+ tk_call('shape', 'update', @path, op, *(_parse_shapespec_param(args)))
117
+ self
118
+ end
119
+ end
120
+ end
121
+ end
122
+
123
+ class TkWindow
124
+ include Tk::TkDND::Shape
125
+ end
@@ -0,0 +1,182 @@
1
+ #
2
+ # tkextlib/tkDND/tkdnd.rb
3
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4
+ #
5
+
6
+ require 'tk'
7
+
8
+ # call setup script for general 'tkextlib' libraries
9
+ require 'tkextlib/setup.rb'
10
+
11
+ # call setup script
12
+ require 'tkextlib/tkDND/setup.rb'
13
+
14
+ TkPackage.require('tkdnd')
15
+
16
+ module Tk
17
+ module TkDND
18
+ PACKAGE_NAME = 'tkdnd'.freeze
19
+ def self.package_name
20
+ PACKAGE_NAME
21
+ end
22
+
23
+ def self.package_version
24
+ begin
25
+ TkPackage.require('tkdnd')
26
+ rescue
27
+ ''
28
+ end
29
+ end
30
+
31
+ class DND_Subst < TkUtil::CallbackSubst
32
+ KEY_TBL = [
33
+ [ ?a, ?l, :actions ],
34
+ [ ?A, ?s, :action ],
35
+ [ ?b, ?L, :codes ],
36
+ [ ?c, ?s, :code ],
37
+ [ ?d, ?l, :descriptions ],
38
+ [ ?D, ?l, :data ],
39
+ [ ?L, ?l, :source_types ],
40
+ [ ?m, ?l, :modifiers ],
41
+ [ ?t, ?l, :types ],
42
+ [ ?T, ?s, :type ],
43
+ [ ?W, ?w, :widget ],
44
+ [ ?x, ?n, :x ],
45
+ [ ?X, ?n, :x_root ],
46
+ [ ?y, ?n, :y ],
47
+ [ ?Y, ?n, :y_root ],
48
+ nil
49
+ ]
50
+
51
+ PROC_TBL = [
52
+ [ ?n, TkComm.method(:num_or_str) ],
53
+ [ ?s, TkComm.method(:string) ],
54
+ [ ?l, TkComm.method(:list) ],
55
+ [ ?L, TkComm.method(:simplelist) ],
56
+ [ ?w, TkComm.method(:window) ],
57
+ nil
58
+ ]
59
+
60
+ =begin
61
+ # for Ruby m17n :: ?x --> String --> char-code ( getbyte(0) )
62
+ KEY_TBL.map!{|inf|
63
+ if inf.kind_of?(Array)
64
+ inf[0] = inf[0].getbyte(0) if inf[0].kind_of?(String)
65
+ inf[1] = inf[1].getbyte(0) if inf[1].kind_of?(String)
66
+ end
67
+ inf
68
+ }
69
+
70
+ PROC_TBL.map!{|inf|
71
+ if inf.kind_of?(Array)
72
+ inf[0] = inf[0].getbyte(0) if inf[0].kind_of?(String)
73
+ end
74
+ inf
75
+ }
76
+ =end
77
+
78
+ # setup tables
79
+ _setup_subst_table(KEY_TBL, PROC_TBL);
80
+ end
81
+
82
+ module DND
83
+ def self.version
84
+ begin
85
+ TkPackage.require('tkdnd')
86
+ rescue
87
+ ''
88
+ end
89
+ end
90
+
91
+ def dnd_bindtarget_info(type=nil, event=nil)
92
+ if event
93
+ procedure(tk_call('dnd', 'bindtarget', @path, type, event))
94
+ elsif type
95
+ procedure(tk_call('dnd', 'bindtarget', @path, type))
96
+ else
97
+ simplelist(tk_call('dnd', 'bindtarget', @path))
98
+ end
99
+ end
100
+
101
+ #def dnd_bindtarget(type, event, cmd=Proc.new, prior=50, *args)
102
+ # event = tk_event_sequence(event)
103
+ # if prior.kind_of?(Numeric)
104
+ # tk_call('dnd', 'bindtarget', @path, type, event,
105
+ # install_bind_for_event_class(DND_Subst, cmd, *args),
106
+ # prior)
107
+ # else
108
+ # tk_call('dnd', 'bindtarget', @path, type, event,
109
+ # install_bind_for_event_class(DND_Subst, cmd, prior, *args))
110
+ # end
111
+ # self
112
+ #end
113
+ def dnd_bindtarget(type, event, *args)
114
+ # if args[0].kind_of?(Proc) || args[0].kind_of?(Method)
115
+ if TkComm._callback_entry?(args[0]) || !block_given?
116
+ cmd = args.shift
117
+ else
118
+ cmd = Proc.new
119
+ end
120
+
121
+ prior = 50
122
+ prior = args.shift unless args.empty?
123
+
124
+ event = tk_event_sequence(event)
125
+ if prior.kind_of?(Numeric)
126
+ tk_call('dnd', 'bindtarget', @path, type, event,
127
+ install_bind_for_event_class(DND_Subst, cmd, *args),
128
+ prior)
129
+ else
130
+ tk_call('dnd', 'bindtarget', @path, type, event,
131
+ install_bind_for_event_class(DND_Subst, cmd, prior, *args))
132
+ end
133
+ self
134
+ end
135
+
136
+ def dnd_cleartarget
137
+ tk_call('dnd', 'cleartarget', @path)
138
+ self
139
+ end
140
+
141
+ def dnd_bindsource_info(type=nil)
142
+ if type
143
+ procedure(tk_call('dnd', 'bindsource', @path, type))
144
+ else
145
+ simplelist(tk_call('dnd', 'bindsource', @path))
146
+ end
147
+ end
148
+
149
+ #def dnd_bindsource(type, cmd=Proc.new, prior=None)
150
+ # tk_call('dnd', 'bindsource', @path, type, cmd, prior)
151
+ # self
152
+ #end
153
+ def dnd_bindsource(type, *args)
154
+ # if args[0].kind_of?(Proc) || args[0].kind_of?(Method)
155
+ if TkComm._callback_entry?(args[0]) || !block_given?
156
+ cmd = args.shift
157
+ else
158
+ cmd = Proc.new
159
+ end
160
+
161
+ args = [None] if args.empty
162
+
163
+ tk_call('dnd', 'bindsource', @path, type, cmd, *args)
164
+ self
165
+ end
166
+
167
+ def dnd_clearsource()
168
+ tk_call('dnd', 'clearsource', @path)
169
+ self
170
+ end
171
+
172
+ def dnd_drag(keys=nil)
173
+ tk_call('dnd', 'drag', @path, *hash_kv(keys))
174
+ self
175
+ end
176
+ end
177
+ end
178
+ end
179
+
180
+ class TkWindow
181
+ include Tk::TkDND::DND
182
+ end