diff options
author | nagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-03-26 13:58:11 +0000 |
---|---|---|
committer | nagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-03-26 13:58:11 +0000 |
commit | 334325f72a08589acaeca6d9ef5171af42dfbe60 (patch) | |
tree | 0fc4047f672a06b884dea107432fc345dffb7302 /ext/tk/sample/tkextlib/blt/graph7a.rb | |
parent | e3c98febde12ce153bd07d29a9d7118d7ba8c58b (diff) | |
download | ruby-334325f72a08589acaeca6d9ef5171af42dfbe60.tar.gz |
* ext/tk/lib/tk.rb (_callback_entry_class?): add for checking whether
a class is available for a callback entry.
* ext/tk/lib/tk.rb (after_cancel): add Tk.after_cancel(afterID) method.
* ext/tk/lib/tk.rb (array2tk_list): change from private module method
of TkComm to public module method.
* ext/tk/lib/tk.rb (cget): add check that slot argument is not empty string.
* ext/tk/lib/tk.rb (configinfo): ditto.
* ext/tk/lib/tk/itemconfig.rb (itemcget): add check that slot argument
is not empty string.
* ext/tk/lib/tk/itemconfig.rb (itemconfiginfo): ditto.
* ext/tk/lib/tk/entry.rb: add TkEntry#icursor and icursor= (alias of
cursor and cursor= method).
* ext/tk/lib/tk/font.rb: improve font treatment when the font name is
empty string.
* ext/tk/lib/tk/variable.rb: add :variable, :window and :procedure type.
* ext/tk/lib/tk/variable.rb: improve treatment of array-type tkvariable.
* ext/tk/lib/tkextlib/blt.rb: add commands for zooming.
* ext/tk/lib/tkextlib/blt/*: bug fix.
* ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: bug fix and add methods
to call TreeCtrl commands for bindings.
* ext/tk/sample/tkextlib/blt/*: new sample scritps.
* ext/tk/sample/tkextlib/treectrl/*: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8195 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/tk/sample/tkextlib/blt/graph7a.rb')
-rw-r--r-- | ext/tk/sample/tkextlib/blt/graph7a.rb | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/ext/tk/sample/tkextlib/blt/graph7a.rb b/ext/tk/sample/tkextlib/blt/graph7a.rb new file mode 100644 index 0000000000..a014f72fc7 --- /dev/null +++ b/ext/tk/sample/tkextlib/blt/graph7a.rb @@ -0,0 +1,63 @@ +#!/usr/bin/env ruby +require 'tk' +require 'tkextlib/blt' + +file = File.join(File.dirname(File.expand_path(__FILE__)), + 'images', 'buckskin.gif') +bgTexture = TkPhotoImage.new(:file=>file) + +TkOption.add('*Graph.Tile', bgTexture) +TkOption.add('*Label.Tile', bgTexture) +TkOption.add('*Frame.Tile', bgTexture) +TkOption.add('*Htext.Tile', bgTexture) +TkOption.add('*TileOffset', 0) +TkOption.add('*HighlightThickness', 0) +TkOption.add('*Element.ScaleSybols', false) +TkOption.add('*Element.Smooth', :linear) +TkOption.add('*activeLine.Color', 'yellow4') +TkOption.add('*activeLine.Fill', 'yellow') +TkOption.add('*activeLine.LineWidth', 0) +TkOption.add('*Element.Pixels', 3) +TkOption.add('*Graph.halo', '7i') + +if Tk.root.winfo_screenvisual != 'staticgray' + TkOption.add('*print.background', 'yellow') + TkOption.add('*quit.background', 'red') +end + +length = 250000 +graph = Tk::BLT::Graph.new(:title=>"Scatter Plot\n#{length} points") +graph.xaxis_configure(:loose=>false, :title=>'X Axis Label') +graph.yaxis_configure(:title=>'Y Axis Label') +graph.legend_configure(:activerelief=>:sunken, :background=>'') + +Tk::BLT::Table.add(Tk.root, graph, [0,0], :fill=>:both) + +v_x = Tk::BLT::Vector.new(length) +v_y = Tk::BLT::Vector.new(length) +v_x.expr("random(#{v_x})") +v_y.expr("random(#{v_y})") +v_x.sort(v_y) + +plot = Tk::BLT::PlotComponent::Element.new(graph, :symbol=>:square, + :color=>'green4', :fill=>'green2', + :linewidth=>0, :outlinewidth=>1, + :pixels=>4, :label=>'plot', + :xdata=>v_x, :ydata=>v_y) + +Tk.root.minsize(0, 0) + +#graph.zoom_stack +#graph.crosshairs +#graph.active_legend +#graph.closest_point +Tk::BLT.zoom_stack(graph) +Tk::BLT.crosshairs(graph) +Tk::BLT.active_legend(graph) +Tk::BLT.closest_point(graph) + +Tk::BLT::Busy.hold(graph) +Tk.update +Tk::BLT::Busy.release(graph) + +Tk.mainloop |