toggleRowSelection method
Toggle row selection
Implementation
void toggleRowSelection(String rowId, Map<String, dynamic> rowData) {
final newSelectedIds = Set<String>.from(_state.selectedRowIds);
final newSelectedData = Map<String, Map<String, dynamic>>.from(_state.selectedRowsData);
if (newSelectedIds.contains(rowId)) {
newSelectedIds.remove(rowId);
newSelectedData.remove(rowId);
} else {
newSelectedIds.add(rowId);
newSelectedData[rowId] = rowData;
}
_state = _state.copyWith(
selectedRowIds: newSelectedIds,
selectedRowsData: newSelectedData,
);
notifyListeners();
// Notify callback if registered
_onSelectionChanged?.call(newSelectedData.values.toList());
}