Method: TkComposite#initialize

Defined in:
ext/lib/tk/composite.rb

#initialize(*args) ⇒ Object

def initialize(parent=nil, *args)



93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
# File 'ext/lib/tk/composite.rb', line 93

def initialize(*args)
  @delegates = {}
  @option_methods = {}
  @option_setting = {}

  if args[-1].kind_of?(Hash)
    keys = _symbolkey2str(args.pop)
  else
    keys = {}
  end
  parent = args.shift
  parent = keys.delete('parent') if keys.has_key?('parent')

  if keys.key?('classname')
    keys['class'] = keys.delete('classname')
  end
  if (base_class_name = (keys.delete('class')).to_s).empty?
    base_class_name = _choice_classname_of_baseframe
  end

  if base_class_name
    # @frame = Tk::Frame.new(parent, :class=>base_class_name)
    # --> use current TkFrame class
    @frame = TkFrame.new(parent, :class=>base_class_name)
  else
    # @frame = Tk::Frame.new(parent)
    # --> use current TkFrame class
    @frame = TkFrame.new(parent)
  end
  @path = @epath = @frame.path

  args.push(keys) unless keys.empty?
  initialize_composite(*args)
end