efl: add a Efl.Model_Provider that every widget will look up for in their parent...
authorCedric BAIL <cedric.bail@free.fr>
Thu, 11 Jul 2019 01:03:46 +0000 (18:03 -0700)
committerSangHyeon Jade Lee <sh10233.lee@samsung.com>
Tue, 23 Jul 2019 05:02:34 +0000 (14:02 +0900)
commit9ba9932a05f8cfe33696cdd715406004e4b81c20
tree89d64b4c5fac56e3a396cf78b0b1c22568116879
parent96f0ee5a2002af4e093bb1082880c9f942e08665
efl: add a Efl.Model_Provider that every widget will look up for in their parent tree.

This is done to simplify code as you only need to set the model on the
provider and all the widget that are using it as a provider will automatically be
updated. The child will find a provider during at the time the first property binding
is set on the widget by checking if the parent have an Efl.Model_Provider set. It is
not necessary to set a model to have a valid lookup on a Efl.Model_Provider. To disable
a widget lookup, you can just force set a model on it (even NULL) and it will disable
the lookup.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9290
src/lib/efl/Efl.h
src/lib/efl/interfaces/efl_model_provider.c [new file with mode: 0644]
src/lib/efl/interfaces/efl_model_provider.eo [new file with mode: 0644]
src/lib/efl/interfaces/meson.build
src/lib/elementary/efl_ui_widget.c
src/lib/elementary/elm_widget.h