platform/upstream/efl.git
6 years agoeolian: store units in state
Daniel Kolesa [Thu, 7 Dec 2017 18:03:00 +0000 (19:03 +0100)]
eolian: store units in state

6 years agoeolian: properly free all hashes in state free
Daniel Kolesa [Thu, 7 Dec 2017 18:00:15 +0000 (19:00 +0100)]
eolian: properly free all hashes in state free

6 years agoeolian: make deferred parsing map non-global
Daniel Kolesa [Thu, 7 Dec 2017 17:58:21 +0000 (18:58 +0100)]
eolian: make deferred parsing map non-global

6 years agoeolian: make parsing/parsed files mapping non-global
Daniel Kolesa [Thu, 7 Dec 2017 17:54:00 +0000 (18:54 +0100)]
eolian: make parsing/parsed files mapping non-global

6 years agoeina: Update header for readability
Andy Williams [Thu, 7 Dec 2017 16:21:11 +0000 (16:21 +0000)]
eina: Update header for readability

Author Nate Drake
Reviewer: Andy Williams

6 years agoeo: Fix warning when Eo.h is used from C++
Jean-Philippe Andre [Thu, 7 Dec 2017 03:48:00 +0000 (12:48 +0900)]
eo: Fix warning when Eo.h is used from C++

6 years agoeo: Remove unnecessary defines from the EO file
Jean-Philippe Andre [Thu, 7 Dec 2017 02:25:40 +0000 (11:25 +0900)]
eo: Remove unnecessary defines from the EO file

Those promise/future APIs are not required in the EO files.

6 years agoeo: Move unnecessary eina type out of the EO file
Jean-Philippe Andre [Thu, 7 Dec 2017 02:22:11 +0000 (11:22 +0900)]
eo: Move unnecessary eina type out of the EO file

6 years agoedje: Rename events according to recent rename
Jean-Philippe Andre [Thu, 7 Dec 2017 01:24:08 +0000 (10:24 +0900)]
edje: Rename events according to recent rename

Ref T5315

6 years agoeolian_mono: Fix build after Eolian_State
Lauro Moura [Wed, 6 Dec 2017 16:27:27 +0000 (13:27 -0300)]
eolian_mono: Fix build after Eolian_State

Summary:
eolian_mono now properly fills Eolian Unit when calling eolian_cxx
classes and functions.

Reviewers: felipealmeida

Subscribers: cedric, jpeg

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

6 years agoeolian_cxx: Fix Eolian_Unit support
Lauro Moura [Wed, 6 Dec 2017 21:37:48 +0000 (18:37 -0300)]
eolian_cxx: Fix Eolian_Unit support

Summary:
Unit is now stored in klass_def, parameter_def and function_def for
future calls to the Eolian API.

Reviewers: felipealmeida, jpeg

Subscribers: cedric

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

6 years agoexamples: Fix after edje_obj canvas_layout change
Lauro Moura [Wed, 6 Dec 2017 15:54:51 +0000 (12:54 -0300)]
examples: Fix after edje_obj canvas_layout change

Summary:
Edje.Object was renamed Efl.Canvas.Layout in

54ae9cc18b6c0fdb9a10f03ad2681587ca062c6c

Reviewers: jpeg, marcelhollerbach, felipealmeida

Subscribers: cedric

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

6 years agoeolian_cxx: Fix unit initialization
Lauro Moura [Wed, 6 Dec 2017 16:10:43 +0000 (13:10 -0300)]
eolian_cxx: Fix unit initialization

Summary:
eolian_cxx was segfaulting due to a null unit being passed to
class_get_by_file.

Reviewers: felipealmeida, jpeg, q66

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

6 years agofocus: more testcases!
Marcel Hollerbach [Wed, 6 Dec 2017 14:58:35 +0000 (15:58 +0100)]
focus: more testcases!

6 years agoefl_ui_focus_manager_calc: fix first touch setup for none regular tests
Marcel Hollerbach [Wed, 6 Dec 2017 14:50:29 +0000 (15:50 +0100)]
efl_ui_focus_manager_calc: fix first touch setup for none regular tests

we had the issue that we stopped looping if we are a regular end. but we
need to continue until we have no rec_manager anymore.

6 years agoeolian: remove internal state struct (rely on external Eolian state)
Daniel Kolesa [Wed, 6 Dec 2017 14:06:54 +0000 (15:06 +0100)]
eolian: remove internal state struct (rely on external Eolian state)

6 years agoeolian: move filenames hashes to state
Daniel Kolesa [Wed, 6 Dec 2017 13:24:16 +0000 (14:24 +0100)]
eolian: move filenames hashes to state

6 years agoeolian: move constants to temporary state
Daniel Kolesa [Wed, 6 Dec 2017 13:17:59 +0000 (14:17 +0100)]
eolian: move constants to temporary state

6 years agoeolian: move global vars to temporary state
Daniel Kolesa [Wed, 6 Dec 2017 13:15:07 +0000 (14:15 +0100)]
eolian: move global vars to temporary state

6 years agoeolian: move enums to temporary state
Daniel Kolesa [Wed, 6 Dec 2017 13:11:42 +0000 (14:11 +0100)]
eolian: move enums to temporary state

6 years agoeolian: move structs to temporary state
Daniel Kolesa [Wed, 6 Dec 2017 13:08:25 +0000 (14:08 +0100)]
eolian: move structs to temporary state

6 years agoeolian: store aliases in temporary state
Daniel Kolesa [Wed, 6 Dec 2017 13:04:58 +0000 (14:04 +0100)]
eolian: store aliases in temporary state

6 years agoeolian: store classes in temporary state
Daniel Kolesa [Wed, 6 Dec 2017 12:59:17 +0000 (13:59 +0100)]
eolian: store classes in temporary state

6 years agoeolian: create an internal temporary state
Daniel Kolesa [Wed, 6 Dec 2017 12:46:10 +0000 (13:46 +0100)]
eolian: create an internal temporary state

6 years agoelm: Use EFL_UI_WIN_CLASS to check if an object is window
Shinwoo Kim [Wed, 6 Dec 2017 05:54:49 +0000 (14:54 +0900)]
elm: Use EFL_UI_WIN_CLASS to check if an object is window

The EFL_ACCESS_WINDOW_INTERFACE was used to check if an object is window.
This could make sense. But it would be better to use EFL_UI_WIN_CLASS for
consistency.

6 years agoelm: Fix _elm_widget_onscreen_is for window
Shinwoo Kim [Wed, 6 Dec 2017 02:53:06 +0000 (11:53 +0900)]
elm: Fix _elm_widget_onscreen_is for window

A window is using ecore_evas geometry value for its evas_object geometry value.
The evas_output_viewport x(y) value which is used in _elm_widget_onscreen_is
is always 0. So _elm_widget_onscreen_is could return EINA_FALSE, if ecore_evas
geometry x(y) value is bigger than 0, even though a window object is on screen.
So it is not correct to compare ecore_output_viewport and evas_object geometry
for a window object. Moreover it does not make sense.

6 years agoedje: rename Edje.Object to Efl.Canvas.Layout
Amitesh Singh [Wed, 6 Dec 2017 03:15:39 +0000 (12:15 +0900)]
edje: rename Edje.Object to Efl.Canvas.Layout

6 years agoEfl.Canvas.Object.eo: indent correction
Amitesh Singh [Wed, 6 Dec 2017 01:49:26 +0000 (10:49 +0900)]
Efl.Canvas.Object.eo: indent correction

6 years agoupdate gitignore.
Amitesh Singh [Wed, 6 Dec 2017 01:20:58 +0000 (10:20 +0900)]
update gitignore.

6 years agoeo: add definition of function back
Marcel Hollerbach [Tue, 5 Dec 2017 20:53:12 +0000 (20:53 +0000)]
eo: add definition of function back

6 years agoeo: Update header for readability
Andy Williams [Tue, 5 Dec 2017 17:04:19 +0000 (17:04 +0000)]
eo: Update header for readability

Author: Nate Drake
Reviewer: Andy Williams

6 years agoefl_ui_focus_user/object: fix api duplication
Marcel Hollerbach [Sun, 3 Dec 2017 15:47:26 +0000 (16:47 +0100)]
efl_ui_focus_user/object: fix api duplication

just like the commit before, this fixes duplicated api names

6 years agoefl_ui_focus_manager: fix api duplication
Marcel Hollerbach [Sun, 3 Dec 2017 12:26:16 +0000 (13:26 +0100)]
efl_ui_focus_manager: fix api duplication

6 years agoeolian cxx: free state on exit
Daniel Kolesa [Tue, 5 Dec 2017 15:47:19 +0000 (16:47 +0100)]
eolian cxx: free state on exit

6 years agoeolian: pass state where necessary
Daniel Kolesa [Tue, 5 Dec 2017 15:40:04 +0000 (16:40 +0100)]
eolian: pass state where necessary

This modifies the API so that global state removal is made
possible. It's still used internally for now but externally
the state is contained.

6 years agoeolian: add initial refcounting for database objects
Daniel Kolesa [Mon, 4 Dec 2017 13:44:29 +0000 (14:44 +0100)]
eolian: add initial refcounting for database objects

This will be necessary once the unit system is in (it will be used
to keep track of multiple references to objects across units).

6 years agoeolian: pass unit within validation engine
Daniel Kolesa [Mon, 4 Dec 2017 10:44:56 +0000 (11:44 +0100)]
eolian: pass unit within validation engine

6 years agoeolian: contain master state in a larger structure
Daniel Kolesa [Sun, 3 Dec 2017 20:18:20 +0000 (21:18 +0100)]
eolian: contain master state in a larger structure

6 years agoeolian: add API for master unit creation
Daniel Kolesa [Sun, 3 Dec 2017 20:10:44 +0000 (21:10 +0100)]
eolian: add API for master unit creation

6 years agoeolian: create an actual unit structure for files
Daniel Kolesa [Sun, 3 Dec 2017 19:57:43 +0000 (20:57 +0100)]
eolian: create an actual unit structure for files

Units now form an actual tree stored in their own hash. This will
later replace all global state of Eolian, by introducing a master
unit that you will pass around.

6 years agoelm_widget: simplify _eval_registration_candidate
Yeongjong Lee [Tue, 5 Dec 2017 08:57:44 +0000 (17:57 +0900)]
elm_widget: simplify _eval_registration_candidate

Test Plan: make check

Reviewers: bu5hm4n, jpeg

Reviewed By: jpeg

Subscribers: cedric, jpeg

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

6 years agobuild: fix examples build without c# bindings enabled
Stefan Schmidt [Tue, 5 Dec 2017 08:26:22 +0000 (09:26 +0100)]
build: fix examples build without c# bindings enabled

Listing it here without guards will break for builds without c# enabled.
It was actually taken care of a few lines below where it gets included
with the right guards. This one was just around by accident I think.

6 years agoedje: rename intf Efl.Canvas.Layout_Group to Efl.Layout.Group
Amitesh Singh [Tue, 5 Dec 2017 07:00:08 +0000 (16:00 +0900)]
edje: rename intf Efl.Canvas.Layout_Group to Efl.Layout.Group

6 years agoedje: rename intf Efl.Canvas.Layout_Calc to Efl.Layout.Calc
Amitesh Singh [Tue, 5 Dec 2017 06:29:07 +0000 (15:29 +0900)]
edje: rename intf Efl.Canvas.Layout_Calc to Efl.Layout.Calc

6 years agoedje: rename intf Efl.Canvas.Layout.Signal to Efl.Layout.Signal
Amitesh Singh [Tue, 5 Dec 2017 05:39:20 +0000 (14:39 +0900)]
edje: rename intf Efl.Canvas.Layout.Signal to Efl.Layout.Signal

6 years agoc#: Fix test case
Jean-Philippe Andre [Tue, 5 Dec 2017 05:48:29 +0000 (14:48 +0900)]
c#: Fix test case

return -1 in a void function breaks the build for me (clang)

6 years agoecore_wl2: Fix a warning
Jean-Philippe Andre [Tue, 5 Dec 2017 05:33:03 +0000 (14:33 +0900)]
ecore_wl2: Fix a warning

6 years agoeo: Move hacky API auto_unref to C only
Jean-Philippe Andre [Tue, 5 Dec 2017 05:31:22 +0000 (14:31 +0900)]
eo: Move hacky API auto_unref to C only

This API is meant to be used by parts only, and by bindings dealing with
part objects. This patch fixes make check which got broken in the after
the previous one (cxx).

6 years agocxx: Fix compilation after merge
Jean-Philippe Andre [Tue, 5 Dec 2017 01:47:09 +0000 (10:47 +0900)]
cxx: Fix compilation after merge

This resolves a few issues and brings back the experimental features.

Also, disable some of the ugliest experiments:
 - manual function overrides,
 - define APIs only in eo_cxx namespace

Some APIs are generated behind EFL_CXXPERIMENT (eg. event_name_cb_add or
some weak pointer stuff). I believe they are useful but would like to
make sure there are no serious drawbacks with generating those.

6 years agocxx: Define types after forward declarations
Jean-Philippe Andre [Tue, 28 Nov 2017 12:32:45 +0000 (21:32 +0900)]
cxx: Define types after forward declarations

This is useful if the types refer to the current class.

6 years agocxx: Include edje from elementary
Jean-Philippe Andre [Tue, 28 Nov 2017 12:18:28 +0000 (21:18 +0900)]
cxx: Include edje from elementary

6 years agocxx: Fix one conversion to Eina_Value
Jean-Philippe Andre [Tue, 28 Nov 2017 12:17:32 +0000 (21:17 +0900)]
cxx: Fix one conversion to Eina_Value

6 years agocxx: Update slider example
Jean-Philippe Andre [Tue, 28 Nov 2017 08:24:06 +0000 (17:24 +0900)]
cxx: Update slider example

6 years agocxx: Add global _delete() method to all objects
Jean-Philippe Andre [Tue, 28 Nov 2017 07:26:25 +0000 (16:26 +0900)]
cxx: Add global _delete() method to all objects

This is really just calling efl_del() and detaching the internal pointer
from the C++ object. This will not affect other references, which means
after del the object may still be alive, probably without a parent.

6 years agocxx: Use per-function guards in efl object
Jean-Philippe Andre [Tue, 28 Nov 2017 07:21:40 +0000 (16:21 +0900)]
cxx: Use per-function guards in efl object

This prevents generation of del().
I also removed constructor, finalize and destructor as I believe this
requires special work with eo_inherit (where did this work go??).

6 years agocxx: Include definition header in impl header
Jean-Philippe Andre [Tue, 28 Nov 2017 06:39:39 +0000 (15:39 +0900)]
cxx: Include definition header in impl header

Good for IDE's. Not extremely useful considering how unreadable those
files are.

6 years agocxx: Add header guards for manual definitions
Jean-Philippe Andre [Tue, 28 Nov 2017 06:32:02 +0000 (15:32 +0900)]
cxx: Add header guards for manual definitions

This will be used for things like efl_del

efl_part was a lucky case where the entire class was to be implemented
manually, thus the global header guard was sufficient.

6 years agocxx: Give ref to returned objects
Jean-Philippe Andre [Tue, 28 Nov 2017 05:37:33 +0000 (14:37 +0900)]
cxx: Give ref to returned objects

This should give a ref to obj in the following scenario:

  auto obj = other.function();

Where obj is an eo object.

6 years agocxx: Implement support for @class static functions
Jean-Philippe Andre [Tue, 28 Nov 2017 05:17:51 +0000 (14:17 +0900)]
cxx: Implement support for @class static functions

6 years agocxx: Fix indentation of ifdef guard
Jean-Philippe Andre [Mon, 27 Nov 2017 14:54:43 +0000 (23:54 +0900)]
cxx: Fix indentation of ifdef guard

6 years agowin: Allow unref until deletion
Jean-Philippe Andre [Mon, 27 Nov 2017 13:24:01 +0000 (22:24 +0900)]
win: Allow unref until deletion

This is for bindings. I wish I could actually distinguish the use case
more (between efl_add() from C and instantiation from C++).

6 years agocxx: Implement support for parts
Jean-Philippe Andre [Mon, 27 Nov 2017 10:52:44 +0000 (19:52 +0900)]
cxx: Implement support for parts

This generates methods like this:

  Part_Class part_name() const;

Which can then be used like:

  slider.indicator().format_string_set("%1.1f");

6 years agocxx: Fix evas compile test and Evas.hh
Jean-Philippe Andre [Thu, 23 Nov 2017 05:43:06 +0000 (14:43 +0900)]
cxx: Fix evas compile test and Evas.hh

The c++ header was checking the wrong header guard. Fixing that would
break the compilation test, as it was doing the wrong thing. Also I
think config.h should not be included for compilation tests. This should
make things slightly better.

6 years agocxx: Fix bg examples
Jean-Philippe Andre [Thu, 23 Nov 2017 05:10:24 +0000 (14:10 +0900)]
cxx: Fix bg examples

One uses the Bg widget and the other one uses the part.

6 years agocxx: Implement proper part support (wrt. refs)
Jean-Philippe Andre [Thu, 23 Nov 2017 04:51:10 +0000 (13:51 +0900)]
cxx: Implement proper part support (wrt. refs)

It's VERY hacky, but works as expected: no leak, no extra unref. This is
a lucky case of simply overriding efl_part() implementation in C++,
without having to modify the declaration.

6 years agocxx: Add header guards to .impl.hh
Jean-Philippe Andre [Wed, 22 Nov 2017 13:35:11 +0000 (22:35 +0900)]
cxx: Add header guards to .impl.hh

Those are included headers after all, even if they're only included once
from Elementary.hh (or whatever Efl_Header.hh).

6 years agocxx: Avoid pedantic warning with -Wold-style-cast
Jean-Philippe Andre [Wed, 22 Nov 2017 11:50:11 +0000 (20:50 +0900)]
cxx: Avoid pedantic warning with -Wold-style-cast

This affects the generated headers.

6 years agocxx: Use set for forward classes
Jean-Philippe Andre [Wed, 22 Nov 2017 11:46:26 +0000 (20:46 +0900)]
cxx: Use set for forward classes

This avoids duplication. Not very important as there are FWD_GUARD
macros anyway.

6 years agocxx: Fix some pedantic warnings from clang
Jean-Philippe Andre [Wed, 22 Nov 2017 11:35:18 +0000 (20:35 +0900)]
cxx: Fix some pedantic warnings from clang

Shadow variables, 0 used as nullptr.
clang still complains that usage() is not declared as noreturn.

6 years agocxx: Add implicit conversion to Eo* pointer
Jean-Philippe Andre [Wed, 22 Nov 2017 11:25:29 +0000 (20:25 +0900)]
cxx: Add implicit conversion to Eo* pointer

This is part of the experimental stuff.

Allows calling C functions without using ._eo_ptr() explicitly. Probably
not super useful, assuming the interfaces are done :)

6 years agocxx: Only use eo_cxx:: for methods
Jean-Philippe Andre [Wed, 22 Nov 2017 11:16:21 +0000 (20:16 +0900)]
cxx: Only use eo_cxx:: for methods

Add an experimental (disabled) macro to only generate functions inside
the eo_cxx equivalent of a class, instead of inside both the eo_cxx and
the normal class definition.

I guess the duplicated definition had something to do with doxygen, but
I'm not sure this is quite necessary as doc will be generated with
custom scripts.

6 years agocxx: No instantiate ctors for non-regular classes
Jean-Philippe Andre [Wed, 22 Nov 2017 10:45:56 +0000 (19:45 +0900)]
cxx: No instantiate ctors for non-regular classes

Only regular classes can be instantiated, this should be reflected in
the C++ binding as well.

6 years agocxx: Add define EFL_CXXPERIMENTAL for testing
Jean-Philippe Andre [Wed, 22 Nov 2017 08:17:04 +0000 (17:17 +0900)]
cxx: Add define EFL_CXXPERIMENTAL for testing

I'll hide some controversial features behind this, until we come to an
agreement with @felipealmeida and people who actually know C++ (iow: not
just me^^).

Features protected:
 - easy wref (using -> without locking)
 - xxx_event_cb_add() functions in object classes
 - instantiate(obj) to create a new object
 - add as a synonym for instantiate (both in efl::eo)

6 years agocxx: Showcase function pointer in calendar example
Jean-Philippe Andre [Wed, 22 Nov 2017 08:14:55 +0000 (17:14 +0900)]
cxx: Showcase function pointer in calendar example

This is just a work-in-progress example.

6 years agocxx: Add support for function pointers
Jean-Philippe Andre [Wed, 22 Nov 2017 07:54:57 +0000 (16:54 +0900)]
cxx: Add support for function pointers

This was tested on the function pointer Efl.Ui.Format_Func_Cb

6 years agocxx: Add strbuf to the list of recognized builtins
Jean-Philippe Andre [Wed, 22 Nov 2017 07:50:57 +0000 (16:50 +0900)]
cxx: Add strbuf to the list of recognized builtins

6 years agocxx: Add FIXME note in eina_value.hh
Jean-Philippe Andre [Wed, 22 Nov 2017 07:47:27 +0000 (16:47 +0900)]
cxx: Add FIXME note in eina_value.hh

I think some concepts are not handled properly in this set of classes.
I'll do some more experiments to see if I can find a working solution,
but I think we need 3 variants of eina_value, instead of just the two
provided.

6 years agoformat: Use strbuf builtin type instead of ptr()
Jean-Philippe Andre [Wed, 22 Nov 2017 07:28:56 +0000 (16:28 +0900)]
format: Use strbuf builtin type instead of ptr()

6 years agoeolian: Add builtin type "strbuf"
Jean-Philippe Andre [Wed, 22 Nov 2017 06:44:06 +0000 (15:44 +0900)]
eolian: Add builtin type "strbuf"

Refers to Eina_Strbuf*

6 years agocxx: Add strbuf support
Jean-Philippe Andre [Wed, 22 Nov 2017 06:04:30 +0000 (15:04 +0900)]
cxx: Add strbuf support

Comes in two fashions:
 - strbuf_view (read-only)
 - strbuf (read/write)

6 years agocxx: No need to declare the current class twice
Jean-Philippe Andre [Tue, 14 Nov 2017 08:41:24 +0000 (17:41 +0900)]
cxx: No need to declare the current class twice

This avoids double _FWD_GUARD for the current class in a .eo.hh header.

6 years agocxx: Some code style in examples
Jean-Philippe Andre [Mon, 13 Nov 2017 02:43:04 +0000 (11:43 +0900)]
cxx: Some code style in examples

Use the common form
  Class a(instantiate);
instead of
  auto a = Class(instantiate);

Also modify bg example to not use an policy.

6 years agocxx: Add event_cb_add functions to events
Jean-Philippe Andre [Fri, 10 Nov 2017 10:04:23 +0000 (19:04 +0900)]
cxx: Add event_cb_add functions to events

This enables a syntax like:

  button.clicked_event_cb_add([]() { std::cout << "Hello" << std::endl; });

I could not manage to pass the std::placeholders inside the template,
depending on whether the lambda has arguments or not. Not sure if
that's even possible.

6 years agocxx: Add alternative form to instantiate object
Jean-Philippe Andre [Fri, 10 Nov 2017 09:04:53 +0000 (18:04 +0900)]
cxx: Add alternative form to instantiate object

This still uses the instantiate object but provides a more convenient
syntax for objects declared before their creation (eg. a global win).

Note: I wonder if we shouldn't rename instantiate to add. It would be
closer to EFL API's while being much much easier to type.

6 years agoeolian: Add inarray and inlist to source generation
Felipe Magno de Almeida [Mon, 4 Dec 2017 22:32:06 +0000 (20:32 -0200)]
eolian: Add inarray and inlist to source generation

6 years agoefl_mono: fix switched reference to generated and non-generated source file in build...
Vitor Sousa [Mon, 4 Dec 2017 16:11:41 +0000 (14:11 -0200)]
efl_mono: fix switched reference to generated and non-generated source file in build system

6 years agoeolian_mono: Add evas_table_mirrored_get/set to bl
Lauro Moura [Mon, 4 Dec 2017 18:48:04 +0000 (15:48 -0300)]
eolian_mono: Add evas_table_mirrored_get/set to bl

Clashing with efl_ui_mirrored/get/set

6 years agoeolian_mono: Generate placeholder fields for empty structs
Lauro Moura [Fri, 1 Dec 2017 03:43:12 +0000 (00:43 -0300)]
eolian_mono: Generate placeholder fields for empty structs

Mono's JIT fails to generate function pointer for delegates with empty
structs in the signature, leading to those mini-amd64.c crashes on empty
fields.

This commit generates a placeholder IntPtr field in empty structs.

6 years agoefl_mono: Fix eina_value_set.
Lauro Moura [Thu, 30 Nov 2017 20:49:35 +0000 (17:49 -0300)]
efl_mono: Fix eina_value_set.

Instead of messing around with varargs, create individual wrappers for
each type supported.

The va_list approach was getting problems with float/double on Windows.

6 years agoecore: Fix compilation for GCC 4
Lauro Moura [Tue, 7 Nov 2017 20:01:56 +0000 (17:01 -0300)]
ecore: Fix compilation for GCC 4

Summary:
GCC4 support compound literals for static initializers only in C89. This
commit reverts to the previous behavior when using this version.

Currently we are using it to build on Windows.

Reviewers: felipealmeida, cedric, barbieri

Subscribers: jpeg

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

6 years agoelm: Move legacy enums to elm_general.eot.
Lauro Moura [Wed, 22 Nov 2017 19:44:44 +0000 (16:44 -0300)]
elm: Move legacy enums to elm_general.eot.

efl_ui_text and friends uses some enums currently defined in
elm_entry.eo. The latter is exported outside the elm public eolian eos
and never generated.

This commit moves the enums to the "transition" file elm_general.eot.

6 years agoefl_mono: Add buildystem integration.
Lauro Moura [Fri, 24 Nov 2017 01:10:05 +0000 (22:10 -0300)]
efl_mono: Add buildystem integration.

The C# bindings are built using the --enable-csharp-bindings (disabled
by default).

6 years agoefl_mono: Add examples code.
Lauro Moura [Fri, 24 Nov 2017 01:01:25 +0000 (22:01 -0300)]
efl_mono: Add examples code.

Buildsystem support will be enabled in a future commit

6 years agoefl_mono: Add native support library
Lauro Moura [Fri, 24 Nov 2017 00:57:45 +0000 (21:57 -0300)]
efl_mono: Add native support library

Buildsystem integration will come in a future commit

6 years agoefl_mono: Add msbuild file generator
Lauro Moura [Fri, 24 Nov 2017 00:56:11 +0000 (21:56 -0300)]
efl_mono: Add msbuild file generator

Buildsystem integration will come in a future commit.

6 years agoefl_mono: Added test files for the C# bindings.
Lauro Moura [Fri, 24 Nov 2017 00:53:28 +0000 (21:53 -0300)]
efl_mono: Added test files for the C# bindings.

Buildsystem integration will come in a future commit.

6 years agoeolian_mono: Added code for eolian_mono generator
Lauro Moura [Fri, 24 Nov 2017 00:50:16 +0000 (21:50 -0300)]
eolian_mono: Added code for eolian_mono generator

Based on the eolian_cxx library generators. Buildsystem files will come
in a future commmit.

6 years agoefl_mono: Adding support code for the C# binding
Lauro Moura [Fri, 24 Nov 2017 00:49:22 +0000 (21:49 -0300)]
efl_mono: Adding support code for the C# binding

This is the C# manual code for the binding. Buildsystem integration will
come in a future commit.

6 years agoeolian_cxx: Many changes for the C# bindings
Lauro Moura [Fri, 24 Nov 2017 00:47:25 +0000 (21:47 -0300)]
eolian_cxx: Many changes for the C# bindings

- Added helper function to get all methods of a given class (local and
  inherited methods)
- Add filename information to klass
- Added new defs: enum, value (currently only integers), struct
- Generator refactoring
- Eolian C compatibility

6 years agoeolian: Add inarray and inlist
Lauro Moura [Fri, 24 Nov 2017 00:46:55 +0000 (21:46 -0300)]
eolian: Add inarray and inlist