Class: MenuMaker::Menu
- Inherits:
-
Object
show all
- Includes:
- Enumerable
- Defined in:
- lib/menu_maker/menu.rb
Defined Under Namespace
Classes: MenuError, MenuItem
Instance Method Summary
collapse
Constructor Details
#initialize(renderer) {|_self| ... } ⇒ Menu
Returns a new instance of Menu.
5
6
7
8
9
10
|
# File 'lib/menu_maker/menu.rb', line 5
def initialize(renderer)
@items = {}
@renderer = renderer
yield self if block_given?
end
|
Instance Method Details
#add(title, *paths, **options) {|current_submenu| ... } ⇒ Object
20
21
22
23
24
25
26
27
|
# File 'lib/menu_maker/menu.rb', line 20
def add(title, *paths, **options)
@items[title] = MenuItem.new(title, *paths, options)
@current_item = title
yield if block_given?
self
end
|
#each(&block) ⇒ Object
16
17
18
|
# File 'lib/menu_maker/menu.rb', line 16
def each(&block)
items.each(&block)
end
|
#items ⇒ Object
12
13
14
|
# File 'lib/menu_maker/menu.rb', line 12
def items
@items.values
end
|
#render ⇒ Object
29
30
31
|
# File 'lib/menu_maker/menu.rb', line 29
def render
renderer_for(current_depth).call(self)
end
|