TableView constructor

TableView({
  1. Key? key,
  2. required String data(
    1. Index
    ),
  3. required Widget dataWidget(
    1. Index index,
    2. bool selected
    ),
  4. required String horizontalHeaderData(
    1. int
    ),
  5. required String verticalHeaderData(
    1. int
    ),
  6. required int rowCount(),
  7. required int columnCount(),
  8. required void setData(
    1. Index,
    2. String
    ),
  9. CellData cellData(
    1. Index
    )?,
  10. CellData horizontalHeaderCellData(
    1. int
    )?,
  11. CellData verticalHeaderCellData(
    1. int
    )?,
  12. bool autoFitHeaders = true,
})

Implementation

TableView({
  Key? key,
  required this.data,
  required this.dataWidget,
  required this.horizontalHeaderData,
  required this.verticalHeaderData,
  required this.rowCount,
  required this.columnCount,
  required this.setData,
  CellData Function(Index)? cellData,
  CellData Function(int)? horizontalHeaderCellData,
  CellData Function(int)? verticalHeaderCellData,
  bool this.autoFitHeaders = true,
}) : super(key: key) {
  this.cellData = cellData != null ? cellData : (index) => defaultCellData;
  this.horizontalHeaderCellData = horizontalHeaderCellData != null
      ? horizontalHeaderCellData
      : (index) {
    if (!_horizontalHeaderCellData.containsKey(index)) {
      _horizontalHeaderCellData[index] =
          defaultHorizontalHeaderCellData.copy();
    }
    return _horizontalHeaderCellData[index]!;
  };
  this.verticalHeaderCellData = verticalHeaderCellData != null
      ? verticalHeaderCellData
      : (index) {
    if (!_verticalHeaderCellData.containsKey(index)) {
      _verticalHeaderCellData[index] =
          defaultVerticalHeaderCellData.copy();
    }
    return _verticalHeaderCellData[index]!;
  };

  if (autoFitHeaders) fitHeaders();

  // print('$gridWidth, $gridHeight');
  // print(rowPos);
  // print(columnPos);
}