2 * vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2
11 #include "Evas_Data.h"
12 #include "evas_inline_array.x"
15 evas_array_append(Evas_Array *array, void *data)
17 _evas_array_append(array, data);
21 evas_array_get(Evas_Array *array, unsigned int index)
23 return _evas_array_get(array, index);
27 evas_array_clean(Evas_Array *array)
33 evas_array_setup(Evas_Array *array, unsigned int step)
39 evas_array_flush(Evas_Array *array)
44 if (array->data) free(array->data);
49 evas_array_new(unsigned int step)
53 array = malloc(sizeof (Evas_Array));
54 if (!array) return NULL;
65 evas_array_free(Evas_Array *array)
67 evas_array_flush(array);
72 evas_array_remove(Evas_Array *array, Evas_Bool (*keep)(void *data, void *gdata), void *gdata)
75 unsigned int total = 0;
78 if (array->total == 0) return ;
80 tmp = malloc(sizeof (void*) * array->total);
83 for (i = 0; i < array->count; i++)
87 data = _evas_array_get(array, i);
89 if (keep(data, gdata))
109 array->count = total;