1 /** 2 * @file lv_calendar_private.h 3 * 4 */ 5 6 #ifndef LV_CALENDAR_PRIVATE_H 7 #define LV_CALENDAR_PRIVATE_H 8 9 #ifdef __cplusplus 10 extern "C" { 11 #endif 12 13 /********************* 14 * INCLUDES 15 *********************/ 16 17 #include "../../core/lv_obj_private.h" 18 #include "lv_calendar.h" 19 20 #if LV_USE_CALENDAR 21 22 /********************* 23 * DEFINES 24 *********************/ 25 26 /********************** 27 * TYPEDEFS 28 **********************/ 29 30 /** Data of calendar */ 31 struct _lv_calendar_t { 32 lv_obj_t obj; 33 /* New data for this type */ 34 lv_obj_t * btnm; 35 lv_calendar_date_t today; /**< Date of today */ 36 lv_calendar_date_t showed_date; /**< Currently visible month (day is ignored) */ 37 lv_calendar_date_t * highlighted_dates; /**< Apply different style on these days (pointer to user-defined array) */ 38 size_t highlighted_dates_num; /**< Number of elements in `highlighted_days` */ 39 const char * map[8 * 7]; 40 #ifdef LV_USE_CALENDAR_CHINESE 41 bool use_chinese_calendar; 42 43 /** 7 * 6: A week has 7 days, and the calendar displays 6 weeks in total. 44 * 20: Including the number of dates, line breaks, names for each day, 45 * and reserving several spaces for addresses. */ 46 char nums [7 * 6][20]; 47 #else 48 /** 7 * 6: A week has 7 days, and the calendar displays 6 weeks in total. 49 * 6: Including the number of dates, and reserving several spaces for 50 * addresses.*/ 51 char nums [7 * 6][4]; 52 #endif 53 }; 54 55 56 /********************** 57 * GLOBAL PROTOTYPES 58 **********************/ 59 60 /********************** 61 * MACROS 62 **********************/ 63 64 #endif /* LV_USE_CALENDAR */ 65 66 #ifdef __cplusplus 67 } /*extern "C"*/ 68 #endif 69 70 #endif /*LV_CALENDAR_PRIVATE_H*/ 71