removeColumns method

  1. @override
void removeColumns(
  1. List<PlutoColumn> columns
)
inherited

Implementation

@override
void removeColumns(List<PlutoColumn> columns) {
  if (columns.isEmpty) {
    return;
  }

  removeColumnsInColumnGroup(columns, notify: false);

  removeColumnsInFilterRows(columns, notify: false);

  removeColumnsInRowGroupByColumn(columns, notify: false);

  _removeCellsInRows(columns);

  final removeKeys = Set.from(columns.map((e) => e.key));

  refColumns.removeWhereFromOriginal(
    (column) => removeKeys.contains(column.key),
  );

  resetShowFrozenColumn();

  if (!columnSizeConfig.restoreAutoSizeAfterRemoveColumn) {
    deactivateColumnsAutoSize();
  }

  updateVisibilityLayout();

  resetCurrentState(notify: false);

  notifyListeners(true, removeColumns.hashCode);
}