selectSeats method
Selects a list of seats by coordinate, skipping non-available ones.
Implementation
void selectSeats(List<SeatPoint> seats) {
bool changed = false;
for (final seat in seats) {
if (_selectedSeats.length >= maxSelection) break;
if (_grid[seat.row][seat.col].state == SeatState.available &&
!_selectedSeats.contains(seat)) {
_selectedSeats.add(seat);
changed = true;
}
}
if (changed) notifyListeners();
}