selectRow method

void selectRow(
  1. int row
)

Selects all available seats in row, up to maxSelection.

Implementation

void selectRow(int row) {
  assert(row >= 0 && row < _grid.length, 'Row $row out of range');
  bool changed = false;
  for (int col = 0; col < _grid[row].length; col++) {
    if (_selectedSeats.length >= maxSelection) break;
    final seat = SeatPoint(row, col);
    if (_grid[row][col].state == SeatState.available &&
        !_selectedSeats.contains(seat)) {
      _selectedSeats.add(seat);
      changed = true;
    }
  }
  if (changed) notifyListeners();
}