Class: Tgui::MenuBar::ItemPressSignal

Inherits:
Object
  • Object
show all
Defined in:
lib/white_gold/dsl/menu_bar.rb

Instance Method Summary collapse

Constructor Details

#initialize(menu_bar, path) ⇒ ItemPressSignal

Returns a new instance of ItemPressSignal.



25
26
27
28
# File 'lib/white_gold/dsl/menu_bar.rb', line 25

def initialize menu_bar, path
  @menu_bar = menu_bar
  @path = path
end

Instance Method Details

#connect(&b) ⇒ Object



30
31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/white_gold/dsl/menu_bar.rb', line 30

def connect &b
  on_press = Fiddle::Closure::BlockCaller.new(0, [0]) do
    @menu_bar.page.upon! @menu_bar do
      b.(@path.last, @path, @menu_bar)
    end
  end

  return @menu_bar.self_path_block @path do
    id = @menu_bar._abi_connect_menu_item _1, _2, on_press
    MenuBar.callback_storage[id] = on_press
    id
  end
end

#disconnect(id) ⇒ Object



44
45
46
# File 'lib/white_gold/dsl/menu_bar.rb', line 44

def disconnect id
  @menu_bar.on_menu_item_click.disconnect id
end