2 * Simple Elementary's <b>mapbuf widget</b> example, illustrating its API.
4 * See stdout/stderr for output. Compile with:
7 * gcc -g mapbuf_example.c -o mapbuf_example `pkg-config --cflags --libs elementary`
11 #include <Elementary.h>
14 _enabled_cb(void *data, Evas_Object *obj, void *event_info)
16 Evas_Object *mb = data;
17 elm_mapbuf_enabled_set(mb, elm_check_state_get(obj));
21 _alpha_cb(void *data, Evas_Object *obj, void *event_info)
23 Evas_Object *mb = data;
24 elm_mapbuf_alpha_set(mb, elm_check_state_get(obj));
28 _smooth_cb(void *data, Evas_Object *obj, void *event_info)
30 Evas_Object *mb = data;
31 elm_mapbuf_smooth_set(mb, elm_check_state_get(obj));
35 elm_main(int argc, char **argv)
37 Evas_Object *win, *bx, *hbx, *tg, *ck, *mb, *tb, *ic;
40 elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);
42 win = elm_win_util_standard_add("mapbuf", "Mapbuf Example");
43 elm_win_autodel_set(win, EINA_TRUE);
45 bx = elm_box_add(win);
46 evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
47 elm_win_resize_object_add(win, bx);
50 mb = elm_mapbuf_add(win);
51 evas_object_size_hint_weight_set(mb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
52 evas_object_size_hint_align_set(mb, EVAS_HINT_FILL, EVAS_HINT_FILL);
53 elm_box_pack_end(bx, mb);
55 tb = elm_table_add(win);
56 evas_object_size_hint_weight_set(tb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
57 evas_object_size_hint_align_set(tb, EVAS_HINT_FILL, EVAS_HINT_FILL);
60 for (i = 0; i < 8; i++)
62 for (j = 0; j < 8; j++)
64 ic = elm_icon_add(win);
65 elm_icon_standard_set(ic, "home");
66 elm_image_resizable_set(ic, EINA_FALSE, EINA_FALSE);
68 elm_table_pack(tb, ic, i, j, 1, 1);
72 elm_object_content_set(mb, tb);
75 hbx = elm_box_add(win);
76 elm_box_horizontal_set(hbx, EINA_TRUE);
77 evas_object_size_hint_weight_set(hbx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
78 evas_object_size_hint_align_set(hbx, EVAS_HINT_FILL, EVAS_HINT_FILL);
79 elm_box_pack_end(bx, hbx);
80 evas_object_show(hbx);
82 tg = elm_check_add(win);
83 elm_object_style_set(tg, "toggle");
84 elm_object_part_text_set(tg, "on", "Enabled");
85 elm_object_part_text_set(tg, "off", "Disabled");
86 elm_object_text_set(tg, "Map");
87 evas_object_smart_callback_add(tg, "changed", _enabled_cb, mb);
88 elm_box_pack_end(hbx, tg);
91 ck = elm_check_add(win);
92 elm_object_text_set(ck, "Alpha");
93 elm_check_state_set(ck, EINA_TRUE);
94 evas_object_smart_callback_add(ck, "changed", _alpha_cb, mb);
95 elm_box_pack_end(hbx, ck);
98 ck = elm_check_add(win);
99 elm_object_text_set(ck, "Smooth");
100 elm_check_state_set(ck, EINA_TRUE);
101 evas_object_smart_callback_add(ck, "changed", _smooth_cb, mb);
102 elm_box_pack_end(hbx, ck);
103 evas_object_show(ck);
105 evas_object_resize(win, 240, 320);
106 evas_object_show(win);