static Evas_Object * _widget_bubble_create(const char *orig_style) { char buf[PATH_MAX]; char style[PATH_MAX] = {0, }; Evas_Object *o, *ic, *lbl; ic = elm_icon_add(win); snprintf(buf, sizeof(buf), "%s/images/sky_01.jpg", elm_app_data_dir_get()); elm_image_file_set(ic, buf, NULL); evas_object_show(ic); lbl = elm_label_add(win); elm_object_text_set(lbl, "This is a bubble widget preview."); evas_object_show(lbl); o = elm_bubble_add(win); elm_object_text_set(o, "Title"); elm_object_part_text_set(o, "info", "Information"); elm_object_content_set(o, lbl); elm_object_part_content_set(o, "icon", ic); evas_object_show(o); _trim_end_default(orig_style, style); if (!strcmp("bottom_left", style)) elm_bubble_pos_set(o, ELM_BUBBLE_POS_BOTTOM_LEFT); else if (!strcmp("bottom_right", style)) elm_bubble_pos_set(o, ELM_BUBBLE_POS_BOTTOM_RIGHT); else if (!strcmp("top_left", style)) elm_bubble_pos_set(o, ELM_BUBBLE_POS_TOP_LEFT); else if (!strcmp("top_right", style)) elm_bubble_pos_set(o, ELM_BUBBLE_POS_TOP_RIGHT); return o; }
void _bla(void *data, Evas_Object *obj, void *event_info) { static unsigned char corner = 0; ++corner; if (corner > 3) elm_bubble_pos_set(obj, ELM_BUBBLE_POS_TOP_LEFT); else elm_bubble_pos_set(obj, corner); }
static void _bubble_clicked(void *data, Evas_Object *obj, void *event_info) { static unsigned char counter = 0; if (3 < counter) counter = 0; elm_bubble_pos_set(obj, counter); counter++; }