getColumnMenuState function
Extract the current state of a column for menu display.
Implementation
ColumnMenuState getColumnMenuState(GridController controller, ColId colId) {
final spec = controller.schema.column(colId);
final sortKey = controller.sortKeys.where((k) => k.col == colId).firstOrNull;
final hasFilter = controller.filters.containsKey(colId);
final frozen = controller.freezeOf(colId);
return ColumnMenuState(
colId: colId,
header: spec?.header ?? colId,
kind: spec?.kind ?? CellKind.text,
currentSortDirection: sortKey?.col == colId ? sortKey?.direction : null,
hasFilter: hasFilter,
frozenSide: frozen,
);
}