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,135 @@
1
+
2
+ [ tcllib extension support files ]
3
+
4
+ Tcllib includes many utilities. But currently, supports TKLib part
5
+ only (see the following 'tcllib contents').
6
+
7
+ If you request to support others, please send your message to one of
8
+ ruby-talk/ruby-list/ruby-dev/ruby-ext mailing lists.
9
+
10
+ -----<from "What is tcllib?">----------------------------
11
+ Tcllib is a collection of utility modules for Tcl. These modules provide
12
+ a wide variety of functionality, from implementations of standard data
13
+ structures to implementations of common networking protocols. The intent
14
+ is to collect commonly used function into a single library, which users
15
+ can rely on to be available and stable.
16
+ ---------------------------------------------------------
17
+
18
+ -----< tcllib contents (based on tcllib-1.6.1) >---------
19
+ Programming tools
20
+ * cmdline - Procedures to process command lines and options.
21
+ * comm - A remote communications facility for Tcl (7.6, 8.0, and later)
22
+ * control - Procedures for control flow structures.
23
+ * fileutil - Procedures implementing some file utilities
24
+ * log - Procedures to log messages of libraries and applications.
25
+ * logger - System to control logging of events.
26
+ * multiplexer - One-to-many communication with sockets.
27
+ * snit - Snit's Not Incr Tcl
28
+ * snitfaq - Snit Frequently Asked Questions
29
+ * stooop - Object oriented extension.
30
+ * stoop - Simple Tcl Only Object Oriented Programming
31
+ * switched - stooop switched class
32
+ * profiler - Tcl source code profiler
33
+
34
+ Mathematics
35
+ * math::statistics - Basic statistical functions and procedures
36
+ * math::calculus - Integration and ordinary differential equations
37
+ * math::optimize - Optimisation routines
38
+ * math::fuzzy - Fuzzy comparison of floating-point numbers
39
+ * counter - Procedures for counters and histograms
40
+ * combinatorics - Combinatorial functions in the Tcl Math Library
41
+
42
+ Data structures
43
+ * struct::list - Procedures for manipulating lists
44
+ * struct::set - Procedures for manipulating sets
45
+ * struct::stack - Create and manipulate stack objects
46
+ * struct::queue - Create and manipulate queue objects
47
+ * struct::prioqueue - Create and manipulate prioqueue objects
48
+ * struct::skiplist - Create and manipulate skiplists
49
+ * struct::tree - Create and manipulate tree objects
50
+ * struct::graph - Create and manipulate directed graph objects
51
+ * struct::record - Define and create records (similar to 'C' structures)
52
+ * struct::matrix - Create and manipulate matrix objects
53
+ * struct::pool - Create and manipulate pool objects (of discrete items)
54
+ * report - Create and manipulate report objects
55
+
56
+ Text processing
57
+ * expander - Procedures to process templates and expand text.
58
+ * base64 - Procedures to encode and decode base64
59
+ * yencode - encode/decoding a binary file
60
+ * uuencode - encode/decoding a binary file
61
+ * csv - Procedures to handle CSV data.
62
+ * inifile - Parsing of Windows INI files
63
+ * htmlparse - Procedures to parse HTML strings
64
+ * mime - Manipulation of MIME body parts
65
+ * Tcl MIME - generates and parses MIME body parts
66
+ * textutil - Procedures to manipulate texts and strings.
67
+ * exif - Tcl EXIF extracts and parses EXIF fields from digital images
68
+ * EXIF - extract and parse EXIF fields from digital images
69
+
70
+ Hashes, checksums, and encryption
71
+ * cksum - calculate a cksum(1) compatible checksum
72
+ * crc16 - Perform a 16bit Cyclic Redundancy Check
73
+ * crc32 - Perform a 32bit Cyclic Redundancy Check
74
+ * des - Perform DES encryption of Tcl data
75
+ * md4 - MD4 Message-Digest Algorithm
76
+ * md5 - MD5 Message-Digest Algorithm
77
+ * ripemd160 - RIPEMD-160 Message-Digest Algorithm
78
+ * ripemd128 - RIPEMD-128 Message-Digest Algorithm
79
+ * md5crypt - MD5-based password encryption
80
+ * sha1 - Perform sha1 hashing
81
+ * sum - calculate a sum(1) compatible checksum
82
+ * soundex - Soundex
83
+
84
+ Documentation tools
85
+ * mpexpand - Markup processor
86
+ * doctools - Create and manipulate doctools converter object
87
+ * doctoc_fmt - Specification of simple tcl markup for table of contents
88
+ * doctools_api - Interface specification for formatter code
89
+ * doctools_fmt - Specification of simple tcl markup for manpages
90
+ * docidx - Create and manipulate docidx converter objects
91
+ * docidx_api - Interface specification for index formatting code
92
+ * docidx_fmt - Specification of simple tcl markup for an index
93
+ * doctoc - Create and manipulate doctoc converter objects
94
+ * doctoc_api - Interface specification for toc formatting code
95
+ * doctools::changelog - Handle text in Emacs ChangeLog format
96
+ * doctools::cvs - Handle text in 'cvs log' format
97
+
98
+ Networking
99
+ * uri - URI utilities
100
+ * dns - Tcl Domain Name Service Client
101
+ * ntp_time - Tcl Time Service Client
102
+ * nntp - Tcl client for the NNTP protocol
103
+ * pop3 - Tcl client for POP3 email protocol
104
+ * pop3d - Tcl POP3 server implementation
105
+ * pop3d::udb - Simple user database for pop3d
106
+ * pop3d::dbox - Simple mailbox database for pop3d
107
+ * ftp - Client-side tcl implementation of the ftp protocol
108
+ * ftp - Client-side tcl implementation of the ftp protocol
109
+ * ftpd - Tcl FTP server implementation
110
+ * smtp - Client-side tcl implementation of the smtp protocol
111
+ * smtpd - Tcl SMTP server implementation
112
+ * irc - Create IRC connection and interface.
113
+
114
+ CGI programming
115
+ * ncgi - Procedures to manipulate CGI values.
116
+ * html - Procedures to generate HTML structures
117
+ * javascript - Procedures to generate HTML and Java Script structures.
118
+
119
+ Grammars and finite automata
120
+ * grammar::fa - Create and manipulate finite automatons
121
+ * grammar::fa::op - Operations on finite automatons
122
+ * grammar::dacceptor - Create and use deterministic acceptors
123
+ * grammar::dexec - Execute deterministic finite automatons
124
+
125
+ TKLib
126
+ * Plotchart - Simple plotting and charting package
127
+ * autoscroll - Provides for a scrollbar to automatically mapped and
128
+ unmapped as needed
129
+ * ctext - An extended text widget with customizable Syntax highlighting
130
+ * cursor - Procedures to handle CURSOR data
131
+ * datefield - Tk datefield widget
132
+ * style - Changes default Tk look&feel
133
+ * ipentry - An IP address entry widget
134
+ * tkpiechart - Creates and dynamically updates 2D or 3D pie charts
135
+ ---------------------------------------------------------
@@ -0,0 +1,158 @@
1
+ #
2
+ # tkextlib/tcllib/autoscroll.rb
3
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4
+ #
5
+ # * Part of tcllib extension
6
+ # * Provides for a scrollbar to automatically mapped and unmapped as needed
7
+ #
8
+ # (The following is the original description of the library.)
9
+ #
10
+ # This package allows scrollbars to be mapped and unmapped as needed
11
+ # depending on the size and content of the scrollbars scrolled widget.
12
+ # The scrollbar must be managed by either pack or grid, other geometry
13
+ # managers are not supported.
14
+ #
15
+ # When managed by pack, any geometry changes made in the scrollbars parent
16
+ # between the time a scrollbar is unmapped, and when it is mapped will be
17
+ # lost. It is an error to destroy any of the scrollbars siblings while the
18
+ # scrollbar is unmapped. When managed by grid, if anything becomes gridded
19
+ # in the same row and column the scrollbar occupied it will be replaced by
20
+ # the scrollbar when remapped.
21
+ #
22
+ # This package may be used on any scrollbar-like widget as long as it
23
+ # supports the set subcommand in the same style as scrollbar. If the set
24
+ # subcommand is not used then this package will have no effect.
25
+ #
26
+
27
+ require 'tk'
28
+ require 'tk/scrollbar'
29
+ require 'tkextlib/tcllib.rb'
30
+
31
+ module Tk
32
+ module Tcllib
33
+ module Autoscroll
34
+ PACKAGE_NAME = 'autoscroll'.freeze
35
+ def self.package_name
36
+ PACKAGE_NAME
37
+ end
38
+
39
+ def self.package_version
40
+ begin
41
+ TkPackage.require('autoscroll')
42
+ rescue
43
+ ''
44
+ end
45
+ end
46
+
47
+ def self.not_available
48
+ fail RuntimeError, "'tkextlib/tcllib/autoscroll' extension is not available on your current environment."
49
+ end
50
+
51
+ def self.autoscroll(win)
52
+ Tk::Tcllib::Autoscroll.not_available
53
+ end
54
+
55
+ def self.unautoscroll(win)
56
+ Tk::Tcllib::Autoscroll.not_available
57
+ end
58
+ end
59
+ end
60
+ end
61
+
62
+ module Tk
63
+ module Scrollable
64
+ def autoscroll(mode = nil)
65
+ case mode
66
+ when :x, 'x'
67
+ if @xscrollbar
68
+ Tk::Tcllib::Autoscroll.autoscroll(@xscrollbar)
69
+ end
70
+ when :y, 'y'
71
+ if @yscrollbar
72
+ Tk::Tcllib::Autoscroll.autoscroll(@yscrollbar)
73
+ end
74
+ when nil, :both, 'both'
75
+ if @xscrollbar
76
+ Tk::Tcllib::Autoscroll.autoscroll(@xscrollbar)
77
+ end
78
+ if @yscrollbar
79
+ Tk::Tcllib::Autoscroll.autoscroll(@yscrollbar)
80
+ end
81
+ else
82
+ fail ArgumentError, "'x', 'y' or 'both' (String or Symbol) is expected"
83
+ end
84
+ self
85
+ end
86
+ def unautoscroll(mode = nil)
87
+ case mode
88
+ when :x, 'x'
89
+ if @xscrollbar
90
+ Tk::Tcllib::Autoscroll.unautoscroll(@xscrollbar)
91
+ end
92
+ when :y, 'y'
93
+ if @yscrollbar
94
+ Tk::Tcllib::Autoscroll.unautoscroll(@yscrollbar)
95
+ end
96
+ when nil, :both, 'both'
97
+ if @xscrollbar
98
+ Tk::Tcllib::Autoscroll.unautoscroll(@xscrollbar)
99
+ end
100
+ if @yscrollbar
101
+ Tk::Tcllib::Autoscroll.unautoscroll(@yscrollbar)
102
+ end
103
+ else
104
+ fail ArgumentError, "'x', 'y' or 'both' (String or Symbol) is expected"
105
+ end
106
+ self
107
+ end
108
+ end
109
+ end
110
+
111
+ class Tk::Scrollbar
112
+ def autoscroll
113
+ # Arranges for the already existing scrollbar to be mapped
114
+ # and unmapped as needed.
115
+ #tk_call_without_enc('::autoscroll::autoscroll', @path)
116
+ Tk::Tcllib::Autoscroll.autoscroll(self)
117
+ self
118
+ end
119
+ def unautoscroll
120
+ # Returns the scrollbar to its original static state.
121
+ #tk_call_without_enc('::autoscroll::unautoscroll', @path)
122
+ Tk::Tcllib::Autoscroll.unautoscroll(self)
123
+ self
124
+ end
125
+ end
126
+
127
+ # TkPackage.require('autoscroll', '1.0')
128
+ # TkPackage.require('autoscroll', '1.1')
129
+ TkPackage.require('autoscroll')
130
+
131
+ module Tk
132
+ module Tcllib
133
+ class << Autoscroll
134
+ undef not_available
135
+ end
136
+
137
+ module Autoscroll
138
+ extend TkCore
139
+ def self.autoscroll(win)
140
+ tk_call_without_enc('::autoscroll::autoscroll', win.path)
141
+ end
142
+
143
+ def self.unautoscroll(win)
144
+ tk_call_without_enc('::autoscroll::unautoscroll', win.path)
145
+ end
146
+
147
+ def self.wrap
148
+ # v1.1
149
+ tk_call_without_enc('::autoscroll::wrap')
150
+ end
151
+
152
+ def self.unwrap
153
+ # v1.1
154
+ tk_call_without_enc('::autoscroll::unwrap')
155
+ end
156
+ end
157
+ end
158
+ end
@@ -0,0 +1,160 @@
1
+ #
2
+ # tkextlib/tcllib/ctext.rb
3
+ # by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4
+ #
5
+ # * Part of tcllib extension
6
+ # * Overloads the text widget and provides new commands
7
+ #
8
+
9
+ require 'tk'
10
+ require 'tk/text'
11
+ require 'tkextlib/tcllib.rb'
12
+
13
+ # TkPackage.require('ctext', '3.1')
14
+ TkPackage.require('ctext')
15
+
16
+ module Tk
17
+ module Tcllib
18
+ class CText < Tk::Text
19
+ PACKAGE_NAME = 'ctext'.freeze
20
+ def self.package_name
21
+ PACKAGE_NAME
22
+ end
23
+
24
+ def self.package_version
25
+ begin
26
+ TkPackage.require('ctext')
27
+ rescue
28
+ ''
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
34
+
35
+ class Tk::Tcllib::CText
36
+ TkCommandNames = ['ctext'.freeze].freeze
37
+ WidgetClassName = 'Ctext'.freeze
38
+ WidgetClassNames[WidgetClassName] = self
39
+
40
+ def create_self(keys)
41
+ if keys and keys != None
42
+ tk_call_without_enc(self.class::TkCommandNames[0], @path,
43
+ *hash_kv(keys, true))
44
+ else
45
+ tk_call_without_enc(self.class::TkCommandNames[0], @path)
46
+ end
47
+ end
48
+ private :create_self
49
+
50
+ def __strval_optkeys
51
+ super() << 'linemapfg' << 'linemapbg' <<
52
+ 'linemap_select_fg' << 'linemap_select_bg'
53
+ end
54
+ private :__strval_optkeys
55
+
56
+ def __boolval_optkeys
57
+ super() << 'highlight' << 'linemap_markable'
58
+ end
59
+ private :__boolval_optkeys
60
+
61
+ def append(*args)
62
+ tk_send('append', *args)
63
+ end
64
+
65
+ def copy
66
+ tk_send('copy')
67
+ end
68
+
69
+ def cut
70
+ tk_send('cut')
71
+ end
72
+
73
+ def fast_delete(*args)
74
+ tk_send('fastdelete', *args)
75
+ end
76
+
77
+ def fast_insert(*args)
78
+ tk_send('fastinsert', *args)
79
+ end
80
+
81
+ def highlight(*args)
82
+ tk_send('highlight', *args)
83
+ end
84
+
85
+ def paste
86
+ tk_send('paste')
87
+ end
88
+
89
+ def edit(*args)
90
+ tk_send('edit', *args)
91
+ end
92
+
93
+ def add_highlight_class(klass, col, *keywords)
94
+ tk_call('ctext::addHighlightClass', @path, klass, col, keywords.flatten)
95
+ self
96
+ end
97
+
98
+ def add_highlight_class_for_special_chars(klass, col, *chrs)
99
+ tk_call('ctext::addHighlightClassForSpecialChars',
100
+ @path, klass, col, chrs.join(''))
101
+ self
102
+ end
103
+
104
+ def add_highlight_class_for_regexp(klass, col, tcl_regexp)
105
+ tk_call('ctext::addHighlightClassForRegexp',
106
+ @path, klass, col, tcl_regexp)
107
+ self
108
+ end
109
+
110
+ def add_highlight_class_with_only_char_start(klass, col, chr)
111
+ tk_call('ctext::addHighlightClassWithOnlyCharStart',
112
+ @path, klass, col, chr)
113
+ self
114
+ end
115
+
116
+ def clear_highlight_classes
117
+ tk_call('ctext::clearHighlightClasses', @path)
118
+ self
119
+ end
120
+
121
+ def get_highlight_classes
122
+ tk_split_simplelist(tk_call('ctext::getHighlightClasses', @path))
123
+ end
124
+
125
+ def delete_highlight_class(klass)
126
+ tk_call('ctext::deleteHighlightClass', @path, klass)
127
+ self
128
+ end
129
+
130
+ def enable_C_comments
131
+ tk_call('ctext::enableComments', @path)
132
+ self
133
+ end
134
+
135
+ def disable_C_comments
136
+ tk_call('ctext::disableComments', @path)
137
+ self
138
+ end
139
+
140
+ def find_next_char(idx, chr)
141
+ tk_call('ctext::findNextChar', @path, idx, chr)
142
+ end
143
+
144
+ def find_next_space(idx)
145
+ tk_call('ctext::findNextSpace', @path, idx)
146
+ end
147
+
148
+ def find_previous_space(idx)
149
+ tk_call('ctext::findPreviousSpace', @path, idx)
150
+ end
151
+
152
+ def set_update_proc(cmd=Proc.new)
153
+ tk_call('proc', 'ctext::update', '', cmd)
154
+ self
155
+ end
156
+
157
+ def modified?(mode)
158
+ bool(tk_call('ctext::modified', @path, mode))
159
+ end
160
+ end