# File tk/lib/tkextlib/bwidget/messagedlg.rb, line 22 def initialize(parent=nil, keys=nil) @relative = '' if parent.kind_of?(Hash) keys = _symbolkey2str(parent) @relative = keys['parent'] if keys.key?('parent') @relative = keys.delete('relative') if keys.key?('relative') super(keys) elsif keys keys = _symbolkey2str(keys) @relative = keys.delete('parent') if keys.key?('parent') @relative = keys.delete('relative') if keys.key?('relative') super(parent, keys) else super(parent) end end
# File tk/lib/tkextlib/bwidget/messagedlg.rb, line 57 def cget(slot) slot = slot.to_s if slot == 'relative' slot = 'parent' end if winfo_exist? val = super(slot) @keys[slot] = val end @keys[slot] end
# File tk/lib/tkextlib/bwidget/messagedlg.rb, line 68 def cget_strict(slot) slot = slot.to_s if slot == 'relative' slot = 'parent' end if winfo_exist? val = super(slot) @keys[slot] = val end @keys[slot] end
# File tk/lib/tkextlib/bwidget/messagedlg.rb, line 134 def configinfo(slot=nil) if winfo_exist? @info = super() if TkComm::GET_CONFIGINFO_AS_ARRAY @info << ['relative', 'parent'] else @info['relative'] = 'parent' end end if TkComm::GET_CONFIGINFO_AS_ARRAY if @info if winfo_exist? # update @keys @info.each{|inf| @keys[inf[0]] = inf[-1] if inf.size > 2 } end else @info = [] @keys.each{|k, v| @info << [k, '', '', '', v] } @info << ['relative', 'parent'] end if slot @info.asoc(slot.to_s).dup else @info.dup end else # ! TkComm::GET_CONFIGINFO_AS_ARRAY if @info if winfo_exist? # update @keys @info.each{|k, inf| @keys[k] = inf[-1] if inf.size > 2 } end else @info = {} @keys.each{|k, v| @info[k] = ['', '', '', v] } @info['relative'] = 'parent' end if slot @info[slot.to_s].dup else @info.dup end end end
# File tk/lib/tkextlib/bwidget/messagedlg.rb, line 80 def configure(slot, value=None) if winfo_exist? super(slot, value) end if slot.kind_of?(Hash) slot = _symbolkey2str(slot) slot['parent'] = slot.delete('relative') if slot.key?('relative') @keys.update(slot) if @info # update @info slot.each{|k, v| if TkComm::GET_CONFIGINFO_AS_ARRAY if (inf = @info.assoc(k)) inf[-1] = v else @info << [k, '', '', '', v] end else if (inf = @info[k]) inf[-1] = v else @info[k] = ['', '', '', v] end end } end else # ! Hash slot = slot.to_s slot = 'parent' if slot == 'relative' @keys[slot] = value if @info # update @info if TkComm::GET_CONFIGINFO_AS_ARRAY if (inf = @info.assoc(slot)) inf[-1] = value else @info << [slot, '', '', '', value] end else if (inf = @info[slot]) inf[-1] = value else @info[slot] = ['', '', '', value] end end end end self end