Commit Graph

581 Commits

Author SHA1 Message Date
Jean-Philippe Andre 13da5e980e efl_gfx: Use Eina.Rectangle for geometry (EO)
This saves a few lines already (without even having the proper helpers
for stack rectangles).
2017-09-13 18:03:34 +09:00
Amitesh Singh 120d0673a9 efl.ui.range: remove interval_enable/set/get APIs from interface
Remove interval related apis from interface since interval slider
implements these features now. Although legacy range APIs would still
work on slider widget.
2017-09-12 18:08:42 +09:00
Felipe Magno de Almeida 743f52a05b efl: Make models 0-based index, not 1-based 2017-09-07 12:36:48 +09:00
Daniel Kolesa 0af3254020 eolian: fix float parsing with locales with ',' decpoint 2017-09-01 16:08:10 +02:00
Jean-Philippe Andre 4b74ca477d gfx_size_hint: Fix int vs. double (EO)
Thanks Sanghyeon for letting me know!
2017-09-01 10:09:37 +09:00
Stefan Schmidt 8b4ef410c3 docs: efl_text_annotate: fill in missing documentation 2017-08-31 17:33:01 +02:00
Stefan Schmidt 30b357bd1b docs: efl_inout_device: fill in missing docs 2017-08-31 17:32:21 +02:00
Stefan Schmidt f4fcb65bb4 docs: efl_text_cursor: add missing documentation for many parts 2017-08-31 16:15:32 +02:00
Stefan Schmidt 72f16b48ba docs: efl_text_font: fill in missing parts of documentation 2017-08-31 15:26:17 +02:00
Stefan Schmidt fedef597cf docs: efl_text_format: fill missing parts documentation 2017-08-31 15:16:17 +02:00
Stefan Schmidt 52d6cb7612 docs: efl_text_style: fill in missing documentation parts 2017-08-31 15:03:47 +02:00
Stefan Schmidt 6dd83b3034 docs: efl_text_style: document color components in styles
RGBA should be pretty clear for most cases but it does not cost us much
to document these values as well and make the documentation maybe easier
to understand for some people.
2017-08-31 14:42:26 +02:00
Daniel Kolesa af6713ebb4 efl interfaces: fix incorrect enum val 2017-08-30 15:34:49 +02:00
Jean-Philippe Andre 29bacf5988 gfx: Remove size hint request (EO)
This hint is simply not supported by any container.
Add the EO API back if the containers support it.

Ref T5487
2017-08-23 15:24:37 +09:00
Jean-Philippe Andre db4950ba2f efl: Remove Efl.Orientation horiz & vert (EO)
They are now replaced by Efl.Ui.Dir

NOTE: The name Efl.Ui.Dir is not satisfactory. Maybe we should use
Direction_Type or Direction_Value?

Ref T5870
2017-08-23 15:24:37 +09:00
Daniel Zaoui 2f53bdfe60 Move efl interfaces from evas to efl directory
You may need to remove your installed directory to avoid conflicts
2017-08-22 09:53:24 +03:00
Mike Blumenkrantz 595aa6bbb4 efl: add EFL_VERSION_1_21
indicate that features from this version can be used
2017-08-14 07:25:04 -04:00
Jean-Philippe Andre 6372dcdc2d grid: Switch to Efl.Ui.Dir (EO)
Ref T5870
2017-08-10 14:42:08 +09:00
Jean-Philippe Andre 43c07afbf1 flip: Switch to Efl.Ui.Dir (EO)
Ref T5870
2017-08-10 14:42:08 +09:00
Jean-Philippe Andre 4270cb032c efl: Introduce Efl.Ui.Direction interface
This introduces, but doesn't make any use of, two types:
 - EO interface Efl.Ui.Direction
 - Enum Efl.Ui.Dir

This is to clean up inconsistencies with Efl.Orient values when used
with widgets.

Ref T5870

@feature
2017-08-10 14:42:08 +09:00
Daniel Hirt 4923945f81 Text: move Annotation type to Efl.Text.Annotate namespace 2017-07-17 17:38:28 +03:00
Daniel Hirt d5f781da2b Efl text: replace all usages of cursor handle to same type
Changes cursor handle name from 'Efl.Text.Cursor.Cursor_Data' to
'Efl.Text.Cursor.Cursor'.
Also, replace all usages of Efl_Canvas_Text_Cursor
with Efl_Text_Cursor_Cursor as the handle for the cursor.
2017-07-17 16:51:45 +03:00
Sungtaek Hong 1ae77d0925 Efl.Observable: Free an iterator after use in observers_update()
Summary:
- In _efl_observable_observers_update() iterator is allocated but not freed.
- This frees the iterator.

@fix

Reviewers: conr2d, jpeg

Reviewed By: jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4994
2017-06-30 13:32:23 +09:00
smohanty cf927cdb34 efl/interface: emit path change event when stroke width change.
Reviewers: jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4991
2017-06-29 17:39:09 +09:00
Daniel Hirt 108bf99564 Efl text cursor: move around a few definitions
Need to handle this with special care as Efl.Text.Cursor is used in
some functions that are specific to Efl.Canvas.Text, was well as
functions in Efl.Text.Cursor interface.
2017-06-19 10:15:05 +03:00
Daniel Hirt d0da405620 Efl text format: change "halign" and "valign" to use enums
Value-based alignment (e.g. 0.5, 0.3 etc) isn't very practical.
Horizontal and vertical alignments will be assigned with enums
"left", "center", "right", "auto", "locale", for horizontal alignment,
and "top", "center" and "bottom" for vertical alignment.

This changes the previously added "halign" and "valign" properties.
2017-06-19 10:15:05 +03:00
Felipe Magno de Almeida 0fcee227aa eolian-cxx: Fix C++ generation errors with handle opaque types 2017-06-18 11:31:43 -03:00
Jean-Philippe Andre 6bfbeff47e widget: Move mirrored_automatic to Efl.Ui.Base
This is, unlike what some of the documentation says, a public
API on elm_object. Let's place it along mirrored for consistency,
even if edje object will not implement it.

Ref T5363
2017-06-15 17:35:44 +09:00
Amitesh Singh a7b49f2129 intf: range: rename unit_format to range_unit_format
ref T5361
2017-06-15 13:57:45 +09:00
Amitesh Singh 4e79dd0f02 slider: remove range APIs
move this api into range intf and rename it
to interval

ref T5361
2017-06-15 13:57:45 +09:00
Amitesh Singh 0911375d51 intf: rename progress to range
This is more appropriate name especially on slider widget.

ref T5361
2017-06-15 13:57:45 +09:00
Amitesh Singh 34b6d6d267 intf: Efl.Ui.Progress: Add progress_min_max property
We need this for slider and progressbar widgets

ref T5361
2017-06-13 18:05:06 +09:00
Jean-Philippe Andre e8b69bed83 efl.canvas: Add "seat" (by id) and "device" (by name) properties
See d47197e65b

@feature
2017-06-12 15:21:57 +09:00
Jean-Philippe Andre e8f9f109a6 evas: Rename device Class to Type, remove Sub_Class
1. The word "class" is a pain point with many languages where
   it's a keyword. Type is a little better. Also, the property
   was already named "device_type" and not "device_class".

2. Remove Efl.Input.Device.Sub_Class
   It's not used inside EFL upstream codebase, and unlikely to
   be used anywhere else (even in Tizen).

Hopefully no one used the Efl_ enum types. So far only the Evas_
types should be in used.

Ref T5540
2017-06-12 15:21:55 +09:00
Jean-Philippe Andre 83d18617b4 evas: Remove device "parent", "name" and "description" properties
Those are now merged with Efl.Object parent, name and comment.
The reasoning is that only seats can be parent devices; And name
and description are not only name clashes but also not extremely
useful anyway.

Tested with VNC.

Fixes T5540
2017-06-12 15:17:50 +09:00
Jean-Philippe Andre 2dc29cfbfd edje: Remove bool return from scale_set
It was always returning true. There is little point in returning
a bool here, an invalid scale value (eg. <= 0) wouuld lead to a
state where scale_get() != scale_set() and that's about it.
2017-06-12 11:50:30 +09:00
Jean-Philippe Andre 07a25fc88c edje: Move base_scale to Efl.Ui.Base
This API is used by elementary widgets like:
  edje_object_base_scale_get(elm_layout_edje_get(ly));

This means elm_layout in fact should also expose it directly.

Ref T5315
2017-06-12 11:50:30 +09:00
Daniel Hirt 616a60f041 Efl text: shorten naming of methods
eo_prefix are set to "efl_text".
Also, "Efl.Text.Format" is shortened to now include the "_format"
prefix.
"Efl.Text.Font" keeps the "_font" prefix, for better readability.
2017-06-12 00:32:34 +03:00
Daniel Hirt 3edf4985a4 gfx_filter: add efl_style_gfx_filter
Also, rename the format string to 'gfx_filterstr' to match the other
strings.

Update the filter test to use this property.
2017-06-12 00:10:05 +03:00
Daniel Hirt 869da955ec Text: enhance cursor_get to ask for a "get type" 2017-06-12 00:10:05 +03:00
Daniel Hirt 4a1b42aee8 Text: add annotate interface 2017-06-12 00:10:04 +03:00
Daniel Hirt 30f74a759d Text cursor: add interface and implement in Canvas.Text 2017-06-11 23:58:52 +03:00
Daniel Hirt 49b838c448 Canvas text cursor: move to Efl.Canvas.Text namespace
Originally it was its own object.
There are some valid claims that there is no justification for it to
remain an object.
Furthermore, it's apparent that it added little benefit: changes of
each cursors, in practice, triggered a query for all objects of the
same textblock. There wasn't real advantage to have a finer resolution
of controlling the cursors with their own events.

This ports back a lot of code, and changes a lot of other code in the
higher-up widgets, such as Efl.Ui.Text and co.

The usage was replaces from:
  efl_canvas_text_cursor_char_next(cur_obj)
to
  efl_canvas_text_cursor_char_next(text_obj, cur_obj)
that is, it is an operations on the TEXT OBJECT, rather than on the
(now removed) cursor object.

So, one less efl object to worry about now.
Hopefully, the port went smooth.
2017-06-11 23:58:52 +03:00
Mike Blumenkrantz 9572e9189d efl_input_device: add function for determining if a device has pointer caps
this is useful when attempting to manage devices

@feature
2017-06-09 19:14:59 -04:00
Mike Blumenkrantz 5b39bb5a3d efl: add EFL_VERSION_1_20
indicate that features from this version can be used
2017-06-09 19:14:58 -04:00
Mike Blumenkrantz bdadd3bac3 efl_input_device: do not free list when freeing children iterator
disappoint.jpg

@fix
2017-06-02 18:23:42 -04:00
Stefan Schmidt e3a073c0a8 docs: efl_text_style: add docs for various style related enums 2017-06-02 09:21:11 +02:00
Stefan Schmidt 6bc5e2ddfc docs: efl_font_format: add docs for Efl.Text.Format.Wrap enum 2017-06-02 09:21:11 +02:00
Stefan Schmidt c01052dafb docs: efl_text_font: add docs for font width and slant enums 2017-06-02 09:21:11 +02:00
Stefan Schmidt b0d056f291 docs: efl_text_font: add docs for font weight enum
Who comes up with font weight names like extrabold or black? :)
2017-06-02 09:21:11 +02:00
Jean-Philippe Andre 602039cf83 edje: Move some functions to Efl.Ui.Base (EO)
This introduces the new interface Efl.Ui.Base, intended to
share some APIs between Edje and Elm:
 - mirrored (rtl)
 - language
 - scale

base_scale remains in Edje.Object for now. I don't think it
applies to generic widgets.

The new interface uses eo prefix "efl_ui". It could be renamed
as Efl.Ui (no Base), or anything else. As always, I'm open to
propositions!

Ref T5315
2017-05-31 18:42:32 +09:00
Jean-Philippe Andre 20a305a85d interfaces: Remove display_mode from EO size hints
This size hint is only used by naviframe, which is not part of
our EO widgets. I also believe it might be an even more confusing
hint than the others.

I kept the typedef as is in Evas_Legacy.h in case an app is
written using EFL_GFX_ instead of EVAS_...
2017-05-31 18:42:32 +09:00
Jean-Philippe Andre f767e8bea4 edje: Move part drag APIs to efl_part
This moves all part_drag APIs to legacy and implements them for
EO using efl_part(). All parts now support these APIs, even if
they are not draggable. Making this more fine grained would
probably be much extra work for little gain.

This creates a new interface Efl.Ui.Drag.
2017-05-31 15:41:20 +09:00
Jean-Philippe Andre 76ef772d0a edje: Unify load error types for image and edje (EO)
Most of the values were the same, with edje having just a couple
more error codes.

Not entirely sure the prefix Efl.Image is correct for this type.
Maybe just Efl.Load.Error?
2017-05-29 10:49:17 +09:00
Daniel Hirt da2ef30f2b Efl text: add Font, Format and Style interfaces
The following text interfaces are added:
  - Efl.Text.Font: font settings that decide which font to display in
the text
  - Efl.Text.Format: formatting that affects the looks and layout of
the text
  - Efl.Text.Style: decorations and overlays that shouldn't affect the
font choice or the layout

@feature
2017-05-28 13:36:16 +03:00
Jean-Philippe Andre b114f8c66d evas/elm: Add Efl.Image.image_size read-only property
Following a remark in the mailing list, it is pretty clear that
Efl.Gfx.View.view_size is not as simple as "image_size".

I have defined this new image_size as being the size of the
image file, and not what's currently loaded. So it will not
apply to proxies, gl views, 3d scenes, etc... but only to
standard image files loaded with file_set or mmap_set.
Supported objects:
 - Efl.Canvas.Image (evas image)
 - Efl.Ui.Image (elm image)
 - Elm.Photocam (note: still needs some interface work)

@feature
2017-05-24 15:24:13 +09:00
Jean-Philippe Andre 1e1a611fdb evas: Add children_iterate to Efl.Input.Device
This is a new method for EO that allows us to enumerate the
children of a device, especially useful for seat devices.

@feature
2017-05-24 15:24:13 +09:00
Jean-Philippe Andre 12748a039e evas: Make efl_input_device_seat_id_get() more useful
And cleanup the EO file a little bit.
2017-05-24 15:24:13 +09:00
Jean-Philippe Andre 3082dc212e evas: Fix build for Windows without segv
Revert "Revert "evas: Fix build for Windows (hopefully)""
This reverts commit c8ec1cb2af.

The two efl_input_ functions need to be declared as EOAPI inside
the file where they are implemented. Otherwise the symbols aren't
exposed and weak linking means the function call crashes.

Sorry for the first untested patch and subsequent revert. Things
should be in order now.
2017-05-22 17:37:35 +09:00
Jean-Philippe Andre c8ec1cb2af Revert "evas: Fix build for Windows (hopefully)"
This reverts commit 1e2d382298.
This segfaults. Ouch... Will need more time to fix this.
2017-05-22 15:05:16 +09:00
Jean-Philippe Andre 1e2d382298 evas: Fix build for Windows (hopefully)
The declaration of some internal EO APIs was located in the wrong
library, which results on Windows to an invalid definition of
EAPI (dllexport vs dllimport).

Thanks @vtorri for the report!
2017-05-22 14:52:26 +09:00
Mike Blumenkrantz 4a16eb15fb efl_input_device: add seat_id property
this is the hardware id of a seat which is required in order to match
against objects from other components

@feature
2017-05-19 12:41:16 -04:00
Jean-Philippe Andre de4627030a evas: Make Efl.Input.Event.instance_get internal
Same as the previous patch. This removes the definition from
the EO file, implementing the feature in C.
2017-05-19 14:06:59 +09:00
Jean-Philippe Andre 60444d681e evas: Make Efl.Input.Event.legacy_info.get internal
This removes the function from the EO file by using EXTRA_OPS
as introduced in 53fef30db0.
2017-05-19 14:06:59 +09:00
Jean-Philippe Andre afbdaf514a efl model: Fix invalid type in EO
Efl.Canvas refers to a canvas, like Evas or Window. Efl.Gfx is
the base visual object type in libefl.so
2017-05-17 15:32:04 +09:00
Amitesh Singh 11a674ad7d Efl.Ui.Autorepeat: add 'autorepeat' prefix to methods.
Thanks to Dave for pointing out this.

Signed-off-by: Amitesh Singh <amitesh.sh@samsung.com>
2017-05-17 10:31:25 +09:00
Jean-Philippe Andre 9c494489e8 evas: Remove Efl.Canvas.Text.Annotation from evas_types.eot
This moves it to efl/interfaces which may not be the best...
@herdsman should know where to place this opaque definition.

Ref T5312
2017-05-16 20:47:49 +09:00
Jean-Philippe Andre 054aa012c4 evas: Use enum instead of string in Efl.Input.State
Ref T5312
2017-05-16 20:47:48 +09:00
Jean-Philippe Andre 2d6f53f2b9 evas: Replace Evas.Modifier_Mask with Efl.Input enums
This removes Evas.Modifier_Mask from EO.

This introduces two new types instead:
 - Efl.Input.Modifier
 - Efl.Input.Lock

Those are enums, not strings, containing all the known and
currently supported lock and modifier keys. The enums are
bit masks.

This effectively removes the ability for an application to
create and handle specific modifier or lock keys - with EO
API (legacy compatibility is unchanged, of course). I wonder
who ever required this?
2017-05-16 20:47:48 +09:00
Jean-Philippe Andre 2fb5747fc9 elm: Add missing eo.c file for elm_button
This fixes a recently introduced crash in elm.
2017-05-16 20:47:47 +09:00
Amitesh Singh 68119700bb Efl.Ui.Autorepeat: Add efl autorepeat interface
Signed-off-by: Amitesh Singh <amitesh.sh@samsung.com>
2017-05-16 20:01:13 +09:00
Jean-Philippe Andre a1abc129ec evas: Remove font_hinting from EO
We only need it in elm_config.
This removes the type Evas_Font_Hinting_Flags from EO,
as well as the functions font_hinting_set/get and
font_hinting_can_hint.

Ref T5312
2017-05-15 17:12:15 +09:00
Jean-Philippe Andre 6cd8811fe9 container: Remove method part_name_get
Remove this for now, as it may not apply to all contents.
Note that this was a new API in EO.
2017-05-11 17:53:50 +09:00
Jean-Philippe Andre e274512c81 efl/gfx: Remove unused function
This fixes a warning with -Wunused-function
2017-04-25 21:22:32 +09:00
Jean-Philippe Andre acb9ae70fe eo/elm: Simplify box/grid EO API
After talking with @eunue I realised that the way I'd first
implemented the box/grid "pack" API was simply too complicated.
I had tried to make it possible to change the layout function
at runtime, like good old evas box, but since there are no function
pointers in EO the final design was really convoluted.

If someone really needs to change the layout of a box at runtime,
just create your own subclass, or unpack all items and repack them
in a new box.

Note: there are still some issues with the layout params & flow
2017-04-18 15:34:29 +09:00
Jean-Philippe Andre e79f27ae0c efl: Remove manual definitions of event "changed"
Honestly I can't see why gfx & gfx.path "changed" need a manual
definition, instead of relying on EO. If the API needs to be
internal only, then EO needs to handle internal APIs. In this
case, the event was exposed as a C API but not a EO... why?
2017-04-18 11:07:46 +09:00
Jeeyong Um f370ea803b Efl.Gfx.Path: Fix wrong condition check in _find_ellipsis_coords
Summary:
In previous patch, !w should be replaced with EINA_FLT_EQ(w, 0.0), but it was
replaced with !EINA_FLT_EQ(w, 0.0). This breaks rounded rectangle.

T5291

Test Plan: compile and run attached file

Reviewers: cedric, jpeg, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D4787
2017-04-14 10:16:48 +09:00
Bryce Harrington 8b95b78dee efl vpath: Check and terminate execution if set*uid() calls fail
Summary:
Quells warnings:
    lib/efl/interfaces/efl_vpath_core.c:117:9: warning: ignoring return
    value of ‘setuid’, declared with attribute warn_unused_result
    [-Wunused-result]
         setuid(geteuid());
         ^
    lib/efl/interfaces/efl_vpath_core.c:169:9: warning: ignoring return
    value of ‘setreuid’, declared with attribute warn_unused_result
    [-Wunused-result]
         setreuid(uid, geteuid());
         ^

Reviewers: raster, jpeg

Reviewed By: raster

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4768
2017-04-13 16:41:02 +09:00
Stefan Schmidt a10771605f efl: add since tag to new invalid object error type 2017-02-14 21:47:15 +01:00
Carsten Haitzler 76244d89a7 vpath file - add a keey property to know if obj should be kept around
if its a file downloading (to a tmp location) or a zip/tar/whatever
file being extracted also to a tmp location and that tmp file needs to
be removed after ...you need to keep the obj around to know when to
delete the file. this makes the keeping optional and you query if the
vpath obj is meant to be kept or not. if it's not it's safe to del
immediately.

this cuts down 1 obj per image obj/edje obj when generally unused.
save some mem.
2017-02-13 16:51:49 +09:00
Stefan Schmidt eb0a4221de docs: efl mvc: document all new model view controller related eo files 2017-02-09 14:47:21 +01:00
Carsten Haitzler 810b17e7a4 efl vpath - for runtime dir dont fall back to tmp but instead abort
if we can't create a runtimedir maybe its best to abort. also ensure
it is created as the effective user id.
2017-02-09 20:43:59 +09:00
Carsten Haitzler 1a481cfe4d eina utils and vpath - use euid not uid if setuid for correct user
was using uid not euid for "if setuid use safe way to get location" -
ie the user that effectively owns the process, not nominally.

@fix
2017-02-09 18:50:15 +09:00
Carsten Haitzler e77f3b75d6 efl vpath - be paranoid about setuid execution and dont use env vars
if setuid, do not trust env vars for any xdg stuff at all.
2017-02-08 21:19:39 +09:00
Larry Jr 093c592188 efl: add efl_model and efl_ui_view classes
Efl.Model.Container and Efl.Model.Item to efl/interfaces are used
to create Efl.Model objects with predefined property values.
This is useful to any situation where we want an Efl.Model with
explicit defined property values.

Efl.Ui.View and Efl.Ui.Factory are used to connect Efl.Models with
Widgets, Elm.Layout and Efl.Ui.Image has changed to use news interfaces

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-02-06 15:26:21 -08:00
Gustavo Sverzut Barbieri 3cc60ce5f3 cmake: sync EFL_EO_API_SUPPORT definition with autotools.
in autotools we always define that symbol in config.h (thus now done
in common.cmake), while the Efl_Config.h that is generated never have
it, what's left is to enable/disable the legacy and beta APIs.

This fixes building eldbus_suite with cmake.
2017-02-03 12:36:50 -02:00
Gustavo Sverzut Barbieri 28960d7851 cmake: add ector. 2017-01-27 10:56:02 -02:00
Gustavo Sverzut Barbieri 205348383c cmake: add efl library.
still no tests and no binaries, but compiles the interfaces required
by other libraries such as ecore.
2017-01-25 19:29:20 -02:00
Gustavo Sverzut Barbieri fa92926469 cmake: major rework of check and pkg-config dependencies.
make FUNC_CHECK(), TYPE_CHECK() and HEADER_CHECK() more general and
they can be set to a scope, like "eina", then all symbols are prefixed
with that. The scope is created with CHECK_INIT(), and
EFL_HEADER_CHECKS_FINALIZE() will finish that.

This makes it possible for cmake/config/eina.cmake +
cmake/post/eina.cmake to add stuff to the generated file, better than
hand edit the template.

CHECK_APPEND_DEFINE(name val) is now the base to add symbols to the
generated file in the current scope.

Then convert cmake/config/eina.cmake to use that and match the
autotools values (were a bit off).

This exposed enabling valgrind was broken due incorrect pkg-config
usage with cmake (it's not obvious), it was using just the libraries,
while LDFLAGS are needed to get -L/usr/lib/valgrind. Then also convert
to CFLAGS provided by pkg-config and make that automatic for
PKG_CONFIG_REQUIRES and PKG_CONFIG_REQUIRES_PRIVATE.

Also, eina-mempool modules use valgrind and must use that now that's
propagating correctly.
2017-01-23 23:55:33 -02:00
Marcel Hollerbach 27504d7db0 cmake: add eo 2017-01-23 20:02:06 +01:00
Gustavo Sverzut Barbieri fe7a21170c cmake: reduce number of redundant variables set in cmake.
Avoid redundant variables in cmake, whenever they are needed as
duplicates, only do that in the template.
2017-01-23 18:23:41 +01:00
Marcel Hollerbach 34074fd0e7 build: use CMAKE defined variables 2017-01-23 18:23:40 +01:00
Marcel Hollerbach 6c87f62b90 build: make eina working
This brings in the checks for all the headers and function that are
required in eina. With this commit only a few other checks are missing.
This is NOT tested on windows or mac os i can just verify that it runs
here on a arch linux system.
2017-01-23 18:23:40 +01:00
Marcel Hollerbach 40cb00dc57 build: set MODULE_ARCH correctly 2017-01-23 18:23:40 +01:00
Marcel Hollerbach 2a5c2a0c3c cmake: improve versioning
The version defines are now done all the time. and the version pattern
does mach the one from autotools. And supports release mode now.
2017-01-23 18:23:40 +01:00
Marcel Hollerbach 9f2a2f7968 cmake: we need to enable beta api support
otherwise we cannot build our own api...
2017-01-23 18:23:40 +01:00
Marcel Hollerbach fe1863e30d cmake: move PACKAGE defines into a sane place
this should support all the vars used in all efl subsystems
2017-01-23 18:23:40 +01:00
Gustavo Sverzut Barbieri 76212a9162 CMake: infra to build modules (static, on or off). 2017-01-23 18:23:40 +01:00
Gustavo Sverzut Barbieri dee24c3821 CMake: rework to use some helper macros.
This tries to defines some macros to create a cleaner build system.
2017-01-23 18:23:40 +01:00
Marcel Hollerbach 88283204c1 build: switch eina to half baked cmake 2017-01-23 18:23:40 +01:00
Felipe Magno de Almeida a1f2db255b cxx: Modify how to generate C++ headers and allow cyclic dependencies
Allow cyclic dependencies in generated C++ headers by changing order
of includes and creating forward declarations.
2017-01-18 22:47:04 -02:00
Daniel Kolesa cb3f8304e0 eolian: change eo file syntax @virtual_pure -> @pure_virtual 2017-01-13 15:44:09 +01:00
Daniel Kolesa 85fbc333dd eolian: enforce specification of both get and set in prop impls
Now you can't use the same syntax as you would for a method to
implement a property as whole, instead you need to specify the
getter and/or setter explicitly. This is to allow parent classes
to expand their properties without altering behavior of the child
classes.
2017-01-11 16:38:41 +01:00
Cedric BAIL 8f1c071d6a eina: rename EINA_{FLT,DBL}_CMP to EINA_{FLT,DBL}_EQ. 2017-01-06 15:58:46 -08:00
Carsten Haitzler 9e01cf2698 evas image async preload - add option to also make header load async
to date if you use async preload we still load the header
synchronously and this can be horrible especially with generic
loaders. there is no way to farm this off to the preload thread. now
there is. youhave to set it as a skip head load option before doing a
file_set AND you need to issue a preload ... but now it's possible.

@feature
2017-01-02 18:53:56 +09:00
Daniel Kolesa 9056f25b54 efl: move some eo files to new property impl syntax 2016-12-27 16:06:19 +01:00
Cedric BAIL e9ebad1519 efl: in read only case this might get uninitialized. 2016-12-20 16:39:29 -08:00
Gustavo Sverzut Barbieri 08c38713ce do not emit events from efl_io_closer_close() on destructor.
On destructor we're not supposed to emit events, I even thought that
would be implicit, but it's not. If we do, for example an event
handler that would 'efl_del()' on "EFL_IO_CLOSER_EVENT_CLOSED" would
trigger too-many unrefs.
2016-12-20 10:18:32 -02:00
Gustavo Sverzut Barbieri 963e3a793d efl_io_reader/writer: always set 'can_*' to FALSE on errors.
If user tries to read or write and that fails then set 'can_read' or
'can_write' to false, regardless of the error code.
2016-12-20 10:18:32 -02:00
Cedric BAIL fa66613ed0 efl: remove float comparison warning from Efl.Gfx.Path code. 2016-12-19 16:33:46 -08:00
Gustavo Sverzut Barbieri c2aedc117a efl_io_buffer: adopt read-only and read-write buffers.
todo--, allow buffer backing store to be provided by Eina_Slice
(rdonly) or Eina_Rw_Slice (rdwr).
2016-12-19 16:50:58 -02:00
Gustavo Sverzut Barbieri 25a9e1d886 Efl.Io.{Queue,Buffer,Buffered_Stream}: slice_get is now a property.
Previously we couldn't return a slice, instead required the user to
pass a slice and we'd fill it since Eolian couldn't generate fallbacks
for structures.

Since @q66 fixed eolian, we can now return the structure itself as
initially wanted, ditching some TODO from the code.
2016-12-19 15:30:56 -02:00
Gustavo Sverzut Barbieri 416fa27066 efl_io_buffer: callbacks may close the buffer.
direct or indirect events (ie: can_read_set/can_write_set) may trigger
the user to close the buffer.
2016-12-09 13:47:04 -02:00
Gustavo Sverzut Barbieri 36612adeff efl_io_queue: callbacks may close the queue.
For example, _efl_io_queue_update_cans() triggers "can_read,changed"
and from there users may close the queue, in such case we shouldn't
set can_write.
2016-12-09 13:47:04 -02:00
Cedric BAIL 889944fefe efl: extend possible error while decoding an image to be cancelled. 2016-12-06 16:26:08 -08:00
Stefan Schmidt e90622ec41 all: use void if we really want to make sure we do not accept parameters
In C we need this to make clear that we really do not accept parameters.
Found by the smatch source code matcher. I had run and fixed this before
but it seems to creep in again over time.
2016-12-06 17:16:24 +01:00
Guilherme Iscaro e0af7384a2 Efl.Input.Device: Do not ref/unref devices children devices.
When a mouse/keyboard is removed from its seat under the Wayland backend,
it was not immediately deleted from EFL, because its parent was keeping
a reference to it. Since the mouse/keyboard is no longer present in the system
there's no reason the keep them around. To prevent this delayed deletion do
not ref/unref them when the parent is set.
2016-12-02 15:12:56 -02:00
Stefan Schmidt 33f5074206 docs: efl_ui: fill gaps in newly introduced eo files
These two eo files have been introduced by commit
a58e2e1a79

Sadly three items have been left undocumented. With this patch we are back to
100% doc coverage.
2016-11-30 11:01:39 +01:00
Jean-Philippe Andre ad250d0ffb menu: Fix crash in main menu and eo files
This amends the previous commit to avoid a crash in the main
menu, and adjust the eo files formatting.
2016-11-30 17:59:56 +09:00
Amitesh Singh a58e2e1a79 Menu,Item Interface: Common interface for menu, toolbar and ctxpopup
Summary:
efl_ui_menu interface provides common functions of menu, toolbar and ctxpopup.
efl_ui_item interface provides common functions of menu_item, toolbar_item and ctxpopup_item.
Also implemented some missing functions like selected_item set/get in ctxpopup.
efl_ui_item interface should be used for other widget items as well.

Test Plan: elementary_test

Reviewers: jpeg, felipealmeida, raster, SanghyeonLee, cedric, yashu21985

Subscribers: bu5hm4n

Differential Revision: https://phab.enlightenment.org/D3897
2016-11-30 17:59:56 +09:00
Guilherme Iscaro b77f0086f5 Efl.Canvas: Use Efl.Input.Focus as event info for object,focus.in/out. 2016-11-24 19:18:47 -02:00
Guilherme Iscaro fd6f6c14c1 Evas: Use events to set canvas focus in/out. 2016-11-24 19:18:47 -02:00
Guilherme Iscaro ed9c635152 Evas: Add Focus event type. 2016-11-24 19:18:47 -02:00
Gustavo Sverzut Barbieri d0b7d876a7 efl_io_queue: add discard method, useful in real life.
While using efl_io_queue + slice_get I found that we need to discard
data and the only way was to read to an actual buffer, kinda annoying.

Then introduce a discard method to do that.
2016-11-24 18:55:43 -02:00
Stefan Schmidt 3f0f1b68f0 docs: efl_pack_grid: fill gaps in eo file documentation 2016-11-24 15:33:10 +01:00
Hermet Park 4584fe5721 efl path: add missing value intializing.
It might be broken at some particular vector drawing.
2016-11-24 15:58:37 +09:00
Hermet Park e0da83ce56 efl interface: introduce efl_gfx_path mixin.
As we discussed, redesigned efl_gfx_shape mixin.
Split path properties/methods from the shape so that other classes benefit from the path.
2016-11-23 17:36:57 +09:00
Stefan Schmidt 85ed25c682 docs: efl_interfaces: fill gaps in efl interfaces eo file documentation 2016-11-17 12:16:01 +01:00
Stefan Schmidt 237ab9c681 docs: efl_gfx: fill gaps in efl_gfx eo file documentation 2016-11-15 17:45:32 +01:00
Bruno Dilly ed48b8d93e efl: add getter for input device's seat
Since this code will be required in many use cases
of the multiseat feature, including examples.

Reviewers: iscaro, barbieri, cedric

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D4385
2016-11-09 11:02:38 -02:00
Hermet Park 4cd8dbf7a0 efl interface: define own FILL/EXPAND values.
efl interface shouldn't rely on Evas.
2016-11-09 20:07:18 +09:00
Hermet Park e4f9f6ef1d efl interface: fix typo.
Eeek. values are switched..
2016-11-09 19:27:44 +09:00
Hermet Park a954e9a869 efl interface: define constant in eo.
This patch consolidates previous patch code - 7894952e01.

Suggested by @jpeg.
2016-11-09 19:07:34 +09:00
Hermet Park 7894952e01 efl stack: define own LAYER_MIN/MAX values.
efl interface shouldn't rely on evas.
2016-11-09 17:23:38 +09:00
Gustavo Sverzut Barbieri e466dd5c3b efl_model: child,{added,removed} have a payload object. 2016-11-04 13:19:57 -02:00
Gustavo Sverzut Barbieri dd628d4fad fix event name 2016-11-04 13:19:57 -02:00
Gustavo Sverzut Barbieri d8ad2507bc fix event name 2016-11-04 13:19:56 -02:00
Daniel Kolesa 61d87af9e6 efl_io_buffer: remove pointer 2016-11-03 16:53:33 +01:00
Daniel Kolesa 73ceac1f6c efl_model: remove pointer 2016-11-03 16:53:33 +01:00
Daniel Kolesa 3b2fdfcc60 efl_gfx_gradient: remove pointer 2016-11-03 16:53:33 +01:00
Daniel Kolesa 6369ccb1d8 efl_file: remove pointer 2016-11-03 16:53:33 +01:00
Daniel Kolesa 6e0e4a8fe5 efl_gfx_shape: remove pointers 2016-11-03 16:53:33 +01:00
Daniel Kolesa 0f20af41ea efl_gfx_buffer: remove pointers 2016-11-03 16:53:33 +01:00
Daniel Kolesa d00c22934f efl_config: remove pointers 2016-11-03 16:53:33 +01:00
Daniel Kolesa 50c9ef12df efl_gfx_types: remove pointer 2016-11-03 16:53:33 +01:00
Stefan Schmidt 4a66bd14b7 docs: document all missing type defines in our eo files
With this commit we reach 100% alias doc coverage for our eo files.
2016-11-03 11:57:40 +01:00
Stefan Schmidt 8e1dac310a docs: efl_observer: fill missing docs for new efl_observer 2016-11-03 11:57:39 +01:00
Jean-Philippe Andre d0196d74ce efl: Fix build break with builddir != srcdir 2016-11-03 17:22:14 +09:00
Jee-Yong Um 0fd1445508 edje.object: implement Efl.Observer interface
Summary:
To remove duplicated lines to handle edje class (color, text, size),
observer interface is implemented to Edje.Object.

Reviewers: jpeg, cedric

Reviewed By: cedric

Subscribers: bu5hm4n, cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-11-01 11:48:44 -07:00
Stefan Schmidt 7e98403912 docs: add missing docs for the rest of efl interfaces 2016-11-01 14:54:24 +01:00