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
This commit is contained in:
SangHyeon Lee 2018-04-04 19:04:43 +09:00
parent 39739ba333
commit ae8df9ba07
21 changed files with 489 additions and 489 deletions

View File

@ -1,4 +1,4 @@
group { "efl/list"; group { "efl/view_list";
inherit: "elm/list/base/default"; inherit: "elm/list/base/default";
} }

View File

@ -70,11 +70,11 @@ elm_public_eolian_files = \
lib/elementary/efl_ui_layout_part_table.eo \ lib/elementary/efl_ui_layout_part_table.eo \
lib/elementary/efl_ui_layout_part_bg.eo \ lib/elementary/efl_ui_layout_part_bg.eo \
lib/elementary/efl_ui_layout_part_legacy.eo \ lib/elementary/efl_ui_layout_part_legacy.eo \
lib/elementary/efl_ui_list.eo \ lib/elementary/efl_ui_view_list.eo \
lib/elementary/efl_ui_list_model.eo \ lib/elementary/efl_ui_view_list_model.eo \
lib/elementary/efl_ui_list_pan.eo \ lib/elementary/efl_ui_view_list_pan.eo \
lib/elementary/efl_ui_list_segarray.eo \ lib/elementary/efl_ui_view_list_segarray.eo \
lib/elementary/efl_ui_list_relayout.eo \ lib/elementary/efl_ui_view_list_relayout.eo \
lib/elementary/efl_ui_multibuttonentry_part.eo \ lib/elementary/efl_ui_multibuttonentry_part.eo \
lib/elementary/efl_ui_panes_part.eo \ lib/elementary/efl_ui_panes_part.eo \
lib/elementary/efl_ui_progressbar_part.eo \ lib/elementary/efl_ui_progressbar_part.eo \
@ -246,13 +246,13 @@ elm_legacy_eolian_files = \
lib/elementary/elm_slideshow_item.eo \ lib/elementary/elm_slideshow_item.eo \
lib/elementary/elm_table.eo \ lib/elementary/elm_table.eo \
lib/elementary/elm_thumb.eo \ lib/elementary/elm_thumb.eo \
lib/elementary/efl_ui_list_precise_layouter.eo \ lib/elementary/efl_ui_view_list_precise_layouter.eo \
$(NULL) $(NULL)
elm_eolian_type_files = \ elm_eolian_type_files = \
lib/elementary/elm_general.eot \ lib/elementary/elm_general.eot \
lib/elementary/efl_ui.eot \ lib/elementary/efl_ui.eot \
lib/elementary/efl_ui_list_types.eot \ lib/elementary/efl_ui_view_list_types.eot \
lib/elementary/efl_selection_types.eot \ lib/elementary/efl_selection_types.eot \
lib/elementary/efl_ui_dnd_types.eot lib/elementary/efl_ui_dnd_types.eot
@ -373,8 +373,8 @@ includesunstable_HEADERS = \
lib/elementary/elm_widget_thumb.h \ lib/elementary/elm_widget_thumb.h \
lib/elementary/elm_widget_toolbar.h \ lib/elementary/elm_widget_toolbar.h \
lib/elementary/efl_ui_video_private.h \ lib/elementary/efl_ui_video_private.h \
lib/elementary/efl_ui_list_private.h \ lib/elementary/efl_ui_view_list_private.h \
lib/elementary/efl_ui_list_segarray.h \ lib/elementary/efl_ui_view_list_segarray.h \
lib/elementary/elm_widget_web.h \ lib/elementary/elm_widget_web.h \
lib/elementary/efl_ui_clock.h \ lib/elementary/efl_ui_clock.h \
lib/elementary/elm_code.h \ lib/elementary/elm_code.h \
@ -781,9 +781,9 @@ lib_elementary_libelementary_la_SOURCES = \
lib/elementary/efl_ui_focus_parent_provider_gen.c \ lib/elementary/efl_ui_focus_parent_provider_gen.c \
lib/elementary/efl_ui_focus_util.c \ lib/elementary/efl_ui_focus_util.c \
lib/elementary/elm_widget_item_static_focus.c \ lib/elementary/elm_widget_item_static_focus.c \
lib/elementary/efl_ui_list.c \ lib/elementary/efl_ui_view_list.c \
lib/elementary/efl_ui_list_precise_layouter.c \ lib/elementary/efl_ui_view_list_precise_layouter.c \
lib/elementary/efl_ui_list_segarray.c \ lib/elementary/efl_ui_view_list_segarray.c \
lib/elementary/efl_ui_layout_factory.c \ lib/elementary/efl_ui_layout_factory.c \
lib/elementary/efl_ui_scroller.c \ lib/elementary/efl_ui_scroller.c \
lib/elementary/efl_ui_scroll_manager.c \ lib/elementary/efl_ui_scroll_manager.c \

View File

@ -1,4 +1,4 @@
// gcc -o efl_ui_list_example_1 efl_ui_list_example_1.c `pkg-config --cflags --libs elementary` // gcc -o efl_ui_view_list_example_1 efl_ui_view_list_example_1.c `pkg-config --cflags --libs elementary`
#ifdef HAVE_CONFIG_H #ifdef HAVE_CONFIG_H
# include "elementary_config.h" # include "elementary_config.h"
@ -24,7 +24,7 @@ char edj_path[PATH_MAX];
static void static void
_realized_cb(void *data, const Efl_Event *event) _realized_cb(void *data, const Efl_Event *event)
{ {
Efl_Ui_List_Item_Event *ie = event->info; Efl_Ui_View_List_Item_Event *ie = event->info;
if (!ie->layout) return; if (!ie->layout) return;
Efl_Ui_Layout *layout = ie->layout; Efl_Ui_Layout *layout = ie->layout;
@ -35,7 +35,7 @@ _realized_cb(void *data, const Efl_Event *event)
static void static void
_unrealized_cb(void *data EINA_UNUSED, const Efl_Event *event) _unrealized_cb(void *data EINA_UNUSED, const Efl_Event *event)
{ {
Efl_Ui_List_Item_Event *ie = event->info; Efl_Ui_View_List_Item_Event *ie = event->info;
efl_ui_view_model_set(ie->layout, NULL); efl_ui_view_model_set(ie->layout, NULL);
efl_del(ie->layout); efl_del(ie->layout);
@ -87,13 +87,13 @@ elm_main(int argc, char **argv)
efl_ui_model_connect(factory, "elm.text", "name"); efl_ui_model_connect(factory, "elm.text", "name");
efl_ui_layout_factory_theme_config(factory, "list", "item", "default"); efl_ui_layout_factory_theme_config(factory, "list", "item", "default");
li = efl_add(EFL_UI_LIST_CLASS, win); li = efl_add(EFL_UI_VIEW_LIST_CLASS, win);
efl_ui_list_layout_factory_set(li, factory); efl_ui_view_list_layout_factory_set(li, factory);
efl_ui_view_model_set(li, model); efl_ui_view_model_set(li, model);
elm_box_pack_end(bx, li); elm_box_pack_end(bx, li);
efl_event_callback_add(li, EFL_UI_LIST_EVENT_ITEM_REALIZED, _realized_cb, NULL); efl_event_callback_add(li, EFL_UI_VIEW_LIST_EVENT_ITEM_REALIZED, _realized_cb, NULL);
// efl_event_callback_add(li, EFL_UI_LIST_EVENT_ITEM_UNREALIZED, _unrealized_cb, NULL); // efl_event_callback_add(li, EFL_UI_VIEW_LIST_EVENT_ITEM_UNREALIZED, _unrealized_cb, NULL);
elm_win_resize_object_add(win, li); elm_win_resize_object_add(win, li);
evas_object_size_hint_weight_set(li, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_weight_set(li, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);

View File

@ -1,4 +1,4 @@
// gcc -o efl_ui_list_example_2 efl_ui_list_example_2.c `pkg-config --cflags --libs elementary` // gcc -o efl_ui_view_list_example_2 efl_ui_view_list_example_2.c `pkg-config --cflags --libs elementary`
#ifdef HAVE_CONFIG_H #ifdef HAVE_CONFIG_H
# include "config.h" # include "config.h"
@ -17,7 +17,7 @@
static void static void
_realized_cb(void *data, const Efl_Event *event) _realized_cb(void *data, const Efl_Event *event)
{ {
Efl_Ui_List_Item_Event *ie = event->info; Efl_Ui_View_List_Item_Event *ie = event->info;
Eo *imf = data; Eo *imf = data;
printf("realize %d\n", ie->index); printf("realize %d\n", ie->index);
@ -48,8 +48,8 @@ elm_main(int argc, char **argv)
efl_ui_model_connect(factory, "elm.text", "filename"); efl_ui_model_connect(factory, "elm.text", "filename");
efl_ui_layout_factory_theme_config(factory, "list", "item", "default"); efl_ui_layout_factory_theme_config(factory, "list", "item", "default");
li = efl_add(EFL_UI_LIST_CLASS, win); li = efl_add(EFL_UI_VIEW_LIST_CLASS, win);
efl_ui_list_layout_factory_set(li, factory); efl_ui_view_list_layout_factory_set(li, factory);
efl_ui_view_model_set(li, model); efl_ui_view_model_set(li, model);
evas_object_size_hint_weight_set(li, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_weight_set(li, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
@ -58,7 +58,7 @@ elm_main(int argc, char **argv)
imf = efl_add(EFL_UI_IMAGE_FACTORY_CLASS, win); imf = efl_add(EFL_UI_IMAGE_FACTORY_CLASS, win);
efl_ui_model_connect(imf, "", "path"); //connect to "path" property efl_ui_model_connect(imf, "", "path"); //connect to "path" property
efl_event_callback_add(li, EFL_UI_LIST_EVENT_ITEM_REALIZED, _realized_cb, imf); efl_event_callback_add(li, EFL_UI_VIEW_LIST_EVENT_ITEM_REALIZED, _realized_cb, imf);
elm_win_resize_object_add(win, li); elm_win_resize_object_add(win, li);

View File

@ -1,4 +1,4 @@
// gcc -o efl_ui_list_example_3 efl_ui_list_example_3.c `pkg-config --cflags --libs elementary` // gcc -o efl_ui_view_list_example_3 efl_ui_view_list_example_3.c `pkg-config --cflags --libs elementary`
#ifdef HAVE_CONFIG_H #ifdef HAVE_CONFIG_H
# include "config.h" # include "config.h"
@ -113,21 +113,21 @@ static void
_bt_none_clicked(void *data, Evas_Object *obj, void *event_info EINA_UNUSED) _bt_none_clicked(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
{ {
Evas_Object *li = data; Evas_Object *li = data;
efl_ui_list_select_mode_set(li, ELM_OBJECT_SELECT_MODE_NONE); efl_ui_view_list_select_mode_set(li, ELM_OBJECT_SELECT_MODE_NONE);
} }
static void static void
_bt_donly_clicked(void *data, Evas_Object *obj, void *event_info EINA_UNUSED) _bt_donly_clicked(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
{ {
Evas_Object *li = data; Evas_Object *li = data;
efl_ui_list_select_mode_set(li, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY); efl_ui_view_list_select_mode_set(li, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
} }
static void static void
_bt_default_clicked(void *data, Evas_Object *obj, void *event_info EINA_UNUSED) _bt_default_clicked(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
{ {
Evas_Object *li = data; Evas_Object *li = data;
efl_ui_list_select_mode_set(li, ELM_OBJECT_SELECT_MODE_DEFAULT); efl_ui_view_list_select_mode_set(li, ELM_OBJECT_SELECT_MODE_DEFAULT);
} }
static void static void
@ -146,7 +146,7 @@ _bt_unset_clicked(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
static void static void
_realized_1_cb(void *data EINA_UNUSED, const Efl_Event *event) _realized_1_cb(void *data EINA_UNUSED, const Efl_Event *event)
{ {
Efl_Ui_List_Item_Event *ie = event->info; Efl_Ui_View_List_Item_Event *ie = event->info;
evas_object_size_hint_weight_set(ie->layout, EVAS_HINT_EXPAND, 0); evas_object_size_hint_weight_set(ie->layout, EVAS_HINT_EXPAND, 0);
evas_object_size_hint_align_set(ie->layout, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_size_hint_align_set(ie->layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
@ -157,7 +157,7 @@ _realized_1_cb(void *data EINA_UNUSED, const Efl_Event *event)
static void static void
_realized_2_cb(void *data EINA_UNUSED, const Efl_Event *event) _realized_2_cb(void *data EINA_UNUSED, const Efl_Event *event)
{ {
Efl_Ui_List_Item_Event *ie = event->info; Efl_Ui_View_List_Item_Event *ie = event->info;
printf("relized 2\n"); printf("relized 2\n");
elm_object_focus_allow_set(ie->layout, EINA_TRUE); elm_object_focus_allow_set(ie->layout, EINA_TRUE);
@ -225,22 +225,22 @@ elm_main(int argc, char **argv)
efl_ui_model_connect(factory, "elm.text", "filename"); efl_ui_model_connect(factory, "elm.text", "filename");
efl_ui_layout_factory_theme_config(factory, "list", "item", "default"); efl_ui_layout_factory_theme_config(factory, "list", "item", "default");
priv->list1 = efl_add(EFL_UI_LIST_CLASS, win, efl_ui_view_model_set(efl_added, priv->model)); priv->list1 = efl_add(EFL_UI_VIEW_LIST_CLASS, win, efl_ui_view_model_set(efl_added, priv->model));
efl_event_callback_add(priv->list1, EFL_UI_LIST_EVENT_ITEM_REALIZED, _realized_1_cb, priv); efl_event_callback_add(priv->list1, EFL_UI_VIEW_LIST_EVENT_ITEM_REALIZED, _realized_1_cb, priv);
evas_object_size_hint_weight_set(priv->list1, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_weight_set(priv->list1, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(priv->list1, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_size_hint_align_set(priv->list1, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_box_pack_end(bx, priv->list1); elm_box_pack_end(bx, priv->list1);
efl_ui_list_layout_factory_set(priv->list1, factory); efl_ui_view_list_layout_factory_set(priv->list1, factory);
factory = efl_add(EFL_UI_LAYOUT_FACTORY_CLASS, win); factory = efl_add(EFL_UI_LAYOUT_FACTORY_CLASS, win);
efl_ui_model_connect(factory, "elm.text", "filename"); efl_ui_model_connect(factory, "elm.text", "filename");
efl_ui_model_connect(factory, "signal/elm,state,%v", "selected"); efl_ui_model_connect(factory, "signal/elm,state,%v", "selected");
efl_ui_layout_factory_theme_config(factory, "list", "item", "default"); efl_ui_layout_factory_theme_config(factory, "list", "item", "default");
priv->list2 = efl_add(EFL_UI_LIST_CLASS, win, efl_ui_view_model_set(efl_added, priv->model)); priv->list2 = efl_add(EFL_UI_VIEW_LIST_CLASS, win, efl_ui_view_model_set(efl_added, priv->model));
efl_event_callback_add(priv->list2, EFL_UI_LIST_EVENT_ITEM_REALIZED, _realized_2_cb, priv->list2); efl_event_callback_add(priv->list2, EFL_UI_VIEW_LIST_EVENT_ITEM_REALIZED, _realized_2_cb, priv->list2);
evas_object_size_hint_weight_set(priv->list2, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_weight_set(priv->list2, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(priv->list2, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_size_hint_align_set(priv->list2, EVAS_HINT_FILL, EVAS_HINT_FILL);
efl_ui_list_layout_factory_set(priv->list2, factory); efl_ui_view_list_layout_factory_set(priv->list2, factory);
vbx = elm_box_add(win); vbx = elm_box_add(win);
elm_box_pack_end(bx, vbx); elm_box_pack_end(bx, vbx);

View File

@ -321,13 +321,13 @@ typedef Eo Efl_Ui_Focus_Manager;
# include <efl_ui_image_factory.eo.h> # include <efl_ui_image_factory.eo.h>
# include <efl_ui_slider_interval.eo.h> # include <efl_ui_slider_interval.eo.h>
# include <efl_ui_layout_factory.eo.h> # include <efl_ui_layout_factory.eo.h>
# include <efl_ui_list_types.eot.h> # include <efl_ui_view_list_types.eot.h>
# include <efl_ui_list_segarray.h> # include <efl_ui_view_list_segarray.h>
# include <efl_ui_list_segarray.eo.h> # include <efl_ui_view_list_segarray.eo.h>
# include <efl_ui_list_model.eo.h> # include <efl_ui_view_list_model.eo.h>
# include <efl_ui_list_relayout.eo.h> # include <efl_ui_view_list_relayout.eo.h>
# include <efl_ui_list.eo.h> # include <efl_ui_view_list.eo.h>
# include <efl_ui_list_pan.eo.h> # include <efl_ui_view_list_pan.eo.h>
# include <efl_ui_scroll_manager.eo.h> # include <efl_ui_scroll_manager.eo.h>
# include <efl_ui_scroller.eo.h> # include <efl_ui_scroller.eo.h>
# include <efl_ui_dnd_types.eot.h> # include <efl_ui_dnd_types.eot.h>

View File

@ -1,9 +0,0 @@
class Efl.Ui.List.Precise_Layouter (Efl.Object, Efl.Ui.List.Relayout)
{
implements {
Efl.Object.constructor;
Efl.Ui.List.Relayout.layout_do;
Efl.Ui.List.Relayout.model { set; }
Efl.Ui.List.Relayout.elements { get; }
}
}

View File

@ -1,28 +0,0 @@
#ifndef EFL_UI_LIST_SEGARRAY_H
#define EFL_UI_LIST_SEGARRAY_H
typedef struct _Efl_Ui_List_Item Efl_Ui_List_Item;
typedef struct _Efl_Ui_List_SegArray_Node
{
EINA_RBTREE;
int length;
int max;
int first;
void* layout_data;
Efl_Ui_List_LayoutItem* pointers[0];
} Efl_Ui_List_SegArray_Node;
typedef struct _Efl_Ui_List_SegArray_Data
{
Efl_Ui_List_SegArray_Node *root;
int step_size;
int node_count;
int count;
} Efl_Ui_List_SegArray_Data;
#endif

View File

@ -8,19 +8,19 @@
#define EFL_UI_SCROLLBAR_PROTECTED #define EFL_UI_SCROLLBAR_PROTECTED
#define EFL_UI_SCROLLBAR_BETA #define EFL_UI_SCROLLBAR_BETA
#define EFL_GFX_SIZE_HINT_PROTECTED #define EFL_GFX_SIZE_HINT_PROTECTED
#define EFL_UI_LIST_PROTECTED #define EFL_UI_VIEW_LIST_PROTECTED
#define EFL_UI_FOCUS_COMPOSITION_PROTECTED #define EFL_UI_FOCUS_COMPOSITION_PROTECTED
#include <Elementary.h> #include <Elementary.h>
#include "efl_ui_list_private.h" #include "efl_ui_view_list_private.h"
#include "efl_ui_list_precise_layouter.eo.h" #include "efl_ui_view_list_precise_layouter.eo.h"
#include <assert.h> #include <assert.h>
#define MY_CLASS EFL_UI_LIST_CLASS #define MY_CLASS EFL_UI_VIEW_LIST_CLASS
#define MY_CLASS_NAME "Efl.Ui.List" #define MY_CLASS_NAME "Efl.Ui.View.List"
#define MY_PAN_CLASS EFL_UI_LIST_PAN_CLASS #define MY_PAN_CLASS EFL_UI_VIEW_LIST_PAN_CLASS
#define SIG_CHILD_ADDED "child,added" #define SIG_CHILD_ADDED "child,added"
#define SIG_CHILD_REMOVED "child,removed" #define SIG_CHILD_REMOVED "child,removed"
@ -32,9 +32,9 @@ static const Evas_Smart_Cb_Description _smart_callbacks[] = {
{NULL, NULL} {NULL, NULL}
}; };
void _efl_ui_list_custom_layout(Efl_Ui_List *); void _efl_ui_view_list_custom_layout(Efl_Ui_View_List *);
void _efl_ui_list_item_select_set(Efl_Ui_List_LayoutItem*, Eina_Bool); void _efl_ui_view_list_item_select_set(Efl_Ui_View_List_LayoutItem*, Eina_Bool);
static void _layout(Efl_Ui_List_Data* pd); static void _layout(Efl_Ui_View_List_Data* pd);
static Eina_Bool _key_action_move(Evas_Object *obj, const char *params); static Eina_Bool _key_action_move(Evas_Object *obj, const char *params);
static Eina_Bool _key_action_select(Evas_Object *obj, const char *params); static Eina_Bool _key_action_select(Evas_Object *obj, const char *params);
@ -48,14 +48,14 @@ static const Elm_Action key_actions[] = {
}; };
EOLIAN static void EOLIAN static void
_efl_ui_list_pan_efl_canvas_group_group_calculate(Eo *obj EINA_UNUSED, Efl_Ui_List_Pan_Data *psd) _efl_ui_view_list_pan_efl_canvas_group_group_calculate(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Pan_Data *psd)
{ {
evas_object_smart_changed(psd->wobj); evas_object_smart_changed(psd->wobj);
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_pan_efl_ui_pan_pan_position_set(Eo *obj EINA_UNUSED, Efl_Ui_List_Pan_Data *psd, Eina_Position2D pos) _efl_ui_view_list_pan_efl_ui_pan_pan_position_set(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Pan_Data *psd, Eina_Position2D pos)
{ {
if ((pos.x == psd->gmt.x) && (pos.y == psd->gmt.y)) return; if ((pos.x == psd->gmt.x) && (pos.y == psd->gmt.y)) return;
@ -67,20 +67,20 @@ _efl_ui_list_pan_efl_ui_pan_pan_position_set(Eo *obj EINA_UNUSED, Efl_Ui_List_Pa
} }
EOLIAN static Eina_Position2D EOLIAN static Eina_Position2D
_efl_ui_list_pan_efl_ui_pan_pan_position_get(Eo *obj EINA_UNUSED, Efl_Ui_List_Pan_Data *psd) _efl_ui_view_list_pan_efl_ui_pan_pan_position_get(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Pan_Data *psd)
{ {
return psd->gmt.pos; return psd->gmt.pos;
} }
EOLIAN static Eina_Position2D EOLIAN static Eina_Position2D
_efl_ui_list_pan_efl_ui_pan_pan_position_max_get(Eo *obj EINA_UNUSED, Efl_Ui_List_Pan_Data *psd) _efl_ui_view_list_pan_efl_ui_pan_pan_position_max_get(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Pan_Data *psd)
{ {
EFL_UI_LIST_DATA_GET(psd->wobj, pd); EFL_UI_VIEW_LIST_DATA_GET(psd->wobj, pd);
Eina_Rect vgmt = {}; Eina_Rect vgmt = {};
Eina_Size2D min = {}; Eina_Size2D min = {};
vgmt = efl_ui_scrollable_viewport_geometry_get(pd->scrl_mgr); vgmt = efl_ui_scrollable_viewport_geometry_get(pd->scrl_mgr);
min = efl_ui_list_model_min_size_get(psd->wobj); min = efl_ui_view_list_model_min_size_get(psd->wobj);
min.w = min.w - vgmt.w; min.w = min.w - vgmt.w;
if (min.w < 0) min.w = 0; if (min.w < 0) min.w = 0;
@ -91,50 +91,50 @@ _efl_ui_list_pan_efl_ui_pan_pan_position_max_get(Eo *obj EINA_UNUSED, Efl_Ui_Lis
} }
EOLIAN static Eina_Position2D EOLIAN static Eina_Position2D
_efl_ui_list_pan_efl_ui_pan_pan_position_min_get(Eo *obj EINA_UNUSED, Efl_Ui_List_Pan_Data *psd EINA_UNUSED) _efl_ui_view_list_pan_efl_ui_pan_pan_position_min_get(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Pan_Data *psd EINA_UNUSED)
{ {
return EINA_POSITION2D(0, 0); return EINA_POSITION2D(0, 0);
} }
EOLIAN static Eina_Size2D EOLIAN static Eina_Size2D
_efl_ui_list_pan_efl_ui_pan_content_size_get(Eo *obj EINA_UNUSED, Efl_Ui_List_Pan_Data *psd) _efl_ui_view_list_pan_efl_ui_pan_content_size_get(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Pan_Data *psd)
{ {
Eina_Size2D min = {}; Eina_Size2D min = {};
min = efl_ui_list_model_min_size_get(psd->wobj); min = efl_ui_view_list_model_min_size_get(psd->wobj);
return min; return min;
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_pan_efl_object_destructor(Eo *obj, Efl_Ui_List_Pan_Data *psd EINA_UNUSED) _efl_ui_view_list_pan_efl_object_destructor(Eo *obj, Efl_Ui_View_List_Pan_Data *psd EINA_UNUSED)
{ {
efl_destructor(efl_super(obj, MY_PAN_CLASS)); efl_destructor(efl_super(obj, MY_PAN_CLASS));
} }
#include "efl_ui_list_pan.eo.c" #include "efl_ui_view_list_pan.eo.c"
EOLIAN static void EOLIAN static void
_efl_ui_list_efl_ui_scrollable_interactive_content_pos_set(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *psd, Eina_Position2D pos) _efl_ui_view_list_efl_ui_scrollable_interactive_content_pos_set(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *psd, Eina_Position2D pos)
{ {
efl_ui_scrollable_content_pos_set(psd->scrl_mgr, pos); efl_ui_scrollable_content_pos_set(psd->scrl_mgr, pos);
} }
EOLIAN static Eina_Position2D EOLIAN static Eina_Position2D
_efl_ui_list_efl_ui_scrollable_interactive_content_pos_get(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *psd) _efl_ui_view_list_efl_ui_scrollable_interactive_content_pos_get(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *psd)
{ {
Eina_Position2D pos = efl_ui_scrollable_content_pos_get(psd->scrl_mgr); Eina_Position2D pos = efl_ui_scrollable_content_pos_get(psd->scrl_mgr);
return pos; return pos;
} }
EOLIAN static Eina_Size2D EOLIAN static Eina_Size2D
_efl_ui_list_efl_ui_scrollable_interactive_content_size_get(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *psd) _efl_ui_view_list_efl_ui_scrollable_interactive_content_size_get(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *psd)
{ {
Eina_Size2D size = efl_ui_scrollable_content_size_get(psd->scrl_mgr); Eina_Size2D size = efl_ui_scrollable_content_size_get(psd->scrl_mgr);
return size; return size;
} }
EOLIAN static Eina_Rect EOLIAN static Eina_Rect
_efl_ui_list_efl_ui_scrollable_interactive_viewport_geometry_get(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *psd) _efl_ui_view_list_efl_ui_scrollable_interactive_viewport_geometry_get(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *psd)
{ {
Eina_Rect gmt = efl_ui_scrollable_viewport_geometry_get(psd->scrl_mgr); Eina_Rect gmt = efl_ui_scrollable_viewport_geometry_get(psd->scrl_mgr);
return gmt; return gmt;
@ -174,7 +174,7 @@ _list_element_focused(void *data EINA_UNUSED, const Efl_Event *ev)
if (!focused) return; if (!focused) return;
EFL_UI_LIST_DATA_GET(ev->object, pd); EFL_UI_VIEW_LIST_DATA_GET(ev->object, pd);
geom = efl_ui_focus_object_focus_geometry_get(focused); geom = efl_ui_focus_object_focus_geometry_get(focused);
pos = efl_ui_scrollable_content_pos_get(pd->scrl_mgr); pos = efl_ui_scrollable_content_pos_get(pd->scrl_mgr);
@ -187,18 +187,18 @@ static void
_on_item_mouse_up(void *data, Evas *evas EINA_UNUSED, Evas_Object *o EINA_UNUSED, void *event_info) _on_item_mouse_up(void *data, Evas *evas EINA_UNUSED, Evas_Object *o EINA_UNUSED, void *event_info)
{ {
Evas_Event_Mouse_Down *ev = event_info; Evas_Event_Mouse_Down *ev = event_info;
Efl_Ui_List_LayoutItem *item = data; Efl_Ui_View_List_LayoutItem *item = data;
if (ev->button != 1) return; if (ev->button != 1) return;
if (ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD) return; if (ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD) return;
_efl_ui_list_item_select_set(item, EINA_TRUE); _efl_ui_view_list_item_select_set(item, EINA_TRUE);
} }
static void static void
_count_then(void * data, Efl_Event const* event EINA_UNUSED) _count_then(void * data, Efl_Event const* event EINA_UNUSED)
{ {
Efl_Ui_List_Data *pd = data; Efl_Ui_View_List_Data *pd = data;
EINA_SAFETY_ON_NULL_RETURN(pd); EINA_SAFETY_ON_NULL_RETURN(pd);
pd->count_future = NULL; pd->count_future = NULL;
@ -208,7 +208,7 @@ _count_then(void * data, Efl_Event const* event EINA_UNUSED)
static void static void
_count_error(void * data, Efl_Event const* event EINA_UNUSED) _count_error(void * data, Efl_Event const* event EINA_UNUSED)
{ {
Efl_Ui_List_Data *pd = data; Efl_Ui_View_List_Data *pd = data;
EINA_SAFETY_ON_NULL_RETURN(pd); EINA_SAFETY_ON_NULL_RETURN(pd);
pd->count_future = NULL; pd->count_future = NULL;
} }
@ -216,13 +216,13 @@ _count_error(void * data, Efl_Event const* event EINA_UNUSED)
static void static void
_children_slice_error(void * data EINA_UNUSED, Efl_Event const* event EINA_UNUSED) _children_slice_error(void * data EINA_UNUSED, Efl_Event const* event EINA_UNUSED)
{ {
Efl_Ui_List_Data *pd = data; Efl_Ui_View_List_Data *pd = data;
EINA_SAFETY_ON_NULL_RETURN(pd); EINA_SAFETY_ON_NULL_RETURN(pd);
pd->slice_future = NULL; pd->slice_future = NULL;
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_select_mode_set(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd, Elm_Object_Select_Mode mode) _efl_ui_view_list_select_mode_set(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd, Elm_Object_Select_Mode mode)
{ {
if (pd->select_mode == mode) if (pd->select_mode == mode)
return; return;
@ -231,37 +231,37 @@ _efl_ui_list_select_mode_set(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd, Elm_Obje
} }
EOLIAN static Elm_Object_Select_Mode EOLIAN static Elm_Object_Select_Mode
_efl_ui_list_select_mode_get(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd) _efl_ui_view_list_select_mode_get(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd)
{ {
return pd->select_mode; return pd->select_mode;
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_default_style_set(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd, Eina_Stringshare *style) _efl_ui_view_list_default_style_set(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd, Eina_Stringshare *style)
{ {
eina_stringshare_replace(&pd->style, style); eina_stringshare_replace(&pd->style, style);
} }
EOLIAN static Eina_Stringshare * EOLIAN static Eina_Stringshare *
_efl_ui_list_default_style_get(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd) _efl_ui_view_list_default_style_get(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd)
{ {
return pd->style; return pd->style;
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_homogeneous_set(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd, Eina_Bool homogeneous) _efl_ui_view_list_homogeneous_set(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd, Eina_Bool homogeneous)
{ {
pd->homogeneous = homogeneous; pd->homogeneous = homogeneous;
} }
EOLIAN static Eina_Bool EOLIAN static Eina_Bool
_efl_ui_list_homogeneous_get(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd) _efl_ui_view_list_homogeneous_get(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd)
{ {
return pd->homogeneous; return pd->homogeneous;
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_efl_gfx_position_set(Eo *obj, Efl_Ui_List_Data *pd, Eina_Position2D pos) _efl_ui_view_list_efl_gfx_position_set(Eo *obj, Efl_Ui_View_List_Data *pd, Eina_Position2D pos)
{ {
if (_evas_object_intercept_call(obj, EVAS_OBJECT_INTERCEPT_CB_MOVE, 0, pos.x, pos.y)) if (_evas_object_intercept_call(obj, EVAS_OBJECT_INTERCEPT_CB_MOVE, 0, pos.x, pos.y))
return; return;
@ -271,7 +271,7 @@ _efl_ui_list_efl_gfx_position_set(Eo *obj, Efl_Ui_List_Data *pd, Eina_Position2D
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_efl_gfx_size_set(Eo *obj, Efl_Ui_List_Data *pd, Eina_Size2D size) _efl_ui_view_list_efl_gfx_size_set(Eo *obj, Efl_Ui_View_List_Data *pd, Eina_Size2D size)
{ {
if (_evas_object_intercept_call(obj, EVAS_OBJECT_INTERCEPT_CB_RESIZE, 0, size.w, size.h)) if (_evas_object_intercept_call(obj, EVAS_OBJECT_INTERCEPT_CB_RESIZE, 0, size.w, size.h))
return; return;
@ -282,22 +282,22 @@ _efl_ui_list_efl_gfx_size_set(Eo *obj, Efl_Ui_List_Data *pd, Eina_Size2D size)
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_efl_canvas_group_group_calculate(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd) _efl_ui_view_list_efl_canvas_group_group_calculate(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd)
{ {
_layout(pd); _layout(pd);
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_efl_canvas_group_group_member_add(Eo *obj, Efl_Ui_List_Data *pd EINA_UNUSED, Evas_Object *member) _efl_ui_view_list_efl_canvas_group_group_member_add(Eo *obj, Efl_Ui_View_List_Data *pd EINA_UNUSED, Evas_Object *member)
{ {
efl_canvas_group_member_add(efl_super(obj, MY_CLASS), member); efl_canvas_group_member_add(efl_super(obj, MY_CLASS), member);
} }
//Scrollable Implement //Scrollable Implement
static void static void
_efl_ui_list_bar_read_and_update(Eo *obj) _efl_ui_view_list_bar_read_and_update(Eo *obj)
{ {
EFL_UI_LIST_DATA_GET(obj, pd); EFL_UI_VIEW_LIST_DATA_GET(obj, pd);
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
double vx, vy; double vx, vy;
@ -312,30 +312,30 @@ _efl_ui_list_bar_read_and_update(Eo *obj)
} }
static void static void
_efl_ui_list_reload_cb(void *data, _efl_ui_view_list_reload_cb(void *data,
Evas_Object *obj EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
const char *emission EINA_UNUSED, const char *emission EINA_UNUSED,
const char *source EINA_UNUSED) const char *source EINA_UNUSED)
{ {
EFL_UI_LIST_DATA_GET(data, pd); EFL_UI_VIEW_LIST_DATA_GET(data, pd);
efl_ui_scrollbar_bar_visibility_update(pd->scrl_mgr); efl_ui_scrollbar_bar_visibility_update(pd->scrl_mgr);
} }
static void static void
_efl_ui_list_vbar_drag_cb(void *data, _efl_ui_view_list_vbar_drag_cb(void *data,
Evas_Object *obj EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
const char *emission EINA_UNUSED, const char *emission EINA_UNUSED,
const char *source EINA_UNUSED) const char *source EINA_UNUSED)
{ {
_efl_ui_list_bar_read_and_update(data); _efl_ui_view_list_bar_read_and_update(data);
Efl_Ui_Scrollbar_Direction type = EFL_UI_SCROLLBAR_DIRECTION_VERTICAL; Efl_Ui_Scrollbar_Direction type = EFL_UI_SCROLLBAR_DIRECTION_VERTICAL;
efl_event_callback_call(data, EFL_UI_SCROLLBAR_EVENT_BAR_DRAG, &type); efl_event_callback_call(data, EFL_UI_SCROLLBAR_EVENT_BAR_DRAG, &type);
} }
static void static void
_efl_ui_list_vbar_press_cb(void *data, _efl_ui_view_list_vbar_press_cb(void *data,
Evas_Object *obj EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
const char *emission EINA_UNUSED, const char *emission EINA_UNUSED,
const char *source EINA_UNUSED) const char *source EINA_UNUSED)
@ -345,7 +345,7 @@ _efl_ui_list_vbar_press_cb(void *data,
} }
static void static void
_efl_ui_list_vbar_unpress_cb(void *data, _efl_ui_view_list_vbar_unpress_cb(void *data,
Evas_Object *obj EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
const char *emission EINA_UNUSED, const char *emission EINA_UNUSED,
const char *source EINA_UNUSED) const char *source EINA_UNUSED)
@ -355,14 +355,14 @@ _efl_ui_list_vbar_unpress_cb(void *data,
} }
static void static void
_efl_ui_list_edje_drag_start_cb(void *data, _efl_ui_view_list_edje_drag_start_cb(void *data,
Evas_Object *obj EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
const char *emission EINA_UNUSED, const char *emission EINA_UNUSED,
const char *source EINA_UNUSED) const char *source EINA_UNUSED)
{ {
EFL_UI_LIST_DATA_GET(data, pd); EFL_UI_VIEW_LIST_DATA_GET(data, pd);
_efl_ui_list_bar_read_and_update(data); _efl_ui_view_list_bar_read_and_update(data);
pd->scrl_freeze = efl_ui_scrollable_scroll_freeze_get(pd->scrl_mgr); pd->scrl_freeze = efl_ui_scrollable_scroll_freeze_get(pd->scrl_mgr);
efl_ui_scrollable_scroll_freeze_set(pd->scrl_mgr, EINA_TRUE); efl_ui_scrollable_scroll_freeze_set(pd->scrl_mgr, EINA_TRUE);
@ -370,42 +370,42 @@ _efl_ui_list_edje_drag_start_cb(void *data,
} }
static void static void
_efl_ui_list_edje_drag_stop_cb(void *data, _efl_ui_view_list_edje_drag_stop_cb(void *data,
Evas_Object *obj EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
const char *emission EINA_UNUSED, const char *emission EINA_UNUSED,
const char *source EINA_UNUSED) const char *source EINA_UNUSED)
{ {
EFL_UI_LIST_DATA_GET(data, pd); EFL_UI_VIEW_LIST_DATA_GET(data, pd);
_efl_ui_list_bar_read_and_update(data); _efl_ui_view_list_bar_read_and_update(data);
efl_ui_scrollable_scroll_freeze_set(pd->scrl_mgr, pd->scrl_freeze); efl_ui_scrollable_scroll_freeze_set(pd->scrl_mgr, pd->scrl_freeze);
efl_event_callback_call(data, EFL_UI_EVENT_SCROLL_DRAG_STOP, NULL); efl_event_callback_call(data, EFL_UI_EVENT_SCROLL_DRAG_STOP, NULL);
} }
static void static void
_efl_ui_list_edje_drag_cb(void *data, _efl_ui_view_list_edje_drag_cb(void *data,
Evas_Object *obj EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
const char *emission EINA_UNUSED, const char *emission EINA_UNUSED,
const char *source EINA_UNUSED) const char *source EINA_UNUSED)
{ {
_efl_ui_list_bar_read_and_update(data); _efl_ui_view_list_bar_read_and_update(data);
} }
static void static void
_efl_ui_list_hbar_drag_cb(void *data, _efl_ui_view_list_hbar_drag_cb(void *data,
Evas_Object *obj EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
const char *emission EINA_UNUSED, const char *emission EINA_UNUSED,
const char *source EINA_UNUSED) const char *source EINA_UNUSED)
{ {
_efl_ui_list_bar_read_and_update(data); _efl_ui_view_list_bar_read_and_update(data);
Efl_Ui_Scrollbar_Direction type = EFL_UI_SCROLLBAR_DIRECTION_HORIZONTAL; Efl_Ui_Scrollbar_Direction type = EFL_UI_SCROLLBAR_DIRECTION_HORIZONTAL;
efl_event_callback_call(data, EFL_UI_SCROLLBAR_EVENT_BAR_DRAG, &type); efl_event_callback_call(data, EFL_UI_SCROLLBAR_EVENT_BAR_DRAG, &type);
} }
static void static void
_efl_ui_list_hbar_press_cb(void *data, _efl_ui_view_list_hbar_press_cb(void *data,
Evas_Object *obj EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
const char *emission EINA_UNUSED, const char *emission EINA_UNUSED,
const char *source EINA_UNUSED) const char *source EINA_UNUSED)
@ -415,7 +415,7 @@ _efl_ui_list_hbar_press_cb(void *data,
} }
static void static void
_efl_ui_list_hbar_unpress_cb(void *data, _efl_ui_view_list_hbar_unpress_cb(void *data,
Evas_Object *obj EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
const char *emission EINA_UNUSED, const char *emission EINA_UNUSED,
const char *source EINA_UNUSED) const char *source EINA_UNUSED)
@ -431,10 +431,10 @@ _scroll_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED)
} }
static void static void
_efl_ui_list_bar_size_changed_cb(void *data, const Efl_Event *event EINA_UNUSED) _efl_ui_view_list_bar_size_changed_cb(void *data, const Efl_Event *event EINA_UNUSED)
{ {
Eo *obj = data; Eo *obj = data;
EFL_UI_LIST_DATA_GET(obj, pd); EFL_UI_VIEW_LIST_DATA_GET(obj, pd);
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
double width = 0.0, height = 0.0; double width = 0.0, height = 0.0;
@ -446,10 +446,10 @@ _efl_ui_list_bar_size_changed_cb(void *data, const Efl_Event *event EINA_UNUSED)
} }
static void static void
_efl_ui_list_bar_pos_changed_cb(void *data, const Efl_Event *event EINA_UNUSED) _efl_ui_view_list_bar_pos_changed_cb(void *data, const Efl_Event *event EINA_UNUSED)
{ {
Eo *obj = data; Eo *obj = data;
EFL_UI_LIST_DATA_GET(obj, pd); EFL_UI_VIEW_LIST_DATA_GET(obj, pd);
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
double posx = 0.0, posy = 0.0; double posx = 0.0, posy = 0.0;
@ -461,7 +461,7 @@ _efl_ui_list_bar_pos_changed_cb(void *data, const Efl_Event *event EINA_UNUSED)
} }
static void static void
_efl_ui_list_bar_show_cb(void *data, const Efl_Event *event) _efl_ui_view_list_bar_show_cb(void *data, const Efl_Event *event)
{ {
Eo *obj = data; Eo *obj = data;
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
@ -474,7 +474,7 @@ _efl_ui_list_bar_show_cb(void *data, const Efl_Event *event)
} }
static void static void
_efl_ui_list_bar_hide_cb(void *data, const Efl_Event *event) _efl_ui_view_list_bar_hide_cb(void *data, const Efl_Event *event)
{ {
Eo *obj = data; Eo *obj = data;
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
@ -487,7 +487,7 @@ _efl_ui_list_bar_hide_cb(void *data, const Efl_Event *event)
} }
EOLIAN static Eina_Bool EOLIAN static Eina_Bool
_efl_ui_list_efl_layout_signal_signal_callback_add(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *sd EINA_UNUSED, const char *emission, const char *source, Edje_Signal_Cb func_cb, void *data) _efl_ui_view_list_efl_layout_signal_signal_callback_add(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *sd EINA_UNUSED, const char *emission, const char *source, Edje_Signal_Cb func_cb, void *data)
{ {
Eina_Bool ok; Eina_Bool ok;
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, EINA_FALSE); ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, EINA_FALSE);
@ -498,7 +498,7 @@ _efl_ui_list_efl_layout_signal_signal_callback_add(Eo *obj EINA_UNUSED, Efl_Ui_L
} }
EOLIAN static Eina_Bool EOLIAN static Eina_Bool
_efl_ui_list_efl_layout_signal_signal_callback_del(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *sd EINA_UNUSED, const char *emission, const char *source, Edje_Signal_Cb func_cb, void *data) _efl_ui_view_list_efl_layout_signal_signal_callback_del(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *sd EINA_UNUSED, const char *emission, const char *source, Edje_Signal_Cb func_cb, void *data)
{ {
Eina_Bool ok; Eina_Bool ok;
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, EINA_FALSE); ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, EINA_FALSE);
@ -509,125 +509,125 @@ _efl_ui_list_efl_layout_signal_signal_callback_del(Eo *obj EINA_UNUSED, Efl_Ui_L
} }
static void static void
_efl_ui_list_edje_object_attach(Eo *obj) _efl_ui_view_list_edje_object_attach(Eo *obj)
{ {
efl_layout_signal_callback_add efl_layout_signal_callback_add
(obj, "reload", "elm", _efl_ui_list_reload_cb, obj); (obj, "reload", "elm", _efl_ui_view_list_reload_cb, obj);
//Vertical bar //Vertical bar
efl_layout_signal_callback_add efl_layout_signal_callback_add
(obj, "drag", "elm.dragable.vbar", _efl_ui_list_vbar_drag_cb, (obj, "drag", "elm.dragable.vbar", _efl_ui_view_list_vbar_drag_cb,
obj); obj);
efl_layout_signal_callback_add efl_layout_signal_callback_add
(obj, "drag,set", "elm.dragable.vbar", (obj, "drag,set", "elm.dragable.vbar",
_efl_ui_list_edje_drag_cb, obj); _efl_ui_view_list_edje_drag_cb, obj);
efl_layout_signal_callback_add efl_layout_signal_callback_add
(obj, "drag,start", "elm.dragable.vbar", (obj, "drag,start", "elm.dragable.vbar",
_efl_ui_list_edje_drag_start_cb, obj); _efl_ui_view_list_edje_drag_start_cb, obj);
efl_layout_signal_callback_add efl_layout_signal_callback_add
(obj, "drag,stop", "elm.dragable.vbar", (obj, "drag,stop", "elm.dragable.vbar",
_efl_ui_list_edje_drag_stop_cb, obj); _efl_ui_view_list_edje_drag_stop_cb, obj);
efl_layout_signal_callback_add efl_layout_signal_callback_add
(obj, "drag,step", "elm.dragable.vbar", (obj, "drag,step", "elm.dragable.vbar",
_efl_ui_list_edje_drag_cb, obj); _efl_ui_view_list_edje_drag_cb, obj);
efl_layout_signal_callback_add efl_layout_signal_callback_add
(obj, "drag,page", "elm.dragable.vbar", (obj, "drag,page", "elm.dragable.vbar",
_efl_ui_list_edje_drag_cb, obj); _efl_ui_view_list_edje_drag_cb, obj);
efl_layout_signal_callback_add efl_layout_signal_callback_add
(obj, "elm,vbar,press", "elm", (obj, "elm,vbar,press", "elm",
_efl_ui_list_vbar_press_cb, obj); _efl_ui_view_list_vbar_press_cb, obj);
efl_layout_signal_callback_add efl_layout_signal_callback_add
(obj, "elm,vbar,unpress", "elm", (obj, "elm,vbar,unpress", "elm",
_efl_ui_list_vbar_unpress_cb, obj); _efl_ui_view_list_vbar_unpress_cb, obj);
//Horizontal bar //Horizontal bar
efl_layout_signal_callback_add efl_layout_signal_callback_add
(obj, "drag", "elm.dragable.hbar", _efl_ui_list_hbar_drag_cb, (obj, "drag", "elm.dragable.hbar", _efl_ui_view_list_hbar_drag_cb,
obj); obj);
efl_layout_signal_callback_add efl_layout_signal_callback_add
(obj, "drag,set", "elm.dragable.hbar", (obj, "drag,set", "elm.dragable.hbar",
_efl_ui_list_edje_drag_cb, obj); _efl_ui_view_list_edje_drag_cb, obj);
efl_layout_signal_callback_add efl_layout_signal_callback_add
(obj, "drag,start", "elm.dragable.hbar", (obj, "drag,start", "elm.dragable.hbar",
_efl_ui_list_edje_drag_start_cb, obj); _efl_ui_view_list_edje_drag_start_cb, obj);
efl_layout_signal_callback_add efl_layout_signal_callback_add
(obj, "drag,stop", "elm.dragable.hbar", (obj, "drag,stop", "elm.dragable.hbar",
_efl_ui_list_edje_drag_stop_cb, obj); _efl_ui_view_list_edje_drag_stop_cb, obj);
efl_layout_signal_callback_add efl_layout_signal_callback_add
(obj, "drag,step", "elm.dragable.hbar", (obj, "drag,step", "elm.dragable.hbar",
_efl_ui_list_edje_drag_cb, obj); _efl_ui_view_list_edje_drag_cb, obj);
efl_layout_signal_callback_add efl_layout_signal_callback_add
(obj, "drag,page", "elm.dragable.hbar", (obj, "drag,page", "elm.dragable.hbar",
_efl_ui_list_edje_drag_cb, obj); _efl_ui_view_list_edje_drag_cb, obj);
efl_layout_signal_callback_add efl_layout_signal_callback_add
(obj, "elm,hbar,press", "elm", (obj, "elm,hbar,press", "elm",
_efl_ui_list_hbar_press_cb, obj); _efl_ui_view_list_hbar_press_cb, obj);
efl_layout_signal_callback_add efl_layout_signal_callback_add
(obj, "elm,hbar,unpress", "elm", (obj, "elm,hbar,unpress", "elm",
_efl_ui_list_hbar_unpress_cb, obj); _efl_ui_view_list_hbar_unpress_cb, obj);
} }
static void static void
_efl_ui_list_edje_object_detach(Evas_Object *obj) _efl_ui_view_list_edje_object_detach(Evas_Object *obj)
{ {
efl_layout_signal_callback_del efl_layout_signal_callback_del
(obj, "reload", "elm", _efl_ui_list_reload_cb, obj); (obj, "reload", "elm", _efl_ui_view_list_reload_cb, obj);
//Vertical bar //Vertical bar
efl_layout_signal_callback_del efl_layout_signal_callback_del
(obj, "drag", "elm.dragable.vbar", _efl_ui_list_vbar_drag_cb, (obj, "drag", "elm.dragable.vbar", _efl_ui_view_list_vbar_drag_cb,
obj); obj);
efl_layout_signal_callback_del efl_layout_signal_callback_del
(obj, "drag,set", "elm.dragable.vbar", (obj, "drag,set", "elm.dragable.vbar",
_efl_ui_list_edje_drag_cb, obj); _efl_ui_view_list_edje_drag_cb, obj);
efl_layout_signal_callback_del efl_layout_signal_callback_del
(obj, "drag,start", "elm.dragable.vbar", (obj, "drag,start", "elm.dragable.vbar",
_efl_ui_list_edje_drag_start_cb, obj); _efl_ui_view_list_edje_drag_start_cb, obj);
efl_layout_signal_callback_del efl_layout_signal_callback_del
(obj, "drag,stop", "elm.dragable.vbar", (obj, "drag,stop", "elm.dragable.vbar",
_efl_ui_list_edje_drag_stop_cb, obj); _efl_ui_view_list_edje_drag_stop_cb, obj);
efl_layout_signal_callback_del efl_layout_signal_callback_del
(obj, "drag,step", "elm.dragable.vbar", (obj, "drag,step", "elm.dragable.vbar",
_efl_ui_list_edje_drag_cb, obj); _efl_ui_view_list_edje_drag_cb, obj);
efl_layout_signal_callback_del efl_layout_signal_callback_del
(obj, "drag,page", "elm.dragable.vbar", (obj, "drag,page", "elm.dragable.vbar",
_efl_ui_list_edje_drag_cb, obj); _efl_ui_view_list_edje_drag_cb, obj);
efl_layout_signal_callback_del efl_layout_signal_callback_del
(obj, "elm,vbar,press", "elm", (obj, "elm,vbar,press", "elm",
_efl_ui_list_vbar_press_cb, obj); _efl_ui_view_list_vbar_press_cb, obj);
efl_layout_signal_callback_del efl_layout_signal_callback_del
(obj, "elm,vbar,unpress", "elm", (obj, "elm,vbar,unpress", "elm",
_efl_ui_list_vbar_unpress_cb, obj); _efl_ui_view_list_vbar_unpress_cb, obj);
//Horizontal bar //Horizontal bar
efl_layout_signal_callback_del efl_layout_signal_callback_del
(obj, "drag", "elm.dragable.hbar", _efl_ui_list_hbar_drag_cb, (obj, "drag", "elm.dragable.hbar", _efl_ui_view_list_hbar_drag_cb,
obj); obj);
efl_layout_signal_callback_del efl_layout_signal_callback_del
(obj, "drag,set", "elm.dragable.hbar", (obj, "drag,set", "elm.dragable.hbar",
_efl_ui_list_edje_drag_cb, obj); _efl_ui_view_list_edje_drag_cb, obj);
efl_layout_signal_callback_del efl_layout_signal_callback_del
(obj, "drag,start", "elm.dragable.hbar", (obj, "drag,start", "elm.dragable.hbar",
_efl_ui_list_edje_drag_start_cb, obj); _efl_ui_view_list_edje_drag_start_cb, obj);
efl_layout_signal_callback_del efl_layout_signal_callback_del
(obj, "drag,stop", "elm.dragable.hbar", (obj, "drag,stop", "elm.dragable.hbar",
_efl_ui_list_edje_drag_stop_cb, obj); _efl_ui_view_list_edje_drag_stop_cb, obj);
efl_layout_signal_callback_del efl_layout_signal_callback_del
(obj, "drag,step", "elm.dragable.hbar", (obj, "drag,step", "elm.dragable.hbar",
_efl_ui_list_edje_drag_cb, obj); _efl_ui_view_list_edje_drag_cb, obj);
efl_layout_signal_callback_del efl_layout_signal_callback_del
(obj, "drag,page", "elm.dragable.hbar", (obj, "drag,page", "elm.dragable.hbar",
_efl_ui_list_edje_drag_cb, obj); _efl_ui_view_list_edje_drag_cb, obj);
efl_layout_signal_callback_del efl_layout_signal_callback_del
(obj, "elm,hbar,press", "elm", (obj, "elm,hbar,press", "elm",
_efl_ui_list_hbar_press_cb, obj); _efl_ui_view_list_hbar_press_cb, obj);
efl_layout_signal_callback_del efl_layout_signal_callback_del
(obj, "elm,hbar,unpress", "elm", (obj, "elm,hbar,unpress", "elm",
_efl_ui_list_hbar_unpress_cb, obj); _efl_ui_view_list_hbar_unpress_cb, obj);
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_efl_canvas_group_group_add(Eo *obj, Efl_Ui_List_Data *pd) _efl_ui_view_list_efl_canvas_group_group_add(Eo *obj, Efl_Ui_View_List_Data *pd)
{ {
Efl_Ui_List_Pan_Data *pan_data; Efl_Ui_View_List_Pan_Data *pan_data;
Eina_Size2D min = {}; Eina_Size2D min = {};
Eina_Bool bounce = _elm_config->thumbscroll_bounce_enable; Eina_Bool bounce = _elm_config->thumbscroll_bounce_enable;
@ -638,7 +638,7 @@ _efl_ui_list_efl_canvas_group_group_add(Eo *obj, Efl_Ui_List_Data *pd)
elm_widget_can_focus_set(obj, EINA_TRUE); elm_widget_can_focus_set(obj, EINA_TRUE);
if (!elm_layout_theme_set(obj, "list", "base", elm_widget_style_get(obj))) if (!elm_layout_theme_set(obj, "view_list", "base", elm_widget_style_get(obj)))
CRI("Failed to set layout!"); CRI("Failed to set layout!");
pd->scrl_mgr = efl_add(EFL_UI_SCROLL_MANAGER_CLASS, obj, pd->scrl_mgr = efl_add(EFL_UI_SCROLL_MANAGER_CLASS, obj,
@ -664,28 +664,28 @@ _efl_ui_list_efl_canvas_group_group_add(Eo *obj, Efl_Ui_List_Data *pd)
efl_event_callback_add(obj, EFL_UI_EVENT_SCROLL, _scroll_cb, obj); efl_event_callback_add(obj, EFL_UI_EVENT_SCROLL, _scroll_cb, obj);
efl_event_callback_add(obj, EFL_UI_SCROLLBAR_EVENT_BAR_SIZE_CHANGED, efl_event_callback_add(obj, EFL_UI_SCROLLBAR_EVENT_BAR_SIZE_CHANGED,
_efl_ui_list_bar_size_changed_cb, obj); _efl_ui_view_list_bar_size_changed_cb, obj);
efl_event_callback_add(obj, EFL_UI_SCROLLBAR_EVENT_BAR_POS_CHANGED, efl_event_callback_add(obj, EFL_UI_SCROLLBAR_EVENT_BAR_POS_CHANGED,
_efl_ui_list_bar_pos_changed_cb, obj); _efl_ui_view_list_bar_pos_changed_cb, obj);
efl_event_callback_add(obj, EFL_UI_SCROLLBAR_EVENT_BAR_SHOW, efl_event_callback_add(obj, EFL_UI_SCROLLBAR_EVENT_BAR_SHOW,
_efl_ui_list_bar_show_cb, obj); _efl_ui_view_list_bar_show_cb, obj);
efl_event_callback_add(obj, EFL_UI_SCROLLBAR_EVENT_BAR_HIDE, efl_event_callback_add(obj, EFL_UI_SCROLLBAR_EVENT_BAR_HIDE,
_efl_ui_list_bar_hide_cb, obj); _efl_ui_view_list_bar_hide_cb, obj);
_efl_ui_list_edje_object_attach(obj); _efl_ui_view_list_edje_object_attach(obj);
elm_layout_sizing_eval(obj); elm_layout_sizing_eval(obj);
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_efl_canvas_group_group_del(Eo *obj, Efl_Ui_List_Data *pd) _efl_ui_view_list_efl_canvas_group_group_del(Eo *obj, Efl_Ui_View_List_Data *pd)
{ {
ELM_SAFE_FREE(pd->pan_obj, evas_object_del); ELM_SAFE_FREE(pd->pan_obj, evas_object_del);
efl_canvas_group_del(efl_super(obj, MY_CLASS)); efl_canvas_group_del(efl_super(obj, MY_CLASS));
} }
EOLIAN static Efl_Ui_Focus_Manager* EOLIAN static Efl_Ui_Focus_Manager*
_efl_ui_list_efl_ui_widget_focus_manager_create(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd EINA_UNUSED, Efl_Ui_Focus_Object *root) _efl_ui_view_list_efl_ui_widget_focus_manager_create(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd EINA_UNUSED, Efl_Ui_Focus_Object *root)
{ {
if (!pd->manager) if (!pd->manager)
pd->manager = efl_add(EFL_UI_FOCUS_MANAGER_CALC_CLASS, obj, pd->manager = efl_add(EFL_UI_FOCUS_MANAGER_CALC_CLASS, obj,
@ -695,7 +695,7 @@ _efl_ui_list_efl_ui_widget_focus_manager_create(Eo *obj EINA_UNUSED, Efl_Ui_List
} }
EOLIAN static Eo * EOLIAN static Eo *
_efl_ui_list_efl_object_finalize(Eo *obj, Efl_Ui_List_Data *pd) _efl_ui_view_list_efl_object_finalize(Eo *obj, Efl_Ui_View_List_Data *pd)
{ {
if (!pd->factory) if (!pd->factory)
@ -703,15 +703,15 @@ _efl_ui_list_efl_object_finalize(Eo *obj, Efl_Ui_List_Data *pd)
if(!pd->relayout) if(!pd->relayout)
{ {
pd->relayout = efl_add(EFL_UI_LIST_PRECISE_LAYOUTER_CLASS, obj); pd->relayout = efl_add(EFL_UI_VIEW_LIST_PRECISE_LAYOUTER_CLASS, obj);
if (pd->model) if (pd->model)
efl_ui_list_relayout_model_set(pd->relayout, pd->model); efl_ui_view_list_relayout_model_set(pd->relayout, pd->model);
} }
return obj; return obj;
} }
EOLIAN static Eo * EOLIAN static Eo *
_efl_ui_list_efl_object_constructor(Eo *obj, Efl_Ui_List_Data *pd) _efl_ui_view_list_efl_object_constructor(Eo *obj, Efl_Ui_View_List_Data *pd)
{ {
Efl_Ui_Focus_Manager *manager; Efl_Ui_Focus_Manager *manager;
@ -721,7 +721,7 @@ _efl_ui_list_efl_object_constructor(Eo *obj, Efl_Ui_List_Data *pd)
evas_object_smart_callbacks_descriptions_set(obj, _smart_callbacks); evas_object_smart_callbacks_descriptions_set(obj, _smart_callbacks);
efl_access_role_set(obj, EFL_ACCESS_ROLE_LIST); efl_access_role_set(obj, EFL_ACCESS_ROLE_LIST);
pd->segarray = efl_add(EFL_UI_LIST_SEGARRAY_CLASS, obj, efl_ui_list_segarray_setup(efl_added, 32)); pd->segarray = efl_add(EFL_UI_VIEW_LIST_SEGARRAY_CLASS, obj, efl_ui_view_list_segarray_setup(efl_added, 32));
manager = efl_ui_widget_focus_manager_create(obj, obj); manager = efl_ui_widget_focus_manager_create(obj, obj);
efl_composite_attach(obj, manager); efl_composite_attach(obj, manager);
@ -744,15 +744,15 @@ _efl_ui_list_efl_object_constructor(Eo *obj, Efl_Ui_List_Data *pd)
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_efl_object_destructor(Eo *obj, Efl_Ui_List_Data *pd) _efl_ui_view_list_efl_object_destructor(Eo *obj, Efl_Ui_View_List_Data *pd)
{ {
efl_ui_list_relayout_model_set(pd->relayout, NULL); efl_ui_view_list_relayout_model_set(pd->relayout, NULL);
efl_unref(pd->model); efl_unref(pd->model);
eina_stringshare_del(pd->style); eina_stringshare_del(pd->style);
efl_event_callback_del(obj, EFL_UI_EVENT_SCROLL, _scroll_cb, obj); efl_event_callback_del(obj, EFL_UI_EVENT_SCROLL, _scroll_cb, obj);
_efl_ui_list_edje_object_detach(obj); _efl_ui_view_list_edje_object_detach(obj);
ELM_SAFE_FREE(pd->pan_obj, evas_object_del); ELM_SAFE_FREE(pd->pan_obj, evas_object_del);
efl_canvas_group_del(efl_super(obj, MY_CLASS)); efl_canvas_group_del(efl_super(obj, MY_CLASS));
@ -761,7 +761,7 @@ _efl_ui_list_efl_object_destructor(Eo *obj, Efl_Ui_List_Data *pd)
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_layout_factory_set(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd, Efl_Ui_Factory *factory) _efl_ui_view_list_layout_factory_set(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd, Efl_Ui_Factory *factory)
{ {
if (pd->factory) if (pd->factory)
efl_unref(pd->factory); efl_unref(pd->factory);
@ -771,7 +771,7 @@ _efl_ui_list_layout_factory_set(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd, Efl_U
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_efl_ui_view_model_set(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd, Efl_Model *model) _efl_ui_view_list_efl_ui_view_model_set(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd, Efl_Model *model)
{ {
if (pd->model == model) if (pd->model == model)
return; return;
@ -785,8 +785,8 @@ _efl_ui_list_efl_ui_view_model_set(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd, Ef
if (pd->model) if (pd->model)
{ {
if (pd->relayout) if (pd->relayout)
efl_ui_list_relayout_model_set(pd->relayout, NULL); efl_ui_view_list_relayout_model_set(pd->relayout, NULL);
efl_ui_list_segarray_flush(pd->segarray); efl_ui_view_list_segarray_flush(pd->segarray);
efl_unref(pd->model); efl_unref(pd->model);
pd->model = NULL; pd->model = NULL;
} }
@ -796,7 +796,7 @@ _efl_ui_list_efl_ui_view_model_set(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd, Ef
pd->model = model; pd->model = model;
efl_ref(pd->model); efl_ref(pd->model);
if (pd->relayout) if (pd->relayout)
efl_ui_list_relayout_model_set(pd->relayout, model); efl_ui_view_list_relayout_model_set(pd->relayout, model);
pd->count_future = efl_model_children_count_get(pd->model); pd->count_future = efl_model_children_count_get(pd->model);
efl_future_then(pd->count_future, &_count_then, &_count_error, NULL, pd); efl_future_then(pd->count_future, &_count_then, &_count_error, NULL, pd);
} }
@ -805,23 +805,23 @@ _efl_ui_list_efl_ui_view_model_set(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd, Ef
} }
EOLIAN static Efl_Model * EOLIAN static Efl_Model *
_efl_ui_list_efl_ui_view_model_get(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd) _efl_ui_view_list_efl_ui_view_model_get(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd)
{ {
return pd->model; return pd->model;
} }
EOLIAN int EOLIAN int
_efl_ui_list_efl_access_selection_selected_children_count_get(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd) _efl_ui_view_list_efl_access_selection_selected_children_count_get(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd)
{ {
return eina_list_count(pd->selected_items); return eina_list_count(pd->selected_items);
} }
EOLIAN Eo* EOLIAN Eo*
_efl_ui_list_efl_access_selection_selected_child_get(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd, int child_index) _efl_ui_view_list_efl_access_selection_selected_child_get(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd, int child_index)
{ {
if(child_index < (int) eina_list_count(pd->selected_items)) if(child_index < (int) eina_list_count(pd->selected_items))
{ {
Efl_Ui_List_LayoutItem* items = eina_list_nth(pd->selected_items, child_index); Efl_Ui_View_List_LayoutItem* items = eina_list_nth(pd->selected_items, child_index);
return items[child_index].layout; return items[child_index].layout;
} }
else else
@ -829,37 +829,37 @@ _efl_ui_list_efl_access_selection_selected_child_get(Eo *obj EINA_UNUSED, Efl_Ui
} }
EOLIAN Eina_Bool EOLIAN Eina_Bool
_efl_ui_list_efl_access_selection_child_select(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd EINA_UNUSED, int child_index EINA_UNUSED) _efl_ui_view_list_efl_access_selection_child_select(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd EINA_UNUSED, int child_index EINA_UNUSED)
{ {
return EINA_FALSE; return EINA_FALSE;
} }
EOLIAN Eina_Bool EOLIAN Eina_Bool
_efl_ui_list_efl_access_selection_selected_child_deselect(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd EINA_UNUSED, int child_index EINA_UNUSED) _efl_ui_view_list_efl_access_selection_selected_child_deselect(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd EINA_UNUSED, int child_index EINA_UNUSED)
{ {
return EINA_FALSE; return EINA_FALSE;
} }
EOLIAN Eina_Bool EOLIAN Eina_Bool
_efl_ui_list_efl_access_selection_is_child_selected(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd EINA_UNUSED, int child_index EINA_UNUSED) _efl_ui_view_list_efl_access_selection_is_child_selected(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd EINA_UNUSED, int child_index EINA_UNUSED)
{ {
return EINA_FALSE; return EINA_FALSE;
} }
EOLIAN Eina_Bool EOLIAN Eina_Bool
_efl_ui_list_efl_access_selection_all_children_select(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd EINA_UNUSED) _efl_ui_view_list_efl_access_selection_all_children_select(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd EINA_UNUSED)
{ {
return EINA_TRUE; return EINA_TRUE;
} }
EOLIAN Eina_Bool EOLIAN Eina_Bool
_efl_ui_list_efl_access_selection_access_selection_clear(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd EINA_UNUSED) _efl_ui_view_list_efl_access_selection_access_selection_clear(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd EINA_UNUSED)
{ {
return EINA_TRUE; return EINA_TRUE;
} }
EOLIAN Eina_Bool EOLIAN Eina_Bool
_efl_ui_list_efl_access_selection_child_deselect(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd EINA_UNUSED, int child_index EINA_UNUSED) _efl_ui_view_list_efl_access_selection_child_deselect(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd EINA_UNUSED, int child_index EINA_UNUSED)
{ {
return EINA_FALSE; return EINA_FALSE;
} }
@ -884,7 +884,7 @@ _key_action_escape(Evas_Object *obj, const char *params EINA_UNUSED)
} }
void void
_efl_ui_list_item_select_set(Efl_Ui_List_LayoutItem *item, Eina_Bool selected) _efl_ui_view_list_item_select_set(Efl_Ui_View_List_LayoutItem *item, Eina_Bool selected)
{ {
Eina_Stringshare *sprop; Eina_Stringshare *sprop;
assert(item != NULL); assert(item != NULL);
@ -906,7 +906,7 @@ _efl_ui_list_item_select_set(Efl_Ui_List_LayoutItem *item, Eina_Bool selected)
} }
static void static void
_efl_ui_list_relayout_set(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd EINA_UNUSED, Efl_Ui_List_Relayout *object) _efl_ui_view_list_relayout_set(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd EINA_UNUSED, Efl_Ui_View_List_Relayout *object)
{ {
if(pd->relayout) if(pd->relayout)
efl_unref(pd->relayout); efl_unref(pd->relayout);
@ -915,28 +915,28 @@ _efl_ui_list_relayout_set(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd EINA_UNUSED,
efl_ref(pd->relayout); efl_ref(pd->relayout);
} }
static Efl_Ui_List_Relayout * static Efl_Ui_View_List_Relayout *
_efl_ui_list_relayout_get(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd EINA_UNUSED) _efl_ui_view_list_relayout_get(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd EINA_UNUSED)
{ {
return pd->relayout; return pd->relayout;
} }
static void static void
_layout(Efl_Ui_List_Data *pd) _layout(Efl_Ui_View_List_Data *pd)
{ {
if (!pd->model) if (!pd->model)
return; return;
efl_ui_list_relayout_layout_do(pd->relayout, pd->obj, pd->segarray_first, pd->segarray); efl_ui_view_list_relayout_layout_do(pd->relayout, pd->obj, pd->segarray_first, pd->segarray);
} }
static void static void
_children_slice_then(void * data, Efl_Event const* event) _children_slice_then(void * data, Efl_Event const* event)
{ {
Efl_Ui_List_Data *pd = data; Efl_Ui_View_List_Data *pd = data;
Eina_Accessor *acc = (Eina_Accessor*)((Efl_Future_Event_Success*)event->info)->value; Eina_Accessor *acc = (Eina_Accessor*)((Efl_Future_Event_Success*)event->info)->value;
efl_ui_list_segarray_insert_accessor(pd->segarray, pd->outstanding_slice.slice_start, acc); efl_ui_view_list_segarray_insert_accessor(pd->segarray, pd->outstanding_slice.slice_start, acc);
pd->segarray_first = pd->outstanding_slice.slice_start; pd->segarray_first = pd->outstanding_slice.slice_start;
pd->outstanding_slice.slice_start = pd->outstanding_slice.slice_count = 0; pd->outstanding_slice.slice_start = pd->outstanding_slice.slice_count = 0;
@ -945,13 +945,13 @@ _children_slice_then(void * data, Efl_Event const* event)
/* EFL UI LIST MODEL INTERFACE */ /* EFL UI LIST MODEL INTERFACE */
EOLIAN static Eina_Size2D EOLIAN static Eina_Size2D
_efl_ui_list_efl_ui_list_model_min_size_get(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd) _efl_ui_view_list_efl_ui_view_list_model_min_size_get(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd)
{ {
return pd->min; return pd->min;
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_efl_ui_list_model_min_size_set(Eo *obj, Efl_Ui_List_Data *pd, Eina_Size2D min) _efl_ui_view_list_efl_ui_view_list_model_min_size_set(Eo *obj, Efl_Ui_View_List_Data *pd, Eina_Size2D min)
{ {
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
@ -963,33 +963,33 @@ _efl_ui_list_efl_ui_list_model_min_size_set(Eo *obj, Efl_Ui_List_Data *pd, Eina_
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_efl_ui_focus_composition_prepare(Eo *obj, Efl_Ui_List_Data *pd) _efl_ui_view_list_efl_ui_focus_composition_prepare(Eo *obj, Efl_Ui_View_List_Data *pd)
{ {
Eina_List *order = efl_ui_list_relayout_elements_get(pd->relayout); Eina_List *order = efl_ui_view_list_relayout_elements_get(pd->relayout);
efl_ui_focus_composition_elements_set(obj, order); efl_ui_focus_composition_elements_set(obj, order);
} }
EOLIAN Eina_List* EOLIAN Eina_List*
_efl_ui_list_efl_access_access_children_get(Eo *obj, Efl_Ui_List_Data *pd) _efl_ui_view_list_efl_access_access_children_get(Eo *obj, Efl_Ui_View_List_Data *pd)
{ {
Eina_List *ret = NULL, *ret2 = NULL; Eina_List *ret = NULL, *ret2 = NULL;
ret = efl_ui_list_relayout_elements_get(pd->relayout); ret = efl_ui_view_list_relayout_elements_get(pd->relayout);
ret2 = efl_access_children_get(efl_super(obj, EFL_UI_LIST_CLASS)); ret2 = efl_access_children_get(efl_super(obj, EFL_UI_VIEW_LIST_CLASS));
return eina_list_merge(ret, ret2); return eina_list_merge(ret, ret2);
} }
EOLIAN static Eina_Bool EOLIAN static Eina_Bool
_efl_ui_list_efl_ui_widget_focus_state_apply(Eo *obj, Efl_Ui_List_Data *pd EINA_UNUSED, Efl_Ui_Widget_Focus_State current_state, Efl_Ui_Widget_Focus_State *configured_state, Efl_Ui_Widget *redirect EINA_UNUSED) _efl_ui_view_list_efl_ui_widget_focus_state_apply(Eo *obj, Efl_Ui_View_List_Data *pd EINA_UNUSED, Efl_Ui_Widget_Focus_State current_state, Efl_Ui_Widget_Focus_State *configured_state, Efl_Ui_Widget *redirect EINA_UNUSED)
{ {
return efl_ui_widget_focus_state_apply(efl_super(obj, MY_CLASS), current_state, configured_state, obj); return efl_ui_widget_focus_state_apply(efl_super(obj, MY_CLASS), current_state, configured_state, obj);
} }
EOLIAN static Efl_Ui_List_LayoutItem * EOLIAN static Efl_Ui_View_List_LayoutItem *
_efl_ui_list_efl_ui_list_model_realize(Eo *obj, Efl_Ui_List_Data *pd, Efl_Ui_List_LayoutItem *item) _efl_ui_view_list_efl_ui_view_list_model_realize(Eo *obj, Efl_Ui_View_List_Data *pd, Efl_Ui_View_List_LayoutItem *item)
{ {
Efl_Ui_List_Item_Event evt; Efl_Ui_View_List_Item_Event evt;
EINA_SAFETY_ON_NULL_RETURN_VAL(item->children, item); EINA_SAFETY_ON_NULL_RETURN_VAL(item->children, item);
item->layout = efl_ui_factory_create(pd->factory, item->children, obj); item->layout = efl_ui_factory_create(pd->factory, item->children, obj);
@ -1004,8 +1004,8 @@ _efl_ui_list_efl_ui_list_model_realize(Eo *obj, Efl_Ui_List_Data *pd, Efl_Ui_Lis
evt.child = item->children; evt.child = item->children;
evt.layout = item->layout; evt.layout = item->layout;
evt.index = efl_ui_list_item_index_get(item); evt.index = efl_ui_view_list_item_index_get(item);
efl_event_callback_call(obj, EFL_UI_LIST_EVENT_ITEM_REALIZED, &evt); efl_event_callback_call(obj, EFL_UI_VIEW_LIST_EVENT_ITEM_REALIZED, &evt);
efl_ui_focus_composition_dirty(obj); efl_ui_focus_composition_dirty(obj);
evas_object_show(item->layout); evas_object_show(item->layout);
@ -1013,9 +1013,9 @@ _efl_ui_list_efl_ui_list_model_realize(Eo *obj, Efl_Ui_List_Data *pd, Efl_Ui_Lis
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_efl_ui_list_model_unrealize(Eo *obj, Efl_Ui_List_Data *pd, Efl_Ui_List_LayoutItem *item) _efl_ui_view_list_efl_ui_view_list_model_unrealize(Eo *obj, Efl_Ui_View_List_Data *pd, Efl_Ui_View_List_LayoutItem *item)
{ {
Efl_Ui_List_Item_Event evt; Efl_Ui_View_List_Item_Event evt;
EINA_SAFETY_ON_NULL_RETURN(item->layout); EINA_SAFETY_ON_NULL_RETURN(item->layout);
evas_object_event_callback_del_full(item->layout, EVAS_CALLBACK_MOUSE_UP, _on_item_mouse_up, item); evas_object_event_callback_del_full(item->layout, EVAS_CALLBACK_MOUSE_UP, _on_item_mouse_up, item);
@ -1030,8 +1030,8 @@ _efl_ui_list_efl_ui_list_model_unrealize(Eo *obj, Efl_Ui_List_Data *pd, Efl_Ui_L
evt.child = item->children; evt.child = item->children;
evt.layout = item->layout; evt.layout = item->layout;
evt.index = efl_ui_list_item_index_get(item); evt.index = efl_ui_view_list_item_index_get(item);
efl_event_callback_call(obj, EFL_UI_LIST_EVENT_ITEM_UNREALIZED, &evt); efl_event_callback_call(obj, EFL_UI_VIEW_LIST_EVENT_ITEM_UNREALIZED, &evt);
evas_object_smart_member_del(item->layout); evas_object_smart_member_del(item->layout);
efl_ui_factory_release(pd->factory, item->layout); efl_ui_factory_release(pd->factory, item->layout);
@ -1039,7 +1039,7 @@ _efl_ui_list_efl_ui_list_model_unrealize(Eo *obj, Efl_Ui_List_Data *pd, Efl_Ui_L
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_efl_ui_list_model_load_range_set(Eo* obj EINA_UNUSED, Efl_Ui_List_Data* pd, int first, int count) _efl_ui_view_list_efl_ui_view_list_model_load_range_set(Eo* obj EINA_UNUSED, Efl_Ui_View_List_Data* pd, int first, int count)
{ {
if(!pd->slice_future) if(!pd->slice_future)
{ {
@ -1051,18 +1051,18 @@ _efl_ui_list_efl_ui_list_model_load_range_set(Eo* obj EINA_UNUSED, Efl_Ui_List_D
} }
EOLIAN static int EOLIAN static int
_efl_ui_list_efl_ui_list_model_model_size_get(Eo *obj EINA_UNUSED, Efl_Ui_List_Data *pd) _efl_ui_view_list_efl_ui_view_list_model_model_size_get(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Data *pd)
{ {
return pd->item_count; return pd->item_count;
} }
ELM_WIDGET_KEY_DOWN_DEFAULT_IMPLEMENT(efl_ui_list, Efl_Ui_List_Data) ELM_WIDGET_KEY_DOWN_DEFAULT_IMPLEMENT(efl_ui_view_list, Efl_Ui_View_List_Data)
/* Internal EO APIs and hidden overrides */ /* Internal EO APIs and hidden overrides */
#define EFL_UI_LIST_EXTRA_OPS \ #define EFL_UI_VIEW_LIST_EXTRA_OPS \
EFL_CANVAS_GROUP_ADD_DEL_OPS(efl_ui_list) EFL_CANVAS_GROUP_ADD_DEL_OPS(efl_ui_view_list)
#include "efl_ui_list.eo.c" #include "efl_ui_view_list.eo.c"
#include "efl_ui_list_relayout.eo.c" #include "efl_ui_view_list_relayout.eo.c"
#include "efl_ui_list_model.eo.c" #include "efl_ui_view_list_model.eo.c"

View File

@ -1,19 +1,19 @@
import elm_general; import elm_general;
struct Efl.Ui.List.Item_Event struct Efl.Ui.View.List.Item_Event
{ {
layout: Efl.Ui.Layout; layout: Efl.Ui.Layout;
child: Efl.Model; child: Efl.Model;
index: int; index: int;
} }
class Efl.Ui.List (Efl.Ui.Layout, Efl.Ui.View, Efl.Ui.Scrollable.Interactive, Efl.Ui.Scrollbar, class Efl.Ui.View.List (Efl.Ui.Layout, Efl.Ui.View, Efl.Ui.Scrollable.Interactive, Efl.Ui.Scrollbar,
Efl.Access.Widget.Action, Efl.Access.Selection, Efl.Ui.Focus.Composition, Efl.Ui.Focus.Manager.Sub, Efl.Access.Widget.Action, Efl.Access.Selection, Efl.Ui.Focus.Composition, Efl.Ui.Focus.Manager.Sub,
Efl.Ui.Clickable, Efl.Ui.Selectable, Efl.Ui.List.Model) Efl.Ui.Clickable, Efl.Ui.Selectable, Efl.Ui.View.List.Model)
{ {
methods { methods {
@property relayout { @property relayout {
values { values {
object: Efl.Ui.List.Relayout; object: Efl.Ui.View.List.Relayout;
} }
} }
@property homogeneous { @property homogeneous {
@ -50,14 +50,14 @@ class Efl.Ui.List (Efl.Ui.Layout, Efl.Ui.View, Efl.Ui.Scrollable.Interactive, Ef
} }
} }
events { events {
item,realized : Efl.Ui.List.Item_Event; item,realized : Efl.Ui.View.List.Item_Event;
item,unrealized : Efl.Ui.List.Item_Event; item,unrealized : Efl.Ui.View.List.Item_Event;
item,focused : Efl.Ui.List.Item_Event; item,focused : Efl.Ui.View.List.Item_Event;
item,unfocused : Efl.Ui.List.Item_Event; item,unfocused : Efl.Ui.View.List.Item_Event;
item,highlighted : Efl.Ui.List.Item_Event; item,highlighted : Efl.Ui.View.List.Item_Event;
item,unhighlighted : Efl.Ui.List.Item_Event; item,unhighlighted : Efl.Ui.View.List.Item_Event;
item,selected : Efl.Ui.List.Item_Event; item,selected : Efl.Ui.View.List.Item_Event;
item,unselected : Efl.Ui.List.Item_Event; item,unselected : Efl.Ui.View.List.Item_Event;
} }
implements { implements {
@ -70,11 +70,11 @@ class Efl.Ui.List (Efl.Ui.Layout, Efl.Ui.View, Efl.Ui.Scrollable.Interactive, Ef
Efl.Canvas.Group.group_member_add; Efl.Canvas.Group.group_member_add;
Efl.Canvas.Group.group_calculate; Efl.Canvas.Group.group_calculate;
Efl.Ui.List.Model.load_range { set;} Efl.Ui.View.List.Model.load_range { set;}
Efl.Ui.List.Model.realize; Efl.Ui.View.List.Model.realize;
Efl.Ui.List.Model.unrealize; Efl.Ui.View.List.Model.unrealize;
Efl.Ui.List.Model.model_size { get; } Efl.Ui.View.List.Model.model_size { get; }
Efl.Ui.List.Model.min_size { get; set; } Efl.Ui.View.List.Model.min_size { get; set; }
// Widget // Widget
Efl.Ui.Widget.focus_manager_create; Efl.Ui.Widget.focus_manager_create;

View File

@ -1,6 +1,6 @@
import efl_ui_list_types; import efl_ui_view_list_types;
interface Efl.Ui.List.Model (Efl.Interface) interface Efl.Ui.View.List.Model (Efl.Interface)
{ {
methods { methods {
@property load_range { @property load_range {
@ -12,13 +12,13 @@ interface Efl.Ui.List.Model (Efl.Interface)
} }
realize { realize {
params { params {
item: ptr(Efl.Ui.List.LayoutItem); item: ptr(Efl.Ui.View.List.LayoutItem);
} }
return: ptr(Efl.Ui.List.LayoutItem); return: ptr(Efl.Ui.View.List.LayoutItem);
} }
unrealize { unrealize {
params { params {
item: ptr(Efl.Ui.List.LayoutItem); item: ptr(Efl.Ui.View.List.LayoutItem);
} }
} }
// @property visible_range { // @property visible_range {

View File

@ -1,6 +1,6 @@
class Efl.Ui.List.Pan (Efl.Ui.Pan) class Efl.Ui.View.List.Pan (Efl.Ui.Pan)
{ {
[[Elementary Efl_Ui_List pan class]] [[Elementary Efl_Ui_View_List pan class]]
implements { implements {
Efl.Object.destructor; Efl.Object.destructor;
Efl.Ui.Pan.content_size { get; } Efl.Ui.Pan.content_size { get; }

View File

@ -7,49 +7,49 @@
#include <assert.h> #include <assert.h>
#include "elm_priv.h" #include "elm_priv.h"
#include "efl_ui_list_segarray.h" #include "efl_ui_view_list_segarray.h"
#define MY_CLASS EFL_UI_LIST_PRECISE_LAYOUTER_CLASS #define MY_CLASS EFL_UI_VIEW_LIST_PRECISE_LAYOUTER_CLASS
typedef struct _Efl_Ui_List_Precise_Layouter_Data typedef struct _Efl_Ui_View_List_Precise_Layouter_Data
{ {
Eina_Bool initialized; Eina_Bool initialized;
Eina_Bool recalc; Eina_Bool recalc;
Eina_Bool resize; Eina_Bool resize;
Eina_Size2D min; Eina_Size2D min;
Efl_Model* model; Efl_Model* model;
Efl_Ui_List_Model *modeler; Efl_Ui_View_List_Model *modeler;
Efl_Future *count_future; Efl_Future *count_future;
Ecore_Job *calc_job; Ecore_Job *calc_job;
Efl_Ui_List_SegArray *segarray; Efl_Ui_View_List_SegArray *segarray;
int first; int first;
int count_total; int count_total;
unsigned int calc_progress; unsigned int calc_progress;
} Efl_Ui_List_Precise_Layouter_Data; } Efl_Ui_View_List_Precise_Layouter_Data;
typedef struct _Efl_Ui_List_Precise_Layouter_Node_Data typedef struct _Efl_Ui_View_List_Precise_Layouter_Node_Data
{ {
Eina_Size2D min; Eina_Size2D min;
Eina_Size2D size; Eina_Size2D size;
Eina_Bool realized; Eina_Bool realized;
} Efl_Ui_List_Precise_Layouter_Node_Data; } Efl_Ui_View_List_Precise_Layouter_Node_Data;
typedef struct _Efl_Ui_List_Precise_Layouter_Callback_Data typedef struct _Efl_Ui_View_List_Precise_Layouter_Callback_Data
{ {
Efl_Ui_List_Precise_Layouter_Data* pd; Efl_Ui_View_List_Precise_Layouter_Data* pd;
Efl_Ui_List_LayoutItem* item; Efl_Ui_View_List_LayoutItem* item;
} Efl_Ui_List_Precise_Layouter_Callback_Data; } Efl_Ui_View_List_Precise_Layouter_Callback_Data;
#include "efl_ui_list_precise_layouter.eo.h" #include "efl_ui_view_list_precise_layouter.eo.h"
static void _efl_ui_list_relayout_layout_do(Efl_Ui_List_Precise_Layouter_Data *); static void _efl_ui_view_list_relayout_layout_do(Efl_Ui_View_List_Precise_Layouter_Data *);
static Eina_Bool _initilize(Eo *, Efl_Ui_List_Precise_Layouter_Data*, Efl_Ui_List_Model*, Efl_Ui_List_SegArray*); static Eina_Bool _initilize(Eo *, Efl_Ui_View_List_Precise_Layouter_Data*, Efl_Ui_View_List_Model*, Efl_Ui_View_List_SegArray*);
static void _finalize(Eo *, Efl_Ui_List_Precise_Layouter_Data*); static void _finalize(Eo *, Efl_Ui_View_List_Precise_Layouter_Data*);
static void _node_realize(Efl_Ui_List_Precise_Layouter_Data*, Efl_Ui_List_SegArray_Node*); static void _node_realize(Efl_Ui_View_List_Precise_Layouter_Data*, Efl_Ui_View_List_SegArray_Node*);
static void _node_unrealize(Efl_Ui_List_Precise_Layouter_Data*, Efl_Ui_List_SegArray_Node*); static void _node_unrealize(Efl_Ui_View_List_Precise_Layouter_Data*, Efl_Ui_View_List_SegArray_Node*);
static void static void
_item_size_calc(Efl_Ui_List_Precise_Layouter_Data *pd, Efl_Ui_List_LayoutItem* item) _item_size_calc(Efl_Ui_View_List_Precise_Layouter_Data *pd, Efl_Ui_View_List_LayoutItem* item)
{ {
int boxx, boxy, boxw, boxh, boxl, boxr, boxt, boxb, pad[4]; int boxx, boxy, boxw, boxh, boxl, boxr, boxt, boxb, pad[4];
double align[2]; double align[2];
@ -115,11 +115,11 @@ _item_size_calc(Efl_Ui_List_Precise_Layouter_Data *pd, Efl_Ui_List_LayoutItem* i
} }
static void static void
_item_min_calc(Efl_Ui_List_Precise_Layouter_Data *pd, Efl_Ui_List_LayoutItem* item _item_min_calc(Efl_Ui_View_List_Precise_Layouter_Data *pd, Efl_Ui_View_List_LayoutItem* item
, Eina_Size2D min, Efl_Ui_List_SegArray_Node *itemnode) , Eina_Size2D min, Efl_Ui_View_List_SegArray_Node *itemnode)
{ {
Efl_Ui_List_Precise_Layouter_Node_Data *nodedata = itemnode->layout_data; Efl_Ui_View_List_Precise_Layouter_Node_Data *nodedata = itemnode->layout_data;
Efl_Ui_List_LayoutItem *layout_item; Efl_Ui_View_List_LayoutItem *layout_item;
int i, pad[4]; int i, pad[4];
efl_gfx_size_hint_margin_get(item->layout, &pad[0], &pad[1], &pad[2], &pad[3]); efl_gfx_size_hint_margin_get(item->layout, &pad[0], &pad[1], &pad[2], &pad[3]);
@ -140,7 +140,7 @@ _item_min_calc(Efl_Ui_List_Precise_Layouter_Data *pd, Efl_Ui_List_LayoutItem* it
nodedata->min.w = 0; nodedata->min.w = 0;
for (i = 0; i != itemnode->length; ++i) for (i = 0; i != itemnode->length; ++i)
{ {
layout_item = (Efl_Ui_List_LayoutItem *)itemnode->pointers[i]; layout_item = (Efl_Ui_View_List_LayoutItem *)itemnode->pointers[i];
if (nodedata->min.w < layout_item->min.w) if (nodedata->min.w < layout_item->min.w)
nodedata->min.w = layout_item->min.w; nodedata->min.w = layout_item->min.w;
@ -153,13 +153,13 @@ _item_min_calc(Efl_Ui_List_Precise_Layouter_Data *pd, Efl_Ui_List_LayoutItem* it
pd->min.w = min.w; pd->min.w = min.w;
else if (pd->min.w == item->min.w) else if (pd->min.w == item->min.w)
{ {
Efl_Ui_List_SegArray_Node *node2; Efl_Ui_View_List_SegArray_Node *node2;
Eina_Accessor *nodes = efl_ui_list_segarray_node_accessor_get(pd->segarray); Eina_Accessor *nodes = efl_ui_view_list_segarray_node_accessor_get(pd->segarray);
pd->min.w = min.w; pd->min.w = min.w;
EINA_ACCESSOR_FOREACH(nodes, i, node2) EINA_ACCESSOR_FOREACH(nodes, i, node2)
{ {
Efl_Ui_List_Precise_Layouter_Node_Data *nodedata2 = node2->layout_data; Efl_Ui_View_List_Precise_Layouter_Node_Data *nodedata2 = node2->layout_data;
if (pd->min.w < nodedata2->min.w) if (pd->min.w < nodedata2->min.w)
pd->min.w = nodedata2->min.w; pd->min.w = nodedata2->min.w;
@ -178,22 +178,22 @@ _item_min_calc(Efl_Ui_List_Precise_Layouter_Data *pd, Efl_Ui_List_LayoutItem* it
static void static void
_count_then(void * data, Efl_Event const* event) _count_then(void * data, Efl_Event const* event)
{ {
Efl_Ui_List_Precise_Layouter_Data *pd = data; Efl_Ui_View_List_Precise_Layouter_Data *pd = data;
EINA_SAFETY_ON_NULL_RETURN(pd); EINA_SAFETY_ON_NULL_RETURN(pd);
pd->count_future = NULL; pd->count_future = NULL;
pd->count_total = *(int*)((Efl_Future_Event_Success*)event->info)->value; pd->count_total = *(int*)((Efl_Future_Event_Success*)event->info)->value;
if (pd->modeler && (pd->count_total != efl_ui_list_segarray_count(pd->segarray))) if (pd->modeler && (pd->count_total != efl_ui_view_list_segarray_count(pd->segarray)))
{ {
pd->recalc = EINA_TRUE; pd->recalc = EINA_TRUE;
efl_ui_list_model_load_range_set(pd->modeler, 0, 0); // load all efl_ui_view_list_model_load_range_set(pd->modeler, 0, 0); // load all
} }
} }
static void static void
_count_error(void * data, Efl_Event const* event EINA_UNUSED) _count_error(void * data, Efl_Event const* event EINA_UNUSED)
{ {
Efl_Ui_List_Precise_Layouter_Data *pd = data; Efl_Ui_View_List_Precise_Layouter_Data *pd = data;
EINA_SAFETY_ON_NULL_RETURN(pd); EINA_SAFETY_ON_NULL_RETURN(pd);
pd->count_future = NULL; pd->count_future = NULL;
} }
@ -202,18 +202,18 @@ static void
_on_item_size_hint_change(void *data, Evas *e EINA_UNUSED, _on_item_size_hint_change(void *data, Evas *e EINA_UNUSED,
Evas_Object *obj, void *event_info EINA_UNUSED) Evas_Object *obj, void *event_info EINA_UNUSED)
{ {
Efl_Ui_List_Precise_Layouter_Callback_Data *cb_data = data; Efl_Ui_View_List_Precise_Layouter_Callback_Data *cb_data = data;
Efl_Ui_List_Precise_Layouter_Data *pd = cb_data->pd; Efl_Ui_View_List_Precise_Layouter_Data *pd = cb_data->pd;
Efl_Ui_List_LayoutItem *item = cb_data->item;; Efl_Ui_View_List_LayoutItem *item = cb_data->item;;
Efl_Ui_List_SegArray_Node *node = item->tree_node; Efl_Ui_View_List_SegArray_Node *node = item->tree_node;
Efl_Ui_List_Precise_Layouter_Node_Data *nodedata = node->layout_data; Efl_Ui_View_List_Precise_Layouter_Node_Data *nodedata = node->layout_data;
Eina_Size2D min = efl_gfx_size_hint_combined_min_get(obj); Eina_Size2D min = efl_gfx_size_hint_combined_min_get(obj);
_item_min_calc(pd, item, min, node); _item_min_calc(pd, item, min, node);
if (!nodedata->realized) if (!nodedata->realized)
{ {
free(evas_object_event_callback_del(item->layout, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _on_item_size_hint_change)); free(evas_object_event_callback_del(item->layout, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _on_item_size_hint_change));
efl_ui_list_model_unrealize(pd->modeler, item); efl_ui_view_list_model_unrealize(pd->modeler, item);
} }
} }
@ -221,7 +221,7 @@ static void
_on_modeler_resize(void *data, Evas *e EINA_UNUSED, _on_modeler_resize(void *data, Evas *e EINA_UNUSED,
Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
{ {
Efl_Ui_List_Precise_Layouter_Data *pd = data; Efl_Ui_View_List_Precise_Layouter_Data *pd = data;
pd->resize = EINA_TRUE; pd->resize = EINA_TRUE;
} }
@ -229,9 +229,9 @@ static void
_child_added_cb(void *data, const Efl_Event *event) _child_added_cb(void *data, const Efl_Event *event)
{ {
Efl_Model_Children_Event* evt = event->info; Efl_Model_Children_Event* evt = event->info;
Efl_Ui_List_Precise_Layouter_Data *pd = data; Efl_Ui_View_List_Precise_Layouter_Data *pd = data;
efl_ui_list_segarray_insert(pd->segarray, evt->index, evt->child); efl_ui_view_list_segarray_insert(pd->segarray, evt->index, evt->child);
pd->recalc = EINA_TRUE; pd->recalc = EINA_TRUE;
evas_object_smart_changed(pd->modeler); evas_object_smart_changed(pd->modeler);
} }
@ -240,13 +240,13 @@ static void
_child_removed_cb(void *data, const Efl_Event *event) _child_removed_cb(void *data, const Efl_Event *event)
{ {
Efl_Model_Children_Event* evt = event->info; Efl_Model_Children_Event* evt = event->info;
Efl_Ui_List_Precise_Layouter_Data *pd = data; Efl_Ui_View_List_Precise_Layouter_Data *pd = data;
Efl_Ui_List_LayoutItem *layout_item, *litem; Efl_Ui_View_List_LayoutItem *layout_item, *litem;
Efl_Ui_List_Precise_Layouter_Node_Data *nodedata; Efl_Ui_View_List_Precise_Layouter_Node_Data *nodedata;
Efl_Ui_List_SegArray_Node *itemnode; Efl_Ui_View_List_SegArray_Node *itemnode;
int i; int i;
litem = efl_ui_list_segarray_remove(pd->segarray, evt->index); litem = efl_ui_view_list_segarray_remove(pd->segarray, evt->index);
if (!litem) return; if (!litem) return;
itemnode = litem->tree_node; itemnode = litem->tree_node;
@ -262,7 +262,7 @@ _child_removed_cb(void *data, const Efl_Event *event)
for (i = 0; i != itemnode->length; ++i) for (i = 0; i != itemnode->length; ++i)
{ {
layout_item = (Efl_Ui_List_LayoutItem *)itemnode->pointers[i]; layout_item = (Efl_Ui_View_List_LayoutItem *)itemnode->pointers[i];
if (nodedata->min.w < layout_item->min.w) if (nodedata->min.w < layout_item->min.w)
nodedata->min.w = layout_item->min.w; nodedata->min.w = layout_item->min.w;
@ -275,13 +275,13 @@ _child_removed_cb(void *data, const Efl_Event *event)
if (pd->min.w == litem->min.w) if (pd->min.w == litem->min.w)
{ {
Efl_Ui_List_SegArray_Node *node2; Efl_Ui_View_List_SegArray_Node *node2;
Eina_Accessor *nodes = efl_ui_list_segarray_node_accessor_get(pd->segarray); Eina_Accessor *nodes = efl_ui_view_list_segarray_node_accessor_get(pd->segarray);
pd->min.w = 0; pd->min.w = 0;
EINA_ACCESSOR_FOREACH(nodes, i, node2) EINA_ACCESSOR_FOREACH(nodes, i, node2)
{ {
Efl_Ui_List_Precise_Layouter_Node_Data *nodedata2 = node2->layout_data; Efl_Ui_View_List_Precise_Layouter_Node_Data *nodedata2 = node2->layout_data;
if (pd->min.w < nodedata2->min.w) if (pd->min.w < nodedata2->min.w)
pd->min.w = nodedata2->min.w; pd->min.w = nodedata2->min.w;
@ -291,7 +291,7 @@ _child_removed_cb(void *data, const Efl_Event *event)
eina_accessor_free(nodes); eina_accessor_free(nodes);
} }
efl_ui_list_model_unrealize(pd->modeler, litem); efl_ui_view_list_model_unrealize(pd->modeler, litem);
free(litem); free(litem);
pd->recalc = EINA_TRUE; pd->recalc = EINA_TRUE;
@ -299,7 +299,7 @@ _child_removed_cb(void *data, const Efl_Event *event)
} }
static Eina_Bool static Eina_Bool
_initilize(Eo *obj EINA_UNUSED, Efl_Ui_List_Precise_Layouter_Data *pd, Efl_Ui_List_Model *modeler, Efl_Ui_List_SegArray *segarray) _initilize(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Precise_Layouter_Data *pd, Efl_Ui_View_List_Model *modeler, Efl_Ui_View_List_SegArray *segarray)
{ {
if(pd->initialized) if(pd->initialized)
return EINA_TRUE; return EINA_TRUE;
@ -316,7 +316,7 @@ _initilize(Eo *obj EINA_UNUSED, Efl_Ui_List_Precise_Layouter_Data *pd, Efl_Ui_Li
evas_object_event_callback_add(modeler, EVAS_CALLBACK_RESIZE, _on_modeler_resize, pd); evas_object_event_callback_add(modeler, EVAS_CALLBACK_RESIZE, _on_modeler_resize, pd);
efl_event_callback_add(pd->model, EFL_MODEL_EVENT_CHILD_ADDED, _child_added_cb, pd); efl_event_callback_add(pd->model, EFL_MODEL_EVENT_CHILD_ADDED, _child_added_cb, pd);
efl_event_callback_add(pd->model, EFL_MODEL_EVENT_CHILD_REMOVED, _child_removed_cb, pd); efl_event_callback_add(pd->model, EFL_MODEL_EVENT_CHILD_REMOVED, _child_removed_cb, pd);
efl_ui_list_model_load_range_set(modeler, 0, 0); // load all efl_ui_view_list_model_load_range_set(modeler, 0, 0); // load all
pd->min.w = 0; pd->min.w = 0;
pd->min.h = 0; pd->min.h = 0;
@ -325,16 +325,16 @@ _initilize(Eo *obj EINA_UNUSED, Efl_Ui_List_Precise_Layouter_Data *pd, Efl_Ui_Li
} }
static void static void
_finalize(Eo *obj EINA_UNUSED, Efl_Ui_List_Precise_Layouter_Data *pd) _finalize(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Precise_Layouter_Data *pd)
{ {
Efl_Ui_List_SegArray_Node* node; Efl_Ui_View_List_SegArray_Node* node;
int i = 0; int i = 0;
evas_object_event_callback_del_full(pd->modeler, EVAS_CALLBACK_RESIZE, _on_modeler_resize, pd); evas_object_event_callback_del_full(pd->modeler, EVAS_CALLBACK_RESIZE, _on_modeler_resize, pd);
efl_event_callback_del(pd->model, EFL_MODEL_EVENT_CHILD_ADDED, _child_added_cb, pd); efl_event_callback_del(pd->model, EFL_MODEL_EVENT_CHILD_ADDED, _child_added_cb, pd);
efl_event_callback_del(pd->model, EFL_MODEL_EVENT_CHILD_REMOVED, _child_removed_cb, pd); efl_event_callback_del(pd->model, EFL_MODEL_EVENT_CHILD_REMOVED, _child_removed_cb, pd);
Eina_Accessor *nodes = efl_ui_list_segarray_node_accessor_get(pd->segarray); Eina_Accessor *nodes = efl_ui_view_list_segarray_node_accessor_get(pd->segarray);
EINA_ACCESSOR_FOREACH(nodes, i, node) EINA_ACCESSOR_FOREACH(nodes, i, node)
{ {
_node_unrealize(pd, node); _node_unrealize(pd, node);
@ -346,7 +346,7 @@ _finalize(Eo *obj EINA_UNUSED, Efl_Ui_List_Precise_Layouter_Data *pd)
pd->min.w = 0; pd->min.w = 0;
pd->min.h = 0; pd->min.h = 0;
efl_ui_list_model_min_size_set(pd->modeler, pd->min); efl_ui_view_list_model_min_size_set(pd->modeler, pd->min);
pd->segarray = NULL; pd->segarray = NULL;
pd->modeler = NULL; pd->modeler = NULL;
@ -355,11 +355,11 @@ _finalize(Eo *obj EINA_UNUSED, Efl_Ui_List_Precise_Layouter_Data *pd)
} }
static void static void
_node_realize(Efl_Ui_List_Precise_Layouter_Data *pd, Efl_Ui_List_SegArray_Node *node) _node_realize(Efl_Ui_View_List_Precise_Layouter_Data *pd, Efl_Ui_View_List_SegArray_Node *node)
{ {
Efl_Ui_List_LayoutItem* layout_item; Efl_Ui_View_List_LayoutItem* layout_item;
Efl_Ui_List_Precise_Layouter_Callback_Data *cb_data; Efl_Ui_View_List_Precise_Layouter_Callback_Data *cb_data;
Efl_Ui_List_Precise_Layouter_Node_Data *nodedata = node->layout_data; Efl_Ui_View_List_Precise_Layouter_Node_Data *nodedata = node->layout_data;
int i; int i;
EINA_SAFETY_ON_NULL_RETURN(nodedata); EINA_SAFETY_ON_NULL_RETURN(nodedata);
@ -370,12 +370,12 @@ _node_realize(Efl_Ui_List_Precise_Layouter_Data *pd, Efl_Ui_List_SegArray_Node *
for (i = 0; i != node->length; ++i) for (i = 0; i != node->length; ++i)
{ {
layout_item = (Efl_Ui_List_LayoutItem *)node->pointers[i]; layout_item = (Efl_Ui_View_List_LayoutItem *)node->pointers[i];
efl_ui_list_model_realize(pd->modeler, layout_item); efl_ui_view_list_model_realize(pd->modeler, layout_item);
if (layout_item->layout) if (layout_item->layout)
{ {
cb_data = calloc(1, sizeof(Efl_Ui_List_Precise_Layouter_Callback_Data)); cb_data = calloc(1, sizeof(Efl_Ui_View_List_Precise_Layouter_Callback_Data));
cb_data->pd = pd; cb_data->pd = pd;
cb_data->item = layout_item; cb_data->item = layout_item;
evas_object_event_callback_add(layout_item->layout, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _on_item_size_hint_change, cb_data); evas_object_event_callback_add(layout_item->layout, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _on_item_size_hint_change, cb_data);
@ -385,11 +385,11 @@ _node_realize(Efl_Ui_List_Precise_Layouter_Data *pd, Efl_Ui_List_SegArray_Node *
} }
static void static void
_node_unrealize(Efl_Ui_List_Precise_Layouter_Data *pd, Efl_Ui_List_SegArray_Node *node) _node_unrealize(Efl_Ui_View_List_Precise_Layouter_Data *pd, Efl_Ui_View_List_SegArray_Node *node)
{ {
Efl_Ui_List_LayoutItem* layout_item; Efl_Ui_View_List_LayoutItem* layout_item;
Efl_Ui_List_Precise_Layouter_Callback_Data *cb_data; Efl_Ui_View_List_Precise_Layouter_Callback_Data *cb_data;
Efl_Ui_List_Precise_Layouter_Node_Data *nodedata = node->layout_data; Efl_Ui_View_List_Precise_Layouter_Node_Data *nodedata = node->layout_data;
int i; int i;
EINA_SAFETY_ON_NULL_RETURN(nodedata); EINA_SAFETY_ON_NULL_RETURN(nodedata);
@ -400,24 +400,24 @@ _node_unrealize(Efl_Ui_List_Precise_Layouter_Data *pd, Efl_Ui_List_SegArray_Node
for (i = 0; i != node->length; ++i) for (i = 0; i != node->length; ++i)
{ {
layout_item = (Efl_Ui_List_LayoutItem *)node->pointers[i]; layout_item = (Efl_Ui_View_List_LayoutItem *)node->pointers[i];
if (layout_item->layout) if (layout_item->layout)
{ {
cb_data = evas_object_event_callback_del(layout_item->layout, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _on_item_size_hint_change); cb_data = evas_object_event_callback_del(layout_item->layout, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _on_item_size_hint_change);
free(cb_data); free(cb_data);
} }
efl_ui_list_model_unrealize(pd->modeler, layout_item); efl_ui_view_list_model_unrealize(pd->modeler, layout_item);
} }
} }
static void static void
_calc_range(Efl_Ui_List_Precise_Layouter_Data *pd) _calc_range(Efl_Ui_View_List_Precise_Layouter_Data *pd)
{ {
Efl_Ui_List_SegArray_Node *node; Efl_Ui_View_List_SegArray_Node *node;
Evas_Coord ch, ny; Evas_Coord ch, ny;
Eina_Rect vgmt; Eina_Rect vgmt;
Eina_Position2D spos; Eina_Position2D spos;
Efl_Ui_List_Precise_Layouter_Node_Data *nodedata; Efl_Ui_View_List_Precise_Layouter_Node_Data *nodedata;
int i; int i;
vgmt = efl_ui_scrollable_viewport_geometry_get(pd->modeler); vgmt = efl_ui_scrollable_viewport_geometry_get(pd->modeler);
@ -429,7 +429,7 @@ _calc_range(Efl_Ui_List_Precise_Layouter_Data *pd)
vgmt.h *= 2; vgmt.h *= 2;
ch = 0; ch = 0;
Eina_Accessor *nodes = efl_ui_list_segarray_node_accessor_get(pd->segarray); Eina_Accessor *nodes = efl_ui_view_list_segarray_node_accessor_get(pd->segarray);
EINA_ACCESSOR_FOREACH(nodes, i, node) EINA_ACCESSOR_FOREACH(nodes, i, node)
{ {
nodedata = node->layout_data; nodedata = node->layout_data;
@ -449,9 +449,9 @@ _calc_range(Efl_Ui_List_Precise_Layouter_Data *pd)
static void static void
_calc_size_job(void *data) _calc_size_job(void *data)
{ {
Efl_Ui_List_Precise_Layouter_Data *pd; Efl_Ui_View_List_Precise_Layouter_Data *pd;
Efl_Ui_List_SegArray_Node *node; Efl_Ui_View_List_SegArray_Node *node;
Efl_Ui_List_LayoutItem *layout_item; Efl_Ui_View_List_LayoutItem *layout_item;
Eo *obj = data; Eo *obj = data;
Eina_Size2D min; Eina_Size2D min;
int i; int i;
@ -463,16 +463,16 @@ _calc_size_job(void *data)
pd->recalc = EINA_FALSE; pd->recalc = EINA_FALSE;
Eina_Accessor *nodes = efl_ui_list_segarray_node_accessor_get(pd->segarray); Eina_Accessor *nodes = efl_ui_view_list_segarray_node_accessor_get(pd->segarray);
while (eina_accessor_data_get(nodes, pd->calc_progress, (void **)&node)) while (eina_accessor_data_get(nodes, pd->calc_progress, (void **)&node))
{ {
pd->calc_progress++; pd->calc_progress++;
if (!node->layout_data) if (!node->layout_data)
node->layout_data = calloc(1, sizeof(Efl_Ui_List_Precise_Layouter_Node_Data)); node->layout_data = calloc(1, sizeof(Efl_Ui_View_List_Precise_Layouter_Node_Data));
for (i = 0; i != node->length; ++i) for (i = 0; i != node->length; ++i)
{ {
layout_item = (Efl_Ui_List_LayoutItem *)node->pointers[i]; layout_item = (Efl_Ui_View_List_LayoutItem *)node->pointers[i];
EINA_SAFETY_ON_NULL_RETURN(layout_item); EINA_SAFETY_ON_NULL_RETURN(layout_item);
// cache size of new items // cache size of new items
@ -480,18 +480,18 @@ _calc_size_job(void *data)
{ {
if (!layout_item->layout) if (!layout_item->layout)
{ {
efl_ui_list_model_realize(pd->modeler, layout_item); efl_ui_view_list_model_realize(pd->modeler, layout_item);
} }
min = efl_gfx_size_hint_combined_min_get(layout_item->layout); min = efl_gfx_size_hint_combined_min_get(layout_item->layout);
if (min.w && min.h) if (min.w && min.h)
{ {
_item_min_calc(pd, layout_item, min, node); _item_min_calc(pd, layout_item, min, node);
efl_ui_list_model_unrealize(pd->modeler, layout_item); efl_ui_view_list_model_unrealize(pd->modeler, layout_item);
} }
else else
{ {
Efl_Ui_List_Precise_Layouter_Callback_Data *cb_data = calloc(1, sizeof(Efl_Ui_List_Precise_Layouter_Callback_Data)); Efl_Ui_View_List_Precise_Layouter_Callback_Data *cb_data = calloc(1, sizeof(Efl_Ui_View_List_Precise_Layouter_Callback_Data));
cb_data->pd = pd; cb_data->pd = pd;
cb_data->item = layout_item; cb_data->item = layout_item;
evas_object_event_callback_add(layout_item->layout, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _on_item_size_hint_change, cb_data); evas_object_event_callback_add(layout_item->layout, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _on_item_size_hint_change, cb_data);
@ -514,7 +514,7 @@ _calc_size_job(void *data)
} }
EOLIAN static Efl_Object * EOLIAN static Efl_Object *
_efl_ui_list_precise_layouter_efl_object_constructor(Eo *obj EINA_UNUSED, Efl_Ui_List_Precise_Layouter_Data *pd) _efl_ui_view_list_precise_layouter_efl_object_constructor(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Precise_Layouter_Data *pd)
{ {
obj = efl_constructor(efl_super(obj, MY_CLASS)); obj = efl_constructor(efl_super(obj, MY_CLASS));
pd->initialized = EINA_FALSE; pd->initialized = EINA_FALSE;
@ -524,23 +524,23 @@ _efl_ui_list_precise_layouter_efl_object_constructor(Eo *obj EINA_UNUSED, Efl_Ui
} }
EOLIAN static Eina_List * EOLIAN static Eina_List *
_efl_ui_list_precise_layouter_efl_ui_list_relayout_elements_get(Eo *obj EINA_UNUSED, Efl_Ui_List_Precise_Layouter_Data *pd) _efl_ui_view_list_precise_layouter_efl_ui_view_list_relayout_elements_get(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Precise_Layouter_Data *pd)
{ {
Eina_List *elements_order = NULL; Eina_List *elements_order = NULL;
Efl_Ui_List_LayoutItem* layout_item; Efl_Ui_View_List_LayoutItem* layout_item;
Efl_Ui_List_SegArray_Node *items_node; Efl_Ui_View_List_SegArray_Node *items_node;
int i, j = 0; int i, j = 0;
Eina_Accessor *nodes = efl_ui_list_segarray_node_accessor_get(pd->segarray); Eina_Accessor *nodes = efl_ui_view_list_segarray_node_accessor_get(pd->segarray);
EINA_ACCESSOR_FOREACH(nodes, i, items_node) EINA_ACCESSOR_FOREACH(nodes, i, items_node)
{ {
Efl_Ui_List_Precise_Layouter_Node_Data *nodedata = items_node->layout_data; Efl_Ui_View_List_Precise_Layouter_Node_Data *nodedata = items_node->layout_data;
if (!nodedata || !nodedata->realized) if (!nodedata || !nodedata->realized)
continue; continue;
for(j = 0; j != items_node->length;++j) for(j = 0; j != items_node->length;++j)
{ {
layout_item = (Efl_Ui_List_LayoutItem *)items_node->pointers[j]; layout_item = (Efl_Ui_View_List_LayoutItem *)items_node->pointers[j];
if (layout_item->layout) if (layout_item->layout)
elements_order = eina_list_append(elements_order, layout_item->layout); elements_order = eina_list_append(elements_order, layout_item->layout);
} }
@ -550,7 +550,7 @@ _efl_ui_list_precise_layouter_efl_ui_list_relayout_elements_get(Eo *obj EINA_UNU
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_precise_layouter_efl_ui_list_relayout_model_set(Eo *obj EINA_UNUSED, Efl_Ui_List_Precise_Layouter_Data *pd, Efl_Model *model) _efl_ui_view_list_precise_layouter_efl_ui_view_list_relayout_model_set(Eo *obj EINA_UNUSED, Efl_Ui_View_List_Precise_Layouter_Data *pd, Efl_Model *model)
{ {
if (pd->model == model) if (pd->model == model)
return; return;
@ -579,13 +579,13 @@ _efl_ui_list_precise_layouter_efl_ui_list_relayout_model_set(Eo *obj EINA_UNUSED
} }
static void static void
_efl_ui_list_relayout_layout_do(Efl_Ui_List_Precise_Layouter_Data *pd) _efl_ui_view_list_relayout_layout_do(Efl_Ui_View_List_Precise_Layouter_Data *pd)
{ {
Eina_Rect vgmt; Eina_Rect vgmt;
Eina_Position2D spos; Eina_Position2D spos;
double cur_pos = 0; double cur_pos = 0;
Efl_Ui_List_LayoutItem* layout_item; Efl_Ui_View_List_LayoutItem* layout_item;
Efl_Ui_List_SegArray_Node *items_node; Efl_Ui_View_List_SegArray_Node *items_node;
int i, j = 0; int i, j = 0;
_calc_range(pd); _calc_range(pd);
@ -612,15 +612,15 @@ _efl_ui_list_relayout_layout_do(Efl_Ui_List_Precise_Layouter_Data *pd)
extra = boxh - pd->min.h; extra = boxh - pd->min.h;
if (extra < 0) extra = 0; if (extra < 0) extra = 0;
efl_ui_list_model_min_size_set(pd->modeler, pd->min); efl_ui_view_list_model_min_size_set(pd->modeler, pd->min);
vgmt = efl_ui_scrollable_viewport_geometry_get(pd->modeler); vgmt = efl_ui_scrollable_viewport_geometry_get(pd->modeler);
spos = efl_ui_scrollable_content_pos_get(pd->modeler); spos = efl_ui_scrollable_content_pos_get(pd->modeler);
Eina_Accessor *nodes = efl_ui_list_segarray_node_accessor_get(pd->segarray); Eina_Accessor *nodes = efl_ui_view_list_segarray_node_accessor_get(pd->segarray);
EINA_ACCESSOR_FOREACH(nodes, i, items_node) EINA_ACCESSOR_FOREACH(nodes, i, items_node)
{ {
Efl_Ui_List_Precise_Layouter_Node_Data *nodedata = items_node->layout_data; Efl_Ui_View_List_Precise_Layouter_Node_Data *nodedata = items_node->layout_data;
if (!nodedata) if (!nodedata)
{ {
continue; continue;
@ -630,7 +630,7 @@ _efl_ui_list_relayout_layout_do(Efl_Ui_List_Precise_Layouter_Data *pd)
{ {
for(j = 0; j != items_node->length;++j) for(j = 0; j != items_node->length;++j)
{ {
layout_item = (Efl_Ui_List_LayoutItem *)items_node->pointers[j]; layout_item = (Efl_Ui_View_List_LayoutItem *)items_node->pointers[j];
double x, y, w, h; double x, y, w, h;
double weight_x, weight_y; double weight_x, weight_y;
@ -669,16 +669,16 @@ _efl_ui_list_relayout_layout_do(Efl_Ui_List_Precise_Layouter_Data *pd)
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_precise_layouter_efl_ui_list_relayout_layout_do _efl_ui_view_list_precise_layouter_efl_ui_view_list_relayout_layout_do
(Eo *obj EINA_UNUSED, Efl_Ui_List_Precise_Layouter_Data *pd (Eo *obj EINA_UNUSED, Efl_Ui_View_List_Precise_Layouter_Data *pd
, Efl_Ui_List_Model *modeler, int first, Efl_Ui_List_SegArray *segarray) , Efl_Ui_View_List_Model *modeler, int first, Efl_Ui_View_List_SegArray *segarray)
{ {
if (!_initilize(obj, pd, modeler, segarray)) if (!_initilize(obj, pd, modeler, segarray))
return; return;
pd->first = first; pd->first = first;
if (pd->recalc && efl_ui_list_segarray_count(segarray) > 0) if (pd->recalc && efl_ui_view_list_segarray_count(segarray) > 0)
{ {
// cache size of new items // cache size of new items
pd->calc_progress = 0; pd->calc_progress = 0;
@ -687,7 +687,7 @@ _efl_ui_list_precise_layouter_efl_ui_list_relayout_layout_do
return; return;
} }
_efl_ui_list_relayout_layout_do(pd); _efl_ui_view_list_relayout_layout_do(pd);
} }
#include "efl_ui_list_precise_layouter.eo.c" #include "efl_ui_view_list_precise_layouter.eo.c"

View File

@ -0,0 +1,9 @@
class Efl.Ui.View.List.Precise_Layouter (Efl.Object, Efl.Ui.View.List.Relayout)
{
implements {
Efl.Object.constructor;
Efl.Ui.View.List.Relayout.layout_do;
Efl.Ui.View.List.Relayout.model { set; }
Efl.Ui.View.List.Relayout.elements { get; }
}
}

View File

@ -1,5 +1,5 @@
#ifndef EFL_UI_LIST_PRIVATE_H #ifndef EFL_UI_VIEW_LIST_PRIVATE_H
#define EFL_UI_LIST_PRIVATE_H #define EFL_UI_VIEW_LIST_PRIVATE_H
#ifdef HAVE_CONFIG_H #ifdef HAVE_CONFIG_H
# include "elementary_config.h" # include "elementary_config.h"
@ -12,19 +12,19 @@
#include <Elementary.h> #include <Elementary.h>
#include "elm_priv.h" #include "elm_priv.h"
typedef struct _Efl_Ui_List_Data Efl_Ui_List_Data; typedef struct _Efl_Ui_View_List_Data Efl_Ui_View_List_Data;
int efl_ui_list_item_index_get(Efl_Ui_List_LayoutItem *item); int efl_ui_view_list_item_index_get(Efl_Ui_View_List_LayoutItem *item);
typedef struct _Efl_Ui_List_Data Efl_Ui_List_Data; typedef struct _Efl_Ui_View_List_Data Efl_Ui_View_List_Data;
#include "efl_ui_list_segarray.h" #include "efl_ui_view_list_segarray.h"
struct _Efl_Ui_List_Data struct _Efl_Ui_View_List_Data
{ {
Eo *obj; Eo *obj;
Eo *scrl_mgr; Eo *scrl_mgr;
Efl_Ui_List_Pan *pan_obj; Efl_Ui_View_List_Pan *pan_obj;
Efl_Model *model; Efl_Model *model;
struct { struct {
@ -41,7 +41,7 @@ struct _Efl_Ui_List_Data
} weight; } weight;
int segarray_first; int segarray_first;
Efl_Ui_List_SegArray *segarray; Efl_Ui_View_List_SegArray *segarray;
Efl_Ui_Layout_Factory *factory; Efl_Ui_Layout_Factory *factory;
Eina_List *selected_items; Eina_List *selected_items;
@ -55,7 +55,7 @@ struct _Efl_Ui_List_Data
int item_count; int item_count;
Efl_Future *slice_future; Efl_Future *slice_future;
Efl_Future *count_future; Efl_Future *count_future;
Efl_Ui_List_Relayout *relayout; Efl_Ui_View_List_Relayout *relayout;
struct { struct {
int slice_start; int slice_start;
int slice_count; int slice_count;
@ -67,9 +67,9 @@ struct _Efl_Ui_List_Data
Eina_Bool scrl_freeze : 1; Eina_Bool scrl_freeze : 1;
}; };
typedef struct _Efl_Ui_List_Pan_Data Efl_Ui_List_Pan_Data; typedef struct _Efl_Ui_View_List_Pan_Data Efl_Ui_View_List_Pan_Data;
struct _Efl_Ui_List_Pan_Data struct _Efl_Ui_View_List_Pan_Data
{ {
Eo *wobj; Eo *wobj;
Eina_Rect gmt; Eina_Rect gmt;
@ -78,19 +78,19 @@ struct _Efl_Ui_List_Pan_Data
Ecore_Job *resize_job; Ecore_Job *resize_job;
}; };
typedef struct _Efl_Ui_List_Slice Efl_Ui_List_Slice; typedef struct _Efl_Ui_View_List_Slice Efl_Ui_View_List_Slice;
struct _Efl_Ui_List_Slice struct _Efl_Ui_View_List_Slice
{ {
Efl_Ui_List_Data *pd; Efl_Ui_View_List_Data *pd;
int newstart, slicestart, newslice; int newstart, slicestart, newslice;
}; };
#define EFL_UI_LIST_DATA_GET(o, ptr) \ #define EFL_UI_VIEW_LIST_DATA_GET(o, ptr) \
Efl_Ui_List_Data * ptr = efl_data_scope_get(o, EFL_UI_LIST_CLASS) Efl_Ui_View_List_Data * ptr = efl_data_scope_get(o, EFL_UI_VIEW_LIST_CLASS)
#define EFL_UI_LIST_DATA_GET_OR_RETURN(o, ptr) \ #define EFL_UI_VIEW_LIST_DATA_GET_OR_RETURN(o, ptr) \
EFL_UI_LIST_DATA_GET(o, ptr); \ EFL_UI_VIEW_LIST_DATA_GET(o, ptr); \
if (EINA_UNLIKELY(!ptr)) \ if (EINA_UNLIKELY(!ptr)) \
{ \ { \
ERR("No widget data for object %p (%s)", \ ERR("No widget data for object %p (%s)", \
@ -98,8 +98,8 @@ struct _Efl_Ui_List_Slice
return; \ return; \
} }
#define EFL_UI_LIST_DATA_GET_OR_RETURN_VAL(o, ptr, val) \ #define EFL_UI_VIEW_LIST_DATA_GET_OR_RETURN_VAL(o, ptr, val) \
EFL_UI_LIST_DATA_GET(o, ptr); \ EFL_UI_VIEW_LIST_DATA_GET(o, ptr); \
if (EINA_UNLIKELY(!ptr)) \ if (EINA_UNLIKELY(!ptr)) \
{ \ { \
ERR("No widget data for object %p (%s)", \ ERR("No widget data for object %p (%s)", \

View File

@ -1,13 +1,13 @@
import efl_ui_list_types; import efl_ui_view_list_types;
interface Efl.Ui.List.Relayout (Efl.Interface) interface Efl.Ui.View.List.Relayout (Efl.Interface)
{ {
methods { methods {
layout_do { layout_do {
params { params {
modeler: Efl.Ui.List.Model; modeler: Efl.Ui.View.List.Model;
first: int; first: int;
children: Efl.Ui.List.SegArray; children: Efl.Ui.View.List.SegArray;
} }
} }
@property model { @property model {

View File

@ -5,15 +5,15 @@
#include <Efl.h> #include <Efl.h>
#include <assert.h> #include <assert.h>
#define MY_CLASS EFL_UI_LIST_SEGARRAY_CLASS #define MY_CLASS EFL_UI_VIEW_LIST_SEGARRAY_CLASS
#define MY_CLASS_NAME "Efl.Ui.List.SegArray" #define MY_CLASS_NAME "Efl.Ui.View.List.SegArray"
#include "efl_ui_list_private.h" #include "efl_ui_view_list_private.h"
#include "efl_ui_list_segarray.h" #include "efl_ui_view_list_segarray.h"
static int _search_lookup_cb(Eina_Rbtree const* rbtree, const void* key, int length EINA_UNUSED, void* data EINA_UNUSED) static int _search_lookup_cb(Eina_Rbtree const* rbtree, const void* key, int length EINA_UNUSED, void* data EINA_UNUSED)
{ {
Efl_Ui_List_SegArray_Node const* node = (void const*)rbtree; Efl_Ui_View_List_SegArray_Node const* node = (void const*)rbtree;
int index = *(int*)key; int index = *(int*)key;
if(index < node->first) if(index < node->first)
{ {
@ -31,7 +31,7 @@ static int _search_lookup_cb(Eina_Rbtree const* rbtree, const void* key, int len
static int _insert_lookup_cb(Eina_Rbtree const* rbtree, const void* key, int length EINA_UNUSED, void* data EINA_UNUSED) static int _insert_lookup_cb(Eina_Rbtree const* rbtree, const void* key, int length EINA_UNUSED, void* data EINA_UNUSED)
{ {
Efl_Ui_List_SegArray_Node const* node = (void const*)rbtree; Efl_Ui_View_List_SegArray_Node const* node = (void const*)rbtree;
int index = *(int*)key; int index = *(int*)key;
if(index < node->first) if(index < node->first)
{ {
@ -47,8 +47,8 @@ static int _insert_lookup_cb(Eina_Rbtree const* rbtree, const void* key, int len
} }
} }
static Eina_Rbtree_Direction _rbtree_compare(Efl_Ui_List_SegArray_Node const* left, static Eina_Rbtree_Direction _rbtree_compare(Efl_Ui_View_List_SegArray_Node const* left,
Efl_Ui_List_SegArray_Node const* right, void* data EINA_UNUSED) Efl_Ui_View_List_SegArray_Node const* right, void* data EINA_UNUSED)
{ {
if(left->first < right->first) if(left->first < right->first)
return EINA_RBTREE_LEFT; return EINA_RBTREE_LEFT;
@ -58,7 +58,7 @@ static Eina_Rbtree_Direction _rbtree_compare(Efl_Ui_List_SegArray_Node const* le
static void static void
_free_node(Efl_Ui_List_SegArray_Node* node, void* data EINA_UNUSED) _free_node(Efl_Ui_View_List_SegArray_Node* node, void* data EINA_UNUSED)
{ {
int i = 0; int i = 0;
@ -71,11 +71,11 @@ _free_node(Efl_Ui_List_SegArray_Node* node, void* data EINA_UNUSED)
free(node); free(node);
} }
static Efl_Ui_List_SegArray_Node* static Efl_Ui_View_List_SegArray_Node*
_alloc_node(Efl_Ui_List_SegArray_Data* pd, int first) _alloc_node(Efl_Ui_View_List_SegArray_Data* pd, int first)
{ {
Efl_Ui_List_SegArray_Node* node; Efl_Ui_View_List_SegArray_Node* node;
node = calloc(1, sizeof(Efl_Ui_List_SegArray_Node) + pd->step_size*sizeof(Efl_Ui_List_LayoutItem*)); node = calloc(1, sizeof(Efl_Ui_View_List_SegArray_Node) + pd->step_size*sizeof(Efl_Ui_View_List_LayoutItem*));
node->first = first; node->first = first;
node->max = pd->step_size; node->max = pd->step_size;
pd->root = (void*)eina_rbtree_inline_insert(EINA_RBTREE_GET(pd->root), EINA_RBTREE_GET(node), pd->root = (void*)eina_rbtree_inline_insert(EINA_RBTREE_GET(pd->root), EINA_RBTREE_GET(node),
@ -85,7 +85,7 @@ _alloc_node(Efl_Ui_List_SegArray_Data* pd, int first)
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_segarray_flush(Eo* obj EINA_UNUSED, Efl_Ui_List_SegArray_Data *pd) _efl_ui_view_list_segarray_flush(Eo* obj EINA_UNUSED, Efl_Ui_View_List_SegArray_Data *pd)
{ {
if (pd->root) if (pd->root)
eina_rbtree_delete(EINA_RBTREE_GET(pd->root), EINA_RBTREE_FREE_CB(_free_node), NULL); eina_rbtree_delete(EINA_RBTREE_GET(pd->root), EINA_RBTREE_FREE_CB(_free_node), NULL);
@ -95,26 +95,26 @@ _efl_ui_list_segarray_flush(Eo* obj EINA_UNUSED, Efl_Ui_List_SegArray_Data *pd)
pd->count = 0; pd->count = 0;
} }
static Efl_Ui_List_LayoutItem* _create_item_partial(Efl_Model* model) static Efl_Ui_View_List_LayoutItem* _create_item_partial(Efl_Model* model)
{ {
Efl_Ui_List_LayoutItem* item = calloc(1, sizeof(Efl_Ui_List_LayoutItem)); Efl_Ui_View_List_LayoutItem* item = calloc(1, sizeof(Efl_Ui_View_List_LayoutItem));
item->children = model; item->children = model;
return item; return item;
} }
static Efl_Ui_List_LayoutItem* _create_item(Efl_Model* model, Efl_Ui_List_SegArray_Node* node, unsigned int index) static Efl_Ui_View_List_LayoutItem* _create_item(Efl_Model* model, Efl_Ui_View_List_SegArray_Node* node, unsigned int index)
{ {
Efl_Ui_List_LayoutItem* item = _create_item_partial(model); Efl_Ui_View_List_LayoutItem* item = _create_item_partial(model);
item->index_offset = index - node->first; item->index_offset = index - node->first;
item->tree_node = node; item->tree_node = node;
return item; return item;
} }
EOLIAN static Efl_Ui_List_LayoutItem* EOLIAN static Efl_Ui_View_List_LayoutItem*
_efl_ui_list_segarray_remove(Eo* obj EINA_UNUSED, Efl_Ui_List_SegArray_Data *pd, int index) _efl_ui_view_list_segarray_remove(Eo* obj EINA_UNUSED, Efl_Ui_View_List_SegArray_Data *pd, int index)
{ {
Efl_Ui_List_SegArray_Node *node; Efl_Ui_View_List_SegArray_Node *node;
Efl_Ui_List_LayoutItem *item, *rt; Efl_Ui_View_List_LayoutItem *item, *rt;
Eina_Iterator* iterator; Eina_Iterator* iterator;
int offset; int offset;
@ -146,7 +146,7 @@ _efl_ui_list_segarray_remove(Eo* obj EINA_UNUSED, Efl_Ui_List_SegArray_Data *pd,
} }
static void static void
_efl_ui_list_segarray_insert_at_node(Efl_Ui_List_SegArray_Data* pd, int index, Efl_Ui_List_LayoutItem* item, Efl_Ui_List_SegArray_Node* node) _efl_ui_view_list_segarray_insert_at_node(Efl_Ui_View_List_SegArray_Data* pd, int index, Efl_Ui_View_List_LayoutItem* item, Efl_Ui_View_List_SegArray_Node* node)
{ {
Eina_Iterator* iterator; Eina_Iterator* iterator;
int pos; int pos;
@ -194,10 +194,10 @@ _efl_ui_list_segarray_insert_at_node(Efl_Ui_List_SegArray_Data* pd, int index, E
EOLIAN static void EOLIAN static void
_efl_ui_list_segarray_insert(Eo *obj EINA_UNUSED, Efl_Ui_List_SegArray_Data* pd, int index, Efl_Model* model) _efl_ui_view_list_segarray_insert(Eo *obj EINA_UNUSED, Efl_Ui_View_List_SegArray_Data* pd, int index, Efl_Model* model)
{ {
Efl_Ui_List_SegArray_Node* node, *next; Efl_Ui_View_List_SegArray_Node* node, *next;
Efl_Ui_List_LayoutItem* item; Efl_Ui_View_List_LayoutItem* item;
item = _create_item_partial(model); item = _create_item_partial(model);
@ -207,23 +207,23 @@ _efl_ui_list_segarray_insert(Eo *obj EINA_UNUSED, Efl_Ui_List_SegArray_Data* pd,
{ {
next = (void*)EINA_RBTREE_GET(node)->son[EINA_RBTREE_LEFT]; next = (void*)EINA_RBTREE_GET(node)->son[EINA_RBTREE_LEFT];
if(next && next->first <= index) if(next && next->first <= index)
_efl_ui_list_segarray_insert_at_node(pd, index, item, next); _efl_ui_view_list_segarray_insert_at_node(pd, index, item, next);
else else
_efl_ui_list_segarray_insert_at_node(pd, index, item, node); _efl_ui_view_list_segarray_insert_at_node(pd, index, item, node);
} }
else else
_efl_ui_list_segarray_insert_at_node(pd, index, item, NULL); _efl_ui_view_list_segarray_insert_at_node(pd, index, item, NULL);
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_segarray_insert_accessor(Eo *obj EINA_UNUSED, Efl_Ui_List_SegArray_Data* pd, int first, Eina_Accessor* accessor) _efl_ui_view_list_segarray_insert_accessor(Eo *obj EINA_UNUSED, Efl_Ui_View_List_SegArray_Data* pd, int first, Eina_Accessor* accessor)
{ {
int i; int i;
Efl_Model* children; Efl_Model* children;
EINA_ACCESSOR_FOREACH(accessor, i, children) EINA_ACCESSOR_FOREACH(accessor, i, children)
{ {
Efl_Ui_List_SegArray_Node *node; Efl_Ui_View_List_SegArray_Node *node;
int idx = first + i; int idx = first + i;
node = (void*)eina_rbtree_inline_lookup(EINA_RBTREE_GET(pd->root), node = (void*)eina_rbtree_inline_lookup(EINA_RBTREE_GET(pd->root),
@ -241,28 +241,28 @@ _efl_ui_list_segarray_insert_accessor(Eo *obj EINA_UNUSED, Efl_Ui_List_SegArray_
} }
EOLIAN static int EOLIAN static int
_efl_ui_list_segarray_count(Eo *obj EINA_UNUSED, Efl_Ui_List_SegArray_Data* pd) _efl_ui_view_list_segarray_count(Eo *obj EINA_UNUSED, Efl_Ui_View_List_SegArray_Data* pd)
{ {
return pd->count; return pd->count;
} }
typedef struct _Efl_Ui_List_Segarray_Eina_Accessor typedef struct _Efl_Ui_View_List_Segarray_Eina_Accessor
{ {
Eina_Accessor vtable; Eina_Accessor vtable;
Efl_Ui_List_SegArray_Data* segarray; Efl_Ui_View_List_SegArray_Data* segarray;
} Efl_Ui_List_Segarray_Eina_Accessor; } Efl_Ui_View_List_Segarray_Eina_Accessor;
static Eina_Bool static Eina_Bool
_efl_ui_list_segarray_accessor_get_at(Efl_Ui_List_Segarray_Eina_Accessor* acc, _efl_ui_view_list_segarray_accessor_get_at(Efl_Ui_View_List_Segarray_Eina_Accessor* acc,
int idx, void** data) int idx, void** data)
{ {
Efl_Ui_List_SegArray_Node* node; Efl_Ui_View_List_SegArray_Node* node;
node = (void*)eina_rbtree_inline_lookup(EINA_RBTREE_GET(acc->segarray->root), node = (void*)eina_rbtree_inline_lookup(EINA_RBTREE_GET(acc->segarray->root),
&idx, sizeof(idx), &_search_lookup_cb, NULL); &idx, sizeof(idx), &_search_lookup_cb, NULL);
if (node && (node->first <= idx && node->first + node->length > idx)) if (node && (node->first <= idx && node->first + node->length > idx))
{ {
int i = idx - node->first; int i = idx - node->first;
Efl_Ui_List_LayoutItem* item = node->pointers[i]; Efl_Ui_View_List_LayoutItem* item = node->pointers[i];
*data = item; *data = item;
return EINA_TRUE; return EINA_TRUE;
} }
@ -270,13 +270,13 @@ _efl_ui_list_segarray_accessor_get_at(Efl_Ui_List_Segarray_Eina_Accessor* acc,
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_segarray_setup(Eo *obj EINA_UNUSED, Efl_Ui_List_SegArray_Data *pd, int size) _efl_ui_view_list_segarray_setup(Eo *obj EINA_UNUSED, Efl_Ui_View_List_SegArray_Data *pd, int size)
{ {
pd->step_size = size; pd->step_size = size;
} }
EOLIAN static Eo * EOLIAN static Eo *
_efl_ui_list_segarray_efl_object_constructor(Eo *obj, Efl_Ui_List_SegArray_Data *pd EINA_UNUSED) _efl_ui_view_list_segarray_efl_object_constructor(Eo *obj, Efl_Ui_View_List_SegArray_Data *pd EINA_UNUSED)
{ {
obj = efl_constructor(efl_super(obj, MY_CLASS)); obj = efl_constructor(efl_super(obj, MY_CLASS));
@ -284,7 +284,7 @@ _efl_ui_list_segarray_efl_object_constructor(Eo *obj, Efl_Ui_List_SegArray_Data
} }
EOLIAN static void EOLIAN static void
_efl_ui_list_segarray_efl_object_destructor(Eo *obj, Efl_Ui_List_SegArray_Data *pd) _efl_ui_view_list_segarray_efl_object_destructor(Eo *obj, Efl_Ui_View_List_SegArray_Data *pd)
{ {
if (pd->root) if (pd->root)
eina_rbtree_delete(EINA_RBTREE_GET(pd->root), EINA_RBTREE_FREE_CB(_free_node), NULL); eina_rbtree_delete(EINA_RBTREE_GET(pd->root), EINA_RBTREE_FREE_CB(_free_node), NULL);
@ -294,66 +294,66 @@ _efl_ui_list_segarray_efl_object_destructor(Eo *obj, Efl_Ui_List_SegArray_Data *
} }
static void* static void*
_efl_ui_list_segarray_accessor_get_container(Efl_Ui_List_Segarray_Eina_Accessor* acc EINA_UNUSED) _efl_ui_view_list_segarray_accessor_get_container(Efl_Ui_View_List_Segarray_Eina_Accessor* acc EINA_UNUSED)
{ {
return NULL; return NULL;
} }
static void static void
_efl_ui_list_segarray_accessor_free(Efl_Ui_List_Segarray_Eina_Accessor* acc EINA_UNUSED) _efl_ui_view_list_segarray_accessor_free(Efl_Ui_View_List_Segarray_Eina_Accessor* acc EINA_UNUSED)
{ {
free(acc); free(acc);
} }
static void static void
_efl_ui_list_segarray_accessor_lock(Efl_Ui_List_Segarray_Eina_Accessor* acc EINA_UNUSED) _efl_ui_view_list_segarray_accessor_lock(Efl_Ui_View_List_Segarray_Eina_Accessor* acc EINA_UNUSED)
{ {
} }
static void static void
_efl_ui_list_segarray_accessor_unlock(Efl_Ui_List_Segarray_Eina_Accessor* acc EINA_UNUSED) _efl_ui_view_list_segarray_accessor_unlock(Efl_Ui_View_List_Segarray_Eina_Accessor* acc EINA_UNUSED)
{ {
} }
static Eina_Accessor* static Eina_Accessor*
_efl_ui_list_segarray_accessor_clone(Efl_Ui_List_Segarray_Eina_Accessor* acc EINA_UNUSED) _efl_ui_view_list_segarray_accessor_clone(Efl_Ui_View_List_Segarray_Eina_Accessor* acc EINA_UNUSED)
{ {
return &acc->vtable; return &acc->vtable;
} }
static void static void
_efl_ui_list_segarray_accessor_setup(Efl_Ui_List_Segarray_Eina_Accessor* acc, Efl_Ui_List_SegArray_Data* segarray) _efl_ui_view_list_segarray_accessor_setup(Efl_Ui_View_List_Segarray_Eina_Accessor* acc, Efl_Ui_View_List_SegArray_Data* segarray)
{ {
EINA_MAGIC_SET(&acc->vtable, EINA_MAGIC_ACCESSOR); EINA_MAGIC_SET(&acc->vtable, EINA_MAGIC_ACCESSOR);
acc->vtable.version = EINA_ACCESSOR_VERSION; acc->vtable.version = EINA_ACCESSOR_VERSION;
acc->vtable.get_at = FUNC_ACCESSOR_GET_AT(_efl_ui_list_segarray_accessor_get_at); acc->vtable.get_at = FUNC_ACCESSOR_GET_AT(_efl_ui_view_list_segarray_accessor_get_at);
acc->vtable.get_container = FUNC_ACCESSOR_GET_CONTAINER(_efl_ui_list_segarray_accessor_get_container); acc->vtable.get_container = FUNC_ACCESSOR_GET_CONTAINER(_efl_ui_view_list_segarray_accessor_get_container);
acc->vtable.free = FUNC_ACCESSOR_FREE(_efl_ui_list_segarray_accessor_free); acc->vtable.free = FUNC_ACCESSOR_FREE(_efl_ui_view_list_segarray_accessor_free);
acc->vtable.lock = FUNC_ACCESSOR_LOCK(_efl_ui_list_segarray_accessor_lock); acc->vtable.lock = FUNC_ACCESSOR_LOCK(_efl_ui_view_list_segarray_accessor_lock);
acc->vtable.unlock = FUNC_ACCESSOR_LOCK(_efl_ui_list_segarray_accessor_unlock); acc->vtable.unlock = FUNC_ACCESSOR_LOCK(_efl_ui_view_list_segarray_accessor_unlock);
acc->vtable.clone = FUNC_ACCESSOR_CLONE(_efl_ui_list_segarray_accessor_clone); acc->vtable.clone = FUNC_ACCESSOR_CLONE(_efl_ui_view_list_segarray_accessor_clone);
acc->segarray = segarray; acc->segarray = segarray;
} }
EOLIAN static Eina_Accessor* EOLIAN static Eina_Accessor*
_efl_ui_list_segarray_accessor_get(Eo *obj EINA_UNUSED, Efl_Ui_List_SegArray_Data* pd) _efl_ui_view_list_segarray_accessor_get(Eo *obj EINA_UNUSED, Efl_Ui_View_List_SegArray_Data* pd)
{ {
Efl_Ui_List_Segarray_Eina_Accessor* acc = calloc(1, sizeof(Efl_Ui_List_Segarray_Eina_Accessor)); Efl_Ui_View_List_Segarray_Eina_Accessor* acc = calloc(1, sizeof(Efl_Ui_View_List_Segarray_Eina_Accessor));
_efl_ui_list_segarray_accessor_setup(acc, pd); _efl_ui_view_list_segarray_accessor_setup(acc, pd);
return &acc->vtable; return &acc->vtable;
} }
typedef struct _Efl_Ui_List_Segarray_Node_Accessor typedef struct _Efl_Ui_View_List_Segarray_Node_Accessor
{ {
Eina_Accessor vtable; Eina_Accessor vtable;
Efl_Ui_List_SegArray_Data* segarray; Efl_Ui_View_List_SegArray_Data* segarray;
Eina_Iterator* pre_iterator; Eina_Iterator* pre_iterator;
Efl_Ui_List_SegArray_Node* current_node; Efl_Ui_View_List_SegArray_Node* current_node;
int current_index; int current_index;
} Efl_Ui_List_Segarray_Node_Accessor; } Efl_Ui_View_List_Segarray_Node_Accessor;
static Eina_Bool static Eina_Bool
_efl_ui_list_segarray_node_accessor_get_at(Efl_Ui_List_Segarray_Node_Accessor* acc, _efl_ui_view_list_segarray_node_accessor_get_at(Efl_Ui_View_List_Segarray_Node_Accessor* acc,
int idx, void** data) int idx, void** data)
{ {
if(idx == acc->current_index && acc->current_node) if(idx == acc->current_index && acc->current_node)
@ -388,13 +388,13 @@ _efl_ui_list_segarray_node_accessor_get_at(Efl_Ui_List_Segarray_Node_Accessor* a
} }
static void* static void*
_efl_ui_list_segarray_node_accessor_get_container(Efl_Ui_List_Segarray_Node_Accessor* acc EINA_UNUSED) _efl_ui_view_list_segarray_node_accessor_get_container(Efl_Ui_View_List_Segarray_Node_Accessor* acc EINA_UNUSED)
{ {
return NULL; return NULL;
} }
static void static void
_efl_ui_list_segarray_node_accessor_free(Efl_Ui_List_Segarray_Node_Accessor* acc EINA_UNUSED) _efl_ui_view_list_segarray_node_accessor_free(Efl_Ui_View_List_Segarray_Node_Accessor* acc EINA_UNUSED)
{ {
if (acc->pre_iterator) if (acc->pre_iterator)
eina_iterator_free(acc->pre_iterator); eina_iterator_free(acc->pre_iterator);
@ -402,32 +402,32 @@ _efl_ui_list_segarray_node_accessor_free(Efl_Ui_List_Segarray_Node_Accessor* acc
} }
static void static void
_efl_ui_list_segarray_node_accessor_lock(Efl_Ui_List_Segarray_Node_Accessor* acc EINA_UNUSED) _efl_ui_view_list_segarray_node_accessor_lock(Efl_Ui_View_List_Segarray_Node_Accessor* acc EINA_UNUSED)
{ {
} }
static void static void
_efl_ui_list_segarray_node_accessor_unlock(Efl_Ui_List_Segarray_Node_Accessor* acc EINA_UNUSED) _efl_ui_view_list_segarray_node_accessor_unlock(Efl_Ui_View_List_Segarray_Node_Accessor* acc EINA_UNUSED)
{ {
} }
static Eina_Accessor* static Eina_Accessor*
_efl_ui_list_segarray_node_accessor_clone(Efl_Ui_List_Segarray_Node_Accessor* acc EINA_UNUSED) _efl_ui_view_list_segarray_node_accessor_clone(Efl_Ui_View_List_Segarray_Node_Accessor* acc EINA_UNUSED)
{ {
return &acc->vtable; return &acc->vtable;
} }
static void static void
_efl_ui_list_segarray_node_accessor_setup(Efl_Ui_List_Segarray_Node_Accessor* acc, Efl_Ui_List_SegArray_Data* segarray) _efl_ui_view_list_segarray_node_accessor_setup(Efl_Ui_View_List_Segarray_Node_Accessor* acc, Efl_Ui_View_List_SegArray_Data* segarray)
{ {
EINA_MAGIC_SET(&acc->vtable, EINA_MAGIC_ACCESSOR); EINA_MAGIC_SET(&acc->vtable, EINA_MAGIC_ACCESSOR);
acc->vtable.version = EINA_ACCESSOR_VERSION; acc->vtable.version = EINA_ACCESSOR_VERSION;
acc->vtable.get_at = FUNC_ACCESSOR_GET_AT(_efl_ui_list_segarray_node_accessor_get_at); acc->vtable.get_at = FUNC_ACCESSOR_GET_AT(_efl_ui_view_list_segarray_node_accessor_get_at);
acc->vtable.get_container = FUNC_ACCESSOR_GET_CONTAINER(_efl_ui_list_segarray_node_accessor_get_container); acc->vtable.get_container = FUNC_ACCESSOR_GET_CONTAINER(_efl_ui_view_list_segarray_node_accessor_get_container);
acc->vtable.free = FUNC_ACCESSOR_FREE(_efl_ui_list_segarray_node_accessor_free); acc->vtable.free = FUNC_ACCESSOR_FREE(_efl_ui_view_list_segarray_node_accessor_free);
acc->vtable.lock = FUNC_ACCESSOR_LOCK(_efl_ui_list_segarray_node_accessor_lock); acc->vtable.lock = FUNC_ACCESSOR_LOCK(_efl_ui_view_list_segarray_node_accessor_lock);
acc->vtable.unlock = FUNC_ACCESSOR_LOCK(_efl_ui_list_segarray_node_accessor_unlock); acc->vtable.unlock = FUNC_ACCESSOR_LOCK(_efl_ui_view_list_segarray_node_accessor_unlock);
acc->vtable.clone = FUNC_ACCESSOR_CLONE(_efl_ui_list_segarray_node_accessor_clone); acc->vtable.clone = FUNC_ACCESSOR_CLONE(_efl_ui_view_list_segarray_node_accessor_clone);
acc->segarray = segarray; acc->segarray = segarray;
acc->pre_iterator = NULL; acc->pre_iterator = NULL;
acc->current_index = -1; acc->current_index = -1;
@ -435,17 +435,17 @@ _efl_ui_list_segarray_node_accessor_setup(Efl_Ui_List_Segarray_Node_Accessor* ac
} }
EOLIAN static Eina_Accessor* EOLIAN static Eina_Accessor*
_efl_ui_list_segarray_node_accessor_get(Eo *obj EINA_UNUSED, Efl_Ui_List_SegArray_Data* pd) _efl_ui_view_list_segarray_node_accessor_get(Eo *obj EINA_UNUSED, Efl_Ui_View_List_SegArray_Data* pd)
{ {
Efl_Ui_List_Segarray_Node_Accessor* acc = calloc(1, sizeof(Efl_Ui_List_Segarray_Node_Accessor)); Efl_Ui_View_List_Segarray_Node_Accessor* acc = calloc(1, sizeof(Efl_Ui_View_List_Segarray_Node_Accessor));
_efl_ui_list_segarray_node_accessor_setup(acc, pd); _efl_ui_view_list_segarray_node_accessor_setup(acc, pd);
return &acc->vtable; return &acc->vtable;
} }
int efl_ui_list_item_index_get(Efl_Ui_List_LayoutItem* item) int efl_ui_view_list_item_index_get(Efl_Ui_View_List_LayoutItem* item)
{ {
Efl_Ui_List_SegArray_Node* node = item->tree_node; Efl_Ui_View_List_SegArray_Node* node = item->tree_node;
return item->index_offset + node->first; return item->index_offset + node->first;
} }
#include "efl_ui_list_segarray.eo.c" #include "efl_ui_view_list_segarray.eo.c"

View File

@ -1,7 +1,7 @@
import elm_general; import elm_general;
import efl_ui_list_types; import efl_ui_view_list_types;
class Efl.Ui.List.SegArray (Efl.Object) class Efl.Ui.View.List.SegArray (Efl.Object)
{ {
methods { methods {
@property accessor { @property accessor {
@ -9,7 +9,7 @@ class Efl.Ui.List.SegArray (Efl.Object)
[[ Get a SegArray List items accessor ]] [[ Get a SegArray List items accessor ]]
} }
values { values {
acc: accessor<ptr(Efl.Ui.List.LayoutItem)>; acc: accessor<ptr(Efl.Ui.View.List.LayoutItem)>;
} }
} }
@property node_accessor { @property node_accessor {
@ -17,7 +17,7 @@ class Efl.Ui.List.SegArray (Efl.Object)
[[ Get a SegArray node accessor ]] [[ Get a SegArray node accessor ]]
} }
values { values {
acc: accessor<ptr(Efl.Ui.List.SegArray.Node)>; acc: accessor<ptr(Efl.Ui.View.List.SegArray.Node)>;
} }
} }
insert_accessor { insert_accessor {
@ -52,7 +52,7 @@ class Efl.Ui.List.SegArray (Efl.Object)
params { params {
@in index: int; @in index: int;
} }
return: ptr(Efl.Ui.List.LayoutItem) @owned; return: ptr(Efl.Ui.View.List.LayoutItem) @owned;
} }
} }
implements { implements {

View File

@ -0,0 +1,28 @@
#ifndef EFL_UI_LIST_SEGARRAY_H
#define EFL_UI_LIST_SEGARRAY_H
typedef struct _Efl_Ui_View_List_Item Efl_Ui_View_List_Item;
typedef struct _Efl_Ui_View_List_SegArray_Node
{
EINA_RBTREE;
int length;
int max;
int first;
void* layout_data;
Efl_Ui_View_List_LayoutItem* pointers[0];
} Efl_Ui_View_List_SegArray_Node;
typedef struct _Efl_Ui_View_List_SegArray_Data
{
Efl_Ui_View_List_SegArray_Node *root;
int step_size;
int node_count;
int count;
} Efl_Ui_View_List_SegArray_Data;
#endif

View File

@ -1,4 +1,4 @@
struct Efl.Ui.List.LayoutItem { struct Efl.Ui.View.List.LayoutItem {
layout: Efl.Ui.Layout; layout: Efl.Ui.Layout;
children: Efl.Model; children: Efl.Model;
index_offset: int; index_offset: int;
@ -8,4 +8,4 @@ struct Efl.Ui.List.LayoutItem {
pos: Eina.Position2D; pos: Eina.Position2D;
} }
struct @extern Efl.Ui.List.SegArray.Node; [[ ]] struct @extern Efl.Ui.View.List.SegArray.Node; [[ ]]