Commit Graph

1245 Commits

Author SHA1 Message Date
Jean-Philippe Andre 0ba74a084b 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.
2017-12-05 10:14:03 +09:00
Jean-Philippe Andre f3e3e21f9c 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 :)
2017-12-05 10:14:03 +09:00
Jean-Philippe Andre d9d619bdd4 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)
2017-12-05 10:14:03 +09:00
Jean-Philippe Andre 779aca8bb1 cxx: Showcase function pointer in calendar example
This is just a work-in-progress example.
2017-12-05 10:14:03 +09:00
Jean-Philippe Andre 154a9e9297 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.
2017-12-05 10:09:58 +09:00
Lauro Moura 288e764f16 efl_mono: Add buildystem integration.
The C# bindings are built using the --enable-csharp-bindings (disabled
by default).
2017-12-04 15:47:51 -03:00
Lauro Moura 06b582e6e8 efl_mono: Add examples code.
Buildsystem support will be enabled in a future commit
2017-12-04 15:47:51 -03:00
Xavi Artigas d022796a35 Do not use efl as a prefix for variables
Renamed efl_fd to fd_obj.
2017-12-04 18:02:07 +01:00
Xavi Artigas 792db6f59b Whitespace 2017-12-04 18:01:49 +01:00
Xavi Artigas c106ec6d44 Proper renaming of vars and methods
To reflect what they really are. I was confused for a while about loops and FDs.
2017-12-04 09:47:44 +01:00
Xavi Artigas f16cef85db Minor cosmetic fixes to core_io 2017-12-04 09:47:44 +01:00
Andy Williams fc7503113a apps: Add first pass Game of Life :) 2017-12-01 22:27:35 +00:00
Andy Williams f6dd1b7ab3 texteditor: Add a "new" button
Also make the textarea multiline... oops
2017-11-30 11:04:58 +00:00
Andy Williams 93af3a55ae texteditor: Better simulate a toolbar until we have one ready 2017-11-30 11:04:58 +00:00
Cedric Bail 91934fe8ec lifecycle: EAPI_MAIN need to be used as it is an application symbol, not a library one. 2017-11-30 02:48:27 -08:00
Andy Williams 6be0a68c19 apps: Add a first app WiP - texteditor 2017-11-29 14:50:07 +00:00
Andy Williams bc275959dd core: Add Efl_Io_File example into efl-core reference
Refactor the copier code into a separate method for clarity.
2017-11-28 09:21:09 +00:00
Jaehyun Cho 379d7cc128 examples: Add popup cxx example 2017-11-28 17:15:42 +09:00
Andy Williams c41c0cc319 Merge branch 'master' into devs/xartigas/tutorials 2017-11-27 14:00:02 +00:00
Andy Williams 326f860e39 hello-gui: Simplify gui basic example 2017-11-27 13:50:38 +00:00
Andy Williams d4beab8013 ui: Add containers reference 2017-11-27 13:18:42 +00:00
Xavi Artigas 17032f60a3 Simplify core_io example
No need to unref src and dst since copier does that.
No need to unref copier since it is a child of main loop.
And therefore, no need to use EFL_MAIN_EX().
2017-11-27 12:39:04 +01:00
Xavi Artigas e134283999 Minor tweaks to simplify the loop example 2017-11-24 17:32:11 +01:00
Andy Williams 597ba6d98c ui: Add a new sizing example - much nicer using the new pack capabilities 2017-11-24 14:18:20 +00:00
Lauro Moura e4c1d11e1f elementary: fix compilation of cxx examples
Summary: Missing ecore_con library

Reviewers: felipealmeida, jpeg

Subscribers: cedric

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2017-11-23 15:34:54 -08:00
Andy Williams 231d1f08f6 Merge branch 'devs/xartigas/tutorials' 2017-11-22 15:42:35 +00:00
Xavi Artigas 19b15a1f04 Adapt code to tutorial text
Minor modifications that make the code easier to explain.
2017-11-22 16:08:11 +01:00
Andy Williams 4f12494667 core: Tidy up some core example variables 2017-11-22 14:39:45 +00:00
Andy Williams e58ac7d5c8 core: Add a polling example 2017-11-22 14:32:32 +00:00
Andy Williams 07c0c68cc7 core: Add idler reference 2017-11-22 13:11:38 +00:00
Andy Williams 8035919a32 net: Add a simple net_io example simulating an HTTP client
We connect to a remote host and execute a HEAD request and print the response
2017-11-22 11:41:55 +00:00
Andy Williams 9549086432 core: Add mising summary 2017-11-21 19:10:05 +00:00
Andy Williams b6c382900c core: Add an io example (copier) 2017-11-21 19:07:45 +00:00
Andy Williams 981d59e32d core: Add first efl_core reference, loop 2017-11-21 18:45:33 +00:00
Jean-Philippe Andre 015a1eb27e cxx: Fix slider example (bad downcast) 2017-11-20 20:42:39 +09:00
Jean-Philippe Andre 7a8880cda4 cxx: Disable spinner example (broken)
A new API for spinner is coming soon. This example code is now broken
since my change on Efl.Content vs. Efl.Container.
2017-11-20 20:31:07 +09:00
Jean-Philippe Andre 133b49be57 efl: Split Efl.Container and Efl.Content
When I first implemented the Efl.Container interface I made a mistake of
mixing "single slot" content API's with "multiple children" content
API's.  This should fix that, by separating API's that are for a single
part and those that deal with a list of children.

  Efl.Content: Single slot. This will be used a lot by efl_part()
objects, and for the default content of widgets (eg. the window
content).

  Efl.Container: Multiple children. Used by lists, boxes, layouts
(edje/elm), etc...

I didn't see any class that implemented both interfaces (note: Layout
implements Container and Button implements Content, so technically
Button implements both through inheritance).

For now the eo_prefix is not changed in Efl.Container. I wonder if it
should be reset (to efl_container) or not. This would only affect the C
API.

Ref T5328
2017-11-20 19:02:09 +09:00
Xavi Artigas 74cd796cba Adapt source code to tutorial text
Minor modifications only. The header file grouping all headers will be
introduced in the multiinherit tutorial, along with the shape interface.
2017-11-20 10:36:28 +01:00
Andy Williams 1acb71b216 Add a colored mixin so we can talk about multiple inheritance 2017-11-17 16:46:59 +00:00
Andy Williams 6e78b6caa3 eo-multiinherit: Clone from eo-inherit before interface removal
Mixins still to come
2017-11-17 15:37:35 +00:00
Andy Williams 09ff6b7b62 eo-inherit: Remove the interface as we will explain that in multiinherit 2017-11-17 15:35:45 +00:00
Andy Williams 399efc52fb Merge branch 'devs/xartigas/tutorials' 2017-11-17 11:48:02 +00:00
Andy Williams 4709a4d366 build: Assume latest eolian which knows system locations 2017-11-17 11:18:39 +00:00
Xavi Artigas 6b8dac2677 Ehem... do not leak the test objects 2017-11-16 18:39:06 +01:00
Andy Williams 13fb2b4b1b eina: Add a little more documentation for our examples 2017-11-16 15:13:01 +00:00
Andy Williams a688d5a1af eina: Add str/strbuf/stringshare reference examples 2017-11-16 12:39:52 +00:00
Jean-Philippe Andre d267a3beaa win: Rename specific APIs to avoid clashes
This renames 3 basic APIs specific to Win:
 - name
 - type
 - role

Ref T5322
2017-11-16 19:11:51 +09:00
Andy Williams e45396c48d eina: Add custom eina_value reference using timezone 2017-11-16 09:52:34 +00:00
Andy Williams 866bfc8a49 eina: Add struct value reference 2017-11-16 08:53:54 +00:00
Andy Williams fb84558bde eina: Add a first pass for value reference 2017-11-15 21:43:51 +00:00