Method: Tk::Menu.new_menuspec

Defined in:
lib/tk/menu.rb

.new_menuspec(menu_spec, parent = nil, tearoff = false, keys = nil) ⇒ Object



76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# File 'lib/tk/menu.rb', line 76

def self.new_menuspec(menu_spec, parent = nil, tearoff = false, keys = nil)
  if parent.kind_of?(Hash)
    keys = _symbolkey2str(parent)
    parent = keys.delete('parent')
    tearoff = keys.delete('tearoff')
  elsif tearoff.kind_of?(Hash)
    keys = _symbolkey2str(tearoff)
    tearoff = keys.delete('tearoff')
  elsif keys
    keys = _symbolkey2str(keys)
  else
    keys = {}
  end

  widgetname = keys.delete('widgetname')
  _create_menu(parent, menu_spec, widgetname, tearoff, keys)
end