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,187 @@
1
+ #
2
+ # BLT support
3
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4
+ #
5
+
6
+ require 'tk'
7
+ require 'tk/variable'
8
+
9
+ # call setup script for general 'tkextlib' libraries
10
+ require 'tkextlib/setup.rb'
11
+
12
+ # call setup script
13
+ require 'tkextlib/blt/setup.rb'
14
+
15
+ # load all image format handlers
16
+ #TkPackage.require('BLT', '2.4')
17
+ TkPackage.require('BLT')
18
+
19
+ module Tk
20
+ module BLT
21
+ TkComm::TkExtlibAutoloadModule.unshift(self)
22
+
23
+ extend TkCore
24
+
25
+ VERSION = tk_call('set', 'blt_version')
26
+ PATCH_LEVEL = tk_call('set', 'blt_patchLevel')
27
+
28
+ begin
29
+ lib = TkCore::INTERP._invoke('set', 'blt_library')
30
+ rescue
31
+ lib = ''
32
+ end
33
+ LIBRARY = TkVarAccess.new('blt_library', lib)
34
+
35
+ begin
36
+ lib = TkCore::INTERP._invoke('set', 'blt_libPath')
37
+ rescue
38
+ lib = ''
39
+ end
40
+ LIB_PATH = TkVarAccess.new('blt_libPath', lib)
41
+
42
+ PACKAGE_NAME = 'BLT'.freeze
43
+ def self.package_name
44
+ PACKAGE_NAME
45
+ end
46
+
47
+ def self.package_version
48
+ begin
49
+ TkPackage.require('BLT')
50
+ rescue
51
+ ''
52
+ end
53
+ end
54
+
55
+ ####################################################
56
+
57
+ def self.beep(percent = 50)
58
+ tk_call('::blt::beep', percent)
59
+ end
60
+
61
+ def self.bgexec(*args)
62
+ if args[0].kind_of?(TkVariable)
63
+ var = args.shift
64
+ else
65
+ var = TkVariable.new
66
+ end
67
+ params = [var]
68
+
69
+ params.concat(hash_kv(args.shift, true)) if args[0].kind_of?(Hash)
70
+
71
+ params << '--' if args[0] =~ /^\s*-[^-]/
72
+ params.concat(args)
73
+
74
+ tk_call('::blt::bgexec', *params)
75
+ var
76
+ end
77
+
78
+ def self.detach_bgexec(*args)
79
+ if args[0].kind_of?(TkVariable)
80
+ var = args.shift
81
+ else
82
+ var = TkVariable.new
83
+ end
84
+ params = [var]
85
+
86
+ params.concat(hash_kv(args.shift, true)) if args[0].kind_of?(Hash)
87
+
88
+ params << '--' if args[0] =~ /^\s*-[^-]/
89
+ params.concat(args)
90
+ params << '&'
91
+
92
+ [var, tk_split_list(tk_call('::blt::bgexec', *params))]
93
+ end
94
+
95
+ def self.bltdebug(lvl = nil)
96
+ if lvl
97
+ tk_call('::blt::bltdebug', lvl)
98
+ else
99
+ number(tk_call('::blt::bltdebug'))
100
+ end
101
+ end
102
+
103
+ def self.crc32_file(name)
104
+ tk_call_without_enc('::blt::crc32', name)
105
+ end
106
+ def self.crc32_data(dat)
107
+ tk_call_without_enc('::blt::crc32', '-data', dat)
108
+ end
109
+
110
+ ####################################################
111
+
112
+ def self.active_legend(graph)
113
+ tk_call_without_enc('Blt_ActiveLegend', graph)
114
+ end
115
+ def self.crosshairs(graph)
116
+ tk_call_without_enc('Blt_Crosshairs', graph)
117
+ end
118
+ def self.zoom_stack(graph)
119
+ tk_call_without_enc('Blt_ZoomStack', graph)
120
+ end
121
+ def self.print_key(graph)
122
+ tk_call_without_enc('Blt_PrintKey', graph)
123
+ end
124
+ def self.closest_point(graph)
125
+ tk_call_without_enc('Blt_ClosestPoint', graph)
126
+ end
127
+
128
+ module GraphCommand
129
+ def active_legend
130
+ tk_call_without_enc('Blt_ActiveLegend', @path)
131
+ self
132
+ end
133
+ def crosshairs
134
+ tk_call_without_enc('Blt_Crosshairs', @path)
135
+ self
136
+ end
137
+ def zoom_stack
138
+ tk_call_without_enc('Blt_ZoomStack', @path)
139
+ self
140
+ end
141
+ def print_key
142
+ tk_call_without_enc('Blt_PrintKey', @path)
143
+ self
144
+ end
145
+ def closest_point
146
+ tk_call_without_enc('Blt_ClosestPoint', @path)
147
+ self
148
+ end
149
+ end
150
+
151
+ ####################################################
152
+
153
+ autoload :PlotComponent,'tkextlib/blt/component.rb'
154
+
155
+ autoload :Barchart, 'tkextlib/blt/barchart.rb'
156
+ autoload :Bitmap, 'tkextlib/blt/bitmap.rb'
157
+ autoload :Busy, 'tkextlib/blt/busy.rb'
158
+ autoload :Container, 'tkextlib/blt/container.rb'
159
+ autoload :CutBuffer, 'tkextlib/blt/cutbuffer.rb'
160
+ autoload :DragDrop, 'tkextlib/blt/dragdrop.rb'
161
+ autoload :EPS, 'tkextlib/blt/eps.rb'
162
+ autoload :Htext, 'tkextlib/blt/htext.rb'
163
+ autoload :Graph, 'tkextlib/blt/graph.rb'
164
+ autoload :Spline, 'tkextlib/blt/spline.rb'
165
+ autoload :Stripchart, 'tkextlib/blt/stripchart.rb'
166
+ autoload :Table, 'tkextlib/blt/table.rb'
167
+ autoload :Tabnotebook, 'tkextlib/blt/tabnotebook.rb'
168
+ autoload :Tabset, 'tkextlib/blt/tabset.rb'
169
+ autoload :Ted, 'tkextlib/blt/ted.rb'
170
+ autoload :Tile, 'tkextlib/blt/tile.rb'
171
+ autoload :Tree, 'tkextlib/blt/tree.rb'
172
+ autoload :TreeView, 'tkextlib/blt/treeview.rb'
173
+ autoload :Hiertable, 'tkextlib/blt/treeview.rb'
174
+ # Hierbox is obsolete
175
+ autoload :Vector, 'tkextlib/blt/vector.rb'
176
+ autoload :VectorAccess, 'tkextlib/blt/vector.rb'
177
+ autoload :Watch, 'tkextlib/blt/watch.rb'
178
+ autoload :Winop, 'tkextlib/blt/winop.rb'
179
+ autoload :WinOp, 'tkextlib/blt/winop.rb'
180
+
181
+ # Unix only
182
+ autoload :DnD, 'tkextlib/blt/unix_dnd.rb'
183
+
184
+ # Windows only
185
+ autoload :Printer, 'tkextlib/blt/win_printer.rb'
186
+ end
187
+ end
@@ -0,0 +1,79 @@
1
+ #
2
+ # tkextlib/blt/barchart.rb
3
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4
+ #
5
+
6
+ require 'tk'
7
+ require 'tkextlib/blt.rb'
8
+ require 'tkextlib/blt/component.rb'
9
+
10
+ module Tk::BLT
11
+ class Barchart < TkWindow
12
+ TkCommandNames = ['::blt::barchart'.freeze].freeze
13
+ WidgetClassName = 'Barchart'.freeze
14
+ WidgetClassNames[WidgetClassName] = self
15
+
16
+ include PlotComponent
17
+ include GraphCommand
18
+
19
+ def __boolval_optkeys
20
+ ['bufferelements', 'buffergraph', 'invertxy']
21
+ end
22
+ private :__boolval_optkeys
23
+
24
+ def __strval_optkeys
25
+ ['text', 'label', 'title', 'file',
26
+ 'background', 'plotbackground']
27
+ end
28
+ private :__strval_optkeys
29
+
30
+ def __tkvariable_optkeys
31
+ super() << 'colormap' << 'fontmap'
32
+ end
33
+ private :__tkvariable_optkeys
34
+
35
+ =begin
36
+ BarElement_ID = ['blt_barchart_bar'.freeze, '00000'.taint].freeze
37
+
38
+ def bar(elem=nil, keys={})
39
+ if elem.kind_of?(Hash)
40
+ keys = elem
41
+ elem = nil
42
+ end
43
+ unless elem
44
+ elem = BarElement_ID.join(TkCore::INTERP._ip_id_).freeze
45
+ BarElement_ID[1].succ!
46
+ end
47
+ tk_send('bar', elem, keys)
48
+ Element.new(self, elem, :without_creating=>true)
49
+ end
50
+ =end
51
+
52
+ def extents(item)
53
+ num_or_str(tk_send_without_enc('extents', item))
54
+ end
55
+
56
+ def invtransform(x, y)
57
+ list(tk_send_without_enc('invtransform', x, y))
58
+ end
59
+
60
+ def inside(x, y)
61
+ bool(tk_send_without_enc('inside', x, y))
62
+ end
63
+
64
+ def metafile(file=None)
65
+ # Windows only
66
+ tk_send('metafile', file)
67
+ self
68
+ end
69
+
70
+ def snap(output, keys={})
71
+ tk_send_without_enc('snap', *(hash_kv(keys, false) + output))
72
+ self
73
+ end
74
+
75
+ def transform(x, y)
76
+ list(tk_send_without_enc('transform', x, y))
77
+ end
78
+ end
79
+ end
@@ -0,0 +1,112 @@
1
+ #
2
+ # tkextlib/blt/bitmap.rb
3
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4
+ #
5
+
6
+ require 'tk'
7
+ require 'tkextlib/blt.rb'
8
+
9
+ module Tk::BLT
10
+ class Bitmap < TkObject
11
+ extend TkCore
12
+
13
+ TkCommandNames = ['::blt::bitmap'.freeze].freeze
14
+
15
+ BITMAP_ID_TBL = TkCore::INTERP.create_table
16
+
17
+ (BITMAP_ID = ['blt_bitmap_id'.freeze, '00000'.taint]).instance_eval{
18
+ @mutex = Mutex.new
19
+ def mutex; @mutex; end
20
+ freeze
21
+ }
22
+
23
+ TkCore::INTERP.init_ip_env{
24
+ BITMAP_ID_TBL.mutex.synchronize{ BITMAP_ID_TBL.clear }
25
+ }
26
+
27
+ def self.data(name)
28
+ dat = tk_simple_list(tk_call('::blt::bitmap', 'data', name))
29
+ [ tk_split_list(dat[0]), tk_simple_list(dat[1]) ]
30
+ end
31
+
32
+ def self.exist?(name)
33
+ bool(tk_call('::blt::bitmap', 'exists', name))
34
+ end
35
+
36
+ def self.height(name)
37
+ number(tk_call('::blt::bitmap', 'height', name))
38
+ end
39
+
40
+ def self.width(name)
41
+ number(tk_call('::blt::bitmap', 'width', name))
42
+ end
43
+
44
+ def self.source(name)
45
+ tk_simple_list(tk_call('::blt::bitmap', 'source', name))
46
+ end
47
+
48
+ #################################
49
+
50
+ class << self
51
+ alias _new new
52
+
53
+ def new(data, keys={})
54
+ _new(:data, nil, data, keys)
55
+ end
56
+ alias define new
57
+
58
+ def new_with_name(name, data, keys={})
59
+ _new(:data, name, data, keys)
60
+ end
61
+ alias define_with_name new_with_name
62
+
63
+ def compose(text, keys={})
64
+ _new(:text, nil, text, keys)
65
+ end
66
+
67
+ def compose_with_name(name, text, keys={})
68
+ _new(:text, name, text, keys)
69
+ end
70
+ end
71
+
72
+ def initialize(type, name, data, keys = {})
73
+ if name
74
+ @id = name
75
+ else
76
+ BITMAP_ID.mutex.synchronize{
77
+ @id = BITMAP_ID.join(TkCore::INTERP._ip_id_)
78
+ BITMAP_ID[1].succ!
79
+ }
80
+ BITMAP_ID_TBL.mutex.synchronize{
81
+ BITMAP_ID_TBL[@id] = self
82
+ }
83
+ end
84
+
85
+ @path = @id
86
+
87
+ unless bool(tk_call('::blt::bitmap', 'exists', @id))
88
+ if type == :text
89
+ tk_call('::blt::bitmap', 'compose', @id, data, *hash_kv(keys))
90
+ else # :data
91
+ tk_call('::blt::bitmap', 'define', @id, data, *hash_kv(keys))
92
+ end
93
+ end
94
+ end
95
+
96
+ def exist?
97
+ bool(tk_call('::blt::bitmap', 'exists', @id))
98
+ end
99
+
100
+ def height
101
+ number(tk_call('::blt::bitmap', 'height', @id))
102
+ end
103
+
104
+ def width
105
+ number(tk_call('::blt::bitmap', 'width', @id))
106
+ end
107
+
108
+ def source
109
+ tk_simple_list(tk_call('::blt::bitmap', 'source', @id))
110
+ end
111
+ end
112
+ end
@@ -0,0 +1,82 @@
1
+ #
2
+ # tkextlib/blt/busy.rb
3
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4
+ #
5
+
6
+ require 'tk'
7
+ require 'tk/itemconfig.rb'
8
+ require 'tkextlib/blt.rb'
9
+
10
+ module Tk::BLT
11
+ module Busy
12
+ extend TkCore
13
+ extend TkItemConfigMethod
14
+
15
+ TkCommandNames = ['::blt::busy'.freeze].freeze
16
+
17
+ ###########################
18
+
19
+ class Shield < TkWindow
20
+ def self.shield_path(win)
21
+ win = window(win) unless win.kind_of?(TkWindow)
22
+ if win.kind_of?(Tk::Toplevel)
23
+ win.path + '._Busy'
24
+ else
25
+ win.path + '_Busy'
26
+ end
27
+ end
28
+
29
+ def initialize(win)
30
+ @path = self.class.shield_path(win)
31
+ end
32
+ end
33
+
34
+ def self.shield_path(win)
35
+ Tk::BLT::Busy::Shield.shield_path(win)
36
+ end
37
+ end
38
+ end
39
+
40
+ class << Tk::BLT::Busy
41
+ def __item_config_cmd(win)
42
+ ['::blt::busy', 'configure', win]
43
+ end
44
+ private :__item_config_cmd
45
+
46
+ undef itemcget
47
+ alias configure itemconfigure
48
+ alias configinfo itemconfiginfo
49
+ alias current_configinfo current_itemconfiginfo
50
+ private :itemconfigure, :itemconfiginfo, :current_itemconfiginfo
51
+
52
+ ##################################
53
+
54
+ def hold(win, keys={})
55
+ tk_call('::blt::busy', 'hold', win, *hash_kv(keys))
56
+ end
57
+
58
+ def release(*wins)
59
+ tk_call('::blt::busy', 'release', *wins)
60
+ end
61
+
62
+ def forget(*wins)
63
+ tk_call('::blt::busy', 'forget', *wins)
64
+ end
65
+
66
+ def is_busy(pat=None)
67
+ tk_split_list(tk_call('::blt::busy', 'isbusy', pat))
68
+ end
69
+
70
+ def names(pat=None)
71
+ tk_split_list(tk_call('::blt::busy', 'names', pat))
72
+ end
73
+ alias windows names
74
+
75
+ def check(win)
76
+ bool(tk_call('::blt::busy', 'check', win))
77
+ end
78
+
79
+ def status(win)
80
+ bool(tk_call('::blt::busy', 'status', win))
81
+ end
82
+ end