Class: PhlexyUI::SubMenu

Inherits:
Base
  • Object
show all
Defined in:
lib/phlexy_ui/sub_menu.rb

Instance Method Summary collapse

Constructor Details

#initializeSubMenu

Returns a new instance of SubMenu.



6
7
8
9
# File 'lib/phlexy_ui/sub_menu.rb', line 6

def initialize(*, **)
  super
  @items ||= []
end

Instance Method Details

#itemObject



33
34
35
# File 'lib/phlexy_ui/sub_menu.rb', line 33

def item(*, **, &)
  @items << MenuItem.new(*, **, &)
end

#title(&block) ⇒ Object



29
30
31
# File 'lib/phlexy_ui/sub_menu.rb', line 29

def title(&block)
  @title = block
end

#view_template {|_self| ... } ⇒ Object

Yields:

  • (_self)

Yield Parameters:



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/phlexy_ui/sub_menu.rb', line 11

def view_template(&)
  yield(self) if block_given?

  if @title
    div do
      render @title
    end
  end

  if @items.any?
    ul do
      @items.each do |item|
        render item
      end
    end
  end
end