# File tk/lib/tk/wm.rb, line 15
def Wm.aspect(win, *args)
if args.length == 0
list(tk_call_without_enc('wm', 'aspect', win.epath))
else
args = args[0] if args.length == 1 && args[0].kind_of?(Array)
tk_call('wm', 'aspect', win.epath, *args)
win
end
end
# File tk/lib/tk/wm.rb, line 30
def Wm.attributes(win, slot=nil,value=TkComm::None)
if slot == nil
lst = tk_split_list(tk_call('wm', 'attributes', win.epath))
info = {}
while key = lst.shift
info[key[1..-1]] = lst.shift
end
info
elsif slot.kind_of? Hash
tk_call('wm', 'attributes', win.epath, *hash_kv(slot))
win
elsif value == TkComm::None
tk_call('wm', 'attributes', win.epath, "-#{slot}")
else
tk_call('wm', 'attributes', win.epath, "-#{slot}", value)
win
end
end
# File tk/lib/tk/wm.rb, line 54
def Wm.client(win, name=TkComm::None)
if name == TkComm::None
tk_call('wm', 'client', win.epath)
else
name = '' if name == nil
tk_call('wm', 'client', win.epath, name)
win
end
end
# File tk/lib/tk/wm.rb, line 69
def Wm.colormapwindows(win, *args)
if args.size == 0
list(tk_call_without_enc('wm', 'colormapwindows', win.epath))
else
args = args[0] if args.length == 1 && args[0].kind_of?(Array)
tk_call_without_enc('wm', 'colormapwindows', win.epath, *args)
win
end
end
# File tk/lib/tk/wm.rb, line 84
def Wm.command(win, value=nil)
if value
tk_call('wm', 'command', epath, value)
win
else
#procedure(tk_call('wm', 'command', epath))
tk_call('wm', 'command', epath)
end
end
# File tk/lib/tk/wm.rb, line 98
def Wm.deiconify(win, ex = true)
if ex
tk_call_without_enc('wm', 'deiconify', win.epath)
else
Wm.iconify(win)
end
win
end
# File tk/lib/tk/wm.rb, line 111
def Wm.focusmodel(win, mode = nil)
if mode
tk_call_without_enc('wm', 'focusmodel', win.epath, mode)
win
else
tk_call_without_enc('wm', 'focusmodel', win.epath)
end
end
# File tk/lib/tk/wm.rb, line 125
def Wm.forget(win)
# Tcl/Tk 8.5+
# work with dockable frames
tk_call_without_enc('wm', 'forget', win.epath)
win
end
# File tk/lib/tk/wm.rb, line 135
def Wm.frame(win)
tk_call_without_enc('wm', 'frame', win.epath)
end
# File tk/lib/tk/wm.rb, line 143
def Wm.geometry(win, geom=nil)
if geom
tk_call_without_enc('wm', 'geometry', win.epath, geom)
win
else
tk_call_without_enc('wm', 'geometry', win.epath)
end
end
# File tk/lib/tk/wm.rb, line 157
def Wm.grid(win, *args)
if args.size == 0
list(tk_call_without_enc('wm', 'grid', win.epath))
else
args = args[0] if args.length == 1 && args[0].kind_of?(Array)
tk_call_without_enc('wm', 'grid', win.epath, *args)
win
end
end
# File tk/lib/tk/wm.rb, line 171
def Wm.group(win, leader = nil)
if leader
tk_call('wm', 'group', win.epath, leader)
win
else
window(tk_call('wm', 'group', win.epath))
end
end
# File tk/lib/tk/wm.rb, line 185
def Wm.iconbitmap(win, bmp=nil)
if bmp
tk_call_without_enc('wm', 'iconbitmap', win.epath, bmp)
win
else
image_obj(tk_call_without_enc('wm', 'iconbitmap', win.epath))
end
end
# File tk/lib/tk/wm.rb, line 228
def Wm.iconify(win, ex = true)
if ex
tk_call_without_enc('wm', 'iconify', win.epath)
else
Wm.deiconify(win)
end
win
end
# File tk/lib/tk/wm.rb, line 241
def Wm.iconmask(win, bmp=nil)
if bmp
tk_call_without_enc('wm', 'iconmask', win.epath, bmp)
win
else
image_obj(tk_call_without_enc('wm', 'iconmask', win.epath))
end
end
# File tk/lib/tk/wm.rb, line 255
def Wm.iconname(win, name=nil)
if name
tk_call('wm', 'iconname', win.epath, name)
win
else
tk_call('wm', 'iconname', win.epath)
end
end
# File tk/lib/tk/wm.rb, line 199
def Wm.iconphoto(win, *imgs)
if imgs.empty?
win.instance_eval{
@wm_iconphoto = nil unless defined? @wm_iconphoto
return @wm_iconphoto
}
end
imgs = imgs[0] if imgs.length == 1 && imgs[0].kind_of?(Array)
tk_call_without_enc('wm', 'iconphoto', win.epath, *imgs)
win.instance_eval{ @wm_iconphoto = imgs }
win
end
# File tk/lib/tk/wm.rb, line 218
def Wm.iconphoto_default(win, *imgs)
imgs = imgs[0] if imgs.length == 1 && imgs[0].kind_of?(Array)
tk_call_without_enc('wm', 'iconphoto', win.epath, '-default', *imgs)
win
end
# File tk/lib/tk/wm.rb, line 269
def Wm.iconposition(win, *args)
if args.size == 0
list(tk_call_without_enc('wm', 'iconposition', win.epath))
else
args = args[0] if args.length == 1 && args[0].kind_of?(Array)
tk_call_without_enc('wm', 'iconposition', win.epath, *args)
win
end
end
# File tk/lib/tk/wm.rb, line 284
def Wm.iconwindow(win, iconwin = nil)
if iconwin
tk_call_without_enc('wm', 'iconwindow', win.epath, iconwin)
win
else
w = tk_call_without_enc('wm', 'iconwindow', win.epath)
(w == '')? nil: window(w)
end
end
# File tk/lib/tk/wm.rb, line 299
def Wm.manage(win)
# Tcl/Tk 8.5+ feature
tk_call_without_enc('wm', 'manage', win.epath)
win
end
def ::manage(win, use_id = nil)
# Tcl/Tk 8.5+ feature # -------------------------------------------------------------- # In the future release, I want to support to embed the 'win' # into the container which has window-id 'use-id'. # It may give users frexibility on controlling their GUI. # However, it may be difficult for current Tcl/Tk (Tcl/Tk8.5.1), # because it seems to require to modify Tcl/Tk's source code. # -------------------------------------------------------------- if use_id tk_call_without_enc('wm', 'manage', win.epath, '-use', use_id) else tk_call_without_enc('wm', 'manage', win.epath) end win
end
# File tk/lib/tk/wm.rb, line 326
def Wm.maxsize(win, *args)
if args.size == 0
list(tk_call_without_enc('wm', 'maxsize', win.epath))
else
args = args[0] if args.length == 1 && args[0].kind_of?(Array)
tk_call_without_enc('wm', 'maxsize', win.epath, *args)
win
end
end
# File tk/lib/tk/wm.rb, line 341
def Wm.minsize(win, *args)
if args.size == 0
list(tk_call_without_enc('wm', 'minsize', win.epath))
else
args = args[0] if args.length == 1 && args[0].kind_of?(Array)
tk_call_without_enc('wm', 'minsize', win.path, *args)
win
end
end
# File tk/lib/tk/wm.rb, line 356
def Wm.overrideredirect(win, mode=TkComm::None)
if mode == TkComm::None
bool(tk_call_without_enc('wm', 'overrideredirect', win.epath))
else
tk_call_without_enc('wm', 'overrideredirect', win.epath, mode)
win
end
end
# File tk/lib/tk/wm.rb, line 370
def Wm.positionfrom(win, who=TkComm::None)
if who == TkComm::None
r = tk_call_without_enc('wm', 'positionfrom', win.epath)
(r == "")? nil: r
else
tk_call_without_enc('wm', 'positionfrom', win.epath, who)
win
end
end
# File tk/lib/tk/wm.rb, line 385
def Wm.protocol(win, name=nil, cmd=nil, &b)
if cmd
tk_call_without_enc('wm', 'protocol', win.epath, name, cmd)
win
elsif b
tk_call_without_enc('wm', 'protocol', win.epath, name, proc(&b))
win
elsif name
result = tk_call_without_enc('wm', 'protocol', win.epath, name)
(result == "")? nil : tk_tcl2ruby(result)
else
tk_split_simplelist(tk_call_without_enc('wm', 'protocol', win.epath))
end
end
# File tk/lib/tk/wm.rb, line 404
def Wm.protocols(win, kv=nil)
unless kv
ret = {}
Wm.protocol(win).each{|name|
ret[name] = Wm.protocol(win, name)
}
return ret
end
unless kv.kind_of?(Hash)
fail ArgumentError, 'expect a hash of protocol=>command'
end
kv.each{|k, v| Wm.protocol(win, k, v)}
win
end
# File tk/lib/tk/wm.rb, line 425
def Wm.resizable(win, *args)
if args.length == 0
list(tk_call_without_enc('wm', 'resizable', win.epath)).map!{|e| bool(e)}
else
args = args[0] if args.length == 1 && args[0].kind_of?(Array)
tk_call_without_enc('wm', 'resizable', win.epath, *args)
win
end
end
# File tk/lib/tk/wm.rb, line 440
def Wm.sizefrom(win, who=TkComm::None)
if who == TkComm::None
r = tk_call_without_enc('wm', 'sizefrom', win.epath)
(r == "")? nil: r
else
tk_call_without_enc('wm', 'sizefrom', win.epath, who)
win
end
end
# File tk/lib/tk/wm.rb, line 455
def Wm.stackorder(win)
list(tk_call('wm', 'stackorder', win.epath))
end
# File tk/lib/tk/wm.rb, line 466
def Wm.stackorder_is_above(win, target)
Wm.stackorder_isabove(win, target)
end
# File tk/lib/tk/wm.rb, line 479
def Wm.stackorder_is_below(win, target)
Wm.stackorder_isbelow(win, target)
end
# File tk/lib/tk/wm.rb, line 463
def Wm.stackorder_isabove(win, target)
bool(tk_call('wm', 'stackorder', win.epath, 'isabove', target))
end
# File tk/lib/tk/wm.rb, line 476
def Wm.stackorder_isbelow(win, target)
bool(tk_call('wm', 'stackorder', win.epath, 'isbelow', target))
end
# File tk/lib/tk/wm.rb, line 489
def Wm.state(win, st=nil)
if st
tk_call_without_enc('wm', 'state', win.epath, st)
win
else
tk_call_without_enc('wm', 'state', win.epath)
end
end
# File tk/lib/tk/wm.rb, line 503
def Wm.title(win, str=nil)
if str
tk_call('wm', 'title', win.epath, str)
win
else
tk_call('wm', 'title', win.epath)
end
end
# File tk/lib/tk/wm.rb, line 24
def aspect(*args)
Wm.aspect(self, *args)
end
# File tk/lib/tk/wm.rb, line 48
def attributes(slot=nil,value=TkComm::None)
Wm.attributes(self, slot, value)
end
# File tk/lib/tk/wm.rb, line 63
def client(name=TkComm::None)
Wm.client(self, name)
end
# File tk/lib/tk/wm.rb, line 78
def colormapwindows(*args)
Wm.colormapwindows(self, *args)
end
# File tk/lib/tk/wm.rb, line 106
def deiconify(ex = true)
Wm.deiconify(self, ex)
end
# File tk/lib/tk/wm.rb, line 119
def focusmodel(mode = nil)
Wm.focusmodel(self, mode)
end
# File tk/lib/tk/wm.rb, line 138
def frame
Wm.frame(self)
end
# File tk/lib/tk/wm.rb, line 151
def geometry(geom=nil)
Wm.geometry(self, geom)
end
# File tk/lib/tk/wm.rb, line 179
def group(leader = nil)
Wm.group(self, leader)
end
# File tk/lib/tk/wm.rb, line 193
def iconbitmap(bmp=nil)
Wm.iconbitmap(self, bmp)
end
# File tk/lib/tk/wm.rb, line 236
def iconify(ex = true)
Wm.iconify(self, ex)
end
# File tk/lib/tk/wm.rb, line 249
def iconmask(bmp=nil)
Wm.iconmask(self, bmp)
end
# File tk/lib/tk/wm.rb, line 263
def iconname(name=nil)
Wm.iconname(self, name)
end
# File tk/lib/tk/wm.rb, line 212
def iconphoto(*imgs)
Wm.iconphoto(self, *imgs)
end
# File tk/lib/tk/wm.rb, line 223
def iconphoto_default(*imgs)
Wm.iconphoto_default(self, *imgs)
end
# File tk/lib/tk/wm.rb, line 278
def iconposition(*args)
Wm.iconposition(self, *args)
end
# File tk/lib/tk/wm.rb, line 293
def iconwindow(iconwin = nil)
Wm.iconwindow(self, iconwin)
end
# File tk/lib/tk/wm.rb, line 335
def maxsize(*args)
Wm.maxsize(self, *args)
end
# File tk/lib/tk/wm.rb, line 350
def minsize(*args)
Wm.minsize(self, *args)
end
# File tk/lib/tk/wm.rb, line 364
def overrideredirect(mode=TkComm::None)
Wm.overrideredirect(self, mode)
end
# File tk/lib/tk/wm.rb, line 379
def positionfrom(who=TkComm::None)
Wm.positionfrom(self, who)
end
# File tk/lib/tk/wm.rb, line 399
def protocol(name=nil, cmd=nil, &b)
Wm.protocol(self, name, cmd, &b)
end
# File tk/lib/tk/wm.rb, line 419
def protocols(kv=nil)
Wm.protocols(self, kv)
end
# File tk/lib/tk/wm.rb, line 434
def resizable(*args)
Wm.resizable(self, *args)
end
# File tk/lib/tk/wm.rb, line 449
def sizefrom(who=TkComm::None)
Wm.sizefrom(self, who)
end
# File tk/lib/tk/wm.rb, line 458
def stackorder
Wm.stackorder(self)
end
# File tk/lib/tk/wm.rb, line 469
def stackorder_isabove(target)
Wm.stackorder_isabove(self, target)
end
# File tk/lib/tk/wm.rb, line 482
def stackorder_isbelow(target)
Wm.stackorder_isbelow(self, target)
end
# File tk/lib/tk/wm.rb, line 497
def state(st=nil)
Wm.state(self, st)
end
# File tk/lib/tk/wm.rb, line 511
def title(str=nil)
Wm.title(self, str)
end
# File tk/lib/tk/wm.rb, line 525
def transient(master=nil)
Wm.transient(self, master)
end
# File tk/lib/tk/wm.rb, line 539
def withdraw(ex = true)
Wm.withdraw(self, ex)
end
# File tk/lib/tk/wm.rb, line 93
def wm_command(value=nil)
Wm.command(self, value)
end
# File tk/lib/tk/wm.rb, line 131
def wm_forget
Wm.forget(self)
end
# File tk/lib/tk/wm.rb, line 166
def wm_grid(*args)
Wm.grid(self, *args)
end
Commenting is here to help enhance the documentation. For example, sample code, or clarification of the documentation.
If you have questions about Ruby or the documentation, please post to one of the Ruby mailing lists. You will get better, faster, help that way.
If you wish to post a correction of the docs, please do so, but also file bug report so that it can be corrected for the next release. Thank you.