2 //gcc -g `pkg-config --cflags --libs elementary` radio_example_01.c -o radio_example_01
4 #include <Elementary.h>
6 # include "elementary_config.h"
11 static void _cb(void *data, Evas_Object *obj, void *event_info);
14 elm_main(int argc, char **argv)
16 Evas_Object *win, *bg, *bx, *radio, *group, *ic;
18 win = elm_win_add(NULL, "radio", ELM_WIN_BASIC);
19 elm_win_title_set(win, "Radio");
20 elm_win_autodel_set(win, EINA_TRUE);
21 elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);
24 elm_win_resize_object_add(win, bg);
27 bx = elm_box_add(win);
28 elm_box_horizontal_set(bx, EINA_TRUE);
29 evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
30 evas_object_size_hint_align_set(bx, EVAS_HINT_FILL, EVAS_HINT_FILL);
31 elm_win_resize_object_add(win, bx);
34 group = radio = elm_radio_add(win);
35 elm_object_text_set(radio, "Radio 1");
36 elm_radio_state_value_set(radio, 1);
37 elm_radio_value_pointer_set(radio, &val);
38 ic = elm_icon_add(win);
39 elm_icon_standard_set(ic, "home");
40 elm_object_content_part_set(radio, "icon", ic);
41 elm_box_pack_end(bx, radio);
42 evas_object_size_hint_weight_set(radio, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
43 evas_object_size_hint_align_set(radio, EVAS_HINT_FILL, EVAS_HINT_FILL);
44 evas_object_show(radio);
45 evas_object_smart_callback_add(radio, "changed", _cb, NULL);
47 radio = elm_radio_add(win);
48 elm_object_text_set(radio, "Radio 2");
49 elm_radio_state_value_set(radio, 2);
50 elm_radio_value_pointer_set(radio, &val);
51 elm_radio_group_add(radio, group);
52 ic = elm_icon_add(win);
53 elm_icon_standard_set(ic, "file");
54 elm_object_content_part_set(radio, "icon", ic);
55 elm_box_pack_end(bx, radio);
56 evas_object_size_hint_weight_set(radio, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
57 evas_object_size_hint_align_set(radio, EVAS_HINT_FILL, EVAS_HINT_FILL);
58 evas_object_show(radio);
59 evas_object_smart_callback_add(radio, "changed", _cb, NULL);
61 radio = elm_radio_add(win);
62 elm_object_text_set(radio, "Radio 3");
63 elm_radio_state_value_set(radio, 3);
64 elm_radio_value_pointer_set(radio, &val);
65 elm_radio_group_add(radio, group);
66 elm_box_pack_end(bx, radio);
67 evas_object_size_hint_weight_set(radio, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
68 evas_object_size_hint_align_set(radio, EVAS_HINT_FILL, EVAS_HINT_FILL);
69 evas_object_show(radio);
70 evas_object_smart_callback_add(radio, "changed", _cb, NULL);
72 radio = elm_radio_add(win);
73 elm_object_text_set(radio, "Radio 4");
74 elm_radio_state_value_set(radio, 4);
75 elm_box_pack_end(bx, radio);
76 evas_object_size_hint_weight_set(radio, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
77 evas_object_size_hint_align_set(radio, EVAS_HINT_FILL, EVAS_HINT_FILL);
78 evas_object_show(radio);
80 evas_object_show(win);
89 _cb(void *data, Evas_Object *obj, void *event_info)
91 printf("val is now: %d\n", val);