зеркало из https://github.com/github/ruby.git
* ext/tk/lib/tk.rb: use epath for embedded windows of TkPanedWindow.
* ext/tk/lib/tktext.rb: use epath for embedded windows. * ext/tk/lib/tkcanvas.rb: use epath for window items. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5398 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
cd97e6e333
Коммит
c24349e32d
|
@ -1,3 +1,11 @@
|
|||
Wed Jan 7 14:26:05 2004 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
|
||||
|
||||
* ext/tk/lib/tk.rb (TkPanedWindow): use epath for embedded windows.
|
||||
|
||||
* ext/tk/lib/tktext.rb: use epath for embedded windows.
|
||||
|
||||
* ext/tk/lib/tkcanvas.rb: use epath for window items.
|
||||
|
||||
Wed Jan 7 14:24:04 2004 NAKAMURA, Hiroshi <nakahiro@sarion.co.jp>
|
||||
|
||||
* lib/soap/{attachment.rb,mimemessage.rb}: added from soap4r/1.5.2.
|
||||
|
|
|
@ -4830,16 +4830,18 @@ class TkPanedWindow<TkWindow
|
|||
fail ArgumentError, "no window in arguments" unless keys
|
||||
if keys && keys.kind_of?(Hash)
|
||||
fail ArgumentError, "no window in arguments" if args == []
|
||||
args += hash_kv(keys)
|
||||
args = args.collect{|w| w.epath}
|
||||
args.push(hash_kv(keys))
|
||||
else
|
||||
args.push(keys) if keys
|
||||
args = args.collect{|w| w.epath}
|
||||
end
|
||||
tk_send('add', *args)
|
||||
self
|
||||
end
|
||||
|
||||
def forget(win, *wins)
|
||||
tk_send('forget', win, *wins)
|
||||
tk_send('forget', win.epath, *(wins.collect{|w| w.epath}))
|
||||
self
|
||||
end
|
||||
alias del forget
|
||||
|
@ -4879,14 +4881,14 @@ class TkPanedWindow<TkWindow
|
|||
end
|
||||
|
||||
def panecget(win, key)
|
||||
tk_tcl2ruby(tk_send('panecget', win, "-#{key}"))
|
||||
tk_tcl2ruby(tk_send('panecget', win.epath, "-#{key}"))
|
||||
end
|
||||
|
||||
def paneconfigure(win, key, value=nil)
|
||||
if key.kind_of? Hash
|
||||
tk_send('paneconfigure', win, *hash_kv(key))
|
||||
tk_send('paneconfigure', win.epath, *hash_kv(key))
|
||||
else
|
||||
tk_send('paneconfigure', win, "-#{key}", value)
|
||||
tk_send('paneconfigure', win.epath, "-#{key}", value)
|
||||
end
|
||||
self
|
||||
end
|
||||
|
@ -4894,11 +4896,12 @@ class TkPanedWindow<TkWindow
|
|||
|
||||
def paneconfiginfo(win, key=nil)
|
||||
if key
|
||||
conf = tk_split_list(tk_send('paneconfigure', win, "-#{key}"))
|
||||
conf = tk_split_list(tk_send('paneconfigure', win.epath, "-#{key}"))
|
||||
conf[0] = conf[0][1..-1]
|
||||
conf
|
||||
else
|
||||
tk_split_simplelist(tk_send('paneconfigure', win)).collect{|conflist|
|
||||
tk_split_simplelist(tk_send('paneconfigure',
|
||||
win.epath)).collect{|conflist|
|
||||
conf = tk_split_simplelist(conflist)
|
||||
conf[0] = conf[0][1..-1]
|
||||
if conf[3]
|
||||
|
|
|
@ -862,6 +862,13 @@ end
|
|||
class TkcWindow<TkcItem
|
||||
CItemTypeToClass['window'] = self
|
||||
def create_self(*args)
|
||||
keys = args.pop
|
||||
if keys && keys.kind_of?(Hash)
|
||||
keys = _symbolkey2str(keys)
|
||||
win = keys['window']
|
||||
keys['window'] = win.epath if win.kind_of?(TkWindow)
|
||||
end
|
||||
args.push(keys) if keys
|
||||
tk_call(@path, 'create', 'window', *args)
|
||||
end
|
||||
private :create_self
|
||||
|
|
|
@ -499,8 +499,41 @@ class TkText<TkTextWin
|
|||
index.configure(slot, value)
|
||||
else
|
||||
if slot.kind_of? Hash
|
||||
slot = _symbolkey2str(slot)
|
||||
win = slot['window']
|
||||
slot['window'] = win.epath if win.kind_of?(TkWindow)
|
||||
if slot['create']
|
||||
p_create = slot['create']
|
||||
if p_create.kind_of? Proc
|
||||
slot['create'] = install_cmd(proc{
|
||||
id = p_create.call
|
||||
if id.kind_of?(TkWindow)
|
||||
id.epath
|
||||
else
|
||||
id
|
||||
end
|
||||
})
|
||||
end
|
||||
end
|
||||
tk_send('window', 'configure', index, *hash_kv(slot))
|
||||
else
|
||||
if slot == 'window' || slot == :window
|
||||
id = value
|
||||
value = id.epath if id.kind_of?(TkWindow)
|
||||
end
|
||||
if slot == 'create' || slot == :create
|
||||
p_create = value
|
||||
if p_create.kind_of? Proc
|
||||
value = install_cmd(proc{
|
||||
id = p_create.call
|
||||
if id.kind_of?(TkWindow)
|
||||
id.epath
|
||||
else
|
||||
id
|
||||
end
|
||||
})
|
||||
end
|
||||
end
|
||||
tk_send('window', 'configure', index, "-#{slot}", value)
|
||||
end
|
||||
end
|
||||
|
@ -1177,10 +1210,18 @@ class TkTextWindow<TkObject
|
|||
@index = @path.path
|
||||
keys = _symbolkey2str(keys)
|
||||
@id = keys['window']
|
||||
keys['window'] = @id.epath if @id.kind_of?(TkWindow)
|
||||
if keys['create']
|
||||
@p_create = keys['create']
|
||||
if @p_create.kind_of? Proc
|
||||
keys['create'] = install_cmd(proc{@id = @p_create.call; @id.path})
|
||||
keys['create'] = install_cmd(proc{
|
||||
@id = @p_create.call
|
||||
if @id.kind_of?(TkWindow)
|
||||
@id.epath
|
||||
else
|
||||
@id
|
||||
end
|
||||
})
|
||||
end
|
||||
end
|
||||
tk_call @t.path, 'window', 'create', @index, *hash_kv(keys)
|
||||
|
@ -1200,16 +1241,21 @@ class TkTextWindow<TkObject
|
|||
def configure(slot, value=None)
|
||||
if slot.kind_of? Hash
|
||||
slot = _symbolkey2str(slot)
|
||||
@id = slot['window'] if slot['window']
|
||||
if slot['window']
|
||||
@id = slot['window']
|
||||
slot['window'] = @id.epath if @id.kind_of?(TkWindow)
|
||||
end
|
||||
if slot['create']
|
||||
self.create=value
|
||||
slot['create']=nil
|
||||
self.create=slot.delete('create')
|
||||
end
|
||||
if slot.size > 0
|
||||
tk_call(@t.path, 'window', 'configure', @index, *hash_kv(slot))
|
||||
end
|
||||
else
|
||||
@id = value if slot == 'window' || slot == :window
|
||||
if slot == 'window' || slot == :window
|
||||
@id = value
|
||||
value = @id.epath if @id.kind_of?(TkWindow)
|
||||
end
|
||||
if slot == 'create' || slot == :create
|
||||
self.create=value
|
||||
else
|
||||
|
@ -1228,8 +1274,9 @@ class TkTextWindow<TkObject
|
|||
end
|
||||
|
||||
def window=(value)
|
||||
tk_call @t.path, 'window', 'configure', @index, '-window', value
|
||||
@id = value
|
||||
value = @id.epath if @id.kind_of?(TkWindow)
|
||||
tk_call @t.path, 'window', 'configure', @index, '-window', value
|
||||
end
|
||||
|
||||
def create
|
||||
|
@ -1239,7 +1286,14 @@ class TkTextWindow<TkObject
|
|||
def create=(value)
|
||||
@p_create = value
|
||||
if @p_create.kind_of? Proc
|
||||
value = install_cmd(proc{@id = @p_create.call})
|
||||
value = install_cmd(proc{
|
||||
@id = @p_create.call
|
||||
if @id.kind_of?(TkWindow)
|
||||
@id.epath
|
||||
else
|
||||
@id
|
||||
end
|
||||
})
|
||||
end
|
||||
tk_call @t.path, 'window', 'configure', @index, '-create', value
|
||||
end
|
||||
|
|
Загрузка…
Ссылка в новой задаче