1 #ifndef EFL_UI_CALENDAR_PRIVATE_H 2 #define EFL_UI_CALENDAR_PRIVATE_H 3 4 #include "Elementary.h" 5 6 /* DO NOT USE THIS HEADER UNLESS YOU ARE PREPARED FOR BREAKING OF YOUR 7 * CODE. THIS IS ELEMENTARY'S INTERNAL WIDGET API (for now) AND IS NOT 8 * FINAL. CALL elm_widget_api_check(ELM_INTERNAL_API_VERSION) TO CHECK 9 * IT AT RUNTIME. 10 */ 11 12 /** 13 * Base layout smart data extended with calendar instance data. 14 */ 15 typedef struct _Efl_Ui_Calendar_Data Efl_Ui_Calendar_Data; 16 17 struct _Efl_Ui_Calendar_Data 18 { 19 Evas_Object *obj; // the object itself 20 double interval, first_interval; 21 int spin_speed; 22 int today_it, selected_it, focused_it; 23 Ecore_Timer *update_timer; 24 const char *weekdays[ELM_DAY_LAST]; 25 struct tm current_date, shown_date, date, date_min, date_max; 26 Evas_Object *inc_btn_month; 27 Evas_Object *dec_btn_month; 28 Evas_Object *month_access; 29 Eo *items[42]; 30 31 Efl_Ui_Calendar_Weekday first_week_day; 32 unsigned char first_day_it; 33 34 Eina_Bool selected : 1; 35 Eina_Bool filling : 1; 36 Eina_Bool weekdays_set : 1; 37 }; 38 39 #define EFL_UI_CALENDAR_DATA_GET(o, sd) \ 40 Efl_Ui_Calendar_Data * sd = efl_data_scope_get(o, EFL_UI_CALENDAR_CLASS) 41 42 #endif 43