edje - support edc proxy.source_clip

This commit is contained in:
ChunEon Park 2013-05-31 20:08:59 +09:00
parent 9473c4a9a5
commit f55092ab93
8 changed files with 29 additions and 5 deletions

View File

@ -1,5 +1,5 @@
2013-05-31 ChunEon Park (Hermet) 2013-05-31 ChunEon Park (Hermet)
* Edje: support edc proxy.source_visible * Edje: support edc proxy.source_visible, proxy.source_clip
2013-05-31 Jérémy Zurcher 2013-05-31 Jérémy Zurcher
* Added --enable-image-loader-xyz=yes|static|auto|no for all loaders * Added --enable-image-loader-xyz=yes|static|auto|no for all loaders

2
NEWS
View File

@ -103,7 +103,7 @@ Additions:
* Edje: * Edje:
- Add edje_object_part_text_input_panel_layout_variation_set/get API - Add edje_object_part_text_input_panel_layout_variation_set/get API
- Add EDJE_INPUT_PANEL_LAYOUT_DATETIME layout - Add EDJE_INPUT_PANEL_LAYOUT_DATETIME layout
- support edc proxy.source_visible - support edc proxy.source_visible, proxy.source_clip
* Evil: * Evil:
- Add mkdtemp. - Add mkdtemp.
* ecore_x: * ecore_x:

View File

@ -31,7 +31,7 @@ syn keyword edcLabel source5 source6 multiline pointer_mode contained
syn keyword edcLabel state visible step aspect fixed middle contained syn keyword edcLabel state visible step aspect fixed middle contained
syn keyword edcLabel aspect_preference ellipsis elipsis image contained syn keyword edcLabel aspect_preference ellipsis elipsis image contained
syn keyword edcLabel relative offset to to_x to_y contained syn keyword edcLabel relative offset to to_x to_y contained
syn keyword edcLabel source_visible contained syn keyword edcLabel source_visible source_clip contained
syn keyword edcLabel border border_scale scale_hint color color2 color3 font size contained syn keyword edcLabel border border_scale scale_hint color color2 color3 font size contained
syn keyword edcLabel signal action transition in filter contained syn keyword edcLabel signal action transition in filter contained
syn keyword edcLabel target after fit align contained syn keyword edcLabel target after fit align contained

View File

@ -322,6 +322,7 @@ static void st_collections_group_parts_part_description_table_align(void);
static void st_collections_group_parts_part_description_table_padding(void); static void st_collections_group_parts_part_description_table_padding(void);
static void st_collections_group_parts_part_description_table_min(void); static void st_collections_group_parts_part_description_table_min(void);
static void st_collections_group_parts_part_description_proxy_source_visible(void); static void st_collections_group_parts_part_description_proxy_source_visible(void);
static void st_collections_group_parts_part_description_proxy_source_clip(void);
#ifdef HAVE_EPHYSICS #ifdef HAVE_EPHYSICS
static void st_collections_group_parts_part_description_physics_mass(void); static void st_collections_group_parts_part_description_physics_mass(void);
@ -636,6 +637,7 @@ New_Statement_Handler statement_handlers[] =
{"collections.group.parts.part.description.table.padding", st_collections_group_parts_part_description_table_padding}, {"collections.group.parts.part.description.table.padding", st_collections_group_parts_part_description_table_padding},
{"collections.group.parts.part.description.table.min", st_collections_group_parts_part_description_table_min}, {"collections.group.parts.part.description.table.min", st_collections_group_parts_part_description_table_min},
{"collections.group.parts.part.description.proxy.source_visible", st_collections_group_parts_part_description_proxy_source_visible}, {"collections.group.parts.part.description.proxy.source_visible", st_collections_group_parts_part_description_proxy_source_visible},
{"collections.group.parts.part.description.proxy.source_clip", st_collections_group_parts_part_description_proxy_source_clip},
#ifdef HAVE_EPHYSICS #ifdef HAVE_EPHYSICS
{"collections.group.parts.part.description.physics.mass", st_collections_group_parts_part_description_physics_mass}, {"collections.group.parts.part.description.physics.mass", st_collections_group_parts_part_description_physics_mass},
@ -1100,6 +1102,7 @@ _edje_part_description_alloc(unsigned char type, const char *collection, const c
ed->proxy.id = -1; ed->proxy.id = -1;
ed->proxy.source_visible = EINA_TRUE; ed->proxy.source_visible = EINA_TRUE;
ed->proxy.source_clip = EINA_TRUE;
_edje_part_description_fill(&ed->proxy.fill); _edje_part_description_fill(&ed->proxy.fill);
result = &ed->common; result = &ed->common;
@ -7395,6 +7398,24 @@ static void st_collections_group_parts_part_description_table_padding(void)
ed->table.padding.y = parse_int_range(1, 0, 0x7fffffff); ed->table.padding.y = parse_int_range(1, 0, 0x7fffffff);
} }
static void
st_collections_group_parts_part_description_proxy_source_clip(void)
{
Edje_Part_Description_Proxy *ed;
check_arg_count(1);
if (current_part->type != EDJE_PART_TYPE_PROXY)
{
ERR("parse error %s:%i. proxy attributes in non-PROXY part.",
file_in, line - 1);
exit(-1);
}
ed = (Edje_Part_Description_Proxy*) current_desc;
ed->proxy.source_clip = parse_bool(0);
}
static void static void
st_collections_group_parts_part_description_proxy_source_visible(void) st_collections_group_parts_part_description_proxy_source_visible(void)
{ {

View File

@ -2491,8 +2491,8 @@ _edje_proxy_recalc_apply(Edje *ed, Edje_Real_Part *ep, Edje_Calc_Params *p3, Edj
p3->type.common.fill.w, p3->type.common.fill.w,
p3->type.common.fill.h), p3->type.common.fill.h),
evas_obj_image_smooth_scale_set(p3->smooth), evas_obj_image_smooth_scale_set(p3->smooth),
evas_obj_image_source_visible_set(chosen_desc->proxy.source_visible) evas_obj_image_source_visible_set(chosen_desc->proxy.source_visible),
); evas_obj_image_source_clip_set(chosen_desc->proxy.source_clip));
} }
static void static void

View File

@ -724,6 +724,7 @@ _edje_edd_init(void)
EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_part_description_proxy, Edje_Part_Description_Proxy, "proxy.fill.spread", proxy.fill.spread, EET_T_INT); EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_part_description_proxy, Edje_Part_Description_Proxy, "proxy.fill.spread", proxy.fill.spread, EET_T_INT);
EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_part_description_proxy, Edje_Part_Description_Proxy, "proxy.fill.type", proxy.fill.type, EET_T_CHAR); EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_part_description_proxy, Edje_Part_Description_Proxy, "proxy.fill.type", proxy.fill.type, EET_T_CHAR);
EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_part_description_proxy, Edje_Part_Description_Proxy, "proxy.source_visible", proxy.source_visible, EET_T_CHAR); EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_part_description_proxy, Edje_Part_Description_Proxy, "proxy.source_visible", proxy.source_visible, EET_T_CHAR);
EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_part_description_proxy, Edje_Part_Description_Proxy, "proxy.source_clip", proxy.source_clip, EET_T_CHAR);
EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Edje_Part_Description_Text); EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Edje_Part_Description_Text);
eddc.func.mem_free = mem_free_text; eddc.func.mem_free = mem_free_text;

View File

@ -3096,6 +3096,7 @@ edje_edit_state_add(Evas_Object *obj, const char *part, const char *name, double
pro->proxy.id = -1; pro->proxy.id = -1;
pro->proxy.source_visible = EINA_TRUE; pro->proxy.source_visible = EINA_TRUE;
pro->proxy.source_clip = EINA_TRUE;
pro->proxy.fill.smooth = 1; pro->proxy.fill.smooth = 1;
pro->proxy.fill.pos_rel_x = 0.0; pro->proxy.fill.pos_rel_x = 0.0;
pro->proxy.fill.pos_abs_x = 0; pro->proxy.fill.pos_abs_x = 0;

View File

@ -1131,6 +1131,7 @@ struct _Edje_Part_Description_Spec_Proxy
int id; /* the part id to use as a source for this state */ int id; /* the part id to use as a source for this state */
Eina_Bool source_visible; /* source object visibility */ Eina_Bool source_visible; /* source object visibility */
Eina_Bool source_clip; /* source object clip */
}; };
struct _Edje_Part_Description_Spec_Text struct _Edje_Part_Description_Spec_Text