onDateTap method

void onDateTap(
  1. DateTime date
)

Handles a date tap, updating the selection based on the current mode.

Implementation

void onDateTap(DateTime date) {
  final dateOnly = CalendarDateUtils.dateOnly(date);

  switch (_mode) {
    case SelectionMode.none:
      break;
    case SelectionMode.single:
      _selectedDate = dateOnly;
      break;
    case SelectionMode.multiple:
      if (_selectedDates.contains(dateOnly)) {
        _selectedDates.remove(dateOnly);
      } else {
        _selectedDates.add(dateOnly);
      }
      break;
    case SelectionMode.range:
      _handleRangeSelection(dateOnly);
      break;
  }
  notifyListeners();
}