Page MenuHomePhabricator

elementary: add an interface for asynchronous multi selection.
ClosedPublic

Authored by cedric on Sep 15 2019, 11:39 PM.

Details

Summary

This interface is currently focusing on being use by widget like
Efl.Ui.Collection_View or Efl.Ui.Select_Model. I have decided that
it should not be available along with Efl.Ui.Multi_Selectable.

Depends on D9956

Diff Detail

Repository
rEFL core/efl
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
cedric created this revision.Sep 15 2019, 11:39 PM

@SanghyeonLee can you take a look at this one ?

segfaultxavi added inline comments.Sep 16 2019, 4:32 AM
src/lib/elementary/efl_ui_multi_selectable_async.eo
6

Interface for getting access to a range of selected items for widgets that provide them asynchronously.

8

Better use @Efl.Ui.Selectable than just Selectables, no?

28

Use $a and $b instead of a and b, for clarity (and don't miss any!).

29

the range of the widget.

zmike requested changes to this revision.Sep 16 2019, 6:50 AM

minor nit

src/lib/elementary/efl_ui_select_model.c
570

Shouldn't this leave the last-selected item still selected?

This revision now requires changes to proceed.Sep 16 2019, 6:50 AM
SanghyeonLee requested changes to this revision.Sep 16 2019, 9:21 PM

selected_get collide in mono as it has same name GetSelected for interator and boolean(though I don't know why function overloading is not working on this case...)

we already have selected_items_get for iterator of selected children,
so I think simply we remove selected_get on the select_model,
and change name unselected_get to unselected_items_get for unity of method.

SanghyeonLee added inline comments.Sep 16 2019, 10:06 PM
src/lib/elementary/efl_ui_multi_selectable_async.eo
34

I think... the range is common feature that can used everywhere,
rather than repeat same history of size/position/rect,
what about declair eina_range for double and int?

the necessity of Eina.Range structure is,
normal input a, b integer only can support range between a, b,
but if we have Eina.Range structure,
this could be extended series of Range like, a to b & c to d & e to f ....

though I think it may hard to implement this on our release... so then we have to compromise current way..

cedric updated this revision to Diff 25200.Sep 19 2019, 1:16 PM
cedric edited the summary of this revision. (Show Details)

rebase and take comment into account

bu5hm4n requested changes to this revision.Fri, Sep 20, 12:56 AM

This needs rebase. SINGLE_ALWAYS is not there anymore.

This revision now requires changes to proceed.Fri, Sep 20, 12:56 AM
cedric updated this revision to Diff 25290.Fri, Sep 20, 3:24 PM

phab!!!

Still ... using ... EFL_UI_SELECT_MODE_SINGLE_ALWAYS ... (which is not there anymore)

cedric updated this revision to Diff 25417.Mon, Sep 23, 4:14 PM

rebase and take comments into account

This revision was not accepted when it landed; it landed in state Needs Review.Tue, Sep 24, 11:13 AM
This revision was automatically updated to reflect the committed changes.