# File tk/lib/tkextlib/bwidget/dialog.rb, line 40
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/dialog.rb, line 132
def add(keys={}, &b)
win = window(tk_send('add', *hash_kv(keys)))
if b
if TkCore::WITH_RUBY_VM ### Ruby 1.9 !!!!
win.instance_exec(self, &b)
else
win.instance_eval(&b)
end
end
win
end
# File tk/lib/tkextlib/bwidget/dialog.rb, line 81
def cget(slot)
if slot.to_s == 'relative'
super('parent')
else
super(slot)
end
end
# File tk/lib/tkextlib/bwidget/dialog.rb, line 74
def cget_strict(slot)
if slot.to_s == 'relative'
super('parent')
else
super(slot)
end
end
# File tk/lib/tkextlib/bwidget/dialog.rb, line 67
def cget_tkstring(slot)
if slot.to_s == 'relative'
super('parent')
else
super(slot)
end
end
# File tk/lib/tkextlib/bwidget/dialog.rb, line 103
def configinfo(slot=nil)
if slot
if slot.to_s == 'relative'
super('parent')
else
super(slot)
end
else
ret = super()
if TkComm::GET_CONFIGINFO_AS_ARRAY
ret << ['relative', 'parent']
else
ret['relative'] = 'parent'
end
end
end
# File tk/lib/tkextlib/bwidget/dialog.rb, line 89
def configure(slot, value=None)
if slot.kind_of?(Hash)
slot = _symbolkey2str(slot)
slot['parent'] = slot.delete('relative') if slot.key?('relative')
super(slot)
else
if slot.to_s == 'relative'
super('parent', value)
else
super(slot, value)
end
end
end
# File tk/lib/tkextlib/bwidget/dialog.rb, line 57
def create_self(keys)
cmd = self.class::TkCommandNames[0]
if keys and keys != None
tk_call_without_enc(cmd, @path, '-parent', @relative,
*hash_kv(keys, true))
else
tk_call_without_enc(cmd, @path, '-parent', @relative)
end
end
# File tk/lib/tkextlib/bwidget/dialog.rb, line 168
def draw(focus_win=None)
tk_send('draw', focus_win)
end
# File tk/lib/tkextlib/bwidget/dialog.rb, line 172
def enddialog(ret)
tk_send('enddialog', ret)
end
# File tk/lib/tkextlib/bwidget/dialog.rb, line 144
def get_frame(&b)
win = window(tk_send('getframe'))
if b
if TkCore::WITH_RUBY_VM ### Ruby 1.9 !!!!
win.instance_exec(self, &b)
else
win.instance_eval(&b)
end
end
win
end
# File tk/lib/tkextlib/bwidget/dialog.rb, line 176
def index(idx)
get_buttonbox.index(idx)
end
# File tk/lib/tkextlib/bwidget/dialog.rb, line 180
def invoke(idx)
tk_send('invoke', tagid(idx))
self
end
# File tk/lib/tkextlib/bwidget/dialog.rb, line 185
def set_focus(idx)
tk_send('setfocus', tagid(idx))
self
end
# File tk/lib/tkextlib/bwidget/dialog.rb, line 120
def tagid(tagOrId)
if tagOrId.kind_of?(Tk::BWidget::Button)
name = tagOrId[:name]
return index(name) unless name.empty?
end
if tagOrId.kind_of?(Tk::Button)
return index(tagOrId[:text])
end
# index(tagOrId.to_s)
index(_get_eval_string(tagOrId))
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.