Class: KirguduBase::DynamicPages::ListCellBuilder

Inherits:
PageElementBuilder show all
Defined in:
app/models/kirgudu_base/dynamic_pages/list_cell_builder.rb

Instance Method Summary collapse

Methods inherited from PageElementBuilder

#css_class, #enabled, #html_options, #id, #visible

Constructor Details

#initialize(&block) ⇒ ListCellBuilder

Returns a new instance of ListCellBuilder.



4
5
6
7
8
9
10
11
12
13
14
# File 'app/models/kirgudu_base/dynamic_pages/list_cell_builder.rb', line 4

def initialize(&block)

  self.builder_options.merge!({
                                label: nil,
                                format: nil,
                                properties: nil

                              })

  super(nil, &block)
end

Instance Method Details

#format(value) ⇒ Object



21
22
23
24
# File 'app/models/kirgudu_base/dynamic_pages/list_cell_builder.rb', line 21

def format(value)
  self.validate_empty_parameter('format', value)
  self.builder_options[:format] = value ? true : false
end

#label(value) ⇒ Object



16
17
18
19
# File 'app/models/kirgudu_base/dynamic_pages/list_cell_builder.rb', line 16

def label(value)
  self.validate_empty_parameter('label', value)
  self.builder_options[:label] = value ? true : false
end

#properties(&block) ⇒ Object



26
27
28
29
30
31
32
33
# File 'app/models/kirgudu_base/dynamic_pages/list_cell_builder.rb', line 26

def properties(&block)
  elements = ::KirguduBase::DynamicPages::FormPropertiesBlockBuilder.new(&block).to_elements

  elements.each do |element|
    self.builder_options[:properties] = [] unless self.builder_options[:properties]
    self.builder_options[:properties] << element
  end
end

#to_elementObject



35
36
37
38
39
40
# File 'app/models/kirgudu_base/dynamic_pages/list_cell_builder.rb', line 35

def to_element
  element = ::KirguduBase::DynamicPages::Menu.new
  self.build_element(element)
  self.validate_generated_element(element)
  element
end