forked from enlightenment/enventor
ctxpopup - support image candidate list.
This commit is contained in:
parent
d3ce44efe3
commit
f61c99539a
|
@ -177,7 +177,20 @@ ctxpopup_candidate_list_create(Evas_Object *parent, attr_value *attr,
|
|||
EINA_LIST_FOREACH(parts, l, part)
|
||||
elm_ctxpopup_item_append(ctxpopup, part, NULL,
|
||||
ctxpopup_it_cb, data);
|
||||
view_parts_list_free(parts);
|
||||
view_string_list_free(parts);
|
||||
break;
|
||||
}
|
||||
case ATTR_VALUE_IMAGE:
|
||||
{
|
||||
view_data *vd = edj_mgr_view_get(NULL);
|
||||
if (!vd) goto err;
|
||||
Eina_List *parts = view_images_list_get(vd);
|
||||
Eina_List *l;
|
||||
char *part;
|
||||
EINA_LIST_FOREACH(parts, l, part)
|
||||
elm_ctxpopup_item_append(ctxpopup, part, NULL,
|
||||
ctxpopup_it_cb, data);
|
||||
view_string_list_free(parts);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -212,6 +212,19 @@ parser_type_init(parser_data *pd)
|
|||
attr->instring = EINA_TRUE;
|
||||
attr->value.type = ATTR_VALUE_PART;
|
||||
pd->attrs = eina_inlist_append(pd->attrs, (Eina_Inlist *) attr);
|
||||
|
||||
//Type: Image
|
||||
attr = calloc(1, sizeof(parser_attr));
|
||||
attr->keyword = eina_stringshare_add("normal");
|
||||
attr->instring = EINA_TRUE;
|
||||
attr->value.type = ATTR_VALUE_IMAGE;
|
||||
pd->attrs = eina_inlist_append(pd->attrs, (Eina_Inlist *) attr);
|
||||
|
||||
attr = calloc(1, sizeof(parser_attr));
|
||||
attr->keyword = eina_stringshare_add("tween");
|
||||
attr->instring = EINA_TRUE;
|
||||
attr->value.type = ATTR_VALUE_IMAGE;
|
||||
pd->attrs = eina_inlist_append(pd->attrs, (Eina_Inlist *) attr);
|
||||
}
|
||||
|
||||
char *parser_name_get(parser_data *pd EINA_UNUSED, const char *cur)
|
||||
|
|
|
@ -405,7 +405,13 @@ view_parts_list_get(view_data *vd)
|
|||
}
|
||||
|
||||
void
|
||||
view_parts_list_free(Eina_List *list)
|
||||
view_string_list_free(Eina_List *list)
|
||||
{
|
||||
edje_edit_string_list_free(list);
|
||||
}
|
||||
|
||||
Eina_List *
|
||||
view_images_list_get(view_data *vd)
|
||||
{
|
||||
edje_edit_images_list_get(vd->layout);
|
||||
}
|
||||
|
|
|
@ -4,6 +4,7 @@ typedef enum attr_value_type
|
|||
ATTR_VALUE_FLOAT = 2,
|
||||
ATTR_VALUE_CONSTANT = 4,
|
||||
ATTR_VALUE_PART = 8,
|
||||
ATTR_VALUE_IMAGE = 16
|
||||
} attr_value_type;
|
||||
|
||||
struct attr_value_s
|
||||
|
|
|
@ -10,4 +10,5 @@ Eina_Stringshare *view_group_name_get(view_data *vd);
|
|||
void *view_data_get(view_data *vd);
|
||||
void view_scale_set(view_data *vd, double scale);
|
||||
Eina_List *view_parts_list_get(view_data *vd);
|
||||
void view_parts_list_free(Eina_List *list);
|
||||
Eina_List *view_images_list_get(view_data *vd);
|
||||
void view_string_list_free(Eina_List *list);
|
||||
|
|
Loading…
Reference in New Issue