Class: Tablette::Row
Instance Attribute Summary collapse
-
#columns ⇒ Object
readonly
Returns the value of attribute columns.
Attributes inherited from Element
Instance Method Summary collapse
Methods inherited from Element
#element_to_html, #initialize, #method_missing, #respond_to_missing?, #to_html
Constructor Details
This class inherits a constructor from Tablette::Element
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Tablette::Element
Instance Attribute Details
#columns ⇒ Object (readonly)
Returns the value of attribute columns.
3 4 5 |
# File 'lib/tablette/rows.rb', line 3 def columns @columns end |
Instance Method Details
#columns_for_row(args) ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/tablette/rows.rb', line 8 def columns_for_row(args) columns = 0 self.column.each do |column| colspan = column.colspan(args) if colspan.nil? || colspan == "auto" columns += 1 else columns += colspan end end columns end |
#update_auto_colspan!(columns, args) ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/tablette/rows.rb', line 24 def update_auto_colspan!(columns, args) auto_column = nil self.column.each do |column| next unless column.colspan(args) == "auto" if auto_column.nil? auto_column = column else raise "multiple columns with colspan=auto are defined" end end row_columns = columns_for_row(args) if auto_column.nil? if row_columns != columns raise "mismatched number of columns in table: #{columns} in table, #{row_columns} defined in row" end else auto_column.config[:html_options][:colspan] = columns - row_columns + 1 end end |