class Trestle::Toolbar::Menu

Attributes

items[R]

Public Class Methods

new(template) click to toggle source
# File lib/trestle/toolbar/menu.rb, line 8
def initialize(template)
  @template = template
  @items = []
end

Public Instance Methods

build(&block) click to toggle source
# File lib/trestle/toolbar/menu.rb, line 13
def build(&block)
  builder = Builder.new(self, @template)

  result = @template.capture { @template.instance_exec(builder, &block) }
  items << result if result.present?
end
render_items() click to toggle source
# File lib/trestle/toolbar/menu.rb, line 29
def render_items
  content_tag(:ul, safe_join(items, "\n"), class: "dropdown-menu dropdown-menu-right", role: "menu")
end
render_toggle(options={}) click to toggle source
# File lib/trestle/toolbar/menu.rb, line 20
def render_toggle(options={})
  content_tag(:button, type: "button", class: Array(options[:class]) + ["dropdown-toggle"], data: { toggle: "dropdown" }) do
    safe_join([
      content_tag(:span, "", class: "caret"),
      content_tag(:span, I18n.t("trestle.ui.toggle_dropdown", default: "Toggle dropdown"), class: "sr-only")
    ])
  end
end