diff options
author | nagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-05-22 05:22:09 +0000 |
---|---|---|
committer | nagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-05-22 05:22:09 +0000 |
commit | 961d66abc26f9e491d5c622664f8e49b717ebbf1 (patch) | |
tree | d69abfd31ed2c17365c1620670ab9d33acf5ebb6 /ext/tk/sample | |
parent | edf9c3da4b680da9d6ac89a82212d943fab11804 (diff) | |
download | ruby-961d66abc26f9e491d5c622664f8e49b717ebbf1.tar.gz |
* ext/tk/sample/remote-ip_sample2.rb: modify
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6390 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/tk/sample')
-rw-r--r-- | ext/tk/sample/remote-ip_sample2.rb | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/ext/tk/sample/remote-ip_sample2.rb b/ext/tk/sample/remote-ip_sample2.rb index 51b950387a..fcc34b73de 100644 --- a/ext/tk/sample/remote-ip_sample2.rb +++ b/ext/tk/sample/remote-ip_sample2.rb @@ -1,22 +1,20 @@ #!/usr/bin/env ruby -ip_name = 'remote_ip' +require 'remote-tk' +# start sub-process +ip_name = 'remote_ip' +ip_list = TkWinfo.interps fork{ exec "/usr/bin/env ruby -r tk -e \"Tk.appname('#{ip_name}');Tk.mainloop\"" } - -require 'remote-tk' - -15.times{ - break if TkWinfo.interps.find{|ip| ip =~ /^#{ip_name}/} - sleep 1 -} - +sleep 1 until (app = (TkWinfo.interps - ip_list)[0]) && app =~ /^#{ip_name}/ p TkWinfo.interps -ip = RemoteTkIp.new(ip_name) +# create RemoteTkIp object +ip = RemoteTkIp.new(app) +# setup remote-ip window btns = [] ip.eval_proc{ btns << @@ -41,6 +39,7 @@ ip.eval_proc{ TkButton.new(:command=>'exit', :text=>'QUIT').pack(:fill=>:x) } +# setup controller-ip window btns.each_with_index{|b, idx| TkButton.new(:command=>proc{ip.eval_proc{b.flash}}, :text=>"flash button-#{idx}", @@ -50,4 +49,5 @@ btns.each_with_index{|b, idx| TkButton.new(:command=>proc{exit}, :text=>'QUIT', :padx=>10, :pady=>7).pack(:padx=>10, :pady=>7) +# start eventloop Tk.mainloop |