HomePhabricator

efl_ui_multi_selectable: clean this up

Authored by Marcel Hollerbach <mail@marcel-hollerbach.de> on Nov 20 2019, 4:36 AM.

Description

efl_ui_multi_selectable: clean this up

this commit merges common functions from efl_ui_multi_selectable and
efl_ui_multi_selectable_async. Additionally, the two different aspects
of accessing the elements in a multi_selectable widget (numerical or
object based) are now abstracted into interfaces called range_numeric and
range_object. numeric APIs are also prefixed with id's, so its possible
for one widget to implement both (if there will ever be the demand to do
that in future).

The main reason for this split is:

  • there is no good common path between mvvm based multi_selectable and

object based multi_Selectable, so there is no way that both sides would
benefit, without the other one suffering.

  • If we find later on the demand to implement both on one widget, we now

can fully do that

  • Common API is available for both types, so its less API and less

confusion for the API user.

ref T7871
ref T8265

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10675

Marcel Hollerbach <mail@marcel-hollerbach.de> committed rEFLf7868fd28cfc: efl_ui_multi_selectable: clean this up (authored by Marcel Hollerbach <mail@marcel-hollerbach.de>).Nov 25 2019, 4:31 AM