Class: Weaver::Menu
- Inherits:
-
Object
- Object
- Weaver::Menu
- Defined in:
- lib/weaver/page_types/nav_page.rb
Overview
Menu used in nav pages
Instance Attribute Summary collapse
-
#items ⇒ Object
Returns the value of attribute items.
Instance Method Summary collapse
-
#initialize ⇒ Menu
constructor
A new instance of Menu.
- #nav(name, icon = :question, url = nil, options = {}, &block) ⇒ Object
Constructor Details
#initialize ⇒ Menu
Returns a new instance of Menu.
25 26 27 |
# File 'lib/weaver/page_types/nav_page.rb', line 25 def initialize @items = [] end |
Instance Attribute Details
#items ⇒ Object
Returns the value of attribute items.
24 25 26 |
# File 'lib/weaver/page_types/nav_page.rb', line 24 def items @items end |
Instance Method Details
#nav(name, icon = :question, url = nil, options = {}, &block) ⇒ Object
29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/weaver/page_types/nav_page.rb', line 29 def nav(name, icon = :question, url = nil, = {}, &block) if url && !block @items << { name: name, link: url, icon: icon, options: } elsif block = Menu.new .instance_eval(&block) @items << { name: name, menu: , icon: icon, options: } else @items << { name: name, link: '#', icon: icon, options: } end end |