From 1e760c0be3ed35874204114e7454509f740c0fe2 Mon Sep 17 00:00:00 2001 From: shyouhei Date: Wed, 22 Aug 2007 01:53:51 +0000 Subject: add tag v1_8_6_71 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/tags/v1_8_5_71@13189 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ruby_1_8_6/ext/tk/sample/tkextlib/vu/vu_demo.rb | 67 +++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 ruby_1_8_6/ext/tk/sample/tkextlib/vu/vu_demo.rb (limited to 'ruby_1_8_6/ext/tk/sample/tkextlib/vu/vu_demo.rb') diff --git a/ruby_1_8_6/ext/tk/sample/tkextlib/vu/vu_demo.rb b/ruby_1_8_6/ext/tk/sample/tkextlib/vu/vu_demo.rb new file mode 100644 index 0000000000..d078ae16f2 --- /dev/null +++ b/ruby_1_8_6/ext/tk/sample/tkextlib/vu/vu_demo.rb @@ -0,0 +1,67 @@ +#!/usr/bin/env ruby + +require 'tk' +require 'tkextlib/vu' + +####################################### + +puts "Show off barchart and dial widgets" + +speed = TkVariable.new(0) + +dial = Tk::Vu::Dial.new(:resolution=>0.001, :from=>-0.1, :to=>0.1, + :showvalue=>true, :minortickinterval=>0.01, + :tickinterval=>0.1, :radius=>50, :label=>"Dial", + :beginangle=>-20, :endangle=>260, :dialcolor=>'red3', + :active=>'red2', :variable=>speed) + +bar = Tk::Vu::Bargraph.new(:from=>0, :to=>100, :relief=>:groove, + :border=>2, :label=>"Bar Chart") + +####################################### + +green = 25 +blue = 50 +purple = 75 +current = 50 + +def rand_bool + +end + +update = TkTimer.new(200, -1, proc{ + if (rand() - 0.5 + speed.numeric * 3) > 0 + current += 1 + else + current -= 1 + end + bar.set(current) + if current < green + current = 100 if current <= 0 + bar[:barcolor] = 'green' + elsif current < blue + bar[:barcolor] = 'blue' + elsif current < purple + bar[:barcolor] = 'purple' + else + bar[:barcolor] = 'red' + current = 0 if current >= 100 + end + }) + +####################################### + +gobar = TkButton.new(:text=>"Start", :command=>proc{update.start}) +nobar = TkButton.new(:text=>"Stop", :command=>proc{update.stop}) +quit = TkButton.new(:text=>"Exit", :command=>proc{exit}) + +Tk.grid('x', gobar, :sticky=>:ew, :padx=>4, :pady=>4) +Tk.grid(dial, bar, :sticky=>:news) +Tk.grid('x', nobar, :sticky=>:ew, :padx=>4, :pady=>4) +Tk.grid(quit, '-', '-', :sticky=>:ew, :padx=>4, :pady=>4) +Tk.root.grid_columnconfigure(2, :weight=>1) +Tk.root.grid_rowconfigure(1, :weight=>1) + +####################################### + +Tk.mainloop -- cgit v1.2.3