Commit Graph

685 Commits

Author SHA1 Message Date
Bruno Dilly 7dc493e68f examples/elementary: drop generated.h from SOURCES
Remove codegen_example_generated.h from codegen_example_SOURCES
and let it only on nodist_codegen_example_SOURCES and
on BUILT_SOURCES.

Also add dependency between codegen_example.c
and codegen_example_generated.h since it's required
to compile.

Avoid the following build error:
  CODEGEN      codegen_example_generated.c
  codegen_example.c:26:39: fatal error: codegen_example_generated.h:
      No such file or directory
  compilation terminated.
  Makefile:4960: recipe for target 'codegen_example.o' failed
2016-09-28 14:42:58 -03:00
Bruno Dilly 3f730b47f9 examples/ecore: add example suffix to ecore_evas_vnc
Make its name similar to all the other example
files on this folder.
2016-09-28 14:42:58 -03:00
Bruno Dilly 0eab34c68f examples/ecore: fix vnc example build
Fix missing dependency.

Get rid of the following error:

/usr/bin/ld: ecore_evas_vnc.o: undefined reference
  to symbol 'ECORE_EVENT_MOUSE_BUTTON_UP'
src/lib/ecore_input/.libs/libecore_input.so.1: error adding symbols:
  DSO missing from command line
collect2: error: ld returned 1 exit status
Makefile:2306: recipe for target 'ecore_evas_vnc' failed
2016-09-28 14:42:58 -03:00
Guilherme Iscaro 22dd89ca65 Examples: Add an Ecore Evas VNC example.
This commit adds an Ecore_Evas examples that can be used to test
the VNC multi-seat support.
2016-09-26 22:06:59 -03:00
Stefan Schmidt 1bbd108ccb examples: emotion: fix event naming after convert to EFL Canvas Object
In commit 7b90e1147442d6a8023422400bffd77e2815fe0b the event names changed
but examples have not been updated.
2016-09-22 11:43:34 +02:00
Hermet Park ed0c9fd123 edje example: fix broken batman svg resource.
correct missing '/' at the end of svg tag.
2016-09-19 23:40:14 +09:00
Gustavo Sverzut Barbieri 388ec0fb62 efl_io and efl_net examples: fix O_CLOEXEC on windows.
use the efl_io_closer_close_on_exec_set() to use a simple boolean
instead of a flag that may be undefined on some platforms, such as
windows.
2016-09-16 07:42:24 -03:00
Gustavo Sverzut Barbieri 349b106125 efl_io_closer: add close_on_exec and close_on_destructor properties.
the purpose of these properties are to make it more uniform the
handling of these auto-close behavior.
2016-09-12 13:18:28 -03:00
Stefan Schmidt c7d5d03839 examples: elementary: fix build for cxx examples needing ecore_cxx includes
The elementary cxx examples now need Ecore_Manual.hh from the cxx bindings.
Make sure we setup the include paths accordingly.
2016-09-12 10:21:47 +02:00
Cedric BAIL d959ed3686 eio: finish port to new efl_io_manager API. 2016-09-09 16:22:55 -07:00
Cedric BAIL 13b5e221ce ecore: shutup unused arguments warning. 2016-09-09 16:22:55 -07:00
Stefan Schmidt 3a794ca119 examples: elementary: ignore generated codegen example files 2016-09-08 22:51:03 +02:00
Jean-Philippe Andre 6aa5609208 evas: Switch EO APIs to Eina_Slice for gfx buffers (map)
This adds a plane and eina slice argument to the map/unmap
functions, instead of void_ptr + length.
2016-09-06 16:54:53 +09:00
Tom Hacohen b00564d698 Rename efl_self to efl_added
It has been discussed on the ML (thread: "[RFC] rename efl_self") and
IRC, and has been decided we should rename it to this in order to avoid
confusion with the already established meaning of self which is very
similar to what we were using it for, but didn't have complete overlap.

Kudos to Marcel Hollerbach for initiating the discussion and
fighting for it until he convinced a significant mass. :)

This commit breaks API, and depending on compiler potentially ABI.

@feature
2016-09-05 16:59:56 +01:00
Gustavo Sverzut Barbieri 394b9411ce efl_net_dialer_websocket: EFL now does WebSocket!
The Efl.Net.Dialer.Websocket is just like other Efl.Net.Dialers: you
can dial, you can close, monitor connected/address resolved and so
on. And you can use WebSocket primitives and events such as
text_send(), binary_send(), ping() and close_request() (since
WebSockets use a close process where you should state a close
reason). See efl_net_dialer_websocket_example.c

Even if WebSocket is a message-based protocol (like "packets" from
UDP), you can use efl_net_dialer_websocket_streaming_mode_set() to
tell it to handle text or binary messages as a stream. Then all the
Efl.Io.Reader and Efl.Io.Writer APIs work as expected, see
efl_io_copier_example.c updates.
2016-09-02 00:08:50 -03:00
Jean-Philippe Andre e6f6b94ccc evas events: Fix axis input values
This adds support for distance, pressure, tilt and twist.
Not entirely sure if normalized & raw (x,y) should be exposed
in the eo interface. Also not sure what to do with tilt_x/y
(as used by libinput) or touch/tool width "major/minor" vs.
radius x/y.

Add debug logs in the example, including the distance.
I can't test most of these values due to a lack of compatible
hardware, but the most basic features seem to work :)
2016-09-01 11:57:43 +09:00
Tom Hacohen d0bc249ead Efl object: Rename Eo_Event -> Efl_Event.
This is the last step of the Eo renaming efforts.
2016-08-30 13:34:10 +01:00
Jean-Philippe Andre 2fc0d8ef41 evas3d examples: Add EFL_EO_API_SUPPORT where needed
I might have broken this in a previous commit in evas headers,
but the thing is that beta does not imply eo api, so both are
still required.
2016-08-26 11:44:11 +09:00
Gustavo Sverzut Barbieri cfe460c69a efl_io_queue_example: use eina_slice_endswith().
make the code more readable and clear. Also document when the line may
miss a trailing line delimiter in the slice.
2016-08-23 21:30:18 -03:00
Gustavo Sverzut Barbieri 8c23ab0685 efl_io_queue: basic class to interact with Efl.Io interfaces.
The use of low-level interfaces such as Efl.Io.Reader and
Efl.Io.Writer are not that user-friendly as they can handle partial
data.

Classes such as Efl.Io.Copier makes them easy to use, but they need a
reader (source) or writer (destination) and in our examples we used
fixed buffers or some existing streams (stdin/stdout/stderr,
networking...).

However, if interactively we need to produce some data to be sent,
such as implementing some networking protocols, we'd have to write our
own Efl.Io.Reader and Efl.Io.Writer classes to handle the buffering.

Not anymore! With Efl.Io.Queue you can write stuff to it and it will
buffer to memory. Once stuff is read, it will automatically remove
those bytes from buffer.
2016-08-23 20:17:13 -03:00
Gustavo Sverzut Barbieri 06983d8673 efl_io_copier_example: set loop as parent for Efl.Net.Dialer.Tcp
although it was working, the correct way is to set a loop provider as
Efl.Net.Dialer.Tcp object.
2016-08-23 20:17:13 -03:00
Gustavo Sverzut Barbieri c4d09a7a34 examples: add efl_io_copier_simple_example.c
a simpler example to be listed in wiki.
2016-08-23 12:05:37 -03:00
Carsten Haitzler e9a7203145 efreet - save about 240-300k or so of memory used by efreet mime
so efreet mime was loading a bunch of mime type info files, parsing
them on startup and allocating memory to store all this mime info -
globs, mimetype strings and more. all a big waste of memory as its
allocated on the heap per process where its the SAME data files loaded
every time.

so make an efreet mime cache file and a tool to create it from mime
files. mmap this file with all the hashes/strings in it so all that
data is mmaped once in memory and shared between all processes and it
is only paged in on demand - as actually read/needed so if your
process doesnt need to know about mime stuff.. it wont touch it anyway.

this saves about 240-300k or so of memory in my tests. this has not
covered the mime MAGIC files which still consume memory and are on the
heap. this is more complex so it will take more time to come up with a
nice file format for the data that is nicely mmaped etc.

@optimize
2016-08-23 12:04:06 +09:00
Gustavo Sverzut Barbieri fdad382158 fixup: http 2016-08-22 19:24:13 -03:00
Gustavo Sverzut Barbieri f33bab2648 fixup: http 2016-08-22 18:51:38 -03:00
Gustavo Sverzut Barbieri fe07b8cdab WIP: efl.net: Introduce Efl.Net.Dialer.Http
This class implements the Efl.Net.Dialer interface using libcurl to
perform HTTP requests. That means it's an Efl.Net.Dialer,
Efl.Net.Socket, Efl.Io.Reader, Efl.Io.Writer and Efl.Io.Closer, thus
being usable with Efl.Io.Copier as demonstrated in the
efl_io_copier_example.c
2016-08-22 18:25:15 -03:00
Gustavo Sverzut Barbieri b0b6757bc5 efl.net: socket, server and dialer for TCP.
Efl.Net.Server defines how to accept new connections, doing the
bind(), listen() and accept() for protocols such as TCP.

Efl.Net.Dialer defines to to reach a server.

Both are based on Efl.Net.Socket as communication interface that is
based on Efl.Io.Reader, Efl.Io.Writer and Efl.Io.Closer, thus being
usable with code such as Efl.Io.Copier.

The Server will emit an event "client,add" with the established
Socket, which is a child and can be closed by both the server or the
user.

The Dialer extends the Socket and allows for creating one given an
address, that will be resolved and connected.

TCP is the initial implementation so we an validate the
interfaces. UDP, Unix-Local and SSL will come later as derivate
classes.

The examples are documented and should cover the basic principles:

 - efl_io_copier_example can accept "tcp://IP:PORT" and will work as a
   "netcat", can send data from socket, file or stdin to a socket,
   file, stdout or stderr.

 - efl_net_server_example listens for connections and can either reply
   "Hello World!" and take some data or work as an echo-server,
   looping back all received data to the user.

More complex interactions that require a "chat" between client and
server will be covered with new classes later, such as a queue that
empties itself once data is read.
2016-08-22 18:25:14 -03:00
Gustavo Sverzut Barbieri d0f0bd20a0 efl.io: introduce basic interfaces and classes.
These interfaces allows generic operations on objects that can store
or provide data, such as a file or a buffer.

With well defined interfaces and events we can create code such as
Efl.Io.Copier, that will link a source with a destination and
progressively copy data as they appear.
2016-08-22 18:25:14 -03:00
Lauro Moura 4d2bcc8304 eolian_cxx: Fix behavior with explicit void return
Only perform the single value/return type substitution on properties if the
void return type is implicit (i.e. NULL return from function_return_type_get),
following the eolian-C implementation as we use the generated headers.

Also update example after Eo-Efl changes.
2016-08-17 20:54:27 -03:00
Stefan Schmidt 6b6bc48cfb examples: evas: ensure filter example lua files land in tarball
These are needed for a make doc run and have been missing the tarball before.

@fix
2016-08-17 16:43:32 +02:00
Tom Hacohen 25588b5ae3 Eo: Finish the renaming of Eo to the EFL.
This renames all the rest of the API to the EFL namespace except for
Eo_Event that will follow soon.

Obviously breaks both API and ABI.
2016-08-15 15:07:42 +01:00
Tom Hacohen 8d31721145 Change the EFL to follow the new Eo rename. 2016-08-11 17:04:43 +01:00
Stefan Schmidt 5dcc08f84d examples: elm: enable +evas3d_scene_on_button_example again
This was disabled at some point but works fien in my testing so enable it
again. If we no longer want it we should remove it completely.
2016-08-08 17:46:46 +02:00
Stefan Schmidt 3b3acaad57 build: examples: make sure we build all examples in list
At some point we lost the \ after track_example_01 and in combination with the
commented out line right afterwards we lost all examples coming after this line.

This just surfaced with JPs latest commit when I did a distcheck build but was
there for a longer time. We now make sure all disabled examples are moved out of
the multi-line list.
2016-08-08 17:20:50 +02:00
Jean-Philippe Andre 7b00751c16 examples: Fix button theme
A program was not handling the various states properly.
2016-08-08 20:41:51 +09:00
Jean-Philippe Andre da21656ee2 examples: Fix path to edj theme files (theme examples)
A bit complex but should work in most cases (installed & not)
2016-08-08 18:15:53 +09:00
Jean-Philippe Andre 84938cbaf1 examples: Compile edj files in elementary examples 2016-08-08 17:49:42 +09:00
jinwoo.shin 2af4b3ffca Fix memory leak issue on genlist_example_02
Summary: The realized items list should be freed by either eina_list_free() or EINA_LIST_FREE when it is no longer needed

Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: minkyu

Differential Revision: https://phab.enlightenment.org/D4193
2016-07-29 11:08:09 +09:00
Stefan Schmidt 6f88f586fc examples: edje: make sure we handle the various corner cases for the po files
Delete the earlier copied files only. Handles out of tree and in tree builds.
2016-07-26 12:40:55 +02:00
Carsten Haitzler e1a1aa0b83 edje examples - when you cp also just assume success if same file
fix makefiles for examples.... more

@fix
2016-07-26 14:22:43 +09:00
Subhransu Mohanty 4f4def2776 example/edje: updated vg example with interpolation usecase
Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4191
2016-07-26 14:19:59 +09:00
Subhransu Mohanty 5d0de920de example/evas: update evas vg example.
Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4189
2016-07-26 14:19:59 +09:00
Carsten Haitzler 077e165428 edje examples - stop deleting the po files from the src tree!
whatever someones was trying to do.. they just endewd up deleting po
files in the src tree every time you clean! argh! fix!
2016-07-26 14:04:59 +09:00
Shinwoo Kim e82f2bea6f Revert "access: add an example of elm_object_part_access_object_get"
This reverts commit f8aa67cd18e0f02368ca3aaedc159872feed459d.
2016-07-26 11:03:32 +09:00
Shinwoo Kim dca4878756 access: add an example of elm_object_part_access_object_get 2016-07-26 10:40:57 +09:00
Stefan Schmidt 1946311ed3 examples: elementary: make sure the prefs_example* files get into dist
These files have been missing from dist and thus some example builds failed.
We also need to clean them up afterwards now.
2016-07-25 18:00:42 +02:00
Stefan Schmidt 06667611bc examples: edje: fix build of edje files with translation within distcheck
The edje text example covers the translation functionality which need the mo
and po files during edje_cc compilation. Further more the folder need to be
writable to create the new mo/po files.

We need to ensure that this is the case during a distcheck which is read only
on the source tree.
2016-07-25 18:00:42 +02:00
Jean-Philippe Andre cd960b436a evas: Add a textblock to the image proxy example
This is to show that proxies can proxy more than just other
images, and also this was done to test D4159 (alternatively
changed into the previous commit).
2016-07-19 14:43:45 +09:00
Stefan Schmidt 80f1366ebe examples: edje: remove executable bit from svg files
These are plain data files, no need for an executable bit here.
2016-07-07 14:22:54 +02:00
Stefan Schmidt af240c1d7c examples: edje: make sure new svg files are packaged
In commit 0fc151cddc4cdb50661d11a124d42a9d42fa9875 these new svg files have
been added but forgotten to be made part of DATA_FILES.
2016-07-07 14:22:54 +02:00