efl
51 строка · 1.4 Кб
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
6static void7_print(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)8{
9printf("check %smarked\n", *((Eina_Bool*)data) ? "" : "un");10}
11
12EAPI_MAIN int13elm_main(int argc EINA_UNUSED, char **argv EINA_UNUSED)14{
15Evas_Object *win, *cb, *cb2, *icon;16Eina_Bool value;17
18elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);19
20win = elm_win_util_standard_add("check", "Check");21elm_win_autodel_set(win, EINA_TRUE);22
23cb = elm_check_add(win);24elm_object_text_set(cb, "checkbox");25elm_check_state_pointer_set(cb, &value);26evas_object_smart_callback_add(cb, "changed", _print, &value);27evas_object_move(cb, 10, 10);28evas_object_resize(cb, 200, 30);29evas_object_show(cb);30
31icon = evas_object_rectangle_add(evas_object_evas_get(win));32evas_object_color_set(icon, 0, 255, 0, 255);33evas_object_resize(icon, 20, 20);34evas_object_show(icon);35
36cb2 = elm_check_add(win);37elm_object_text_set(cb2, "another checkbox");38elm_check_state_set(cb2, EINA_TRUE);39elm_object_part_content_set(cb2, "icon", icon);40evas_object_move(cb2, 10, 50);41evas_object_resize(cb2, 200, 30);42evas_object_show(cb2);43
44evas_object_resize(win, 200, 100);45evas_object_show(win);46
47elm_run();48
49return 0;50}
51ELM_MAIN()52