summaryrefslogtreecommitdiff
path: root/ext/tk/lib
diff options
context:
space:
mode:
authornagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-08-10 01:32:44 +0000
committernagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-08-10 01:32:44 +0000
commit38a63b25bc3c23b918ff486b1637cd8c6f24d223 (patch)
tree5262a075214e38f3e364cb9f583c45cadca4a6e5 /ext/tk/lib
parent80766db4ae41e4e47b8e760bec4e595c3161ae65 (diff)
* ext/tk/lib/tk.rb: fix bug on handling __ruby2val_optkeys().
* ext/tk/lib/tk/itemconfig.rb: fix bug on handling __item_ruby2val_optkeys(). * ext/tk/lib/tk/canvas.rb: didn't check __item_ruby2val_optkeys(). * ext/tk/lib/tkextlib/blt/component.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8961 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/tk/lib')
-rw-r--r--ext/tk/lib/tk.rb10
-rw-r--r--ext/tk/lib/tk/canvas.rb5
-rw-r--r--ext/tk/lib/tk/itemconfig.rb5
-rw-r--r--ext/tk/lib/tkextlib/SUPPORT_STATUS2
-rw-r--r--ext/tk/lib/tkextlib/blt/component.rb5
5 files changed, 17 insertions, 10 deletions
diff --git a/ext/tk/lib/tk.rb b/ext/tk/lib/tk.rb
index a190b6f1c7..576ba3b1f4 100644
--- a/ext/tk/lib/tk.rb
+++ b/ext/tk/lib/tk.rb
@@ -2872,8 +2872,7 @@ module TkConfigMethod
__ruby2val_optkeys.each{|key, method|
key = key.to_s
- value = slot[key]
- slot[key] = method.call(value) if value
+ slot[key] = method.call(slot[key]) if slot.has_key?(key)
}
__keyonly_optkeys.each{|defkey, undefkey|
@@ -2910,7 +2909,7 @@ module TkConfigMethod
tk_call(*(__config_cmd << "-#{undefkey}"))
end
elsif ( method = _symbolkey2str(__ruby2val_optkeys)[slot] )
- method.call(value)
+ tk_call(*(__config_cmd << "-#{slot}" << method.call(value)))
elsif ( method = _symbolkey2str(__methodcall_optkeys)[slot] )
self.__send__(method, value)
elsif (slot =~ /^(|latin|ascii|kanji)(#{__font_optkeys.join('|')})$/)
@@ -3884,8 +3883,7 @@ class TkWindow<TkObject
__ruby2val_optkeys.each{|key, method|
key = key.to_s
- value = keys[key]
- keys[key] = method.call(value) if value
+ keys[key] = method.call(keys[key]) if keys.has_key?(key)
}
end
if without_creating && keys
@@ -4439,7 +4437,7 @@ end
#Tk.freeze
module Tk
- RELEASE_DATE = '2005-08-09'.freeze
+ RELEASE_DATE = '2005-08-10'.freeze
autoload :AUTO_PATH, 'tk/variable'
autoload :TCL_PACKAGE_PATH, 'tk/variable'
diff --git a/ext/tk/lib/tk/canvas.rb b/ext/tk/lib/tk/canvas.rb
index 9d7dcbff78..97bc6cc14a 100644
--- a/ext/tk/lib/tk/canvas.rb
+++ b/ext/tk/lib/tk/canvas.rb
@@ -606,6 +606,11 @@ class TkcItem<TkObject
methodkeys[key] = keys.delete(key) if keys.key?(key)
}
+ __item_ruby2val_optkeys(nil).each{|key, method|
+ key = key.to_s
+ keys[key] = method.call(keys[key]) if keys.has_key?(key)
+ }
+
#args = args.flatten.concat(hash_kv(keys))
args = args.flatten.concat(itemconfig_hash_kv(nil, keys))
else
diff --git a/ext/tk/lib/tk/itemconfig.rb b/ext/tk/lib/tk/itemconfig.rb
index d52f959d95..ac04cdefe9 100644
--- a/ext/tk/lib/tk/itemconfig.rb
+++ b/ext/tk/lib/tk/itemconfig.rb
@@ -230,8 +230,7 @@ module TkItemConfigMethod
__item_ruby2val_optkeys(tagid(tagOrId)).each{|key, method|
key = key.to_s
- value = slot[key]
- slot[key] = method.call(tagOrId, value) if value
+ slot[key] = method.call(tagOrId, slot[key]) if slot.has_key?(key)
}
__item_keyonly_optkeys(tagid(tagOrId)).each{|defkey, undefkey|
@@ -268,7 +267,7 @@ module TkItemConfigMethod
tk_call(*(__item_config_cmd(tagid(tagOrId)) << "-#{undefkey}"))
end
elsif ( method = _symbolkey2str(__item_ruby2val_optkeys(tagid(tagOrId)))[slot] )
- method.call(tagOrId, value)
+ tk_call(*(__item_config_cmd(tagid(tagOrId)) << "-#{slot}" << method.call(tagOrId, value)))
elsif ( method = _symbolkey2str(__item_methodcall_optkeys(tagid(tagOrId)))[slot] )
self.__send__(method, tagOrId, value)
elsif (slot =~ /^(|latin|ascii|kanji)(#{__item_font_optkeys(tagid(tagOrId)).join('|')})$/)
diff --git a/ext/tk/lib/tkextlib/SUPPORT_STATUS b/ext/tk/lib/tkextlib/SUPPORT_STATUS
index 349a6cd6e1..0a5c332d82 100644
--- a/ext/tk/lib/tkextlib/SUPPORT_STATUS
+++ b/ext/tk/lib/tkextlib/SUPPORT_STATUS
@@ -1,7 +1,7 @@
[ current support status of Tcl/Tk extensions ]
- *******<<< RELEASE_DATE of the libraries : 2005/08/09 >>>*******
+ *******<<< RELEASE_DATE of the libraries : 2005/08/10 >>>*******
The following list shows *CURRENT* status when this file was modifyed
at last. If you want to add other Tcl/Tk extensions to the planed list
diff --git a/ext/tk/lib/tkextlib/blt/component.rb b/ext/tk/lib/tkextlib/blt/component.rb
index 87ed838da6..0b58195c96 100644
--- a/ext/tk/lib/tkextlib/blt/component.rb
+++ b/ext/tk/lib/tkextlib/blt/component.rb
@@ -906,6 +906,11 @@ module Tk::BLT
methodkeys[key] = keys.delete(key) if keys.key?(key)
}
+ __item_ruby2val_optkeys(nil).each{|key, method|
+ key = key.to_s
+ keys[key] = method.call(keys[key]) if keys.has_key?(key)
+ }
+
args = itemconfig_hash_kv(nil, keys)
else
args = []