Commit Graph

377 Commits

Author SHA1 Message Date
Cedric BAIL 327593e9b4 elementary: rename Efl.Selection -> Efl.Ui.Selection as it is only usable with User Interface related element.
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7505
2019-01-02 11:03:49 -08:00
Woochanlee d9a222ecf5 Intruduce Efl.Ui.Panel (Create Efl Ui Widget from elm widget(elm_panel))
Summary: Create Efl Ui Widget from elm widget(elm_panel)

Test Plan: elementary_test -> efl_ui_panel

Reviewers: woohyun, Jaehyun_Cho, segfaultxavi

Reviewed By: Jaehyun_Cho, segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7238
2018-12-20 11:32:28 +09:00
Daniel Hirt fed99f8d13 Ui text: implement efl_part and part_text API to text_set 2018-11-26 13:17:07 +02:00
Marcel Hollerbach 70c800465e elm-test: add a test for checking the event handling
This tests creates a giant box with widgets in them. Each widget that is
tested is added to the box, focus is moved into it, and away from it,
the corresponding events are then checked.

Differential Revision: https://phab.enlightenment.org/D7233
2018-11-20 14:42:32 +01:00
SangHyeon Jade Lee 4b5304d7f2 efl_ui_grid : introduce new packable grid widget for Efl.Ui.Widget
Summary:
Introduce new packable grid for Efl.Ui.Widget toolkits.
most of parts are same as Efl.Ui.List, and it also support Efl.Pack_Linear,
although it will not support Efl.Pack_Table, because item must be
arranged sequential orders.

Test Plan:
We will make the tests on efl ui test suite.
please test by make check.

Reviewers: Hermet, cedric, felipealmeida, eagleeye, woohyun

Reviewed By: Hermet, eagleeye

Subscribers: CHAN, bu5hm4n, cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6985
2018-11-20 14:32:31 +09:00
Jaehyun Cho 4f9c8d524c efl_ui_theme: Introduce Efl.Ui.Theme class
Summary:
Efl.Ui.Theme class is required to support language bindings.
Efl.Ui.Theme works based on current elm_theme features.

This patch fixes T7357.

Reviewers: segfaultxavi, cedric, lauromoura, woohyun, zmike, SanghyeonLee

Reviewed By: segfaultxavi, SanghyeonLee

Subscribers: SanghyeonLee, herdsman, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7357

Differential Revision: https://phab.enlightenment.org/D7244
2018-11-20 13:56:37 +09:00
Jaehyun Cho 0611620301 efl_ui_bg: remove Efl.Ui.Bg interface and rename Efl.Ui.Bg_Widget class
Summary:
Efl.Ui.Bg interface does not have any new property or method.
Moreover, Efl.Ui.Bg interface is not used by widgets except
Efl.Ui.Bg_Widget and Efl.Ui.Widget_Part_Bg.
Consequently, Efl.Ui.Bg interface can be replaced by other interfaces.

Due to Efl.Ui.Bg interface, the bg widget class name becomes
Efl.UI.Bg_Widget which is not synchronized with other widget names.

Therefore, to keep consistency with other widgets, it would be better to
remove Efl.Ui.Bg interface and rename Efl.Ui.Bg_Widget to Efl.Ui.Bg.

Reviewers: woohyun, segfaultxavi, bu5hm4n, zmike

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7304
2018-11-20 10:24:05 +09:00
Jaehyun Cho d4526f44b8 elementary: rename Efl.Ui.Popup classes
Summary:
Efl.Ui.Popup classes are renamed intuitively from backward order to
forward order.

Efl.Ui.Popup_Alert        -> Efl.Ui.Alert_Popup
Efl.Ui.Popup_Alert_Scroll -> Efl.Ui.Scroll_Alert_Popup
Efl.Ui.Popup_Alert_Text   -> Efl.Ui.Text_Alert_Popup

Reviewers: segfaultxavi, bu5hm4n, cedric

Reviewed By: segfaultxavi

Subscribers: herb, SanghyeonLee, woohyun, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7292
2018-11-16 11:26:57 +01:00
Jaehyun Cho 2d460e52e4 elementary: remove Efl.Ui.Layout namespace
Summary:
Efl.Ui.Layout namespace is removed to keep consistency with other
widgets.
Consequently, "Efl.Ui.Layout.Object" is renamed to "Efl.Ui.Layout" and
"Efl.Ui.Layout." is renamed to "Efl.Ui.Layout_".

Reviewers: segfaultxavi, bu5hm4n, cedric

Reviewed By: segfaultxavi

Subscribers: #reviewers, #committers, SanghyeonLee, woohyun

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7291
2018-11-16 11:11:13 +01:00
Daniel Hirt 86a8f832ae Ui text scroller: add scroller for internal usage
This class inherits Efl.Ui.Scroller and has its own sizing_eval logic to
handle the text content sizing as needed.

It's kept internal as it only serves Efl.Ui.Text in a scrollable mode.
2018-11-05 17:31:06 +02:00
SangHyeon Jade Lee e97b6b72be efl_ui : change efl_ui_view_list to efl_ui_list_view.
Summary:
  View is not a namespace, but an interface,
  So, View_List cannot be under the view namespace for now.
  it looks more suite to be end as View than List on this widget name.
  Firstly, it follows our common naming rules of class.
  Also, List_View is commonly presentable name on most UI frameworks,
  so it is very easy to understand what this widget can do for the user.

Test Plan:
Make works.
           Example is not works for now til stable model interface.

Reviewers: felipealmeida, woohyun, cedric, Hermet

Reviewed By: Hermet

Subscribers: larryolj, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7234
2018-11-05 14:27:05 +09:00
Marcel Hollerbach 2643ce0aad build: move ELM_INTERNAL_API_ARGESFSDFEFC into buildsystem
the definition is now defined in the buildtools autools / meson. This
reduces the amount of warnings in meson.

Differential Revision: https://phab.enlightenment.org/D7170
2018-10-18 16:01:07 +02:00
Youngbok Shin 32504a8cfa elementary textpath: support legacy APIs
Summary:
Efl.Ui.Textpath was added when we were developing new interfaces.
So, basically, it does not support 'legacy' APIs. ex) elm_textpath_add
But, in Tizen, the legacy APIs had been delivered in old version of EFL.
To reduce maintainning cost between the platforms, this patch will be helpful.
@feature

Test Plan: N/A

Reviewers: Hermet, woohyun, zmike, cedric, herdsman

Reviewed By: Hermet

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7033
2018-10-12 15:42:31 +09:00
Jaehyun Cho 743e0468e9 efl_ui_popup: Replace class Efl.Ui.Popup_Part with Efl.Ui.Popup_Part_Backwall
Class Efl.Ui.Popup_Part is used only for part "backwall".
Therefore, class Efl.Ui.Popup_Part is replaced with class
Efl.Ui.Popup_Part_Backwall.
2018-09-05 15:16:11 +09:00
Mike Blumenkrantz df09336286 build: remove incorrect use of DEPENDENCIES for non-library file
if this is ever evaluated then it will trigger a build failure since it
is not a rule in this makefile which can ever be run

fix T6828

Differential Revision: https://phab.enlightenment.org/D6838
2018-08-17 22:11:33 +02:00
Mike Blumenkrantz 672cacaaf6 tests/elm: remove elm_test_helper.(c|h) files
these timer functions are only used by fileselector and I'm trying to consolidate
timer usage

no functional changes

Differential Revision: https://phab.enlightenment.org/D6768
2018-08-15 10:20:55 +02:00
Mike Blumenkrantz ad81ef1364 build: define PACKAGE_BUILD_DIR as $(abs_top_builddir) for all test suites
Summary:
this needs to be consistent so that it can be used reliably across suites

also these build flags really need to be consolidated into a single variable
that can be reused

Depends on D6666

Reviewers: devilhorns, bu5hm4n

Reviewed By: bu5hm4n

Subscribers: bu5hm4n, cedric, #committers

Tags: #efl_build

Differential Revision: https://phab.enlightenment.org/D6731
2018-08-08 09:45:30 -04:00
Daniel Kolesa 9d9a3e87c8 build: disable Lua binding generation
Summary:
As Lua bindings don't work right now, it is pointless to waste
build time generating them. Elua itself on the other hand is
useful and should stay enabled.

This also does some preparation work for separate configure
switch for bindings after release, but for now keep configure
switches as they are.

Reviewers: zmike, stefan_schmidt

Subscribers: cedric, bu5hm4n, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6721
2018-08-01 13:31:15 -04:00
YeongJong Lee 61dc4899b5 elm_win: fix widget type name for backward compatibility
Summary:
It should use legacy class in elm_win_add.

this patch fixes T6898, T6899

Test Plan: make check

Reviewers: zmike, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6899, T6898

Differential Revision: https://phab.enlightenment.org/D6233
2018-05-31 21:39:34 +09:00
Marcel Hollerbach a218c883c7 Introduce efl_ui_widget_focus_manager
Summary:
The mixin encapsulates the correct
- creation
- composition attaching
- Lifecycle handling

of the focus managers that are assosiated with the object.

This fixes error messages on shutdown, and additionally lifetime issues
where the composite_attached object was deleted before the object was
deleted.

Reviewers: cedric, zmike

Reviewed By: zmike

Subscribers: segfaultxavi, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6108
2018-05-16 13:30:28 -04:00
Hosang Kim 5db61e4d64 efl_ui_slider: refactor slider widget.
Test Plan: elementary_test -> Efl.Ui.Slider, Efl.Ui.Slider_Interval, slider

Reviewers: woohyun, cedric, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: zmike, cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5908
2018-05-15 14:16:00 +09:00
Jaehyun Cho 1ea2f75015 elm_multibuttonentry: Fix to install eo header files
Move elm_multibuttonentry and its sub eo files to the correct location
in Makefile_Elementary.am to install eo header files.

@fix
2018-05-14 22:26:10 +09:00
Stefan Schmidt 9ad14a190b build: include newly created efl_ui_focus_graph.h file in dist
This header file was newly created in 258b96be35
Autotools need to made aware of it so it will actually land in the dist
or a distcheck run will break with:
../../../src/lib/elementary/efl_ui_focus_graph.c:9:10: fatal error: efl_ui_focus_graph.h: No such file or directory
2018-05-03 14:43:37 +02:00
Stefan Schmidt 99864df317 build: fix indent in elm makefile 2018-05-03 14:43:37 +02:00
Bowon Ryu 67045ea28a efl_ui_tab_pager: add Efl.Ui.Tab_Pager and related classes
Summary:
the basic concept of Efl.Ui.Tab_Pager is similar to elm_toolbar.
user can attach Efl.Ui.Tab_Bar to the tab_pager.
user can create an Efl.Ui.Tab_Page to add tab label, tab icon and set the content of the page.
user can pack Efl.Ui.Tab_Page into tab_pager.
The tab and page match one to one.
user can controls tab and page through tab_pager.

See T5317

Test Plan: elementary_test -to efl.ui.tab_pager

Reviewers: cedric, woohyun, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: eunue

Differential Revision: https://phab.enlightenment.org/D5988
2018-05-02 21:11:41 +09:00
Woochan Lee 8c6ae23c86 Introduce Efl.Ui.Tags(changed from elm_multibuttonentry)
Summary:
https://phab.enlightenment.org/T5358

Create new concept of adding items and rename widget to tags.

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D6008
2018-05-02 17:23:46 +09:00
Marcel Hollerbach 258b96be35 efl_ui_focus: move graph calculation to seperated file 2018-05-01 20:27:07 +02:00
Cedric BAIL 544eecb203 autotools: fix make distcheck. 2018-05-01 10:39:01 -07:00
Cedric BAIL 700bdb4dcc ecore: Efl.Ui.Model.State doesn't have to be public yet. 2018-05-01 10:39:01 -07:00
Cedric Bail 46ac187bd8 elementary: add an Efl.Ui.Model.State in charge of visibility, selection and enable state. 2018-04-30 14:21:12 -07:00
Marcel Hollerbach fdfcae968b elm_widget: Introduce elm_focus_legacy
Code located here is meant for a legacy tree and legacy widgets.
This is checked on the entry of the function
2018-04-30 19:24:47 +02:00
SangHyeon Lee 75f21087f5 efl_ui_list : introduce new list widget for simple usage
Summary:
most usage of simple list, items are very limited and loading performance is not serious.
to support those requirement, this efl.ui.list will create scrollable box with efl.pack.

user can create list by packing an pre-loaded item object, Efl.Ui.List.Item class.

Test Plan: tested in efl_ui_list_example_1.c in examples.

Reviewers: cedric, felipealmeida

Subscribers: woohyun, Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5861
2018-04-28 13:41:41 +09:00
Woochan Lee ef2e6afd1f Intrudoce Efl Ui Date, Time interface and picker.
Summary: Create datepicker, timepicker with one manager class(efl_datetime).

Test Plan: datepicker, timepicker sample.

Reviewers: herb, Jaehyun_Cho, woohyun, SanghyeonLee

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5871
2018-04-25 16:48:21 +09:00
Xavi Artigas 6a98b84cd7 Efl.Ui.Layout.Object (from Efl.Ui.Layout)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:54 -07:00
Xavi Artigas 6b5ac687c1 Efl.Text_* (from Efl.Text.*)
Including:
Efl.Text.Cursor_* (from Efl.Text.Cursor.Cursor_*)
Efl.Text.Font_* (from Efl.Text.Font.*)
Efl.Text.Format_* (from Efl.Text.Format.*)
Efl.Text.Style_* (from Efl.Text.Style.*)
Efl.Ui.Text_* (from Efl.Ui.Text.*)

Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:49 -07:00
Xavi Artigas 9dcc31ed4a Efl.Access.Object (from Efl.Access)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:24 -07:00
Jaeun Choi e74ebca670 efl_ui_pager: Add Efl.Ui.Pager class and related classes
Efl.Ui.Pager is a widget which contains many pages in a linear fashion
and allows users to scroll through them.
Users can attach Efl.Page.Transition and Efl.Page.Indicator to a pager.
2018-04-23 20:33:04 +09:00
Carsten Haitzler dd1e6fbf9a elm - fix build break (against efl - missing header)
cant build against efl after 939690a8a9.
this fixes that.
2018-04-20 17:30:54 +09:00
Jaehyun Cho d767c31a57 test_ui_stack: Add test using Efl.Ui.Stack class
Add test using Efl.Ui.Stack, Efl.Ui.Navigation_Layout, and
Efl.Ui.Navigation_Bar classes.

Navigation_Bar widget is set into Navigation_Layout widget and
Navigation_Layout widget is pushed into Stack widget.
2018-04-19 23:40:10 +09:00
Jaehyun Cho 6c65b6368a efl_ui_navigation_bar: Add Efl.Ui.Navigation_Bar class
Efl.Ui.Navigation_Bar is a widget which provides a bar form useful for
navigation.
2018-04-19 23:40:06 +09:00
Jaehyun Cho 7e8722be00 efl_ui_navigation_layout: Add Efl.Ui.Navigation_Layout class
Efl.Ui.Navigation_Layout is a widget which provides a layout form useful
for navigation.
2018-04-19 23:40:01 +09:00
Jaehyun Cho ab4fa83f62 efl_ui_stack: Add Efl.Ui.Stack class
Efl.Ui.Stack is a container arranges objects in stack structure by
pushing and popping them.
2018-04-19 23:39:57 +09:00
Woochan Lee 939690a8a9 Revert Efl.Ui.Multibuttonentry to create new one.
Summary:
Revert e02b2f04c2945ad60fab5612af1e02b0838b7ff5.

I couldnt make a revert commit for many commit has been related with above commit.

I will create a new MBE eo class ASAP. (https://phab.enlightenment.org/T5358)

Reviewers: cedric, woohyun, Jaehyun_Cho, SanghyeonLee, herb

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5954
2018-04-19 22:22:01 +09:00
Marcel Hollerbach 84ad5d9fe3 introduce efl_ui_focus_manager_window_root
Which is a interface that indicates that this is the root of all focus
managers.
2018-04-09 18:05:27 +02:00
SangHyeon Lee ae8df9ba07 efl_ui_view_list : change the name of Model based list
Summary:
model based list need to be under the namespace of 'Efl.Ui.View".
thus, I renamed 'Efl.Ui.List' to 'Efl.Ui.View.List' properly.

Test Plan: N/A

Reviewers: cedric, felipealmeida

Differential Revision: https://phab.enlightenment.org/D5855
2018-04-04 19:13:41 +09:00
Marcel Hollerbach 432deb1129 efl_ui_focus_manager_root_focus: switch to focus adapter 2018-03-15 15:39:12 +01:00
Lauro Moura d78620e001 elm: fix location of legacy include for elm_code.
Summary:
Instead of including the legacy header on the main header, just include
it where it is actually used (diff_widget.c), like in elm_code_widget.c.

Test Plan: Try to compile edi with the tarball from `make dist`. It should not fail with elm_code related errors.

Reviewers: raster, stefan_schmidt, felipealmeida

Subscribers: cedric

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2018-03-06 19:05:57 -08:00
Marcel Hollerbach 507cabd44e Revert "elm: make elm_view_list legacy"
This reverts commit d2d63a8c23.

This broke compilation of efl applications, since elm_view_list.eo.h
is required, however, this again leaves the installed .eo files broken.
2018-02-28 09:49:05 +01:00
Mike Blumenkrantz 568b524411 tests: add test for efl.ui header compilation 2018-02-26 15:05:36 -05:00
YeongJong Lee 403c014bd2 efl.ui.progressbar: change signal name for icon/text
Summary: see also 73f8b3b78f

Test Plan:
1. elementary_test -to progressbar
and elementary_test -to efl.ui.progressbar
2. check that icon and text are visible

Reviewers: cedric, woohyun, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5818
2018-02-26 21:22:26 +09:00
YeongJong Lee 736de05ea7 efl.ui.check: change signal name for icon/text
Summary: see also 73f8b3b78f

Test Plan:
1. elementary_test -to check
2. check that icon is visible

Reviewers: cedric, woohyun, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5816
2018-02-26 20:28:56 +09:00
YeongJong Lee e25bd086c5 efl.ui.radio: change signal name for icon/text
Summary: see also 73f8b3b78f

Test Plan:
1. elementary_test -to radio
2. check that icon is visible

Reviewers: cedric, woohyun, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5815
2018-02-26 19:59:31 +09:00
Marcel Hollerbach d2d63a8c23 elm: make elm_view_list legacy
so this is not installed, but build.
2018-02-25 16:25:00 +01:00
Marcel Hollerbach af928a84e7 elm_view_list: do not install this
this breaks the eolian database, as it imports files that are not
installed. (namely elm_genlist_item_types)
2018-02-24 20:33:29 +01:00
Marcel Hollerbach 86b4af41c3 elementary: use new bs static lib 2018-02-17 21:17:58 +01:00
Mike Blumenkrantz 7372802c32 Efl.Access.Image: remove the whole class
this is a copy of Efl.Access.Component and serves no purpose
2018-02-15 13:11:00 -05:00
Larry Jr ee0cbdad17 elementary: efl_ui_list change SegArray tree to Efl.Object 2018-02-15 15:08:54 -02:00
Carsten Haitzler bd4e2a9e9d efl - fix build again after removal of install of public header
put elm_code_widget_legacy.eo.h back in the includes to install as it
is required by other public headers...
2018-02-15 18:49:53 +09:00
Lauro Moura 1d48a5b0c8 efl: general distcheck fixes
Summary:
- Added missing C++ header
- Added missing elementary header
- Removed generated header from elementary_SOURCES
  (Was added by raster in 42dfee37)
  Not sure of what would be the best place for it, though.
- Removed previously removed files from elementary examples Makefile.

Test Plan: Run 'make distcheck'

Reviewers: stefan, felipealmeida

Subscribers: cedric

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2018-02-14 12:47:40 -08:00
Sungtaek Hong 73f8b3b78f efl.ui.layout: change signal name for icon/text
Summary:
when set/unset icon and text,
signal "elm,state,[part],visible/hidden" is emitted.
This is wrong because visible/hidden should be handled by
Efl.Gfx.visible, not Efl.Text nor Efl.Content.
This should be changed into elm,state,[part],set/unset"
All relating edc should be fixed.

Test Plan: run elementary_test->button, Efl.Ui.Button

Reviewers: jpeg, cedric, woohyun, Jaehyun_Cho

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2018-02-14 12:47:40 -08:00
WooHyun Jung d679425c48 efl_ui_nstate: make "changed" callback is called properly
- "changed" callback is not called when theme_apply is called
- elm_check_state_set does not call "changed" callback to keep
  backward compatibility
2018-02-13 22:50:14 +09:00
Amitesh Singh c99b37ad47 Efl.Ui.Progressbar: implement range min max 2018-01-31 17:44:20 +09:00
Sungtaek Hong f3d3104a14 elm_test: add elementary_test for Efl.Ui.Button
Test Plan: Run elementary_test->Efl.Ui.Button

Reviewers: jpeg, cedric, Jaehyun_Cho

Reviewed By: jpeg

Subscribers: jsuya

Differential Revision: https://phab.enlightenment.org/D5741
2018-01-30 13:55:52 +09:00
Carsten Haitzler 42dfee3744 elm - fix makefile to install missing header for elm_code 2018-01-24 23:39:03 +09:00
Sungtaek Hong cb25699dac efl_ui_legacy: add new interface to indicate legacy widget
Summary:
For now, how to check whether a widget is legacy or not
is to check flags in private data or static flag, which is set
during elm_legacy_add.
If Efl.Ui.Legacy interface is added, it can be easilly checked
by efl_isa(obj, EFL_UI_LEGACY_INTERFACE)

Reviewers: woohyun, jpeg, cedric, Jaehyun_Cho

Subscribers: conr2d, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5748
2018-01-24 18:14:26 +09:00
Daniel Hirt 4a905a22a4 Canvas image: add Efl.Canvas.Text.Factory + use in Ui.Text
This interface has a simple 'create' method to create Efl.Canvas.Object
given a key.
This is used higher-up in Ui.Text in the next commit.

Ui text: add ability to set item factories

Added API to set an item factory object.
This is similar to the previous item providers (that worked with
callbacks).

You instantiate a factory object and set it on the Ui.Text object.
Each factory implements the "create" method from
Efl.Canvas.Text.Item_Factory.

This also includes 3 public factories (Image, Emoticon and Fallback):
  - Image factory: creates images from added entries (key strings)
  - Emoticon factory: creates emoticons by querying the theme
  - Fallback: creates image, then falls back to emoticon

If no factory is set, then the fallback (internal) factory is used.

See the added "Ui.text Item Factory" test in elementary_test for an
example of usage.

@feature
2018-01-18 10:20:28 -08:00
Yeongjong Lee 210db8fc5d efl_ui_focus: merge efl_ui_focus_user and efl_ui_focus_object into one mixin
Summary:
focus_user and focus_object are similar classes. by merging them into
one mixin, we can maintain consistency.

Test Plan: make check

Reviewers: bu5hm4n

Subscribers: cedric, Jaehyun_Cho, woohyun, jpeg

Differential Revision: https://phab.enlightenment.org/D5734
2018-01-16 22:39:13 +01:00
Thiep Ha e88bbaa1e3 cnp_dnd: make legacy APIs use new interfaces
Legacy APIs can uses efl_selection, efl_ui_dnd, efl_ui_dnd_container interfaces
with helper functions.
2018-01-11 17:56:24 +09:00
Thiep Ha 35339504b0 dnd: add efl_ui_dnd_container
efl_ui_dnd_container is the interface of dnd for container objects.
2018-01-11 17:56:24 +09:00
Thiep Ha e6ab4b41ed dnd: add efl_ui_dnd
Efl_Ui_Dnd is the interface for drag and drop of elm_cnp.
2018-01-11 17:56:24 +09:00
Thiep Ha f191d6821f selection: add efl_selection interface
Efl_Selection is the object interface for selection api of elm_cnp.
It allows get, set, clear, check selection.
2018-01-11 17:56:24 +09:00
Thiep Ha 763daa870e cnp_dnd: add selection manager
Selection manager implements functions for selection (cnp)
and drag and drop.
All objects can uses it APIs. It also supports multi-seat.
2018-01-11 17:56:24 +09:00
Amitesh Singh 44d3227beb widget: rename elm widget to Efl.Ui.Widget. 2018-01-08 21:28:10 +09:00
Carsten Haitzler 5436908d7b try and fix osx build with symbols missing...
try and fix T6448 last comment. not sure if it does...
2017-12-20 17:26:32 +09:00
SangHyeon Lee 0f16a06710 interface : change efl_pack_grid and efl_ui_grid to efl_pack_table and efl_ui_table
Summary:
Change name of 'grid' to 'table' for matching on common ui naming
and avoiding confusion with 'gengrid' and 'grid view'.
grid will be introduced as grid image view after.

Test Plan:
checked make & make install
checked make check - there are errors but not related with these changes.
checked make examples - there are errors in cxx but not related with these changes.
checked make discheck - failed
test in elementary_test with Efl.Ui.Table and Table_static.

Reviewers: raster, cedric, jpeg, felipealmeida

Differential Revision: https://phab.enlightenment.org/D5668
2017-12-19 14:25:08 +09:00
Wonki Kim 47bf356435 scroller: Introducing Efl.Ui.Scroller
Summary:
scrollable widgets had a interface_scrollable as a mixin so that the
widgets had a 'is-a' relation with interface_scrollabe.  however, new
scroller concept don't have 'is-a' relationship, but 'has-a'
relationship.  scrollable widgets should have a scroll manager inside
them, then scroll manager handles event from user and api
implementations.  and also we cut the features such as paging because
there will be aka 'elm_pager'.

we are expecting that the new concept make us to maintain the scroller
easier.  please excuse for many unorganized code and logics. : (

[contained commit]
scrollable: add efl_ui_scroller example
scrollable: refactoring for behavior in case of multiple scroller
scrollable: remove repetitive scrollbar code.
scrollable: combine calculating bounce distance code.
scroll_manager: mouse up function refactoring
scroll_manager: mouse move function refactoring
scroll_manager: warp animator wip
scroll_manager: fix denominator value when calculating flicking behavior.
Fix to disconnect bounce animator once animation is done
gather duplicated animator drop logics
gather duplicated conditions
Rearrange prototypes and append comment
Add manipulate functions for animators
scroll_manager: change member_add function.
scroll_manger: apply mirroring logic
scroll_manager: apply scrollbar
apply API to scroller widget
scroll_manager: apply scroll event callback
Change logics for all about scroll animating
efl_ui_pan: add efl_ui_pan
scrollable:  change content_min_limit to match_content
scroll theme: apply overlapped scrollbar
+ many others!

Reviewers: akanad, woohyun, cedric, jpeg

Subscribers: jenkins, cedric, jpeg

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

Note by @jpeg:
Unfortunately this patch comes in a massive single blob, after too many
rebase operations. It has now come to a point where I think the API is
nice and it works as I'd expect.
Now I only wonder how applicable this will be for Efl.Ui.List. As we can
see Photocam (legacy and unified API) could be transformed to use this
new API.
2017-12-19 10:26:25 +09:00
Sungtaek Hong 25136ddf8c efl_ui_bg: add Efl.Ui.Bg interface
Summary:
- Previous class efl_ui_bg moved to efl_ui_bg_widget.
- Scale_type moved to efl_image from efl_ui_image.
- Previous enum Efl_Ui_Image_Scale_Type moved to Efl_Image_Scale_Type.

Test Plan:
Run elementary_test
1.Image Scale Type
2.Efl.Ui.Bg
3.Efl.Ui.Win
4.Part Background

Reviewers: jpeg, woohyun, cedric

Differential Revision: https://phab.enlightenment.org/D5616
2017-12-18 20:49:45 +09:00
Carsten Haitzler ec2b6e4d67 elementary: fix building agaiunst efl - missing installed headers
yet again a fix needed for something that should have been tested
BEFORE a push. build stuff AGAINST efl. seriously. do you forget to
put your pants on before you leave your home? is it that hard to do
something as simple as BUILD AGAINST EFL before a push if any commit
you did made changes that MIGHT affect that? serousoly? do i have to
remind peolpe to put their pants on? i already have done this several
times recently. thigns that would have been caught by simply building
against efl after changes and before a push. this is a basic thing to
do like putting your pants on. do it.
2017-12-15 03:35:47 +09:00
Jean-Philippe Andre d29f01e5ee tests: Add an example test case for shadows
This is fun.
2017-12-14 20:32:29 +09:00
Jean-Philippe Andre a13e61a37b elm: Add "shadow" part to all widgets
This makes it possible to very easily create drop shadows and glow
effects on any widget. This is absolutely not optimized, though the main
performance bottleneck is that the proxy images get redrawn after just
moving.

@feature
2017-12-14 18:03:49 +09:00
Felipe Magno de Almeida e67d6484b8 efl-cxx: Fixes to make dist 2017-12-13 14:13:09 -02:00
Felipe Magno de Almeida fd92dec358 elementary: Add efl_ui_list widget 2017-12-13 14:13:09 -02:00
Amitesh Singh 57a92a26c9 elm test: add efl.ui.panes test code in separate file. 2017-12-13 16:50:45 +09:00
Amitesh Singh b7419f4069 elm test: Add test for Efl.Ui.Slider 2017-12-12 14:00:53 +09:00
Jean-Philippe Andre 0de20aeafa elm: Rename slider part to part_indicator
This is specific to the indicator.

Fixes T6376
Fixes T5361
2017-12-12 11:14:04 +09:00
Hosang Kim 26272bf3a2 win: apply conformant features.
Summary:
- implement indicator enable/disable
- implement indicator type
- add indicator swallow area to border.edc
- add 'test win indicator' sample

Test Plan: elementary_test -> win_indicator

Reviewers: woohyun, cedric, jpeg

Subscribers: taxi2se, jypark, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5418
2017-12-12 10:53:14 +09:00
Jaehyun Cho c752d8fe6b efl_ui_popup: Make backwall efl part object of Efl.Ui.Popup 2017-11-28 17:15:42 +09:00
Jaehyun Cho f82779efc2 test_ui_popup: Move code for Efl.Ui.Popup classes from test_popup
Code refactoring to replace legacy APIs and move test code for
Efl.Ui.Popup and its sub classes from test_popup to test_ui_popup.
2017-11-28 17:15:42 +09:00
JinYong Park 2b2bc50e8b efl_ui_popup: replace title_set to efl_text_set with efl_part
Summary: Replace Efl.Ui.Popup.Alert's title set method to using efl_text_set with efl_part

Test Plan: elementary_test -to efluipopupalert

Reviewers: jpeg, Jaehyun_Cho, woohyun, herb

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5359
2017-11-28 17:15:42 +09:00
JinYong Park c8c7ac8aae efl_ui_popup_anchor: add Efl.Ui.Popup.Anchor class
Summary:
Add initial code for Efl.Ui.Popup.Anchor class.
It supports adding anchor object to popup.

Test Plan: 1. run elementary_test -to efluipopupanchor

Reviewers: Jaehyun_Cho, thiepha, herb, jpeg, cedric, woohyun

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5126
2017-11-28 17:15:42 +09:00
Taehyub Kim 3dccf133bb efl_ui_popup_alert_text: add Efl.Ui.Popup.Alert.Text Class
Summary:
Add initial code for Efl.Ui.Popup.Alert.Text Class.
It supports setting texts on the content area.

Test Plan: 1. run elementary_text -to efluipopupalerttext

Reviewers: Jaehyun_Cho, jpeg, thiepha, cedric, woohyun, Blackmole

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5124
2017-11-28 17:15:42 +09:00
Taehyub Kim f22d40b1e6 efl_ui_popup_alert_scroll: add Efl.Ui.Popup.Alert.Scroll class
Summary:
Add initial code for Efl.Ui.Popup.Alert.Scroll Class.
It supports scrolling content.

Test Plan: 1. run elementary_test -to efluipopupalertscroll

Reviewers: Jaehyun_Cho, jpeg, thiepha, cedric, Blackmole, woohyun

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5123
2017-11-28 17:15:42 +09:00
Taehyub Kim d3a14d08b0 efl_ui_popup_alert: add Efl.Ui.Popup.Alert class
Summary:
Add initial code for Efl.Ui.Popup.Alert class.
It supports setting title and buttons.

Test Plan: 1. run elementary_test -to efluipopupalert

Reviewers: Jaehyun_Cho, jpeg, cedric, thiepha, Blackmole, woohyun

Differential Revision: https://phab.enlightenment.org/D5108
2017-11-28 17:15:42 +09:00
Taehyub Kim 996a975506 efl_ui_popup: add Efl.Ui.Popup class
Summary: add initial code for Efl.Ui.Popup class

Test Plan: 1. run elementary_test -to efluipopup

Reviewers: Jaehyun_Cho, Blackmole, thiepha, woohyun, cedric

Reviewed By: Jaehyun_Cho

Subscribers: bu5hm4n, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5037
2017-11-28 17:15:42 +09:00
Woochan Lee eefcb49419 efl_ui_spin: Add new spin and spin_button widgets
Summary:
https://phab.enlightenment.org/T5900

Creating base class(efl_ui_spin) to support various shape of spinner.

Added button interaction widget efl_ui_spin_button inherited from efl_ui_spin.

Test Plan: Add tests in elementary_test.

Reviewers: Jaehyun_Cho, woohyun, jpeg, singh.amitesh

Subscribers: jenkins, id213sin, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5424
2017-11-27 19:40:31 +09:00
Sungtaek Hong 3c47a4f9f9 efl_ui_layout: create efl_ui_bg when efl_part for background is called.
Reviewers: woohyun, jpeg, cedric

Subscribers: felipealmeida, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5151
2017-11-24 16:00:22 +09:00
Marcel Hollerbach 738cb8a2bb efl_ui_focus_util: add a util class
the util class is for common code that is just added again and again.
2017-11-17 16:08:14 +01:00
Lukasz Stanislawski c838e30a24 elm: Rename elm_interface_atspi_widget_action mixin
Reviewers: jpeg

Subscribers: jenkins, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5400
2017-11-16 12:00:18 +09:00
Cedric Bail 663e31413a Revert "Revert series of patches from cedric (due to dependencies and conflicts)"
This reverts commit 2cea85db38.

Their was a typo that I made during cleanup of the patch before pushing that I didn't
notice broke some stuff. But also you may have an old efl_general.h in your elementary
directory that is now being picked instead of the one provided by the tree.
2017-11-14 20:08:09 -08:00
Carsten Haitzler 2cea85db38 Revert series of patches from cedric (due to dependencies and conflicts)
Revert "elementary: currently double declare elm_init/shutdown."
This reverts commit 44bb0c1848.
Revert "elementary: fix efl_ui_multibutton installed headers."
This reverts commit 32a213dc72.
Revert "elementary: introduce Efl_Ui.h."
This reverts commit df3d3f7334.
Revert "ecore: do not display error message on cancel."
This reverts commit 99654b7cd2.
Revert "efl: and don't forget to install the new dependencies."
This reverts commit 814ffb9b6b.
Revert "ecore: remove EFL_OBJECT_BETA as Efl_Core.h is for Efl new inerfaces."
This reverts commit 619d0f3cff.
Revert "ecore: move EAPI_MAIN from elementary to ecore."
This reverts commit e5d84da864.

as such commit e5d84da864 starts the
breaking. enlightenment, terminologya and other apps can't compile
against that efl anymore. 619d0f3cff
then makes this even worse with even more header errors and undefined
types. on top of this df3d3f7334 then
starts making elementary_test segfault when it runs. it wont even
start up.

asu such of these 7 commits in the first 4 (that are then relied on
later) 3 of these first 4 cause serious breakage. this simply is a
complete lack of testing changes, so i've rolled fl back to before
these things so it builds and works again and you can build against it.

PLEASE test these things. this looks ot me to be obviously a lack of
any testing... :(
2017-11-15 11:48:55 +09:00
Cedric BAIL 32a213dc72 elementary: fix efl_ui_multibutton installed headers. 2017-11-14 16:53:16 -08:00
Cedric BAIL df3d3f7334 elementary: introduce Efl_Ui.h. 2017-11-14 16:36:17 -08:00
Marcel Hollerbach 53052abaa6 elm_widget_item: refactor logic from gengrid into seperated class 2017-11-11 20:21:56 +01:00
Cedric Bail bd83a76393 ecore: move EFL_MAIN to Efl_Core.h
This make EFL_MAIN available and working with just Ecore. For simplicity
it is available with Efl_Core.h. Ideally it should also work with Efl_Net.h
alone and finally with an Efl_Ui.h.

T6262
2017-11-09 15:13:37 -08:00
Carsten Haitzler a3b1b5d540 efl - fix build after cedric breakage
25b6a280c0 broke the build...
specifically building AGAINST efl.
2017-11-08 15:05:11 +09:00
Amitesh Singh d6c9b37925 Efl.Ui.Slider: implement Slider.part & Ui.format functions
indicator_format_set/get & indicator_format_function_set are
now legacy APIs.
indicator format can be set by using generic Ui.Format function
e.g.
efl_ui_format_string_set(efl_part(sliderObj, "indicator"), "1.0%f");
2017-11-07 17:13:44 +09:00
WooHyun Jung 68b366c831 efl_ui_calendar: apply efl_ui_focus_composition 2017-11-06 16:28:29 +09:00
Jean-Philippe Andre 824792f09d elm: Major cleanup of EO files
This prevents legacy EO classes from being exposed through .eo.h headers
or .eo in share/eolian/includes. Also removes a slew of useless xxx_eo.h
intermediate headers.

Notes:
 - elm_systray has no proper API: it's not clear if the EO API should be
   released (in which case it needs to be renamed to efl_something) and
   there is no legacy API to create a systray object.
 - Some files have been placed in a "FIXME" section, as I believe they
   are necessary within EO land, but at the same time still don't
   conform to the interfaces (eg. name starts with elm_).
 - elm_interface_scrollable is required by photocam. This means photocam
   needs to be adapted to fit the EO scroller API (still to be
   completed, I believe).

Bugs:
 - This breaks most C++ examples. I KNOW. And I'm working on it.

Ref T5301
2017-11-01 21:23:31 +09:00
WooHyun Jung 02f179628c efl_ui_calendar: apply new format_cb 2017-10-31 11:21:15 +09:00
WooHyun Jung 9442f4687c efl_ui_calendar: create new efl_ui_calendar
Summary:
This calendar widget will support basic functionality of calendar.
I've separated this widget from elm_calendar since elm_calendar had
lots of unuseful things inside.

Reviewers: jpeg, singh.amitesh, cedric, CHAN, Jaehyun_Cho

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5346
2017-10-25 16:50:01 +09:00
Woochan Lee 6c3bc915df elm: rename elm_multibuttonentry to Efl.Ui.Multibuttonentry
Summary: @ref T5358

Reviewers: woohyun, jpeg, cedric, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: Jaehyun, bu5hm4n, cedric, jpeg

Maniphest Tasks: T5358

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

JP's note:
MBE currently has quite a few issues, probably related to focus
handling. This needs to be fixed.
2017-10-24 16:20:09 +09:00
smohanty ba3afc74a8 elementary_test: Added gesture_framework test to the elementary test suit. 2017-10-19 10:33:12 +09:00
Lukasz Stanislawski 57aefc53c1 elm: rename Elm_Interface_Atspi_Accessible interface
Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5341
2017-10-19 10:13:54 +09:00
Jean-Philippe Andre 315e865f18 elm: Split elm_general.eot in two: legacy and EO
This creates efl_ui.eot
It's not called efl_ui_types.eot because a file with that name already
exists in efl/interfaces (for Efl.Ui.Drag functions).

Also add some FIXME comments, and move some types to elm_widget_item.eo.

Ref T5329
2017-10-18 19:24:28 +09:00
Marcel Hollerbach 18194f343e elm_gengrid: implement item-content-focus
#finally

For now we focus the widgets of a item, the item content can be cycled
by tab / Ctrl + tab. up/down/right/left are for now handled by gengrid
and move the focused item (everything else feels super weird with
multiple contents in a item)

ref T6181
2017-10-16 19:51:38 +02:00
Marcel Hollerbach 75f5ea686f efl_ui_focus: add parent_provider
thats just a little helper, where the logic to find and fetch the
provider is bound to the position in the widget tree, this means that
for example gengrid could change the way the logical parent is
evalulated. (For example to map the logical parent to a item)
2017-10-13 12:31:47 +02:00
Jaehyun Cho 39cc542d7f efl_animation: Add interpolator property
Interpolator property is added to apply interpolation function.
2017-10-12 21:03:49 +09:00
Jaehyun Cho 595f47e202 efl_animation: Add start_delay property
Add start_delay property to delay the given amount of time in seconds
from when the animation starts until the animation is animated.
2017-10-12 21:03:49 +09:00
Jaehyun Cho 108994d383 efl_animation: Add repeat_count property 2017-10-12 21:03:49 +09:00
Jaehyun Cho 87a14507b2 efl_animation: Add pause and resume methods
Add target_map_reset method to fix flicking issue when animation is
paused and resumed.
2017-10-12 21:03:49 +09:00
Jaehyun Cho a6e03da5f0 efl_animation: Support event animation
Register an animation for an event.
Start the animation when the event happens.
2017-10-12 21:03:49 +09:00
Jaehyun Cho 4112a68e32 efl_animation: Add sequential group animation and object
Efl.Animation.Group.Sequential is a class for animations started in
sequence.
Efl.Animation.Object.Group.Sequential is a class which provides
methods for an object of Efl.Animation.Group.Sequential.
The objects added into the sequential group animation object start
in sequence.
2017-10-12 21:03:49 +09:00
Jaehyun Cho 923a5b02eb efl_animation: Add parallel group animation and object
Efl.Animation.Group.Parallel is a class for animations started in
parallel.
Efl.Animation.Object.Group.Parallel is a class which provides methods
for an object of Efl.Animation.Group.Parallel.
The objects added into the parallel group animation object start in
parallel.
2017-10-12 21:03:49 +09:00
Jaehyun Cho 5a1147d643 efl_animation: Add translate animation object 2017-10-12 21:03:49 +09:00
Jaehyun Cho 5540520846 efl_animation: Add scale animation object 2017-10-12 21:03:49 +09:00
Jaehyun Cho 29917e4e91 efl_animation: Add rotate animation object 2017-10-12 21:03:49 +09:00
Jaehyun Cho 58dd0bebaa efl_animation: Add alpha animation object 2017-10-12 21:03:49 +09:00
Marcel Hollerbach ca95995db2 elm: fix compilation of examples
We need to install efl.ui.focus.composition and efl.ui.focus.layer
2017-10-11 09:51:33 +02:00
Marcel Hollerbach 911ad8a022 elm_calendar: migrate to composition! 2017-10-10 19:28:47 +02:00
Marcel Hollerbach 35a01340d3 introduce efl_ui_focus_composition!
It does what the class description tells
2017-10-10 19:28:47 +02:00
Marcel Hollerbach 7a86e23642 efl_ui_Focus_manager_root_focus: add focus rectangle
the focus rectangle is basically just a normal efl.canvas.rectangle, but
with the focus interface implemented.

This fixes alot of errors which gets called when the root_focus manager
is used, with the submanager as mixin.
2017-10-10 19:28:47 +02:00
Marcel Hollerbach 6ba107b899 elm: introduce efl_ui_focus_layer
what it does is described in the mixin

this commit refactors inwin hover popup ctxpopup to use that behaviour.
Since it should do exactly that.
2017-10-10 19:28:47 +02:00
Amitesh Singh 92eb5d1962 elm test: rename test_slider_interval.c to test_ui_slider_interval.c 2017-09-29 13:37:56 +09:00
Jean-Philippe Andre 7cc23b1754 elm: win part EO files are public 2017-09-26 22:00:02 +09:00
Jean-Philippe Andre 15f0614e6f elm: Fix make distcheck
See ebff5e8639
2017-09-26 22:00:02 +09:00
Sungtaek Hong ebff5e8639 elm_bg: rename elm_bg to Efl.Ui.Bg
Summary:
elm_bg was supposed to be used only in legacy,
but since we need a common object to be used as a background of widgets,
it is now renamed as efl_ui_bg and supports EO APIs.

Reviewers: cedric, jpeg, woohyun

Differential Revision: https://phab.enlightenment.org/D5147
2017-09-26 17:58:07 +09:00
Lukasz Stanislawski b3ffd78237 elm: rename Elm.Interface.Atspi.Text => Efl.Access.Text
Reviewers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5167
2017-09-26 17:58:07 +09:00
Jean-Philippe Andre 839c4ed395 elm: Introduce interface Efl.Ui.Translatable
This will be used to replace the part translation API in Elm.Widget. It
should work for both parts and non-parts (ie. the main text of a button,
for instance).

For now I'm taking the following approach:
 - All efl_text_set/get strings are untranslatable, i.e. get() returns
   the visible string, set replaces and can not be translated.
 - translatable_text_set/get needs to be used to enable automatic
   translation, which in turns calls efl_text_set to modify the visible
   string. Thus, translatable applications will have to use
   efl_ui_translatable_text_set a lot more than efl_text_set, unless
   they translate strings application-side.

Note that some other frameworks take a simpler approach equivalent to
calling efl_text_set() with an already translated text. This prevents
runtime language changes of the application, unless the application
handles them specifically.
2017-09-26 17:58:07 +09:00
Jean-Philippe Andre 1c207058ba elm: Remove eo.h header from Makefile
Fixes make distcheck
2017-09-21 12:28:20 +09:00
Jean-Philippe Andre 112edeeea8 elm: Remove range "span_size" API in EO
Reasons:
 - This API has been confused with the min size of the widget, resulting
   in badly laid out applications.
 - The EO API was not very nice (Range is about numbers, the Gfx size
   hint in a part is really ugly).

While I understand the value of this API and how it can be used in
scalable applications, it is in fact not absolutely necessary.
Alternatively to that span size, the widget min size can already be
defined from the application side, or the widget can simply be expanded
to fill in its parent.

This can obviously be reinstated later if the need arises for EO. For
now, keep this feature as legacy-only.
2017-09-21 12:27:34 +09:00
Jean-Philippe Andre 28b387821d elm: Split off text and content for efl_part
This is VERY tricky.
For legacy, just create an internal class that has both. It's easier
this way. For parts that are handled by Layout directly, we know from
Edje which type to return.

For EO objects we should know from the part name which kind of part we
are dealing with:
 - text (overridden by the widget)
 - content (overridden by the widget)
 - special (new efl_part based functions)
 - generic (handled by Layout)

Note: Efl.Ui.Slider was handling "span size" on ALL parts. That's bad...
This is now limited to "span" only.
2017-09-21 12:27:34 +09:00
Jean-Philippe Andre 0339ad7740 elm: Move base implementation for efl_part in widget
This means that ALL part handles inherit from the base part class
Efl.Ui.Widget.Part. Layout is the only exception where Efl.Part is
specially overridden.

This is a first step towards generic part APIs, including background in
all widgets.
2017-09-21 12:27:33 +09:00
Daniel Hirt 1a854d892f Ui text: add Efl.Ui.Text_Async object
Adds "Efl.Ui.Text_Async" object.
This new widget uses the "async_layout" functionality of the underlying
Efl.Canvas.Text object.

Currently, if "editable" mode is enabled, there is no asynchronous
layout, as interactive operations (e.g. typing) should get processed
immediately. Thus, only "non-editable" instructs the text object to do
asynchronous layout.

@feature
2017-09-20 14:50:09 +03:00
Lukasz Stanislawski fcbdea364e elm: rename Elm.Interface.Atspi_Action => Efl.Access.Action
Reviewers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5166
2017-09-19 11:36:28 +09:00
Lukasz Stanislawski 3e6cc83369 elm: rename Elm.Interface.Atspi.Selection => Efl.Access.Selection
Reviewers: jpeg, cedric

Differential Revision: https://phab.enlightenment.org/D5165
2017-09-19 11:18:22 +09:00
Jean-Philippe Andre d5a31f3f30 edje/elm: Rename _internal_ to _part_ (EO)
In Edje and Elementary, we have part objects, which are what is returned
by the interface efl_part(). Those objects can't be of an opaque type as
this doesn't work nicely with strongly typed languages such as C++ or
C#. In JS, Lua, C the types are weak and mostly runtime-based so it
doesn't matter much.

As a consequence, the documentation and the types need to look nice in
this EO API. Thus, we remove the abusive term "internal" and explicitly
call all those classes "part" something.

Eventually we want the types to be declared in the EO file so bindings
(C#, C++, ...) can generate the proper access methods, returning the
best possible types.

Note that right now a few of those part types are used in the legacy API
but don't actually need to be exposed externally.

This is kind of a mega commit that does all the renaming at once, but
it's really just a big sed operation. The power of good IDEs :)

Ref T5315
Ref T5306
2017-09-13 13:53:49 +09:00
Amitesh Singh 9348094220 interval slider: Add new interval slider widget
This widget is a slider with two indicators which allows
to have interval of value.
2017-09-12 18:08:42 +09:00
Lukasz Stanislawski 9cf8e75668 elm: rename Elm.Interface.Atspi.Component => Efl.Access.Component
Reviewers: jpeg, cedric

Differential Revision: https://phab.enlightenment.org/D5164
2017-09-12 15:49:29 +09:00
Lukasz Stanislawski a55f2c96d4 elm: rename Elm.Interface.Atspi.Image => Efl.Access.Image
Reviewers: jpeg, cedric

Differential Revision: https://phab.enlightenment.org/D5163
2017-09-12 15:48:39 +09:00
Lukasz Stanislawski dfd17229fd elm: rename Elm.Interface.Atspi.Window => Efl.Access.Window
Reviewers: cedric, jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5162
2017-09-12 15:48:10 +09:00