Commit Graph

1015 Commits

Author SHA1 Message Date
Jean-Philippe Andre 37625fca91 Evas/Edje/Elm: Use combined_min instead of min everywhere
This allows apps to set the objects min size with hint_min,
while letting the rest of EFL define the minimum size with
rstricted_min.

I don't like the property names much...
2016-06-09 16:37:49 +09:00
Jean-Philippe Andre f773206769 Efl: rename size hint content_min to restricted_min
Still not sure about which keyword is the best to use here,
but anyway, it's a protected function so users should realize
it's probably not what they want.
2016-06-09 16:13:39 +09:00
Subhransu Mohanty e38cf1f85f edje: cached the vg tree generation and fixed the interpolation betwwen two vg tree.
Reviewers: cedric, jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4028
2016-06-09 13:49:56 +09:00
Subhransu Mohanty 62c0a4ef08 edje: add new svg part to edc
Reviewers: Hermet, cedric

Reviewed By: cedric

Subscribers: jpeg, cedric, Hermet

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-06-08 11:35:33 -07:00
Subhransu Mohanty 698135b8e4 edje: add svg support to parse and store a svg file as a vector object in .edj.
Summary:
This is the svg loader which will parse the svg file and store it in a intermediate structure.
It provides the helper function to get EET descriptor to save the structure into eet file.

NOTE: Not all svg attributes are handled yet. but most common attributes are handled .

Reviewers: Hermet, cedric

Subscribers: Hermet, cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-06-08 11:18:20 -07:00
Vitalii Vorobiov 3563457307 edje_edit: add missed part and description initializations
@fix
2016-06-08 19:01:03 +03:00
Jean-Philippe Andre 7872690e73 Efl: Move evas size hints to Efl.Gfx.Size.Hint
This includes:
- align
- min (now content_min)
- request
- max
- padding (now margin)
- weight

This does NOT include:
- display mode (compress, expand... a hint used by naviframe only).
2016-06-08 17:10:07 +09:00
Jean Guyomarc'h f55cb6649d edje: fix unused variable when gettext is disabled 2016-06-07 22:21:33 +02:00
Vitalii Vorobiov a0eb98db3b edje_edit: text style should be able to set into NULL
@fix
2016-06-07 17:59:15 +03:00
Vitalii Vorobiov 96f6ca336d edje_edit: fix copy&paste type for map functions which should return int
zplane and focal actually returns int, not Eina_Bool

@fix
2016-06-07 16:58:10 +03:00
Vitalii Vorobiov 8590abd562 edje_edit: fix map API (light, perspective, rotation)
it should be possible to set light or perspective to NULL
and return -1 when nothing is set
also ability to send NULL point to store rotation

@fix
2016-06-06 20:48:39 +03:00
Vyacheslav Reutskiy dabdebf026 edje_edit: return lost API *_span_row/col_set declaration
I'm lost this declaration while add API for manager part items by
index and mark as deprecated old funcs
2016-06-06 10:48:15 +03:00
Felipe Magno de Almeida 8b1fc67a12 edje: Fix wrongful uses of char instead of string in Eolian 2016-06-06 02:46:39 -03:00
Jean Guyomarc'h e33c5a85d4 edje: don't return a boolean when a pointer is expected
Fix a warning thrown by Apple-llvm.
2016-06-04 16:51:38 +02:00
Vyacheslav Reutskiy b612fe2485 edje_edit: add API for set/get part item 2016-06-03 12:27:30 +03:00
Jean-Philippe Andre 31279d2513 Efl.Pack: Replace pack_direction with Efl.Orientation
Since I first made the pack_direction before orientation
existed, the names didn't match. This should improve API
consistency.
2016-06-03 16:52:31 +09:00
Vyacheslav Reutskiy 8f82e93368 edje_edit: add API for get part item attributes by item index
Cedric revert patch 6f7608befd same days
ago.

<quote Cedric>
Your patch 6f7608befd did break elemines
which does relly on the proper index to be given to it. I think
Edje_Edit should be fine and use the index if no name is provided (See
edje_load.c around L1180). In all case this was clearly an ABI break and
needed to be reverted.
</quote Cedric>

So now edje_cc not guarantee name for part items. This is bad, because
edje_edit use item name for access to item attributes. If item have not
name we cann't get it attributes, because edje_edit compare the given
name with part items name from edj-file, strcmp dislake NULL args.
For now I see one way mark all edje_edit_part_item* APIs as deprecated
and add new APIs for manage part items by index.

For clearly and history:
The eason for revert - https://phab.enlightenment.org/D3820
The proposed solution - https://phab.enlightenment.org/D3907
2016-06-03 08:35:13 +03:00
Daniel Kolesa b1946ca5d6 eolian: utilize the new void_ptr builtin across eo files
This lets me narrow down the remaining cases of pointers across the EFL.
The void pointers will later need to be reevaluated on per-case basis and
replaced appropriately where possible/feasible.
2016-06-02 13:00:26 +01:00
Tom Hacohen a6a2338962 Revert "Eo: Remove eo_del() and make eo_unref() the replacement."
This reverts commit 546ff7bbba.

It seems that eo_del() is useful and removing it was creating bugs.
The issue is that the way we defined parents in eo, both the parent and
the programmer share a reference to the object. When we eo_unref() that
reference as the programmer, eo has no way to know it's this specific
reference we are freeing, and not a general one, so in some
circumstances, for example:
eo_ref(child);
eo_unref(child); // trying to delete here
eo_unref(container); // container is deleted here
eo_unref(child); // child already has 0 refs before this point.

We would have an issue with references and objects being freed too soon
and in general, issue with the references.

Having eo_del() solves that, because this one explicitly unparents if
there is a parent, meaning the reference ownership is explicitly taken
by the programmer.

eo_del() is essentially a convenience function around "check if has
parent, and if so unparent, otherwise, unref". Which should be used when
you want to delete an object although it has a parent, and is equivalent
to eo_unref() when it doesn't have one.
2016-06-01 13:33:21 +01:00
Daniel Kolesa 6fc482aa9b eolian: utilize the new builtin string type across eo files 2016-05-31 16:05:43 +01:00
Jean-Philippe Andre 99924852ab Efl: Remove part name in Efl.Container (use Efl.Part)
This touches Edje and also Elementary where part names are used.
This commit blew up in size since now all content part APIs
(get, set, unset) require to use Efl.Part instead.

This is a big refactoring commit, but no logic should
have been changed. Fingers crossed.
2016-05-26 19:55:50 +09:00
Jean-Philippe Andre d2ba9866fb Edje: Remove impossible code
With EO we can't possibly call an EO function
with NULL.
2016-05-25 15:00:34 +09:00
Jean-Philippe Andre ba43e12722 Edje: cache proxy objects (1 slot only)
Also, fix calls to a proxy obj from a proxy function.
2016-05-24 18:50:58 +09:00
Jean-Philippe Andre df375ca395 Edje: fix test case (switch to efl_part) 2016-05-24 18:50:58 +09:00
Jean-Philippe Andre b84c9cc376 Edje: Auto-unref proxy objects after calls 2016-05-24 18:50:58 +09:00
Jean-Philippe ANDRE d0f141077e Efl: Add Efl.Part and switch to it
This should now fix the part API usage once and for all.
EFL should have no part name in any of its APIs beyond
the Efl.Part interface.

Part proxy objects (may be real objects) have a lifetime
of only one function call, in a fashion similar to eo_super.

@feature
2016-05-24 18:50:58 +09:00
Daniel Kolesa e984e5a11a eolian: remove pointers from complex and class types
Complex types (i.e. list, array, hash, accessor etc.) now do not require
pointers with them anymore (the pointer is implied) and the same goes for
class handles. Eolian now explicitly disallows creating pointers to these
as well. This is the first part of the work to remove pointers from Eolian
completely, with the goal of simplifying the DSL (higher level) and therefore
making it easier for bindings (as well as easier API usage).

@feature
2016-05-23 15:58:33 +01:00
Jean Guyomarc'h cec8a49b51 edje: fix condition scope
Commit 3faf3f3fc converted an eo_do() into two functions.
However the eo_do() was implicitely enclosed within an if,
which after conversion led to the if coverting only one
of these functions instead of both.

Pointed out by GCC's -Wmisleading-indentation.
2016-05-18 22:29:59 +02:00
Cedric Bail 75a53ece10 eo: for consistency use object like all our API. 2016-05-18 08:18:04 -07:00
Cedric Bail 45bc4f30eb efl: change name of animator,tick event in C. 2016-05-18 02:20:13 -07:00
Jihoon Kim 2b8d93a5d1 ecore_imf: Add multiline hint in input hint
@feature
2016-05-18 15:21:12 +09:00
Daniel Kolesa 7782c0bcb9 eolian: add event_prefix and have classes follow that or eo_prefix by default
Previously events used to use class name as a prefix and ignored eo_prefix
when specified. This is no longer the case. Events follow eo_prefix by default
now. In order to get around this for classes where this is undesirable, a new
field event_prefix was added which takes priority over eo_prefix. If neither
is specified, class name is used like previously.

@feature
2016-05-17 17:50:43 +01:00
Tom Hacohen 546ff7bbba Eo: Remove eo_del() and make eo_unref() the replacement.
We used to have eo_del() as the mirrored action to eo_add(). No longer,
now you just always eo_unref() to delete an object. This change makes it
so the reference of the parent is shared with the reference the
programmer has. So eo_parent_set(obj, NULL) can free an object, and so
does eo_unref() (even if there is a parent).

This means Eo no longer complains if you have a parent during deletion.
2016-05-17 16:23:23 +01:00
perepelits.m d200d483ef edje: attaching viewport of camera to the image part
Summary:
According to D3710 new field "camera" in edc was added for IMAGE parts.
It is the name of the CAMERA part to set its viewport as a source of image if no image name is given.

Reviewers: raster, Hermet, cedric

Reviewed By: cedric

Subscribers: jpeg, artem.popov

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-05-17 05:21:45 -07:00
Mykyta Biliavskyi 328607f3b9 Edje_edit: generate code of the image sets.
Added support generate the edc code of the image sets in the image top level block.
And correct support inside the image.normal attribute.
2016-05-17 12:01:11 +03:00
Mykyta Biliavskyi d027a2f65c Edje_edit: generate states of the box and table part edc code with inheritance.
Generate inheritance box and table attributes from similar state.
2016-05-16 15:53:48 +03:00
Mykyta Biliavskyi fa17ff96e1 Edje_edit: generate states of the proxy part edc code with inheritance.
Generate inheritance proxy attribute "source" from similar state.
2016-05-16 15:53:42 +03:00
Mykyta Biliavskyi 5b0b0da92b Edje_edit: generate states of the image part edc code with inheritance.
Generate inheritance image attributes from similar state.
2016-05-16 15:53:38 +03:00
Mykyta Biliavskyi 3c3a21d614 Edje_edit: generate states of the text part edc code with inheritance.
Generate inheritance text attributes from similar state.
2016-05-16 15:53:31 +03:00
Mykyta Biliavskyi 303fea96ca Edje_edit: generate state code with inheritance map block.
Add ability to generate inherited code for map block.
2016-05-16 15:53:26 +03:00
Mykyta Biliavskyi bbeae532ac Edje_edit: generate state code with inheritance rel block.
Add ability to generate inherited code for relative block.
2016-05-16 15:53:20 +03:00
Mykyta Biliavskyi 2d63b59221 Edje_edit: generate state code with inheritance general attributes.
Support inheritance for part states on the edc code generate time.
Only for general attributes are supported, except relative and
map blocks.
Added functions for calculation coefficient of similarity
between two different states of the same part.
2016-05-16 15:53:16 +03:00
Mykyta Biliavskyi f4379eaa4c Edje_edit: move text state edc code generate to standalone func.
Created internal function _edje_generate_source_state_text.
This is needed for implementation generate inheritance
states in edc code.
2016-05-16 15:53:09 +03:00
Vitalii Vorobiov e80d8d9a71 Edje_Edit: more API for proxy fields like source_clip and source_visible
Setters and getters like
edje_edit_state_proxy_source_clip_set
edje_edit_state_proxy_source_clip_get
edje_edit_state_proxy_source_visible_set
edje_edit_state_proxy_source_visible_get
2016-05-12 19:31:49 +03:00
Tom Hacohen 6bdf4af016 Add legacy_prefix now that the default has changed to null. 2016-05-12 17:27:35 +01:00
Tom Hacohen 96c4c88070 Efl: Remove "legacy_prefix: null;" as it's now the default. 2016-05-12 17:27:35 +01:00
Tom Hacohen 278b16b058 Evas smart: Fix namespacing to use . and not _. 2016-05-12 11:33:59 +01:00
Tom Hacohen 56eee19102 Efl pack: Fix namespacing to use . and not _. 2016-05-12 11:14:03 +01:00
Tom Hacohen 0253d91ade Evas object smart: Fix namespace to use . and not _. 2016-05-12 11:12:15 +01:00
Ji-Youn Park 27495fe670 edje_callbacks: fix click signal emitting even though mouse event was cancelled
even though each part want to get the signal regardless of ON_HOLD,
click signal should not emmitted if event flag is set to ON_HOLD.
ON_HOLD means this event is useless, so up event with ON_HOLD flag cannot source of clicked signal.

@fix
2016-05-11 22:14:27 +08:30