1ec3b4c33322763c648460a873da1f119d232220
[framework/uifw/elementary.git] / src / bin / test_dayselector.c
1 #include <Elementary.h>
2 #ifdef HAVE_CONFIG_H
3 #include "elementary_config.h"
4 #endif
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, *bg, *bx, *dayselector, *sunday;
47
48    win = elm_win_add(NULL, "dayselector", ELM_WIN_BASIC);
49    elm_win_title_set(win, "Day Selector");
50    elm_win_autodel_set(win, EINA_TRUE);
51
52    bg = elm_bg_add(win);
53    elm_win_resize_object_add(win, bg);
54    evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
55    evas_object_size_hint_align_set(bg, EVAS_HINT_FILL, EVAS_HINT_FILL);
56    evas_object_show(bg);
57
58    bx = elm_box_add(win);
59    elm_win_resize_object_add(win, bx);
60    evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
61    evas_object_size_hint_align_set(bx, EVAS_HINT_FILL, EVAS_HINT_FILL);
62    evas_object_show(bx);
63
64    //Sunday first
65    dayselector = elm_dayselector_add(win);
66    evas_object_size_hint_weight_set(dayselector, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
67    evas_object_size_hint_align_set(dayselector, EVAS_HINT_FILL, 0.5);
68    elm_box_pack_end(bx, dayselector);
69    evas_object_show(dayselector);
70    evas_object_smart_callback_add(dayselector, "dayselector,changed", _changed_cb, NULL);
71    sunday = elm_object_part_content_get(dayselector, "day0");
72    elm_object_signal_emit(sunday, "elm,type,weekend,style1", "");
73
74    //Monday first
75    dayselector = elm_dayselector_add(win);
76    evas_object_size_hint_weight_set(dayselector, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
77    evas_object_size_hint_align_set(dayselector, EVAS_HINT_FILL, 0.5);
78    elm_dayselector_week_start_set(dayselector, ELM_DAYSELECTOR_MON);
79    elm_box_pack_end(bx, dayselector);
80    evas_object_show(dayselector);
81    evas_object_smart_callback_add(dayselector, "dayselector,changed", _changed_cb, NULL);
82    sunday = elm_object_part_content_get(dayselector, "day0");
83    elm_object_signal_emit(sunday, "elm,type,weekend,style1", "");
84
85    evas_object_resize(win, 350, 120);
86    evas_object_show(win);
87 }
88
89 #endif