1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
#include "main.h"
#include "util.h"
char *_ck_styles[] =
{
"default",
"favorite",
"onoff",
NULL
};
static void
_ck_selected(void *data, Evas_Object *obj, void *event_info)
{
Evas_Object *ck = data;
const char *txt = elm_object_item_text_get(event_info);
elm_object_style_set(ck, txt);
}
static void
_changed_cb(void *data, Evas_Object *obj, void *event_info)
{
Evas_Object *check = data;
Eina_Bool state = elm_check_state_get(obj);
if (state) elm_object_text_set(check, "Text");
else elm_object_text_set(check, "");
}
static void
_changed_cb2(void *data, Evas_Object *obj, void *event_info)
{
Evas_Object *check = data;
Eina_Bool state = elm_check_state_get(obj);
if (state) {
Evas_Object *ic = elm_icon_add(check);
char buf[100];
snprintf(buf, sizeof(buf), "%s%s", IMAGE_DIR, "ico_lock_nor.png");
elm_image_file_set(ic, buf, NULL);
elm_object_part_content_set(check, "icon", ic);
}
else elm_object_part_content_set(check, "icon", NULL);
}
void checkbox_del_cb(void *data)
{
}
Evas_Object *checkbox_cb(void *data)
{
Evas_Object *wbox, *obox, *check, *ck;
appdata *ad = data;
wbox = ad->widget_box;
obox = ad->option_box;
// widget box
check = elm_check_add(wbox);
evas_object_show(check);
elm_box_pack_end(wbox, check);
// option box
ck = elm_check_add(obox);
evas_object_show(ck);
elm_object_text_set(ck, " Set Text");
elm_box_pack_end(obox, ck);
evas_object_size_hint_weight_set(ck, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_smart_callback_add(ck, "changed", _changed_cb, check);
ck = elm_check_add(obox);
evas_object_show(ck);
elm_object_text_set(ck, " Set Icon");
elm_box_pack_end(obox, ck);
evas_object_size_hint_weight_set(ck, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_smart_callback_add(ck, "changed", _changed_cb2, check);
evas_object_smart_callback_add(ad->style_hov, "selected", _ck_selected, check);
return check;
}
|