ecore: move efl_model_list_value_get to be an internal function.

This commit is contained in:
Cedric BAIL 2017-12-20 14:19:56 -08:00
parent 3edb4ca697
commit 9e2493760b
5 changed files with 34 additions and 30 deletions

View File

@ -31,6 +31,34 @@
EAPI void ecore_loop_arguments_send(int argc, const char **argv);
EAPI Eina_Bool efl_loop_message_process(Eo *obj);
static inline Eina_Value
efl_model_list_value_get(Eina_List *childrens,
unsigned int start,
unsigned int count)
{
Eina_Value v = EINA_VALUE_EMPTY;
Eina_List *l;
Eo *child;
eina_value_array_setup(&v, EINA_VALUE_TYPE_OBJECT, eina_list_count(childrens));
EINA_LIST_FOREACH(childrens, l, child)
{
if (start != 0)
{
start--;
continue;
}
if (count == 0)
continue;
count--;
eina_value_array_append(&v, child);
}
return v;
}
#undef EAPI
#define EAPI

View File

@ -7,6 +7,8 @@
#include <Eo.h>
#include <Ecore.h>
#include "ecore_internal.h"
#include "efl_model_container_private.h"
#define MY_CLASS EFL_MODEL_CONTAINER_CLASS

View File

@ -5,6 +5,8 @@
#include <Efl.h>
#include <Ecore.h>
#include "ecore_internal.h"
#define MY_CLASS EFL_MODEL_ITEM_CLASS
typedef struct _Efl_Model_Item_Data Efl_Model_Item_Data;

View File

@ -91,34 +91,4 @@ EAPI Eina_Value_Struct_Desc *efl_model_value_struct_description_new(unsigned int
*/
EAPI void efl_model_value_struct_description_free(Eina_Value_Struct_Desc *desc);
static inline Eina_Value
efl_model_list_value_get(Eina_List *childrens,
unsigned int start,
unsigned int count)
{
Eina_Value v = EINA_VALUE_EMPTY;
Eina_List *l;
Eo *child;
eina_value_array_setup(&v, EINA_VALUE_TYPE_OBJECT, eina_list_count(childrens));
EINA_LIST_FOREACH(childrens, l, child)
{
if (start != 0)
{
start--;
continue;
}
if (count == 0)
continue;
count--;
eina_value_array_append(&v, child);
}
return v;
}
#endif

View File

@ -8,6 +8,8 @@
#include <Eo.h>
#include <Efl.h>
#include "ecore_internal.h"
typedef struct _Eldbus_Children_Slice_Promise Eldbus_Children_Slice_Promise;
typedef struct _Eldbus_Model_Data Eldbus_Model_Data;