summaryrefslogtreecommitdiff
path: root/ext/tk/lib/tk.rb
diff options
context:
space:
mode:
authornagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-06-22 16:17:02 +0000
committernagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-06-22 16:17:02 +0000
commitf34b15e5d294dafa3e5f3eec00b0a14326589d47 (patch)
tree377c11a7f3f6fd39d644dd0958714825fe97b1c7 /ext/tk/lib/tk.rb
parent25f8578b13a85fa0b64eee55c51b270528047c4a (diff)
tk.rb :
* TkRoot.new and TkToplevel.new accept Wm commands as elements of a hash argument. e.g. TkRoot.new(:title=>'App Title') TkToplevel.new(:parent=>Tk.root, :title=>'XXX', :class=>'ZZZ') * TkMenu :: add some methods * TkOptionMenubutton :: bug fix sample/tktimer2.rb * add comments about the usage of a TkTimer object. sample/tkmenubutton.rb * sample of TkMenubutton and TkOptionMenubutton git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/tk/lib/tk.rb')
-rw-r--r--ext/tk/lib/tk.rb40
1 files changed, 29 insertions, 11 deletions
diff --git a/ext/tk/lib/tk.rb b/ext/tk/lib/tk.rb
index 0afaa07d35..f1226ba10f 100644
--- a/ext/tk/lib/tk.rb
+++ b/ext/tk/lib/tk.rb
@@ -4244,6 +4244,21 @@ class TkMenu<TkWindow
tk_send 'add', type, *hash_kv(keys)
self
end
+ def add_cascade(keys=nil)
+ add('cascade', keys)
+ end
+ def add_checkbutton(keys=nil)
+ add('checkbutton', keys)
+ end
+ def add_command(keys=nil)
+ add('command', keys)
+ end
+ def add_radiobutton(keys=nil)
+ add('radiobutton', keys)
+ end
+ def add_separator(keys=nil)
+ add('separator', keys)
+ end
def index(index)
ret = tk_send('index', index)
(ret == 'none')? nil: number(ret)
@@ -4430,8 +4445,8 @@ end
class TkOptionMenubutton<TkMenubutton
class OptionMenu<TkMenu
- def initialize(parent)
- @path = parent.path + '.menu'
+ def initialize(path) #==> return value of tk_optionMenu
+ @path = path
TkComm::Tk_WINDOWS[@path] = self
end
end
@@ -4443,13 +4458,13 @@ class TkOptionMenubutton<TkMenubutton
var = keys['variable'] if keys['variable']
firstval, *vals = keys['values']
end
- fail unless var.kind_of? TkVariable
+ fail 'variable option must be TkVariable' unless var.kind_of? TkVariable
@variable = var
firstval = @variable.value unless firstval
@variable.value = firstval
install_win(if parent then parent.path end)
- @menu = OptionMenu.new(self)
- tk_call 'tk_optionMenu', @path, @variable.id, firstval, *vals
+ @menu = OptionMenu.new(tk_call('tk_optionMenu', @path, @variable.id,
+ firstval, *vals))
end
def value
@@ -4483,15 +4498,18 @@ class TkOptionMenubutton<TkMenubutton
def yposition(index)
@menu.yposition(index)
end
- def menucget(index, key)
- @menu.cget(index, key)
+ def menu
+ @menu
+ end
+ def menucget(key)
+ @menu.cget(key)
end
- def menuconfigure(index, key, val=None)
- @menu.configure(index, key, val)
+ def menuconfigure(key, val=None)
+ @menu.configure(key, val)
self
end
- def menuconfiginfo(index, key=nil)
- @menu.configinfo(index, key)
+ def menuconfiginfo(key=nil)
+ @menu.configinfo(key)
end
def entrycget(index, key)
@menu.entrycget(index, key)