class Proforma::Modeling::Pane::Column
A Pane
Column
is a list of lines that understands how to compile itself against a data source.
Attributes
align[W]
label_width[W]
lines[W]
value_width[W]
Public Class Methods
new( align: LEFT, label_width: nil, lines: [], value_width: nil )
click to toggle source
# File lib/proforma/modeling/pane/column.rb, line 27 def initialize( align: LEFT, label_width: nil, lines: [], value_width: nil ) @align = align @label_width = label_width @lines = Line.array(lines) @value_width = value_width end
Public Instance Methods
align()
click to toggle source
# File lib/proforma/modeling/pane/column.rb, line 39 def align @align || LEFT end
compile(record, evaluator)
click to toggle source
# File lib/proforma/modeling/pane/column.rb, line 55 def compile(record, evaluator) compiled_lines = lines.map { |line| line.compile(record, evaluator) } self.class.new( align: align, label_width: label_width, lines: compiled_lines, value_width: value_width ) end
label_width()
click to toggle source
# File lib/proforma/modeling/pane/column.rb, line 43 def label_width @label_width ? @label_width.to_f : nil end
lines()
click to toggle source
# File lib/proforma/modeling/pane/column.rb, line 51 def lines Array(@lines) end
value_width()
click to toggle source
# File lib/proforma/modeling/pane/column.rb, line 47 def value_width @value_width ? @value_width.to_f : nil end