Sélection de l'événement dans la vue semaine

This commit is contained in:
2025-05-22 12:45:32 +02:00
parent 2c61b9ce8d
commit 249a6d6074
2 changed files with 41 additions and 2 deletions

View File

@ -9,6 +9,8 @@ class WeekView extends StatelessWidget {
final Function(int) onWeekChange;
final Function(EventModel) onEventSelected;
final Function() onSwitchToMonth;
final Function(DateTime) onDaySelected;
final EventModel? selectedEvent;
const WeekView({
super.key,
@ -17,6 +19,8 @@ class WeekView extends StatelessWidget {
required this.onWeekChange,
required this.onEventSelected,
required this.onSwitchToMonth,
required this.onDaySelected,
required this.selectedEvent,
});
@override
@ -253,6 +257,8 @@ class WeekView extends StatelessWidget {
final endHour = e.end.hour + e.end.minute / 60;
final duration = endHour - startHour;
final width = dayWidth / e.totalColumns;
final isSelected =
selectedEvent != null && e.event.id == selectedEvent!.id;
return Positioned(
left: dayIdx * dayWidth + e.column * width,
@ -265,8 +271,13 @@ class WeekView extends StatelessWidget {
margin: const EdgeInsets.all(2),
padding: const EdgeInsets.all(4),
decoration: BoxDecoration(
color: AppColors.rouge.withAlpha(26),
border: Border.all(color: AppColors.rouge),
color: isSelected
? AppColors.rouge.withAlpha(80)
: AppColors.rouge.withAlpha(26),
border: Border.all(
color: AppColors.rouge,
width: isSelected ? 3 : 1,
),
borderRadius: BorderRadius.circular(4),
),
child: Column(