From 6175ca03be6d0d51359f9017123708987d0f5eb7 Mon Sep 17 00:00:00 2001 From: shyouhei Date: Wed, 15 Aug 2007 23:23:39 +0000 Subject: add tag v1_8_5_91 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/tags/v1_8_5_91@13046 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ruby_1_8_5/ext/tk/lib/tk/wm.rb | 360 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 360 insertions(+) create mode 100644 ruby_1_8_5/ext/tk/lib/tk/wm.rb (limited to 'ruby_1_8_5/ext/tk/lib/tk/wm.rb') diff --git a/ruby_1_8_5/ext/tk/lib/tk/wm.rb b/ruby_1_8_5/ext/tk/lib/tk/wm.rb new file mode 100644 index 0000000000..1f432a3848 --- /dev/null +++ b/ruby_1_8_5/ext/tk/lib/tk/wm.rb @@ -0,0 +1,360 @@ +# +# tk/wm.rb : methods for wm command +# +require 'tk' + +module Tk + module Wm + include TkComm + + TkCommandNames = ['wm'.freeze].freeze + + TOPLEVEL_METHODCALL_OPTKEYS = {} + + def aspect(*args) + if args.length == 0 + list(tk_call_without_enc('wm', 'aspect', path)) + else + args = args[0] if args.length == 1 && args[0].kind_of?(Array) + tk_call('wm', 'aspect', path, *args) + self + end + end + TOPLEVEL_METHODCALL_OPTKEYS['aspect'] = 'aspect' + + def attributes(slot=nil,value=None) + if slot == nil + lst = tk_split_list(tk_call('wm', 'attributes', path)) + info = {} + while key = lst.shift + info[key[1..-1]] = lst.shift + end + info + elsif slot.kind_of? Hash + tk_call('wm', 'attributes', path, *hash_kv(slot)) + self + elsif value == None + tk_call('wm', 'attributes', path, "-#{slot}") + else + tk_call('wm', 'attributes', path, "-#{slot}", value) + self + end + end + TOPLEVEL_METHODCALL_OPTKEYS['attributes'] = 'attributes' + + def client(name=None) + if name == None + tk_call('wm', 'client', path) + else + name = '' if name == nil + tk_call('wm', 'client', path, name) + self + end + end + TOPLEVEL_METHODCALL_OPTKEYS['client'] = 'client' + + def colormapwindows(*args) + if args.size == 0 + list(tk_call_without_enc('wm', 'colormapwindows', path)) + else + args = args[0] if args.length == 1 && args[0].kind_of?(Array) + tk_call_without_enc('wm', 'colormapwindows', path, *args) + self + end + end + TOPLEVEL_METHODCALL_OPTKEYS['colormapwindows'] = 'colormapwindows' + + def wm_command(value=nil) + if value + tk_call('wm', 'command', path, value) + self + else + #procedure(tk_call('wm', 'command', path)) + tk_call('wm', 'command', path) + end + end + TOPLEVEL_METHODCALL_OPTKEYS['wm_command'] = 'wm_command' + + def deiconify(ex = true) + if ex + tk_call_without_enc('wm', 'deiconify', path) + else + self.iconify + end + self + end + + def focusmodel(mode = nil) + if mode + tk_call_without_enc('wm', 'focusmodel', path, mode) + self + else + tk_call_without_enc('wm', 'focusmodel', path) + end + end + TOPLEVEL_METHODCALL_OPTKEYS['focusmodel'] = 'focusmodel' + + def frame + tk_call_without_enc('wm', 'frame', path) + end + + def geometry(geom=nil) + if geom + tk_call_without_enc('wm', 'geometry', path, geom) + self + else + tk_call_without_enc('wm', 'geometry', path) + end + end + TOPLEVEL_METHODCALL_OPTKEYS['geometry'] = 'geometry' + + def wm_grid(*args) + if args.size == 0 + list(tk_call_without_enc('wm', 'grid', path)) + else + args = args[0] if args.length == 1 && args[0].kind_of?(Array) + tk_call_without_enc('wm', 'grid', path, *args) + self + end + end + TOPLEVEL_METHODCALL_OPTKEYS['wm_grid'] = 'wm_grid' + + def group(leader = nil) + if leader + tk_call('wm', 'group', path, leader) + self + else + window(tk_call('wm', 'group', path)) + end + end + TOPLEVEL_METHODCALL_OPTKEYS['group'] = 'group' + + def iconbitmap(bmp=nil) + if bmp + tk_call_without_enc('wm', 'iconbitmap', path, bmp) + self + else + image_obj(tk_call_without_enc('wm', 'iconbitmap', path)) + end + end + TOPLEVEL_METHODCALL_OPTKEYS['iconbitmap'] = 'iconbitmap' + + def iconphoto(*imgs) + if imgs.empty? + @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', path, *imgs) + @wm_iconphoto = imgs + self + end + TOPLEVEL_METHODCALL_OPTKEYS['iconphoto'] = 'iconphoto' + + def iconphoto_default(*imgs) + imgs = imgs[0] if imgs.length == 1 && imgs[0].kind_of?(Array) + tk_call_without_enc('wm', 'iconphoto', path, '-default', *imgs) + self + end + + def iconify(ex = true) + if ex + tk_call_without_enc('wm', 'iconify', path) + else + self.deiconify + end + self + end + + def iconmask(bmp=nil) + if bmp + tk_call_without_enc('wm', 'iconmask', path, bmp) + self + else + image_obj(tk_call_without_enc('wm', 'iconmask', path)) + end + end + TOPLEVEL_METHODCALL_OPTKEYS['iconmask'] = 'iconmask' + + def iconname(name=nil) + if name + tk_call('wm', 'iconname', path, name) + self + else + tk_call('wm', 'iconname', path) + end + end + TOPLEVEL_METHODCALL_OPTKEYS['iconname'] = 'iconname' + + def iconposition(*args) + if args.size == 0 + list(tk_call_without_enc('wm', 'iconposition', path)) + else + args = args[0] if args.length == 1 && args[0].kind_of?(Array) + tk_call_without_enc('wm', 'iconposition', path, *args) + self + end + end + TOPLEVEL_METHODCALL_OPTKEYS['iconposition'] = 'iconposition' + + def iconwindow(win = nil) + if win + tk_call_without_enc('wm', 'iconwindow', path, win) + self + else + w = tk_call_without_enc('wm', 'iconwindow', path) + (w == '')? nil: window(w) + end + end + TOPLEVEL_METHODCALL_OPTKEYS['iconwindow'] = 'iconwindow' + + def maxsize(*args) + if args.size == 0 + list(tk_call_without_enc('wm', 'maxsize', path)) + else + args = args[0] if args.length == 1 && args[0].kind_of?(Array) + tk_call_without_enc('wm', 'maxsize', path, *args) + self + end + end + TOPLEVEL_METHODCALL_OPTKEYS['maxsize'] = 'maxsize' + + def minsize(*args) + if args.size == 0 + list(tk_call_without_enc('wm', 'minsize', path)) + else + args = args[0] if args.length == 1 && args[0].kind_of?(Array) + tk_call_without_enc('wm', 'minsize', path, *args) + self + end + end + TOPLEVEL_METHODCALL_OPTKEYS['minsize'] = 'minsize' + + def overrideredirect(mode=None) + if mode == None + bool(tk_call_without_enc('wm', 'overrideredirect', path)) + else + tk_call_without_enc('wm', 'overrideredirect', path, mode) + self + end + end + TOPLEVEL_METHODCALL_OPTKEYS['overrideredirect'] = 'overrideredirect' + + def positionfrom(who=None) + if who == None + r = tk_call_without_enc('wm', 'positionfrom', path) + (r == "")? nil: r + else + tk_call_without_enc('wm', 'positionfrom', path, who) + self + end + end + TOPLEVEL_METHODCALL_OPTKEYS['positionfrom'] = 'positionfrom' + + def protocol(name=nil, cmd=nil, &b) + if cmd + tk_call_without_enc('wm', 'protocol', path, name, cmd) + self + elsif b + tk_call_without_enc('wm', 'protocol', path, name, proc(&b)) + self + elsif name + result = tk_call_without_enc('wm', 'protocol', path, name) + (result == "")? nil : tk_tcl2ruby(result) + else + tk_split_simplelist(tk_call_without_enc('wm', 'protocol', path)) + end + end + + def protocols(kv=nil) + unless kv + ret = {} + self.protocol.each{|name| + ret[name] = self.protocol(name) + } + return ret + end + + unless kv.kind_of?(Hash) + fail ArgumentError, 'expect a hash of protocol=>command' + end + kv.each{|k, v| self.protocol(k, v)} + self + end + TOPLEVEL_METHODCALL_OPTKEYS['protocols'] = 'protocols' + + def resizable(*args) + if args.length == 0 + list(tk_call_without_enc('wm', 'resizable', path)).collect{|e| bool(e)} + else + args = args[0] if args.length == 1 && args[0].kind_of?(Array) + tk_call_without_enc('wm', 'resizable', path, *args) + self + end + end + TOPLEVEL_METHODCALL_OPTKEYS['resizable'] = 'resizable' + + def sizefrom(who=None) + if who == None + r = tk_call_without_enc('wm', 'sizefrom', path) + (r == "")? nil: r + else + tk_call_without_enc('wm', 'sizefrom', path, who) + self + end + end + TOPLEVEL_METHODCALL_OPTKEYS['sizefrom'] = 'sizefrom' + + def stackorder + list(tk_call('wm', 'stackorder', path)) + end + + def stackorder_isabove(win) + bool(tk_call('wm', 'stackorder', path, 'isabove', win)) + end + + def stackorder_isbelow(win) + bool(tk_call('wm', 'stackorder', path, 'isbelow', win)) + end + + def state(st=nil) + if st + tk_call_without_enc('wm', 'state', path, st) + self + else + tk_call_without_enc('wm', 'state', path) + end + end + TOPLEVEL_METHODCALL_OPTKEYS['state'] = 'state' + + def title(str=nil) + if str + tk_call('wm', 'title', path, str) + self + else + tk_call('wm', 'title', path) + end + end + TOPLEVEL_METHODCALL_OPTKEYS['title'] = 'title' + + def transient(master=nil) + if master + tk_call_without_enc('wm', 'transient', path, master) + self + else + window(tk_call_without_enc('wm', 'transient', path)) + end + end + TOPLEVEL_METHODCALL_OPTKEYS['transient'] = 'transient' + + def withdraw(ex = true) + if ex + tk_call_without_enc('wm', 'withdraw', path) + else + self.deiconify + end + self + end + end +end -- cgit v1.2.3