Class: UiBibz::Ui::Core::ButtonSplitDropdown

Inherits:
Dropdown show all
Defined in:
lib/ui_bibz/ui/core/button/button_split_dropdown.rb

Overview

Create a button dropdown

This element is an extend of UiBibz::Ui::Core::Dropdown.

Attributes

  • content - Content of element

  • options - Options of element

  • html_options - Html Options of element

Options

You can add HTML attributes using the html_options. You can pass arguments in options attribute:

  • state - State of élement with symbol value: (:default, :primary, :info, :warning, :danger)

  • size (:xs, :sm, :lg)

  • glyph - Add glyph with name or hash options

    • name - String

    • size - Integer

    • type - Symbol

Signatures

UiBibz::Ui::Core::ButtonSplitDropdown.new(options = nil, html_options = nil).tap do |d|
  d.list content = nil, options = nil, html_options = nil, &block
  d.list content = nil, options = nil, html_options = nil, &block
  d.list content = nil, options = nil, html_options = nil, &block
  ...
end

Examples

UiBibz::Ui::Core::ButtonSplitDropdown.new(name, state: :success).tap do |d|
  d.list link_to('test', '#')
  d.list('---')
  d.list('Header 1', { type: :header })
  d.list link_to('test2', '#')
end.render

Helper

button_split_dropdown(name, options = {}, html_options = {}) do |b|
  d.list(content, options = {}, html_options = {})
  d.list(options = {}, html_options = {}) do
    content
  end
end

Instance Attribute Summary

Attributes inherited from Component

#content, #html_options, #options

Attributes inherited from Base

#output_buffer

Instance Method Summary (collapse)

Methods inherited from Dropdown

#link, #list

Methods inherited from Component

#add_classes, #badge_html, #class_and_html_options, #glyph, #glyph_and_content_html, #glyph_with_space, #state

Methods inherited from Base

#i18n_set?

Constructor Details

- (ButtonSplitDropdown) initialize(name, options = nil, html_options = nil, &block)

See UiBibz::Ui::Core::Component.initialize



56
57
58
# File 'lib/ui_bibz/ui/core/button/button_split_dropdown.rb', line 56

def initialize name, options = nil, html_options = nil, &block
  super
end

Instance Method Details

- (Object) render

Render html tag



61
62
63
64
65
66
67
# File 'lib/ui_bibz/ui/core/button/button_split_dropdown.rb', line 61

def render
   :div, class_and_html_options(['btn-group', type]).merge({ role: 'group' }) do
    concat button_html
    concat split_html
    concat ul_html
  end
end