       @gutter
       firstRow
       lastRow
-      columnsWidths: @getColumnsWidths()
+      columnsWidths: @getColumnsWidthPercentages()
       columnsAligns: @getColumnsAligns()
       totalRows: @table.getRowsCount()
     }

  hasColumnWithWidth: -> @table.getColumns().some (c) -> c.width?

  getColumnsWidths: ->
    return @columnsPercentWidths if @columnsPercentWidths?

    if @hasColumnWithWidth()
      @columnsWidths = @getColumnsWidthsFromModel()
      @columnsPercentWidths = @columnsWidths.map @floatToPercent
    else
      count = @table.getColumnsCount()
      (1 / count for n in [0...count]).map @floatToPercent

  getColumnsWidthsFromModel: ->
    count = @table.getColumnsCount()


  getColumnsScreenWidths: ->
    width = @getRowsContainer().width()
    @getColumnsWidths().map (v) => v * width

  getColumnsScreenMargins: ->
    widths = @getColumnsWidths()
    pad = 0
    width = @getRowsContainer().width()
    margins = widths.map (v) =>
