Commit Graph

342 Commits

Author SHA1 Message Date
Daniel Kolesa f399e77a92 eolian: rename is_ref API to is_ptr to match syntax 2016-11-03 14:22:21 +01:00
Felipe Magno de Almeida a09ad5af7f js: Fix calling setAlignedInternalPointerField without a aligned value 2016-10-25 15:43:19 -02:00
Felipe Magno de Almeida 4cd2bd8a66 js: Fix Makefile location and linking of efl.node and tests 2016-10-25 15:43:19 -02:00
Daniel Kolesa 82ef73ca18 eolian: remove type silencing stuff entirely
this was useful during transition, but not anymore
2016-10-25 18:02:23 +02:00
Felipe Magno de Almeida 297415cc53 js: Fix compilation of new data types in JS binding 2016-10-25 12:23:34 -02:00
Lauro Moura 500ed1e40b efl_js: Export Canvas Object and Group 2016-10-25 12:23:34 -02:00
Lauro Moura 611498f035 ecore_js: Add missing HandleScope to addTimeline 2016-10-25 12:23:34 -02:00
Lauro Moura 620454e43d efl_js: Enable Ethumb support for Elm. 2016-10-25 12:23:34 -02:00
Lauro Moura 508edf78c6 efl_js: Update after eo/efl api changes 2016-10-25 12:23:34 -02:00
Lauro Moura 4f52588b3c efl_js: Update JS examples
Changing imports, functions, etc.

Also export "cast" function for all eolian_js generated classes.
2016-10-25 12:23:34 -02:00
Lauro Moura c08eedfd11 eo_js: Instead of abort, throw an Exception
* When the constructor fails
* On cast error.
2016-10-25 12:23:34 -02:00
Lauro Moura 7869eeed53 eina_js: Fix log color persistence.
The c_ptr() passed to eina_log_register was being lost when saving the string
into the map.
2016-10-25 12:23:34 -02:00
Lauro Moura ae3c74d879 efl_js: Update registration functions
After the Elm -> Efl.Ui and other changes.

Also add extern C guards around private header (elm_widget).
2016-10-25 12:23:34 -02:00
Lauro Moura 4ce9a42456 eo_js: Update event callback after return removal. 2016-10-25 12:23:34 -02:00
Felipe Magno de Almeida 17da4b5b9d eo-cxx: Fix compilation and warnings in clang 2016-10-20 04:52:18 -02:00
Jean-Philippe Andre 7c2259adc8 elm: Remove elm app client/server implementation & APIs
This removes EO APIs related to an unmaintained client/server
model for applications. The reasons for this removal are the
following:
- unused
- no support in E
- relies on dbus as the sole transport layer
- unmaintained since the original patches
- only EO API (iow: beta, never released API)

I've also never seen the test cases (in elementary_test) actually
work.

According to Gustavo (k-s), the original author of this feature
is not involved in EFL at the moment, and unlikely to be in the
near future.

Note that terminology has in the past used those APIs when it
was still using some beta EO APIs. This code is now long gone,
removed in terminology commit 3ffcbadd6f9881472db6 (2014/12/13,
for version 0.8.0)

If someone wants to step in and maintain the implementation,
protocol and (EO) API, then feel free to revert this patch
and revive the feature. But it will need to be more solid than
this implementation.
2016-10-20 14:55:48 +09:00
Felipe Magno de Almeida 88419e5e87 eina-cxx: Implement aligned_union for GCC 4.9 2016-09-22 19:27:56 -03:00
Felipe Magno de Almeida 10293e6520 eo-cxx: Add progress to future and promise 2016-09-20 23:30:29 -03:00
Felipe Magno de Almeida 5df0b6765b eo-cxx: Replace for ENOMEM to avoid warnings 2016-09-14 00:55:51 -03:00
Felipe Magno de Almeida 5e735fe762 eo-cxx: Fix race promises 2016-09-14 00:33:22 -03:00
Felipe Magno de Almeida 3339f03964 eo-cxx: Add promise type 2016-09-14 00:33:22 -03:00
Felipe Magno de Almeida e0b444f95f eo-cxx: Add race promises through eina::variant 2016-09-14 00:33:22 -03:00
Felipe Magno de Almeida 2bdad3f1d6 eo-cxx: race for promises 2016-09-14 00:33:22 -03:00
Felipe Magno de Almeida dbed78ad3b eina-cxx: Moved variant to eina C++ 2016-09-14 00:33:22 -03:00
Felipe Magno de Almeida a63cfcafc7 eolian-cxx: Implement future template class for C++ 2016-09-11 23:44:05 -03:00
Stefan Schmidt 6bc1dc6d83 cxx: follow EINA_ERROR_OUT_OF_MEMORY deprecation
Follow the rest of efl and use ENOMEM from now on. This avoids ugly deprecation
warnings.
2016-09-05 10:39:24 +02:00
Jean-Philippe Andre b4e20fd632 js: Switch to Efl_Event
I haven't tested the compilation... but I guess this can't hurt.
2016-09-01 11:57:43 +09:00
Jean-Philippe Andre ff0952abda cxx: Fix compilation (Efl_Event) 2016-09-01 11:57:43 +09:00
Felipe Magno de Almeida f8a6568d5c eolian-cxx: Fix compilation break with Eo rename to EFL 2016-08-15 15:14:53 -03:00
Felipe Magno de Almeida f4a90dcde2 eolian-cxx: Fix compilation break from changes in Eo nomenclature
Rename of classes and function calls in generated code and C++ headers
2016-08-11 16:24:15 -03:00
Felipe Magno de Almeida d2dd1e744a eo-cxx: Fix C++ use of new _eo_add_end signature 2016-07-12 17:28:38 -03:00
Daniel Kolesa 41abda37f6 elua: event method fixes in eolian bindings 2016-07-12 11:09:05 +01:00
Daniel Kolesa 96b960c953 elua: support is_restart for events in eolian api 2016-07-07 15:15:03 +01:00
Felipe Magno de Almeida 1c402f62a9 eolian-cxx: Fix generation for ref generic_values and Eolian classes 2016-07-05 16:32:11 -03:00
Daniel Kolesa ab2e608239 eolian: add support for static and terminated arrays
Adds two new type types, STATIC_ARRAY and TERMINATED_ARRAY. Static arrays are
only allowed as struct members right now - they translate to regular C static
arrays (allowing them elsewhere wouldn't be good, as C isn't very good at
working with the size information). Terminated arrays are basically sequences
of data terminated at the end. The base type of static arrays can be any type
that is not marked ref (explicit ref may get allowed later). The base type of
terminated arrays has the same restriction plus that it has to be either
implicitly reference type (i.e. translating to pointer in C), integer type
or a character. In case of ref types, the terminator is NULL. In case of
integer types, the terminator is a zero. In case of character types, the
terminator is also a zero (null terminator like C strings).

@feature
2016-06-30 16:59:21 +01:00
Felipe Magno de Almeida b09c1f8093 eolian-cxx: Added stringshare 2016-06-21 16:35:09 -03:00
Felipe Magno de Almeida 9be8f029af eolian-cxx: Remove Eina_Bool from event function wrapper 2016-06-20 19:35:50 -03:00
Felipe Magno de Almeida b97a156ac4 eolian-cxx: Work with @inout parameter of void type 2016-06-16 21:48:07 -03:00
Felipe Magno de Almeida 7e0692b5f3 eolian-cxx: Remove warning about unused parameter 2016-06-15 17:49:56 -03:00
Felipe Magno de Almeida 512fb7f39b eina-cxx: Add overload for std::nullptr_t to stringview 2016-06-15 15:50:04 -03:00
Felipe Magno de Almeida 8906998ef2 eolian-cxx: Add support for ref parameters and correct ownership handling 2016-06-14 22:44:02 -03:00
Felipe Magno de Almeida e5884c95fa eolian-cxx: Fix C++ compilation for lacking .eo files being generated 2016-06-13 01:17:18 -03:00
Daniel Kolesa 33c147f6d4 eolian: remove the unnecessary subtypes API
Inner type can now be retrieved as a base type of the type.
If the type has two inner types or more, there is a new API that allows you to
get the second inner type by calling it on the first one (same would apply to
getting third via second etc.).

This API is simpler to use and doesn't require an iterator.
2016-06-10 14:28:19 +01:00
Daniel Kolesa 375179b47f eolian: support @protected for accessors (get/set)
Previously it was only possible to set it for the whole property.

@feature
2016-06-09 16:55:24 +01:00
Felipe Magno de Almeida 343b88a735 eolian-cxx: Fix some C++ quirks that makes clang warn about 2016-06-08 12:55:19 -03:00
Daniel Kolesa b87c4f6de8 eolian: refine the ref system to suit more cases
Now references are first class (but still restricted to one level). Unlike
pointers they only mark the type instead of introducing a whole new type.
2016-06-08 15:49:09 +01:00
Daniel Kolesa 7cf7cba88e eolian: remove the c_type_named_get APIs
These have inconsistent behavior and are generally unnecessary, so I'm
removing them. Use the c_type_get funcs instead.
2016-06-06 15:50:15 +01:00
Daniel Kolesa 9752c44a48 eolian: add a new references system to help replace pointers
It's now possible to mark struct fields and function params as "references",
which causes them to become pointers in C (in bindings, they become whatever
is necessary). They're not a part of the type and are much more restricted
than pointers, allowing bindings to be easier. This system will be gradually
utilized and expanded as required.

@feature
2016-06-06 15:28:10 +01:00
Felipe Magno de Almeida b2a07ca150 eo-cxx: Remove commented headers 2016-06-06 04:09:23 -03:00
Felipe Magno de Almeida 2a3d7860db eolian-cxx: Rewrite to accomodate new features of the C++ binding 2016-06-06 02:54:36 -03:00