ruby/ext/tk/lib/tkextlib/tile/tprogressbar.rb
ocean a26cec27e1 * ext/tk/lib/tkextlib/tile/tprogressbar.rb: Tk::Tile::TProgressbar#start
takes optional argument `interval'.

* ext/tk/sample/tkextlib/tile/demo.rb: emulate Tk::Tile::TProgressbar
  with Tk::Tile::TProgress in tile 0.4. (repeating buttons demo)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8889 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-02 11:49:46 +00:00

44 lines
941 B
Ruby

#
# tprogressbar widget
# by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
#
require 'tk'
require 'tkextlib/tile.rb'
module Tk
module Tile
class TProgressbar < TkWindow
end
end
end
class Tk::Tile::TProgressbar
include Tk::Tile::TileWidget
if Tk::Tile::USE_TTK_NAMESPACE
TkCommandNames = ['::ttk::progressbar'.freeze].freeze
else
TkCommandNames = ['::tprogressbar'.freeze].freeze
end
WidgetClassName = 'TProgressbar'.freeze
WidgetClassNames[WidgetClassName] = self
def self.style(*args)
[self::WidgetClassName, *(args.map!{|a| _get_eval_string(a)})].join('.')
end
def step
tk_send_without_enc('step').to_f
end
def step=(amount)
tk_send_without_enc('step', amount)
end
def start(interval=None)
tk_call_without_enc('::tile::progressbar::start', @path, interval)
end
def stop
tk_call_without_enc('::tile::progressbar::stop', @path)
end
end