path: root/src/examples/elementary (follow)
AgeCommit message (Collapse)Author
2019-08-26spinner_cxx_example: Fix use wrong apiJunsuChoi
Summary: de18371 changes cause build errors. (D9707) this is a patch to fix it. Test Plan: N/A Reviewers: woohyun, bu5hm4n Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2019-08-23slider_cxx_example: Fix use wrong apiJunsuChoi
Summary: d50fdc0, e84ecd95 changes cause build errors. this is a patch to fix it. Test Plan: N/A Reviewers: zmike, Jaehyun_Cho Reviewed By: Jaehyun_Cho Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2019-08-23efl/gfx: redo image scale_type enumMike Blumenkrantz
this is ideally a bit more clear and flexible than the previous enum names Reviewed-by: Cedric BAIL <> Differential Revision:
2019-08-21elementary: use the right function for creating object from Efl.Ui.Factory.Cedric BAIL
Reviewed-by: Lauro Neto <Lauro Moura <>> Differential Revision:
2019-08-14efl_ui: update efl_ui_list_view example to workSangHyeon Jade Lee
seems name for the model property_name is now allowed, so fix it to title and now it works well. Reviewed-by: Cedric BAIL <> Differential Revision:
2019-08-07introduce efl_ui_multi_selectable and efl_ui_single_selectableMarcel Hollerbach
right now they are just thin wrappers from what have been in efl_ui_collection. This is just a first effort, the interfaces have to be equipped with more and better API, more events, and tests. ref T8057 Reviewed-by: SangHyeon Jade Lee <> Differential Revision:
2019-08-05introduce a new interface efl_ui_selectableMarcel Hollerbach
this is meant to be implemented by entities that *can* be selectabled (not to be confused with containers that can have selected contents)! ref T8057 Reviewed-by: Mike Blumenkrantz <> Differential Revision:
2019-08-01examples: cast to uintptr_t instead of longVincent Torri
on Windows, long is a 32 bits type Reviewed-by: Cedric BAIL <> Differential Revision:
2019-08-01spinner_example: migrate it to efl::ui::spin_buttonMarcel Hollerbach
we should do that more often, that shows issues. Right now there seems to be an issue with accessors in cxx, something is freeing the accessor twice. So this feature is disabled right now. ref T8100 Reviewed-by: Cedric BAIL <> Differential Revision:
2019-08-01efl_ui_range_interactive: add a new eventMarcel Hollerbach
the steady event from slider now moved here. A spec test suite and the corresponding implementations will follow. ref T7894 Reviewed-by: Xavi Artigas <> Differential Revision:
2019-07-31slider_cxx: fix castingMarcel Hollerbach
this object now needs to be casted, in order to have the event available.
2019-07-29efl_input_clickable: rename efl_ui_clickable to efl_input_clickableWooHyun Jung
Summary: Renamed all efl_ui_clickable_XXX to efl_input_clickable_XXX based on the discussion in T7847 ref T7847 T7976 Reviewers: zmike, bu5hm4n, segfaultxavi Reviewed By: segfaultxavi Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T7976, T7847 Differential Revision:
2019-07-28filesel example - add locale.h include since we use setlocaleCarsten Haitzler (Rasterman)
2019-07-26efl-js: Remove private keys for Twitter API from exampleFelipe Magno de Almeida
Summary: For security concerns we removed the secret keys which could be used improperly by the wrong people. Reviewers: woohyun, cedric, lauromoura Reviewed By: lauromoura Subscribers: #reviewers, #committers Tags: #efl Differential Revision:
2019-07-25efl_ui_list_item: remove thisMarcel Hollerbach
this has nothing usefull in it. Additionally, future commits will brings up another design where there is a central default item style, which can be hinted. Reviewed-by: Cedric BAIL <> Differential Revision:
2019-07-24efl_ui_list: make it work with item_containerMarcel Hollerbach
This also refactors the example a little bit. Reviewed-by: Cedric BAIL <> Differential Revision:
2019-07-24efl_ui_grid: make it work with item_containerMarcel Hollerbach
this also reformats the example, removes comments that are misleading, removes UI elements that have no purpose. Reviewed-by: Cedric BAIL <> Differential Revision:
2019-07-17elementary: simplify example by using Efl.Model_Provider.Cedric BAIL
Reviewed-by: Marcel Hollerbach <> Differential Revision:
2019-07-09cxx: fix some compilation warnings in C++ examplesVitor Sousa
Summary: Fix some warnings in the C++ examples for elementary. These examples are build by default in the normal meson compilation. Only accidental warnings were fixed, explicit warnings using the `#warning` preprocessor directive were maintained. Test Plan: Compile with C++ binding. Reviewers: lauromoura, felipealmeida, segfaultxavi Reviewed By: segfaultxavi Subscribers: bu5hm4n, cedric, #reviewers, #committers Tags: #efl Differential Revision:
2019-07-05elementary: rename Activew_View to Spotlight.Cedric BAIL
View is something that is expected in the context of MVVM, so using it somewhere else is going to lead to some confusion. Spotlight does descrive the objective of all of this widget in actually a more explicit way as they all give the spotlight to one sub widget at a time. I have also renamed the View_Manager to be just Manager as the View there wasn't useful.
2019-07-04Efl.Ui.Format revampXavi Artigas
This class helps widgets which contain a numerical value and must display it, like Progressbar (units label), Spin, Spin_Button, Slider (both units and popup labels, in legacy), Tags (when in shrunk mode) or Calendar (year_month label). Previously this was a mix of interface and mixin: widgets had to support setting a formatting func, and the mixin offered support for formatting strings, by setting an internal formatting func. On top of that, the spinner widget supported "special values", a list of values that should be shown as certain strings instead. This has now been simplified and unified: Widgets including this mixin can use the formatted_value_get() method which accepts an Eina_Value and returns a string. Thats's it. The mixin adds three properties to the widget (format_values, format_func and format_string) which users can use to tailor formatting. The widget does not need to know which method has been used, it just retrieves the resulting string. This removes a lot of duplicated widget code, and adds functionality which was missing before. For example, all widgets support passing a list of values now. Widgets must implement the apply_formatted_value() method so they are notified of changes in the format and they can redraw anything they need. Tests have been added to the Elementary Spec suite for all cases. Legacy widgets behavior has not been modified, although a few needed some code changes.
2019-06-26efl_ui: remove nstate widgetMike Blumenkrantz
Summary: this doesn't seem to serve a purpose anymore and there's no point in keeping it in tree fix T7866 Reviewers: woohyun, Jaehyun_Cho Reviewed By: Jaehyun_Cho Subscribers: cedric, #reviewers, #committers Tags: #efl_widgets Maniphest Tasks: T7866 Differential Revision:
2019-06-20remove more filesMarcel Hollerbach
Summary: those files are leftover from autotools. They have been missed before Reviewers: stefan_schmidt, zmike Reviewed By: zmike Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2019-06-20efl_ui_radio: cleanup APIMarcel Hollerbach
This is a bit of a giant commit. However, the problem here is that cleaning up the API went hand in hand with rewriting most of the usages. In the process of renewing and removing old API the following was done: - Legacy API testcases have been ported back to smart callbacks - EO-API testcases have been ported to efl_add syntax - weird event #defines have been removed - Wrong constructor usage has been removed - Ported to the new box object introduced before - removed legacy API from efl_ui_radio -> no more ptr(int) q66 will do jumps of happiness -> no more ununderstandable group_add methods -> Seperated code in blocks only for legacy, and blocks only for non-legacy To verify this commit, you can check all the tests that have been touched here. Additionally, the cxx example has been adjusted ref T7867 Reviewed-by: Mike Blumenkrantz <> Differential Revision:
2019-06-20Introduce Efl.Ui.Radio_Group & Efl.Ui.Radio_BoxMarcel Hollerbach
Radio_Group is a interface that manages that radio groups can be grouped inside a external object, the current API of radio was considered confusing in that regard. It is implemented in the Radio_Group_Internal class which is private to EFL, a instance of it can be found with get due to the class function in efl_ui_radio.eo. This architecture was taken like this, in order to have implementation and interface seperated. With those two seperated we can inherit from regular widgets, implement the interface, and composite attach the internal object to the regular widget. This makes a lot of things easier. Radio_Box is a class which is extending Efl.Ui.Box, which has an internal Radio_Group. This is extremly usefull for cases where you just want to have a list of radio buttons in your UI. The radio group is also exposed using composition to the internal object. Simular things can be done for the table. For now i did not add API to find the group of a radio button. However, this can be quickly added if requested. ref T7867 Reviewed-by: Mike Blumenkrantz <> Reviewed-by: Xavi Artigas <> Differential Revision:
2019-06-19Fix miscellaneous build warningsXavi Artigas
Nothing serious, but they were driving me mad.
2019-06-19efl_ui_range_display: range_min_max -> range_limitsMike Blumenkrantz
Summary: ref T7895 Reviewers: segfaultxavi Reviewed By: segfaultxavi Subscribers: cedric, #reviewers, #committers Tags: #efl_api Maniphest Tasks: T7895 Differential Revision:
2019-06-14Efl.Ui.Slider: Rename event delay,changed to steadyXavi Artigas
Summary: And update the docs to explain its purpose. Related to T7893 Test Plan: Everything builds and tests pass Reviewers: zmike, bu5hm4n Reviewed By: zmike Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2019-06-13efl_ui_check: make it undependend of nstateMarcel Hollerbach
Summary: check can only display 2 states, and is only designed to do so. Additionally, nstate inherits from button, which brings in autorepeat, which is hileriously broken on check and cannot really work. Right now there is not even support in the theme for clickable. So its a good idea to get rid of this for now IMO. ref T7865 Reviewers: stefan_schmidt, zmike, segfaultxavi, akanad, YOhoho Reviewed By: zmike Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T7865, T7867 Differential Revision:
2019-05-30efl_ui_active_view: introduce a experimental new widgetMarcel Hollerbach
this widget tries to replace efl.ui.stack efl.ui.flip & efl.ui.pager In general those widgets do the same thing, they get content. And display them with some sort of animations. The new idea here is, that the basic widget active_view only handles the ownership etc. of the content that gets added to this. Then there is a view_manager object. The view_manager object gets notified over the new contents, and requests for displaying particular contents. The transition then handles those things. The version here is feature complete with Efl.Ui.Stack and Efl.Ui.Pager. Additional features can be implemented in the corresponsing transition classes. Examples and tests will follow Reviewed-by: Jaehyun Cho <> Reviewed-by: Cedric BAIL <> Differential Revision:
2019-05-30efl_ui: rename list empty item to list placeholder item.SangHyeon Jade Lee
Summary: legacy full style item is introduced Efl.Ui.ListEmptyItem Class in new Efl Interface, but using "Empty" name is too ambiguous to present style usage. Thanks to @cedric and @segfaultxavi, I found better name for this class, Efl.Ui.ListPlaceHolderItem, as item hold the place which need to be replaced and relayouted by user generated content. Depends on D8582 Reviewers: cedric, segfaultxavi, eagleeye Reviewed By: eagleeye Subscribers: cedric, #reviewers, segfaultxavi, #committers Tags: #efl Differential Revision:
2019-05-30efl_ui : refactoring efl.part in item based classes.SangHyeon Jade Lee
Summary: Most of item-based class will have similar efl.part such as text, icon, end. creating this efl part per each class will be very hard to maintaining the class and unnecessary eo generation. so combine them in of efl_ui_item. sub item classes can use this efl.part by declairing ther own eo definition. Reviewers: cedric, Jaehyun_Cho, segfaultxavi, eagleeye Reviewed By: cedric, eagleeye Subscribers: herb, woohyun, q66, lauromoura, #reviewers, #committers Tags: #efl Differential Revision:
2019-05-24Rename Efl.Ui.Direction -> Efl.Ui.Layout_OrientationXavi Artigas
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: Reviewers: zmike, bu5hm4n, cedric Reviewed By: zmike Subscribers: #reviewers, #committers Tags: #efl Differential Revision:
2019-05-13efl_ui_clickable: move repeat eventMarcel Hollerbach
Summary: the repeat event is only emitted by the implementations of efl_ui_autorepeat. Additionally, the event should only be used by those who implement this interface. Depends on D8832 Reviewers: zmike, segfaultxavi, cedric Reviewed By: zmike, segfaultxavi Subscribers: jpeg, #reviewers, #committers Tags: #efl Differential Revision:
2019-05-03CXX examples: remove wrong header inclusionXavi Artigas
This was an oversight from the previous refactor.
2019-05-02cxx: Rename Elementary.hh into Efl_Ui.hhLauro Moura
Also include Efl_Ui.h alongside Elementary.h (the latter is still needed by some widgets).
2019-05-02gfx_filter: add an exampleShinwoo Kim
Add an example using efl_gfx_filter_program_set with text and image object. Reviewed-by: Marcel Hollerbach <> Differential Revision:
2019-04-26meson: lets add cxx examplesMarcel Hollerbach
Summary: it appears they have not been part of this before. Now they are, and two broken examples are fixed. Reviewers: segfaultxavi Reviewed By: segfaultxavi Subscribers: segfaultxavi, cedric, #reviewers, #committers Tags: #efl Differential Revision:
2019-04-26efl_pack: split algin and padding propertyMarcel Hollerbach
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 <> Differential Revision:
2019-04-23examples : update list_view examples to use item_class_set not ↵SangHyeon Jade Lee
layout_theme_config. widget_factory support item_class_set for factory created child. Reviewed-by: Cedric BAIL <> Differential Revision:
2019-04-05meson: correctly use the correct dependencyMarcel Hollerbach
Summary: edje_cc calls epp, so we should not only add edje_cc to the depends on target, but rather also ensure that epp is availble. Additionally, this removes unneccessary depends on declarations when we do cross compile. Depends on D8561 Reviewers: zmike, segfaultxavi, cedric Reviewed By: zmike Subscribers: #reviewers, #committers Tags: #efl Differential Revision:
2019-03-20build: codegen generation should depend on elementary_codegenMarcel Hollerbach
Summary: otherwise buildfailures like : /usr/bin/env EFL_RUN_IN_TREE=1 /Users/travis/build/Enlightenment/efl/build/src/bin/elementary/elementary_codegen -p=codegen_example src/examples/elementary/codegen_example.edj elm/example/mylayout/default src/examples/elementary/codegen_example_generated.c src/examples/elementary/codegen_example_generated.h Can appear. Reviewers: zmike Reviewed By: zmike Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2019-03-20Remove dead codeXavi Artigas
2019-03-19efl_ui: rename select and unselected of efl_ui_selectableMarcel Hollerbach
Summary: this was conflicting with a model event. Prefixing it with "item," resolves this, and describes better what it does. Depends on D8413 Reviewers: zmike Reviewed By: zmike Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2019-03-19Revert "efl_ui_selectable: namespace events to avoid conflicts"Marcel Hollerbach
Summary: This reverts commit f629f11bedad7b137b012d36102ad5bb1f2b4b4f. This breaks legacy events. As the selected event is used in legacy widgets. Also this commits mixed up two different concepts, selection in a entry etc. and selection of a item. Depends on D8411 Reviewers: zmike Reviewed By: zmike Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2019-03-18inwin_example: shot can never be the preferend engineMarcel Hollerbach
Summary: "shot" is just the content from ELM_DISPLAY, but never the prefered engine. Additionally, prefered engine can be NULL, which will cause a SEGV. This now just uses the getenv to check if we run in the shot engine. Depends on D8376 Reviewers: cedric, segfaultxavi, zmike, stefan_schmidt Reviewed By: segfaultxavi Subscribers: #reviewers, #committers Tags: #efl Differential Revision:
2019-03-18index_example_02: fix index exampleMarcel Hollerbach
Summary: If this is not initialized, then the reuse function will be != NULL which causes a SEGV Reviewers: cedric, segfaultxavi, zmike, stefan_schmidt Reviewed By: segfaultxavi Subscribers: #reviewers, #committers Tags: #efl Differential Revision:
2019-03-18efl: remove EFL_EO_API_SUPPORT macroDaniel Kolesa
Summary: Since we're now going to be shipping some eo classes as stable, there is no point in keeping the eo api behind a macro, and it should be enabled by default. Another case is beta classes, but those are behind the EFL_BETA_API_SUPPORT guard. This also changes includes around the place where things are clearly broken (such as an included header needing something from another header but that other header being guarded, notably efl_ui_widget.h needing focus manager but focus manager being behind beta in Elementary.h) Reviewers: zmike, cedric, bu5hm4n, stefan_schmidt, segfaultxavi Reviewed By: cedric, segfaultxavi Subscribers: segfaultxavi, #reviewers, #committers Tags: #efl Differential Revision:
2019-03-12examples: bg_cxx: disable win.background in exampleStefan Schmidt
Since commit ceb4c04d3b8f8eb94d63174b7b6f43641ea508a8 the parts block in efl.ui.widget is disabled which leads to compile errors of the example.
2019-03-11efl-csharp: Respect beta for classes and other stuff.Lauro Moura
Summary: In order to work around an issue with Efl.App, which is stable but inherits from Efl.Core.Command_Line, @beta interfaces/mixins in the inheritance chain are simply skipped. Also changed the class used int test for inheritance from C# Efl.Loop is stable but internally it uses a @beta class as argument to its Register() method in the constructor. When instantiating a user-defined C# subclass, the binding calls the C# override in the NativeInherit class and the marshalling fails as no code is generated for the beta class. Also moved Efl.Part test to a beta class. Efl.Part is still beta. Regarding parts, they are skipped if its class is @beta too. Also rejected all elm_* files in elm public eo files. They should get back in as they are converted to Efl.Ui.* api. An exception is elm_interface_scrollable.eo, as efl_ui_panel depends on it. Fixes T7730 Test Plan: Run tests Reviewers: vitor.sousa, segfaultxavi, felipealmeida, cedric, bu5hm4n, zmike Reviewed By: vitor.sousa Subscribers: #reviewers, #committers Tags: #efl Maniphest Tasks: T7730 Differential Revision: