EAPI_MAIN int elm_main(int argc, char **argv) { Evas_Object *win, *cal; const char *weekdays[] = { "S", "M", "T", "W", "T", "F", "S" }; elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED); win = elm_win_util_standard_add("calendar", "Calendar Layout Formatting Example"); elm_win_autodel_set(win, EINA_TRUE); cal = elm_calendar_add(win); evas_object_size_hint_weight_set(cal, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_win_resize_object_add(win, cal); elm_calendar_format_function_set(cal, _format_month_year); elm_calendar_weekdays_names_set(cal, weekdays); evas_object_show(cal); evas_object_show(win); elm_run(); elm_shutdown(); return 0; }
void ActivityScenariosView::buttonPressed(void *data, Evas_Object *_edje, std::string emission, std::string source) { if (source == "button.calendar") { Evas_Object *table = createPaddingTable(evas, parent, 330, 300, 10, 10); calendar = elm_calendar_add(parent); elm_object_style_set(calendar, "calaos"); elm_calendar_first_day_of_week_set(calendar, ELM_DAY_MONDAY); const char *weekdays[] = { "DIM", "LUN", "MAR", "MER", "JEU", "VEN", "SAM" }; elm_calendar_weekdays_names_set(calendar, weekdays); evas_object_smart_callback_add(calendar, "changed", _calendar_cb, this); //Mark sundays struct tm sunday = { 0, 0, 12, 7, 0, 0, 6, 0, -1, 0, NULL }; elm_calendar_mark_add(calendar, "checked", &sunday, ELM_CALENDAR_WEEKLY); elm_calendar_marks_draw(calendar); evas_object_size_hint_fill_set(calendar, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_size_hint_weight_set(calendar, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_show(calendar); elm_table_pack(table, calendar, 1, 1, 1, 1); Evas_Object *popup = elm_ctxpopup_add(parent); elm_object_content_set(popup, table); elm_object_style_set(popup, "calaos"); elm_ctxpopup_direction_priority_set(popup, ELM_CTXPOPUP_DIRECTION_DOWN, ELM_CTXPOPUP_DIRECTION_LEFT, ELM_CTXPOPUP_DIRECTION_RIGHT, ELM_CTXPOPUP_DIRECTION_UP); Evas_Coord x,y; evas_pointer_canvas_xy_get(evas, &x, &y); evas_object_move(popup, x, y); evas_object_show(popup); } else if (source == "button.calendar.today") { tzset(); //Force reload of timezone data time_t t = time(0); currDate = *localtime(&t); reloadCalendar(); } else if (source == "button.create") { buttonCreatePressed.emit(); } else if (source == "button.list.all") { view_mode = VIEW_MODE_ALL; loadScenarioList(); } else if (source == "button.list.light") { view_mode = VIEW_MODE_LIGHT; loadScenarioList(); } else if (source == "button.list.shutters") { view_mode = VIEW_MODE_SHUTTER; loadScenarioList(); } else if (source == "button.list.schedule") { view_mode = VIEW_MODE_SCHEDULE; loadScenarioList(); } }