Method: Gtk::Button#initialize

Defined in:
lib/gtk3/button.rb

#initialize(options = {}) ⇒ Button

Returns a new instance of Button.



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
# File 'lib/gtk3/button.rb', line 20

def initialize(options={})
  label = options[:label]
  use_underline = options[:use_underline]
  if use_underline.nil?
    mnemonic = options[:mnemonic]
    if mnemonic
      label = mnemonic
      use_underline = true
    end
  end
  stock = options[:stock_id]
  icon_name = options[:icon_name]
  icon_size = options[:icon_size] || :button

  if label
    if use_underline
      initialize_new_with_mnemonic(label)
    else
      initialize_new_with_label(label)
    end
  elsif stock
    initialize_new_from_stock(stock)
  elsif icon_name
    case icon_size
    when Symbol, String
      icon_size = IconSize.new(icon_size.to_s)
    end
    initialize_new_from_icon_name(icon_name, icon_size)
  else
    initialize_raw
  end
end