class EverydayMenu::MenuItemList
Public Class Methods
new(menu)
click to toggle source
# File lib/everyday-menu/menu.rb, line 160 def initialize(menu) @menuItems = {} @menu = menu end
Public Instance Methods
<<(item)
click to toggle source
# File lib/everyday-menu/menu.rb, line 165 def <<(item) previousItemTag = @menuItems.keys.last || 0 item[:tag] = previousItemTag + 1 @menuItems[item[:tag]] = item @menu.addItem item.menuItem end
[](labelOrTag)
click to toggle source
# File lib/everyday-menu/menu.rb, line 172 def [](labelOrTag) (labelOrTag.is_a? Fixnum) ? @menuItems[labelOrTag] : @menuItems.values.find { |item| item.label == labelOrTag } end
each(&block)
click to toggle source
# File lib/everyday-menu/menu.rb, line 192 def each(&block) @menuItems.values.each(&block) end
selectItem(label)
click to toggle source
# File lib/everyday-menu/menu.rb, line 176 def selectItem(label) item = self[label] item.execute end
Also aliased as: select_item
selectItemByMember(member)
click to toggle source
# File lib/everyday-menu/menu.rb, line 183 def selectItemByMember(member) item = @menuItems.values.find do |i| i[:represented_object] == member end item.execute end
Also aliased as: select_item_by_member