summaryrefslogtreecommitdiff
path: root/src/button.c
blob: f767441c4a02a265b119ccae995a49703cbf7a1c (plain)
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
#include "main.h"
#include "util.h"


char *_btn_styles[] =
{
    "default",
    "transparent",
    "bottom",
    "circle",
    "contacts",
    "icon_reorder",
    "icon_expand_add",
    "icon_expand_delete",
    NULL
};

static void
_btn_selected(void *data, Evas_Object *obj, void *event_info)
{
    Evas_Object *btn = data;
    const char *txt = elm_object_item_text_get(event_info);

    elm_object_style_set(btn, txt);
}

void button_del_cb(void *data)
{
    appdata *ad = data;
    evas_object_smart_callback_del(ad->style_hov, "selected", _btn_selected);
}

Evas_Object *button_cb(void *data)
{
    Evas_Object *wbox, *btn;
    appdata *ad = data;

    wbox = ad->widget_box;

    btn = elm_button_add(wbox);
    elm_object_text_set(btn, "Button");
    evas_object_show(btn);
    elm_box_pack_end(wbox, btn);

    evas_object_smart_callback_add(ad->style_hov, "selected", _btn_selected, btn);

    return btn;
}