Commit Graph

85 Commits

Author SHA1 Message Date
Marcel Hollerbach ddb3bd7d21 efl_canvas_object: remove event_freeze
this is now done via Efl.Object.event_freeze / Efl.Object.event_thaw.

ref T7555

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D8011
2019-02-25 10:37:43 +01:00
Marcel Hollerbach a25444f0d5 efl_canvas_object: make is_frame_object internal
it was decided that this property should be internal. So now it is
internal.

ref T7555

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D8010
2019-02-25 10:37:42 +01:00
Marcel Hollerbach 422ee8d323 efl_canvas_object: get rid of event_animation set/get
the API is a little bit problematic. The API takes events as an
parameter. However, only the hide and show events can be used, because
move for example is not intercepted, which leads to a situation that you
cannot attach a translation animation to the event. Further more,
handling the animations directory instead of pipeing them through events
seems to be a little bit easier as the case study of the previous events
have shown. Further more, we should never ever overwrite the
callback_call function of a eo base object, those methods are an
incredible hotpath, by the time we would have 1-2 animations on a
object, the event submission would be significetly slowned down.

ref T7555

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D8009
2019-02-25 10:37:40 +01:00
Mike Blumenkrantz af7d1ef7ed interfaces: move animator,tick to efl.canvas.object and remove efl.animator
Summary:
this interface only contains a single event which is implemented only by the
canvas object

ref T7561

Reviewers: cedric, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7561

Differential Revision: https://phab.enlightenment.org/D7905
2019-02-21 22:04:30 +01:00
Xavi Artigas 220f17ee8d Rename Efl.Gfx.Map -> Efl.Gfx.Mapping
Summary:
For clarity, since there are all kinds of maps, including a navigation map
widget.
Also, corrected some misspellings.

Test Plan: make && make check && make examples all work

Reviewers: cedric, zmike, bu5hm4n

Reviewed By: cedric

Subscribers: Jaehyun_Cho, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7564

Differential Revision: https://phab.enlightenment.org/D7974
2019-02-21 19:20:09 +01:00
Mike Blumenkrantz f886941b11 api: efl.gfx.size_hints -> efl.gfx.hints
Summary:
these hints are not strictly size-related, so renaming them is more consistent
with their actual function

ref T7563

Depends on D7968

Reviewers: segfaultxavi, cedric, bu5hm4n

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7563

Differential Revision: https://phab.enlightenment.org/D7977
2019-02-21 18:43:12 +01:00
Xavi Artigas 333330a6e5 Mark BETA classes individually
Summary:
Instead of surrounding all the #include "*.eo.h" lines in Efl.h
with #ifdef EFL_BETA_API_SUPPORT, include these files unconditionally, but mark
all classes as @beta in the eo files.
This will allow taking them out of beta one by one as we deem them stable enough.
Otherwise, the current procedure involves moving the #include line out of the
ifdef block, which is cumbersome and messes include order.

Depends on D7950
Fixes T7692

Test Plan: Nothing changes

Reviewers: zmike, bu5hm4n, cedric

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7692

Differential Revision: https://phab.enlightenment.org/D7951
2019-02-14 17:46:50 +01:00
Xavi Artigas c2adefd7f2 Efl.Gfx.Stack: Rename raise and lower
Summary:
to move_to_top and move_to_bottom since the previous names seemed to indicate
that the object only moved one step instead of all the way through the top
or the bottom of the stack.

Ref T7560

Test Plan: make && make check && make examples work as before

Reviewers: cedric, zmike

Reviewed By: zmike

Subscribers: kimcinoo, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7560

Differential Revision: https://phab.enlightenment.org/D7934
2019-02-14 08:57:22 -05:00
Marcel Hollerbach 3b6a9152c1 efl: convert all abstracts to the new eolian syntax
ref T7459

Reviewed-by: Daniel Kolesa <daniel@octaforge.org>
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7686
2019-01-18 16:31:30 +01:00
Yeongjong Lee 78ae9c0ae0 gfx: Add size hint fill (EO)
Summary:
If widget use both hint_align(HINT_FILL) and hint_max together, there is no way
to set to hint_align. See, elementary_test -to 'efl.ui.box' -
"Button with a quite long text." button. you can control button position
using "Box align" slider, but this is not proper implementation. When there are
two widget which have hint_align(HINT_FILL) and hint_max, those positions are
determined by box_align rather than hint_align. it means widget align cannot be
set individually.
To solve this problem, this patch add hint_fill property. in order to avoid
conflict with legacy API named evas_object_size_hint_fill_set(), it only works
for EO widgets(made by efl_add).
Also, EFL_GFX_SIZE_HINT_FILL is removed.

@feature

Test Plan:
elementary_test -to 'efl.ui.box'
elementary_test -to 'efl.ui.table'

Reviewers: jpeg, Hermet, Jaehyun_Cho, raster, barbieri

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T3912

Differential Revision: https://phab.enlightenment.org/D7409
2019-01-16 16:47:51 +09:00
Cedric BAIL 038612736c efl: rename Efl.Ui.Base -> Efl.Ui.I18n as that is really what it does.
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7506
2019-01-02 11:03:51 -08:00
Daniel Kolesa 36a5b5bf13 canvas: disable an eolian-style api reference
This references a file that is not being installed, so the eo
file will fail to parse when used as a system-wide .eo file.

Introduced in 05682eed7d.

Fixes T7495.
2018-12-06 11:45:06 +01:00
Xavi Artigas 05682eed7d eo-docs: Remove Doxygen tags from efl*.eo files
Summary:
- Replace '\@ref name' with '@name'
- Remove unused \@internal tag
    This tag affects text AFTER it, and there is no text after it.
- Remove \@note tag
    Replaced with a simple NOTE: text, since eolian does not have an equivalent tag.
- Remove spurious \@Efl... tags
    They should really be @Efl...
- Remove \@p tags
    There is no eolian equivalent, and a simpler $ suffices in this case.

Fixes T7482

Reviewers: q66

Reviewed By: q66

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7482

Differential Revision: https://phab.enlightenment.org/D7372
2018-11-28 13:33:46 +01:00
Jaehyun Cho 14f1866f25 efl: Remove unnecessary abstract/class inheritance
Summary:
Remove unnecessary abstract and class inheritance from eo file because
those abstracts and classes are duplicate.
e.g. if class B (class A) in B.eo file, then class C (class A, class B) in C.eo file.

Reviewers: woohyun, felipealmeida, Hermet, bu5hm4n

Reviewed By: Hermet, bu5hm4n

Subscribers: bu5hm4n, cedric, segfaultxavi, q66, #reviewers, lauromoura, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6982
2018-09-10 20:29:24 +09:00
Jaehyun Cho 0dabbfe177 Revert "efl: Remove unnecessary abstract/class inheritance"
This reverts commit 4067fafe07.

As commented on D6982, the original patch changes the widget's behavior.
e.g. Efl.Ui.Win cannot be called with Efl.Config_Gloabal APIs.
     Elm.Combobox cannot provide events of Button and Hover.

Until the above changes are resolved, the original patch is reverted.
2018-09-05 17:14:22 +09:00
Jaehyun Cho 4067fafe07 efl: Remove unnecessary abstract/class inheritance
Summary:
Remove unnecessary abstract and class inheritance from eo file because
those abstracts and classes are duplicate.
e.g. if class B (class A) in B.eo file, then class C (class A, class B) in C.eo file.

Reviewers: woohyun, felipealmeida, Hermet

Reviewed By: Hermet

Subscribers: cedric, segfaultxavi, q66, #reviewers, lauromoura, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6982
2018-09-05 15:05:23 +09:00
Yeongjong Lee 02d83ebcd4 docs: Fix typos in API reference doc and comments.
Reviewers: Hermet, segfaultxavi

Reviewed By: Hermet, segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6948
2018-08-31 17:45:31 +09:00
Cedric Bail 429084e2fb evas: do not override lifecycle by overriding efl_parent_set. 2018-05-24 16:02:20 -07:00
Cedric Bail 5c9815676b evas: move the del event to match invalidate and free event to the end of the destructor. 2018-05-24 16:02:19 -07:00
Cedric BAIL 30d02a7410 evas: try to protect old legacy lifecycle without overloading Efl.Del. 2018-05-24 16:02:19 -07:00
Xavi Artigas d808147e6f efl: rename Efl.Text.Bidirectional_Type -> Efl.Text_Bidirectional_Type 2018-05-23 17:33:47 +02:00
Xavi Artigas 029f0769a5 efl: rename Efl.Event.Description -> Efl.Event_Description 2018-05-23 17:33:47 +02:00
Xavi Artigas 3e8b809999 efl: rename Efl.Canvas.Object.Animation.* -> Efl.Canvas.Object_Animation_* 2018-05-23 17:33:46 +02:00
Jaehyun Cho 81f94f5a09 efl_canvas_object: Add event info to animation events in eo 2018-05-01 00:40:34 +09:00
Jaehyun Cho 485fe6cd61 efl_canvas_object: Remove unnecessary import 2018-04-30 23:52:31 +09:00
Xavi Artigas 23c303f87b Efl.Loop_* (from Efl.Loop.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:04:03 -07:00
Xavi Artigas 7be849c63e Efl.Gfx.Size_Hint* (from Efl.Gfx.Size.Hint*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:36 -07:00
Xavi Artigas 55bd097a3d Efl.Gfx.Entity (from Efl.Gfx)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:32 -07:00
Jaehyun Cho e3315baaa3 efl_canvas_object: Add events for state changes of object's animation
Add events to notice the state changes of canvas object's animation.
anim_started, anim_running, and anim_ended events are added.
2018-04-19 23:39:32 +09:00
Jaehyun Cho e4fbab8b47 efl_canvas_object: Change parameter name of property event_animation
Change the parameter name of property event_animation from "event_type"
to "desc" to synchronize with other APIs.
(The parameter type is Efl.Event.Description)
2018-04-12 12:55:49 +09:00
Mike Blumenkrantz a0a80fc74a Efl.Animator: rename to Efl.Canvas.Animator
most C api remains unchanged

ref T6714
ref T6716
2018-02-21 14:06:43 -05:00
Andy Williams 6ecad5b873 docs: Update evas canvas eo files for grammar and readability
Author: Nate Drake
2017-12-22 13:45:48 +00:00
Amitesh Singh 9db0ec554b interface: add Efl.Gfx.Color interface for color related APIs
This would eventually turn into mixin class later after adding
more color related helper functions.
2017-12-22 13:29:20 +09:00
Cedric BAIL df032058fd ecore: rename Efl.Loop_User to Efl.Loop.Consumer. 2017-12-13 14:54:57 -08:00
Amitesh Singh 1264fb4af2 Efl.Canvas.Object: add legacy APIs for pointer_coords_inside_get()
fix the b0rkage after 8fb49de5eb
2017-12-13 13:43:02 +09:00
Amitesh Singh 8fb49de5eb Efl.Canvas.Object: rename pointer_coords_inside_get to coords_inside property.
Also change the signature of the function. Pass Eina_Position2D instead.
2017-12-12 17:09:32 +09:00
Amitesh Singh b734c132f9 efl.canvas.object: implement pointer_inside of Efl.Canvas.Pointer.
remove eo apis pointer_in, pointer_device_in, pointer_inside_get &
pointer_inside_by_device_get and add legacy APIs for
pointer_inside_get & pointer_inside_by_device_get.
These four APIs do almost same things.
2017-12-08 20:13:31 +09:00
Amitesh Singh b3715d30bb Efl.Canvas.Object.eo: indent correction 2017-12-06 11:17:09 +09:00
Amitesh Singh 10103b9b45 efl.gfx: move scale{} from efl.ui.base to efl.gfx 2017-12-04 14:38:39 +09:00
Jean-Philippe Andre d957e0a6e4 evas: Animation is a property not method set+get 2017-11-30 11:03:49 +09:00
Jean-Philippe Andre 8803040484 evas: Implement scale API in proper EO fashion
This removes the internal function pointer for scale_update. This makes
all relevant classes implement the scale API in EO.

This removes the duplicate function in Efl.Canvas.Object and only uses
the one from Efl.Ui.Base interface.

This *seems* to be working as expected. Fingers crossed!

PS: I don't like the name Efl.Ui.Base. It's an interface for a few
common API's between Gfx, Canvas and UI levels... Maybe scale simply
doesn't belong there.
2017-11-30 10:48:24 +09:00
Daniel Kolesa 4f5b72a3ed eo files: convert various to use @cref 2017-11-02 16:41:01 +01:00
Jean-Philippe Andre 132876afed Revert "evas: Fix C++ compilation"
@felipealmeida says this cyclic dependency is fixed!
This is awesome. :)

This reverts commit 60e31101a6.
2017-10-26 12:29:54 +09:00
Jaehyun Cho 4dae43e4d1 efl_animation: Fix to set Efl_Event_Description for event animation
Any event represented by Efl_Event_Description can be registered for
event animation. (e.g. EFL_GFX_EVENT_SHOW, EFL_GFX_EVENT_HIDE, etc.)
2017-10-13 22:56:33 +09:00
Jean-Philippe Andre 60e31101a6 evas: Fix C++ compilation
Efl.Animation and Efl.Canvas.Object need each other, and introduce a
cyclic dependency. Eolian doesn't complain... but C++ fails to compile,
as one header must be included before the other, and vice-versa.

Do we have other cyclic dependencies? I remember we lifted the
limitation in eolian itself, but can't remember exactly how it should be
handled...

Ping @q66 @felipealmeida
2017-10-13 14:15:52 +09:00
Jaehyun Cho a6e03da5f0 efl_animation: Support event animation
Register an animation for an event.
Start the animation when the event happens.
2017-10-12 21:03:49 +09:00
Jean-Philippe Andre e021e25c85 evas: Override del() for evas objects
This makes EAPI evas_object_del() and EO API efl_del() work the same on
evas objects, i.e. a del() implies an immediate call to hide() and mark
the object as "delete_me".

If the refcount remains > 0 the object won't be actually deleted, thus
EFL_EVENT_DEL won't be triggered. I think it would probably be a good
idea to have a new event "del,request", to signal reference owners that
this object "wants" to die.

Ping @raster @zmike
2017-10-10 18:44:35 +09:00
Jean-Philippe Andre 21c72948db efl_gfx: Remove color_part API (EO)
This API was introduced in commit:
  cd3f8db506

This was since limited to EO only APIs, and totally underexploited.
After that, efl_part() was introduced, which defines how all part APIs
should be designed.

Nothing uses this API, efl_vg had an implementation that provides no
extra value over the other APIs.
2017-09-13 18:03:34 +09:00
Stefan Schmidt 7aa42c4e75 docs: elm/evas: document some missing return values
With this patch we finally reached 100% doc coverage in EO files again.
It would be nice to keep it like this.
2017-08-31 17:37:52 +02:00
Jean-Philippe Andre 29bacf5988 gfx: Remove size hint request (EO)
This hint is simply not supported by any container.
Add the EO API back if the containers support it.

Ref T5487
2017-08-23 15:24:37 +09:00