Summary:
In edje_embryo.c, there are the list for supported methods in script.
However, methods listed from line 175 to 188 don't exist actually.
This patch implements 4 methods among them.
set_mouse_events(part_id, ev)
get_mouse_events(part_id)
set_repeat_events(part_id, rep)
get_repeat_events(part_id)
Reviewers: Hermet, woohyun, cedric
Reviewed By: cedric
Subscribers: cedric, Hermet
Differential Revision: https://phab.enlightenment.org/D2766
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Fix a bug that happens when a Eolian C++ wrapper have no default
constructor (because it have obligatory constructing methods) and it is
being used as a return of a inheritance wrappers.
Switched to a conversion of the native type as the default return, instead
of a value initialized wrapper.
Reviewers: q66, felipealmeida
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D2769
Otherwise there would be conflicts in certain circumstances.
This also requires adding const on many existing functions,
and similar work is necessary in Elementary.
@fix
This fixes parsing of floating point number with locales that use
a comma as decimal separator, as strtof/strtod follows locale
specific conventions.
@fix
The error message was:
/usr/bin/ld: preview_text_filter.o: undefined reference to symbol 'efl_gfx_filter_program_set'
//home/batden/Enlightenment20/efl/src/lib/efl/.libs/libefl.so.1: error adding symbols: DSO missing from command line
The previous API supported stuff like "mask{'image1'}" but image1
is now not a valid buffer name, as it's only the proxy source name.
This patch fixes the buffer lookup.
Until we're happy with it, keep the API as beta.
The EDC support should not change, and the Lua either, but the
API could potentially still change to accomodate for new needs
(vector graphics, anyone?). If we're happy with the current
interface, then we can remove the @beta flags.
This flag should be set iif the string passed is to be executed
rather than assigned. This is used to pass complex arguments
as data, like tables (eg. color class).
Makes sure that buffers don't override already existing
globals vars such as 'mask' (a function name). Yeah, it happened
to me.
CC support is a little bit hackish. Need to find a better way.
Deep down internally there was already a name, but no API could
really set it properly.
Here Edje will set the name of the filter based on the part name
or the data item name if relevant.
This creates the new interface
Efl.Gfx.Filter
And the implementation is a mixin (evas_filter_mixin.c):
Evas.Filter
All the filter rendering code has now been moved to this
new file. TODO: Merge image filtering.
Use the file data {item, file} block to embed filters code.
It can become especially useful to keep the filters as separated
Lua files, that will be embedded in the final edj file.
@feature
This should preserve ABI stability with earlier versions of
edje_cc while still providing more advanced control over
proxy bindings for evas filters from EDC.
Also fix proxy binding for filters.
@feature
Reuse previous code for buffer. Keeps API stability.
The new class "color" is here for a more convenient color
representation. This way, colors can be represented in more
natural ways like: {r,g,b[,a]}, 0xaarrggbb, "red", "#rrggbb"
Class color is implemented in pure Lua, and adds a .lua file
to Evas' share folder.
This will improve the debug output of evas and specifically
allow setting "evas_filter" log level to a higher or lower
value depending on what you are debugging :)
Now we're ready to implement runtime changes to the filters'
state (color classes, edje state, etc...), as the Lua function
will be run whenver required.
This is to prepare the changeable states (animation, color, scale...)
- Remove use of Eina_Value (simplifies code)
- Use proper Lua type for buffers (with pretty __tostring)
This adds the buffer methods: width, height, type, name, source
This will allow changing the state of the filter and re-run it
without re-creating the Lua_State object. This is to handle size,
color, animation state and scale changes (amongst other things).
Summary:
get_geometry() method calls edje_object_part_geometry_get() internally,
and the type of its arguments is Evas_Coord. (typedef'ed integer)
However, comment says that method require Float type as its arguemnts,
and get_geometry() initializes Evas_Coord variables as 0.0.
This patch corrects type mismatching and comment.
@fix
Reviewers: Hermet
Subscribers: cedric, Hermet
Differential Revision: https://phab.enlightenment.org/D2754
if the object has been deleted already, scope data is null. handle it
correctly. this fixes a segv in the new efreetd when it starts and
there is an existing efreet running thus owning the socket fails.
@fix
spewing out errors for a failed dns lookup is not somehting to ERR out
in logs all the time. it is at best a debug log. the caller handles
the failed connect itself.
@fix
it is not an error. eina_module may be used on files that don't exist
and the caller may handle that as a "does not exist" error. it is not
good to go spewing out errors for this. it's debug at best.
@fix