Sha256: ea64098dcc75d0730e05f681fdf61af0db33f720d18ffc3370834339cfc74bf2
Contents?: true
Size: 1.13 KB
Versions: 1
Compression:
Stored size: 1.13 KB
Contents
# encoding: utf-8 module Terminal class Table class Row ## # Row cells attr_reader :cells attr_reader :table ## # Initialize with _width_ and _options_. def initialize table, array = [] @cell_index = 0 @table = table @cells = [] array.each { |item| self << item } end def add_cell item options = item.is_a?(Hash) ? item : {:value => item} cell = Cell.new(options.merge(:index => @cell_index, :table => @table)) @cell_index += cell.colspan @cells << cell end alias << add_cell def [] index cells[index] end def height cells.map { |c| c.lines.count }.max end def wrap_cell(index, width) return if @cells.nil? or @cells[index].nil? @cells[index].wrap(width) end def render y = @table.style.border_y (0...height).to_a.map do |line| y + cells.map do |cell| cell.render(line) end.join(y) + y end.join("\n") end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
galileo-0.2.1 | lib/terminal-table/lib/terminal-table/row.rb |