Files
Client/lib/view/pages/timetable/widgets/time_region_tile.dart
T
2026-05-05 13:49:45 +02:00

56 lines
1.5 KiB
Dart

import 'package:flutter/material.dart';
import 'package:syncfusion_flutter_calendar/calendar.dart';
const String kTimeRegionCenterIcon = 'centerIcon';
const String kTimeRegionHolidayPrefix = 'holiday:';
class TimeRegionTile extends StatelessWidget {
final TimeRegion region;
const TimeRegionTile({super.key, required this.region});
@override
Widget build(BuildContext context) {
final text = region.text ?? '';
final color = region.color;
if (text == kTimeRegionCenterIcon) {
return Container(
color: color,
alignment: Alignment.center,
child: Icon(region.iconData, size: 17, color: Theme.of(context).colorScheme.primary),
);
}
if (text.startsWith(kTimeRegionHolidayPrefix)) {
return Container(
color: color,
alignment: Alignment.center,
child: Column(
children: [
const SizedBox(height: 15),
const Icon(Icons.cake),
const Text('FREI'),
const SizedBox(height: 10),
RotatedBox(
quarterTurns: 1,
child: Text(
text.substring(kTimeRegionHolidayPrefix.length),
maxLines: 1,
style: const TextStyle(
fontWeight: FontWeight.bold,
fontSize: 15,
decorationStyle: TextDecorationStyle.dashed,
letterSpacing: 2,
),
),
),
],
),
);
}
return const SizedBox.shrink();
}
}