lib/tableficate/column.rb in tableficate-0.2.1 vs lib/tableficate/column.rb in tableficate-0.3.0

- old
+ new

@@ -1,16 +1,22 @@ module Tableficate class Column - attr_reader :name, :header, :table + attr_reader :name, :header, :table, :header_attrs, :cell_attrs, :attrs def initialize(table, name, options = {}, &block) - @table = table - @name = name - @options = options - @block = block + @table = table + @name = name + @block = block - @header = @options.delete(:header) || name.to_s.titleize + @header = options.delete(:header) || name.to_s.titleize + @header_attrs = options.delete(:header_attrs) || {} + + @cell_attrs = options.delete(:cell_attrs) || {} + + @show_sort = options.delete(:show_sort) || false + + @attrs = options end def value(row) if @block output = @block.call(row) @@ -24,10 +30,10 @@ row.send(@name) end end def show_sort? - !!@options[:show_sort] + @show_sort end def is_sorted?(dir = nil) is_sorted = @table.current_sort[:column] == self.name is_sorted = @table.current_sort[:dir] == dir if is_sorted and dir