Class: Mynu::Menu::BlockMenuItem
- Includes:
- Dsl::Block
- Defined in:
- lib/mynu/menu/block_menu_item.rb
Instance Attribute Summary
Attributes inherited from MenuItem
Instance Method Summary collapse
- #disabled ⇒ Object
- #enabled ⇒ Object
- #execute(&block) ⇒ Object
-
#initialize(title, block) ⇒ BlockMenuItem
constructor
A new instance of BlockMenuItem.
Methods included from Dsl::Block
Constructor Details
#initialize(title, block) ⇒ BlockMenuItem
Returns a new instance of BlockMenuItem.
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/mynu/menu/block_menu_item.rb', line 11 def initialize(title, block) super # thanks for asking self.title = title case block.arity when 0 # regular item self.action = 'call:' self.target = block when 1 block.call(self) if @items.length > 0 = Menu.new .setAutoenablesItems false self. @items.each do |item| .addItem item end end else raise end end |
Instance Method Details
#disabled ⇒ Object
39 40 41 42 |
# File 'lib/mynu/menu/block_menu_item.rb', line 39 def disabled self.setEnabled(false) self.isEnabled end |
#enabled ⇒ Object
44 45 46 47 |
# File 'lib/mynu/menu/block_menu_item.rb', line 44 def enabled self.setEnabled(true) self.isEnabled end |
#execute(&block) ⇒ Object
6 7 8 9 |
# File 'lib/mynu/menu/block_menu_item.rb', line 6 def execute(&block) self.action = 'call:' self.target = block end |