aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/elementary/efl_ui_box.eo (follow)
Commit message (Collapse)AuthorAgeFilesLines
* docs: Update Efl.Ui.Box documentationXavi Artigas6 days1-16/+24
| | | | It has had a big uppercase FIXME text for 2 years.
* Rename Efl.Ui.Direction -> Efl.Ui.Layout_OrientationXavi Artigas2019-05-241-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: This clarifies a bit the whole Orientation vs. Direction confusion, at the expense of longer names (Image_Orientation vs. Layout_Orientation). Also, the interfaces are now adjectives (Orientable) and the enums have long names (*_Orientation). Pretty big patch, but no functional changes. Relates to T7863 Test Plan: Everything builds and passes tests. Elementary_tests show same behavior, including the "inverted" widgets, which are the only parts which received a bit of code changes. Proof: https://travis-ci.org/Enlightenment/efl/builds/536277282 Reviewers: zmike, bu5hm4n, cedric Reviewed By: zmike Subscribers: #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8946
* efl_pack: split algin and padding propertyMarcel Hollerbach2019-04-261-5/+5
| | | | | | | | | | | | the pack interface is a general interface for how we pack things into a container. the align and padding property has less to nothing to do with this. Hence this commit splits the two properties into theire own interface. fix T7825 Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es> Differential Revision: https://phab.enlightenment.org/D8699
* efl_ui: fix not to call _on_child_del() after container is deletedJaehyun Cho2019-04-261-0/+1
| | | | | | | | | | If efl_ref() is called to child, then child may not be deleted when container is deleted. This causes _on_child_del() is called after container is deleted and it causes crash if container data is accessed in _on_child_del(). To resolve the above issue, all callbacks of child are deleted not to call _on_child_del() after container is deleted.
* ui.box: remove leagcy evas_box from Efl.Ui.BoxYeongjong Lee2019-04-171-0/+2
| | | | | | | | | | Remove legacy stuff from Efl.Ui.Box. This expect to improve performance by removing internal function call related evas_box. Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es> Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de> Differential Revision: https://phab.enlightenment.org/D8417
* efl_container: remove content_removeYeongjong Lee2019-02-271-1/+0
| | | | | | | | | | | | | | Most of classes implements Efl.Container.content_remove are just calling "unpack" except of "Efl.Canvas.Layout" and "Efl.Ui.Layout". This patch remove the asymmetrical API and add content_remove API of "Efl.Canvas.Layout" and "Efl.Ui.Layout" that child can be remove without efl_part APIs. ref T7576 Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de> Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Differential Revision: https://phab.enlightenment.org/D7913
* Mark BETA classes individuallyXavi Artigas2019-02-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Summary: Instead of surrounding all the #include "*.eo.h" lines in Efl.h with #ifdef EFL_BETA_API_SUPPORT, include these files unconditionally, but mark all classes as @beta in the eo files. This will allow taking them out of beta one by one as we deem them stable enough. Otherwise, the current procedure involves moving the #include line out of the ifdef block, which is cumbersome and messes include order. Depends on D7950 Fixes T7692 Test Plan: Nothing changes Reviewers: zmike, bu5hm4n, cedric Subscribers: #reviewers, #committers Tags: #efl Maniphest Tasks: T7692 Differential Revision: https://phab.enlightenment.org/D7951
* ui.box: implement homogeneous modeYeongjong Lee2019-02-131-0/+12
| | | | | | | | | | | | | | | | | | Summary: On homogeneous mode, children are of the same weight and of the same min size which is determined by maximum min size of children. Depends on D7750 Reviewers: Jaehyun_Cho, zmike, jpeg Reviewed By: zmike Subscribers: segfaultxavi, cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D7889
* elm: add container api for the two objectsMarcel Hollerbach2019-01-261-1/+1
| | | | | | | | | | this resolves unimplemented API by just mirroring the calls to different API calls. ref T5719 Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Differential Revision: https://phab.enlightenment.org/D7749
* efl: convert all classes to the new eolian syntaxMarcel Hollerbach2019-01-181-2/+2
| | | | | | | | ref T7459 Reviewed-by: Daniel Kolesa <daniel@octaforge.org> Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es> Differential Revision: https://phab.enlightenment.org/D7684
* Efl.Pack_* (from Efl.Pack.*)Xavi Artigas2018-04-241-11/+11
| | | | | | Ref https://phab.enlightenment.org/T6847 Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
* widget: rename elm widget to Efl.Ui.Widget.Amitesh Singh2018-01-081-1/+1
|
* efl: Split Efl.Container and Efl.ContentJean-Philippe Andre2017-11-201-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | 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
* efl_ui_box: remove old api!Marcel Hollerbach2017-10-101-4/+0
|
* efl.ui.box: Switch to Efl.Ui.Dir (EO)Jean-Philippe Andre2017-08-101-3/+16
| | | | | | | This makes the default box vertical, just like in legacy. The flow box is horizontal by default. Ref T5870
* evas/elm: Make group_add/group_del internal functionsJean-Philippe Andre2017-05-191-2/+0
| | | | This hides those two legacy functions from the EO API.
* eo/elm: Simplify box/grid EO APIJean-Philippe Andre2017-04-181-2/+0
| | | | | | | | | | | | | | 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
* elm: use new property implement syntax everywhereDaniel Kolesa2016-12-271-8/+4
|
* docs: efl_ui: fill gaps in efl_ui eo file documentationStefan Schmidt2016-11-171-0/+1
|
* Change the EFL to follow the new Eo rename.Tom Hacohen2016-08-111-1/+1
|
* Evas: Rename smart object into Efl.Canvas.GroupJean-Philippe Andre2016-06-171-3/+3
|
* Evas: Add smart_ prefix to all smart functions (eo)Jean-Philippe Andre2016-06-171-3/+3
| | | | | This is a first step at separating legacy smart object features away from standard efl interfaces.
* Efl.Pack: Replace pack_direction with Efl.OrientationJean-Philippe Andre2016-06-031-11/+4
| | | | | | Since I first made the pack_direction before orientation existed, the names didn't match. This should improve API consistency.
* Efl: Remove "legacy_prefix: null;" as it's now the default.Tom Hacohen2016-05-121-1/+0
|
* Efl pack: Fix namespacing to use . and not _.Tom Hacohen2016-05-121-16/+16
|
* Evas object smart: Fix namespace to use . and not _.Tom Hacohen2016-05-121-3/+3
|
* Efl: Rename some packing functions and return boolJean-Philippe Andre2016-04-261-7/+6
| | | | | | | | This renames some APIs from Efl.Pack in order to try and make them more sensible. Feedback welcome. Also, most APIs now return bool, where false is quite unlikely to happen.
* Efl.Pack: Add content_at_removeJean-Philippe Andre2016-04-261-0/+1
| | | | This will match Edje Box remove_at
* Efl: Introduce Efl.Container and unify APIsJean-Philippe Andre2016-04-261-2/+2
| | | | | | | | | | | | | | | | | | | This removes Efl.Pack_Named which had a terrible name, removes Elm.Container which should have been renamed Efl.Ui.Container anyway, and introduces an interface Efl.Container instead. The hierarchy tree is now changed as objects don't inherit from Efl.Container (it's an interface, not a regular class) but only implement it. Obviously it is very easy to reintroduce an Efl.Ui.Container parent class if we need it, but I guess it should have some actual logic. It's basically part of what Elm.Widget already does. Some function names have been modified to look better in C with the efl_content prefix. @feature
* Efl.Pack: Rename methods and propertiesJean-Philippe Andre2016-04-201-15/+17
| | | | | | | | | - Children are now contents - Efl.Pack_Layout is now a separate class and merges Pack_Engine. - Removed dumb class Efl.Pack_Item - Updated docs - Added pack_ or grid_ prefixes to some methods
* Efl.Ui.Box: Add pack_align propertyJean-Philippe Andre2016-04-201-0/+2
| | | | | While at first I wanted to remove the box_align / table_align properties, it ends up being a necessary value in some cases.
* Efl.Ui.Box: Implement way to override layout functionJean-Philippe Andre2016-04-201-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | So, since we don't have function pointers, all the solutions to reimplementing the layout function are quite convoluted: 1. use events 2. reimplement layout func 3. use an extra object 4. use a generic class (non instanciated) Promises don't apply here (layout will run multiple times). Problems: 1. Multiple event callbacks will be called, resulting in potential performance impact, extra events, etc... Also, there is no way to define standard implementations that would be provided by the framework. 2. Reimplementation of a function requires extra EO work (create an EO class, etc...), doesn't allow on-the-fly change of the layout method. 3. Probably the best solution is to have an object implementing the layout. But this means creating an extra object along with the container. 4. To avoid the extra object, use a class, and reimplement a @class function. This unfortunately requires extra EO work. Solution 4. has been selected, but it's not very nice...
* Efl.Ui.Box: Add implementation of a simple boxJean-Philippe Andre2016-04-201-0/+39
This should be the only linear packing container. This replaces: evas box and elm box. Edje box needs to be kept around for compatibility, but it stays an EDC object only (for apps). Lots of things are still to be fleshed out in this box implementation: - Simplify smart object / elm widget code - Maybe stop using evas object box altogether - Implement other layout strategies @feature