From 2d918fe7b8db030854376e61f15ce6a69fdf1531 Mon Sep 17 00:00:00 2001 From: Daniel Juyung Seo Date: Sun, 15 Dec 2013 07:20:47 +0900 Subject: [PATCH] test_calendar: clean up the code by split the internal function. --- legacy/elementary/src/bin/test_calendar.c | 107 +++++++++++++++++------------- 1 file changed, 60 insertions(+), 47 deletions(-) diff --git a/legacy/elementary/src/bin/test_calendar.c b/legacy/elementary/src/bin/test_calendar.c index b8e65e5..6f3eb56 100644 --- a/legacy/elementary/src/bin/test_calendar.c +++ b/legacy/elementary/src/bin/test_calendar.c @@ -213,12 +213,10 @@ _format_month_year(struct tm *stm) return strdup(buf); } -/* A test intended to cover all the calendar api and much use cases as - possible */ -void -test_calendar2(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) +static Evas_Object * +_calendar_create(Evas_Object *parent) { - Evas_Object *win, *bx, *bxh, *cal, *cal2, *cal3, *en; + Evas_Object *cal; Elm_Calendar_Mark *mark; struct tm selected_time; time_t current_time; @@ -228,6 +226,49 @@ test_calendar2(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event "Thursday", "Friday", "Saturday" }; + cal = elm_calendar_add(parent); + elm_calendar_weekdays_names_set(cal, weekdays); // FIXME: this causes smart cal recalc loop error + elm_calendar_first_day_of_week_set(cal, ELM_DAY_SATURDAY); + elm_calendar_interval_set(cal, 0.4); + elm_calendar_format_function_set(cal, _format_month_year); + elm_calendar_min_max_year_set(cal, 2010, 2020); + + current_time = time(NULL) + 4 * SEC_PER_DAY; + localtime_r(¤t_time, &selected_time); + elm_calendar_mark_add(cal, "holiday", &selected_time, ELM_CALENDAR_ANNUALLY); + + current_time = time(NULL) + 1 * SEC_PER_DAY; + localtime_r(¤t_time, &selected_time); + elm_calendar_mark_add(cal, "checked", &selected_time, ELM_CALENDAR_UNIQUE); + + current_time = time(NULL) - 363 * SEC_PER_DAY; + localtime_r(¤t_time, &selected_time); + elm_calendar_mark_add(cal, "checked", &selected_time, ELM_CALENDAR_MONTHLY); + + current_time = time(NULL) - 5 * SEC_PER_DAY; + localtime_r(¤t_time, &selected_time); + mark = elm_calendar_mark_add(cal, "holiday", &selected_time, + ELM_CALENDAR_WEEKLY); + + current_time = time(NULL) + 1 * SEC_PER_DAY; + localtime_r(¤t_time, &selected_time); + elm_calendar_mark_add(cal, "holiday", &selected_time, ELM_CALENDAR_WEEKLY); + + elm_calendar_mark_del(mark); + elm_calendar_marks_draw(cal); + + return cal; +} + +/* A test intended to cover all the calendar api and much use cases as + possible */ +void +test_calendar2(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) +{ + Evas_Object *win, *bx, *bxh, *cal, *cal2, *cal3, *en; + struct tm selected_time; + time_t current_time; + win = elm_win_util_standard_add("calendar2", "Calendar 2"); elm_win_autodel_set(win, EINA_TRUE); @@ -243,12 +284,24 @@ test_calendar2(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event evas_object_show(bxh); elm_box_pack_end(bx, bxh); - cal = elm_calendar_add(win); + // calendar 1 + cal = _calendar_create(win); evas_object_size_hint_weight_set(cal, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(cal, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_show(cal); elm_box_pack_end(bx, cal); + en = elm_entry_add(win); + evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); + evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL); + evas_object_show(en); + elm_box_pack_end(bx, en); + elm_entry_editable_set(en, EINA_FALSE); + + _print_cal_info(cal, en); + evas_object_smart_callback_add(cal, "changed", _print_cal_info_cb, en); + + // calendar 2 cal2 = elm_calendar_add(win); evas_object_size_hint_weight_set(cal2, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(cal2, EVAS_HINT_FILL, EVAS_HINT_FILL); @@ -256,6 +309,7 @@ test_calendar2(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event evas_object_show(cal2); elm_box_pack_end(bxh, cal2); + // calendar 3 cal3 = elm_calendar_add(win); evas_object_size_hint_weight_set(cal3, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(cal3, EVAS_HINT_FILL, EVAS_HINT_FILL); @@ -273,49 +327,8 @@ test_calendar2(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event elm_calendar_marks_draw(cal3); evas_object_show(cal3); elm_box_pack_end(bxh, cal3); - - en = elm_entry_add(win); - evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL); - evas_object_show(en); - elm_box_pack_end(bx, en); - elm_entry_editable_set(en, EINA_FALSE); - elm_calendar_min_max_year_set(cal3, -1, -1); - elm_calendar_weekdays_names_set(cal, weekdays); - elm_calendar_first_day_of_week_set(cal, ELM_DAY_SATURDAY); - elm_calendar_interval_set(cal, 0.4); - elm_calendar_format_function_set(cal, _format_month_year); - elm_calendar_min_max_year_set(cal, 2010, 2020); - - current_time = time(NULL) + 4 * SEC_PER_DAY; - localtime_r(¤t_time, &selected_time); - elm_calendar_mark_add(cal, "holiday", &selected_time, ELM_CALENDAR_ANNUALLY); - - current_time = time(NULL) + 1 * SEC_PER_DAY; - localtime_r(¤t_time, &selected_time); - elm_calendar_mark_add(cal, "checked", &selected_time, ELM_CALENDAR_UNIQUE); - - current_time = time(NULL) - 363 * SEC_PER_DAY; - localtime_r(¤t_time, &selected_time); - elm_calendar_mark_add(cal, "checked", &selected_time, ELM_CALENDAR_MONTHLY); - - current_time = time(NULL) - 5 * SEC_PER_DAY; - localtime_r(¤t_time, &selected_time); - mark = elm_calendar_mark_add(cal, "holiday", &selected_time, - ELM_CALENDAR_WEEKLY); - - current_time = time(NULL) + 1 * SEC_PER_DAY; - localtime_r(¤t_time, &selected_time); - elm_calendar_mark_add(cal, "holiday", &selected_time, ELM_CALENDAR_WEEKLY); - - elm_calendar_mark_del(mark); - elm_calendar_marks_draw(cal); - - _print_cal_info(cal, en); - evas_object_smart_callback_add(cal, "changed", _print_cal_info_cb, en); - evas_object_show(win); } -- 2.7.4