[JungWooHyun] doing merge job ~
[framework/uifw/elementary.git] / src / examples / theme_example_02.c
1 /*
2  * gcc -o theme_example_02 theme_example_02.c `pkg-config --cflags --libs elememntaru`
3  */
4 #include <Elementary.h>
5 #ifdef HAVE_CONFIG_H
6 # include "elementary_config.h"
7 #else
8 # define __UNUSED__
9 #endif
10
11 static void
12 _btn_clicked_cb(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *ev __UNUSED__)
13 {
14    static int loaded = 1;
15    if (loaded)
16      elm_theme_overlay_del(NULL, "./theme_example.edj");
17    else
18      elm_theme_overlay_add(NULL, "./theme_example.edj");
19    loaded = 1 - loaded;
20 }
21
22 int
23 elm_main(int argc __UNUSED__, char *argv[] __UNUSED__)
24 {
25    Evas_Object *win, *bg, *box, *btn;
26
27    elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);
28
29    elm_theme_overlay_add(NULL, "./theme_example.edj");
30
31    win = elm_win_add(NULL, "Theme example", ELM_WIN_BASIC);
32    elm_win_autodel_set(win, EINA_TRUE);
33    evas_object_resize(win, 300, 320);
34    evas_object_show(win);
35
36    bg = elm_bg_add(win);
37    evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
38    elm_win_resize_object_add(win, bg);
39    evas_object_show(bg);
40
41    box = elm_box_add(win);
42    evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
43    elm_win_resize_object_add(win, box);
44    evas_object_show(box);
45
46    btn = elm_button_add(win);
47    elm_object_text_set(btn, "Button 1");
48    elm_box_pack_end(box, btn);
49    evas_object_show(btn);
50    evas_object_smart_callback_add(btn, "clicked", _btn_clicked_cb, NULL);
51
52    btn = elm_button_add(win);
53    elm_object_text_set(btn, "Button 2");
54    elm_box_pack_end(box, btn);
55    evas_object_show(btn);
56    evas_object_smart_callback_add(btn, "clicked", _btn_clicked_cb, NULL);
57
58    btn = elm_button_add(win);
59    elm_object_text_set(btn, "Button 3");
60    elm_box_pack_end(box, btn);
61    evas_object_show(btn);
62    evas_object_smart_callback_add(btn, "clicked", _btn_clicked_cb, NULL);
63
64    btn = elm_button_add(win);
65    elm_object_text_set(btn, "Button 4");
66    elm_box_pack_end(box, btn);
67    evas_object_show(btn);
68    evas_object_smart_callback_add(btn, "clicked", _btn_clicked_cb, NULL);
69
70    elm_run();
71
72    return 0;
73 }
74 ELM_MAIN();