summaryrefslogtreecommitdiff
path: root/ext/tk/lib/tk/menu.rb
diff options
context:
space:
mode:
authornagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-07-15 04:49:01 +0000
committernagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-07-15 04:49:01 +0000
commit61817f40af29cdf56c6bb64182f699c662895231 (patch)
treee7cb42970de92d76f2241e4cca376eb92987f770 /ext/tk/lib/tk/menu.rb
parent6e59780cb959e5c38d0158b17575caa868803809 (diff)
* ext/tk/sample/tkextlib/tktable/spreadsheet.rb: add a new sample
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6633 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/tk/lib/tk/menu.rb')
-rw-r--r--ext/tk/lib/tk/menu.rb9
1 files changed, 8 insertions, 1 deletions
diff --git a/ext/tk/lib/tk/menu.rb b/ext/tk/lib/tk/menu.rb
index f0f5dcd2e8..4b94ccd915 100644
--- a/ext/tk/lib/tk/menu.rb
+++ b/ext/tk/lib/tk/menu.rb
@@ -402,13 +402,20 @@ class TkOptionMenubutton<TkMenubutton
end
end
- def initialize(parent=nil, var=TkVariable.new, firstval=nil, *vals)
+ def initialize(parent=nil, var=nil, firstval=nil, *vals)
if parent.kind_of? Hash
keys = _symbolkey2str(parent)
parent = keys['parent']
var = keys['variable'] if keys['variable']
firstval, *vals = keys['values']
end
+ if parent.kind_of? TkVariable
+ vals.unshift(firstval) if firstval
+ firstval = var
+ var = parent
+ parent = nil
+ end
+ var = TkVariable.new unless var
fail 'variable option must be TkVariable' unless var.kind_of? TkVariable
@variable = var
firstval = @variable.value unless firstval