efl_ui_position_manager: refactor data access
authorMarcel Hollerbach <mail@marcel-hollerbach.de>
Tue, 27 Aug 2019 11:35:33 +0000 (13:35 +0200)
committerHosang Kim <hosang12.kim@samsung.com>
Wed, 28 Aug 2019 05:05:04 +0000 (14:05 +0900)
commit6f10b6799aaaf650e0b63f97bd6c69413747803b
tree2bc73f28137ad9ab31c4e103cd4d9e9581709d81
parent30bb3c14fccd1cbe6283a523ef80d2026cb2561f
efl_ui_position_manager: refactor data access

before data access has been a property on
Efl.Ui.Position_Manager.Entity. However, we are not sure how stable all
this will be, and maybe we have the demand to change that in future, in
order to allow more high-performance item passing here.

Additionally, this patch addresses a few lectures learned from the past,
that includes:
- direct group header filling.
- direct group sizing
- difference between size for caching, and size for displaying
- Have a end_id which is the maximum of id that is filled.

ref T8179

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9754
12 files changed:
src/lib/elementary/Efl_Ui.h
src/lib/elementary/efl_ui_collection.c
src/lib/elementary/efl_ui_position_manager_common.h
src/lib/elementary/efl_ui_position_manager_data_access_v1.eo [new file with mode: 0644]
src/lib/elementary/efl_ui_position_manager_entity.c
src/lib/elementary/efl_ui_position_manager_entity.eo
src/lib/elementary/efl_ui_position_manager_grid.c
src/lib/elementary/efl_ui_position_manager_grid.eo
src/lib/elementary/efl_ui_position_manager_list.c
src/lib/elementary/efl_ui_position_manager_list.eo
src/lib/elementary/meson.build
src/tests/elementary/efl_ui_test_position_manager_common.c