tk_as_gem 0.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/README +22 -0
- data/Rakefile +11 -0
- data/VERSION +1 -0
- data/ext/ChangeLog.tkextlib +935 -0
- data/ext/MANUAL_tcltklib.eng +469 -0
- data/ext/MANUAL_tcltklib.eucj +579 -0
- data/ext/README.1st +19 -0
- data/ext/README.ActiveTcl +49 -0
- data/ext/README.fork +34 -0
- data/ext/README.macosx-aqua +67 -0
- data/ext/README.tcltklib +85 -0
- data/ext/depend +2 -0
- data/ext/extconf.rb +451 -0
- data/ext/lib/README +30 -0
- data/ext/lib/multi-tk.rb +3491 -0
- data/ext/lib/remote-tk.rb +530 -0
- data/ext/lib/tcltk.rb +367 -0
- data/ext/lib/tk.rb +5584 -0
- data/ext/lib/tk/after.rb +6 -0
- data/ext/lib/tk/autoload.rb +414 -0
- data/ext/lib/tk/bgerror.rb +29 -0
- data/ext/lib/tk/bindtag.rb +138 -0
- data/ext/lib/tk/button.rb +30 -0
- data/ext/lib/tk/canvas.rb +789 -0
- data/ext/lib/tk/canvastag.rb +434 -0
- data/ext/lib/tk/checkbutton.rb +30 -0
- data/ext/lib/tk/clipboard.rb +75 -0
- data/ext/lib/tk/clock.rb +71 -0
- data/ext/lib/tk/composite.rb +458 -0
- data/ext/lib/tk/console.rb +52 -0
- data/ext/lib/tk/dialog.rb +326 -0
- data/ext/lib/tk/encodedstr.rb +187 -0
- data/ext/lib/tk/entry.rb +119 -0
- data/ext/lib/tk/event.rb +542 -0
- data/ext/lib/tk/font.rb +2344 -0
- data/ext/lib/tk/frame.rb +131 -0
- data/ext/lib/tk/grid.rb +279 -0
- data/ext/lib/tk/image.rb +275 -0
- data/ext/lib/tk/itemconfig.rb +1215 -0
- data/ext/lib/tk/itemfont.rb +327 -0
- data/ext/lib/tk/kinput.rb +71 -0
- data/ext/lib/tk/label.rb +21 -0
- data/ext/lib/tk/labelframe.rb +29 -0
- data/ext/lib/tk/listbox.rb +282 -0
- data/ext/lib/tk/macpkg.rb +78 -0
- data/ext/lib/tk/menu.rb +681 -0
- data/ext/lib/tk/menubar.rb +131 -0
- data/ext/lib/tk/menuspec.rb +275 -0
- data/ext/lib/tk/message.rb +22 -0
- data/ext/lib/tk/mngfocus.rb +33 -0
- data/ext/lib/tk/msgcat.rb +296 -0
- data/ext/lib/tk/namespace.rb +551 -0
- data/ext/lib/tk/optiondb.rb +377 -0
- data/ext/lib/tk/optionobj.rb +212 -0
- data/ext/lib/tk/pack.rb +107 -0
- data/ext/lib/tk/package.rb +143 -0
- data/ext/lib/tk/palette.rb +55 -0
- data/ext/lib/tk/panedwindow.rb +258 -0
- data/ext/lib/tk/place.rb +128 -0
- data/ext/lib/tk/radiobutton.rb +71 -0
- data/ext/lib/tk/root.rb +95 -0
- data/ext/lib/tk/scale.rb +111 -0
- data/ext/lib/tk/scrollable.rb +82 -0
- data/ext/lib/tk/scrollbar.rb +177 -0
- data/ext/lib/tk/scrollbox.rb +39 -0
- data/ext/lib/tk/selection.rb +86 -0
- data/ext/lib/tk/spinbox.rb +119 -0
- data/ext/lib/tk/tagfont.rb +43 -0
- data/ext/lib/tk/text.rb +1596 -0
- data/ext/lib/tk/textimage.rb +88 -0
- data/ext/lib/tk/textmark.rb +204 -0
- data/ext/lib/tk/texttag.rb +318 -0
- data/ext/lib/tk/textwindow.rb +154 -0
- data/ext/lib/tk/timer.rb +669 -0
- data/ext/lib/tk/toplevel.rb +262 -0
- data/ext/lib/tk/ttk_selector.rb +76 -0
- data/ext/lib/tk/txtwin_abst.rb +39 -0
- data/ext/lib/tk/validation.rb +397 -0
- data/ext/lib/tk/variable.rb +1765 -0
- data/ext/lib/tk/virtevent.rb +139 -0
- data/ext/lib/tk/winfo.rb +392 -0
- data/ext/lib/tk/winpkg.rb +153 -0
- data/ext/lib/tk/wm.rb +552 -0
- data/ext/lib/tk/xim.rb +122 -0
- data/ext/lib/tkafter.rb +4 -0
- data/ext/lib/tkbgerror.rb +4 -0
- data/ext/lib/tkcanvas.rb +4 -0
- data/ext/lib/tkclass.rb +47 -0
- data/ext/lib/tkconsole.rb +4 -0
- data/ext/lib/tkdialog.rb +4 -0
- data/ext/lib/tkentry.rb +4 -0
- data/ext/lib/tkextlib/ICONS.rb +13 -0
- data/ext/lib/tkextlib/ICONS/icons.rb +129 -0
- data/ext/lib/tkextlib/ICONS/setup.rb +8 -0
- data/ext/lib/tkextlib/SUPPORT_STATUS +196 -0
- data/ext/lib/tkextlib/blt.rb +187 -0
- data/ext/lib/tkextlib/blt/barchart.rb +79 -0
- data/ext/lib/tkextlib/blt/bitmap.rb +112 -0
- data/ext/lib/tkextlib/blt/busy.rb +82 -0
- data/ext/lib/tkextlib/blt/component.rb +2145 -0
- data/ext/lib/tkextlib/blt/container.rb +28 -0
- data/ext/lib/tkextlib/blt/cutbuffer.rb +23 -0
- data/ext/lib/tkextlib/blt/dragdrop.rb +268 -0
- data/ext/lib/tkextlib/blt/eps.rb +32 -0
- data/ext/lib/tkextlib/blt/graph.rb +67 -0
- data/ext/lib/tkextlib/blt/htext.rb +111 -0
- data/ext/lib/tkextlib/blt/setup.rb +8 -0
- data/ext/lib/tkextlib/blt/spline.rb +23 -0
- data/ext/lib/tkextlib/blt/stripchart.rb +74 -0
- data/ext/lib/tkextlib/blt/table.rb +399 -0
- data/ext/lib/tkextlib/blt/tabnotebook.rb +110 -0
- data/ext/lib/tkextlib/blt/tabset.rb +500 -0
- data/ext/lib/tkextlib/blt/ted.rb +65 -0
- data/ext/lib/tkextlib/blt/tile.rb +21 -0
- data/ext/lib/tkextlib/blt/tile/button.rb +16 -0
- data/ext/lib/tkextlib/blt/tile/checkbutton.rb +17 -0
- data/ext/lib/tkextlib/blt/tile/frame.rb +16 -0
- data/ext/lib/tkextlib/blt/tile/label.rb +16 -0
- data/ext/lib/tkextlib/blt/tile/radiobutton.rb +17 -0
- data/ext/lib/tkextlib/blt/tile/scrollbar.rb +16 -0
- data/ext/lib/tkextlib/blt/tile/toplevel.rb +16 -0
- data/ext/lib/tkextlib/blt/tree.rb +1058 -0
- data/ext/lib/tkextlib/blt/treeview.rb +1272 -0
- data/ext/lib/tkextlib/blt/unix_dnd.rb +135 -0
- data/ext/lib/tkextlib/blt/vector.rb +256 -0
- data/ext/lib/tkextlib/blt/watch.rb +175 -0
- data/ext/lib/tkextlib/blt/win_printer.rb +61 -0
- data/ext/lib/tkextlib/blt/winop.rb +107 -0
- data/ext/lib/tkextlib/bwidget.rb +151 -0
- data/ext/lib/tkextlib/bwidget/arrowbutton.rb +21 -0
- data/ext/lib/tkextlib/bwidget/bitmap.rb +21 -0
- data/ext/lib/tkextlib/bwidget/button.rb +31 -0
- data/ext/lib/tkextlib/bwidget/buttonbox.rb +90 -0
- data/ext/lib/tkextlib/bwidget/combobox.rb +51 -0
- data/ext/lib/tkextlib/bwidget/dialog.rb +182 -0
- data/ext/lib/tkextlib/bwidget/dragsite.rb +31 -0
- data/ext/lib/tkextlib/bwidget/dropsite.rb +39 -0
- data/ext/lib/tkextlib/bwidget/dynamichelp.rb +63 -0
- data/ext/lib/tkextlib/bwidget/entry.rb +43 -0
- data/ext/lib/tkextlib/bwidget/label.rb +41 -0
- data/ext/lib/tkextlib/bwidget/labelentry.rb +80 -0
- data/ext/lib/tkextlib/bwidget/labelframe.rb +52 -0
- data/ext/lib/tkextlib/bwidget/listbox.rb +358 -0
- data/ext/lib/tkextlib/bwidget/mainframe.rb +128 -0
- data/ext/lib/tkextlib/bwidget/messagedlg.rb +192 -0
- data/ext/lib/tkextlib/bwidget/notebook.rb +166 -0
- data/ext/lib/tkextlib/bwidget/pagesmanager.rb +73 -0
- data/ext/lib/tkextlib/bwidget/panedwindow.rb +37 -0
- data/ext/lib/tkextlib/bwidget/panelframe.rb +57 -0
- data/ext/lib/tkextlib/bwidget/passwddlg.rb +44 -0
- data/ext/lib/tkextlib/bwidget/progressbar.rb +20 -0
- data/ext/lib/tkextlib/bwidget/progressdlg.rb +58 -0
- data/ext/lib/tkextlib/bwidget/scrollableframe.rb +40 -0
- data/ext/lib/tkextlib/bwidget/scrolledwindow.rb +38 -0
- data/ext/lib/tkextlib/bwidget/scrollview.rb +25 -0
- data/ext/lib/tkextlib/bwidget/selectcolor.rb +73 -0
- data/ext/lib/tkextlib/bwidget/selectfont.rb +86 -0
- data/ext/lib/tkextlib/bwidget/separator.rb +20 -0
- data/ext/lib/tkextlib/bwidget/setup.rb +8 -0
- data/ext/lib/tkextlib/bwidget/spinbox.rb +98 -0
- data/ext/lib/tkextlib/bwidget/statusbar.rb +52 -0
- data/ext/lib/tkextlib/bwidget/titleframe.rb +33 -0
- data/ext/lib/tkextlib/bwidget/tree.rb +453 -0
- data/ext/lib/tkextlib/bwidget/widget.rb +129 -0
- data/ext/lib/tkextlib/itcl.rb +13 -0
- data/ext/lib/tkextlib/itcl/incr_tcl.rb +178 -0
- data/ext/lib/tkextlib/itcl/setup.rb +13 -0
- data/ext/lib/tkextlib/itk.rb +13 -0
- data/ext/lib/tkextlib/itk/incr_tk.rb +446 -0
- data/ext/lib/tkextlib/itk/setup.rb +13 -0
- data/ext/lib/tkextlib/iwidgets.rb +94 -0
- data/ext/lib/tkextlib/iwidgets/buttonbox.rb +120 -0
- data/ext/lib/tkextlib/iwidgets/calendar.rb +125 -0
- data/ext/lib/tkextlib/iwidgets/canvasprintbox.rb +53 -0
- data/ext/lib/tkextlib/iwidgets/canvasprintdialog.rb +38 -0
- data/ext/lib/tkextlib/iwidgets/checkbox.rb +129 -0
- data/ext/lib/tkextlib/iwidgets/combobox.rb +104 -0
- data/ext/lib/tkextlib/iwidgets/dateentry.rb +20 -0
- data/ext/lib/tkextlib/iwidgets/datefield.rb +58 -0
- data/ext/lib/tkextlib/iwidgets/dialog.rb +20 -0
- data/ext/lib/tkextlib/iwidgets/dialogshell.rb +120 -0
- data/ext/lib/tkextlib/iwidgets/disjointlistbox.rb +50 -0
- data/ext/lib/tkextlib/iwidgets/entryfield.rb +185 -0
- data/ext/lib/tkextlib/iwidgets/extbutton.rb +40 -0
- data/ext/lib/tkextlib/iwidgets/extfileselectionbox.rb +46 -0
- data/ext/lib/tkextlib/iwidgets/extfileselectiondialog.rb +33 -0
- data/ext/lib/tkextlib/iwidgets/feedback.rb +35 -0
- data/ext/lib/tkextlib/iwidgets/fileselectionbox.rb +46 -0
- data/ext/lib/tkextlib/iwidgets/fileselectiondialog.rb +33 -0
- data/ext/lib/tkextlib/iwidgets/finddialog.rb +42 -0
- data/ext/lib/tkextlib/iwidgets/hierarchy.rb +365 -0
- data/ext/lib/tkextlib/iwidgets/hyperhelp.rb +50 -0
- data/ext/lib/tkextlib/iwidgets/labeledframe.rb +39 -0
- data/ext/lib/tkextlib/iwidgets/labeledwidget.rb +45 -0
- data/ext/lib/tkextlib/iwidgets/mainwindow.rb +67 -0
- data/ext/lib/tkextlib/iwidgets/menubar.rb +211 -0
- data/ext/lib/tkextlib/iwidgets/messagebox.rb +92 -0
- data/ext/lib/tkextlib/iwidgets/messagedialog.rb +20 -0
- data/ext/lib/tkextlib/iwidgets/notebook.rb +174 -0
- data/ext/lib/tkextlib/iwidgets/optionmenu.rb +92 -0
- data/ext/lib/tkextlib/iwidgets/panedwindow.rb +133 -0
- data/ext/lib/tkextlib/iwidgets/promptdialog.rb +131 -0
- data/ext/lib/tkextlib/iwidgets/pushbutton.rb +35 -0
- data/ext/lib/tkextlib/iwidgets/radiobox.rb +120 -0
- data/ext/lib/tkextlib/iwidgets/scopedobject.rb +24 -0
- data/ext/lib/tkextlib/iwidgets/scrolledcanvas.rb +353 -0
- data/ext/lib/tkextlib/iwidgets/scrolledframe.rb +59 -0
- data/ext/lib/tkextlib/iwidgets/scrolledhtml.rb +58 -0
- data/ext/lib/tkextlib/iwidgets/scrolledlistbox.rb +207 -0
- data/ext/lib/tkextlib/iwidgets/scrolledtext.rb +564 -0
- data/ext/lib/tkextlib/iwidgets/scrolledwidget.rb +20 -0
- data/ext/lib/tkextlib/iwidgets/selectionbox.rb +102 -0
- data/ext/lib/tkextlib/iwidgets/selectiondialog.rb +92 -0
- data/ext/lib/tkextlib/iwidgets/setup.rb +8 -0
- data/ext/lib/tkextlib/iwidgets/shell.rb +38 -0
- data/ext/lib/tkextlib/iwidgets/spindate.rb +48 -0
- data/ext/lib/tkextlib/iwidgets/spinint.rb +30 -0
- data/ext/lib/tkextlib/iwidgets/spinner.rb +169 -0
- data/ext/lib/tkextlib/iwidgets/spintime.rb +48 -0
- data/ext/lib/tkextlib/iwidgets/tabnotebook.rb +180 -0
- data/ext/lib/tkextlib/iwidgets/tabset.rb +144 -0
- data/ext/lib/tkextlib/iwidgets/timeentry.rb +25 -0
- data/ext/lib/tkextlib/iwidgets/timefield.rb +58 -0
- data/ext/lib/tkextlib/iwidgets/toolbar.rb +112 -0
- data/ext/lib/tkextlib/iwidgets/watch.rb +56 -0
- data/ext/lib/tkextlib/pkg_checker.rb +184 -0
- data/ext/lib/tkextlib/setup.rb +8 -0
- data/ext/lib/tkextlib/tcllib.rb +90 -0
- data/ext/lib/tkextlib/tcllib/README +135 -0
- data/ext/lib/tkextlib/tcllib/autoscroll.rb +158 -0
- data/ext/lib/tkextlib/tcllib/ctext.rb +160 -0
- data/ext/lib/tkextlib/tcllib/cursor.rb +97 -0
- data/ext/lib/tkextlib/tcllib/datefield.rb +57 -0
- data/ext/lib/tkextlib/tcllib/dialog.rb +84 -0
- data/ext/lib/tkextlib/tcllib/getstring.rb +134 -0
- data/ext/lib/tkextlib/tcllib/history.rb +73 -0
- data/ext/lib/tkextlib/tcllib/ico.rb +116 -0
- data/ext/lib/tkextlib/tcllib/ip_entry.rb +66 -0
- data/ext/lib/tkextlib/tcllib/panelframe.rb +72 -0
- data/ext/lib/tkextlib/tcllib/plotchart.rb +886 -0
- data/ext/lib/tkextlib/tcllib/ruler.rb +65 -0
- data/ext/lib/tkextlib/tcllib/screenruler.rb +68 -0
- data/ext/lib/tkextlib/tcllib/scrollwin.rb +61 -0
- data/ext/lib/tkextlib/tcllib/setup.rb +8 -0
- data/ext/lib/tkextlib/tcllib/style.rb +61 -0
- data/ext/lib/tkextlib/tcllib/superframe.rb +51 -0
- data/ext/lib/tkextlib/tcllib/swaplist.rb +150 -0
- data/ext/lib/tkextlib/tcllib/tablelist.rb +27 -0
- data/ext/lib/tkextlib/tcllib/tablelist_core.rb +782 -0
- data/ext/lib/tkextlib/tcllib/tablelist_tile.rb +25 -0
- data/ext/lib/tkextlib/tcllib/tkpiechart.rb +314 -0
- data/ext/lib/tkextlib/tcllib/tooltip.rb +95 -0
- data/ext/lib/tkextlib/tcllib/widget.rb +48 -0
- data/ext/lib/tkextlib/tclx.rb +13 -0
- data/ext/lib/tkextlib/tclx/setup.rb +8 -0
- data/ext/lib/tkextlib/tclx/tclx.rb +74 -0
- data/ext/lib/tkextlib/tile.rb +419 -0
- data/ext/lib/tkextlib/tile/dialog.rb +96 -0
- data/ext/lib/tkextlib/tile/setup.rb +8 -0
- data/ext/lib/tkextlib/tile/sizegrip.rb +29 -0
- data/ext/lib/tkextlib/tile/style.rb +316 -0
- data/ext/lib/tkextlib/tile/tbutton.rb +33 -0
- data/ext/lib/tkextlib/tile/tcheckbutton.rb +36 -0
- data/ext/lib/tkextlib/tile/tcombobox.rb +54 -0
- data/ext/lib/tkextlib/tile/tentry.rb +48 -0
- data/ext/lib/tkextlib/tile/tframe.rb +33 -0
- data/ext/lib/tkextlib/tile/tlabel.rb +33 -0
- data/ext/lib/tkextlib/tile/tlabelframe.rb +36 -0
- data/ext/lib/tkextlib/tile/tmenubutton.rb +36 -0
- data/ext/lib/tkextlib/tile/tnotebook.rb +139 -0
- data/ext/lib/tkextlib/tile/tpaned.rb +231 -0
- data/ext/lib/tkextlib/tile/tprogressbar.rb +56 -0
- data/ext/lib/tkextlib/tile/tradiobutton.rb +36 -0
- data/ext/lib/tkextlib/tile/treeview.rb +1239 -0
- data/ext/lib/tkextlib/tile/tscale.rb +53 -0
- data/ext/lib/tkextlib/tile/tscrollbar.rb +54 -0
- data/ext/lib/tkextlib/tile/tseparator.rb +33 -0
- data/ext/lib/tkextlib/tile/tsquare.rb +30 -0
- data/ext/lib/tkextlib/tkDND.rb +18 -0
- data/ext/lib/tkextlib/tkDND/setup.rb +8 -0
- data/ext/lib/tkextlib/tkDND/shape.rb +125 -0
- data/ext/lib/tkextlib/tkDND/tkdnd.rb +182 -0
- data/ext/lib/tkextlib/tkHTML.rb +13 -0
- data/ext/lib/tkextlib/tkHTML/htmlwidget.rb +453 -0
- data/ext/lib/tkextlib/tkHTML/setup.rb +8 -0
- data/ext/lib/tkextlib/tkimg.rb +36 -0
- data/ext/lib/tkextlib/tkimg/README +26 -0
- data/ext/lib/tkextlib/tkimg/bmp.rb +33 -0
- data/ext/lib/tkextlib/tkimg/gif.rb +33 -0
- data/ext/lib/tkextlib/tkimg/ico.rb +33 -0
- data/ext/lib/tkextlib/tkimg/jpeg.rb +33 -0
- data/ext/lib/tkextlib/tkimg/pcx.rb +33 -0
- data/ext/lib/tkextlib/tkimg/pixmap.rb +44 -0
- data/ext/lib/tkextlib/tkimg/png.rb +33 -0
- data/ext/lib/tkextlib/tkimg/ppm.rb +33 -0
- data/ext/lib/tkextlib/tkimg/ps.rb +33 -0
- data/ext/lib/tkextlib/tkimg/setup.rb +8 -0
- data/ext/lib/tkextlib/tkimg/sgi.rb +33 -0
- data/ext/lib/tkextlib/tkimg/sun.rb +33 -0
- data/ext/lib/tkextlib/tkimg/tga.rb +33 -0
- data/ext/lib/tkextlib/tkimg/tiff.rb +33 -0
- data/ext/lib/tkextlib/tkimg/window.rb +33 -0
- data/ext/lib/tkextlib/tkimg/xbm.rb +33 -0
- data/ext/lib/tkextlib/tkimg/xpm.rb +33 -0
- data/ext/lib/tkextlib/tktable.rb +14 -0
- data/ext/lib/tkextlib/tktable/setup.rb +8 -0
- data/ext/lib/tkextlib/tktable/tktable.rb +957 -0
- data/ext/lib/tkextlib/tktrans.rb +14 -0
- data/ext/lib/tkextlib/tktrans/setup.rb +8 -0
- data/ext/lib/tkextlib/tktrans/tktrans.rb +64 -0
- data/ext/lib/tkextlib/treectrl.rb +13 -0
- data/ext/lib/tkextlib/treectrl/setup.rb +8 -0
- data/ext/lib/tkextlib/treectrl/tktreectrl.rb +2461 -0
- data/ext/lib/tkextlib/trofs.rb +13 -0
- data/ext/lib/tkextlib/trofs/setup.rb +8 -0
- data/ext/lib/tkextlib/trofs/trofs.rb +51 -0
- data/ext/lib/tkextlib/version.rb +6 -0
- data/ext/lib/tkextlib/vu.rb +48 -0
- data/ext/lib/tkextlib/vu/bargraph.rb +61 -0
- data/ext/lib/tkextlib/vu/charts.rb +53 -0
- data/ext/lib/tkextlib/vu/dial.rb +102 -0
- data/ext/lib/tkextlib/vu/pie.rb +282 -0
- data/ext/lib/tkextlib/vu/setup.rb +8 -0
- data/ext/lib/tkextlib/vu/spinbox.rb +22 -0
- data/ext/lib/tkextlib/winico.rb +14 -0
- data/ext/lib/tkextlib/winico/setup.rb +8 -0
- data/ext/lib/tkextlib/winico/winico.rb +224 -0
- data/ext/lib/tkfont.rb +4 -0
- data/ext/lib/tkmacpkg.rb +4 -0
- data/ext/lib/tkmenubar.rb +4 -0
- data/ext/lib/tkmngfocus.rb +4 -0
- data/ext/lib/tkpalette.rb +4 -0
- data/ext/lib/tkscrollbox.rb +4 -0
- data/ext/lib/tktext.rb +4 -0
- data/ext/lib/tkvirtevent.rb +4 -0
- data/ext/lib/tkwinpkg.rb +4 -0
- data/ext/old-README.tcltklib.eucj +159 -0
- data/ext/stubs.c +531 -0
- data/ext/stubs.h +33 -0
- data/ext/tcltklib.c +10155 -0
- data/ext/tkutil/.cvsignore +3 -0
- data/ext/tkutil/depend +1 -0
- data/ext/tkutil/extconf.rb +14 -0
- data/ext/tkutil/tkutil.c +1789 -0
- metadata +418 -0
@@ -0,0 +1,469 @@
|
|
1
|
+
(tof)
|
2
|
+
2005/07/05 Hidetoshi NAGAI
|
3
|
+
|
4
|
+
This document discribes about the 'tcltklib' library. Although there
|
5
|
+
is the 'tcltk' library (tcltk.rb) under this directory, no description
|
6
|
+
in this document (because it is not maintained recently).
|
7
|
+
|
8
|
+
==============================================================
|
9
|
+
module TclTklib
|
10
|
+
: Defines methods to do operations which are independed on
|
11
|
+
: Tcl/Tk interpreters
|
12
|
+
|
13
|
+
module TclTkLib::EventFlag
|
14
|
+
: Defines flags to define taget events on 'do_one_event' methos.
|
15
|
+
: When to give, please use bit-operator (e.g. WINDOW | DONT_WAIT).
|
16
|
+
|
17
|
+
[constants]
|
18
|
+
NONE
|
19
|
+
: Is 0. It means "there is no target". But on the real
|
20
|
+
: operation, it is same to ALL.
|
21
|
+
|
22
|
+
WINDOW
|
23
|
+
: 'window' event is processed.
|
24
|
+
|
25
|
+
FILE
|
26
|
+
: 'file' event is processed.
|
27
|
+
|
28
|
+
TIMER
|
29
|
+
: 'timer' event is processed.
|
30
|
+
|
31
|
+
IDLE
|
32
|
+
: 'idle' operation (e.g. 're-draw'; the operations when the
|
33
|
+
: other kinds of events doesn't occur) is processed.
|
34
|
+
|
35
|
+
ALL
|
36
|
+
: All kinds of events are processed.
|
37
|
+
: Same to 'WINDOW | FILE | TIMER | IDLE'.
|
38
|
+
|
39
|
+
DONT_WAIT
|
40
|
+
: Without this flag, 'do_one_event' waits the occurence of
|
41
|
+
: a target event. With this flag, doesn't wait and returns
|
42
|
+
: false if there is no target event for processing.
|
43
|
+
|
44
|
+
module TclTkLib::VarAccessFlag
|
45
|
+
: Defines flags to give '_get_variable' and so on. When to give,
|
46
|
+
: please use bit-operator (e.g. GLOBAL_ONLY | LEAVE_ERR_MSG ).
|
47
|
+
|
48
|
+
[constants]
|
49
|
+
NONE
|
50
|
+
: Is 0. It means "set no flag".
|
51
|
+
|
52
|
+
GLOBAL_ONLY
|
53
|
+
: (site Tcl/Tk's man page)
|
54
|
+
: Under normal circumstances the procedures look up
|
55
|
+
: variables as follows: If a procedure call is active
|
56
|
+
: in interp, a variable is looked up at the current
|
57
|
+
: level of procedure call. Otherwise, a variable is
|
58
|
+
: looked up first in the current namespace, then in
|
59
|
+
: the global namespace. However, if this bit is set
|
60
|
+
: in flags then the variable is looked up only in the
|
61
|
+
: global namespace even if there is a procedure call
|
62
|
+
: active. If both GLOBAL_ONLY and NAMESPACE_ONLY are
|
63
|
+
: given, GLOBAL_ONLY is ignored.
|
64
|
+
:
|
65
|
+
: *** ATTENTION ***
|
66
|
+
: Tcl7.6 doesn't have namespaces. So NAMESPACE_ONLY
|
67
|
+
: is defined as 0, and then GLOBAL_ONLY is available
|
68
|
+
: even if flag is (GLOBAL_ONLY | NAMESPACE_ONLY).
|
69
|
+
|
70
|
+
NAMESPACE_ONLY
|
71
|
+
: (site Tcl/Tk's man page)
|
72
|
+
: Under normal circumstances the procedures look up
|
73
|
+
: variables as follows: If a procedure call is active
|
74
|
+
: in interp, a variable is looked up at the current
|
75
|
+
: level of procedure call. Otherwise, a variable is
|
76
|
+
: looked up first in the current namespace, then in
|
77
|
+
: the global namespace. However, if this bit is set
|
78
|
+
: in flags then the variable is looked up only in the
|
79
|
+
: current namespace even if there is a procedure call
|
80
|
+
: active.
|
81
|
+
:
|
82
|
+
: *** ATTENTION ***
|
83
|
+
: Tcl7.6 doesn't have namespaces. So NAMESPACE_ONLY
|
84
|
+
: is defined as 0.
|
85
|
+
|
86
|
+
LEAVE_ERR_MSG
|
87
|
+
: (site Tcl/Tk's man page)
|
88
|
+
: If an error is returned and this bit is set in flags,
|
89
|
+
: then an error message will be left in the interpreter's
|
90
|
+
: result, where it can be retrieved with Tcl_GetObjResult
|
91
|
+
: or Tcl_GetStringResult. If this flag bit isn't set then
|
92
|
+
: no error message is left and the interpreter's result
|
93
|
+
: will not be modified.
|
94
|
+
|
95
|
+
APPEND_VALUE
|
96
|
+
: (site Tcl/Tk's man page)
|
97
|
+
: If this bit is set then newValue is appended to the
|
98
|
+
: current value, instead of replacing it. If the variable
|
99
|
+
: is currently undefined, then this bit is ignored.
|
100
|
+
|
101
|
+
LIST_ELEMENT
|
102
|
+
: (site Tcl/Tk's man page)
|
103
|
+
: If this bit is set, then newValue is converted to a
|
104
|
+
: valid Tcl list element before setting (or appending
|
105
|
+
: to) the variable. A separator space is appended before
|
106
|
+
: the new list element unless the list element is going
|
107
|
+
: to be the first element in a list or sublist (i.e. the
|
108
|
+
: variable's current value is empty, or contains the
|
109
|
+
: single character ``{'', or ends in `` }'').
|
110
|
+
|
111
|
+
PARSE_VARNAME
|
112
|
+
: (site Tcl/Tk's man page)
|
113
|
+
: If this bit is set when calling _set_variable and so
|
114
|
+
: on, var_name argument may contain both an array and an
|
115
|
+
: element name: if the name contains an open parenthesis
|
116
|
+
: and ends with a close parenthesis, then the value
|
117
|
+
: between the parentheses is treated as an element name
|
118
|
+
: (which can have any string value) and the characters
|
119
|
+
: before the first open parenthesis are treated as the
|
120
|
+
: name of an array variable. If the flag PARSE_VARNAME
|
121
|
+
: is given, index_name argument should be 'nil' since the
|
122
|
+
: array and element names are taken from var_name.
|
123
|
+
:
|
124
|
+
: *** ATTENTION ***
|
125
|
+
: Tcl7.6 doesn't have this flag. So PARSE_VARNAME is
|
126
|
+
: defined as 0.
|
127
|
+
|
128
|
+
module TclTkLib::RELEASE_TYPE
|
129
|
+
: Defines release type number of Tcl/Tk
|
130
|
+
|
131
|
+
ALPHA
|
132
|
+
: ALPHA release
|
133
|
+
|
134
|
+
BETA
|
135
|
+
: BETA release
|
136
|
+
|
137
|
+
FINAL
|
138
|
+
: FINAL release
|
139
|
+
|
140
|
+
[module methods]
|
141
|
+
get_version()
|
142
|
+
: return an array of major, minor, release-type number,
|
143
|
+
: number, release-type name, and patchlevel of current
|
144
|
+
: Tcl/Tk library.
|
145
|
+
|
146
|
+
mainloop(check_root = true)
|
147
|
+
: Starts the eventloop. If 'check_root' is true, this method
|
148
|
+
: doesn't return when a root widget exists.
|
149
|
+
: If 'check_root' is false, doen't return by the other
|
150
|
+
: reasons than exceptions.
|
151
|
+
|
152
|
+
mainloop_thread?
|
153
|
+
: Returns whether the current thread executes the eventloop.
|
154
|
+
: If true, the eventloop is working on the current thread.
|
155
|
+
: If no eventloop is working, this method returns nil.
|
156
|
+
: And if the other thread executes the eventloop, returns false.
|
157
|
+
:
|
158
|
+
: *** ATTENTION ***
|
159
|
+
: When this methods returns false, it is dangerous to call a Tk
|
160
|
+
: interpreter directly.
|
161
|
+
|
162
|
+
mainloop_watchdog(check_root = true)
|
163
|
+
: On the normal eventloop, some kinds of callback operations
|
164
|
+
: cause deadlock. To avoid some of such deadlocks, this
|
165
|
+
: method starts an eventloop and a watchdog-thread.
|
166
|
+
|
167
|
+
do_one_event(flag = TclTkLib::EventFlag::ALL |
|
168
|
+
TclTkLib::EventFlag::DONT_WAIT)
|
169
|
+
: Do one event for processing. When processed an event,
|
170
|
+
: returns true.
|
171
|
+
: If NOT set DONT_WAIT flag, this method waits occurrence of
|
172
|
+
: a target event.
|
173
|
+
: If set DONT_WAIT flag and no event for processing, returns
|
174
|
+
: false immediately.
|
175
|
+
: If $SAFE >= 4, or $SAFE >= 1 and the flag is tainted,
|
176
|
+
: force to set DONT_WAIT flag.
|
177
|
+
|
178
|
+
set_eventloop_tick(timer_tick)
|
179
|
+
: Define the interval of thread-switching with an integer
|
180
|
+
: value of mili-seconds.
|
181
|
+
: Default timer_tick is 0. It means that thread-switching
|
182
|
+
: is based on the count of processed events.
|
183
|
+
: ( see 'set_eventloop_weight' method )
|
184
|
+
: However, if the eventloop thread is the only thread,
|
185
|
+
: timer_tick cannt be set to 0. If 0, then is set to 100 ms
|
186
|
+
: automatically (see NO_THREAD_INTERRUPT_TIME on tcltklib.c).
|
187
|
+
: On $SAFE >= 4, cannot call this method.
|
188
|
+
|
189
|
+
get_eventloop_tick
|
190
|
+
: Get current value of 'timer_tick'
|
191
|
+
|
192
|
+
set_no_event_wait(no_event_wait)
|
193
|
+
: Define sleeping time of the eventloop when two or more
|
194
|
+
: thread are running and there is no event for processing.
|
195
|
+
: Default value is 20 (ms).
|
196
|
+
: If the eventloop thread is the only thread, this value is
|
197
|
+
: invalid.
|
198
|
+
: On $SAFE >= 4, cannot call this method.
|
199
|
+
|
200
|
+
get_no_event_wait
|
201
|
+
: Get current value of 'no_event_wait'.
|
202
|
+
|
203
|
+
set_eventloop_weight(loop_max, no_event_tick)
|
204
|
+
: Define the weight parameters for the eventloop thread.
|
205
|
+
: That is invalid when the eventloop is the only thread.
|
206
|
+
: 'loop_max' is the max events for thread-switching.
|
207
|
+
: 'no_event_tick' is the increment value of the event count
|
208
|
+
: when no event for processing (And then, the eventloop thead
|
209
|
+
: sleeps 'no_event_wait' mili-seconds).
|
210
|
+
: 'loop_max == 800' and 'no_event_tick == 10' are defalut.
|
211
|
+
: On $SAFE >= 4, cannot call this method.
|
212
|
+
|
213
|
+
get_eventloop_weight
|
214
|
+
: Get current values of 'loop_max' and 'no_event_tick'.
|
215
|
+
|
216
|
+
mainloop_abort_on_exception=(bool)
|
217
|
+
: Define whether the eventloop stops on exception or not.
|
218
|
+
: If true (default value), stops on exception.
|
219
|
+
: If false, show a warinig message but ignore the exception.
|
220
|
+
: If nil, no warning message and ignore the excepsion.
|
221
|
+
: This parameter is sometimes useful when multiple Tk
|
222
|
+
: interpreters are working. Because the only one eventloop
|
223
|
+
: admins all Tk interpreters, sometimes exception on a
|
224
|
+
: interpreter kills the eventloop thread. Even if such
|
225
|
+
: situation, when abort_on_exception == false or nil,
|
226
|
+
: the eventloop ignores the exception and continue to working.
|
227
|
+
: On $SAFE >= 4, cannot call this method.
|
228
|
+
|
229
|
+
mainloop_abort_on_exception
|
230
|
+
: Get current status of that.
|
231
|
+
|
232
|
+
num_of_mainwindows
|
233
|
+
: Returns the number of main-windows (root-widget).
|
234
|
+
: Because there is only one main-window for one Tk interpreter,
|
235
|
+
: the value is same to the number of interpreters which has
|
236
|
+
: available Tk functions.
|
237
|
+
|
238
|
+
_merge_tklist(str, str, ... )
|
239
|
+
: Get a Tcl's list string from arguments with a Tcl/Tk's
|
240
|
+
: library function. Each arguemnt is converted to a valid
|
241
|
+
: Tcl list element.
|
242
|
+
|
243
|
+
_conv_listelement(str)
|
244
|
+
: Convert the argument to a valid Tcl list element with
|
245
|
+
: Tcl/Tk's library function.
|
246
|
+
|
247
|
+
_toUTF8(str, encoding=nil)
|
248
|
+
_fromUTF8(str, encoding=nil)
|
249
|
+
: Call the function (which is internal function of Tcl/Tk) to
|
250
|
+
: convert to/from a UTF8 string.
|
251
|
+
|
252
|
+
_subst_UTF_backslash(str)
|
253
|
+
_subst_Tcl_backslash(str)
|
254
|
+
: Substitute backslash sequence with Tcl's rule (include \uhhhh;
|
255
|
+
: give a sixteen-bit hexadecimal value for Unicode character).
|
256
|
+
: _subst_Tcl_backslash method parses all backslash sequence.
|
257
|
+
: _subst_UTF_backslash method parses \uhhhh only.
|
258
|
+
|
259
|
+
encoding_system
|
260
|
+
encoding_system=(encoding)
|
261
|
+
: Get and set Tcl's system encoding.
|
262
|
+
|
263
|
+
encoding
|
264
|
+
encoding=(encoding)
|
265
|
+
: alias of encoding_system / encoding_system=
|
266
|
+
: ( probably, Ruby/Tk's tk.rb will override them )
|
267
|
+
|
268
|
+
|
269
|
+
class TclTkIp
|
270
|
+
[class methods]
|
271
|
+
new(ip_name=nil, options='')
|
272
|
+
: Generate an instance of TclTkIp class.
|
273
|
+
: If 'ip_name' argument is given as a string, it is the name
|
274
|
+
: of the Tk interpreter which is shown by 'winfo interps'
|
275
|
+
: command.
|
276
|
+
: 'options' argument accepts a string which is the command
|
277
|
+
: line options of wish; such as '-geometry' or '-use'.
|
278
|
+
: The information is used to generate the root widget of the
|
279
|
+
: interpreter.
|
280
|
+
: ( e.g. TclTkIp.new('FOO', '-geometry 500x200 -use 0x2200009') )
|
281
|
+
: If is given nil or falsr for the 'option' argument, generates
|
282
|
+
: the Tcl interpreter without Tk library. Then the interpreter
|
283
|
+
: doesn't need GUI environment. Therefore, even if a window
|
284
|
+
: system doesn't exist or cannot be used, Ruby can control the
|
285
|
+
: Tcl interpreter and the extention libraries loaded on the
|
286
|
+
: interpreter.
|
287
|
+
|
288
|
+
[instance methods]
|
289
|
+
create_slave(name, safe=false)
|
290
|
+
: Create a slave interpreter.
|
291
|
+
: The parent of the interpreter is the receiver of this method.
|
292
|
+
: The name of the slave interpreter is given by 'name' argument.
|
293
|
+
: The 'safe' argument decides whether the slave interpreter is
|
294
|
+
: created as a safe interpreter or not. If true, create a safe
|
295
|
+
: interpreter. Default is false. However, if the parent
|
296
|
+
: interpreter is a safe interpreter, the created interpreter is
|
297
|
+
: a safe interpreter (ignore 'safe' argument value).
|
298
|
+
: If $SAFE >= 4, can create a safe interpreter only.
|
299
|
+
|
300
|
+
make_safe
|
301
|
+
: Make the interpreter to the safe interpreter, and returns
|
302
|
+
: self. If fail, raise RuntimeError.
|
303
|
+
|
304
|
+
safe?
|
305
|
+
: Check whether the interpreter is the safe interpreter.
|
306
|
+
: If is the safe interpreter, returns true.
|
307
|
+
|
308
|
+
allow_ruby_exit?
|
309
|
+
: Return the mode whether 'exit' function of ruby or 'exit'
|
310
|
+
: command of Tcl/Tk can quit the ruby process or not on the
|
311
|
+
: interpreter. If false, such a command quit the interpreter
|
312
|
+
: only.
|
313
|
+
: The default value for a master interpreter is true, and
|
314
|
+
: for a slave interpreter is false.
|
315
|
+
|
316
|
+
allow_ruby_exit=(mode)
|
317
|
+
: Change the mode of 'allow_ruby_exit?'.
|
318
|
+
: If $SAFE >= 4 or the interpreter is a "safe" interpreter,
|
319
|
+
: this is not permitted (raise an exception).
|
320
|
+
|
321
|
+
delete
|
322
|
+
: Delete the interpreter.
|
323
|
+
: The deleted interpreter doesn't accept command and then
|
324
|
+
: raise an exception.
|
325
|
+
|
326
|
+
deleted?
|
327
|
+
: Check whether the interpreter is already deleted.
|
328
|
+
: If deleted, returns true.
|
329
|
+
|
330
|
+
has_mainwindow?
|
331
|
+
: Check whether the interpreter has a MainWindow (root widget).
|
332
|
+
: If has, returns true. If doesn't, returns false.
|
333
|
+
: If IP is already deleted, returns nil.
|
334
|
+
|
335
|
+
restart
|
336
|
+
: Restart Tk part of the interpreter.
|
337
|
+
: Use this when you need Tk functions after destroying the
|
338
|
+
: root widget.
|
339
|
+
: On $SAFE >= 4, cannot call this method.
|
340
|
+
|
341
|
+
_eval(str)
|
342
|
+
_invoke(*args)
|
343
|
+
: Estimates the arguments as a command on the Tk interpreter.
|
344
|
+
: The argument of _eval is a script of Tcl/Tk.
|
345
|
+
: Each argument of _invoke is a token of one command line of
|
346
|
+
: Tcl/Tk.
|
347
|
+
: Because the operation of _invoke doesn't through the
|
348
|
+
: command line parser of Tk interpreter, the cost of
|
349
|
+
: estimation is smaller than _eval. However, auto_load
|
350
|
+
: mechanism of the Tk interpreter doesn't work on _invoke.
|
351
|
+
: So _invoke can call only the command which already
|
352
|
+
: registered on the interpreter by 'load' command and so on.
|
353
|
+
: On _eval command, auto_load mechanism words. So if succeed
|
354
|
+
: to _eval and regist the command once, after that, the
|
355
|
+
: command can be called by _invoke.
|
356
|
+
|
357
|
+
_toUTF8(str, encoding=nil)
|
358
|
+
_fromUTF8(str, encoding=nil)
|
359
|
+
: Call the function (which is internal function of Tcl/Tk) to
|
360
|
+
: convert to/from a UTF8 string.
|
361
|
+
|
362
|
+
_thread_vwait(var_name)
|
363
|
+
_thread_tkwait(mode, target)
|
364
|
+
: 'vwait' or 'tkwait' with thread support.
|
365
|
+
: The difference from normal 'vwait' or 'tkwait' command is
|
366
|
+
: doing independent wait from the vwait stack when they are
|
367
|
+
: called on the other thread than the eventloop thread.
|
368
|
+
: In the case of Tcl/Tk's vwait / tkwait, if 2nd vwait /
|
369
|
+
: tkwait is called on waiting for 1st vwait / tkwait,
|
370
|
+
: returns the order of [2nd]->[1st] regardless of the order
|
371
|
+
: of when the wait condition was fulfilled.
|
372
|
+
: If _thread_vwait / _thread_tkwait is called on the
|
373
|
+
: eventloop thread, there is no difference from vwait /
|
374
|
+
: tkwait. But if called on the other thread than the
|
375
|
+
: eventloop, stops the thread. And when the wait condition
|
376
|
+
: is fulfilled, the thread restarts. The meaning of
|
377
|
+
: "independent from the vwait stack" is that the timing of
|
378
|
+
: restarting is independent from the waiting status of the
|
379
|
+
: other threads. That is, even if the eventloop thread is
|
380
|
+
: waiting by vwait and is not fulfilled the condition,
|
381
|
+
: _thread_vwait completes the waiting when its waiting
|
382
|
+
: condition is fulfilled and the thread which stopped by
|
383
|
+
: _thread_vwait can continue the operation.
|
384
|
+
|
385
|
+
_return_value
|
386
|
+
: Get the last result value on the interpreter.
|
387
|
+
|
388
|
+
_get_variable(var_name, flag)
|
389
|
+
_get_variable2(var_name, index_name, flag)
|
390
|
+
: Get the current value of a variable. If specified a
|
391
|
+
: index_name (see also the PARSE_VARNAME flag), get the
|
392
|
+
: value of the index_name element.
|
393
|
+
|
394
|
+
_set_variable(var_name, value, flag)
|
395
|
+
_set_variable2(var_name, index_name, value, flag)
|
396
|
+
: Create or modify a variable. If specified a index_name
|
397
|
+
: (see also the PARSE_VARNAME flag), create or modify the
|
398
|
+
: index_name element.
|
399
|
+
|
400
|
+
_unset_variable(var_name)
|
401
|
+
_unset_variable2(var_name, index_name)
|
402
|
+
: Remove a variable. If specified a index_name (see also
|
403
|
+
: the PARSE_VARNAME flag), remove the index_name element.
|
404
|
+
|
405
|
+
_get_global_var(var_name)
|
406
|
+
_get_global_var2(var_name, index_name)
|
407
|
+
_set_global_var(var_name, value)
|
408
|
+
_set_global_var2(var_name, index_name, value)
|
409
|
+
_unset_global_var(var_name)
|
410
|
+
_unset_global_var2(var_name, index_name)
|
411
|
+
: Call the associated method with the flag argument
|
412
|
+
: (GLOBAL_ONLY | LEAVE_ERR_MSG).
|
413
|
+
|
414
|
+
_split_tklist(str)
|
415
|
+
: Split the argument with Tcl/Tk's library function and
|
416
|
+
: get an array as a list of Tcl list elements.
|
417
|
+
|
418
|
+
_merge_tklist(str, str, ... )
|
419
|
+
: Get a Tcl's list string from arguments with a Tcl/Tk's
|
420
|
+
: library function. Each arguemnt is converted to a valid
|
421
|
+
: Tcl list element.
|
422
|
+
|
423
|
+
_conv_listelement(str)
|
424
|
+
: Convert the argument to a valid Tcl list element with
|
425
|
+
: Tcl/Tk's library function.
|
426
|
+
|
427
|
+
mainloop
|
428
|
+
mainloop_watchdog
|
429
|
+
: If on the slave interpreter, never start an eventloop and
|
430
|
+
: returns nil.
|
431
|
+
: With the exception that, same to the TclTkLib module method
|
432
|
+
: with the same name.
|
433
|
+
|
434
|
+
do_one_event
|
435
|
+
: With the exception that the argument is forced to set
|
436
|
+
: DONT_WAIT flag on the slave interpreter, same to
|
437
|
+
: TclTkLib#do_one_event.
|
438
|
+
|
439
|
+
set_eventloop_tick
|
440
|
+
get_eventloop_tick
|
441
|
+
set_no_event_wait
|
442
|
+
get_no_event_wait
|
443
|
+
set_eventloop_weight
|
444
|
+
get_eventloop_weight
|
445
|
+
mainloop_abort_on_exception
|
446
|
+
mainloop_abort_on_exception=
|
447
|
+
: With the exception that it is ignored to set value on the
|
448
|
+
: slave interpreter, same to the TclTkLib module method with
|
449
|
+
: the same name.
|
450
|
+
|
451
|
+
encoding_table
|
452
|
+
: For Ruby m17n. Return encoding relation table between Ruby's
|
453
|
+
: Encoding object and Tcl's encoding name.
|
454
|
+
|
455
|
+
class TkCallbackBreak < StandardError
|
456
|
+
class TkCallbackContinue < StandardError
|
457
|
+
: They are exception classes to break or continue the Tk callback
|
458
|
+
: operation.
|
459
|
+
: If raise TkCallbackBreak on the callback procedure, Ruby returns
|
460
|
+
: 'break' code to Tk interpreter (Then the Tk interpreter will
|
461
|
+
: break the operation for the current event).
|
462
|
+
: If raise TkCallbackContinue, returns 'continue' code (Then the Tk
|
463
|
+
: interpreter will break the operateion for the current bindtag and
|
464
|
+
: starts the operation for the next buindtag for the current event).
|
465
|
+
: However, current tcltklib supports Ruby's 'break' and 'next' to
|
466
|
+
: get the same effect. That is, those classes are obsolete. Those
|
467
|
+
: exist for backward compatibility.
|
468
|
+
|
469
|
+
(eof)
|