edje - support edc source_visible

This commit is contained in:
ChunEon Park 2013-05-31 17:35:30 +09:00
parent f87c050342
commit 80e1353807
8 changed files with 39 additions and 5 deletions

View File

@ -1,3 +1,6 @@
2013-05-31 ChunEon Park (Hermet)
* Edje: support edc proxy.source_visible
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
* compilation fail if not found and option set to yes or static * compilation fail if not found and option set to yes or static

1
NEWS
View File

@ -103,6 +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
* Evil: * Evil:
- Add mkdtemp. - Add mkdtemp.
* ecore_x: * ecore_x:

View File

@ -14,7 +14,7 @@ endif
" A bunch of useful keywords " A bunch of useful keywords
syn keyword edcBlock images data fonts collections group contained syn keyword edcBlock images data fonts collections group contained
syn keyword edcBlock part parts dragable description contained syn keyword edcBlock part parts dragable description contained
syn keyword edcBlock text font fill origin size image contained syn keyword edcBlock text font fill origin size image proxy contained
syn keyword edcBlock programs program styles style contained syn keyword edcBlock programs program styles style contained
syn keyword edcBlock gradient spectra spectrum contained syn keyword edcBlock gradient spectra spectrum contained
syn keyword edcBlock color_classes color_class rel1 rel2 contained syn keyword edcBlock color_classes color_class rel1 rel2 contained
@ -31,6 +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 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

@ -321,6 +321,8 @@ static void st_collections_group_parts_part_description_table_homogeneous(void);
static void st_collections_group_parts_part_description_table_align(void); 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);
#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);
static void st_collections_group_parts_part_description_physics_restitution(void); static void st_collections_group_parts_part_description_physics_restitution(void);
@ -633,6 +635,8 @@ New_Statement_Handler statement_handlers[] =
{"collections.group.parts.part.description.table.align", st_collections_group_parts_part_description_table_align}, {"collections.group.parts.part.description.table.align", st_collections_group_parts_part_description_table_align},
{"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},
#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},
{"collections.group.parts.part.description.physics.restitution", st_collections_group_parts_part_description_physics_restitution}, {"collections.group.parts.part.description.physics.restitution", st_collections_group_parts_part_description_physics_restitution},
@ -1095,7 +1099,7 @@ _edje_part_description_alloc(unsigned char type, const char *collection, const c
ed = mem_alloc(SZ(Edje_Part_Description_Proxy)); ed = mem_alloc(SZ(Edje_Part_Description_Proxy));
ed->proxy.id = -1; ed->proxy.id = -1;
ed->proxy.source_visible = EINA_TRUE;
_edje_part_description_fill(&ed->proxy.fill); _edje_part_description_fill(&ed->proxy.fill);
result = &ed->common; result = &ed->common;
@ -7391,6 +7395,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_visible(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_visible = parse_bool(0);
}
static void static void
st_collections_group_parts_part_description_table_min(void) st_collections_group_parts_part_description_table_min(void)
{ {

View File

@ -2486,9 +2486,13 @@ _edje_proxy_recalc_apply(Edje *ed, Edje_Real_Part *ep, Edje_Calc_Params *p3, Edj
} }
eo_do(ep->object, eo_do(ep->object,
evas_obj_image_fill_set(p3->type.common.fill.x, p3->type.common.fill.y, evas_obj_image_fill_set(p3->type.common.fill.x,
p3->type.common.fill.w, p3->type.common.fill.h), p3->type.common.fill.y,
evas_obj_image_smooth_scale_set(p3->smooth)); p3->type.common.fill.w,
p3->type.common.fill.h),
evas_obj_image_smooth_scale_set(p3->smooth),
evas_obj_image_source_visible_set(chosen_desc->proxy.source_visible)
);
} }
static void static void

View File

@ -723,6 +723,7 @@ _edje_edd_init(void)
EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_part_description_proxy, Edje_Part_Description_Proxy, "proxy.fill.angle", proxy.fill.angle, EET_T_INT); EET_DATA_DESCRIPTOR_ADD_BASIC(_edje_edd_edje_part_description_proxy, Edje_Part_Description_Proxy, "proxy.fill.angle", proxy.fill.angle, 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.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_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

@ -3095,6 +3095,7 @@ edje_edit_state_add(Evas_Object *obj, const char *part, const char *name, double
memset(&pro->proxy, 0, sizeof (pro->proxy)); memset(&pro->proxy, 0, sizeof (pro->proxy));
pro->proxy.id = -1; pro->proxy.id = -1;
pro->proxy.source_visible = 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

@ -1130,6 +1130,7 @@ struct _Edje_Part_Description_Spec_Proxy
Edje_Part_Description_Spec_Fill fill; Edje_Part_Description_Spec_Fill fill;
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 */
}; };
struct _Edje_Part_Description_Spec_Text struct _Edje_Part_Description_Spec_Text