calendar_util.dart 942 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import 'package:flutter/material.dart';
  2. /// 结构化的日期数据
  3. class DayStructure {
  4. final int index; // 下标
  5. final DateTime date; // 日期
  6. final bool isToday; // 是否是当天
  7. final bool isCurrentMonth; // 是否是当月
  8. bool hasSchedule; // 是否包含日程
  9. bool isSelected; // 是否选中
  10. DayStructure({
  11. required this.index,
  12. required this.date,
  13. this.isToday = false,
  14. this.isCurrentMonth = true,
  15. this.isSelected = false,
  16. this.hasSchedule = false,
  17. });
  18. setSelected() {
  19. isSelected = true;
  20. }
  21. setUnselected() {
  22. isSelected = false;
  23. }
  24. }
  25. /// 结构化的日程类型数据:类型名称,类型是否选中,类型颜色
  26. class ScheduleType {
  27. final String typeName; // 类型名称
  28. final Color color; // 类型颜色
  29. bool isSelected; // 类型是否选中
  30. ScheduleType({
  31. required this.typeName,
  32. required this.isSelected,
  33. required this.color,
  34. });
  35. }