From 0dc342de848a642ecce8db697b8fecd83a63e117 Mon Sep 17 00:00:00 2001 From: yugui Date: Mon, 25 Aug 2008 15:02:05 +0000 Subject: added tag v1_9_0_4 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/tags/v1_9_0_4@18845 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- trunk/ext/tk/sample/tkextlib/vu/canvSticker.rb | 82 ++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 trunk/ext/tk/sample/tkextlib/vu/canvSticker.rb (limited to 'trunk/ext/tk/sample/tkextlib/vu/canvSticker.rb') diff --git a/trunk/ext/tk/sample/tkextlib/vu/canvSticker.rb b/trunk/ext/tk/sample/tkextlib/vu/canvSticker.rb new file mode 100644 index 0000000000..e2cd604975 --- /dev/null +++ b/trunk/ext/tk/sample/tkextlib/vu/canvSticker.rb @@ -0,0 +1,82 @@ +#!/usr/bin/env ruby + +require 'tk' +require 'tkextlib/vu/charts' + +####################################### + +Tk.root.geometry('+30+30') + +delay = 2000 + +c = TkCanvas.new.pack + +begin + st = Tk::Vu::TkcSticker.new(c, 0, 0, 10, 10) +rescue + Tk.messageBox(:type=>'ok', :title=>"No sticker Item", + :message=>"This build of vu does not include the sticker item") + exit +end +#st.delete + +steps = [] + +steps << proc{ + # I used a 75dpi screen for testing, but others should make no difference! + puts 'You\'ll see a small upright rectangle with "He" inside.' + st = Tk::Vu::TkcSticker.new(c, '6m', '10m', '13m', '27m', :text=>'Hello') +} + +steps << proc{ + puts 'You\'ll see the whole "Hello" drawn rotated 90 degrees.' + st[:orient] = :vertical +} + +steps << proc{ + puts 'The rectangle shrinks and the text is clipped to "Hell"' + #st.coords('6m', '10m', '13m', '20m') + st.coords('6m', '10m', '13m', '17m') +} + +steps << proc{ + puts 'Now you\'ll read "ello"' + st[:lefttrunc] = true +} + +steps << proc{ + puts 'Enlarging the rectangle shows the complete "Hello" again' + st.scale(0, 0, 3, 3) +} + +steps << proc{ + puts 'This time the text is repeated: "Hello", approx. 5mm space, "Hello"' + st[:space] = '5m' +} + +steps << proc{ + puts 'A vertical bar appears in the lower right region and text jumps to the left.' + st.configure(:anchor=>:n, :relw=>0.3, :relh=>0.7, + :relx=>0.6, :rely=>0.3, :bar=>'red') +} + +steps << proc{ + puts 'Paint the backgound.' + st[:fill] = 'yellow' +} + +steps << proc{ + puts "Let's test stippling." + st[:stipple] = 'gray25' +} + +steps << proc{ + puts 'Finally a large outline forces a single "Hello" and shrinks the bar.' + st[:width] = '6m' +} + +Tk.root.bind('q', proc{exit}) + +TkTimer.new(delay, 1, *steps).start + +Tk.mainloop -- cgit v1.2.3