Initialize Tizen 2.3
[framework/uifw/elementary.git] / src / examples / check_example_01.c
1 //Compile with:
2 //gcc -o check_example_01  check_example_01.c -g `pkg-config --cflags --libs elementary`
3
4 #include <Elementary.h>
5
6 static void _print(void *data, Evas_Object *obj, void *event_info);
7
8 EAPI_MAIN int
9 elm_main(int argc, char **argv)
10 {
11    Evas_Object *win, *bg, *cb, *cb2, *icon;
12    Eina_Bool value;
13
14    win = elm_win_add(NULL, "check", ELM_WIN_BASIC);
15    elm_win_title_set(win, "Check");
16    elm_win_autodel_set(win, EINA_TRUE);
17    elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);
18
19    bg = elm_bg_add(win);
20    evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
21    elm_win_resize_object_add(win, bg);
22    evas_object_show(bg);
23
24    cb = elm_check_add(win);
25    elm_object_text_set(cb, "checkbox");
26    elm_check_state_pointer_set(cb, &value);
27    evas_object_smart_callback_add(cb, "changed", _print, &value);
28    evas_object_move(cb, 10, 10);
29    evas_object_resize(cb, 200, 30);
30    evas_object_show(cb);
31
32    icon = evas_object_rectangle_add(evas_object_evas_get(win));
33    evas_object_color_set(icon, 0, 255, 0, 255);
34    evas_object_resize(icon, 20, 20);
35    evas_object_show(icon);
36
37    cb2 = elm_check_add(win);
38    elm_object_text_set(cb2, "another checkbox");
39    elm_check_state_set(cb2, EINA_TRUE);
40    elm_object_part_content_set(cb2, "icon", icon);
41    evas_object_move(cb2, 10, 50);
42    evas_object_resize(cb2, 200, 30);
43    evas_object_show(cb2);
44
45    evas_object_resize(win, 200, 100);
46    evas_object_show(win);
47
48    elm_run();
49    elm_shutdown();
50
51    return 0;
52 }
53 ELM_MAIN()
54
55 static void
56 _print(void *data, Evas_Object *obj, void *event_info)
57 {
58    printf("check %smarked\n", *((Eina_Bool*)data) ? "" : "un");
59 }