PRAGMA LDFLAGS `pkg-config --libs elementary `
PRAGMA OPTIONS `pkg-config --cflags elementary `
PRAGMA INCLUDE elementary-1/Elementary.h
'--- checkbox demo bigbass
PROTO elm_policy_set ALIAS POLICY
PROTO elm_win_util_standard_add ALIAS WINDOW
PROTO elm_win_autodel_set ALIAS AUTODEL_SET
PROTO elm_check_add ALIAS CHECK_ADD
PROTO elm_object_text_set ALIAS TEST_SET
PROTO elm_check_state_pointer_set ALIAS POINTER_SET
PROTO evas_object_smart_callback_add ALIAS CALLBACK
PROTO evas_object_move ALIAS MOVE_
PROTO evas_object_resize ALIAS RESIZE_
PROTO evas_object_show ALIAS SHOW_
PROTO evas_object_rectangle_add
PROTO evas_object_color_set
PROTO evas_object_resize
PROTO evas_object_show
PROTO elm_check_add
PROTO elm_object_text_set
PROTO elm_check_state_set
PROTO elm_object_part_content_set
PROTO evas_object_move
PROTO evas_object_resize
PROTO evas_object_show
PROTO evas_object_resize
PROTO evas_object_show
PROTO elm_run
PROTO elm_shutdown
PROTO printf
PROTO elm_init
DECLARE *win, *cb, *cb2, *icon TYPE Evas_Object
DECLARE value TYPE Eina_Bool
'==========================================================
SUB CHECK_ME(void *data, Evas_Object *obj, void *event_info)
'==========================================================
'--- simulate the c code part in bacon but using value instead
IF value = 1 THEN
PRINT "checked"
ELSE
PRINT "unchecked"
END IF
END SUB
elm_init(0,0)
elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED)
win = elm_win_util_standard_add("check", "Check")
elm_win_autodel_set(win, EINA_TRUE)
cb = elm_check_add(win)
elm_object_text_set(cb, "checkbox")
elm_check_state_pointer_set(cb, &value)
evas_object_smart_callback_add(cb, "changed", CHECK_ME, &value)
evas_object_move(cb, 10, 10)
evas_object_resize(cb, 200, 30)
evas_object_show(cb)
icon = evas_object_rectangle_add(evas_object_evas_get(win))
evas_object_color_set(icon, 0, 255, 0, 255)
evas_object_resize(icon, 20, 20)
evas_object_show(icon)
cb2 = elm_check_add(win)
elm_object_text_set(cb2, "another checkbox")
elm_check_state_set(cb2, EINA_TRUE)
elm_object_part_content_set(cb2, "icon", icon)
evas_object_move(cb2, 10, 50)
evas_object_resize(cb2, 200, 30)
evas_object_show(cb2)
evas_object_resize(win, 200, 100)
evas_object_show(win)
elm_run()
elm_shutdown()