Summary:
Add generate source code for absent parameters for part description.
Also use fields from internal structure Edje_Real_Part instead call public API
@feature
Reviewers: cedric, raster, seoz, Hermet
CC: reutskiy.v.v, cedric
Differential Revision: https://phab.enlightenment.org/D960
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
Summary:
_edje_generate_source_program gets Edje_Program pointer from _edje_program_get_byname
at start of function,but in body calls public methods for get parameters of programs.
Each of this methods calls _edje_program_get_byname, what make generation of source
whole program is slow.
Replaced public API calls with using fields of Edje_Program structure.
Reviewers: cedric, raster, seoz, Hermet
Reviewed By: cedric
CC: reutskiy.v.v, cedric
Differential Revision: https://phab.enlightenment.org/D950
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
Summary:
Set or get orientation for group:
0 for EDJE_ORIENTATION_AUTO, 1 for EDJE_ORIENTATION_LTR, 2 for EDJE_ORIENTATION_RTL.
_get return 0 (AUTO), 1 (LTR), 2(RTL) orientation was setted for the group. -1 if an error occurred.
_set return EINA_TRUE if successful, EINA_FALSE otherwise.
@feature
Reviewers: cedric, raster, seoz, Hermet
CC: reutskiy.v.v, cedric
Differential Revision: https://phab.enlightenment.org/D938
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
Summary:
Add two main functions
- edje_edit_part_pointer_mode_get
- edje_edit_part_pointer_mode_set
Also support pointer mode into part's source code generation.
EVAS_OBJECT_POINTER_MODE_AUTOGRAB is default value,
so generation won't add "AUTOGRAB" into source code if this type of
pointer mode is set.
@feature
Reviewers: cedric, seoz, Hermet, raster
Reviewed By: cedric
CC: reutskiy.v.v, cedric
Differential Revision: https://phab.enlightenment.org/D941
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
Summary:
Add ability to copy whole part and create same part but with new name).
This feature also require to slightly remake function edje_edit_state_copy to make
it able to copy state from one part to different one (only for part_copy usage).
@feature
Reviewers: cedric, seoz, raster, Hermet
CC: reutskiy.v.v, cedric
Differential Revision: https://phab.enlightenment.org/D939
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
Summary:
Fixed edje_edit_part_source_set so that it does not destroy TEXTBLOCK.
Changed type check to switch-case to stress allowed types.
@fix
Reviewers: cedric, raster, seoz, Hermet
Reviewed By: cedric
CC: reutskiy.v.v, cedric
Differential Revision: https://phab.enlightenment.org/D931
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
Summary:
make "get" functions for block "sounds" which return
a sounds or tones list (Eina_List *) off the given edje object.
@feature
Reviewers: raster, cedric, seoz, Hermet
Reviewed By: cedric
CC: reutskiy.v.v, cedric
Differential Revision: https://phab.enlightenment.org/D932
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
Summary:
Set compression type for the given image. Has object being edited,
the name of the image and Edje_Edit_Image_Comp(EDJE_EDIT_IMAGE_COMP_RAW,
EDJE_EDIT_IMAGE_COMP_USER, EDJE_EDIT_IMAGE_COMP_COMP,
EDJE_EDIT_IMAGE_COMP_LOSSY[_ETC1]) as in parametrs.
Return EINA_TRUE if successful, EINA_FALSE - otherwise.
Reviewers: cedric, raster, seoz, Hermet
Reviewed By: cedric
CC: reutskiy.v.v, cedric
Differential Revision: https://phab.enlightenment.org/D929
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
this massively improves edje performance when using groups, which previously would continue calculating their parts even when their parent object was hidden
CPU usage in my test case went from 20-30% to 1%.
@fix
Summary:
the draggable.event field (in edje) is pointing on the id of the part it is assigned to.
The main problem is about deleting parts.
After part being deleted, all other parts (that are below the deleted part) have their id shifted,
but event doesnt shift.
For example,
1) draggable.event at some part pointing at part with id=7,
2) some other part is being deleted
3) part with id=7 have new id now (id=6)
4) draggable.event DOESN'T change it's pointer and still points at part with id=7 (which is now has id=6)
5) if there is no parts with id=7 anymore, then it could give you SEGFAULT someday (or not, depending on luck).
This commit contains next changes:
1) after deleting part, draggable.event also shifts (if required)
2) after deleting part that is being pointed with event by someone, it will remove all event points at it
@fix
Reviewers: cedric, raster, seoz
CC: reutskiy.v.v, cedric
Differential Revision: https://phab.enlightenment.org/D878
Signed-off-by: Cedric Bail <cedric.bail@free.fr>
In particular, ellipsis is -1 by default in Evas, but at this
point (first layout calc), the parameters used for recalc are
incomplete and ellipsis would then be 0 by default (calloc).
As a consequence, Edje will call ellipsis_set(0) enabling
ellipsis even on objects that force "ellipsis: -1".
Solution: set all the parameters before entering text/tb calc.
I believe the other changes are only color and image padding
and should not affect recalc_single.
Summary:
To correcly display the added pats using the edje edit api, update
init the filds of Edje_Real_Part. Initialize the next filds: type and
typedata. It filds initialized accordingly to Edje_Part_Type value.
@fix
Reviewers: raster, cedric, seoz, Hermet
CC: cedric
Differential Revision: https://phab.enlightenment.org/D854
Signed-off-by: Cedric Bail <cedric.bail@free.fr>
Text objects declared in Edje will see their padding added twice,
as the Evas_Object_Text itself contains the padding already.
This WILL break some EDC files. It's a bug nonetheless.
Should this be backported?
this is enabled for all scripts within a group, and it should only be used if you:
1) know what you are doing
2) know why this is unsafe (T905)
@feature
Summary: Input type for offset value must be Integer in the "edje_edit_rel1(2)_offset_x(y)_set" functions
Reviewers: cedric, Hermet
CC: cedric, Hermet, raster
Differential Revision: https://phab.enlightenment.org/D562
what a huge, colossal cock-up of a clusterfuck. it's a good thing nobody ever uses ellipses or edje. otherwise we'd probably get complaints about this kind of thing.
this should always be applied, not just when min_x isn't set; failure to do so causes erroneous ellipsizing in some cases where it should be explicitly prohibited
@fix
Add a new flag in EDC files to specify ETC1 compression
should be enabled. It follows the same rules as the
current LOSSY flag for JPEG compression.
@feature