Commit Graph

20 Commits

Author SHA1 Message Date
Hermet Park 0e278d1de8 Revert "efl gfx_path: remove EFL_GFX_PATH_EVENT_CHANGED"
This reverts commit 7c38c0c915.

Oops, didn't intend this patch.
2018-12-26 19:32:42 +09:00
Hermet Park 7c38c0c915 efl gfx_path: remove EFL_GFX_PATH_EVENT_CHANGED
Summary:
Here is an additional optmization patch for removing
unnecessary updation of path,

For instance, let's assume this scenario:

If one vg object has 20 path nodes(shapes),
and every single nodes would have 50 path changes.
(like, append_cubic, append_rect, append_xxx ...);
There would 1000 events triggering.

Furthermore, if there are 20 vector objects in one view,
hese events would be triggered 20000 in one frame.

It's insane, actually I could figured out that happens.
and it took a lot of cpu consumption in some vector usages.

efl_gfx_path_commit() is my idea to avoid this.
When path is ready, the path need to get this api call in the last
 to make object changed properly.

@feature

Reviewers: #committers, cedric

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7494
2018-12-26 19:29:10 +09:00
Daniel Kolesa fcae7cab27 eolian gen: enable constness generation on property getter impls
This changes a lot of things all across the EFL. Previously,
methods tagged @const had both their external prototype and
internal impl generated with const on object, while property
getters only had const on the external API. This is now changed
and it all has const everywhere.

Ref T6859.
2018-04-17 20:31:55 +02:00
Mike Blumenkrantz 09f2fab144 interfaces: merge all bounds_get methods into efl.gfx.path
ref 884fc35160
2018-02-12 16:59:48 -05:00
Mike Blumenkrantz 884fc35160 ector: rename ector_renderer "bounds_get" method to "boundary_get"
this conflicted with a method from Efl.Gfx.Path
2018-02-12 13:47:15 -05:00
Mike Blumenkrantz 11d5bac1d3 ector: fix property/method name conflict for "fill"
Shape implements a property, sw/gl/cairo implements a method

rename method to op_fill
2018-02-12 13:47:15 -05:00
Jean-Philippe Andre 1fdbb00e22 efl: Move VG-specific change event to efl.gfx.path 2017-12-13 13:47:48 +09:00
Jean-Philippe Andre f3eff6eb3e efl: Introduce Eina.Rect and switch EO APIs to it
It's a complex struct but defined in EO as a simple struct. ABI-wise
it's equivalent to Eina_Rectangle. Some macros that use Eina_Rectangle
also work on Eina_Rect out of the box, most of the code dealing with
x,y,w,h will require no modifications either.

But Eina_Rect provides direct access to a size or position 2d component,
as well as the usual x,y,w,h. The field "rect" is provided as a
convenience for code dealing with both Eina_Rectangle and Eina_Rect. We
may or may not require it.

Note: Size2D could use unsigned values but I have spotted a few places
in the code that actually use -1 to indicate invalid size (as opposed to
0x0).

@feature
2017-09-18 13:22:52 +09:00
Bryce Harrington d5346d4e24 ector: cleanup grammar in comments
Reviewers: cedric

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D5132

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-08-29 16:24:23 -07:00
Jean-Philippe Andre e79f27ae0c efl: Remove manual definitions of event "changed"
Honestly I can't see why gfx & gfx.path "changed" need a manual
definition, instead of relying on EO. If the API needs to be
internal only, then EO needs to handle internal APIs. In this
case, the event was exposed as a C API but not a EO... why?
2017-04-18 11:07:46 +09:00
Hermet Park e0da83ce56 efl interface: introduce efl_gfx_path mixin.
As we discussed, redesigned efl_gfx_shape mixin.
Split path properties/methods from the shape so that other classes benefit from the path.
2016-11-23 17:36:57 +09:00
Tom Hacohen d5e321466e Efl object: Rename Eo_Event -> Efl_Event.
This is the last step of the Eo renaming efforts.
2016-08-30 13:34:10 +01:00
Tom Hacohen e65aae994e Eo: Finish the renaming of Eo to the EFL.
This renames all the rest of the API to the EFL namespace except for
Eo_Event that will follow soon.

Obviously breaks both API and ABI.
2016-08-15 15:07:42 +01:00
Tom Hacohen c662934be8 Change the EFL to follow the new Eo rename. 2016-08-11 17:04:43 +01:00
Tom Hacohen 6202cc7485 Adjust the code according to the eo event stop changes.
This was changed in the previous commit.
2016-06-20 18:02:00 +01:00
Tom Hacohen 28a2d34ae2 Ector generic: Remove .Generic and .Base (hack no longer needed). 2016-05-11 12:57:55 +01:00
Tom Hacohen 9f15b9fbe7 Ector renderer gl: Remove the no longer needed .Base hack. 2016-05-11 12:57:55 +01:00
Tom Hacohen f21ade6123 Automatic migration to Eo4.
I just ran my script (email to follow) to migrate all of the EFL
automatically. This commit is *only* the automatic conversion, so it can
be easily reverted and re-run.
2016-03-03 09:58:08 +00:00
Tom Hacohen e71e6561ee Eo callbacks: Migrate all of the EFL to the new event cb signatures. 2016-02-29 11:33:27 +00:00
Cedric BAIL 116fe3c65c ector: initial implementation of our own Ector GL backend. 2016-01-05 15:43:44 +09:00