package upload
[framework/uifw/elementary.git] / src / bin / test_dayselector.c
1 #ifdef HAVE_CONFIG_H
2 #include "elementary_config.h"
3 #endif
4 #include <Elementary.h>
5 #ifndef ELM_LIB_QUICKLAUNCH
6
7 static void _changed_cb(void* data __UNUSED__, Evas_Object* obj, void* event_info)
8 {
9    char buf[256];
10    Elm_Dayselector_Day day = (Elm_Dayselector_Day) event_info;
11    Eina_Bool checked = elm_dayselector_day_selected_get(obj, day);
12
13    switch(day)
14      {
15       case ELM_DAYSELECTOR_SUN:
16          snprintf(buf, sizeof(buf), "%s", "Sun");
17          break;
18       case ELM_DAYSELECTOR_MON:
19          snprintf(buf, sizeof(buf), "%s", "Mon");
20          break;
21       case ELM_DAYSELECTOR_TUE:
22          snprintf(buf, sizeof(buf), "%s", "Tue");
23          break;
24       case ELM_DAYSELECTOR_WED:
25         snprintf(buf, sizeof(buf), "%s", "Wed");
26         break;
27       case ELM_DAYSELECTOR_THU:
28          snprintf(buf, sizeof(buf), "%s", "Thu");
29          break;
30       case ELM_DAYSELECTOR_FRI:
31          snprintf(buf, sizeof(buf), "%s", "Fri");
32          break;
33       case ELM_DAYSELECTOR_SAT:
34          snprintf(buf, sizeof(buf), "%s", "Sat");
35          break;
36       default:
37          snprintf(buf, sizeof(buf), "%s", "???");
38          break;
39      }
40    fprintf(stderr, "%s = %d\n", buf, checked);
41 }
42
43 void
44 test_dayselector(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
45 {
46    Evas_Object *win, *bx, *dayselector, *sunday;
47
48    win = elm_win_util_standard_add("dayselector", "Day Selector");
49    elm_win_autodel_set(win, EINA_TRUE);
50
51    bx = elm_box_add(win);
52    elm_win_resize_object_add(win, bx);
53    evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
54    evas_object_size_hint_align_set(bx, EVAS_HINT_FILL, EVAS_HINT_FILL);
55    evas_object_show(bx);
56
57    // Default
58    dayselector = elm_dayselector_add(win);
59    evas_object_size_hint_weight_set(dayselector, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
60    evas_object_size_hint_align_set(dayselector, EVAS_HINT_FILL, 0.5);
61    elm_box_pack_end(bx, dayselector);
62    evas_object_show(dayselector);
63    evas_object_smart_callback_add(dayselector, "dayselector,changed", _changed_cb, NULL);
64
65    //Sunday first
66    dayselector = elm_dayselector_add(win);
67    evas_object_size_hint_weight_set(dayselector, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
68    evas_object_size_hint_align_set(dayselector, EVAS_HINT_FILL, 0.5);
69    elm_box_pack_end(bx, dayselector);
70    evas_object_show(dayselector);
71    elm_dayselector_week_start_set(dayselector, ELM_DAYSELECTOR_SUN);
72    evas_object_smart_callback_add(dayselector, "dayselector,changed", _changed_cb, NULL);
73    sunday = elm_object_part_content_get(dayselector, "day0");
74    elm_object_signal_emit(sunday, "elm,type,weekend,style1", "");
75
76    //Monday first
77    dayselector = elm_dayselector_add(win);
78    evas_object_size_hint_weight_set(dayselector, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
79    evas_object_size_hint_align_set(dayselector, EVAS_HINT_FILL, 0.5);
80    elm_dayselector_week_start_set(dayselector, ELM_DAYSELECTOR_MON);
81    elm_box_pack_end(bx, dayselector);
82    evas_object_show(dayselector);
83    evas_object_smart_callback_add(dayselector, "dayselector,changed", _changed_cb, NULL);
84    sunday = elm_object_part_content_get(dayselector, "day0");
85    elm_object_signal_emit(sunday, "elm,type,weekend,style1", "");
86
87    evas_object_resize(win, 350, 120);
88    evas_object_show(win);
89 }
90
91 #endif