diff options
Diffstat (limited to 'ext/tk/sample/demos-en')
-rw-r--r-- | ext/tk/sample/demos-en/ChangeLog.prev | 2 | ||||
-rw-r--r-- | ext/tk/sample/demos-en/README | 28 | ||||
-rw-r--r-- | ext/tk/sample/demos-en/README.1st | 8 | ||||
-rw-r--r-- | ext/tk/sample/demos-en/README.tkencoding | 4 | ||||
-rw-r--r-- | ext/tk/sample/demos-en/browse1 | 22 | ||||
-rw-r--r-- | ext/tk/sample/demos-en/browse2 | 22 | ||||
-rw-r--r-- | ext/tk/sample/demos-en/doc.org/license.terms | 2 | ||||
-rw-r--r-- | ext/tk/sample/demos-en/doc.org/license.terms.tk80 | 2 | ||||
-rw-r--r-- | ext/tk/sample/demos-en/ixset | 28 | ||||
-rw-r--r-- | ext/tk/sample/demos-en/ixset2 | 54 | ||||
-rw-r--r-- | ext/tk/sample/demos-en/rmt | 68 | ||||
-rw-r--r-- | ext/tk/sample/demos-en/rolodex | 6 | ||||
-rw-r--r-- | ext/tk/sample/demos-en/square | 12 | ||||
-rw-r--r-- | ext/tk/sample/demos-en/tcolor | 18 | ||||
-rw-r--r-- | ext/tk/sample/demos-en/timer | 2 | ||||
-rw-r--r-- | ext/tk/sample/demos-en/widget | 136 |
16 files changed, 207 insertions, 207 deletions
diff --git a/ext/tk/sample/demos-en/ChangeLog.prev b/ext/tk/sample/demos-en/ChangeLog.prev index 536ce30abe..ba808eca8b 100644 --- a/ext/tk/sample/demos-en/ChangeLog.prev +++ b/ext/tk/sample/demos-en/ChangeLog.prev @@ -6,4 +6,4 @@ * Added test to widget and hello versus Tk::TCL_VERSION & Tk::JAPANIZED_TK (per Guy Decoux in [ruby-talk:18559]) before requiring tkencoding.rb. -
\ No newline at end of file + diff --git a/ext/tk/sample/demos-en/README b/ext/tk/sample/demos-en/README index 2908aa38e4..a6ea4fae8c 100644 --- a/ext/tk/sample/demos-en/README +++ b/ext/tk/sample/demos-en/README @@ -1,14 +1,14 @@ -Current Maintainer: +Current Maintainer: Jonathan Conway rise@knavery.net - Please direct all bug reports/requests/suggestions to the above + Please direct all bug reports/requests/suggestions to the above address. Notes: -* The files hello and widget have been changed to test Tk::TCL_VERSION +* The files hello and widget have been changed to test Tk::TCL_VERSION and Tk::JAPANIZED_TK before requiring tkencoding.rb to prevent an infinite loop. This test was taken from a message in [ruby-talk:18559] by Guy Decoux. @@ -18,7 +18,7 @@ Notes: able to use images exported by a graphics program as Windows bitmaps with this demo collection nor will you be able to edit the included images without setting the file type correctly. - + -- Jonathan Conway, 2001-07-26 @@ -28,19 +28,19 @@ Notes: # To create this version of the Ruby/Tk widget demo, I took the # ruby-tk81-demos and removed all the Kanji strings and comments. I # have tried to restore the original English strings and comments -# using the Tcl/Tk8.2.2 version of the widget demo. +# using the Tcl/Tk8.2.2 version of the widget demo. # # When I tried running the Kanji version, all I got was a mostly blank # panel with a non-functional "File" button. I disovered that if all # non-ASCII characters were replaced with blanks, then I could get the -# gutted stuff running. +# gutted stuff running. # # Since English Ruby/Tk documentation is lacking and I needed this # code to see how it worked and to use as the basis of my try-it # prototype (The Ruby Yielding Interactive Toolkit), plus the fact # that no help was forthcoming for making the Kanji version work (plus # the fact that I can't read Kanji anyway), I decided to embark on -# this English restoration project. +# this English restoration project. # # Thanks to everyone who worked on the original Ruby/Tk widget demo # (and the preceding Tcl/Tk version for that matter). The @@ -86,13 +86,13 @@ Windows(Cygwin)において、サンプルを動かすにはrubyを-Keというオプションを付 <eban@os.rim.or.jp> ---------------------------------------------------------------------------- - Ruby/Tk widget-demo + Ruby/Tk widget-demo version 1.1 ( 1998/07/24 ) 永井@知能.九工大 (nagai@ai.kyutech.ac.jp) -標準配布の Tcl/Tk 拡張パッケージを取り込んだ Ruby (以下 Ruby/Tk と呼びます) +標準配布の Tcl/Tk 拡張パッケージを取り込んだ Ruby (以下 Ruby/Tk と呼びます) では,Tk widget を用いた GUI の作成を行うことができます.実際に GUI を作成 -していく場合には様々な実例がサンプルとして存在すると便利なのですが,Ruby/Tk +していく場合には様々な実例がサンプルとして存在すると便利なのですが,Ruby/Tk にはそのような適当なサンプルスクリプト集合は存在しませんでした.それに対し, 拡張パッケージの元である Tcl/Tk には,Tk widget を用いてどのようなことがで きるかを示すものとして widget-demo が存在しおり,Tcl/Tk を用いた GUI の作成 @@ -118,21 +118,21 @@ Tcl/Tk には適当な参考書が何冊か存在していますから,Ruby/Tk スクリプトを作成 でしょう.Ruby/Tk 版の記述を widget-demo を Tcl/Tk 版の記述に近いものにして おけば,その対比によって,Ruby/Tk の理解を早めることができると考えられます. 一旦 Ruby/Tk での 各 widget の使用方法を習得してしまえば,Ruby らしいスクリ -プトを作成することは難しくないでしょう.本アーカイブのスクリプトは,Ruby/Tk +プトを作成することは難しくないでしょう.本アーカイブのスクリプトは,Ruby/Tk を最初に習得するまでの踏台として利用していただければ幸いです. widget-demo の移植にあたっては,次の方にも移植したスクリプトを提供していただ きました.ここに感謝の意を表します. - 立石@JAIST (ttate@jaist.ac.jp) さん + 立石@JAIST (ttate@jaist.ac.jp) さん 平松祥史 (hiramatu@cdrom.co.jp) さん -平松さんによる Ruby/Tk 入門の Web page (http://www.cdrom.co.jp/~hiramatu/) +平松さんによる Ruby/Tk 入門の Web page (http://www.cdrom.co.jp/~hiramatu/) も Ruby/Tk の習得に有用と思えますので,ぜひご参照ください. また,前橋 (maebashi@iij.ad.jp) さんをはじめとして,widget-demo の移植に際し て必要となった Ruby の Tk 関連ライブラリ修正について,問題点,バグの指摘をし ていただいた方々にも感謝致します. -そして最後に最大の感謝を Ruby 設計者の まつもと ゆきひろ (matz@netlab.co.jp) +そして最後に最大の感謝を Ruby 設計者の まつもと ゆきひろ (matz@netlab.co.jp) さんに捧げたいと思います. diff --git a/ext/tk/sample/demos-en/README.1st b/ext/tk/sample/demos-en/README.1st index e031f123d2..2ba1e275c8 100644 --- a/ext/tk/sample/demos-en/README.1st +++ b/ext/tk/sample/demos-en/README.1st @@ -1,18 +1,18 @@ There are Ruby/Tk demo scripts. Files with '.rb' extension are sub-scripts which are launched 'widget' -script. Those files don't work independently. Please call them from +script. Those files don't work independently. Please call them from 'widget' script. If you want start some sub-scripts at same time when the launcher -script tarts, please give the sub-script names as arguments. +script tarts, please give the sub-script names as arguments. (e.g. /usr/local/bin/ruby widget button.rb entry1.rb text.rb ) You can ommit '.rb' of the sub-scripts (e.g. /usr/local/bin/ruby widget button entry1 text ) -If you don't need launcher's main window, give -n option. +If you don't need launcher's main window, give -n option. (e.g. /usr/local/bin/ruby widget -n button.rb entry1.rb text.rb ) -Others (browse1, hello, and so on) are standalone scripts. +Others (browse1, hello, and so on) are standalone scripts. 2004/04/14 Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp) diff --git a/ext/tk/sample/demos-en/README.tkencoding b/ext/tk/sample/demos-en/README.tkencoding index f576bc593e..679b476a08 100644 --- a/ext/tk/sample/demos-en/README.tkencoding +++ b/ext/tk/sample/demos-en/README.tkencoding @@ -1,5 +1,5 @@ -This is a original document of 'tkencoding.rb'. -The library 'tkencoding.rb' is obsolete. +This is a original document of 'tkencoding.rb'. +The library 'tkencoding.rb' is obsolete. Functions of tkencoding.rb is already included into Ruby/Tk. ------------------------------------------------- diff --git a/ext/tk/sample/demos-en/browse1 b/ext/tk/sample/demos-en/browse1 index 03e251035a..568892e4a8 100644 --- a/ext/tk/sample/demos-en/browse1 +++ b/ext/tk/sample/demos-en/browse1 @@ -1,16 +1,16 @@ #!/usr/bin/env ruby # browse -- -# This script generates a directory browser, which lists the working -# directory and allow you to open files or subdirectories by -# double-clicking. +# This script generates a directory browser, which lists the working +# directory and allow you to open files or subdirectories by +# double-clicking. require 'tk' -# Create a scrollbar on the right side of the main window and a listbox +# Create a scrollbar on the right side of the main window and a listbox # on the left side. -listbox = TkListbox.new(nil, 'relief'=>'sunken', +listbox = TkListbox.new(nil, 'relief'=>'sunken', 'width'=>20, 'height'=>20, 'setgrid'=>'yes') {|l| TkScrollbar.new(nil, 'command'=>proc{|*args| l.yview *args}) {|s| pack('side'=>'right', 'fill'=>'y') @@ -23,10 +23,10 @@ listbox = TkListbox.new(nil, 'relief'=>'sunken', root = TkRoot.new root.minsize(1,1) -# The procedure below is invoked to open a browser on a given file; if the -# file is a directory then another instance of this program is invoked; if -# the file is a regular file then the Mx editor is invoked to display -# the file. +# The procedure below is invoked to open a browser on a given file; if the +# file is a directory then another instance of this program is invoked; if +# the file is a regular file then the Mx editor is invoked to display +# the file. def browse (dir, file) file = dir + File::Separator + file if dir != '.' @@ -46,7 +46,7 @@ def browse (dir, file) end end -# Fill the listbox with a list of all the files in the directory (run +# Fill the listbox with a list of all the files in the directory (run # the "ls" command to get that information). dir = ARGV[0] ? ARGV[0] : '.' @@ -57,7 +57,7 @@ open("|ls -a #{dir}", 'r'){|fid| fid.readlines}.each{|fname| # Set up bindings for the browser. Tk.bind_all('Control-c', proc{root.destroy}) -listbox.bind('Double-Button-1', +listbox.bind('Double-Button-1', proc{TkSelection.get.each{|f| browse dir, f}}) Tk.mainloop diff --git a/ext/tk/sample/demos-en/browse2 b/ext/tk/sample/demos-en/browse2 index edad04dbcb..1a511c8d29 100644 --- a/ext/tk/sample/demos-en/browse2 +++ b/ext/tk/sample/demos-en/browse2 @@ -1,9 +1,9 @@ #!/usr/bin/env ruby # browse -- -# This script generates a directory browser, which lists the working -# directory and allow you to open files or subdirectories by -# double-clicking. +# This script generates a directory browser, which lists the working +# directory and allow you to open files or subdirectories by +# double-clicking. require 'tk' @@ -19,9 +19,9 @@ class Browse title('Browse : ' + dir) } - # Create a scrollbar on the right side of the main window and a listbox + # Create a scrollbar on the right side of the main window and a listbox # on the left side. - list = TkListbox.new(base, 'relief'=>'sunken', + list = TkListbox.new(base, 'relief'=>'sunken', 'width'=>20, 'height'=>20, 'setgrid'=>'yes') {|l| TkScrollbar.new(base, 'command'=>proc{|*args| l.yview *args}) {|s| pack('side'=>'right', 'fill'=>'y') @@ -30,7 +30,7 @@ class Browse pack('side'=>'left', 'fill'=>'both', 'expand'=>'yes') - # Fill the listbox with a list of all the files in the directory (run + # Fill the listbox with a list of all the files in the directory (run # the "ls" command to get that information). open("|ls -a #{dir}", 'r'){|fid| fid.readlines}.each{|fname| l.insert('end', fname.chomp) @@ -44,14 +44,14 @@ class Browse Browse::BROWSE_WIN_COUNTER.to_i - 1 }) base.bind('Control-c', proc{base.destroy}) - list.bind('Double-Button-1', + list.bind('Double-Button-1', proc{TkSelection.get.each{|f| self.browse dir, f}}) end - # The method below is invoked to open a browser on a given file; if the - # file is a directory then another instance of this program is invoked; if - # the file is a regular file then the Mx editor is invoked to display - # the file. + # The method below is invoked to open a browser on a given file; if the + # file is a directory then another instance of this program is invoked; if + # the file is a regular file then the Mx editor is invoked to display + # the file. def browse (dir, file) file = dir + File::Separator + file if dir != '.' type = File.ftype(file) diff --git a/ext/tk/sample/demos-en/doc.org/license.terms b/ext/tk/sample/demos-en/doc.org/license.terms index 03ca6fcb31..c0a44d3fc2 100644 --- a/ext/tk/sample/demos-en/doc.org/license.terms +++ b/ext/tk/sample/demos-en/doc.org/license.terms @@ -28,7 +28,7 @@ MODIFICATIONS. GOVERNMENT USE: If you are acquiring this software on behalf of the U.S. government, the Government shall have only "Restricted Rights" -in the software and related documentation as defined in the Federal +in the software and related documentation as defined in the Federal Acquisition Regulations (FARs) in Clause 52.227.19 (c) (2). If you are acquiring the software on behalf of the Department of Defense, the software shall be classified as "Commercial Computer Software" and the diff --git a/ext/tk/sample/demos-en/doc.org/license.terms.tk80 b/ext/tk/sample/demos-en/doc.org/license.terms.tk80 index 03ca6fcb31..c0a44d3fc2 100644 --- a/ext/tk/sample/demos-en/doc.org/license.terms.tk80 +++ b/ext/tk/sample/demos-en/doc.org/license.terms.tk80 @@ -28,7 +28,7 @@ MODIFICATIONS. GOVERNMENT USE: If you are acquiring this software on behalf of the U.S. government, the Government shall have only "Restricted Rights" -in the software and related documentation as defined in the Federal +in the software and related documentation as defined in the Federal Acquisition Regulations (FARs) in Clause 52.227.19 (c) (2). If you are acquiring the software on behalf of the Department of Defense, the software shall be classified as "Commercial Computer Software" and the diff --git a/ext/tk/sample/demos-en/ixset b/ext/tk/sample/demos-en/ixset index 979894fcb8..40a77f487c 100644 --- a/ext/tk/sample/demos-en/ixset +++ b/ext/tk/sample/demos-en/ixset @@ -164,8 +164,8 @@ class Xsettings # bell = TkFrame.new(@root, 'relief'=>'raised', 'borderwidth'=>2) l = TkLabel.new(bell, 'text'=>'Bell Settings') - @w_bellvol = TkScale.new(bell, 'from'=>0, 'to'=>100, 'length'=>200, - 'tickinterval'=>20, 'orient'=>'horizontal', + @w_bellvol = TkScale.new(bell, 'from'=>0, 'to'=>100, 'length'=>200, + 'tickinterval'=>20, 'orient'=>'horizontal', 'label'=>"Volume (%)") f = TkFrame.new(bell) @@ -180,13 +180,13 @@ class Xsettings # # Keyboard settings - # + # kbdonoff = nil kbdcli = nil kbd = TkFrame.new(@root, 'relief'=>'raised', 'borderwidth'=>2) l = TkLabel.new(kbd, 'text'=>'Keyboard Repeat Settings') f = TkFrame.new(kbd) - @w_kbdonoff = TkCheckButton.new(f, 'text'=>'On', 'relief'=>'flat', + @w_kbdonoff = TkCheckButton.new(f, 'text'=>'On', 'relief'=>'flat', 'onvalue'=>'on', 'offvalue'=>'off', 'variable'=>@w_kbdrep ) { def self.set(value) @@ -198,8 +198,8 @@ class Xsettings end pack('side'=>'left', 'expand'=>'yes', 'fill'=>'both') } - @w_kbdcli = TkScale.new(f, 'from'=>0, 'to'=>100, 'length'=>200, - 'tickinterval'=>20, 'orient'=>'horizontal', + @w_kbdcli = TkScale.new(f, 'from'=>0, 'to'=>100, 'length'=>200, + 'tickinterval'=>20, 'orient'=>'horizontal', 'label'=>'Click Volume (%)') @w_kbdcli.pack('side'=>'left', 'expand'=>'yes') l.pack('side'=>'top', 'expand'=>'yes') @@ -225,9 +225,9 @@ class Xsettings l = TkLabel.new(screen, 'text'=>'Screen-saver Settings') f = TkFrame.new(screen) ff1 = TkFrame.new(f) - [ @w_screenblank = TkRadioButton.new(ff1, 'text'=>'Blank', - 'relief'=>'flat', - 'variable'=>@w_screenbla, + [ @w_screenblank = TkRadioButton.new(ff1, 'text'=>'Blank', + 'relief'=>'flat', + 'variable'=>@w_screenbla, 'value'=>'blank') { def self.set(value) if value == 'blank' @@ -236,10 +236,10 @@ class Xsettings self.deselect end end - }, - @w_screenpat = TkRadioButton.new(ff1, 'text'=>'Pattern', - 'relief'=>'flat', - 'variable'=>@w_screenbla, + }, + @w_screenpat = TkRadioButton.new(ff1, 'text'=>'Pattern', + 'relief'=>'flat', + 'variable'=>@w_screenbla, 'value'=>'noblank') { def self.set(value) if value != 'blank' @@ -252,7 +252,7 @@ class Xsettings ].each {|w| w.pack('side'=>'top', 'pady'=>2, 'anchor'=>'w') } ff2 = TkFrame.new(f) - [ @w_screentim = LabelEntry.new(ff2, 'Timeout (s)', 5), + [ @w_screentim = LabelEntry.new(ff2, 'Timeout (s)', 5), @w_screencyc = LabelEntry.new(ff2, 'Cycle (s)', 5) ].each{|w| w.pack('side'=>'top', 'pady'=>2, 'anchor'=>'e') } diff --git a/ext/tk/sample/demos-en/ixset2 b/ext/tk/sample/demos-en/ixset2 index ce8472abe0..cb99c60793 100644 --- a/ext/tk/sample/demos-en/ixset2 +++ b/ext/tk/sample/demos-en/ixset2 @@ -134,8 +134,8 @@ class Xsettings def initialize(parent, text, length, range=[]) @frame = TkFrame.new(parent) TkLabel.new(@frame, 'text'=>text).pack('side'=>'left') - if range.size > 0 - @entry = TkSpinbox.new(@frame, 'width'=>length, 'relief'=>'sunken', + if range.size > 0 + @entry = TkSpinbox.new(@frame, 'width'=>length, 'relief'=>'sunken', 'from'=>range[0], 'to'=>range[1]) else @entry = TkEntry.new(@frame, 'width'=>length, 'relief'=>'sunken') @@ -164,16 +164,16 @@ class Xsettings # Buttons # btn_frame = TkFrame.new(@root) - buttons = [ - @btn_OK = TkButton.new(btn_frame, 'command'=>proc{win.ok}, + buttons = [ + @btn_OK = TkButton.new(btn_frame, 'command'=>proc{win.ok}, 'default'=>'active', 'text'=>'Ok'), - @btn_APPLY = TkButton.new(btn_frame, 'command'=>proc{win.writesettings}, - 'default'=>'normal', 'text'=>'Apply', + @btn_APPLY = TkButton.new(btn_frame, 'command'=>proc{win.writesettings}, + 'default'=>'normal', 'text'=>'Apply', 'state'=>'disabled'), - @btn_CANCEL = TkButton.new(btn_frame, 'command'=>proc{win.cancel}, - 'default'=>'normal', 'text'=>'Cancel', + @btn_CANCEL = TkButton.new(btn_frame, 'command'=>proc{win.cancel}, + 'default'=>'normal', 'text'=>'Cancel', 'state'=>'disabled'), - @btn_QUIT = TkButton.new(btn_frame, 'command'=>proc{win.quit}, + @btn_QUIT = TkButton.new(btn_frame, 'command'=>proc{win.quit}, 'default'=>'normal', 'text'=>'Quit') ] buttons.each{|b| b.pack('side'=>'left', 'expand'=>'yes', 'pady'=>5) } @@ -201,10 +201,10 @@ class Xsettings # # Bell settings # - bell = TkLabelframe.new(@root, 'text'=>'Bell Settings', + bell = TkLabelframe.new(@root, 'text'=>'Bell Settings', 'padx'=>'1.5m', 'pady'=>'1.5m') - @w_bellvol = TkScale.new(bell, 'from'=>0, 'to'=>100, 'length'=>200, - 'tickinterval'=>20, 'orient'=>'horizontal', + @w_bellvol = TkScale.new(bell, 'from'=>0, 'to'=>100, 'length'=>200, + 'tickinterval'=>20, 'orient'=>'horizontal', 'label'=>"Volume (%)") f = TkFrame.new(bell) @@ -218,13 +218,13 @@ class Xsettings # # Keyboard settings - # + # kbdonoff = nil kbdcli = nil - kbd = TkLabelframe.new(@root, 'text'=>'Keyboard Repeat Settings', + kbd = TkLabelframe.new(@root, 'text'=>'Keyboard Repeat Settings', 'padx'=>'1.5m', 'pady'=>'1.5m') f = TkFrame.new(kbd) - @w_kbdonoff = TkCheckButton.new(f, 'text'=>'On', 'relief'=>'flat', + @w_kbdonoff = TkCheckButton.new(f, 'text'=>'On', 'relief'=>'flat', 'onvalue'=>'on', 'offvalue'=>'off', 'variable'=>@w_kbdrep ) { def self.set(value) @@ -236,17 +236,17 @@ class Xsettings end pack('side'=>'left', 'expand'=>'yes', 'fill'=>'x', 'padx'=>[0, '1m']) } - @w_kbdcli = TkScale.new(f, 'from'=>0, 'to'=>100, 'length'=>200, - 'tickinterval'=>20, 'orient'=>'horizontal', + @w_kbdcli = TkScale.new(f, 'from'=>0, 'to'=>100, 'length'=>200, + 'tickinterval'=>20, 'orient'=>'horizontal', 'label'=>'Click Volume (%)') - @w_kbdcli.pack('side'=>'left', 'expand'=>'yes', + @w_kbdcli.pack('side'=>'left', 'expand'=>'yes', 'fill'=>'x', 'padx'=>['1m', 0]) f.pack('side'=>'top', 'expand'=>'yes', 'pady'=>2, 'fill'=>'x') # # Mouse settings # - mouse = TkLabelframe.new(@root, 'text'=>'Mouse Settings', + mouse = TkLabelframe.new(@root, 'text'=>'Mouse Settings', 'padx'=>'1.5m', 'pady'=>'1.5m') f = TkFrame.new(mouse) @w_mouseacc = LabelEntry.new(f, 'Acceleration', 5) @@ -258,11 +258,11 @@ class Xsettings # # Screen Saver settings # - screen = TkLabelframe.new(@root, 'text'=>'Screen-saver Settings', + screen = TkLabelframe.new(@root, 'text'=>'Screen-saver Settings', 'padx'=>'1.5m', 'pady'=>'1.5m') - @w_screenblank = TkRadioButton.new(screen, 'text'=>'Blank', - 'relief'=>'flat', 'anchor'=>'w', - 'variable'=>@w_screenbla, + @w_screenblank = TkRadioButton.new(screen, 'text'=>'Blank', + 'relief'=>'flat', 'anchor'=>'w', + 'variable'=>@w_screenbla, 'value'=>'blank') { def self.set(value) if value == 'blank' @@ -273,9 +273,9 @@ class Xsettings end } - @w_screenpat = TkRadioButton.new(screen, 'text'=>'Pattern', - 'relief'=>'flat', 'anchor'=>'w', - 'variable'=>@w_screenbla, + @w_screenpat = TkRadioButton.new(screen, 'text'=>'Pattern', + 'relief'=>'flat', 'anchor'=>'w', + 'variable'=>@w_screenbla, 'value'=>'noblank') { def self.set(value) if value != 'blank' @@ -297,7 +297,7 @@ class Xsettings # Main window # param = { - 'side'=>'top', 'fill'=>'both', 'expand'=>'yes', + 'side'=>'top', 'fill'=>'both', 'expand'=>'yes', 'padx'=>'1m', 'pady'=>'1m' } btn_frame.pack('side'=>'top', 'fill'=>'both') diff --git a/ext/tk/sample/demos-en/rmt b/ext/tk/sample/demos-en/rmt index 73f631180a..dcfb328fc8 100644 --- a/ext/tk/sample/demos-en/rmt +++ b/ext/tk/sample/demos-en/rmt @@ -1,9 +1,9 @@ #!/usr/bin/env ruby -# rmt -- -# This script implements a simple remote-control mechanism for -# Tk applications. It allows you to select an application and -# then type commands to that application. +# rmt -- +# This script implements a simple remote-control mechanism for +# Tk applications. It allows you to select an application and +# then type commands to that application. require 'tk' @@ -17,41 +17,41 @@ class Rmt root = TkWinfo.toplevel(parent) root.minsize(1,1) - # The instance variable below keeps track of the remote application - # that we're sending to. If it's an empty string then we execute - # the commands locally. + # The instance variable below keeps track of the remote application + # that we're sending to. If it's an empty string then we execute + # the commands locally. @app = 'local' @mode = 'Ruby' - # The instance variable below keeps track of whether we're in the - # middle of executing a command entered via the text. + # The instance variable below keeps track of whether we're in the + # middle of executing a command entered via the text. @executing = 0 - # The instance variable below keeps track of the last command executed, - # so it can be re-executed in response to !! commands. + # The instance variable below keeps track of the last command executed, + # so it can be re-executed in response to !! commands. @lastCommand = "" - # Create menu bar. Arrange to recreate all the information in the - # applications sub-menu whenever it is cascaded to. + # Create menu bar. Arrange to recreate all the information in the + # applications sub-menu whenever it is cascaded to. TkFrame.new(root, 'relief'=>'raised', 'bd'=>2) {|f| pack('side'=>'top', 'fill'=>'x') TkMenubutton.new(f, 'text'=>'File', 'underline'=>0) {|mb| TkMenu.new(mb) {|mf| mb.menu(mf) - TkMenu.new(mf) {|ma| + TkMenu.new(mf) {|ma| postcommand proc{win.fillAppsMenu ma} - mf.add('cascade', 'label'=>'Select Application', + mf.add('cascade', 'label'=>'Select Application', 'menu'=>ma, 'underline'=>0) } - add('command', 'label'=>'Quit', + add('command', 'label'=>'Quit', 'command'=>proc{root.destroy}, 'underline'=>0) } pack('side'=>'left') } } - # Create text window and scrollbar. + # Create text window and scrollbar. @txt = TkText.new(root, 'relief'=>'sunken', 'bd'=>2, 'setgrid'=>true) { yscrollbar(TkScrollbar.new(root){pack('side'=>'right', 'fill'=>'y')}) @@ -60,9 +60,9 @@ class Rmt @promptEnd = TkTextMark.new(@txt, 'insert') - # Create a binding to forward commands to the target application, - # plus modify many of the built-in bindings so that only information - # in the current command can be deleted (can still set the cursor + # Create a binding to forward commands to the target application, + # plus modify many of the built-in bindings so that only information + # in the current command can be deleted (can still set the cursor # earlier in the text and select and insert; just can't delete). @txt.bindtags([@txt, TkText, root, 'all']) @@ -151,8 +151,8 @@ class Rmt w.see('insert') end - # The method below is used to print out a prompt at the - # insertion point (which should be at the beginning of a line + # The method below is used to print out a prompt at the + # insertion point (which should be at the beginning of a line # right now). def prompt @@ -162,8 +162,8 @@ class Rmt @txt.tag_add('bold', "#{@promptEnd.path} linestart", @promptEnd) end - # The method below executes a command (it takes everything on the - # current line after the prompt and either sends it to the remote + # The method below executes a command (it takes everything on the + # current line after the prompt and either sends it to the remote # application or executes it locally, depending on "app". def invoke @@ -200,8 +200,8 @@ class Rmt if complete @lastCommand = cmd begin -# msg = Tk.appsend(@app, false, -# 'ruby', +# msg = Tk.appsend(@app, false, +# 'ruby', # '"(' + cmd.gsub(/[][$"]/, '\\\\\&') + ').to_s"') msg = Tk.rb_appsend(@app, false, cmd) rescue @@ -218,10 +218,10 @@ class Rmt end # The following method is invoked to change the application that - # we're talking to. It also updates the prompt for the current - # command, unless we're in the middle of executing a command from - # the text item (in which case a new prompt is about to be output - # so there's no need to change the old one). + # we're talking to. It also updates the prompt for the current + # command, unless we're in the middle of executing a command from + # the text item (in which case a new prompt is about to be output + # so there's no need to change the old one). def newApp(appName, mode) @app = appName @@ -236,7 +236,7 @@ class Rmt end # The method below will fill in the applications sub-menu with a list - # of all the applications that currently exist. + # of all the applications that currently exist. def fillAppsMenu(menu) win = self @@ -251,14 +251,14 @@ class Rmt else mode = 'Ruby' end - menu.add('command', 'label'=>format("%s (#{mode}/Tk)", ip), + menu.add('command', 'label'=>format("%s (#{mode}/Tk)", ip), 'command'=>proc{win.newApp ip, mode}) rescue - menu.add('command', 'label'=>format("%s (unknown Tk)", ip), + menu.add('command', 'label'=>format("%s (unknown Tk)", ip), 'command'=>proc{win.newApp ip, mode}, 'state'=>'disabled') end } - menu.add('command', 'label'=>format("local (Ruby/Tk)"), + menu.add('command', 'label'=>format("local (Ruby/Tk)"), 'command'=>proc{win.newApp 'local', 'Ruby'}) end end diff --git a/ext/tk/sample/demos-en/rolodex b/ext/tk/sample/demos-en/rolodex index 9a4030e902..dfc4b2b245 100644 --- a/ext/tk/sample/demos-en/rolodex +++ b/ext/tk/sample/demos-en/rolodex @@ -2,7 +2,7 @@ # # rolodex -- # This script is a part of Tom LaStrange's rolodex -# +# # Copyright (C) 1998 by Takaaki Tateishi <ttate@jaist.ac.jp> # Time-stamp: "03/08/02 06:23:06 nagai" # @@ -17,7 +17,7 @@ def show_help(topic,x=0,y=0) topic = w end end - + if( $helpTopics.include?(topic) ) msg = $helpTopics[topic] else @@ -81,7 +81,7 @@ class RolodexFrame < TkFrame def initialize(parent=nil,keys=nil) super(parent,keys) self["relief"] = "flat" - + @i = [] @label = [] @entry = [] diff --git a/ext/tk/sample/demos-en/square b/ext/tk/sample/demos-en/square index 00bfde59ff..bb66282154 100644 --- a/ext/tk/sample/demos-en/square +++ b/ext/tk/sample/demos-en/square @@ -1,10 +1,10 @@ #!/usr/bin/env ruby # square -- -# This script generates a demo application containing only -# a "square" widget. It's only usable if Tk has been compiled -# with tkSquare.c and with the -DSQUARE_DEMO compiler switch. -# This demo arranges the following bindings for the widget: +# This script generates a demo application containing only +# a "square" widget. It's only usable if Tk has been compiled +# with tkSquare.c and with the -DSQUARE_DEMO compiler switch. +# This demo arranges the following bindings for the widget: # # Button-1 press/drag: moves square to mouse # "a": toggle size animation on/off @@ -19,7 +19,7 @@ class TkSquare<TkWindow tk_call 'square', path rescue STDERR.print "\nSorry. Your Tk interpreter does not contain " + - 'a "square" demonstration widget.' + + 'a "square" demonstration widget.' + "\n ( See documents included the Tcl/Tk source archive. )\n\n" exit end @@ -53,7 +53,7 @@ def center(x,y) end # The procedures below provide a simple form of animation where -# the box changes size in a pulsing pattern: larger, smaller, larger, +# the box changes size in a pulsing pattern: larger, smaller, larger, # and so on. $inc = 0 diff --git a/ext/tk/sample/demos-en/tcolor b/ext/tk/sample/demos-en/tcolor index 3c63d6730d..48cda6d1da 100644 --- a/ext/tk/sample/demos-en/tcolor +++ b/ext/tk/sample/demos-en/tcolor @@ -126,7 +126,7 @@ def _null_binding end private :_null_binding -def doUpdate +def doUpdate newCmd = $command.to_s.gsub("%%","\"#{$color}\"") eval(newCmd, _null_binding) end @@ -134,7 +134,7 @@ end def tc_scaleChanged if( $updating.to_i == 1 ) - return + return end $master = :scale if $master == nil @@ -151,7 +151,7 @@ def tc_scaleChanged when :cmy $red = (65535 - scale1.get * 65.535).to_i $green = (65535 - scale2.get * 65.535).to_i - $blue = (65535 - scale3.get * 65.535).to_i + $blue = (65535 - scale3.get * 65.535).to_i when :hsb list = hsbToRgb(scale1.get / 1000.0, scale2.get / 1000.0, @@ -179,7 +179,7 @@ def tc_setScales scale1 = $root.middle.middle.scale1 scale2 = $root.middle.middle.scale2 scale3 = $root.middle.middle.scale3 - + case $colorSpace.value.intern when :rgb scale1.set($red / 65.535) @@ -205,7 +205,7 @@ end def tc_loadNamedColor(name) $name.value = name $master = :name if $master == nil - if name[0,1] != "#" + if name[0,1] != "#" list = TkWinfo.rgb($root.middle.right.swatch,name) $red = list[0] $green = list[1] @@ -239,7 +239,7 @@ def tc_loadNamedColor(name) $green = $green << shift $blue = $blue << shift end - + tc_setScales $color = format("#%04x%04x%04x",$red,$green,$blue) $root.middle.right.set_color($color) @@ -318,7 +318,7 @@ class TkColorMenuFrame<TkFrame "underline" => "0", "command" => proc{exit} } - + # assign File menu to File button menu @file_menu @@ -354,7 +354,7 @@ class TkColorBotFrame<TkFrame self end -end +end # left side frame of middle level @@ -459,7 +459,7 @@ class TkColorMiddleRightFrame<TkFrame super(parent) @swatch = TkFrame.new(self, "width"=>"2c", "height"=>"5c", "background"=>$color) - @value = TkLabel.new(self, + @value = TkLabel.new(self, "text"=>$color, "width"=>"13", "font"=>"-Adobe-Courier-Medium-R-Normal--*-120-*-*-*-*-*-*") diff --git a/ext/tk/sample/demos-en/timer b/ext/tk/sample/demos-en/timer index 58a41d00c0..6cb7c87e09 100644 --- a/ext/tk/sample/demos-en/timer +++ b/ext/tk/sample/demos-en/timer @@ -69,7 +69,7 @@ class CountFrame < TkFrame def initialize(parent=nil,keys=nil) super(parent,keys) @counter = TkLabel.new(self, - 'text'=>$time, + 'text'=>$time, 'relief'=>'raised') @counter.pack('fill'=>'both') self diff --git a/ext/tk/sample/demos-en/widget b/ext/tk/sample/demos-en/widget index 250c589116..e6510c7e45 100644 --- a/ext/tk/sample/demos-en/widget +++ b/ext/tk/sample/demos-en/widget @@ -26,15 +26,15 @@ $RubyTk_WidgetDemo = true # $demo_dir = File.dirname($0) $demo_dir = File.dirname(__FILE__) -# root +# root $root = TkRoot.new{title "Ruby/Tk Widget Demonstration"} -# tk +# tk $tk_version = Tk::TK_VERSION $tk_major_ver, $tk_minor_ver = $tk_version.split('.').map{|n| n.to_i} $tk_patchlevel = Tk::TK_PATCHLEVEL -# tcl_platform +# tcl_platform $tk_platform = TkVarAccess.new('tcl_platform') # @@ -104,18 +104,18 @@ $image['print'] = TkPhotoImage.new(:height=>19, :format=>'GIF', :data=><<EOD) EOD end -# +# if $tk_major_ver >= 8 - $root.add_menubar([[['File', 0], + $root.add_menubar([[['File', 0], ['About ... ', proc{aboutBox}, 0, '<F1>'], - '---', + '---', ['Quit', proc{exit}, 0, 'Ctrl-Q'] ]]) else - TkMenubar.new($root, - [[['File', 0], + TkMenubar.new($root, + [[['File', 0], ['About ... ', proc{aboutBox}, 0, '<F1>'], - '---', + '---', ['Quit', proc{exit}, 0, 'Ctrl-Q'] ]]).pack('side'=>'top', 'fill'=>'x') end @@ -135,7 +135,7 @@ TkFrame.new($root){|frame| }.pack('side'=>'top', 'fill'=>'x') =end -# +# if $tk_version =~ /^4\.[01]/ scr = TkScrollbar.new($root, 'orient'=>'vertical') txt = TkText.new($root) { @@ -151,7 +151,7 @@ if $tk_version =~ /^4\.[01]/ txt.pack('expand'=>'yes', 'fill'=>'both') else textFrame = TkFrame.new($root) - scr = TkScrollbar.new($root, 'orient'=>'vertical', + scr = TkScrollbar.new($root, 'orient'=>'vertical', 'highlightthickness'=>0, 'takefocus'=>1) { pack('in'=>textFrame, 'side'=>'right', 'fill'=>'y', 'padx'=>1) } @@ -184,10 +184,10 @@ else statusfont = 'Helvetica 10' end $statusBarLabel = \ - TkLabel.new(f, 'text'=>" ", 'relief'=>'sunken', 'bd'=>1, 'anchor'=>'w', + TkLabel.new(f, 'text'=>" ", 'relief'=>'sunken', 'bd'=>1, 'anchor'=>'w', 'font'=>statusfont) \ .pack('side'=>'left', 'padx'=>2, 'expand'=>'yes', 'fill'=>'both') - TkLabel.new(f, 'width'=>8, 'relief'=>'sunken', 'bd'=>1, 'anchor'=>'w', + TkLabel.new(f, 'width'=>8, 'relief'=>'sunken', 'bd'=>1, 'anchor'=>'w', 'font'=>statusfont) \ .pack('side'=>'left', 'padx'=>2) }.pack('side'=>'bottom', 'fill'=>'x', 'pady'=>2) @@ -196,7 +196,7 @@ end # Create a bunch of tags to use in the text widget, such as those for # section titles and demo descriptions. Also define the bindings for # tags. - + if $tk_version =~ /^4.*/ tag_title = TkTextTag.new(txt, 'font'=>'-*-Helvetica-Bold-R-Normal--*-180-*-*-*-*-*-*') else @@ -210,23 +210,23 @@ end tag_demospace = TkTextTag.new(txt, 'lmargin1'=>'1c', 'lmargin2'=>'1c') if TkWinfo.depth($root) == 1 - tag_demo = TkTextTag.new(txt, 'lmargin1'=>'1c', 'lmargin2'=>'1c', + tag_demo = TkTextTag.new(txt, 'lmargin1'=>'1c', 'lmargin2'=>'1c', 'underline'=>1) - $tag_visited = TkTextTag.new(txt, 'lmargin1'=>'1c', 'lmargin2'=>'1c', + $tag_visited = TkTextTag.new(txt, 'lmargin1'=>'1c', 'lmargin2'=>'1c', 'underline'=>1) tag_hot = TkTextTag.new(txt, 'background'=>'black', 'foreground'=>'white') else - tag_demo = TkTextTag.new(txt, 'lmargin1'=>'1c', 'lmargin2'=>'1c', + tag_demo = TkTextTag.new(txt, 'lmargin1'=>'1c', 'lmargin2'=>'1c', 'foreground'=>'blue', 'underline'=>1) - $tag_visited = TkTextTag.new(txt, 'lmargin1'=>'1c', 'lmargin2'=>'1c', + $tag_visited = TkTextTag.new(txt, 'lmargin1'=>'1c', 'lmargin2'=>'1c', 'foreground'=>'#303080', 'underline'=>1) -# tag_hot = TkTextTag.new(txt, 'relief'=>'raised', 'borderwidth'=>1, +# tag_hot = TkTextTag.new(txt, 'relief'=>'raised', 'borderwidth'=>1, # 'background'=>'SeaGreen3') tag_hot = TkTextTag.new(txt, 'borderwidth'=>1, 'foreground'=>'red') end #tag_demo.bind('Button-1', proc{invoke txt, txt.index('current')}) -tag_demo.bind('ButtonRelease-1', +tag_demo.bind('ButtonRelease-1', proc{|x,y|invoke txt, txt.index("@#{x},#{y}")}, '%x %y') lastLine = TkVariable.new("") @@ -237,7 +237,7 @@ tag_demo.bind('Enter', proc{|x,y| showStatus txt, txt.index("@#{x},#{y}") }, '%x %y') -tag_demo.bind('Leave', +tag_demo.bind('Leave', proc{ tag_hot.remove('1.0','end') txt.configure('cursor','xterm') @@ -248,10 +248,10 @@ tag_demo.bind('Motion', proc{|x, y| if newLine.value != lastLine.value tag_hot.remove('1.0','end') lastLine.value = newLine.value - if ( txt.tag_names("@#{x},#{y}").find{|t| + if ( txt.tag_names("@#{x},#{y}").find{|t| t.kind_of?(String) && t =~ /^demo-/ } ) - tag_hot.add(lastLine.value, + tag_hot.add(lastLine.value, "#{lastLine.value} lineend -1 chars") end end @@ -273,7 +273,7 @@ demonstration. If you wish, you can edit the code and click the \ with the modified code. \ Don't worry about breaking the source code. \ Your modifications are not reflected on the original file. \ -Please try many kind of changes. +Please try many kind of changes. Some demo scripts require the recent version of Tk library \ (e.g. Tk8.4 or later) \ @@ -353,8 +353,8 @@ txt.insert('end', "1. Without scrollbars.\n", tag_demo, "demo-entry1") txt.insert('end', " \n ", tag_demospace) txt.insert('end', "2. With scrollbars.\n", tag_demo, "demo-entry2") txt.insert('end', " \n ", tag_demospace) -txt.insert('end', - "3. Validated entries and password fields. (if supported)\n", +txt.insert('end', + "3. Validated entries and password fields. (if supported)\n", tag_demo, "demo-entry3") txt.insert('end', " \n ", tag_demospace) txt.insert('end', "4. Spin-boxes. (if supported)\n", tag_demo, "demo-spin") @@ -499,7 +499,7 @@ $showVarsWin = {} def showVars1(parent, *args) if $showVarsWin[parent.path] begin - $showVarsWin[parent.path].destroy + $showVarsWin[parent.path].destroy rescue end end @@ -539,7 +539,7 @@ end def showVars2(parent, *args) if $showVarsWin[parent.path] begin - $showVarsWin[parent.path].destroy + $showVarsWin[parent.path].destroy rescue end end @@ -548,11 +548,11 @@ def showVars2(parent, *args) base = TkFrame.new(top).pack(:fill=>:both, :expand=>true) - TkLabelFrame.new(base, :text=>"Variable values:", + TkLabelFrame.new(base, :text=>"Variable values:", :font=>{:family=>'Helvetica', :size=>14}){|f| args.each{|vnam,vbody| - TkGrid(TkLabel.new(f, :text=>"#{vnam}: ", :anchor=>'w'), - TkLabel.new(f, :textvariable=>vbody, :anchor=>'w'), + TkGrid(TkLabel.new(f, :text=>"#{vnam}: ", :anchor=>'w'), + TkLabel.new(f, :textvariable=>vbody, :anchor=>'w'), :padx=>2, :pady=>2, :sticky=>'w') } @@ -560,7 +560,7 @@ def showVars2(parent, *args) f.grid_columnconfig(1, :weight=>1) f.grid_rowconfig(100, :weight=>1) } - TkButton.new(base, :text=>"OK", :width=>8, :default=>:active, + TkButton.new(base, :text=>"OK", :width=>8, :default=>:active, :command=>proc{top.destroy}){|b| top.bind('Return', proc{b.invoke}) top.bind('Escape', proc{b.invoke}) @@ -610,9 +610,9 @@ class Object def method_missing(id, *args) begin - has_top = (top = Thread.current[:TOPLEVEL]) && - top.respond_to?(:pseudo_toplevel_evaluable?) && - top.pseudo_toplevel_evaluable? && + has_top = (top = Thread.current[:TOPLEVEL]) && + top.respond_to?(:pseudo_toplevel_evaluable?) && + top.pseudo_toplevel_evaluable? && top.respond_to?(id) rescue Exception => e has_top = false @@ -738,7 +738,7 @@ def showStatus (txt, index) newcursor = 'xterm' else demoname = tag[5..-1] - $statusBarLabel.configure('text', + $statusBarLabel.configure('text', "Run the \"#{demoname}\" sample program") newcursor = 'hand2' end @@ -800,9 +800,9 @@ def showCode1(demo) TkFrame.new($code_window) {|f| pack('expand'=>'yes', 'fill'=>'both', 'padx'=>1, 'pady'=>1) - hs = TkScrollbar.new($code_window, 'highlightthickness'=>0, + hs = TkScrollbar.new($code_window, 'highlightthickness'=>0, 'orient'=>'horizontal') - vs = TkScrollbar.new($code_window, 'highlightthickness'=>0, + vs = TkScrollbar.new($code_window, 'highlightthickness'=>0, 'orient'=>'vertical') $code_text = TkText.new($code_window) {|t| height 40 @@ -817,11 +817,11 @@ def showCode1(demo) vs.command(proc{|*args| $code_text.yview(*args)}) } - $code_text.grid('in'=>f, 'padx'=>1, 'pady'=>1, 'row'=>0, 'column'=>0, + $code_text.grid('in'=>f, 'padx'=>1, 'pady'=>1, 'row'=>0, 'column'=>0, 'rowspan'=>1, 'columnspan'=>1, 'sticky'=>'news') - vs.grid('in'=>f, 'padx'=>1, 'pady'=>1, 'row'=>0, 'column'=>1, + vs.grid('in'=>f, 'padx'=>1, 'pady'=>1, 'row'=>0, 'column'=>1, 'rowspan'=>1, 'columnspan'=>1, 'sticky'=>'news') -# xs.grid('in'=>f, 'padx'=>1, 'pady'=>1, 'row'=>1, 'column'=>0, +# xs.grid('in'=>f, 'padx'=>1, 'pady'=>1, 'row'=>1, 'column'=>0, # 'rowspan'=>1, 'columnspan'=>1, 'sticky'=>'news') # JKC 2001-07-26: segfaults under 1.7.1 (2001-06-19) [i686-linux] @@ -866,8 +866,8 @@ def showCode2(demo) if $code_window == nil || TkWinfo.exist?($code_window) == false $code_window = TkToplevel.new(nil) tf = TkFrame.new($code_window) - $code_text = TkText.new(tf, :font=>'Courier 10', :height=>30, - :wrap=>'word', :bd=>1, :setgrid=>true, + $code_text = TkText.new(tf, :font=>'Courier 10', :height=>30, + :wrap=>'word', :bd=>1, :setgrid=>true, :highlightthickness=>0, :pady=>2, :padx=>3) xscr = TkScrollbar.new(tf, :bd=>1){assign($code_text)} yscr = TkScrollbar.new(tf, :bd=>1){assign($code_text)} @@ -890,20 +890,20 @@ def showCode2(demo) posnum.text = pos } - b_dis = TkButton.new(bf, :text=>'Dismiss', :default=>:active, + b_dis = TkButton.new(bf, :text=>'Dismiss', :default=>:active, :command=>proc{ $code_window.destroy $code_window = nil - }, + }, :image=>$image['delete'], :compound=>:left) - b_prn = TkButton.new(bf, :text=>'Print Code', - :command=>proc{printCode($code_text, file)}, + b_prn = TkButton.new(bf, :text=>'Print Code', + :command=>proc{printCode($code_text, file)}, :image=>$image['print'], :compound=>:left) - b_run = TkButton.new(bf, :text=>'Rerun Demo', + b_run = TkButton.new(bf, :text=>'Rerun Demo', :command=>proc{ # eval($code_text.get('1.0','end'), _null_binding) eval_samplecode($code_text.get('1.0','end'), '<viewer>') - }, + }, :image=>$image['refresh'], :compound=>:left) TkGrid(lf, 'x', b_run, b_prn, b_dis, :padx=>4, :pady=>[6,4]) @@ -979,23 +979,23 @@ def printCode(txt, file) when 'unix' msg = `lp -c #{fname}` unless $?.exitstatus == 0 - Tk.messageBox(:title=>'Print spooling failure', + Tk.messageBox(:title=>'Print spooling failure', :message=>'Print spooling probably failed: ' + msg) end when 'windows' begin printTextWin32(fname) rescue => e - Tk.messageBox(:title=>'Print spooling failure', - :message=>'Print spooling probably failed: ' + + Tk.messageBox(:title=>'Print spooling failure', + :message=>'Print spooling probably failed: ' + e.message) - end + end when 'macintosh' - Tk.messageBox(:title=>'Operation not Implemented', + Tk.messageBox(:title=>'Operation not Implemented', :message=>'Oops, sorry: not implemented yet!') else - Tk.messageBox(:title=>'Operation not Implemented', - :message=>'Wow! Unknown platform: ' + + Tk.messageBox(:title=>'Operation not Implemented', + :message=>'Wow! Unknown platform: ' + Tk::TCL_PLATFORM('platform')) end ensure @@ -1025,7 +1025,7 @@ def printTextWin32(fname) pcmd.gsub!('%1', fname) puts pcmd cmd = Tk.tk_call('auto_execok', 'start') + ' /min ' + pcmd - + msg = `#{cmd}` unless $?.exitstatus == 0 fail RuntimeError, msg @@ -1037,16 +1037,16 @@ end # Pops up a message box with an "about" message # def aboutBox - Tk.messageBox('icon'=>'info', 'type'=>'ok', 'title'=>'About Widget Demo', - 'message'=>"Ruby/Tk widget demonstration Ver.1.7.1-en\n\n" + - "based on demos of Tk8.1 -- 8.5 " + - "( Copyright of Tcl/Tk demos:: " + - "(c) 1996-1997 Sun Microsystems, Inc. / " + - "(c) 1997-2000 Ajuba Solutions, Inc. / " + - "(c) 2001-2007 Donal K. Fellows / " + + Tk.messageBox('icon'=>'info', 'type'=>'ok', 'title'=>'About Widget Demo', + 'message'=>"Ruby/Tk widget demonstration Ver.1.7.1-en\n\n" + + "based on demos of Tk8.1 -- 8.5 " + + "( Copyright of Tcl/Tk demos:: " + + "(c) 1996-1997 Sun Microsystems, Inc. / " + + "(c) 1997-2000 Ajuba Solutions, Inc. / " + + "(c) 2001-2007 Donal K. Fellows / " + "(c) 2002-2007 Daniel A. Steffen )\n\n" + - "Your Ruby & Tk Version ::\n" + - "Ruby#{RUBY_VERSION}(#{RUBY_RELEASE_DATE})[#{RUBY_PLATFORM}] / Tk#{$tk_patchlevel}#{(Tk::JAPANIZED_TK)? '-jp': ''}\n\n" + + "Your Ruby & Tk Version ::\n" + + "Ruby#{RUBY_VERSION}(#{RUBY_RELEASE_DATE})[#{RUBY_PLATFORM}] / Tk#{$tk_patchlevel}#{(Tk::JAPANIZED_TK)? '-jp': ''}\n\n" + "Ruby/Tk release date :: tcltklib #{TclTkLib::RELEASE_DATE}; tk #{Tk::RELEASE_DATE}") end @@ -1060,11 +1060,11 @@ else # show the root widget to make it lower then demo windows Tk.update end -ARGV.each{|cmd| +ARGV.each{|cmd| if cmd =~ /(.*).rb/ cmd = $1 end - #eval(IO.readlines("#{[$demo_dir, cmd].join(File::Separator)}.rb").join, + #eval(IO.readlines("#{[$demo_dir, cmd].join(File::Separator)}.rb").join, # _null_binding) eval_samplecode(IO.readlines("#{[$demo_dir, cmd].join(File::Separator)}.rb").join, cmd + '.rb') } |