Remove Evas list from Edje and use Eina instead.
SVN revision: 36961
This commit is contained in:
parent
f7283eb333
commit
fa66dbf40a
|
@ -6,9 +6,9 @@
|
|||
|
||||
static void main_help(void);
|
||||
|
||||
Evas_List *img_dirs = NULL;
|
||||
Evas_List *fnt_dirs = NULL;
|
||||
Evas_List *defines = NULL;
|
||||
Eina_List *img_dirs = NULL;
|
||||
Eina_List *fnt_dirs = NULL;
|
||||
Eina_List *defines = NULL;
|
||||
char *file_in = NULL;
|
||||
char *file_out = NULL;
|
||||
char *progname = NULL;
|
||||
|
@ -79,12 +79,12 @@ main(int argc, char **argv)
|
|||
else if ((!strcmp(argv[i], "-id") || !strcmp(argv[i], "--image_dir")) && (i < (argc - 1)))
|
||||
{
|
||||
i++;
|
||||
img_dirs = evas_list_append(img_dirs, argv[i]);
|
||||
img_dirs = eina_list_append(img_dirs, argv[i]);
|
||||
}
|
||||
else if ((!strcmp(argv[i], "-fd") || !strcmp(argv[i], "--font_dir")) && (i < (argc - 1)))
|
||||
{
|
||||
i++;
|
||||
fnt_dirs = evas_list_append(fnt_dirs, argv[i]);
|
||||
fnt_dirs = eina_list_append(fnt_dirs, argv[i]);
|
||||
}
|
||||
else if ((!strcmp(argv[i], "-min-quality")) && (i < (argc - 1)))
|
||||
{
|
||||
|
@ -102,7 +102,7 @@ main(int argc, char **argv)
|
|||
}
|
||||
else if (!strncmp(argv[i], "-D", 2))
|
||||
{
|
||||
defines = evas_list_append(defines, mem_strdup(argv[i]));
|
||||
defines = eina_list_append(defines, mem_strdup(argv[i]));
|
||||
}
|
||||
else if ((!strcmp(argv[i], "-o")) && (i < (argc - 1)))
|
||||
{
|
||||
|
|
|
@ -36,7 +36,7 @@ struct _New_Statement_Handler
|
|||
|
||||
struct _Font_List
|
||||
{
|
||||
Evas_List *list;
|
||||
Eina_List *list;
|
||||
};
|
||||
|
||||
struct _Font
|
||||
|
@ -49,7 +49,7 @@ struct _Code
|
|||
{
|
||||
int l1, l2;
|
||||
char *shared;
|
||||
Evas_List *programs;
|
||||
Eina_List *programs;
|
||||
};
|
||||
|
||||
struct _Code_Program
|
||||
|
@ -67,7 +67,7 @@ struct _SrcFile
|
|||
|
||||
struct _SrcFile_List
|
||||
{
|
||||
Evas_List *list;
|
||||
Eina_List *list;
|
||||
};
|
||||
|
||||
/* global fn calls */
|
||||
|
@ -112,7 +112,7 @@ void source_edd(void);
|
|||
void source_fetch(void);
|
||||
int source_append(Eet_File *ef);
|
||||
SrcFile_List *source_load(Eet_File *ef);
|
||||
int source_fontmap_save(Eet_File *ef, Evas_List *fonts);
|
||||
int source_fontmap_save(Eet_File *ef, Eina_List *fonts);
|
||||
Font_List *source_fontmap_load(Eet_File *ef);
|
||||
|
||||
void *mem_alloc(size_t size);
|
||||
|
@ -120,8 +120,8 @@ char *mem_strdup(const char *s);
|
|||
#define SZ sizeof
|
||||
|
||||
/* global vars */
|
||||
extern Evas_List *img_dirs;
|
||||
extern Evas_List *fnt_dirs;
|
||||
extern Eina_List *img_dirs;
|
||||
extern Eina_List *fnt_dirs;
|
||||
extern char *file_in;
|
||||
extern char *file_out;
|
||||
extern char *progname;
|
||||
|
@ -132,14 +132,14 @@ extern int no_raw;
|
|||
extern int min_quality;
|
||||
extern int max_quality;
|
||||
extern int line;
|
||||
extern Evas_List *stack;
|
||||
extern Evas_List *params;
|
||||
extern Eina_List *stack;
|
||||
extern Eina_List *params;
|
||||
extern Edje_File *edje_file;
|
||||
extern Evas_List *edje_collections;
|
||||
extern Evas_List *fonts;
|
||||
extern Evas_List *codes;
|
||||
extern Evas_List *defines;
|
||||
extern Evas_List *aliases;
|
||||
extern Eina_List *edje_collections;
|
||||
extern Eina_List *fonts;
|
||||
extern Eina_List *codes;
|
||||
extern Eina_List *defines;
|
||||
extern Eina_List *aliases;
|
||||
extern New_Object_Handler object_handlers[];
|
||||
extern New_Statement_Handler statement_handlers[];
|
||||
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -53,11 +53,11 @@ struct _Code_Lookup
|
|||
static void data_process_string(Edje_Part_Collection *pc, const char *prefix, char *s, void (*func)(Edje_Part_Collection *pc, char *name, char *ptr, int len));
|
||||
|
||||
Edje_File *edje_file = NULL;
|
||||
Evas_List *edje_collections = NULL;
|
||||
Evas_List *fonts = NULL;
|
||||
Evas_List *codes = NULL;
|
||||
Evas_List *code_lookups = NULL;
|
||||
Evas_List *aliases = NULL;
|
||||
Eina_List *edje_collections = NULL;
|
||||
Eina_List *fonts = NULL;
|
||||
Eina_List *codes = NULL;
|
||||
Eina_List *code_lookups = NULL;
|
||||
Eina_List *aliases = NULL;
|
||||
|
||||
static Eet_Data_Descriptor *edd_edje_file = NULL;
|
||||
static Eet_Data_Descriptor *edd_edje_image_directory = NULL;
|
||||
|
@ -74,14 +74,14 @@ static Eet_Data_Descriptor *edd_edje_part_description = NULL;
|
|||
static Eet_Data_Descriptor *edd_edje_part_image_id = NULL;
|
||||
static Eet_Data_Descriptor *edd_edje_spectrum_color = NULL;
|
||||
|
||||
static Evas_List *part_lookups = NULL;
|
||||
static Evas_List *program_lookups = NULL;
|
||||
static Evas_List *group_lookups = NULL;
|
||||
static Evas_List *image_lookups = NULL;
|
||||
static Evas_List *spectrum_lookups = NULL;
|
||||
static Evas_List *part_slave_lookups = NULL;
|
||||
static Evas_List *image_slave_lookups= NULL;
|
||||
static Evas_List *spectrum_slave_lookups= NULL;
|
||||
static Eina_List *part_lookups = NULL;
|
||||
static Eina_List *program_lookups = NULL;
|
||||
static Eina_List *group_lookups = NULL;
|
||||
static Eina_List *image_lookups = NULL;
|
||||
static Eina_List *spectrum_lookups = NULL;
|
||||
static Eina_List *part_slave_lookups = NULL;
|
||||
static Eina_List *image_slave_lookups= NULL;
|
||||
static Eina_List *spectrum_slave_lookups= NULL;
|
||||
|
||||
#define ABORT_WRITE(eet_file, file) \
|
||||
eet_close(eet_file); \
|
||||
|
@ -124,7 +124,8 @@ static void
|
|||
check_image_part_desc (Edje_Part_Collection *pc, Edje_Part *ep,
|
||||
Edje_Part_Description *epd, Eet_File *ef)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Part_Image_Id *iid;
|
||||
|
||||
return;
|
||||
if (epd->image.id == -1)
|
||||
|
@ -132,10 +133,8 @@ check_image_part_desc (Edje_Part_Collection *pc, Edje_Part *ep,
|
|||
"part \"%s\", description \"%s\" %f\n",
|
||||
pc->id, ep->name, epd->state.name, epd->state.value);
|
||||
|
||||
for (l = epd->image.tween_list; l; l = l->next)
|
||||
EINA_LIST_FOREACH(epd->image.tween_list, l, iid)
|
||||
{
|
||||
Edje_Part_Image_Id *iid = l->data;
|
||||
|
||||
if (iid->id == -1)
|
||||
error_and_abort(ef, "Collection %i: tween image id missing for "
|
||||
"part \"%s\", description \"%s\" %f\n",
|
||||
|
@ -147,7 +146,8 @@ static void
|
|||
check_part (Edje_Part_Collection *pc, Edje_Part *ep, Eet_File *ef)
|
||||
{
|
||||
Edje_Part_Description *epd = ep->default_desc;
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Part_Description *data;
|
||||
|
||||
if (!epd)
|
||||
error_and_abort(ef, "Collection %i: default description missing "
|
||||
|
@ -157,8 +157,8 @@ check_part (Edje_Part_Collection *pc, Edje_Part *ep, Eet_File *ef)
|
|||
{
|
||||
check_image_part_desc (pc, ep, epd, ef);
|
||||
|
||||
for (l = ep->other_desc; l; l = l->next)
|
||||
check_image_part_desc (pc, ep, l->data, ef);
|
||||
EINA_LIST_FOREACH(ep->other_desc, l, data)
|
||||
check_image_part_desc (pc, ep, data, ef);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -204,8 +204,8 @@ data_write_header(Eet_File *ef)
|
|||
/* copy aliases into collection directory */
|
||||
while (aliases)
|
||||
{
|
||||
edje_file->collection_dir->entries = evas_list_append(edje_file->collection_dir->entries, aliases->data);
|
||||
aliases = evas_list_remove_list(aliases, aliases);
|
||||
edje_file->collection_dir->entries = eina_list_append(edje_file->collection_dir->entries, eina_list_data_get(aliases));
|
||||
aliases = eina_list_remove_list(aliases, aliases);
|
||||
}
|
||||
}
|
||||
bytes = eet_data_write(ef, edd_edje_file, "edje_file", edje_file, 1);
|
||||
|
@ -226,19 +226,18 @@ data_write_header(Eet_File *ef)
|
|||
static int
|
||||
data_write_fonts(Eet_File *ef, int *font_num, int *input_bytes, int *input_raw_bytes)
|
||||
{
|
||||
Evas_List *l;;
|
||||
Eina_List *l;;
|
||||
int bytes = 0;
|
||||
int total_bytes = 0;
|
||||
Font *fn;
|
||||
|
||||
for (l = fonts; l; l = l->next)
|
||||
EINA_LIST_FOREACH(fonts, l, fn)
|
||||
{
|
||||
Font *fn;
|
||||
void *fdata = NULL;
|
||||
int fsize = 0;
|
||||
Evas_List *ll;
|
||||
Eina_List *ll;
|
||||
FILE *f;
|
||||
|
||||
fn = l->data;
|
||||
f = fopen(fn->file, "rb");
|
||||
if (f)
|
||||
{
|
||||
|
@ -259,11 +258,13 @@ data_write_fonts(Eet_File *ef, int *font_num, int *input_bytes, int *input_raw_b
|
|||
}
|
||||
else
|
||||
{
|
||||
for (ll = fnt_dirs; ll; ll = ll->next)
|
||||
char *data;
|
||||
|
||||
EINA_LIST_FOREACH(fnt_dirs, ll, data)
|
||||
{
|
||||
char buf[4096];
|
||||
|
||||
snprintf(buf, sizeof(buf), "%s/%s", (char *)(ll->data), fn->file);
|
||||
snprintf(buf, sizeof(buf), "%s/%s", data, fn->file);
|
||||
f = fopen(buf, "rb");
|
||||
if (f)
|
||||
{
|
||||
|
@ -322,7 +323,7 @@ data_write_fonts(Eet_File *ef, int *font_num, int *input_bytes, int *input_raw_b
|
|||
static int
|
||||
data_write_images(Eet_File *ef, int *image_num, int *input_bytes, int *input_raw_bytes)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
int bytes = 0;
|
||||
int total_bytes = 0;
|
||||
|
||||
|
@ -330,6 +331,7 @@ data_write_images(Eet_File *ef, int *image_num, int *input_bytes, int *input_raw
|
|||
{
|
||||
Ecore_Evas *ee;
|
||||
Evas *evas;
|
||||
Edje_Image_Directory_Entry *img;
|
||||
|
||||
ecore_init();
|
||||
ecore_evas_init();
|
||||
|
@ -340,26 +342,24 @@ data_write_images(Eet_File *ef, int *image_num, int *input_bytes, int *input_raw
|
|||
"load.\n");
|
||||
|
||||
evas = ecore_evas_get(ee);
|
||||
for (l = edje_file->image_dir->entries; l; l = l->next)
|
||||
EINA_LIST_FOREACH(edje_file->image_dir->entries, l, img)
|
||||
{
|
||||
Edje_Image_Directory_Entry *img;
|
||||
|
||||
img = l->data;
|
||||
if (img->source_type == EDJE_IMAGE_SOURCE_TYPE_EXTERNAL)
|
||||
{
|
||||
}
|
||||
else
|
||||
{
|
||||
Evas_Object *im;
|
||||
Evas_List *ll;
|
||||
Eina_List *ll;
|
||||
char *data;
|
||||
|
||||
im = NULL;
|
||||
for (ll = img_dirs; ll; ll = ll->next)
|
||||
EINA_LIST_FOREACH(img_dirs, ll, data)
|
||||
{
|
||||
char buf[4096];
|
||||
|
||||
snprintf(buf, sizeof(buf), "%s/%s",
|
||||
(char *)(ll->data), img->entry);
|
||||
data, img->entry);
|
||||
im = evas_object_image_add(evas);
|
||||
if (im)
|
||||
{
|
||||
|
@ -501,70 +501,64 @@ data_write_images(Eet_File *ef, int *image_num, int *input_bytes, int *input_raw
|
|||
static void
|
||||
check_groups_names(Eet_File *ef)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Part_Collection_Directory_Entry *de;
|
||||
|
||||
if (!edje_file->collection_dir)
|
||||
return;
|
||||
|
||||
/* check that all groups have names */
|
||||
for (l = edje_file->collection_dir->entries; l; l = l->next)
|
||||
{
|
||||
Edje_Part_Collection_Directory_Entry *de;
|
||||
de = l->data;
|
||||
EINA_LIST_FOREACH(edje_file->collection_dir->entries, l, de)
|
||||
if (!de->entry)
|
||||
error_and_abort(ef, "Collection %i: name missing.\n", de->id);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
check_spectra(Eet_File *ef)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Spectrum_Directory_Entry *se;
|
||||
|
||||
if (!edje_file->spectrum_dir)
|
||||
return;
|
||||
|
||||
/* check that all spectra are valid */
|
||||
for (l = edje_file->spectrum_dir->entries; l; l = l->next)
|
||||
{
|
||||
Edje_Spectrum_Directory_Entry *se;
|
||||
se = l->data;
|
||||
check_spectrum(se, ef);
|
||||
}
|
||||
EINA_LIST_FOREACH(edje_file->spectrum_dir->entries, l, se)
|
||||
check_spectrum(se, ef);
|
||||
}
|
||||
|
||||
static void
|
||||
check_groups(Eet_File *ef)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Part_Collection *pc;
|
||||
|
||||
/* sanity checks for parts and programs */
|
||||
for (l = edje_collections; l; l = l->next)
|
||||
EINA_LIST_FOREACH(edje_collections, l, pc)
|
||||
{
|
||||
Edje_Part_Collection *pc;
|
||||
Evas_List *ll;
|
||||
Eina_List *ll;
|
||||
Edje_Part *part;
|
||||
Edje_Program *prog;
|
||||
|
||||
pc = l->data;
|
||||
for (ll = pc->parts; ll; ll = ll->next)
|
||||
check_part(pc, ll->data, ef);
|
||||
for (ll = pc->programs; ll; ll = ll->next)
|
||||
check_program(pc, ll->data, ef);
|
||||
EINA_LIST_FOREACH(pc->parts, ll, part)
|
||||
check_part(pc, part, ef);
|
||||
EINA_LIST_FOREACH(pc->programs, ll, prog)
|
||||
check_program(pc, prog, ef);
|
||||
}
|
||||
}
|
||||
|
||||
static int
|
||||
data_write_groups(Eet_File *ef, int *collection_num)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Part_Collection *pc;
|
||||
int bytes = 0;
|
||||
int total_bytes = 0;
|
||||
|
||||
for (l = edje_collections; l; l = l->next)
|
||||
EINA_LIST_FOREACH(edje_collections, l, pc)
|
||||
{
|
||||
Edje_Part_Collection *pc;
|
||||
char buf[4096];
|
||||
|
||||
pc = l->data;
|
||||
snprintf(buf, sizeof(buf), "collections/%i", pc->id);
|
||||
bytes = eet_data_write(ef, edd_edje_part_collection, buf, pc, 1);
|
||||
if (bytes <= 0)
|
||||
|
@ -592,7 +586,8 @@ create_script_file(Eet_File *ef, const char *filename, const Code *cd)
|
|||
error_and_abort(ef, "Unable to open temp file \"%s\" for script "
|
||||
"compilation.\n", filename);
|
||||
|
||||
Evas_List *ll;
|
||||
Eina_List *ll;
|
||||
Code_Program *cp;
|
||||
|
||||
fprintf(f, "#include <edje>\n");
|
||||
int ln = 2;
|
||||
|
@ -624,11 +619,8 @@ create_script_file(Eet_File *ef, const char *filename, const Code *cd)
|
|||
}
|
||||
ln += cd->l2 - cd->l1 + 1;
|
||||
}
|
||||
for (ll = cd->programs; ll; ll = ll->next)
|
||||
EINA_LIST_FOREACH(cd->programs, ll, cp)
|
||||
{
|
||||
Code_Program *cp;
|
||||
|
||||
cp = ll->data;
|
||||
if (cp->script)
|
||||
{
|
||||
while (ln < (cp->l1 - 1))
|
||||
|
@ -713,7 +705,7 @@ compile_script_file(Eet_File *ef, const char *source, const char *output,
|
|||
static void
|
||||
data_write_scripts(Eet_File *ef)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
int i;
|
||||
|
||||
#ifdef HAVE_EVIL
|
||||
|
@ -722,10 +714,10 @@ data_write_scripts(Eet_File *ef)
|
|||
char *tmpdir = "/tmp";
|
||||
#endif
|
||||
|
||||
for (i = 0, l = codes; l; l = l->next, i++)
|
||||
for (i = 0, l = codes; l; l = eina_list_next(l), i++)
|
||||
{
|
||||
int fd;
|
||||
Code *cd = l->data;
|
||||
Code *cd = eina_list_data_get(l);
|
||||
|
||||
if ((!cd->shared) && (!cd->programs))
|
||||
continue;
|
||||
|
@ -846,7 +838,7 @@ data_queue_group_lookup(char *name)
|
|||
Group_Lookup *gl;
|
||||
|
||||
gl = mem_alloc(SZ(Group_Lookup));
|
||||
group_lookups = evas_list_append(group_lookups, gl);
|
||||
group_lookups = eina_list_append(group_lookups, gl);
|
||||
gl->name = mem_strdup(name);
|
||||
}
|
||||
|
||||
|
@ -856,7 +848,7 @@ data_queue_part_lookup(Edje_Part_Collection *pc, char *name, int *dest)
|
|||
Part_Lookup *pl;
|
||||
|
||||
pl = mem_alloc(SZ(Part_Lookup));
|
||||
part_lookups = evas_list_append(part_lookups, pl);
|
||||
part_lookups = eina_list_append(part_lookups, pl);
|
||||
pl->pc = pc;
|
||||
pl->name = mem_strdup(name);
|
||||
pl->dest = dest;
|
||||
|
@ -868,7 +860,7 @@ data_queue_program_lookup(Edje_Part_Collection *pc, char *name, int *dest)
|
|||
Program_Lookup *pl;
|
||||
|
||||
pl = mem_alloc(SZ(Program_Lookup));
|
||||
program_lookups = evas_list_append(program_lookups, pl);
|
||||
program_lookups = eina_list_append(program_lookups, pl);
|
||||
pl->pc = pc;
|
||||
pl->name = mem_strdup(name);
|
||||
pl->dest = dest;
|
||||
|
@ -880,7 +872,7 @@ data_queue_image_lookup(char *name, int *dest)
|
|||
Image_Lookup *il;
|
||||
|
||||
il = mem_alloc(SZ(Image_Lookup));
|
||||
image_lookups = evas_list_append(image_lookups, il);
|
||||
image_lookups = eina_list_append(image_lookups, il);
|
||||
il->name = mem_strdup(name);
|
||||
il->dest = dest;
|
||||
}
|
||||
|
@ -891,7 +883,7 @@ data_queue_spectrum_lookup(char *name, int *dest)
|
|||
Spectrum_Lookup *sl;
|
||||
|
||||
sl = mem_alloc(SZ(Spectrum_Lookup));
|
||||
spectrum_lookups = evas_list_append(spectrum_lookups, sl);
|
||||
spectrum_lookups = eina_list_append(spectrum_lookups, sl);
|
||||
sl->name = mem_strdup(name);
|
||||
sl->dest = dest;
|
||||
}
|
||||
|
@ -902,7 +894,7 @@ data_queue_part_slave_lookup(int *master, int *slave)
|
|||
Slave_Lookup *sl;
|
||||
|
||||
sl = mem_alloc(SZ(Slave_Lookup));
|
||||
part_slave_lookups = evas_list_append(part_slave_lookups, sl);
|
||||
part_slave_lookups = eina_list_append(part_slave_lookups, sl);
|
||||
sl->master = master;
|
||||
sl->slave = slave;
|
||||
}
|
||||
|
@ -913,7 +905,7 @@ data_queue_image_slave_lookup(int *master, int *slave)
|
|||
Slave_Lookup *sl;
|
||||
|
||||
sl = mem_alloc(SZ(Slave_Lookup));
|
||||
image_slave_lookups = evas_list_append(image_slave_lookups, sl);
|
||||
image_slave_lookups = eina_list_append(image_slave_lookups, sl);
|
||||
sl->master = master;
|
||||
sl->slave = slave;
|
||||
}
|
||||
|
@ -924,41 +916,36 @@ data_queue_spectrum_slave_lookup(int *master, int *slave)
|
|||
Slave_Lookup *sl;
|
||||
|
||||
sl = mem_alloc(SZ(Slave_Lookup));
|
||||
spectrum_slave_lookups = evas_list_append(spectrum_slave_lookups, sl);
|
||||
spectrum_slave_lookups = eina_list_append(spectrum_slave_lookups, sl);
|
||||
sl->master = master;
|
||||
sl->slave = slave;
|
||||
}
|
||||
|
||||
void
|
||||
handle_slave_lookup(Evas_List *list, int *master, int value)
|
||||
handle_slave_lookup(Eina_List *list, int *master, int value)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Slave_Lookup *sl;
|
||||
|
||||
for (l = list; l; l = l->next)
|
||||
{
|
||||
Slave_Lookup *sl = l->data;
|
||||
|
||||
if (sl->master == master)
|
||||
*sl->slave = value;
|
||||
}
|
||||
EINA_LIST_FOREACH(list, l, sl)
|
||||
if (sl->master == master)
|
||||
*sl->slave = value;
|
||||
}
|
||||
|
||||
void
|
||||
data_process_lookups(void)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
|
||||
while (part_lookups)
|
||||
{
|
||||
Part_Lookup *pl;
|
||||
Edje_Part *ep;
|
||||
|
||||
pl = part_lookups->data;
|
||||
pl = eina_list_data_get(part_lookups);
|
||||
|
||||
for (l = pl->pc->parts; l; l = l->next)
|
||||
EINA_LIST_FOREACH(pl->pc->parts, l, ep)
|
||||
{
|
||||
Edje_Part *ep;
|
||||
|
||||
ep = l->data;
|
||||
if ((ep->name) && (!strcmp(ep->name, pl->name)))
|
||||
{
|
||||
handle_slave_lookup(part_slave_lookups, pl->dest, ep->id);
|
||||
|
@ -972,7 +959,7 @@ data_process_lookups(void)
|
|||
progname, pl->name);
|
||||
exit(-1);
|
||||
}
|
||||
part_lookups = evas_list_remove(part_lookups, pl);
|
||||
part_lookups = eina_list_remove(part_lookups, pl);
|
||||
free(pl->name);
|
||||
free(pl);
|
||||
}
|
||||
|
@ -980,14 +967,12 @@ data_process_lookups(void)
|
|||
while (program_lookups)
|
||||
{
|
||||
Program_Lookup *pl;
|
||||
Edje_Program *ep;
|
||||
|
||||
pl = program_lookups->data;
|
||||
pl = eina_list_data_get(program_lookups);
|
||||
|
||||
for (l = pl->pc->programs; l; l = l->next)
|
||||
EINA_LIST_FOREACH(pl->pc->programs, l, ep)
|
||||
{
|
||||
Edje_Program *ep;
|
||||
|
||||
ep = l->data;
|
||||
if ((ep->name) && (!strcmp(ep->name, pl->name)))
|
||||
{
|
||||
*(pl->dest) = ep->id;
|
||||
|
@ -1000,7 +985,7 @@ data_process_lookups(void)
|
|||
progname, pl->name);
|
||||
exit(-1);
|
||||
}
|
||||
program_lookups = evas_list_remove(program_lookups, pl);
|
||||
program_lookups = eina_list_remove(program_lookups, pl);
|
||||
free(pl->name);
|
||||
free(pl);
|
||||
}
|
||||
|
@ -1008,12 +993,12 @@ data_process_lookups(void)
|
|||
while (group_lookups)
|
||||
{
|
||||
Group_Lookup *gl;
|
||||
Edje_Part_Collection_Directory_Entry *de;
|
||||
|
||||
gl = group_lookups->data;
|
||||
for (l = edje_file->collection_dir->entries; l; l = l->next)
|
||||
gl = eina_list_data_get(group_lookups);
|
||||
|
||||
EINA_LIST_FOREACH(edje_file->collection_dir->entries, l, de)
|
||||
{
|
||||
Edje_Part_Collection_Directory_Entry *de;
|
||||
de = l->data;
|
||||
if (!strcmp(de->entry, gl->name))
|
||||
{
|
||||
break;
|
||||
|
@ -1025,7 +1010,7 @@ data_process_lookups(void)
|
|||
progname, gl->name);
|
||||
exit(-1);
|
||||
}
|
||||
group_lookups = evas_list_remove(group_lookups, gl);
|
||||
group_lookups = eina_list_remove(group_lookups, gl);
|
||||
free(gl->name);
|
||||
free(gl);
|
||||
}
|
||||
|
@ -1033,18 +1018,16 @@ data_process_lookups(void)
|
|||
while (image_lookups)
|
||||
{
|
||||
Image_Lookup *il;
|
||||
Edje_Image_Directory_Entry *de;
|
||||
|
||||
il = image_lookups->data;
|
||||
il = eina_list_data_get(image_lookups);
|
||||
|
||||
if (!edje_file->image_dir)
|
||||
l = NULL;
|
||||
else
|
||||
{
|
||||
for (l = edje_file->image_dir->entries; l; l = l->next)
|
||||
EINA_LIST_FOREACH(edje_file->image_dir->entries, l, de)
|
||||
{
|
||||
Edje_Image_Directory_Entry *de;
|
||||
|
||||
de = l->data;
|
||||
if ((de->entry) && (!strcmp(de->entry, il->name)))
|
||||
{
|
||||
handle_slave_lookup(image_slave_lookups, il->dest, de->id);
|
||||
|
@ -1063,7 +1046,7 @@ data_process_lookups(void)
|
|||
progname, il->name);
|
||||
exit(-1);
|
||||
}
|
||||
image_lookups = evas_list_remove(image_lookups, il);
|
||||
image_lookups = eina_list_remove(image_lookups, il);
|
||||
free(il->name);
|
||||
free(il);
|
||||
}
|
||||
|
@ -1071,18 +1054,16 @@ data_process_lookups(void)
|
|||
while (spectrum_lookups)
|
||||
{
|
||||
Spectrum_Lookup *il;
|
||||
Edje_Spectrum_Directory_Entry *de;
|
||||
|
||||
il = spectrum_lookups->data;
|
||||
il = eina_list_data_get(spectrum_lookups);
|
||||
|
||||
if (!edje_file->spectrum_dir)
|
||||
l = NULL;
|
||||
else
|
||||
{
|
||||
for (l = edje_file->spectrum_dir->entries; l; l = l->next)
|
||||
EINA_LIST_FOREACH(edje_file->spectrum_dir->entries, l, de)
|
||||
{
|
||||
Edje_Spectrum_Directory_Entry *de;
|
||||
|
||||
de = l->data;
|
||||
*(il->dest) = 1;
|
||||
if ((de->entry) && (!strcmp(de->entry, il->name)))
|
||||
{
|
||||
|
@ -1099,27 +1080,27 @@ data_process_lookups(void)
|
|||
progname, il->name);
|
||||
exit(-1);
|
||||
}
|
||||
spectrum_lookups = evas_list_remove(spectrum_lookups, il);
|
||||
spectrum_lookups = eina_list_remove(spectrum_lookups, il);
|
||||
free(il->name);
|
||||
free(il);
|
||||
}
|
||||
|
||||
while (part_slave_lookups)
|
||||
{
|
||||
free(part_slave_lookups->data);
|
||||
part_slave_lookups = evas_list_remove_list(part_slave_lookups, part_slave_lookups);
|
||||
free(eina_list_data_get(part_slave_lookups));
|
||||
part_slave_lookups = eina_list_remove_list(part_slave_lookups, part_slave_lookups);
|
||||
}
|
||||
|
||||
while (image_slave_lookups)
|
||||
{
|
||||
free(image_slave_lookups->data);
|
||||
image_slave_lookups = evas_list_remove_list(image_slave_lookups, image_slave_lookups);
|
||||
free(eina_list_data_get(image_slave_lookups));
|
||||
image_slave_lookups = eina_list_remove_list(image_slave_lookups, image_slave_lookups);
|
||||
}
|
||||
|
||||
while (spectrum_slave_lookups)
|
||||
{
|
||||
free(spectrum_slave_lookups->data);
|
||||
spectrum_slave_lookups = evas_list_remove_list(spectrum_slave_lookups, spectrum_slave_lookups);
|
||||
free(eina_list_data_get(spectrum_slave_lookups));
|
||||
spectrum_slave_lookups = eina_list_remove_list(spectrum_slave_lookups, spectrum_slave_lookups);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1244,7 +1225,7 @@ _data_queue_part_lookup(Edje_Part_Collection *pc, char *name, char *ptr, int len
|
|||
|
||||
data_queue_part_lookup(pc, name, &(cl->val));
|
||||
|
||||
code_lookups = evas_list_append(code_lookups, cl);
|
||||
code_lookups = eina_list_append(code_lookups, cl);
|
||||
}
|
||||
static void
|
||||
_data_queue_program_lookup(Edje_Part_Collection *pc, char *name, char *ptr, int len)
|
||||
|
@ -1256,7 +1237,7 @@ _data_queue_program_lookup(Edje_Part_Collection *pc, char *name, char *ptr, int
|
|||
|
||||
data_queue_program_lookup(pc, name, &(cl->val));
|
||||
|
||||
code_lookups = evas_list_append(code_lookups, cl);
|
||||
code_lookups = eina_list_append(code_lookups, cl);
|
||||
}
|
||||
static void
|
||||
_data_queue_group_lookup(Edje_Part_Collection *pc, char *name, char *ptr, int len)
|
||||
|
@ -1273,24 +1254,25 @@ _data_queue_image_pc_lookup(Edje_Part_Collection *pc, char *name, char *ptr, int
|
|||
|
||||
data_queue_image_lookup(name, &(cl->val));
|
||||
|
||||
code_lookups = evas_list_append(code_lookups, cl);
|
||||
code_lookups = eina_list_append(code_lookups, cl);
|
||||
}
|
||||
|
||||
void
|
||||
data_process_scripts(void)
|
||||
{
|
||||
Evas_List *l, *l2;
|
||||
Eina_List *l, *l2;
|
||||
|
||||
for (l = codes, l2 = edje_collections; (l) && (l2); l = l->next, l2 = l2->next)
|
||||
for (l = codes, l2 = edje_collections; (l) && (l2); l = eina_list_next(l), l2 = eina_list_next(l2))
|
||||
{
|
||||
Code *cd;
|
||||
Edje_Part_Collection *pc;
|
||||
|
||||
cd = l->data;
|
||||
pc = l2->data;
|
||||
cd = eina_list_data_get(l);
|
||||
pc = eina_list_data_get(l2);
|
||||
if ((cd->shared) || (cd->programs))
|
||||
{
|
||||
Evas_List *ll;
|
||||
Eina_List *ll;
|
||||
Code_Program *cp;
|
||||
|
||||
if (cd->shared)
|
||||
{
|
||||
|
@ -1299,11 +1281,8 @@ data_process_scripts(void)
|
|||
data_process_string(pc, "IMAGE", cd->shared, _data_queue_image_pc_lookup);
|
||||
data_process_string(pc, "GROUP", cd->shared, _data_queue_group_lookup);
|
||||
}
|
||||
for (ll = cd->programs; ll; ll = ll->next)
|
||||
EINA_LIST_FOREACH(cd->programs, ll, cp)
|
||||
{
|
||||
Code_Program *cp;
|
||||
|
||||
cp = ll->data;
|
||||
if (cp->script)
|
||||
{
|
||||
data_process_string(pc, "PART", cp->script, _data_queue_part_lookup);
|
||||
|
@ -1319,15 +1298,14 @@ data_process_scripts(void)
|
|||
void
|
||||
data_process_script_lookups(void)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Code_Lookup *cl;
|
||||
|
||||
for (l = code_lookups; l; l = l->next)
|
||||
EINA_LIST_FOREACH(code_lookups, l, cl)
|
||||
{
|
||||
Code_Lookup *cl;
|
||||
char buf[256];
|
||||
int i, n;
|
||||
|
||||
cl = l->data;
|
||||
snprintf(buf, sizeof(buf), "%i", cl->val);
|
||||
n = strlen(buf);
|
||||
if (n > cl->len)
|
||||
|
|
|
@ -39,8 +39,8 @@ static int strstrip(const char *in, char *out, size_t size);
|
|||
|
||||
|
||||
int line = 0;
|
||||
Evas_List *stack = NULL;
|
||||
Evas_List *params = NULL;
|
||||
Eina_List *stack = NULL;
|
||||
Eina_List *params = NULL;
|
||||
|
||||
static char file_buf[4096];
|
||||
static int verbatim = 0;
|
||||
|
@ -83,7 +83,7 @@ new_object(void)
|
|||
{
|
||||
fprintf(stderr, "%s: Error. %s:%i unhandled keyword %s\n",
|
||||
progname, file_in, line - 1,
|
||||
(char *)evas_list_data(evas_list_last(stack)));
|
||||
(char *)eina_list_data_get(eina_list_last(stack)));
|
||||
exit(-1);
|
||||
}
|
||||
free(id);
|
||||
|
@ -113,7 +113,7 @@ new_statement(void)
|
|||
{
|
||||
fprintf(stderr, "%s: Error. %s:%i unhandled keyword %s\n",
|
||||
progname, file_in, line - 1,
|
||||
(char *)evas_list_data(evas_list_last(stack)));
|
||||
(char *)eina_list_data_get(eina_list_last(stack)));
|
||||
exit(-1);
|
||||
}
|
||||
free(id);
|
||||
|
@ -362,17 +362,18 @@ stack_id(void)
|
|||
{
|
||||
char *id;
|
||||
int len;
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
char *data;
|
||||
|
||||
len = 0;
|
||||
for (l = stack; l; l = l->next)
|
||||
len += strlen(l->data) + 1;
|
||||
EINA_LIST_FOREACH(stack, l, data)
|
||||
len += strlen(data) + 1;
|
||||
id = mem_alloc(len);
|
||||
id[0] = 0;
|
||||
for (l = stack; l; l = l->next)
|
||||
EINA_LIST_FOREACH(stack, l, data)
|
||||
{
|
||||
strcat(id, l->data);
|
||||
if (l->next) strcat(id, ".");
|
||||
strcat(id, data);
|
||||
if (eina_list_next(l)) strcat(id, ".");
|
||||
}
|
||||
return id;
|
||||
}
|
||||
|
@ -383,11 +384,11 @@ stack_chop_top(void)
|
|||
char *top;
|
||||
|
||||
/* remove top from stack */
|
||||
top = evas_list_data(evas_list_last(stack));
|
||||
top = eina_list_data_get(eina_list_last(stack));
|
||||
if (top)
|
||||
{
|
||||
free(top);
|
||||
stack = evas_list_remove(stack, top);
|
||||
stack = eina_list_remove(stack, top);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -446,8 +447,8 @@ parse(char *data, off_t size)
|
|||
/* clear out params */
|
||||
while (params)
|
||||
{
|
||||
free(params->data);
|
||||
params = evas_list_remove(params, params->data);
|
||||
free(eina_list_data_get(params));
|
||||
params = eina_list_remove(params, eina_list_data_get(params));
|
||||
}
|
||||
/* remove top from stack */
|
||||
stack_chop_top();
|
||||
|
@ -467,10 +468,10 @@ parse(char *data, off_t size)
|
|||
else
|
||||
{
|
||||
if (do_params)
|
||||
params = evas_list_append(params, token);
|
||||
params = eina_list_append(params, token);
|
||||
else
|
||||
{
|
||||
stack = evas_list_append(stack, token);
|
||||
stack = eina_list_append(stack, token);
|
||||
new_object();
|
||||
if ((verbatim == 1) && (p < (end - 2)))
|
||||
{
|
||||
|
@ -638,19 +639,18 @@ compile(void)
|
|||
def = mem_strdup("");
|
||||
else
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
int len;
|
||||
char *data;
|
||||
|
||||
len = 0;
|
||||
for (l = defines; l; l = l->next)
|
||||
{
|
||||
len += strlen(l->data) + 1;
|
||||
}
|
||||
EINA_LIST_FOREACH(defines, l, data)
|
||||
len += strlen(data) + 1;
|
||||
def = mem_alloc(len + 1);
|
||||
def[0] = 0;
|
||||
for (l = defines; l; l = l->next)
|
||||
EINA_LIST_FOREACH(defines, l, data)
|
||||
{
|
||||
strcat(def, l->data);
|
||||
strcat(def, data);
|
||||
strcat(def, " ");
|
||||
}
|
||||
}
|
||||
|
@ -726,7 +726,7 @@ is_param(int n)
|
|||
{
|
||||
char *str;
|
||||
|
||||
str = evas_list_nth(params, n);
|
||||
str = eina_list_nth(params, n);
|
||||
if (str) return 1;
|
||||
return 0;
|
||||
}
|
||||
|
@ -738,7 +738,7 @@ is_num(int n)
|
|||
long int ret;
|
||||
char *end;
|
||||
|
||||
str = evas_list_nth(params, n);
|
||||
str = eina_list_nth(params, n);
|
||||
if (!str)
|
||||
{
|
||||
fprintf(stderr, "%s: Error. %s:%i no parameter supplied as argument %i\n",
|
||||
|
@ -758,7 +758,7 @@ parse_str(int n)
|
|||
char *str;
|
||||
char *s;
|
||||
|
||||
str = evas_list_nth(params, n);
|
||||
str = eina_list_nth(params, n);
|
||||
if (!str)
|
||||
{
|
||||
fprintf(stderr, "%s: Error. %s:%i no parameter supplied as argument %i\n",
|
||||
|
@ -821,7 +821,7 @@ parse_enum(int n, ...)
|
|||
int result;
|
||||
va_list va;
|
||||
|
||||
str = evas_list_nth(params, n);
|
||||
str = eina_list_nth(params, n);
|
||||
if (!str)
|
||||
{
|
||||
fprintf(stderr, "%s: Error. %s:%i no parameter supplied as argument %i\n",
|
||||
|
@ -839,13 +839,14 @@ parse_enum(int n, ...)
|
|||
int
|
||||
parse_flags(int n, ...)
|
||||
{
|
||||
Evas_List *lst;
|
||||
Eina_List *lst;
|
||||
int result = 0;
|
||||
va_list va;
|
||||
char *data;
|
||||
|
||||
va_start(va, n);
|
||||
for (lst = evas_list_nth_list(params, n); lst != NULL; lst = lst->next)
|
||||
result |= _parse_enum(lst->data, va);
|
||||
EINA_LIST_FOREACH(eina_list_nth_list(params, n), lst, data)
|
||||
result |= _parse_enum(data, va);
|
||||
va_end(va);
|
||||
|
||||
return result;
|
||||
|
@ -857,7 +858,7 @@ parse_int(int n)
|
|||
char *str;
|
||||
int i;
|
||||
|
||||
str = evas_list_nth(params, n);
|
||||
str = eina_list_nth(params, n);
|
||||
if (!str)
|
||||
{
|
||||
fprintf(stderr, "%s: Error. %s:%i no parameter supplied as argument %i\n",
|
||||
|
@ -874,7 +875,7 @@ parse_int_range(int n, int f, int t)
|
|||
char *str;
|
||||
int i;
|
||||
|
||||
str = evas_list_nth(params, n);
|
||||
str = eina_list_nth(params, n);
|
||||
if (!str)
|
||||
{
|
||||
fprintf(stderr, "%s: Error. %s:%i no parameter supplied as argument %i\n",
|
||||
|
@ -897,7 +898,7 @@ parse_bool(int n)
|
|||
char *str, buf[4096];
|
||||
int i;
|
||||
|
||||
str = evas_list_nth(params, n);
|
||||
str = eina_list_nth(params, n);
|
||||
if (!str)
|
||||
{
|
||||
fprintf(stderr, "%s: Error. %s:%i no parameter supplied as argument %i\n",
|
||||
|
@ -933,7 +934,7 @@ parse_float(int n)
|
|||
char *str;
|
||||
double i;
|
||||
|
||||
str = evas_list_nth(params, n);
|
||||
str = eina_list_nth(params, n);
|
||||
if (!str)
|
||||
{
|
||||
fprintf(stderr, "%s: Error. %s:%i no parameter supplied as argument %i\n",
|
||||
|
@ -950,7 +951,7 @@ parse_float_range(int n, double f, double t)
|
|||
char *str;
|
||||
double i;
|
||||
|
||||
str = evas_list_nth(params, n);
|
||||
str = eina_list_nth(params, n);
|
||||
if (!str)
|
||||
{
|
||||
fprintf(stderr, "%s: Error. %s:%i no parameter supplied as argument %i\n",
|
||||
|
@ -970,7 +971,7 @@ parse_float_range(int n, double f, double t)
|
|||
void
|
||||
check_arg_count(int required_args)
|
||||
{
|
||||
int num_args = evas_list_count (params);
|
||||
int num_args = eina_list_count (params);
|
||||
|
||||
if (num_args != required_args)
|
||||
{
|
||||
|
@ -983,7 +984,7 @@ check_arg_count(int required_args)
|
|||
void
|
||||
check_min_arg_count(int min_required_args)
|
||||
{
|
||||
int num_args = evas_list_count (params);
|
||||
int num_args = eina_list_count (params);
|
||||
|
||||
if (num_args < min_required_args)
|
||||
{
|
||||
|
|
|
@ -36,10 +36,10 @@ source_edd(void)
|
|||
eddc.func.mem_free = NULL;
|
||||
eddc.func.str_alloc = eina_stringshare_add;
|
||||
eddc.func.str_free = eina_stringshare_del;
|
||||
eddc.func.list_next = evas_list_next;
|
||||
eddc.func.list_append = evas_list_append;
|
||||
eddc.func.list_data = evas_list_data;
|
||||
eddc.func.list_free = evas_list_free;
|
||||
eddc.func.list_next = eina_list_next;
|
||||
eddc.func.list_append = eina_list_append;
|
||||
eddc.func.list_data = eina_list_data_get;
|
||||
eddc.func.list_free = eina_list_free;
|
||||
eddc.func.hash_foreach = evas_hash_foreach;
|
||||
eddc.func.hash_add = evas_hash_add;
|
||||
eddc.func.hash_free = evas_hash_free;
|
||||
|
@ -93,7 +93,7 @@ source_fetch_file(const char *fil, const char *filname)
|
|||
fread(sf->file, sz, 1, f);
|
||||
sf->file[sz] = '\0';
|
||||
fseek(f, 0, SEEK_SET);
|
||||
srcfiles.list = evas_list_append(srcfiles.list, sf);
|
||||
srcfiles.list = eina_list_append(srcfiles.list, sf);
|
||||
|
||||
while (fgets(buf, sizeof(buf), f))
|
||||
{
|
||||
|
@ -244,7 +244,7 @@ source_load(Eet_File *ef)
|
|||
}
|
||||
|
||||
int
|
||||
source_fontmap_save(Eet_File *ef, Evas_List *fonts)
|
||||
source_fontmap_save(Eet_File *ef, Eina_List *fonts)
|
||||
{
|
||||
Font_List fl;
|
||||
|
||||
|
|
|
@ -94,9 +94,9 @@ decomp(void)
|
|||
eet_close(ef);
|
||||
return 0;
|
||||
}
|
||||
if (!srcfiles->list->data || !root_filename_is_sane())
|
||||
if (!eina_list_data_get(srcfiles->list) || !root_filename_is_sane())
|
||||
{
|
||||
printf("ERROR: Invalid root filename: '%s'\n", (char *) srcfiles->list->data);
|
||||
printf("ERROR: Invalid root filename: '%s'\n", (char *) eina_list_data_get(srcfiles->list));
|
||||
eet_close(ef);
|
||||
return 0;
|
||||
}
|
||||
|
@ -124,8 +124,9 @@ decomp(void)
|
|||
void
|
||||
output(void)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Eet_File *ef;
|
||||
SrcFile *sf;
|
||||
char *outdir, *p;
|
||||
|
||||
p = strrchr(file_in, '/');
|
||||
|
@ -142,11 +143,10 @@ output(void)
|
|||
|
||||
if (edje_file->image_dir)
|
||||
{
|
||||
for (l = edje_file->image_dir->entries; l; l = l->next)
|
||||
{
|
||||
Edje_Image_Directory_Entry *ei;
|
||||
Edje_Image_Directory_Entry *ei;
|
||||
|
||||
ei = l->data;
|
||||
EINA_LIST_FOREACH(edje_file->image_dir->entries, l, ei)
|
||||
{
|
||||
if ((ei->source_type > EDJE_IMAGE_SOURCE_TYPE_NONE) &&
|
||||
(ei->source_type < EDJE_IMAGE_SOURCE_TYPE_LAST) &&
|
||||
(ei->source_type != EDJE_IMAGE_SOURCE_TYPE_EXTERNAL) &&
|
||||
|
@ -201,14 +201,12 @@ output(void)
|
|||
}
|
||||
}
|
||||
|
||||
for (l = srcfiles->list; l; l = l->next)
|
||||
EINA_LIST_FOREACH(srcfiles->list, l, sf)
|
||||
{
|
||||
SrcFile *sf;
|
||||
char out[4096];
|
||||
FILE *f;
|
||||
char *pp;
|
||||
|
||||
sf = l->data;
|
||||
snprintf(out, sizeof(out), "%s/%s", outdir, sf->name);
|
||||
printf("Output Source File: %s\n", out);
|
||||
pp = strdup(out);
|
||||
|
@ -241,14 +239,14 @@ output(void)
|
|||
}
|
||||
if (fontlist)
|
||||
{
|
||||
for (l = fontlist->list; l; l = l->next)
|
||||
Font *fn;
|
||||
|
||||
EINA_LIST_FOREACH(fontlist->list, l, fn)
|
||||
{
|
||||
Font *fn;
|
||||
void *font;
|
||||
int fontsize;
|
||||
char out[4096];
|
||||
|
||||
fn = l->data;
|
||||
snprintf(out, sizeof(out), "fonts/%s", fn->name);
|
||||
font = eet_read(ef, out, &fontsize);
|
||||
if (font)
|
||||
|
@ -283,7 +281,7 @@ output(void)
|
|||
{
|
||||
char out[4096];
|
||||
FILE *f;
|
||||
SrcFile *sf = srcfiles->list->data;
|
||||
SrcFile *sf = eina_list_data_get(srcfiles->list);
|
||||
|
||||
snprintf(out, sizeof(out), "%s/build.sh", outdir);
|
||||
printf("Output Build Script: %s\n", out);
|
||||
|
@ -337,7 +335,7 @@ compiler_cmd_is_sane()
|
|||
static int
|
||||
root_filename_is_sane()
|
||||
{
|
||||
SrcFile *sf = srcfiles->list->data;
|
||||
SrcFile *sf = eina_list_data_get(srcfiles->list);
|
||||
char *f = sf->name, *ptr;
|
||||
|
||||
if (!f || !*f)
|
||||
|
|
|
@ -17,7 +17,7 @@ struct _Font
|
|||
|
||||
struct _Font_List
|
||||
{
|
||||
Evas_List *list;
|
||||
Eina_List *list;
|
||||
};
|
||||
|
||||
struct _SrcFile
|
||||
|
@ -28,14 +28,14 @@ struct _SrcFile
|
|||
|
||||
struct _SrcFile_List
|
||||
{
|
||||
Evas_List *list;
|
||||
Eina_List *list;
|
||||
};
|
||||
|
||||
void source_edd(void);
|
||||
void source_fetch(void);
|
||||
int source_append(Eet_File *ef);
|
||||
SrcFile_List *source_load(Eet_File *ef);
|
||||
int source_fontmap_save(Eet_File *ef, Evas_List *fonts);
|
||||
int source_fontmap_save(Eet_File *ef, Eina_List *fonts);
|
||||
Font_List *source_fontmap_load(Eet_File *ef);
|
||||
|
||||
void *mem_alloc(size_t size);
|
||||
|
|
|
@ -175,8 +175,8 @@ extern "C" {
|
|||
EAPI double edje_scale_get (void);
|
||||
|
||||
/* edje_load.c */
|
||||
EAPI Evas_List *edje_file_collection_list (const char *file);
|
||||
EAPI void edje_file_collection_list_free (Evas_List *lst);
|
||||
EAPI Eina_List *edje_file_collection_list (const char *file);
|
||||
EAPI void edje_file_collection_list_free (Eina_List *lst);
|
||||
EAPI int edje_file_group_exists (const char *file, const char *glob);
|
||||
EAPI char *edje_file_data_get (const char *file, const char *key);
|
||||
EAPI void edje_file_cache_set (int count);
|
||||
|
@ -190,10 +190,10 @@ extern "C" {
|
|||
/* edje_util.c */
|
||||
EAPI void edje_color_class_set(const char *color_class, int r, int g, int b, int a, int r2, int g2, int b2, int a2, int r3, int g3, int b3, int a3);
|
||||
EAPI void edje_color_class_del(const char *color_class);
|
||||
EAPI Evas_List * edje_color_class_list(void);
|
||||
EAPI Eina_List * edje_color_class_list(void);
|
||||
EAPI void edje_text_class_set(const char *text_class, const char *font, Evas_Font_Size size);
|
||||
EAPI void edje_text_class_del(const char *text_class);
|
||||
EAPI Evas_List * edje_text_class_list(void);
|
||||
EAPI Eina_List * edje_text_class_list(void);
|
||||
EAPI void edje_extern_object_min_size_set (Evas_Object *obj, Evas_Coord minw, Evas_Coord minh);
|
||||
EAPI void edje_extern_object_max_size_set (Evas_Object *obj, Evas_Coord maxw, Evas_Coord maxh);
|
||||
EAPI void edje_extern_object_aspect_set(Evas_Object *obj, Edje_Aspect_Control aspect, Evas_Coord aw, Evas_Coord ah);
|
||||
|
@ -237,7 +237,7 @@ extern "C" {
|
|||
EAPI const char *edje_object_part_text_get (const Evas_Object *obj, const char *part);
|
||||
EAPI const char *edje_object_part_text_selection_get(const Evas_Object *obj, const char *part);
|
||||
EAPI void edje_object_part_text_insert (Evas_Object *obj, const char *part, const char *text);
|
||||
EAPI Evas_List *edje_object_part_text_anchor_list_get(const Evas_Object *obj, const char *part);
|
||||
EAPI Eina_List *edje_object_part_text_anchor_list_get(const Evas_Object *obj, const char *part);
|
||||
EAPI void edje_object_part_text_cursor_geometry_get(const Evas_Object *obj, const char *part, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h);
|
||||
|
||||
EAPI void edje_object_part_swallow (Evas_Object *obj, const char *part, Evas_Object *obj_swallow);
|
||||
|
|
|
@ -59,12 +59,12 @@ enum {
|
|||
*
|
||||
* Example: print all the part in a loaded edje_object
|
||||
* @code
|
||||
* Evas_List *parts, *l;
|
||||
* Eina_List *parts, *l;
|
||||
*
|
||||
* parts = edje_edit_parts_list_get(edje_object);
|
||||
* while(l = parts; l; l = l->next)
|
||||
* while(l = parts; l; l = eina_list_nexst(l))
|
||||
* {
|
||||
* printf("Part: %s\n", (char*)l->data);
|
||||
* printf("Part: %s\n", (char*)eina_list_data_get(l));
|
||||
* }
|
||||
* edje_edit_string_list_free(parts);
|
||||
* @endcode
|
||||
|
@ -93,10 +93,10 @@ extern "C" {
|
|||
* General functions that don't fit in other cateories.
|
||||
*/ //@{
|
||||
|
||||
/** Free a generic Evas_List of (char *) allocated by an edje_edit_*_get() function.*/
|
||||
/** Free a generic Eina_List of (char *) allocated by an edje_edit_*_get() function.*/
|
||||
EAPI void
|
||||
edje_edit_string_list_free(
|
||||
Evas_List *lst ///< The list to free. Will also free all the strings.
|
||||
Eina_List *lst ///< The list to free. Will also free all the strings.
|
||||
);
|
||||
|
||||
/** Free a generic string (char *) allocated by an edje_edit_*_get() function.*/
|
||||
|
@ -233,7 +233,7 @@ edje_edit_group_max_h_set(
|
|||
*/ //@{
|
||||
|
||||
/** Retrieves a list with the item names inside the data block **/
|
||||
EAPI Evas_List * ///@return An Evas_List* of string (char *)containing all the data names.
|
||||
EAPI Eina_List * ///@return An Eina_List* of string (char *)containing all the data names.
|
||||
edje_edit_data_list_get(
|
||||
Evas_Object *obj ///< The edje object
|
||||
);
|
||||
|
@ -289,7 +289,7 @@ edje_edit_data_name_set(
|
|||
/** Get the list of all the Color Classes in the given edje object.
|
||||
* Use edje_edit_string_list_free() when you don't need it anymore.
|
||||
*/
|
||||
EAPI Evas_List * ///@return An Evas_List* of string (char *)containing all the classes names.
|
||||
EAPI Eina_List * ///@return An Eina_List* of string (char *)containing all the classes names.
|
||||
edje_edit_color_classes_list_get(
|
||||
Evas_Object * obj ///< The edje object
|
||||
);
|
||||
|
@ -372,7 +372,7 @@ edje_edit_color_class_name_set(
|
|||
/**Get the list of all the parts in the given edje object.
|
||||
* Use edje_edit_string_list_free() when you don't need it anymore.
|
||||
*/
|
||||
EAPI Evas_List * ///@return An Evas_List* of string (char *)containing all the part names.
|
||||
EAPI Eina_List * ///@return An Eina_List* of string (char *)containing all the part names.
|
||||
edje_edit_parts_list_get(
|
||||
Evas_Object *obj ///< The edje object
|
||||
);
|
||||
|
@ -685,7 +685,7 @@ edje_edit_part_drag_event_set(
|
|||
*/ //@{
|
||||
|
||||
/**Get the list of all the states in the given part.*/
|
||||
EAPI Evas_List * /**@return An Evas_List* of string (char *)containing all the states names found
|
||||
EAPI Eina_List * /**@return An Eina_List* of string (char *)containing all the states names found
|
||||
* in part, including the float value (ex: "default 0.00").
|
||||
* Use edje_edit_string_list_free() when you don't need it anymore. */
|
||||
edje_edit_part_states_list_get(
|
||||
|
@ -1424,7 +1424,7 @@ edje_edit_state_text_fit_y_set(
|
|||
/**Get the list of all the fonts in the given edje.
|
||||
* Use edje_edit_string_list_free() when you don't need the list anymore.
|
||||
*/
|
||||
EAPI Evas_List * ///@return An Evas_List* of string (char *)containing all the fonts names found in the edje file.
|
||||
EAPI Eina_List * ///@return An Eina_List* of string (char *)containing all the fonts names found in the edje file.
|
||||
edje_edit_fonts_list_get(
|
||||
Evas_Object *obj ///< The edje object
|
||||
);
|
||||
|
@ -1467,7 +1467,7 @@ edje_edit_state_font_set(
|
|||
/**Get the list of all the images in the given edje.
|
||||
* Use edje_edit_string_list_free() when you don't need the list anymore.
|
||||
*/
|
||||
EAPI Evas_List * ///@return An Evas_List* of string (char *)containing all the images names found in the edje file.
|
||||
EAPI Eina_List * ///@return An Eina_List* of string (char *)containing all the images names found in the edje file.
|
||||
edje_edit_images_list_get(
|
||||
Evas_Object *obj ///< The edje object
|
||||
);
|
||||
|
@ -1571,7 +1571,7 @@ edje_edit_state_image_border_fill_set(
|
|||
/**Get the list of all the tweens images in the given part state.
|
||||
* Use edje_edit_string_list_free() when you don't need it anymore.
|
||||
*/
|
||||
EAPI Evas_List * ///@return A string list containing all the image name that form a tween animation in the given part state
|
||||
EAPI Eina_List * ///@return A string list containing all the image name that form a tween animation in the given part state
|
||||
edje_edit_state_tweens_list_get(
|
||||
Evas_Object *obj, ///< The edje object
|
||||
const char *part, ///< The name of the part
|
||||
|
@ -1612,7 +1612,7 @@ edje_edit_state_tween_del(
|
|||
/**Get the list of all the spectrum in the given edje object.
|
||||
* Use edje_edit_string_list_free() when you don't need it anymore.
|
||||
*/
|
||||
EAPI Evas_List * ///@return An Evas_List* of string(char *) containing all the spectra names.
|
||||
EAPI Eina_List * ///@return An Eina_List* of string(char *) containing all the spectra names.
|
||||
edje_edit_spectrum_list_get(
|
||||
Evas_Object *obj ///< The edje object
|
||||
);
|
||||
|
@ -1896,10 +1896,10 @@ edje_edit_state_gradient_rel2_offset_y_set(
|
|||
|
||||
/**Get the list of all the programs in the given edje object.
|
||||
* @param obj The edje object
|
||||
* @return An Evas_List* of string (char *)containing all the program names.
|
||||
* @return An Eina_List* of string (char *)containing all the program names.
|
||||
* Use edje_edit_string_list_free() when you don't need it anymore.
|
||||
*/
|
||||
EAPI Evas_List * ///@return A string list containing all the program names
|
||||
EAPI Eina_List * ///@return A string list containing all the program names
|
||||
edje_edit_programs_list_get(
|
||||
Evas_Object *obj ///< The edje object
|
||||
);
|
||||
|
@ -2027,7 +2027,7 @@ edje_edit_program_action_set(
|
|||
* Return a list of target name
|
||||
* Use edje_edit_string_list_free() when you don't need it anymore.
|
||||
*/
|
||||
EAPI Evas_List* ///@return An Evas_List of char*, or NULL on error
|
||||
EAPI Eina_List* ///@return An Eina_List of char*, or NULL on error
|
||||
edje_edit_program_targets_get(
|
||||
Evas_Object *obj, ///< The edje object
|
||||
const char *prog ///< The program name
|
||||
|
@ -2055,7 +2055,7 @@ edje_edit_program_targets_clear(
|
|||
* Return a list of program name.
|
||||
* Use edje_edit_string_list_free() when you don't need it anymore.
|
||||
*/
|
||||
EAPI Evas_List* ///@return An Evas_List of char*, or NULL on error
|
||||
EAPI Eina_List* ///@return An Eina_List of char*, or NULL on error
|
||||
edje_edit_program_afters_get(
|
||||
Evas_Object *obj, ///< The edje object
|
||||
const char *prog ///< The program name
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
|
||||
static Evas_Hash *_edje_file_hash = NULL;
|
||||
static int _edje_file_cache_size = 16;
|
||||
static Evas_List *_edje_file_cache = NULL;
|
||||
static Eina_List *_edje_file_cache = NULL;
|
||||
|
||||
static int _edje_collection_cache_size = 16;
|
||||
|
||||
|
@ -14,16 +14,14 @@ static Edje_Part_Collection *
|
|||
_edje_file_coll_open(Edje_File *edf, const char *coll)
|
||||
{
|
||||
Edje_Part_Collection *edc = NULL;
|
||||
Evas_List *l = NULL;
|
||||
Edje_Part_Collection_Directory_Entry *ce;
|
||||
Eina_List *l = NULL;
|
||||
int id = -1, size = 0;
|
||||
char buf[256];
|
||||
void *data;
|
||||
|
||||
for (l = edf->collection_dir->entries; l; l = l->next)
|
||||
EINA_LIST_FOREACH(edf->collection_dir->entries, l, ce)
|
||||
{
|
||||
Edje_Part_Collection_Directory_Entry *ce;
|
||||
|
||||
ce = l->data;
|
||||
if ((ce->entry) && (!strcmp(ce->entry, coll)))
|
||||
{
|
||||
id = ce->id;
|
||||
|
@ -58,14 +56,14 @@ _edje_font_hash(Edje_File *edf)
|
|||
|
||||
if (edf->font_dir)
|
||||
{
|
||||
Evas_List *l;
|
||||
for (l = edf->font_dir->entries; l; l = evas_list_next(l))
|
||||
Eina_List *l;
|
||||
Edje_Font_Directory_Entry *fnt;
|
||||
|
||||
EINA_LIST_FOREACH(edf->font_dir->entries, l, fnt)
|
||||
{
|
||||
Edje_Font_Directory_Entry *fnt;
|
||||
int length;
|
||||
char *tmp;
|
||||
|
||||
fnt = l->data;
|
||||
length = strlen(fnt->entry) + 7;
|
||||
tmp = alloca(length);
|
||||
|
||||
|
@ -87,8 +85,9 @@ _edje_file_open(const char *file, const char *coll, int *error_ret, Edje_Part_Co
|
|||
{
|
||||
Edje_File *edf;
|
||||
Edje_Part_Collection *edc;
|
||||
Edje_Data *di;
|
||||
Eet_File *ef;
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
struct stat st;
|
||||
|
||||
if (stat(file, &st) != 0)
|
||||
|
@ -133,11 +132,8 @@ _edje_file_open(const char *file, const char *coll, int *error_ret, Edje_Part_Co
|
|||
|
||||
_edje_textblock_style_parse_and_fix(edf);
|
||||
|
||||
for (l = edf->data; l; l = l->next)
|
||||
{
|
||||
Edje_Data *di = l->data;
|
||||
edf->data_cache = evas_hash_add(edf->data_cache, eina_stringshare_add(di->key), di->value);
|
||||
}
|
||||
EINA_LIST_FOREACH(edf->data, l, di)
|
||||
edf->data_cache = evas_hash_add(edf->data_cache, eina_stringshare_add(di->key), di->value);
|
||||
|
||||
if (coll)
|
||||
{
|
||||
|
@ -160,8 +156,9 @@ Edje_File *
|
|||
_edje_cache_file_coll_open(const char *file, const char *coll, int *error_ret, Edje_Part_Collection **edc_ret)
|
||||
{
|
||||
Edje_File *edf;
|
||||
Evas_List *l, *hist;
|
||||
Eina_List *l, *hist;
|
||||
Edje_Part_Collection *edc;
|
||||
Edje_Part *ep;
|
||||
|
||||
edf = evas_hash_find(_edje_file_hash, file);
|
||||
if (edf)
|
||||
|
@ -170,13 +167,12 @@ _edje_cache_file_coll_open(const char *file, const char *coll, int *error_ret, E
|
|||
}
|
||||
else
|
||||
{
|
||||
for (l = _edje_file_cache; l; l = l->next)
|
||||
EINA_LIST_FOREACH(_edje_file_cache, l, edf)
|
||||
{
|
||||
edf = l->data;
|
||||
if (!strcmp(edf->path, file))
|
||||
{
|
||||
edf->references = 1;
|
||||
_edje_file_cache = evas_list_remove_list(_edje_file_cache, l);
|
||||
_edje_file_cache = eina_list_remove_list(_edje_file_cache, l);
|
||||
_edje_file_hash = evas_hash_add(_edje_file_hash, file, edf);
|
||||
break;
|
||||
}
|
||||
|
@ -200,13 +196,12 @@ _edje_cache_file_coll_open(const char *file, const char *coll, int *error_ret, E
|
|||
}
|
||||
else
|
||||
{
|
||||
for (l = edf->collection_cache; l; l = l->next)
|
||||
EINA_LIST_FOREACH(edf->collection_cache, l, edc)
|
||||
{
|
||||
edc = l->data;
|
||||
if (!strcmp(edc->part, coll))
|
||||
{
|
||||
edc->references = 1;
|
||||
edf->collection_cache = evas_list_remove_list(edf->collection_cache, l);
|
||||
edf->collection_cache = eina_list_remove_list(edf->collection_cache, l);
|
||||
edf->collection_hash = evas_hash_add(edf->collection_hash, coll, edc);
|
||||
break;
|
||||
}
|
||||
|
@ -222,29 +217,28 @@ _edje_cache_file_coll_open(const char *file, const char *coll, int *error_ret, E
|
|||
}
|
||||
else
|
||||
{
|
||||
for (l = edc->parts; l; l = l->next)
|
||||
EINA_LIST_FOREACH(edc->parts, l, ep)
|
||||
{
|
||||
Edje_Part *ep, *ep2;
|
||||
Edje_Part *ep2;
|
||||
|
||||
/* Register any color classes in this parts descriptions. */
|
||||
ep = l->data;
|
||||
hist = NULL;
|
||||
hist = evas_list_append(hist, ep);
|
||||
hist = eina_list_append(hist, ep);
|
||||
ep2 = ep;
|
||||
while (ep2->dragable.confine_id >= 0)
|
||||
{
|
||||
ep2 = evas_list_nth(edc->parts, ep2->dragable.confine_id);
|
||||
if (evas_list_find(hist, ep2))
|
||||
ep2 = eina_list_nth(edc->parts, ep2->dragable.confine_id);
|
||||
if (eina_list_data_find(hist, ep2))
|
||||
{
|
||||
printf("EDJE ERROR: confine_to loops. invalidating loop.\n");
|
||||
ep2->dragable.confine_id = -1;
|
||||
break;
|
||||
}
|
||||
hist = evas_list_append(hist, ep2);
|
||||
hist = eina_list_append(hist, ep2);
|
||||
}
|
||||
evas_list_free(hist);
|
||||
eina_list_free(hist);
|
||||
hist = NULL;
|
||||
hist = evas_list_append(hist, ep);
|
||||
hist = eina_list_append(hist, ep);
|
||||
ep2 = ep;
|
||||
while (ep2->dragable.events_id >= 0)
|
||||
{
|
||||
|
@ -252,37 +246,37 @@ _edje_cache_file_coll_open(const char *file, const char *coll, int *error_ret, E
|
|||
|
||||
prev = ep2;
|
||||
|
||||
ep2 = evas_list_nth(edc->parts, ep2->dragable.events_id);
|
||||
ep2 = eina_list_nth(edc->parts, ep2->dragable.events_id);
|
||||
if (!ep2->dragable.x && !ep2->dragable.y)
|
||||
{
|
||||
prev->dragable.events_id = -1;
|
||||
break;
|
||||
}
|
||||
|
||||
if (evas_list_find(hist, ep2))
|
||||
if (eina_list_data_find(hist, ep2))
|
||||
{
|
||||
printf("EDJE ERROR: events_to loops. invalidating loop.\n");
|
||||
ep2->dragable.events_id = -1;
|
||||
break;
|
||||
}
|
||||
hist = evas_list_append(hist, ep2);
|
||||
hist = eina_list_append(hist, ep2);
|
||||
}
|
||||
evas_list_free(hist);
|
||||
eina_list_free(hist);
|
||||
hist = NULL;
|
||||
hist = evas_list_append(hist, ep);
|
||||
hist = eina_list_append(hist, ep);
|
||||
ep2 = ep;
|
||||
while (ep2->clip_to_id >= 0)
|
||||
{
|
||||
ep2 = evas_list_nth(edc->parts, ep2->clip_to_id);
|
||||
if (evas_list_find(hist, ep2))
|
||||
ep2 = eina_list_nth(edc->parts, ep2->clip_to_id);
|
||||
if (eina_list_data_find(hist, ep2))
|
||||
{
|
||||
printf("EDJE ERROR: clip_to loops. invalidating loop.\n");
|
||||
ep2->clip_to_id = -1;
|
||||
break;
|
||||
}
|
||||
hist = evas_list_append(hist, ep2);
|
||||
hist = eina_list_append(hist, ep2);
|
||||
}
|
||||
evas_list_free(hist);
|
||||
eina_list_free(hist);
|
||||
hist = NULL;
|
||||
}
|
||||
}
|
||||
|
@ -297,15 +291,15 @@ _edje_cache_coll_clean(Edje_File *edf)
|
|||
{
|
||||
int count;
|
||||
|
||||
count = evas_list_count(edf->collection_cache);
|
||||
count = eina_list_count(edf->collection_cache);
|
||||
while ((edf->collection_cache) && (count > _edje_collection_cache_size))
|
||||
{
|
||||
Edje_Part_Collection *edc;
|
||||
|
||||
edc = evas_list_last(edf->collection_cache)->data;
|
||||
edf->collection_cache = evas_list_remove_list(edf->collection_cache, evas_list_last(edf->collection_cache));
|
||||
edc = eina_list_data_get(eina_list_last(edf->collection_cache));
|
||||
edf->collection_cache = eina_list_remove_list(edf->collection_cache, eina_list_last(edf->collection_cache));
|
||||
_edje_collection_free(edf, edc);
|
||||
count = evas_list_count(edf->collection_cache);
|
||||
count = eina_list_count(edf->collection_cache);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -316,8 +310,8 @@ _edje_cache_coll_flush(Edje_File *edf)
|
|||
{
|
||||
Edje_Part_Collection *edc;
|
||||
|
||||
edc = evas_list_last(edf->collection_cache)->data;
|
||||
edf->collection_cache = evas_list_remove_list(edf->collection_cache, evas_list_last(edf->collection_cache));
|
||||
edc = eina_list_data_get(eina_list_last(edf->collection_cache));
|
||||
edf->collection_cache = eina_list_remove_list(edf->collection_cache, eina_list_last(edf->collection_cache));
|
||||
_edje_collection_free(edf, edc);
|
||||
}
|
||||
}
|
||||
|
@ -328,7 +322,7 @@ _edje_cache_coll_unref(Edje_File *edf, Edje_Part_Collection *edc)
|
|||
edc->references--;
|
||||
if (edc->references != 0) return;
|
||||
edf->collection_hash = evas_hash_del(edf->collection_hash, edc->part, edc);
|
||||
edf->collection_cache = evas_list_prepend(edf->collection_cache, edc);
|
||||
edf->collection_cache = eina_list_prepend(edf->collection_cache, edc);
|
||||
_edje_cache_coll_clean(edf);
|
||||
}
|
||||
|
||||
|
@ -337,15 +331,15 @@ _edje_cache_file_clean(void)
|
|||
{
|
||||
int count;
|
||||
|
||||
count = evas_list_count(_edje_file_cache);
|
||||
count = eina_list_count(_edje_file_cache);
|
||||
while ((_edje_file_cache) && (count > _edje_file_cache_size))
|
||||
{
|
||||
Edje_File *edf;
|
||||
|
||||
edf = evas_list_last(_edje_file_cache)->data;
|
||||
_edje_file_cache = evas_list_remove_list(_edje_file_cache, evas_list_last(_edje_file_cache));
|
||||
edf = eina_list_data_get(eina_list_last(_edje_file_cache));
|
||||
_edje_file_cache = eina_list_remove_list(_edje_file_cache, eina_list_last(_edje_file_cache));
|
||||
_edje_file_free(edf);
|
||||
count = evas_list_count(_edje_file_cache);
|
||||
count = eina_list_count(_edje_file_cache);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -355,7 +349,7 @@ _edje_cache_file_unref(Edje_File *edf)
|
|||
edf->references--;
|
||||
if (edf->references != 0) return;
|
||||
_edje_file_hash = evas_hash_del(_edje_file_hash, edf->path, edf);
|
||||
_edje_file_cache = evas_list_prepend(_edje_file_cache, edf);
|
||||
_edje_file_cache = eina_list_prepend(_edje_file_cache, edf);
|
||||
_edje_cache_file_clean();
|
||||
}
|
||||
|
||||
|
@ -398,17 +392,13 @@ edje_file_cache_flush(void)
|
|||
EAPI void
|
||||
edje_collection_cache_set(int count)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_File *edf;
|
||||
|
||||
if (count < 0) count = 0;
|
||||
_edje_collection_cache_size = count;
|
||||
for (l = _edje_file_cache; l; l = l->next)
|
||||
{
|
||||
Edje_File *edf;
|
||||
|
||||
edf = l->data;
|
||||
_edje_cache_coll_clean(edf);
|
||||
}
|
||||
EINA_LIST_FOREACH(_edje_file_cache, l, edf)
|
||||
_edje_cache_coll_clean(edf);
|
||||
/* FIXME: freach in file hash too! */
|
||||
}
|
||||
|
||||
|
@ -422,17 +412,13 @@ EAPI void
|
|||
edje_collection_cache_flush(void)
|
||||
{
|
||||
int ps;
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_File *edf;
|
||||
|
||||
ps = _edje_collection_cache_size;
|
||||
_edje_collection_cache_size = 0;
|
||||
for (l = _edje_file_cache; l; l = l->next)
|
||||
{
|
||||
Edje_File *edf;
|
||||
|
||||
edf = l->data;
|
||||
_edje_cache_coll_flush(edf);
|
||||
}
|
||||
EINA_LIST_FOREACH(_edje_file_cache, l, edf)
|
||||
_edje_cache_coll_flush(edf);
|
||||
/* FIXME: freach in file hash too! */
|
||||
_edje_collection_cache_size = ps;
|
||||
}
|
||||
|
|
|
@ -53,7 +53,8 @@ _edje_part_description_find(Edje *ed, Edje_Real_Part *rp, const char *name,
|
|||
{
|
||||
Edje_Part *ep = rp->part;
|
||||
Edje_Part_Description *ret = NULL;
|
||||
Evas_List *l;
|
||||
Edje_Part_Description *d;
|
||||
Eina_List *l;
|
||||
double min_dst = 999.0;
|
||||
|
||||
if (!strcmp(name, "default") && val == 0.0)
|
||||
|
@ -67,11 +68,8 @@ _edje_part_description_find(Edje *ed, Edje_Real_Part *rp, const char *name,
|
|||
ret = ep->default_desc;
|
||||
min_dst = ABS(ep->default_desc->state.value - val);
|
||||
}
|
||||
|
||||
for (l = ep->other_desc; l; l = l->next)
|
||||
EINA_LIST_FOREACH(ep->other_desc, l, d)
|
||||
{
|
||||
Edje_Part_Description *d = l->data;
|
||||
|
||||
if (!strcmp(d->state.name, name))
|
||||
{
|
||||
double dst;
|
||||
|
@ -602,7 +600,7 @@ _edje_part_recalc_single(Edje *ed,
|
|||
const char *text = "";
|
||||
const char *style = "";
|
||||
Edje_Style *stl = NULL;
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
|
||||
if (chosen_desc->text.id_source >= 0)
|
||||
{
|
||||
|
@ -630,9 +628,8 @@ _edje_part_recalc_single(Edje *ed,
|
|||
if (ep->text.text) text = ep->text.text;
|
||||
}
|
||||
|
||||
for (l = ed->file->styles; l; l = l->next)
|
||||
EINA_LIST_FOREACH(ed->file->styles, l, stl)
|
||||
{
|
||||
stl = l->data;
|
||||
if ((stl->name) && (!strcmp(stl->name, style))) break;
|
||||
stl = NULL;
|
||||
}
|
||||
|
@ -1165,15 +1162,15 @@ _edje_gradient_recalc_apply(Edje *ed, Edje_Real_Part *ep, Edje_Calc_Params *p3,
|
|||
p3->gradient.id != ep->gradient_id)
|
||||
{
|
||||
Edje_Spectrum_Directory_Entry *se;
|
||||
Evas_List *l;
|
||||
Edje_Spectrum_Color *sc;
|
||||
Eina_List *l;
|
||||
|
||||
se = evas_list_nth(ed->file->spectrum_dir->entries, p3->gradient.id);
|
||||
se = eina_list_nth(ed->file->spectrum_dir->entries, p3->gradient.id);
|
||||
if (se)
|
||||
{
|
||||
evas_object_gradient_clear(ep->object);
|
||||
for (l = se->color_list; l; l = l->next)
|
||||
EINA_LIST_FOREACH(se->color_list, l, sc)
|
||||
{
|
||||
Edje_Spectrum_Color *sc = l->data;
|
||||
evas_object_gradient_color_stop_add(ep->object, sc->r,
|
||||
sc->g, sc->b, 255,
|
||||
sc->d);
|
||||
|
@ -1205,7 +1202,7 @@ _edje_image_recalc_apply(Edje *ed, Edje_Real_Part *ep, Edje_Calc_Params *p3, Edj
|
|||
Edje_Image_Directory_Entry *ie;
|
||||
|
||||
if (!ed->file->image_dir) ie = NULL;
|
||||
else ie = evas_list_nth(ed->file->image_dir->entries, (-image_id) - 1);
|
||||
else ie = eina_list_nth(ed->file->image_dir->entries, (-image_id) - 1);
|
||||
if ((ie) &&
|
||||
(ie->source_type == EDJE_IMAGE_SOURCE_TYPE_EXTERNAL) &&
|
||||
(ie->entry))
|
||||
|
@ -1217,7 +1214,7 @@ _edje_image_recalc_apply(Edje *ed, Edje_Real_Part *ep, Edje_Calc_Params *p3, Edj
|
|||
{
|
||||
image_count = 2;
|
||||
if (ep->param2.description)
|
||||
image_count += evas_list_count(ep->param2.description->image.tween_list);
|
||||
image_count += eina_list_count(ep->param2.description->image.tween_list);
|
||||
image_num = (pos * ((double)image_count - 0.5));
|
||||
if (image_num > (image_count - 1))
|
||||
image_num = image_count - 1;
|
||||
|
@ -1229,7 +1226,7 @@ _edje_image_recalc_apply(Edje *ed, Edje_Real_Part *ep, Edje_Calc_Params *p3, Edj
|
|||
{
|
||||
Edje_Part_Image_Id *imid;
|
||||
|
||||
imid = evas_list_nth(ep->param2.description->image.tween_list,
|
||||
imid = eina_list_nth(ep->param2.description->image.tween_list,
|
||||
image_num - 1);
|
||||
if (imid) image_id = imid->id;
|
||||
}
|
||||
|
|
|
@ -334,61 +334,62 @@ int
|
|||
_edje_timer_cb(void *data)
|
||||
{
|
||||
double t;
|
||||
Evas_List *l;
|
||||
Evas_List *animl = NULL;
|
||||
Eina_List *l;
|
||||
Eina_List *animl = NULL;
|
||||
Edje *ed;
|
||||
|
||||
t = ecore_time_get();
|
||||
for (l = _edje_animators; l; l = l->next)
|
||||
EINA_LIST_FOREACH(_edje_animators, l, ed)
|
||||
{
|
||||
ed = l->data;
|
||||
_edje_ref(ed);
|
||||
animl = evas_list_append(animl, l->data);
|
||||
animl = eina_list_append(animl, ed);
|
||||
}
|
||||
while (animl)
|
||||
{
|
||||
Evas_List *newl = NULL;
|
||||
Eina_List *newl = NULL;
|
||||
|
||||
ed = animl->data;
|
||||
ed = eina_list_data_get(animl);
|
||||
_edje_block(ed);
|
||||
_edje_freeze(ed);
|
||||
animl = evas_list_remove(animl, animl->data);
|
||||
animl = eina_list_remove(animl, eina_list_data_get(animl));
|
||||
if ((!ed->paused) && (!ed->delete_me))
|
||||
{
|
||||
const void *tmp;
|
||||
|
||||
ed->walking_actions = 1;
|
||||
for (l = ed->actions; l; l = l->next)
|
||||
newl = evas_list_append(newl, l->data);
|
||||
EINA_LIST_FOREACH(ed->actions, l, tmp)
|
||||
newl = eina_list_append(newl, tmp);
|
||||
while (newl)
|
||||
{
|
||||
Edje_Running_Program *runp;
|
||||
|
||||
runp = newl->data;
|
||||
newl = evas_list_remove(newl, newl->data);
|
||||
runp = eina_list_data_get(newl);
|
||||
newl = eina_list_remove(newl, eina_list_data_get(newl));
|
||||
if (!runp->delete_me)
|
||||
_edje_program_run_iterate(runp, t);
|
||||
if (_edje_block_break(ed))
|
||||
{
|
||||
evas_list_free(newl);
|
||||
eina_list_free(newl);
|
||||
newl = NULL;
|
||||
goto break_prog;
|
||||
}
|
||||
}
|
||||
for (l = ed->actions; l; l = l->next)
|
||||
newl = evas_list_append(newl, l->data);
|
||||
EINA_LIST_FOREACH(ed->actions, l, tmp)
|
||||
newl = eina_list_append(newl, tmp);
|
||||
while (newl)
|
||||
{
|
||||
Edje_Running_Program *runp;
|
||||
|
||||
runp = newl->data;
|
||||
newl = evas_list_remove(newl, newl->data);
|
||||
runp = eina_list_data_get(newl);
|
||||
newl = eina_list_remove(newl, eina_list_data_get(newl));
|
||||
if (runp->delete_me)
|
||||
{
|
||||
_edje_anim_count--;
|
||||
runp->edje->actions =
|
||||
evas_list_remove(runp->edje->actions, runp);
|
||||
eina_list_remove(runp->edje->actions, runp);
|
||||
if (!runp->edje->actions)
|
||||
_edje_animators =
|
||||
evas_list_remove(_edje_animators, runp->edje);
|
||||
eina_list_remove(_edje_animators, runp->edje);
|
||||
free(runp);
|
||||
}
|
||||
}
|
||||
|
@ -411,7 +412,7 @@ _edje_pending_timer_cb(void *data)
|
|||
Edje_Pending_Program *pp;
|
||||
|
||||
pp = data;
|
||||
pp->edje->pending_actions = evas_list_remove(pp->edje->pending_actions, pp);
|
||||
pp->edje->pending_actions = eina_list_remove(pp->edje->pending_actions, pp);
|
||||
_edje_program_run(pp->edje, pp->program, 1, "", "");
|
||||
free(pp);
|
||||
return 0;
|
||||
|
|
|
@ -10,8 +10,9 @@
|
|||
static void
|
||||
_edje_container_relayout(Smart_Data *sd)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Evas_Coord x, y, w, h, sw;
|
||||
Edje_Item *ei;
|
||||
|
||||
if (sd->freeze > 0) return;
|
||||
if (!sd->need_layout) return;
|
||||
|
@ -25,11 +26,8 @@ _edje_container_relayout(Smart_Data *sd)
|
|||
w = 0;
|
||||
h = 0;
|
||||
|
||||
for (l = sd->children; l; l = l->next)
|
||||
EINA_LIST_FOREACH(sd->children, l, ei)
|
||||
{
|
||||
Edje_Item *ei;
|
||||
|
||||
ei = l->data;
|
||||
if (sd->homogenous) h = sd->min_row_h;
|
||||
|
||||
ei->y = y;
|
||||
|
@ -44,7 +42,8 @@ _edje_container_relayout(Smart_Data *sd)
|
|||
static void
|
||||
_edje_container_recalc(Smart_Data *sd)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Item *ei;
|
||||
int any_max_h = 0, any_max_w = 0;
|
||||
int i;
|
||||
|
||||
|
@ -80,11 +79,8 @@ _edje_container_recalc(Smart_Data *sd)
|
|||
else if ((sd->max_w >= 0) && (sd->w < sd->max_w))
|
||||
sd->w = sd->max_w;
|
||||
|
||||
for (l = sd->children; l; l = l->next)
|
||||
EINA_LIST_FOREACH(sd->children, l, ei)
|
||||
{
|
||||
Edje_Item *ei;
|
||||
|
||||
ei = l->data;
|
||||
if (ei->minh > sd->min_row_h)
|
||||
sd->min_row_h = ei->minh;
|
||||
if (sd->max_row_h >= 0)
|
||||
|
@ -115,7 +111,7 @@ _edje_container_recalc(Smart_Data *sd)
|
|||
}
|
||||
if (sd->homogenous)
|
||||
{
|
||||
sd->min_h = evas_list_count(sd->children) * sd->min_row_h;
|
||||
sd->min_h = eina_list_count(sd->children) * sd->min_row_h;
|
||||
}
|
||||
|
||||
sd->changed = 0;
|
||||
|
@ -451,10 +447,10 @@ edje_container_item_append(Evas_Object *obj, Edje_Item *ei)
|
|||
|
||||
sd = evas_object_smart_data_get(obj);
|
||||
if (!sd) return;
|
||||
sd->children = evas_list_append(sd->children, ei);
|
||||
sd->children = eina_list_append(sd->children, ei);
|
||||
sd->changed = 1;
|
||||
sd->change_child_list = 1;
|
||||
sd->rows = evas_list_count(sd->children);
|
||||
sd->rows = eina_list_count(sd->children);
|
||||
_edje_container_recalc(sd);
|
||||
}
|
||||
|
||||
|
@ -465,10 +461,10 @@ edje_container_item_prepend(Evas_Object *obj, Edje_Item *ei)
|
|||
|
||||
sd = evas_object_smart_data_get(obj);
|
||||
if (!sd) return;
|
||||
sd->children = evas_list_prepend(sd->children, ei);
|
||||
sd->children = eina_list_prepend(sd->children, ei);
|
||||
sd->changed = 1;
|
||||
sd->change_child_list = 1;
|
||||
sd->rows = evas_list_count(sd->children);
|
||||
sd->rows = eina_list_count(sd->children);
|
||||
_edje_container_recalc(sd);
|
||||
}
|
||||
|
||||
|
@ -479,10 +475,10 @@ edje_container_item_append_relative(Evas_Object *obj, Edje_Item *ei, Edje_Item *
|
|||
|
||||
sd = evas_object_smart_data_get(obj);
|
||||
if (!sd) return;
|
||||
sd->children = evas_list_append_relative(sd->children, ei, rel);
|
||||
sd->children = eina_list_append_relative(sd->children, ei, rel);
|
||||
sd->changed = 1;
|
||||
sd->change_child_list = 1;
|
||||
sd->rows = evas_list_count(sd->children);
|
||||
sd->rows = eina_list_count(sd->children);
|
||||
_edje_container_recalc(sd);
|
||||
}
|
||||
|
||||
|
@ -493,10 +489,10 @@ edje_container_item_prepend_relative(Evas_Object *obj, Edje_Item *ei, Edje_Item
|
|||
|
||||
sd = evas_object_smart_data_get(obj);
|
||||
if (!sd) return;
|
||||
sd->children = evas_list_prepend_relative(sd->children, ei, rel);
|
||||
sd->children = eina_list_prepend_relative(sd->children, ei, rel);
|
||||
sd->changed = 1;
|
||||
sd->change_child_list = 1;
|
||||
sd->rows = evas_list_count(sd->children);
|
||||
sd->rows = eina_list_count(sd->children);
|
||||
_edje_container_recalc(sd);
|
||||
}
|
||||
|
||||
|
@ -508,14 +504,14 @@ edje_container_item_insert(Evas_Object *obj, Edje_Item *ei, int n)
|
|||
|
||||
sd = evas_object_smart_data_get(obj);
|
||||
if (!sd) return;
|
||||
rel = evas_list_nth(sd->children, n);
|
||||
rel = eina_list_nth(sd->children, n);
|
||||
if (!rel)
|
||||
sd->children = evas_list_append(sd->children, ei);
|
||||
sd->children = eina_list_append(sd->children, ei);
|
||||
else
|
||||
sd->children = evas_list_append_relative(sd->children, ei, rel);
|
||||
sd->children = eina_list_append_relative(sd->children, ei, rel);
|
||||
sd->changed = 1;
|
||||
sd->change_child_list = 1;
|
||||
sd->rows = evas_list_count(sd->children);
|
||||
sd->rows = eina_list_count(sd->children);
|
||||
_edje_container_recalc(sd);
|
||||
}
|
||||
|
||||
|
@ -526,10 +522,10 @@ edje_container_item_remove(Evas_Object *obj, Edje_Item *ei)
|
|||
|
||||
sd = evas_object_smart_data_get(obj);
|
||||
if (!sd) return;
|
||||
sd->children = evas_list_remove(sd->children, ei);
|
||||
sd->children = eina_list_remove(sd->children, ei);
|
||||
sd->changed = 1;
|
||||
sd->change_child_list = 1;
|
||||
sd->rows = evas_list_count(sd->children);
|
||||
sd->rows = eina_list_count(sd->children);
|
||||
_edje_container_recalc(sd);
|
||||
}
|
||||
|
||||
|
@ -640,7 +636,7 @@ edje_container_count_get(Evas_Object *obj)
|
|||
|
||||
sd = evas_object_smart_data_get(obj);
|
||||
if (!sd) return 0;
|
||||
return evas_list_count(sd->children);
|
||||
return eina_list_count(sd->children);
|
||||
}
|
||||
|
||||
Edje_Item *
|
||||
|
@ -651,7 +647,7 @@ edje_container_item_first_get(Evas_Object *obj)
|
|||
sd = evas_object_smart_data_get(obj);
|
||||
if (!sd) return NULL;
|
||||
if (!sd->children) return NULL;
|
||||
return sd->children->data;
|
||||
return eina_list_data_get(sd->children);
|
||||
}
|
||||
|
||||
Edje_Item *
|
||||
|
@ -662,7 +658,7 @@ edje_container_item_last_get(Evas_Object *obj)
|
|||
sd = evas_object_smart_data_get(obj);
|
||||
if (!sd) return NULL;
|
||||
if (!sd->children) return NULL;
|
||||
return evas_list_last(sd->children)->data;
|
||||
return0 eina_list_data_get(eina_list_last(sd->children));
|
||||
}
|
||||
|
||||
Edje_Item *
|
||||
|
@ -672,7 +668,7 @@ edje_container_item_nth_get(Evas_Object *obj, int n)
|
|||
|
||||
sd = evas_object_smart_data_get(obj);
|
||||
if (!sd) return NULL;
|
||||
return evas_list_nth(sd->children, n);
|
||||
return eina_list_nth(sd->children, n);
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
@ -37,7 +37,7 @@ typedef struct _Smart_Data_Colinfo Smart_Data_Colinfo;
|
|||
struct _Smart_Data
|
||||
{
|
||||
Evas_Coord x, y, w, h;
|
||||
Evas_List *children;
|
||||
Eina_List *children;
|
||||
Evas_Object *smart_obj;
|
||||
int cols, rows;
|
||||
|
||||
|
|
|
@ -83,10 +83,10 @@ _edje_edd_setup(void)
|
|||
eddc.func.mem_free = NULL;
|
||||
eddc.func.str_alloc = (char *(*)(const char *))eina_stringshare_add;
|
||||
eddc.func.str_free = eina_stringshare_del;
|
||||
eddc.func.list_next = (void *(*)(void *))evas_list_next;
|
||||
eddc.func.list_append = (void *(*)(void *, void *))evas_list_append;
|
||||
eddc.func.list_data = (void *(*)(void *))evas_list_data;
|
||||
eddc.func.list_free = (void *(*)(void *))evas_list_free;
|
||||
eddc.func.list_next = (void *(*)(void *))eina_list_next;
|
||||
eddc.func.list_append = (void *(*)(void *, void *))eina_list_append;
|
||||
eddc.func.list_data = (void *(*)(void *))eina_list_data_get;
|
||||
eddc.func.list_free = (void *(*)(void *))eina_list_free;
|
||||
eddc.func.hash_foreach = (void (*)(void *, int (*)(void *, const char *, void *, void *), void *))evas_hash_foreach;
|
||||
eddc.func.hash_add = (void *(*)(void *, const char *, void *))evas_hash_add;
|
||||
eddc.func.hash_free = (void (*)(void *))evas_hash_free;
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -688,7 +688,7 @@ _edje_embryo_fn_stop_program(Embryo_Program *ep, Embryo_Cell *params)
|
|||
Edje *ed;
|
||||
int program_id = 0;
|
||||
Edje_Running_Program *runp;
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
|
||||
CHKPARAM(1);
|
||||
ed = embryo_program_data_get(ep);
|
||||
|
@ -697,12 +697,9 @@ _edje_embryo_fn_stop_program(Embryo_Program *ep, Embryo_Cell *params)
|
|||
|
||||
ed->walking_actions = 1;
|
||||
|
||||
for (l = ed->actions; l; l = l->next)
|
||||
{
|
||||
runp = l->data;
|
||||
if (program_id == runp->program->id)
|
||||
_edje_program_end(ed, runp);
|
||||
}
|
||||
EINA_LIST_FOREACH(ed->actions, l, runp)
|
||||
if (program_id == runp->program->id)
|
||||
_edje_program_end(ed, runp);
|
||||
|
||||
ed->walking_actions = 0;
|
||||
|
||||
|
@ -1507,7 +1504,8 @@ _edje_embryo_fn_custom_state(Embryo_Program *ep, Embryo_Cell *params)
|
|||
Edje *ed = embryo_program_data_get(ep);
|
||||
Edje_Real_Part *rp;
|
||||
Edje_Part_Description *parent, *d;
|
||||
Evas_List *l;
|
||||
Edje_Part_Image_Id *iid;
|
||||
Eina_List *l;
|
||||
char *name;
|
||||
float val;
|
||||
|
||||
|
@ -1546,14 +1544,14 @@ _edje_embryo_fn_custom_state(Embryo_Program *ep, Embryo_Cell *params)
|
|||
*/
|
||||
d->image.tween_list = NULL;
|
||||
|
||||
for (l = parent->image.tween_list; l; l = l->next)
|
||||
EINA_LIST_FOREACH(parent->image.tween_list, l, iid)
|
||||
{
|
||||
Edje_Part_Image_Id *iid = l->data, *iid_new;
|
||||
Edje_Part_Image_Id *iid_new;
|
||||
|
||||
iid_new = calloc(1, sizeof(Edje_Part_Image_Id));
|
||||
iid_new->id = iid->id;
|
||||
|
||||
d->image.tween_list = evas_list_append(d->image.tween_list, iid_new);
|
||||
d->image.tween_list = eina_list_append(d->image.tween_list, iid_new);
|
||||
}
|
||||
|
||||
#define DUP(x) x ? (char *)eina_stringshare_add(x) : NULL
|
||||
|
|
|
@ -23,9 +23,9 @@ struct _Entry
|
|||
Evas_Object *cursor_fg;
|
||||
Evas_Textblock_Cursor *cursor;
|
||||
Evas_Textblock_Cursor *sel_start, *sel_end;
|
||||
Evas_List *sel;
|
||||
Evas_List *anchors;
|
||||
Evas_List *anchorlist;
|
||||
Eina_List *sel;
|
||||
Eina_List *anchors;
|
||||
Eina_List *anchorlist;
|
||||
char *selection;
|
||||
Evas_Bool selecting : 1;
|
||||
Evas_Bool have_selection : 1;
|
||||
|
@ -42,7 +42,7 @@ struct _Anchor
|
|||
Entry *en;
|
||||
char *name;
|
||||
Evas_Textblock_Cursor *start, *end;
|
||||
Evas_List *sel;
|
||||
Eina_List *sel;
|
||||
};
|
||||
|
||||
static void
|
||||
|
@ -253,7 +253,7 @@ _sel_clear(Evas_Textblock_Cursor *c, Evas_Object *o, Entry *en)
|
|||
if (sel->obj_bg) evas_object_del(sel->obj_bg);
|
||||
if (sel->obj_fg) evas_object_del(sel->obj_fg);
|
||||
free(sel);
|
||||
en->sel = evas_list_remove_list(en->sel, en->sel);
|
||||
en->sel = eina_list_remove_list(en->sel, en->sel);
|
||||
}
|
||||
if (en->have_selection)
|
||||
{
|
||||
|
@ -265,7 +265,7 @@ _sel_clear(Evas_Textblock_Cursor *c, Evas_Object *o, Entry *en)
|
|||
static void
|
||||
_sel_update(Evas_Textblock_Cursor *c, Evas_Object *o, Entry *en)
|
||||
{
|
||||
Evas_List *range = NULL, *l;
|
||||
Eina_List *range = NULL, *l;
|
||||
Sel *sel;
|
||||
Evas_Coord x, y, w, h;
|
||||
Evas_Object *smart, *clip;
|
||||
|
@ -274,7 +274,7 @@ _sel_update(Evas_Textblock_Cursor *c, Evas_Object *o, Entry *en)
|
|||
clip = evas_object_clip_get(o);
|
||||
if (en->sel_start)
|
||||
range = evas_textblock_cursor_range_geometry_get(en->sel_start, en->sel_end);
|
||||
if (evas_list_count(range) != evas_list_count(en->sel))
|
||||
if (eina_list_count(range) != eina_list_count(en->sel))
|
||||
{
|
||||
while (en->sel)
|
||||
{
|
||||
|
@ -282,16 +282,16 @@ _sel_update(Evas_Textblock_Cursor *c, Evas_Object *o, Entry *en)
|
|||
if (sel->obj_bg) evas_object_del(sel->obj_bg);
|
||||
if (sel->obj_fg) evas_object_del(sel->obj_fg);
|
||||
free(sel);
|
||||
en->sel = evas_list_remove_list(en->sel, en->sel);
|
||||
en->sel = eina_list_remove_list(en->sel, en->sel);
|
||||
}
|
||||
if (en->have_selection)
|
||||
{
|
||||
for (l = range; l; l = l->next)
|
||||
for (l = range; l; l = eina_list_next(l))
|
||||
{
|
||||
Evas_Object *ob;
|
||||
|
||||
sel = calloc(1, sizeof(Sel));
|
||||
en->sel = evas_list_append(en->sel, sel);
|
||||
en->sel = eina_list_append(en->sel, sel);
|
||||
ob = edje_object_add(en->rp->edje->evas);
|
||||
edje_object_file_set(ob, en->rp->edje->path, en->rp->part->source);
|
||||
evas_object_smart_member_add(ob, smart);
|
||||
|
@ -313,11 +313,10 @@ _sel_update(Evas_Textblock_Cursor *c, Evas_Object *o, Entry *en)
|
|||
}
|
||||
x = y = w = h = -1;
|
||||
evas_object_geometry_get(o, &x, &y, &w, &h);
|
||||
for (l = en->sel; l; l = l->next)
|
||||
EINA_LIST_FOREACH(en->sel, l, sel)
|
||||
{
|
||||
Evas_Textblock_Rectangle *r;
|
||||
|
||||
sel = l->data;
|
||||
r = range->data;
|
||||
if (sel->obj_bg)
|
||||
{
|
||||
|
@ -329,7 +328,7 @@ _sel_update(Evas_Textblock_Cursor *c, Evas_Object *o, Entry *en)
|
|||
evas_object_move(sel->obj_fg, x + r->x, y + r->y);
|
||||
evas_object_resize(sel->obj_fg, r->w, r->h);
|
||||
}
|
||||
range = evas_list_remove_list(range, range);
|
||||
range = eina_list_remove_list(range, range);
|
||||
free(r);
|
||||
}
|
||||
}
|
||||
|
@ -452,20 +451,20 @@ _edje_anchor_mouse_out_cb(void *data, Evas *e, Evas_Object *obj, void *event_inf
|
|||
static void
|
||||
_anchors_update(Evas_Textblock_Cursor *c, Evas_Object *o, Entry *en)
|
||||
{
|
||||
Evas_List *l, *ll, *range;
|
||||
Eina_List *l, *ll, *range;
|
||||
Evas_Coord x, y, w, h;
|
||||
Evas_Object *smart, *clip;
|
||||
Sel *sel;
|
||||
|
||||
Anchor *an;
|
||||
|
||||
smart = evas_object_smart_parent_get(o);
|
||||
clip = evas_object_clip_get(o);
|
||||
x = y = w = h = -1;
|
||||
evas_object_geometry_get(o, &x, &y, &w, &h);
|
||||
for (l = en->anchors; l; l = l->next)
|
||||
EINA_LIST_FOREACH(en->anchors, l, an)
|
||||
{
|
||||
Anchor *an = l->data;
|
||||
range = evas_textblock_cursor_range_geometry_get(an->start, an->end);
|
||||
if (evas_list_count(range) != evas_list_count(an->sel))
|
||||
if (eina_list_count(range) != eina_list_count(an->sel))
|
||||
{
|
||||
while (an->sel)
|
||||
{
|
||||
|
@ -474,14 +473,14 @@ _anchors_update(Evas_Textblock_Cursor *c, Evas_Object *o, Entry *en)
|
|||
if (sel->obj_fg) evas_object_del(sel->obj_fg);
|
||||
if (sel->obj) evas_object_del(sel->obj);
|
||||
free(sel);
|
||||
an->sel = evas_list_remove_list(an->sel, an->sel);
|
||||
an->sel = eina_list_remove_list(an->sel, an->sel);
|
||||
}
|
||||
for (ll = range; ll; ll = ll->next)
|
||||
for (ll = range; ll; ll = eina_list_next(ll))
|
||||
{
|
||||
Evas_Object *ob;
|
||||
|
||||
|
||||
sel = calloc(1, sizeof(Sel));
|
||||
an->sel = evas_list_append(an->sel, sel);
|
||||
an->sel = eina_list_append(an->sel, sel);
|
||||
ob = edje_object_add(en->rp->edje->evas);
|
||||
edje_object_file_set(ob, en->rp->edje->path, en->rp->part->source5);
|
||||
evas_object_smart_member_add(ob, smart);
|
||||
|
@ -513,11 +512,10 @@ _anchors_update(Evas_Textblock_Cursor *c, Evas_Object *o, Entry *en)
|
|||
sel->obj = ob;
|
||||
}
|
||||
}
|
||||
for (ll = an->sel; ll; ll = ll->next)
|
||||
EINA_LIST_FOREACH(an->sel, ll, sel)
|
||||
{
|
||||
Evas_Textblock_Rectangle *r;
|
||||
|
||||
sel = ll->data;
|
||||
|
||||
r = range->data;
|
||||
if (sel->obj_bg)
|
||||
{
|
||||
|
@ -534,7 +532,7 @@ _anchors_update(Evas_Textblock_Cursor *c, Evas_Object *o, Entry *en)
|
|||
evas_object_move(sel->obj, x + r->x, y + r->y);
|
||||
evas_object_resize(sel->obj, r->w, r->h);
|
||||
}
|
||||
range = evas_list_remove_list(range, range);
|
||||
range = eina_list_remove_list(range, range);
|
||||
free(r);
|
||||
}
|
||||
}
|
||||
|
@ -546,7 +544,7 @@ _anchors_clear(Evas_Textblock_Cursor *c, Evas_Object *o, Entry *en)
|
|||
while (en->anchorlist)
|
||||
{
|
||||
free(en->anchorlist->data);
|
||||
en->anchorlist = evas_list_remove_list(en->anchorlist, en->anchorlist);
|
||||
en->anchorlist = eina_list_remove_list(en->anchorlist, en->anchorlist);
|
||||
}
|
||||
while (en->anchors)
|
||||
{
|
||||
|
@ -561,9 +559,9 @@ _anchors_clear(Evas_Textblock_Cursor *c, Evas_Object *o, Entry *en)
|
|||
if (sel->obj_fg) evas_object_del(sel->obj_fg);
|
||||
if (sel->obj) evas_object_del(sel->obj);
|
||||
free(sel);
|
||||
an->sel = evas_list_remove_list(an->sel, an->sel);
|
||||
an->sel = eina_list_remove_list(an->sel, an->sel);
|
||||
}
|
||||
en->anchors = evas_list_remove_list(en->anchors, en->anchors);
|
||||
en->anchors = eina_list_remove_list(en->anchors, en->anchors);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -597,7 +595,7 @@ _anchors_get(Evas_Textblock_Cursor *c, Evas_Object *o, Entry *en)
|
|||
{
|
||||
an->name = strdup(p + 5);
|
||||
}
|
||||
en->anchors = evas_list_append(en->anchors, an);
|
||||
en->anchors = eina_list_append(en->anchors, an);
|
||||
an->start = evas_object_textblock_cursor_new(o);
|
||||
an->end = evas_object_textblock_cursor_new(o);
|
||||
evas_textblock_cursor_copy(c1, an->start);
|
||||
|
@ -613,7 +611,7 @@ _anchors_get(Evas_Textblock_Cursor *c, Evas_Object *o, Entry *en)
|
|||
if (an->name) free(an->name);
|
||||
evas_textblock_cursor_free(an->start);
|
||||
evas_textblock_cursor_free(an->end);
|
||||
en->anchors = evas_list_remove(en->anchors, an);
|
||||
en->anchors = eina_list_remove(en->anchors, an);
|
||||
free(an);
|
||||
}
|
||||
firsttext = 0;
|
||||
|
@ -1259,22 +1257,23 @@ _edje_entry_set_cursor_end(Edje_Real_Part *rp)
|
|||
_curs_end(en->cursor, rp->object, en);
|
||||
}
|
||||
|
||||
const Evas_List *
|
||||
const Eina_List *
|
||||
_edje_entry_anchors_list(Edje_Real_Part *rp)
|
||||
{
|
||||
Entry *en = rp->entry_data;
|
||||
Evas_List *l, *anchors = NULL;
|
||||
Eina_List *l, *anchors = NULL;
|
||||
Anchor *an;
|
||||
|
||||
if (!en) return NULL;
|
||||
if (!en->anchorlist)
|
||||
{
|
||||
for (l = en->anchors; l; l = l->next)
|
||||
EINA_LIST_FOREACH(en->anchors, l, an)
|
||||
{
|
||||
Anchor *an = l->data;
|
||||
char *n;
|
||||
|
||||
|
||||
n = an->name;
|
||||
if (!n) n = "";
|
||||
anchors = evas_list_append(anchors, strdup(n));
|
||||
anchors = eina_list_append(anchors, strdup(n));
|
||||
}
|
||||
en->anchorlist = anchors;
|
||||
}
|
||||
|
|
|
@ -9,10 +9,10 @@ static Evas_Bool _edje_file_collection_hash_foreach(const Evas_Hash *hash, const
|
|||
#ifdef EDJE_PROGRAM_CACHE
|
||||
static Evas_Bool _edje_collection_free_prog_cache_matches_free_cb(const Evas_Hash *hash, const char *key, void *data, void *fdata);
|
||||
#endif
|
||||
static int _edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *group, Evas_List *group_path);
|
||||
static int _edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *group, Eina_List *group_path);
|
||||
static void _cb_signal_repeat(void *data, Evas_Object *obj, const char *signal, const char *source);
|
||||
|
||||
static Evas_List *_edje_swallows_collect(Edje *ed);
|
||||
static Eina_List *_edje_swallows_collect(Edje *ed);
|
||||
|
||||
/************************** API Routines **************************/
|
||||
|
||||
|
@ -91,15 +91,15 @@ edje_object_load_error_get(const Evas_Object *obj)
|
|||
/** Get a list of groups in an edje file
|
||||
* @param file The path to the edje file
|
||||
*
|
||||
* @return The Evas_List of group names (char *)
|
||||
* @return The Eina_List of group names (char *)
|
||||
*
|
||||
* Note: the list must be freed using edje_file_collection_list_free()
|
||||
* when you are done with it.
|
||||
*/
|
||||
EAPI Evas_List *
|
||||
EAPI Eina_List *
|
||||
edje_file_collection_list(const char *file)
|
||||
{
|
||||
Evas_List *lst = NULL;
|
||||
Eina_List *lst = NULL;
|
||||
Edje_File *edf;
|
||||
int error_ret = 0;
|
||||
|
||||
|
@ -109,15 +109,11 @@ edje_file_collection_list(const char *file)
|
|||
{
|
||||
if (edf->collection_dir)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Part_Collection_Directory_Entry *ce;
|
||||
|
||||
for (l = edf->collection_dir->entries; l; l = l->next)
|
||||
{
|
||||
Edje_Part_Collection_Directory_Entry *ce;
|
||||
|
||||
ce = l->data;
|
||||
lst = evas_list_append(lst, eina_stringshare_add(ce->entry));
|
||||
}
|
||||
EINA_LIST_FOREACH(edf->collection_dir->entries, l, ce)
|
||||
lst = eina_list_append(lst, eina_stringshare_add(ce->entry));
|
||||
}
|
||||
_edje_cache_file_unref(edf);
|
||||
}
|
||||
|
@ -125,17 +121,17 @@ edje_file_collection_list(const char *file)
|
|||
}
|
||||
|
||||
/** Free file collection list
|
||||
* @param lst The Evas_List of groups
|
||||
* @param lst The Eina_List of groups
|
||||
*
|
||||
* Frees the list returned by edje_file_collection_list().
|
||||
*/
|
||||
EAPI void
|
||||
edje_file_collection_list_free(Evas_List *lst)
|
||||
edje_file_collection_list_free(Eina_List *lst)
|
||||
{
|
||||
while (lst)
|
||||
{
|
||||
if (lst->data) eina_stringshare_del(lst->data);
|
||||
lst = evas_list_remove(lst, lst->data);
|
||||
if (eina_list_data_get(lst)) eina_stringshare_del(eina_list_data_get(lst));
|
||||
lst = eina_list_remove(lst, eina_list_data_get(lst));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -222,7 +218,7 @@ static void
|
|||
_edje_programs_patterns_init(Edje *ed)
|
||||
{
|
||||
Edje_Signals_Sources_Patterns *ssp = &ed->patterns.programs;
|
||||
Evas_List *programs = ed->collection->programs;
|
||||
Eina_List *programs = ed->collection->programs;
|
||||
|
||||
if (ssp->signals_patterns)
|
||||
return;
|
||||
|
@ -232,12 +228,12 @@ _edje_programs_patterns_init(Edje *ed)
|
|||
}
|
||||
|
||||
static int
|
||||
_edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *group, Evas_List *group_path)
|
||||
_edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *group, Eina_List *group_path)
|
||||
{
|
||||
Edje *ed;
|
||||
int n;
|
||||
Evas_List *parts = NULL;
|
||||
Evas_List *old_swallows;
|
||||
Eina_List *parts = NULL;
|
||||
Eina_List *old_swallows;
|
||||
int group_path_started = 0;
|
||||
|
||||
ed = _edje_fetch(obj);
|
||||
|
@ -273,36 +269,34 @@ _edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *g
|
|||
}
|
||||
else
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
int i;
|
||||
int errors = 0;
|
||||
Edje_Part *ep;
|
||||
|
||||
/* colorclass stuff */
|
||||
for (l = ed->collection->parts; (l && ! errors); l = l->next)
|
||||
EINA_LIST_FOREACH(ed->collection->parts, l, ep)
|
||||
{
|
||||
Edje_Part *ep;
|
||||
Evas_List *hist = NULL;
|
||||
|
||||
Eina_List *hist = NULL;
|
||||
Edje_Part_Description *desc;
|
||||
|
||||
if (errors)
|
||||
break;
|
||||
/* Register any color classes in this parts descriptions. */
|
||||
ep = l->data;
|
||||
if ((ep->default_desc) && (ep->default_desc->color_class))
|
||||
_edje_color_class_member_add(ed, ep->default_desc->color_class);
|
||||
for (hist = ep->other_desc; hist; hist = hist->next)
|
||||
{
|
||||
Edje_Part_Description *desc;
|
||||
|
||||
desc = hist->data;
|
||||
if (desc->color_class)
|
||||
_edje_color_class_member_add(ed, desc->color_class);
|
||||
}
|
||||
|
||||
EINA_LIST_FOREACH(ep->other_desc, hist, desc)
|
||||
if (desc->color_class)
|
||||
_edje_color_class_member_add(ed, desc->color_class);
|
||||
}
|
||||
/* build real parts */
|
||||
for (n = 0, l = ed->collection->parts; l; l = l->next, n++)
|
||||
for (n = 0, l = ed->collection->parts; l; l = eina_list_next(l), n++)
|
||||
{
|
||||
Edje_Part *ep;
|
||||
Edje_Real_Part *rp;
|
||||
|
||||
ep = l->data;
|
||||
|
||||
ep = eina_list_data_get(l);
|
||||
rp = calloc(1, sizeof(Edje_Real_Part));
|
||||
if (!rp)
|
||||
{
|
||||
|
@ -312,7 +306,7 @@ _edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *g
|
|||
rp->edje = ed;
|
||||
_edje_ref(rp->edje);
|
||||
rp->part = ep;
|
||||
parts = evas_list_append(parts, rp);
|
||||
parts = eina_list_append(parts, rp);
|
||||
rp->param1.description = ep->default_desc;
|
||||
rp->chosen_description = rp->param1.description;
|
||||
if (!rp->param1.description)
|
||||
|
@ -377,13 +371,12 @@ _edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *g
|
|||
ed->table_parts_size = n;
|
||||
/* FIXME: check malloc return */
|
||||
n = 0;
|
||||
for (l = parts; l; l = l->next)
|
||||
EINA_LIST_FOREACH(parts, l, rp)
|
||||
{
|
||||
rp = l->data;
|
||||
ed->table_parts[n] = rp;
|
||||
n++;
|
||||
}
|
||||
evas_list_free(parts);
|
||||
eina_list_free(parts);
|
||||
for (i = 0; i < ed->table_parts_size; i++)
|
||||
{
|
||||
rp = ed->table_parts[i];
|
||||
|
@ -441,19 +434,17 @@ _edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *g
|
|||
|
||||
_edje_programs_patterns_init(ed);
|
||||
|
||||
n = evas_list_count(ed->collection->programs);
|
||||
n = eina_list_count(ed->collection->programs);
|
||||
if (n > 0)
|
||||
{
|
||||
Edje_Program *pr;
|
||||
/* FIXME: keeping a table AND a list is just bad - nuke list */
|
||||
ed->table_programs = malloc(sizeof(Edje_Program *) * n);
|
||||
ed->table_programs_size = n;
|
||||
/* FIXME: check malloc return */
|
||||
n = 0;
|
||||
for (l = ed->collection->programs; l; l = l->next)
|
||||
EINA_LIST_FOREACH(ed->collection->programs, l, pr)
|
||||
{
|
||||
Edje_Program *pr;
|
||||
|
||||
pr = l->data;
|
||||
ed->table_programs[n] = pr;
|
||||
n++;
|
||||
}
|
||||
|
@ -488,19 +479,21 @@ _edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *g
|
|||
if (rp->part->type != EDJE_PART_TYPE_GROUP) continue;
|
||||
if (rp->part->source)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Evas_Object *child_obj;
|
||||
Edje *child_ed;
|
||||
const char *group_path_entry = eina_stringshare_add(rp->part->source);
|
||||
const char *data;
|
||||
|
||||
if (!group_path)
|
||||
{
|
||||
group_path = evas_list_append(NULL, eina_stringshare_add(group));
|
||||
group_path = eina_list_append(NULL, eina_stringshare_add(group));
|
||||
group_path_started = 1;
|
||||
}
|
||||
/* make sure that this group isn't already in the tree of parents */
|
||||
for (l = group_path; l; l = l->next)
|
||||
EINA_LIST_FOREACH(group_path, l, data)
|
||||
{
|
||||
if (l->data == group_path_entry)
|
||||
if (data == group_path_entry)
|
||||
{
|
||||
_edje_thaw(ed);
|
||||
_edje_unblock(ed);
|
||||
|
@ -509,8 +502,8 @@ _edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *g
|
|||
eina_stringshare_del(group_path_entry);
|
||||
if (group_path_started)
|
||||
{
|
||||
eina_stringshare_del(group_path->data);
|
||||
evas_list_free(group_path);
|
||||
eina_stringshare_del(eina_list_data_get(group_path));
|
||||
eina_list_free(group_path);
|
||||
}
|
||||
ed->load_error = EDJE_LOAD_ERROR_RECURSIVE_REFERENCE;
|
||||
return 0;
|
||||
|
@ -518,7 +511,7 @@ _edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *g
|
|||
}
|
||||
|
||||
child_obj = edje_object_add(ed->evas);
|
||||
group_path = evas_list_append(group_path, group_path_entry);
|
||||
group_path = eina_list_append(group_path, group_path_entry);
|
||||
if (!_edje_object_file_set_internal(child_obj, file, rp->part->source, group_path))
|
||||
{
|
||||
_edje_thaw(ed);
|
||||
|
@ -530,8 +523,8 @@ _edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *g
|
|||
{
|
||||
while (group_path)
|
||||
{
|
||||
eina_stringshare_del(group_path->data);
|
||||
group_path = evas_list_remove_list(group_path, group_path);
|
||||
eina_stringshare_del(eina_list_data_get(group_path));
|
||||
group_path = eina_list_remove_list(group_path, group_path);
|
||||
}
|
||||
}
|
||||
ed->load_error = edje_object_load_error_get(child_obj);
|
||||
|
@ -540,7 +533,7 @@ _edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *g
|
|||
child_ed = _edje_fetch(child_obj);
|
||||
child_ed->parent = eina_stringshare_add(rp->part->name);
|
||||
|
||||
group_path = evas_list_remove(group_path, group_path_entry);
|
||||
group_path = eina_list_remove(group_path, group_path_entry);
|
||||
eina_stringshare_del(group_path_entry);
|
||||
|
||||
edje_object_signal_callback_add(child_obj, "*", "*", _cb_signal_repeat, obj);
|
||||
|
@ -552,8 +545,8 @@ _edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *g
|
|||
{
|
||||
while (group_path)
|
||||
{
|
||||
eina_stringshare_del(group_path->data);
|
||||
group_path = evas_list_remove_list(group_path, group_path);
|
||||
eina_stringshare_del(eina_list_data_get(group_path));
|
||||
group_path = eina_list_remove_list(group_path, group_path);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -565,11 +558,11 @@ _edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *g
|
|||
const char *name;
|
||||
Evas_Object *swallow;
|
||||
|
||||
name = old_swallows->data;
|
||||
old_swallows = evas_list_remove_list(old_swallows, old_swallows);
|
||||
name = eina_list_data_get(old_swallows);
|
||||
old_swallows = eina_list_remove_list(old_swallows, old_swallows);
|
||||
|
||||
swallow = old_swallows->data;
|
||||
old_swallows = evas_list_remove_list(old_swallows, old_swallows);
|
||||
swallow = eina_list_data_get(old_swallows);
|
||||
old_swallows = eina_list_remove_list(old_swallows, old_swallows);
|
||||
|
||||
edje_object_part_swallow(obj, name, swallow);
|
||||
eina_stringshare_del(name);
|
||||
|
@ -609,10 +602,10 @@ _edje_file_add(Edje *ed)
|
|||
}
|
||||
}
|
||||
|
||||
static Evas_List *
|
||||
static Eina_List *
|
||||
_edje_swallows_collect(Edje *ed)
|
||||
{
|
||||
Evas_List *swallows = NULL;
|
||||
Eina_List *swallows = NULL;
|
||||
int i;
|
||||
|
||||
if (!ed->file || !ed->table_parts) return NULL;
|
||||
|
@ -622,8 +615,8 @@ _edje_swallows_collect(Edje *ed)
|
|||
|
||||
rp = ed->table_parts[i];
|
||||
if (rp->part->type != EDJE_PART_TYPE_SWALLOW || !rp->swallowed_object) continue;
|
||||
swallows = evas_list_append(swallows, eina_stringshare_add(rp->part->name));
|
||||
swallows = evas_list_append(swallows, rp->swallowed_object);
|
||||
swallows = eina_list_append(swallows, eina_stringshare_add(rp->part->name));
|
||||
swallows = eina_list_append(swallows, rp->swallowed_object);
|
||||
}
|
||||
return swallows;
|
||||
}
|
||||
|
@ -639,14 +632,12 @@ _edje_file_del(Edje *ed)
|
|||
if (!((ed->file) && (ed->collection))) return;
|
||||
if ((ed->file) && (ed->collection))
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Part *ep;
|
||||
|
||||
_edje_textblock_styles_del(ed);
|
||||
for (l = ed->collection->parts; l; l = l->next)
|
||||
EINA_LIST_FOREACH(ed->collection->parts, l, ep)
|
||||
{
|
||||
Edje_Part *ep;
|
||||
|
||||
ep = l->data;
|
||||
_edje_text_part_on_del(ed, ep);
|
||||
_edje_color_class_on_del(ed, ep);
|
||||
}
|
||||
|
@ -711,20 +702,20 @@ _edje_file_del(Edje *ed)
|
|||
Edje_Running_Program *runp;
|
||||
|
||||
_edje_anim_count--;
|
||||
runp = ed->actions->data;
|
||||
ed->actions = evas_list_remove(ed->actions, runp);
|
||||
runp = eina_list_data_get(ed->actions);
|
||||
ed->actions = eina_list_remove(ed->actions, runp);
|
||||
free(runp);
|
||||
}
|
||||
}
|
||||
_edje_animators = evas_list_remove(_edje_animators, ed);
|
||||
_edje_animators = eina_list_remove(_edje_animators, ed);
|
||||
if (ed->pending_actions)
|
||||
{
|
||||
while (ed->pending_actions)
|
||||
{
|
||||
Edje_Pending_Program *pp;
|
||||
|
||||
pp = ed->pending_actions->data;
|
||||
ed->pending_actions = evas_list_remove(ed->pending_actions, pp);
|
||||
pp = eina_list_data_get(ed->pending_actions);
|
||||
ed->pending_actions = eina_list_remove(ed->pending_actions, pp);
|
||||
ecore_timer_del(pp->timer);
|
||||
free(pp);
|
||||
}
|
||||
|
@ -758,9 +749,9 @@ _edje_file_free(Edje_File *edf)
|
|||
{
|
||||
Edje_Font_Directory_Entry *fe;
|
||||
|
||||
fe = edf->font_dir->entries->data;
|
||||
fe = eina_list_data_get(edf->font_dir->entries);
|
||||
edf->font_dir->entries =
|
||||
evas_list_remove_list(edf->font_dir->entries, edf->font_dir->entries);
|
||||
eina_list_remove_list(edf->font_dir->entries, edf->font_dir->entries);
|
||||
edf->font_hash = evas_hash_del(edf->font_hash, fe->entry, edf);
|
||||
if (edf->free_strings && fe->path) eina_stringshare_del(fe->path);
|
||||
free(fe);
|
||||
|
@ -773,9 +764,9 @@ _edje_file_free(Edje_File *edf)
|
|||
{
|
||||
Edje_Image_Directory_Entry *ie;
|
||||
|
||||
ie = edf->image_dir->entries->data;
|
||||
ie = eina_list_data_get(edf->image_dir->entries);
|
||||
edf->image_dir->entries =
|
||||
evas_list_remove_list(edf->image_dir->entries, edf->image_dir->entries);
|
||||
eina_list_remove_list(edf->image_dir->entries, edf->image_dir->entries);
|
||||
if (edf->free_strings && ie->entry) eina_stringshare_del(ie->entry);
|
||||
free(ie);
|
||||
}
|
||||
|
@ -787,9 +778,9 @@ _edje_file_free(Edje_File *edf)
|
|||
{
|
||||
Edje_Part_Collection_Directory_Entry *ce;
|
||||
|
||||
ce = edf->collection_dir->entries->data;
|
||||
ce = eina_list_data_get(edf->collection_dir->entries);
|
||||
edf->collection_dir->entries =
|
||||
evas_list_remove_list(edf->collection_dir->entries, edf->collection_dir->entries);
|
||||
eina_list_remove_list(edf->collection_dir->entries, edf->collection_dir->entries);
|
||||
if (edf->free_strings && ce->entry) eina_stringshare_del(ce->entry);
|
||||
free(ce);
|
||||
}
|
||||
|
@ -801,14 +792,14 @@ _edje_file_free(Edje_File *edf)
|
|||
{
|
||||
Edje_Spectrum_Directory_Entry *se;
|
||||
|
||||
se = edf->spectrum_dir->entries->data;
|
||||
se = eina_list_data_get(edf->spectrum_dir->entries);
|
||||
edf->spectrum_dir->entries =
|
||||
evas_list_remove_list(edf->spectrum_dir->entries, edf->spectrum_dir->entries);
|
||||
eina_list_remove_list(edf->spectrum_dir->entries, edf->spectrum_dir->entries);
|
||||
while (se->color_list)
|
||||
{
|
||||
free(se->color_list->data);
|
||||
free(eina_list_data_get(se->color_list));
|
||||
se->color_list =
|
||||
evas_list_remove_list(se->color_list, se->color_list);
|
||||
eina_list_remove_list(se->color_list, se->color_list);
|
||||
}
|
||||
if (edf->free_strings)
|
||||
{
|
||||
|
@ -823,8 +814,8 @@ _edje_file_free(Edje_File *edf)
|
|||
{
|
||||
Edje_Data *edt;
|
||||
|
||||
edt = edf->data->data;
|
||||
edf->data = evas_list_remove(edf->data, edt);
|
||||
edt = eina_list_data_get(edf->data);
|
||||
edf->data = eina_list_remove(edf->data, edt);
|
||||
if (edf->free_strings)
|
||||
{
|
||||
if (edt->key) eina_stringshare_del(edt->key);
|
||||
|
@ -843,9 +834,9 @@ _edje_file_free(Edje_File *edf)
|
|||
{
|
||||
Edje_Color_Class *ecc;
|
||||
|
||||
ecc = edf->color_classes->data;
|
||||
ecc = eina_list_data_get(edf->color_classes);
|
||||
edf->color_classes =
|
||||
evas_list_remove_list(edf->color_classes, edf->color_classes);
|
||||
eina_list_remove_list(edf->color_classes, edf->color_classes);
|
||||
if (edf->free_strings && ecc->name) eina_stringshare_del(ecc->name);
|
||||
free(ecc);
|
||||
}
|
||||
|
@ -882,8 +873,8 @@ _edje_collection_free(Edje_File *edf, Edje_Part_Collection *ec)
|
|||
{
|
||||
Edje_Program *pr;
|
||||
|
||||
pr = ec->programs->data;
|
||||
ec->programs = evas_list_remove_list(ec->programs, ec->programs);
|
||||
pr = eina_list_data_get(ec->programs);
|
||||
ec->programs = eina_list_remove_list(ec->programs, ec->programs);
|
||||
if (edf->free_strings)
|
||||
{
|
||||
if (pr->name) eina_stringshare_del(pr->name);
|
||||
|
@ -896,16 +887,16 @@ _edje_collection_free(Edje_File *edf, Edje_Part_Collection *ec)
|
|||
{
|
||||
Edje_Program_Target *prt;
|
||||
|
||||
prt = pr->targets->data;
|
||||
pr->targets = evas_list_remove_list(pr->targets, pr->targets);
|
||||
prt = eina_list_data_get(pr->targets);
|
||||
pr->targets = eina_list_remove_list(pr->targets, pr->targets);
|
||||
free(prt);
|
||||
}
|
||||
while (pr->after)
|
||||
{
|
||||
Edje_Program_After *pa;
|
||||
|
||||
pa = pr->after->data;
|
||||
pr->after = evas_list_remove_list(pr->after, pr->after);
|
||||
pa = eina_list_data_get(pr->after);
|
||||
pr->after = eina_list_remove_list(pr->after, pr->after);
|
||||
free(pa);
|
||||
}
|
||||
free(pr);
|
||||
|
@ -914,8 +905,8 @@ _edje_collection_free(Edje_File *edf, Edje_Part_Collection *ec)
|
|||
{
|
||||
Edje_Part *ep;
|
||||
|
||||
ep = ec->parts->data;
|
||||
ec->parts = evas_list_remove(ec->parts, ep);
|
||||
ep = eina_list_data_get(ec->parts);
|
||||
ec->parts = eina_list_remove(ec->parts, ep);
|
||||
if (edf->free_strings && ep->name) eina_stringshare_del(ep->name);
|
||||
if (ep->default_desc)
|
||||
{
|
||||
|
@ -926,8 +917,8 @@ _edje_collection_free(Edje_File *edf, Edje_Part_Collection *ec)
|
|||
{
|
||||
Edje_Part_Description *desc;
|
||||
|
||||
desc = ep->other_desc->data;
|
||||
ep->other_desc = evas_list_remove(ep->other_desc, desc);
|
||||
desc = eina_list_data_get(ep->other_desc);
|
||||
ep->other_desc = eina_list_remove(ep->other_desc, desc);
|
||||
_edje_collection_free_part_description_free(desc, edf->free_strings);
|
||||
}
|
||||
free(ep);
|
||||
|
@ -938,8 +929,8 @@ _edje_collection_free(Edje_File *edf, Edje_Part_Collection *ec)
|
|||
{
|
||||
Edje_Data *edt;
|
||||
|
||||
edt = ec->data->data;
|
||||
ec->data = evas_list_remove(ec->data, edt);
|
||||
edt = eina_list_data_get(ec->data);
|
||||
ec->data = eina_list_remove(ec->data, edt);
|
||||
if (edf->free_strings)
|
||||
{
|
||||
if (edt->key) eina_stringshare_del(edt->key);
|
||||
|
@ -970,8 +961,8 @@ _edje_collection_free_part_description_free(Edje_Part_Description *desc, unsigne
|
|||
{
|
||||
Edje_Part_Image_Id *pi;
|
||||
|
||||
pi = desc->image.tween_list->data;
|
||||
desc->image.tween_list = evas_list_remove(desc->image.tween_list, pi);
|
||||
pi = eina_list_data_get(desc->image.tween_list);
|
||||
desc->image.tween_list = eina_list_remove(desc->image.tween_list, pi);
|
||||
free(pi);
|
||||
}
|
||||
if (free_strings)
|
||||
|
@ -1007,7 +998,7 @@ _edje_file_collection_hash_foreach(const Evas_Hash *hash, const char *key, void
|
|||
static Evas_Bool
|
||||
_edje_collection_free_prog_cache_matches_free_cb(const Evas_Hash *hash, const char *key, void *data, void *fdata)
|
||||
{
|
||||
evas_list_free((Evas_List *)data);
|
||||
eina_list_free((Eina_List *)data);
|
||||
return 1;
|
||||
hash = NULL;
|
||||
fdata = NULL;
|
||||
|
|
|
@ -98,30 +98,30 @@ _edje_del(Edje *ed)
|
|||
ed->group = NULL;
|
||||
if ((ed->actions) || (ed->pending_actions))
|
||||
{
|
||||
_edje_animators = evas_list_remove(_edje_animators, ed);
|
||||
_edje_animators = eina_list_remove(_edje_animators, ed);
|
||||
}
|
||||
while (ed->actions)
|
||||
{
|
||||
Edje_Running_Program *runp;
|
||||
|
||||
runp = ed->actions->data;
|
||||
ed->actions = evas_list_remove(ed->actions, runp);
|
||||
runp = eina_list_data_get(ed->actions);
|
||||
ed->actions = eina_list_remove(ed->actions, runp);
|
||||
free(runp);
|
||||
}
|
||||
while (ed->pending_actions)
|
||||
{
|
||||
Edje_Pending_Program *pp;
|
||||
|
||||
pp = ed->pending_actions->data;
|
||||
ed->pending_actions = evas_list_remove(ed->pending_actions, pp);
|
||||
pp = eina_list_data_get(ed->pending_actions);
|
||||
ed->pending_actions = eina_list_remove(ed->pending_actions, pp);
|
||||
free(pp);
|
||||
}
|
||||
while (ed->callbacks)
|
||||
{
|
||||
Edje_Signal_Callback *escb;
|
||||
|
||||
escb = ed->callbacks->data;
|
||||
ed->callbacks = evas_list_remove(ed->callbacks, escb);
|
||||
escb = eina_list_data_get(ed->callbacks);
|
||||
ed->callbacks = eina_list_remove(ed->callbacks, escb);
|
||||
if (escb->signal) eina_stringshare_del(escb->signal);
|
||||
if (escb->source) eina_stringshare_del(escb->source);
|
||||
free(escb);
|
||||
|
@ -130,8 +130,8 @@ _edje_del(Edje *ed)
|
|||
{
|
||||
Edje_Color_Class *cc;
|
||||
|
||||
cc = ed->color_classes->data;
|
||||
ed->color_classes = evas_list_remove(ed->color_classes, cc);
|
||||
cc = eina_list_data_get(ed->color_classes);
|
||||
ed->color_classes = eina_list_remove(ed->color_classes, cc);
|
||||
if (cc->name) eina_stringshare_del(cc->name);
|
||||
free(cc);
|
||||
}
|
||||
|
@ -139,8 +139,8 @@ _edje_del(Edje *ed)
|
|||
{
|
||||
Edje_Text_Class *tc;
|
||||
|
||||
tc = ed->text_classes->data;
|
||||
ed->text_classes = evas_list_remove(ed->text_classes, tc);
|
||||
tc = eina_list_data_get(ed->text_classes);
|
||||
ed->text_classes = eina_list_remove(ed->text_classes, tc);
|
||||
if (tc->name) eina_stringshare_del(tc->name);
|
||||
if (tc->font) eina_stringshare_del(tc->font);
|
||||
free(tc);
|
||||
|
|
|
@ -250,21 +250,21 @@ _edje_match_patterns_exec_init_states(Edje_States *states,
|
|||
|
||||
#define EDJE_MATCH_INIT(Func, Type, Source, Show) \
|
||||
Edje_Patterns* \
|
||||
Func(Evas_List *lst) \
|
||||
Func(Eina_List *lst) \
|
||||
{ \
|
||||
Edje_Patterns *r; \
|
||||
size_t i; \
|
||||
\
|
||||
if (!lst || evas_list_count(lst) <= 0) \
|
||||
if (!lst || eina_list_count(lst) <= 0) \
|
||||
return NULL; \
|
||||
\
|
||||
r = malloc(sizeof (Edje_Patterns) + \
|
||||
evas_list_count(lst) \
|
||||
eina_list_count(lst) \
|
||||
* sizeof (*r->finals) \
|
||||
* sizeof(*r->patterns)); \
|
||||
if (!r) return NULL; \
|
||||
\
|
||||
r->patterns_size = evas_list_count(lst); \
|
||||
r->patterns_size = eina_list_count(lst); \
|
||||
r->max_length = 0; \
|
||||
r->patterns = (const char **) r->finals + r->patterns_size + 1; \
|
||||
\
|
||||
|
@ -274,7 +274,7 @@ _edje_match_patterns_exec_init_states(Edje_States *states,
|
|||
Type *data; \
|
||||
size_t j; \
|
||||
\
|
||||
data = evas_list_data(lst); \
|
||||
data = eina_list_data_get(lst); \
|
||||
if (!data) \
|
||||
{ \
|
||||
free(r); \
|
||||
|
@ -296,7 +296,7 @@ _edje_match_patterns_exec_init_states(Edje_States *states,
|
|||
if (j > r->max_length) \
|
||||
r->max_length = j; \
|
||||
\
|
||||
lst = evas_list_next(lst); \
|
||||
lst = eina_list_next(lst); \
|
||||
} \
|
||||
\
|
||||
if (!_edje_match_states_alloc(r, 2)) \
|
||||
|
@ -341,7 +341,7 @@ edje_match_programs_exec_check_finals(const size_t *signal_finals,
|
|||
const size_t *source_finals,
|
||||
const Edje_States *signal_states,
|
||||
const Edje_States *source_states,
|
||||
Evas_List *programs,
|
||||
Eina_List *programs,
|
||||
int (*func)(Edje_Program *pr, void *data),
|
||||
void *data)
|
||||
{
|
||||
|
@ -356,7 +356,7 @@ edje_match_programs_exec_check_finals(const size_t *signal_finals,
|
|||
{
|
||||
Edje_Program *pr;
|
||||
|
||||
pr = evas_list_nth(programs, signal_states->states[i].idx);
|
||||
pr = eina_list_nth(programs, signal_states->states[i].idx);
|
||||
if (pr)
|
||||
{
|
||||
if (func(pr, data))
|
||||
|
@ -374,7 +374,7 @@ edje_match_callback_exec_check_finals(const size_t *signal_finals,
|
|||
const Edje_States *source_states,
|
||||
const char *signal,
|
||||
const char *source,
|
||||
Evas_List *callbacks,
|
||||
Eina_List *callbacks,
|
||||
Edje *ed)
|
||||
{
|
||||
size_t i;
|
||||
|
@ -389,7 +389,7 @@ edje_match_callback_exec_check_finals(const size_t *signal_finals,
|
|||
{
|
||||
Edje_Signal_Callback *escb;
|
||||
|
||||
escb = evas_list_nth(callbacks, signal_states->states[i].idx);
|
||||
escb = eina_list_nth(callbacks, signal_states->states[i].idx);
|
||||
if (escb)
|
||||
{
|
||||
if ((!escb->just_added)
|
||||
|
@ -479,7 +479,7 @@ edje_match_programs_exec(const Edje_Patterns *ppat_signal,
|
|||
const Edje_Patterns *ppat_source,
|
||||
const char *signal,
|
||||
const char *source,
|
||||
Evas_List *programs,
|
||||
Eina_List *programs,
|
||||
int (*func)(Edje_Program *pr, void *data),
|
||||
void *data)
|
||||
{
|
||||
|
@ -513,7 +513,7 @@ edje_match_callback_exec(const Edje_Patterns *ppat_signal,
|
|||
const Edje_Patterns *ppat_source,
|
||||
const char *signal,
|
||||
const char *source,
|
||||
Evas_List *callbacks,
|
||||
Eina_List *callbacks,
|
||||
Edje *ed)
|
||||
{
|
||||
Edje_States *signal_result;
|
||||
|
|
|
@ -7,8 +7,8 @@
|
|||
static Ecore_Job *job = NULL;
|
||||
static Ecore_Timer *job_loss_timer = NULL;
|
||||
|
||||
static Evas_List *msgq = NULL;
|
||||
static Evas_List *tmp_msgq = NULL;
|
||||
static Eina_List *msgq = NULL;
|
||||
static Eina_List *tmp_msgq = NULL;
|
||||
|
||||
EAPI void
|
||||
edje_object_message_send(Evas_Object *obj, Edje_Message_Type type, int id, void *msg)
|
||||
|
@ -41,30 +41,27 @@ edje_object_message_handler_set(Evas_Object *obj, void (*func) (void *data, Evas
|
|||
EAPI void
|
||||
edje_object_message_signal_process(Evas_Object *obj)
|
||||
{
|
||||
Evas_List *l, *tmpq = NULL;
|
||||
Eina_List *l, *tmpq = NULL;
|
||||
Edje *ed;
|
||||
Edje_Message *em;
|
||||
const void *data;
|
||||
|
||||
ed = _edje_fetch(obj);
|
||||
if (!ed) return;
|
||||
|
||||
for (l = msgq; l; l = l->next)
|
||||
{
|
||||
Edje_Message *em;
|
||||
|
||||
em = l->data;
|
||||
if (em->edje == ed)
|
||||
tmpq = evas_list_append(tmpq, em);
|
||||
}
|
||||
EINA_LIST_FOREACH(msgq, l, em)
|
||||
if (em->edje == ed)
|
||||
tmpq = eina_list_append(tmpq, em);
|
||||
/* now remove them from the old queue */
|
||||
for (l = tmpq; l; l = l->next)
|
||||
msgq = evas_list_remove(msgq, l->data);
|
||||
EINA_LIST_FOREACH(tmpq, l, data)
|
||||
msgq = eina_list_remove(msgq, data);
|
||||
/* a temporary message queue */
|
||||
if (tmp_msgq)
|
||||
{
|
||||
while (tmpq)
|
||||
{
|
||||
tmp_msgq = evas_list_append(tmp_msgq, tmpq->data);
|
||||
tmpq = evas_list_remove_list(tmpq, tmpq);
|
||||
tmp_msgq = eina_list_append(tmp_msgq, tmpq->data);
|
||||
tmpq = eina_list_remove_list(tmpq, tmpq);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -78,7 +75,7 @@ edje_object_message_signal_process(Evas_Object *obj)
|
|||
Edje_Message *em;
|
||||
|
||||
em = tmp_msgq->data;
|
||||
tmp_msgq = evas_list_remove_list(tmp_msgq, tmp_msgq);
|
||||
tmp_msgq = eina_list_remove_list(tmp_msgq, tmp_msgq);
|
||||
em->edje->message.num--;
|
||||
_edje_message_process(em);
|
||||
_edje_message_free(em);
|
||||
|
@ -418,7 +415,7 @@ _edje_message_send(Edje *ed, Edje_Queue queue, Edje_Message_Type type, int id, v
|
|||
}
|
||||
|
||||
em->msg = msg;
|
||||
msgq = evas_list_append(msgq, em);
|
||||
msgq = eina_list_append(msgq, em);
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -598,8 +595,8 @@ _edje_message_queue_process(void)
|
|||
{
|
||||
while (msgq)
|
||||
{
|
||||
tmp_msgq = evas_list_append(tmp_msgq, msgq->data);
|
||||
msgq = evas_list_remove_list(msgq, msgq);
|
||||
tmp_msgq = eina_list_append(tmp_msgq, msgq->data);
|
||||
msgq = eina_list_remove_list(msgq, msgq);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -615,7 +612,7 @@ _edje_message_queue_process(void)
|
|||
|
||||
em = tmp_msgq->data;
|
||||
ed = em->edje;
|
||||
tmp_msgq = evas_list_remove_list(tmp_msgq, tmp_msgq);
|
||||
tmp_msgq = eina_list_remove_list(tmp_msgq, tmp_msgq);
|
||||
em->edje->message.num--;
|
||||
if (!ed->delete_me)
|
||||
{
|
||||
|
@ -649,7 +646,7 @@ _edje_message_queue_clear(void)
|
|||
Edje_Message *em;
|
||||
|
||||
em = msgq->data;
|
||||
msgq = evas_list_remove_list(msgq, msgq);
|
||||
msgq = eina_list_remove_list(msgq, msgq);
|
||||
em->edje->message.num--;
|
||||
_edje_message_free(em);
|
||||
}
|
||||
|
@ -658,7 +655,7 @@ _edje_message_queue_clear(void)
|
|||
Edje_Message *em;
|
||||
|
||||
em = tmp_msgq->data;
|
||||
tmp_msgq = evas_list_remove_list(tmp_msgq, tmp_msgq);
|
||||
tmp_msgq = eina_list_remove_list(tmp_msgq, tmp_msgq);
|
||||
em->edje->message.num--;
|
||||
_edje_message_free(em);
|
||||
}
|
||||
|
@ -667,21 +664,21 @@ _edje_message_queue_clear(void)
|
|||
void
|
||||
_edje_message_del(Edje *ed)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
|
||||
if (ed->message.num <= 0) return;
|
||||
/* delete any messages on the main queue for this edje object */
|
||||
for (l = msgq; l; )
|
||||
{
|
||||
Edje_Message *em;
|
||||
Evas_List *lp;
|
||||
Eina_List *lp;
|
||||
|
||||
em = l->data;
|
||||
em = eina_list_data_get(l);
|
||||
lp = l;
|
||||
l = l->next;
|
||||
l = eina_list_next(l);
|
||||
if (em->edje == ed)
|
||||
{
|
||||
msgq = evas_list_remove_list(msgq, lp);
|
||||
msgq = eina_list_remove_list(msgq, lp);
|
||||
em->edje->message.num--;
|
||||
_edje_message_free(em);
|
||||
}
|
||||
|
@ -691,14 +688,14 @@ _edje_message_del(Edje *ed)
|
|||
for (l = tmp_msgq; l; )
|
||||
{
|
||||
Edje_Message *em;
|
||||
Evas_List *lp;
|
||||
Eina_List *lp;
|
||||
|
||||
em = l->data;
|
||||
em = eina_list_data_get(l);
|
||||
lp = l;
|
||||
l = l->next;
|
||||
l = eina_list_next(l);
|
||||
if (em->edje == ed)
|
||||
{
|
||||
tmp_msgq = evas_list_remove_list(tmp_msgq, lp);
|
||||
tmp_msgq = eina_list_remove_list(tmp_msgq, lp);
|
||||
em->edje->message.num--;
|
||||
_edje_message_free(em);
|
||||
}
|
||||
|
|
|
@ -279,9 +279,9 @@ struct _Edje_File
|
|||
Edje_Image_Directory *image_dir;
|
||||
Edje_Spectrum_Directory *spectrum_dir;
|
||||
Edje_Part_Collection_Directory *collection_dir;
|
||||
Evas_List *data;
|
||||
Evas_List *styles;
|
||||
Evas_List *color_classes;
|
||||
Eina_List *data;
|
||||
Eina_List *styles;
|
||||
Eina_List *color_classes;
|
||||
|
||||
int references;
|
||||
char *compiler;
|
||||
|
@ -290,7 +290,7 @@ struct _Edje_File
|
|||
|
||||
Evas_Hash *collection_hash;
|
||||
Evas_Hash *font_hash;
|
||||
Evas_List *collection_cache;
|
||||
Eina_List *collection_cache;
|
||||
Evas_Hash *data_cache;
|
||||
|
||||
Eet_File *ef;
|
||||
|
@ -301,7 +301,7 @@ struct _Edje_File
|
|||
struct _Edje_Style
|
||||
{
|
||||
char *name;
|
||||
Evas_List *tags;
|
||||
Eina_List *tags;
|
||||
Evas_Textblock_Style *style;
|
||||
};
|
||||
|
||||
|
@ -326,7 +326,7 @@ struct _Edje_Data
|
|||
|
||||
struct _Edje_Font_Directory
|
||||
{
|
||||
Evas_List *entries; /* a list of Edje_Font_Directory_Entry */
|
||||
Eina_List *entries; /* a list of Edje_Font_Directory_Entry */
|
||||
};
|
||||
|
||||
struct _Edje_Font_Directory_Entry
|
||||
|
@ -340,7 +340,7 @@ struct _Edje_Font_Directory_Entry
|
|||
|
||||
struct _Edje_Image_Directory
|
||||
{
|
||||
Evas_List *entries; /* a list of Edje_Image_Directory_Entry */
|
||||
Eina_List *entries; /* a list of Edje_Image_Directory_Entry */
|
||||
};
|
||||
|
||||
struct _Edje_Image_Directory_Entry
|
||||
|
@ -355,7 +355,7 @@ struct _Edje_Image_Directory_Entry
|
|||
|
||||
struct _Edje_Spectrum_Directory
|
||||
{
|
||||
Evas_List *entries; /* a list of Edje_Spectrum_Directory_Entry */
|
||||
Eina_List *entries; /* a list of Edje_Spectrum_Directory_Entry */
|
||||
};
|
||||
|
||||
struct _Edje_Spectrum_Directory_Entry
|
||||
|
@ -363,7 +363,7 @@ struct _Edje_Spectrum_Directory_Entry
|
|||
char *entry;
|
||||
/* only one of the following two should be included. filename takes precedence */
|
||||
char *filename; /* filename of external spectrum. */
|
||||
Evas_List *color_list; /* list of Edje_Spectrum_Color */
|
||||
Eina_List *color_list; /* list of Edje_Spectrum_Color */
|
||||
int id;
|
||||
};
|
||||
|
||||
|
@ -400,9 +400,9 @@ struct _Edje_Program /* a conditional program to be run */
|
|||
double time; /* time to graduate between current and new state */
|
||||
} tween;
|
||||
|
||||
Evas_List *targets; /* list of target parts to apply the state to */
|
||||
Eina_List *targets; /* list of target parts to apply the state to */
|
||||
|
||||
Evas_List *after; /* list of actions to run at the end of this, for looping */
|
||||
Eina_List *after; /* list of actions to run at the end of this, for looping */
|
||||
};
|
||||
|
||||
struct _Edje_Program_Target /* the target of an action */
|
||||
|
@ -419,7 +419,7 @@ struct _Edje_Program_After /* the action to run after another action */
|
|||
|
||||
struct _Edje_Part_Collection_Directory
|
||||
{
|
||||
Evas_List *entries; /* a list of Edje_Part_Collection_Directory_Entry */
|
||||
Eina_List *entries; /* a list of Edje_Part_Collection_Directory_Entry */
|
||||
|
||||
int references;
|
||||
};
|
||||
|
@ -434,9 +434,9 @@ struct _Edje_Part_Collection_Directory_Entry
|
|||
|
||||
struct _Edje_Part_Collection
|
||||
{
|
||||
Evas_List *programs; /* a list of Edje_Program */
|
||||
Evas_List *parts; /* a list of Edje_Part */
|
||||
Evas_List *data;
|
||||
Eina_List *programs; /* a list of Edje_Program */
|
||||
Eina_List *parts; /* a list of Edje_Part */
|
||||
Eina_List *data;
|
||||
|
||||
int id; /* the collection id */
|
||||
|
||||
|
@ -463,7 +463,7 @@ struct _Edje_Part
|
|||
{
|
||||
const char *name; /* the name if any of the part */
|
||||
Edje_Part_Description *default_desc; /* the part descriptor for default */
|
||||
Evas_List *other_desc; /* other possible descriptors */
|
||||
Eina_List *other_desc; /* other possible descriptors */
|
||||
const char *source, *source2, *source3, *source4, *source5, *source6;
|
||||
int id; /* its id number */
|
||||
int clip_to_id; /* the part id to clip this one to */
|
||||
|
@ -527,7 +527,7 @@ struct _Edje_Part_Description
|
|||
} rel1, rel2;
|
||||
|
||||
struct {
|
||||
Evas_List *tween_list; /* list of Edje_Part_Image_Id */
|
||||
Eina_List *tween_list; /* list of Edje_Part_Image_Id */
|
||||
int id; /* the image id to use */
|
||||
} image;
|
||||
|
||||
|
@ -638,11 +638,11 @@ struct _Edje
|
|||
Evas_Object *clipper; /* a big rect to clip this Edje to */
|
||||
Edje_File *file; /* the file the data comes form */
|
||||
Edje_Part_Collection *collection; /* the description being used */
|
||||
Evas_List *actions; /* currently running actions */
|
||||
Evas_List *callbacks;
|
||||
Evas_List *pending_actions;
|
||||
Evas_List *color_classes;
|
||||
Evas_List *text_classes;
|
||||
Eina_List *actions; /* currently running actions */
|
||||
Eina_List *callbacks;
|
||||
Eina_List *pending_actions;
|
||||
Eina_List *color_classes;
|
||||
Eina_List *text_classes;
|
||||
/* variable pool for Edje Embryo scripts */
|
||||
Edje_Var_Pool *var_pool;
|
||||
/* for faster lookups to avoid nth list walks */
|
||||
|
@ -693,7 +693,7 @@ struct _Edje_Real_Part
|
|||
{
|
||||
Edje *edje;
|
||||
Evas_Object *object;
|
||||
Evas_List *extra_objects;
|
||||
Eina_List *extra_objects;
|
||||
Evas_Object *swallowed_object;
|
||||
void *entry_data;
|
||||
Evas_Object *cursorbg_object;
|
||||
|
@ -862,7 +862,7 @@ struct _Edje_Var_String
|
|||
|
||||
struct _Edje_Var_List
|
||||
{
|
||||
Evas_List *v;
|
||||
Eina_List *v;
|
||||
};
|
||||
|
||||
struct _Edje_Var_Hash
|
||||
|
@ -892,8 +892,8 @@ struct _Edje_Var_Animator
|
|||
struct _Edje_Var_Pool
|
||||
{
|
||||
int id_count;
|
||||
Evas_List *timers;
|
||||
Evas_List *animators;
|
||||
Eina_List *timers;
|
||||
Eina_List *animators;
|
||||
int size;
|
||||
Edje_Var *vars;
|
||||
int walking_list;
|
||||
|
@ -962,11 +962,11 @@ struct _Edje_Patterns
|
|||
size_t finals[];
|
||||
};
|
||||
|
||||
Edje_Patterns *edje_match_collection_dir_init(Evas_List *lst);
|
||||
Edje_Patterns *edje_match_programs_signal_init(Evas_List *lst);
|
||||
Edje_Patterns *edje_match_programs_source_init(Evas_List *lst);
|
||||
Edje_Patterns *edje_match_callback_signal_init(Evas_List *lst);
|
||||
Edje_Patterns *edje_match_callback_source_init(Evas_List *lst);
|
||||
Edje_Patterns *edje_match_collection_dir_init(Eina_List *lst);
|
||||
Edje_Patterns *edje_match_programs_signal_init(Eina_List *lst);
|
||||
Edje_Patterns *edje_match_programs_source_init(Eina_List *lst);
|
||||
Edje_Patterns *edje_match_callback_signal_init(Eina_List *lst);
|
||||
Edje_Patterns *edje_match_callback_source_init(Eina_List *lst);
|
||||
|
||||
int edje_match_collection_dir_exec(const Edje_Patterns *ppat,
|
||||
const char *string);
|
||||
|
@ -974,14 +974,14 @@ int edje_match_programs_exec(const Edje_Patterns *ppat_signal,
|
|||
const Edje_Patterns *ppat_source,
|
||||
const char *signal,
|
||||
const char *source,
|
||||
Evas_List *programs,
|
||||
Eina_List *programs,
|
||||
int (*func)(Edje_Program *pr, void *data),
|
||||
void *data);
|
||||
int edje_match_callback_exec(const Edje_Patterns *ppat_signal,
|
||||
const Edje_Patterns *ppat_source,
|
||||
const char *signal,
|
||||
const char *source,
|
||||
Evas_List *callbacks,
|
||||
Eina_List *callbacks,
|
||||
Edje *ed);
|
||||
|
||||
void edje_match_patterns_free(Edje_Patterns *ppat);
|
||||
|
@ -1008,8 +1008,8 @@ EAPI extern Eet_Data_Descriptor *_edje_edd_edje_spectrum_color;
|
|||
|
||||
extern int _edje_anim_count;
|
||||
extern Ecore_Animator *_edje_timer;
|
||||
extern Evas_List *_edje_animators;
|
||||
extern Evas_List *_edje_edjes;
|
||||
extern Eina_List *_edje_animators;
|
||||
extern Eina_List *_edje_edjes;
|
||||
|
||||
extern char *_edje_fontset_append;
|
||||
extern double _edje_scale;
|
||||
|
@ -1244,7 +1244,7 @@ void _edje_entry_text_markup_set(Edje_Real_Part *rp, const char *text);
|
|||
void _edje_entry_text_markup_insert(Edje_Real_Part *rp, const char *text);
|
||||
void _edje_entry_set_cursor_start(Edje_Real_Part *rp);
|
||||
void _edje_entry_set_cursor_end(Edje_Real_Part *rp);
|
||||
const Evas_List *_edje_entry_anchors_list(Edje_Real_Part *rp);
|
||||
const Eina_List *_edje_entry_anchors_list(Edje_Real_Part *rp);
|
||||
void _edje_entry_cursor_geometry_get(Edje_Real_Part *rp, Evas_Coord *cx, Evas_Coord *cy, Evas_Coord *cw, Evas_Coord *ch);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -8,7 +8,7 @@ static void _edje_emit_cb(Edje *ed, const char *sig, const char *src);
|
|||
|
||||
int _edje_anim_count = 0;
|
||||
Ecore_Animator *_edje_timer = NULL;
|
||||
Evas_List *_edje_animators = NULL;
|
||||
Eina_List *_edje_animators = NULL;
|
||||
|
||||
/************************** API Routines **************************/
|
||||
|
||||
|
@ -99,7 +99,7 @@ edje_object_signal_callback_add(Evas_Object *obj, const char *emission, const ch
|
|||
escb->source = eina_stringshare_add(source);
|
||||
escb->func = func;
|
||||
escb->data = data;
|
||||
ed->callbacks = evas_list_append(ed->callbacks, escb);
|
||||
ed->callbacks = eina_list_append(ed->callbacks, escb);
|
||||
if (ed->walking_callbacks)
|
||||
{
|
||||
escb->just_added = 1;
|
||||
|
@ -125,17 +125,15 @@ EAPI void *
|
|||
edje_object_signal_callback_del(Evas_Object *obj, const char *emission, const char *source, void (*func) (void *data, Evas_Object *o, const char *emission, const char *source))
|
||||
{
|
||||
Edje *ed;
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Signal_Callback *escb;
|
||||
|
||||
if ((!emission) || (!source) || (!func)) return NULL;
|
||||
ed = _edje_fetch(obj);
|
||||
if (!ed) return NULL;
|
||||
if (ed->delete_me) return NULL;
|
||||
for (l = ed->callbacks; l; l = l->next)
|
||||
EINA_LIST_FOREACH(ed->callbacks, l, escb)
|
||||
{
|
||||
Edje_Signal_Callback *escb;
|
||||
|
||||
escb = l->data;
|
||||
if ((escb->func == func) &&
|
||||
((!escb->signal && !emission[0]) ||
|
||||
(escb->signal && !strcmp(escb->signal, emission))) &&
|
||||
|
@ -154,7 +152,7 @@ edje_object_signal_callback_del(Evas_Object *obj, const char *emission, const ch
|
|||
{
|
||||
_edje_callbacks_patterns_clean(ed);
|
||||
|
||||
ed->callbacks = evas_list_remove_list(ed->callbacks, l);
|
||||
ed->callbacks = eina_list_remove_list(ed->callbacks, l);
|
||||
if (escb->signal) eina_stringshare_del(escb->signal);
|
||||
if (escb->source) eina_stringshare_del(escb->source);
|
||||
free(escb);
|
||||
|
@ -220,7 +218,8 @@ edje_object_play_set(Evas_Object *obj, int play)
|
|||
{
|
||||
Edje *ed;
|
||||
double t;
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Running_Program *runp;
|
||||
int i;
|
||||
|
||||
ed = _edje_fetch(obj);
|
||||
|
@ -231,13 +230,8 @@ edje_object_play_set(Evas_Object *obj, int play)
|
|||
if (!ed->paused) return;
|
||||
ed->paused = 0;
|
||||
t = ecore_time_get() - ed->paused_at;
|
||||
for (l = ed->actions; l; l = l->next)
|
||||
{
|
||||
Edje_Running_Program *runp;
|
||||
|
||||
runp = l->data;
|
||||
runp->start_time += t;
|
||||
}
|
||||
EINA_LIST_FOREACH(ed->actions, l, runp)
|
||||
runp->start_time += t;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -284,7 +278,7 @@ EAPI void
|
|||
edje_object_animation_set(Evas_Object *obj, int on)
|
||||
{
|
||||
Edje *ed;
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
int i;
|
||||
|
||||
ed = _edje_fetch(obj);
|
||||
|
@ -295,20 +289,21 @@ edje_object_animation_set(Evas_Object *obj, int on)
|
|||
_edje_freeze(ed);
|
||||
if (!on)
|
||||
{
|
||||
Evas_List *newl = NULL;
|
||||
Eina_List *newl = NULL;
|
||||
const void *data;
|
||||
|
||||
for (l = ed->actions; l; l = l->next)
|
||||
newl = evas_list_append(newl, l->data);
|
||||
EINA_LIST_FOREACH(ed->actions, l, data)
|
||||
newl = eina_list_append(newl, data);
|
||||
while (newl)
|
||||
{
|
||||
Edje_Running_Program *runp;
|
||||
|
||||
runp = newl->data;
|
||||
newl = evas_list_remove(newl, newl->data);
|
||||
runp = eina_list_data_get(newl);
|
||||
newl = eina_list_remove(newl, eina_list_data_get(newl));
|
||||
_edje_program_run_iterate(runp, runp->start_time + runp->program->tween.time);
|
||||
if (_edje_block_break(ed))
|
||||
{
|
||||
evas_list_free(newl);
|
||||
eina_list_free(newl);
|
||||
goto break_prog;
|
||||
}
|
||||
}
|
||||
|
@ -360,8 +355,10 @@ int
|
|||
_edje_program_run_iterate(Edje_Running_Program *runp, double tim)
|
||||
{
|
||||
double t, total;
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje *ed;
|
||||
Edje_Program_Target *pt;
|
||||
Edje_Real_Part *rp;
|
||||
|
||||
ed = runp->edje;
|
||||
if (ed->delete_me) return 0;
|
||||
|
@ -372,12 +369,8 @@ _edje_program_run_iterate(Edje_Running_Program *runp, double tim)
|
|||
total = runp->program->tween.time;
|
||||
t /= total;
|
||||
if (t > 1.0) t = 1.0;
|
||||
for (l = runp->program->targets; l; l = l->next)
|
||||
EINA_LIST_FOREACH(runp->program->targets, l, pt)
|
||||
{
|
||||
Edje_Real_Part *rp;
|
||||
Edje_Program_Target *pt;
|
||||
|
||||
pt = l->data;
|
||||
if (pt->id >= 0)
|
||||
{
|
||||
rp = ed->table_parts[pt->id % ed->table_parts_size];
|
||||
|
@ -387,12 +380,10 @@ _edje_program_run_iterate(Edje_Running_Program *runp, double tim)
|
|||
}
|
||||
if (t >= 1.0)
|
||||
{
|
||||
for (l = runp->program->targets; l; l = l->next)
|
||||
{
|
||||
Edje_Real_Part *rp;
|
||||
Edje_Program_Target *pt;
|
||||
Edje_Program_After *pa;
|
||||
|
||||
pt = l->data;
|
||||
EINA_LIST_FOREACH(runp->program->targets, l, pt)
|
||||
{
|
||||
if (pt->id >= 0)
|
||||
{
|
||||
rp = ed->table_parts[pt->id % ed->table_parts_size];
|
||||
|
@ -414,9 +405,9 @@ _edje_program_run_iterate(Edje_Running_Program *runp, double tim)
|
|||
if (!ed->walking_actions)
|
||||
{
|
||||
_edje_anim_count--;
|
||||
ed->actions = evas_list_remove(ed->actions, runp);
|
||||
ed->actions = eina_list_remove(ed->actions, runp);
|
||||
if (!ed->actions)
|
||||
_edje_animators = evas_list_remove(_edje_animators, ed);
|
||||
_edje_animators = eina_list_remove(_edje_animators, ed);
|
||||
}
|
||||
// _edje_emit(ed, "program,stop", runp->program->name);
|
||||
if (_edje_block_break(ed))
|
||||
|
@ -424,10 +415,9 @@ _edje_program_run_iterate(Edje_Running_Program *runp, double tim)
|
|||
if (!ed->walking_actions) free(runp);
|
||||
goto break_prog;
|
||||
}
|
||||
for (l = runp->program->after; l; l = l->next)
|
||||
EINA_LIST_FOREACH(runp->program->after, l, pa)
|
||||
{
|
||||
Edje_Program *pr;
|
||||
Edje_Program_After *pa = l->data;
|
||||
|
||||
if (pa->id >= 0)
|
||||
{
|
||||
|
@ -457,19 +447,18 @@ _edje_program_run_iterate(Edje_Running_Program *runp, double tim)
|
|||
void
|
||||
_edje_program_end(Edje *ed, Edje_Running_Program *runp)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Program_Target *pt;
|
||||
const char *pname = NULL;
|
||||
int free_runp = 0;
|
||||
|
||||
if (ed->delete_me) return;
|
||||
_edje_ref(ed);
|
||||
_edje_freeze(ed);
|
||||
for (l = runp->program->targets; l; l = l->next)
|
||||
EINA_LIST_FOREACH(runp->program->targets, l, pt)
|
||||
{
|
||||
Edje_Real_Part *rp;
|
||||
Edje_Program_Target *pt;
|
||||
|
||||
pt = l->data;
|
||||
if (pt->id >= 0)
|
||||
{
|
||||
rp = ed->table_parts[pt->id % ed->table_parts_size];
|
||||
|
@ -492,11 +481,11 @@ _edje_program_end(Edje *ed, Edje_Running_Program *runp)
|
|||
if (!ed->walking_actions)
|
||||
{
|
||||
_edje_anim_count--;
|
||||
ed->actions = evas_list_remove(ed->actions, runp);
|
||||
ed->actions = eina_list_remove(ed->actions, runp);
|
||||
free_runp = 1;
|
||||
if (!ed->actions)
|
||||
{
|
||||
_edje_animators = evas_list_remove(_edje_animators, ed);
|
||||
_edje_animators = eina_list_remove(_edje_animators, ed);
|
||||
}
|
||||
}
|
||||
// _edje_emit(ed, "program,stop", pname);
|
||||
|
@ -508,7 +497,11 @@ _edje_program_end(Edje *ed, Edje_Running_Program *runp)
|
|||
void
|
||||
_edje_program_run(Edje *ed, Edje_Program *pr, int force, const char *ssig, const char *ssrc)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Real_Part *rp;
|
||||
Edje_Program_Target *pt;
|
||||
Edje_Program *pr2;
|
||||
Edje_Program_After *pa;
|
||||
/* limit self-feeding loops in programs to 64 levels */
|
||||
static int recursions = 0;
|
||||
static int recursion_limit = 0;
|
||||
|
@ -531,7 +524,7 @@ _edje_program_run(Edje *ed, Edje_Program *pr, int force, const char *ssig, const
|
|||
}
|
||||
pp->edje = ed;
|
||||
pp->program = pr;
|
||||
ed->pending_actions = evas_list_append(ed->pending_actions, pp);
|
||||
ed->pending_actions = eina_list_append(ed->pending_actions, pp);
|
||||
return;
|
||||
}
|
||||
if ((recursions >= 64) || (recursion_limit))
|
||||
|
@ -552,12 +545,8 @@ _edje_program_run(Edje *ed, Edje_Program *pr, int force, const char *ssig, const
|
|||
Edje_Running_Program *runp;
|
||||
|
||||
runp = calloc(1, sizeof(Edje_Running_Program));
|
||||
for (l = pr->targets; l; l = l->next)
|
||||
EINA_LIST_FOREACH(pr->targets, l, pt)
|
||||
{
|
||||
Edje_Real_Part *rp;
|
||||
Edje_Program_Target *pt;
|
||||
|
||||
pt = l->data;
|
||||
if (pt->id >= 0)
|
||||
{
|
||||
rp = ed->table_parts[pt->id % ed->table_parts_size];
|
||||
|
@ -578,12 +567,12 @@ _edje_program_run(Edje *ed, Edje_Program *pr, int force, const char *ssig, const
|
|||
// _edje_emit(ed, "program,start", pr->name);
|
||||
if (_edje_block_break(ed))
|
||||
{
|
||||
ed->actions = evas_list_append(ed->actions, runp);
|
||||
ed->actions = eina_list_append(ed->actions, runp);
|
||||
goto break_prog;
|
||||
}
|
||||
if (!ed->actions)
|
||||
_edje_animators = evas_list_append(_edje_animators, ed);
|
||||
ed->actions = evas_list_append(ed->actions, runp);
|
||||
_edje_animators = eina_list_append(_edje_animators, ed);
|
||||
ed->actions = eina_list_append(ed->actions, runp);
|
||||
runp->start_time = ecore_time_get();
|
||||
runp->edje = ed;
|
||||
runp->program = pr;
|
||||
|
@ -593,12 +582,8 @@ _edje_program_run(Edje *ed, Edje_Program *pr, int force, const char *ssig, const
|
|||
}
|
||||
else
|
||||
{
|
||||
for (l = pr->targets; l; l = l->next)
|
||||
EINA_LIST_FOREACH(pr->targets, l, pt)
|
||||
{
|
||||
Edje_Real_Part *rp;
|
||||
Edje_Program_Target *pt;
|
||||
|
||||
pt = l->data;
|
||||
if (pt->id >= 0)
|
||||
{
|
||||
rp = ed->table_parts[pt->id % ed->table_parts_size];
|
||||
|
@ -620,11 +605,8 @@ _edje_program_run(Edje *ed, Edje_Program *pr, int force, const char *ssig, const
|
|||
// _edje_emit(ed, "program,stop", pr->name);
|
||||
if (_edje_block_break(ed)) goto break_prog;
|
||||
|
||||
for (l = pr->after; l; l = l->next)
|
||||
EINA_LIST_FOREACH(pr->after, l, pa)
|
||||
{
|
||||
Edje_Program *pr2;
|
||||
Edje_Program_After *pa = l->data;
|
||||
|
||||
if (pa->id >= 0)
|
||||
{
|
||||
pr2 = ed->table_programs[pa->id % ed->table_programs_size];
|
||||
|
@ -638,31 +620,25 @@ _edje_program_run(Edje *ed, Edje_Program *pr, int force, const char *ssig, const
|
|||
else if (pr->action == EDJE_ACTION_TYPE_ACTION_STOP)
|
||||
{
|
||||
// _edje_emit(ed, "program,start", pr->name);
|
||||
for (l = pr->targets; l; l = l->next)
|
||||
EINA_LIST_FOREACH(pr->targets, l, pt)
|
||||
{
|
||||
Edje_Program_Target *pt;
|
||||
Evas_List *ll;
|
||||
Eina_List *ll;
|
||||
Edje_Running_Program *runp;
|
||||
Edje_Pending_Program *pp;
|
||||
|
||||
pt = l->data;
|
||||
for (ll = ed->actions; ll; ll = ll->next)
|
||||
EINA_LIST_FOREACH(ed->actions, ll, runp)
|
||||
{
|
||||
Edje_Running_Program *runp;
|
||||
|
||||
runp = ll->data;
|
||||
if (pt->id == runp->program->id)
|
||||
{
|
||||
_edje_program_end(ed, runp);
|
||||
goto done;
|
||||
}
|
||||
}
|
||||
for (ll = ed->pending_actions; ll; ll = ll->next)
|
||||
EINA_LIST_FOREACH(ed->pending_actions, ll, pp)
|
||||
{
|
||||
Edje_Pending_Program *pp;
|
||||
|
||||
pp = ll->data;
|
||||
if (pt->id == pp->program->id)
|
||||
{
|
||||
ed->pending_actions = evas_list_remove(ed->pending_actions, pp);
|
||||
ed->pending_actions = eina_list_remove(ed->pending_actions, pp);
|
||||
ecore_timer_del(pp->timer);
|
||||
free(pp);
|
||||
goto done;
|
||||
|
@ -687,12 +663,8 @@ _edje_program_run(Edje *ed, Edje_Program *pr, int force, const char *ssig, const
|
|||
{
|
||||
// _edje_emit(ed, "program,start", pr->name);
|
||||
if (_edje_block_break(ed)) goto break_prog;
|
||||
for (l = pr->targets; l; l = l->next)
|
||||
EINA_LIST_FOREACH(pr->targets, l, pt)
|
||||
{
|
||||
Edje_Real_Part *rp;
|
||||
Edje_Program_Target *pt;
|
||||
|
||||
pt = l->data;
|
||||
if (pt->id >= 0)
|
||||
{
|
||||
rp = ed->table_parts[pt->id % ed->table_parts_size];
|
||||
|
@ -717,12 +689,8 @@ _edje_program_run(Edje *ed, Edje_Program *pr, int force, const char *ssig, const
|
|||
{
|
||||
// _edje_emit(ed, "program,start", pr->name);
|
||||
if (_edje_block_break(ed)) goto break_prog;
|
||||
for (l = pr->targets; l; l = l->next)
|
||||
EINA_LIST_FOREACH(pr->targets, l, pt)
|
||||
{
|
||||
Edje_Real_Part *rp;
|
||||
Edje_Program_Target *pt;
|
||||
|
||||
pt = l->data;
|
||||
if (pt->id >= 0)
|
||||
{
|
||||
rp = ed->table_parts[pt->id % ed->table_parts_size];
|
||||
|
@ -747,12 +715,8 @@ _edje_program_run(Edje *ed, Edje_Program *pr, int force, const char *ssig, const
|
|||
{
|
||||
// _edje_emit(ed, "program,start", pr->name);
|
||||
if (_edje_block_break(ed)) goto break_prog;
|
||||
for (l = pr->targets; l; l = l->next)
|
||||
EINA_LIST_FOREACH(pr->targets, l, pt)
|
||||
{
|
||||
Edje_Real_Part *rp;
|
||||
Edje_Program_Target *pt;
|
||||
|
||||
pt = l->data;
|
||||
if (pt->id >= 0)
|
||||
{
|
||||
rp = ed->table_parts[pt->id % ed->table_parts_size];
|
||||
|
@ -793,12 +757,8 @@ _edje_program_run(Edje *ed, Edje_Program *pr, int force, const char *ssig, const
|
|||
}
|
||||
else
|
||||
{
|
||||
for (l = pr->targets; l; l = l->next)
|
||||
EINA_LIST_FOREACH(pr->targets, l, pt)
|
||||
{
|
||||
Edje_Real_Part *rp;
|
||||
Edje_Program_Target *pt;
|
||||
|
||||
pt = l->data;
|
||||
if (pt->id >= 0)
|
||||
{
|
||||
rp = ed->table_parts[pt->id % ed->table_parts_size];
|
||||
|
@ -828,11 +788,8 @@ _edje_program_run(Edje *ed, Edje_Program *pr, int force, const char *ssig, const
|
|||
/* && (pr->tween.time > 0.0) && (!ed->no_anim))) */
|
||||
))
|
||||
{
|
||||
for (l= pr->after; l; l = l->next)
|
||||
EINA_LIST_FOREACH(pr->after, l, pa)
|
||||
{
|
||||
Edje_Program *pr2;
|
||||
Edje_Program_After *pa = l->data;
|
||||
|
||||
if (pa->id >= 0)
|
||||
{
|
||||
pr2 = ed->table_programs[pa->id % ed->table_programs_size];
|
||||
|
@ -863,7 +820,7 @@ _edje_emit(Edje *ed, const char *sig, const char *src)
|
|||
struct _Edje_Program_Data
|
||||
{
|
||||
#ifdef EDJE_PROGRAM_CACHE
|
||||
Evas_List *matches;
|
||||
Eina_List *matches;
|
||||
int matched;
|
||||
#endif
|
||||
Edje *ed;
|
||||
|
@ -883,14 +840,14 @@ static int _edje_glob_callback(Edje_Program *pr, void *dt)
|
|||
if (_edje_block_break(data->ed))
|
||||
{
|
||||
#ifdef EDJE_PROGRAM_CACHE
|
||||
evas_list_free(data->matches);
|
||||
eina_list_free(data->matches);
|
||||
data->matches = NULL;
|
||||
#endif
|
||||
return 1;
|
||||
}
|
||||
|
||||
#ifdef EDJE_PROGRAM_CACHE
|
||||
data->matches = evas_list_append(data->matches, pr);
|
||||
data->matches = eina_list_append(data->matches, pr);
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
|
@ -948,8 +905,9 @@ _edje_emit_handle(Edje *ed, const char *sig, const char *src)
|
|||
|
||||
#ifdef EDJE_PROGRAM_CACHE
|
||||
{
|
||||
Evas_List *matches;
|
||||
Evas_List *l;
|
||||
Eina_List *matches;
|
||||
Eina_List *l;
|
||||
Edje_Program *pr;
|
||||
|
||||
if (evas_hash_find(ec->prog_cache.no_matches, tmps))
|
||||
{
|
||||
|
@ -957,11 +915,8 @@ _edje_emit_handle(Edje *ed, const char *sig, const char *src)
|
|||
}
|
||||
else if ((matches = evas_hash_find(ec->prog_cache.matches, tmps)))
|
||||
{
|
||||
for (l = matches; l; l = l->next)
|
||||
EINA_LIST_FOREACH(matches, l, pr)
|
||||
{
|
||||
Edje_Program *pr;
|
||||
|
||||
pr = l->data;
|
||||
_edje_program_run(ed, pr, 0, sig, src);
|
||||
if (_edje_block_break(ed))
|
||||
{
|
||||
|
@ -1023,7 +978,7 @@ _edje_emit_handle(Edje *ed, const char *sig, const char *src)
|
|||
static void
|
||||
_edje_emit_cb(Edje *ed, const char *sig, const char *src)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
|
||||
if (ed->delete_me) return;
|
||||
_edje_ref(ed);
|
||||
|
@ -1054,20 +1009,20 @@ _edje_emit_cb(Edje *ed, const char *sig, const char *src)
|
|||
ed->walking_callbacks = 0;
|
||||
if ((ed->delete_callbacks) || (ed->just_added_callbacks))
|
||||
{
|
||||
Edje_Signal_Callback *escb;
|
||||
|
||||
ed->delete_callbacks = 0;
|
||||
ed->just_added_callbacks = 0;
|
||||
for (l = ed->callbacks; l;)
|
||||
EINA_LIST_FOREACH(ed->callbacks, l, escb)
|
||||
{
|
||||
Edje_Signal_Callback *escb;
|
||||
Evas_List *next_l;
|
||||
Eina_List *next_l;
|
||||
|
||||
escb = l->data;
|
||||
next_l = l->next;
|
||||
next_l = eina_list_next(l);
|
||||
if (escb->just_added)
|
||||
escb->just_added = 0;
|
||||
if (escb->delete_me)
|
||||
{
|
||||
ed->callbacks = evas_list_remove_list(ed->callbacks, l);
|
||||
ed->callbacks = eina_list_remove_list(ed->callbacks, l);
|
||||
if (escb->signal) eina_stringshare_del(escb->signal);
|
||||
if (escb->source) eina_stringshare_del(escb->source);
|
||||
free(escb);
|
||||
|
|
|
@ -16,7 +16,7 @@ static void _edje_smart_clip_unset(Evas_Object * obj);
|
|||
|
||||
static Evas_Smart *_edje_smart = NULL;
|
||||
|
||||
Evas_List *_edje_edjes = NULL;
|
||||
Eina_List *_edje_edjes = NULL;
|
||||
|
||||
/************************** API Routines **************************/
|
||||
|
||||
|
@ -64,19 +64,20 @@ _edje_smart_add(Evas_Object *obj)
|
|||
evas_object_smart_data_set(obj, ed);
|
||||
evas_object_geometry_get(obj, &(ed->x), &(ed->y), &(ed->w), &(ed->h));
|
||||
ed->obj = obj;
|
||||
_edje_edjes = evas_list_append(_edje_edjes, obj);
|
||||
_edje_edjes = eina_list_append(_edje_edjes, obj);
|
||||
_edje_entry_init(ed);
|
||||
/*
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
const void *data;
|
||||
|
||||
printf("--- EDJE DUMP [%i]\n", evas_list_count(_edje_edjes));
|
||||
for (l = _edje_edjes; l; l = l->next)
|
||||
printf("--- EDJE DUMP [%i]\n", eina_list_count(_edje_edjes));
|
||||
EINA_LIST_FOREACH(_edge_edges, l, data)
|
||||
{
|
||||
ed = _edje_fetch(l->data);
|
||||
ed = _edje_fetch(data);
|
||||
printf("EDJE: %80s | %80s\n", ed->path, ed->part);
|
||||
}
|
||||
printf("--- EDJE DUMP [%i]\n", evas_list_count(_edje_edjes));
|
||||
printf("--- EDJE DUMP [%i]\n", eina_list_count(_edje_edjes));
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
@ -92,7 +93,7 @@ _edje_smart_del(Evas_Object * obj)
|
|||
_edje_entry_shutdown(ed);
|
||||
ed->delete_me = 1;
|
||||
_edje_clean_objects(ed);
|
||||
_edje_edjes = evas_list_remove(_edje_edjes, obj);
|
||||
_edje_edjes = eina_list_remove(_edje_edjes, obj);
|
||||
evas_object_smart_data_set(obj, NULL);
|
||||
if (_edje_script_only(ed)) _edje_script_only_shutdown(ed);
|
||||
_edje_file_del(ed);
|
||||
|
@ -135,14 +136,13 @@ _edje_smart_move(Evas_Object * obj, Evas_Coord x, Evas_Coord y)
|
|||
}
|
||||
if (ep->extra_objects)
|
||||
{
|
||||
Evas_List *el;
|
||||
Eina_List *el;
|
||||
Evas_Object *o;
|
||||
|
||||
for (el = ep->extra_objects; el; el = el->next)
|
||||
EINA_LIST_FOREACH(ep->extra_objects, el, o)
|
||||
{
|
||||
Evas_Object *o;
|
||||
Evas_Coord oox, ooy;
|
||||
|
||||
o = el->data;
|
||||
evas_object_geometry_get(o, &oox, &ooy, NULL, NULL);
|
||||
evas_object_move(o, ed->x + ep->x + ep->offset.x + (oox - ox), ed->y + ep->y + ep->offset.y + (ooy - oy));
|
||||
}
|
||||
|
|
|
@ -38,8 +38,9 @@ _edje_text_init(void)
|
|||
void
|
||||
_edje_text_part_on_add(Edje *ed, Edje_Real_Part *ep)
|
||||
{
|
||||
Evas_List *tmp;
|
||||
Eina_List *tmp;
|
||||
Edje_Part *pt = ep->part;
|
||||
Edje_Part_Description *desc;
|
||||
|
||||
if (ep->part->type != EDJE_PART_TYPE_TEXT) return;
|
||||
|
||||
|
@ -48,26 +49,19 @@ _edje_text_part_on_add(Edje *ed, Edje_Real_Part *ep)
|
|||
_edje_text_class_member_add(ed, pt->default_desc->text.text_class);
|
||||
|
||||
/* If any other classes exist add them */
|
||||
for (tmp = pt->other_desc; tmp; tmp = tmp->next)
|
||||
{
|
||||
Edje_Part_Description *desc;
|
||||
|
||||
desc = tmp->data;
|
||||
if ((desc) && (desc->text.text_class))
|
||||
_edje_text_class_member_add(ed, desc->text.text_class);
|
||||
}
|
||||
EINA_LIST_FOREACH(pt->other_desc, tmp, desc)
|
||||
if ((desc) && (desc->text.text_class))
|
||||
_edje_text_class_member_add(ed, desc->text.text_class);
|
||||
}
|
||||
|
||||
void
|
||||
_edje_text_part_on_add_clippers(Edje *ed, Edje_Real_Part *ep)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Evas_Object *o;
|
||||
|
||||
for (l = ep->extra_objects; l; l = l->next)
|
||||
EINA_LIST_FOREACH(ep->extra_objects, l, o)
|
||||
{
|
||||
Evas_Object *o;
|
||||
|
||||
o = l->data;
|
||||
if (ep->part->clip_to_id >= 0)
|
||||
{
|
||||
ep->clip_to = ed->table_parts[ep->part->clip_to_id % ed->table_parts_size];
|
||||
|
@ -83,19 +77,15 @@ _edje_text_part_on_add_clippers(Edje *ed, Edje_Real_Part *ep)
|
|||
void
|
||||
_edje_text_part_on_del(Edje *ed, Edje_Part *pt)
|
||||
{
|
||||
Evas_List *tmp;
|
||||
Eina_List *tmp;
|
||||
Edje_Part_Description *desc;
|
||||
|
||||
if ((pt->default_desc) && (pt->default_desc->text.text_class))
|
||||
_edje_text_class_member_del(ed, pt->default_desc->text.text_class);
|
||||
|
||||
for (tmp = pt->other_desc; tmp; tmp = tmp->next)
|
||||
{
|
||||
Edje_Part_Description *desc;
|
||||
|
||||
desc = tmp->data;
|
||||
if (desc->text.text_class)
|
||||
_edje_text_class_member_del(ed, desc->text.text_class);
|
||||
}
|
||||
EINA_LIST_FOREACH(pt->other_desc, tmp, desc)
|
||||
if (desc->text.text_class)
|
||||
_edje_text_class_member_del(ed, desc->text.text_class);
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -105,8 +95,8 @@ _edje_text_real_part_on_del(Edje *ed, Edje_Real_Part *ep)
|
|||
{
|
||||
Evas_Object *o;
|
||||
|
||||
o = ep->extra_objects->data;
|
||||
ep->extra_objects = evas_list_remove(ep->extra_objects, o);
|
||||
o = eina_list_data_get(ep->extra_objects);
|
||||
ep->extra_objects = eina_list_remove(ep->extra_objects, o);
|
||||
evas_object_del(o);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -228,13 +228,14 @@ _edje_format_reparse(Edje_File *edf, const char *str, Edje_Style_Tag **tag_ret)
|
|||
void
|
||||
_edje_textblock_style_all_update(Edje *ed)
|
||||
{
|
||||
Evas_List *l, *ll;
|
||||
Eina_List *l, *ll;
|
||||
Edje_Style *stl;
|
||||
|
||||
if (!ed->file) return;
|
||||
|
||||
for (l = ed->file->styles; l; l = l->next)
|
||||
EINA_LIST_FOREACH(ed->file->styles, l, stl)
|
||||
{
|
||||
Edje_Style *stl;
|
||||
|
||||
Edje_Style_Tag *tag;
|
||||
Edje_Text_Class *tc;
|
||||
char *buf = NULL;
|
||||
|
@ -243,17 +244,13 @@ _edje_textblock_style_all_update(Edje *ed)
|
|||
int found = 0;
|
||||
char *fontset = NULL, *fontsource = NULL;
|
||||
|
||||
stl = l->data;
|
||||
/* Make sure the style is already defined */
|
||||
if (!stl->style) break;
|
||||
|
||||
/* Make sure the style contains a text_class */
|
||||
for (ll = stl->tags; ll; ll = ll->next)
|
||||
{
|
||||
tag = ll->data;
|
||||
if (tag->text_class)
|
||||
found = 1;
|
||||
}
|
||||
EINA_LIST_FOREACH(stl->tags, ll, tag)
|
||||
if (tag->text_class)
|
||||
found = 1;
|
||||
|
||||
/* No text classes , goto next style */
|
||||
if (!found) continue;
|
||||
|
@ -264,9 +261,8 @@ _edje_textblock_style_all_update(Edje *ed)
|
|||
fontsource = _edje_str_escape(ed->file->path);
|
||||
|
||||
/* Build the style from each tag */
|
||||
for (ll = stl->tags; ll; ll = ll->next)
|
||||
EINA_LIST_FOREACH(stl->tags, ll, tag)
|
||||
{
|
||||
tag = ll->data;
|
||||
if (!tag->key) continue;
|
||||
|
||||
/* Add Tag Key */
|
||||
|
@ -335,23 +331,20 @@ _edje_textblock_style_all_update(Edje *ed)
|
|||
void
|
||||
_edje_textblock_styles_add(Edje *ed)
|
||||
{
|
||||
Evas_List *l, *ll;
|
||||
Eina_List *l, *ll;
|
||||
Edje_Style *stl;
|
||||
|
||||
if (!ed->file) return;
|
||||
|
||||
for (l = ed->file->styles; l; l = l->next)
|
||||
EINA_LIST_FOREACH(ed->file->styles, l, stl)
|
||||
{
|
||||
Edje_Style *stl;
|
||||
Edje_Style_Tag *tag;
|
||||
|
||||
stl = l->data;
|
||||
|
||||
/* Make sure the style contains the text_class */
|
||||
for (ll = stl->tags; ll; ll = ll->next)
|
||||
EINA_LIST_FOREACH(stl->tags, ll, tag)
|
||||
{
|
||||
tag = ll->data;
|
||||
if (!tag->text_class) continue;
|
||||
_edje_text_class_member_add(ed, tag->text_class);
|
||||
if (!tag->text_class) continue;
|
||||
_edje_text_class_member_add(ed, tag->text_class);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -359,21 +352,18 @@ _edje_textblock_styles_add(Edje *ed)
|
|||
void
|
||||
_edje_textblock_styles_del(Edje *ed)
|
||||
{
|
||||
Evas_List *l, *ll;
|
||||
Eina_List *l, *ll;
|
||||
Edje_Style *stl;
|
||||
|
||||
if (!ed->file) return;
|
||||
|
||||
for (l = ed->file->styles; l; l = l->next)
|
||||
EINA_LIST_FOREACH(ed->file->styles, l, stl)
|
||||
{
|
||||
Edje_Style *stl;
|
||||
Edje_Style_Tag *tag;
|
||||
|
||||
stl = l->data;
|
||||
|
||||
/* Make sure the style contains the text_class */
|
||||
for (ll = stl->tags; ll; ll = ll->next)
|
||||
EINA_LIST_FOREACH(stl->tags, ll, tag)
|
||||
{
|
||||
tag = ll->data;
|
||||
if (!tag->text_class) continue;
|
||||
_edje_text_class_member_del(ed, tag->text_class);
|
||||
}
|
||||
|
@ -389,18 +379,17 @@ _edje_textblock_styles_del(Edje *ed)
|
|||
void
|
||||
_edje_textblock_style_parse_and_fix(Edje_File *edf)
|
||||
{
|
||||
Evas_List *l, *ll;
|
||||
Eina_List *l, *ll;
|
||||
Edje_Style *stl;
|
||||
|
||||
for (l = edf->styles; l; l = l->next)
|
||||
EINA_LIST_FOREACH(edf->styles, l, stl)
|
||||
{
|
||||
Edje_Style *stl;
|
||||
Edje_Style_Tag *tag;
|
||||
char *buf = NULL;
|
||||
int bufalloc = 0;
|
||||
int buflen = 0;
|
||||
char *fontset = NULL, *fontsource = NULL, *ts;
|
||||
|
||||
stl = l->data;
|
||||
if (stl->style) break;
|
||||
|
||||
stl->style = evas_textblock_style_new();
|
||||
|
@ -411,9 +400,8 @@ _edje_textblock_style_parse_and_fix(Edje_File *edf)
|
|||
fontsource = _edje_str_escape(edf->path);
|
||||
|
||||
/* Build the style from each tag */
|
||||
for (ll = stl->tags; ll; ll = ll->next)
|
||||
EINA_LIST_FOREACH(stl->tags, ll, tag)
|
||||
{
|
||||
tag = ll->data;
|
||||
if (!tag->key) continue;
|
||||
|
||||
/* Add Tag Key */
|
||||
|
@ -479,13 +467,13 @@ _edje_textblock_style_cleanup(Edje_File *edf)
|
|||
Edje_Style *stl;
|
||||
|
||||
stl = edf->styles->data;
|
||||
edf->styles = evas_list_remove_list(edf->styles, edf->styles);
|
||||
edf->styles = eina_list_remove_list(edf->styles, edf->styles);
|
||||
while (stl->tags)
|
||||
{
|
||||
Edje_Style_Tag *tag;
|
||||
|
||||
tag = stl->tags->data;
|
||||
stl->tags = evas_list_remove_list(stl->tags, stl->tags);
|
||||
stl->tags = eina_list_remove_list(stl->tags, stl->tags);
|
||||
if (edf->free_strings)
|
||||
{
|
||||
if (tag->key) eina_stringshare_del(tag->key);
|
||||
|
|
|
@ -19,7 +19,7 @@ typedef struct _Edje_List_Foreach_Data Edje_List_Foreach_Data;
|
|||
|
||||
struct _Edje_List_Foreach_Data
|
||||
{
|
||||
Evas_List *list;
|
||||
Eina_List *list;
|
||||
};
|
||||
|
||||
static Evas_Bool _edje_color_class_list_foreach(const Evas_Hash *hash, const char *key, void *data, void *fdata);
|
||||
|
@ -46,10 +46,11 @@ edje_freeze(void)
|
|||
#else
|
||||
// FIXME: could just have a global freeze instead of per object
|
||||
// above i tried.. but this broke some things. notable e17's menus. why?
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Evas_Object *data;
|
||||
|
||||
for (l = _edje_edjes; l; l = l->next)
|
||||
edje_object_freeze((Evas_Object *)(l->data));
|
||||
EINA_LIST_FOREACH(_edje_edjes, l, data)
|
||||
edje_object_freeze(data);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@ -83,29 +84,30 @@ _edje_thaw_edje(Edje *ed)
|
|||
EAPI void
|
||||
edje_thaw(void)
|
||||
{
|
||||
Evas_Object *data;
|
||||
#ifdef FASTFREEZE
|
||||
_edje_freeze_val--;
|
||||
printf("fr -- ->%i\n", _edje_freeze_val);
|
||||
if ((_edje_freeze_val <= 0) && (_edje_freeze_calc_count > 0))
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
|
||||
_edje_freeze_calc_count = 0;
|
||||
for (l = _edje_edjes; l; l = l->next)
|
||||
EINA_LIST_FOREACH(_edje_edjes, l, data)
|
||||
{
|
||||
Edje *ed;
|
||||
|
||||
ed = _edje_fetch(l->data);
|
||||
|
||||
ed = _edje_fetch(data);
|
||||
if (ed) _edje_thaw_edje(ed);
|
||||
}
|
||||
}
|
||||
#else
|
||||
// FIXME: could just have a global freeze instead of per object
|
||||
// comment as above.. why?
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
|
||||
for (l = _edje_edjes; l; l = l->next)
|
||||
edje_object_thaw((Evas_Object *)(l->data));
|
||||
EINA_LIST_FOREACH(_edje_edjes, l, data)
|
||||
edje_object_thaw(data);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@ -128,12 +130,13 @@ edje_fontset_append_get(void)
|
|||
EAPI void
|
||||
edje_scale_set(double scale)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Evas_Object *data;
|
||||
|
||||
if (_edje_scale == scale) return;
|
||||
_edje_scale = scale;
|
||||
for (l = _edje_edjes; l; l = l->next)
|
||||
edje_object_calc_force((Evas_Object *)(l->data));
|
||||
EINA_LIST_FOREACH(_edje_edjes, l, data)
|
||||
edje_object_calc_force(data);
|
||||
}
|
||||
|
||||
EAPI double
|
||||
|
@ -169,20 +172,16 @@ EAPI const char *
|
|||
edje_object_data_get(const Evas_Object *obj, const char *key)
|
||||
{
|
||||
Edje *ed;
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Data *di;
|
||||
|
||||
ed = _edje_fetch(obj);
|
||||
if ((!ed) || (!key))
|
||||
return NULL;
|
||||
if (!ed->collection) return NULL;
|
||||
for (l = ed->collection->data; l; l = l->next)
|
||||
{
|
||||
Edje_Data *di;
|
||||
|
||||
di = l->data;
|
||||
if ((di->key) && (!strcmp(di->key, key)))
|
||||
return (const char *)di->value;
|
||||
}
|
||||
EINA_LIST_FOREACH(ed->collection->data, l, di)
|
||||
if ((di->key) && (!strcmp(di->key, key)))
|
||||
return (const char *)di->value;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
@ -265,7 +264,7 @@ edje_object_thaw(Evas_Object *obj)
|
|||
EAPI void
|
||||
edje_color_class_set(const char *color_class, int r, int g, int b, int a, int r2, int g2, int b2, int a2, int r3, int g3, int b3, int a3)
|
||||
{
|
||||
Evas_List *members;
|
||||
Eina_List *members;
|
||||
Edje_Color_Class *cc;
|
||||
|
||||
if (!color_class) return;
|
||||
|
@ -325,10 +324,10 @@ edje_color_class_set(const char *color_class, int r, int g, int b, int a, int r2
|
|||
{
|
||||
Edje *ed;
|
||||
|
||||
ed = members->data;
|
||||
ed = eina_list_data_get(members);
|
||||
ed->dirty = 1;
|
||||
_edje_recalc(ed);
|
||||
members = members->next;
|
||||
members = eina_list_next(members);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -341,7 +340,7 @@ void
|
|||
edje_color_class_del(const char *color_class)
|
||||
{
|
||||
Edje_Color_Class *cc;
|
||||
Evas_List *members;
|
||||
Eina_List *members;
|
||||
|
||||
if (!color_class) return;
|
||||
|
||||
|
@ -358,10 +357,10 @@ edje_color_class_del(const char *color_class)
|
|||
{
|
||||
Edje *ed;
|
||||
|
||||
ed = members->data;
|
||||
ed = eina_list_data_get(members);
|
||||
ed->dirty = 1;
|
||||
_edje_recalc(ed);
|
||||
members = members->next;
|
||||
members = eina_list_next(members);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -371,7 +370,7 @@ edje_color_class_del(const char *color_class)
|
|||
* @return A list of color class names (strings). These strings and the list
|
||||
* must be free()'d by the caller.
|
||||
*/
|
||||
Evas_List *
|
||||
Eina_List *
|
||||
edje_color_class_list(void)
|
||||
{
|
||||
Edje_List_Foreach_Data fdata;
|
||||
|
@ -389,7 +388,7 @@ _edje_color_class_list_foreach(const Evas_Hash *hash, const char *key, void *dat
|
|||
Edje_List_Foreach_Data *fd;
|
||||
|
||||
fd = fdata;
|
||||
fd->list = evas_list_append(fd->list, strdup(key));
|
||||
fd->list = eina_list_append(fd->list, strdup(key));
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@ -420,7 +419,7 @@ EAPI void
|
|||
edje_object_color_class_set(Evas_Object *obj, const char *color_class, int r, int g, int b, int a, int r2, int g2, int b2, int a2, int r3, int g3, int b3, int a3)
|
||||
{
|
||||
Edje *ed;
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Color_Class *cc;
|
||||
int i;
|
||||
|
||||
|
@ -434,9 +433,8 @@ edje_object_color_class_set(Evas_Object *obj, const char *color_class, int r, in
|
|||
if (b > 255) b = 255;
|
||||
if (a < 0) a = 0;
|
||||
if (a > 255) a = 255;
|
||||
for (l = ed->color_classes; l; l = l->next)
|
||||
EINA_LIST_FOREACH(ed->color_classes, l, cc)
|
||||
{
|
||||
cc = l->data;
|
||||
if ((cc->name) && (!strcmp(cc->name, color_class)))
|
||||
{
|
||||
if ((cc->r == r) && (cc->g == g) &&
|
||||
|
@ -483,7 +481,7 @@ edje_object_color_class_set(Evas_Object *obj, const char *color_class, int r, in
|
|||
cc->g3 = g3;
|
||||
cc->b3 = b3;
|
||||
cc->a3 = a3;
|
||||
ed->color_classes = evas_list_append(ed->color_classes, cc);
|
||||
ed->color_classes = eina_list_append(ed->color_classes, cc);
|
||||
ed->dirty = 1;
|
||||
|
||||
for (i = 0; i < ed->table_parts_size; i++)
|
||||
|
@ -507,19 +505,18 @@ void
|
|||
edje_object_color_class_del(Evas_Object *obj, const char *color_class)
|
||||
{
|
||||
Edje *ed;
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Color_Class *cc = NULL;
|
||||
int i;
|
||||
|
||||
if (!color_class) return;
|
||||
|
||||
ed = _edje_fetch(obj);
|
||||
for (l = ed->color_classes; l; l = l->next)
|
||||
EINA_LIST_FOREACH(ed->color_classes, l, cc)
|
||||
{
|
||||
cc = l->data;
|
||||
if (!strcmp(cc->name, color_class))
|
||||
{
|
||||
ed->color_classes = evas_list_remove(ed->color_classes, cc);
|
||||
ed->color_classes = eina_list_remove(ed->color_classes, cc);
|
||||
eina_stringshare_del(cc->name);
|
||||
free(cc);
|
||||
return;
|
||||
|
@ -549,7 +546,7 @@ edje_object_color_class_del(Evas_Object *obj, const char *color_class)
|
|||
EAPI void
|
||||
edje_text_class_set(const char *text_class, const char *font, Evas_Font_Size size)
|
||||
{
|
||||
Evas_List *members;
|
||||
Eina_List *members;
|
||||
Edje_Text_Class *tc;
|
||||
|
||||
if (!text_class) return;
|
||||
|
@ -603,11 +600,11 @@ edje_text_class_set(const char *text_class, const char *font, Evas_Font_Size siz
|
|||
{
|
||||
Edje *ed;
|
||||
|
||||
ed = members->data;
|
||||
ed = eina_list_data_get(members);
|
||||
ed->dirty = 1;
|
||||
_edje_textblock_style_all_update(ed);
|
||||
_edje_recalc(ed);
|
||||
members = members->next;
|
||||
members = eina_list_next(members);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -620,7 +617,7 @@ void
|
|||
edje_text_class_del(const char *text_class)
|
||||
{
|
||||
Edje_Text_Class *tc;
|
||||
Evas_List *members;
|
||||
Eina_List *members;
|
||||
|
||||
if (!text_class) return;
|
||||
|
||||
|
@ -638,11 +635,11 @@ edje_text_class_del(const char *text_class)
|
|||
{
|
||||
Edje *ed;
|
||||
|
||||
ed = members->data;
|
||||
ed = eina_list_data_get(members);
|
||||
ed->dirty = 1;
|
||||
_edje_textblock_style_all_update(ed);
|
||||
_edje_recalc(ed);
|
||||
members = members->next;
|
||||
members = eina_list_next(members);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -652,7 +649,7 @@ edje_text_class_del(const char *text_class)
|
|||
* @return A list of text class names (strings). These strings are stringshares and
|
||||
* the list must be free()'d by the caller.
|
||||
*/
|
||||
Evas_List *
|
||||
Eina_List *
|
||||
edje_text_class_list(void)
|
||||
{
|
||||
Edje_List_Foreach_Data fdata;
|
||||
|
@ -670,7 +667,7 @@ _edje_text_class_list_foreach(const Evas_Hash *hash, const char *key, void *data
|
|||
Edje_List_Foreach_Data *fd;
|
||||
|
||||
fd = fdata;
|
||||
fd->list = evas_list_append(fd->list, eina_stringshare_add(key));
|
||||
fd->list = eina_list_append(fd->list, eina_stringshare_add(key));
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@ -686,7 +683,7 @@ EAPI void
|
|||
edje_object_text_class_set(Evas_Object *obj, const char *text_class, const char *font, Evas_Font_Size size)
|
||||
{
|
||||
Edje *ed;
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Text_Class *tc;
|
||||
int i;
|
||||
|
||||
|
@ -694,9 +691,8 @@ edje_object_text_class_set(Evas_Object *obj, const char *text_class, const char
|
|||
if ((!ed) || (!text_class)) return;
|
||||
|
||||
/* for each text_class in the edje */
|
||||
for (l = ed->text_classes; l; l = l->next)
|
||||
EINA_LIST_FOREACH(ed->text_classes, l, tc)
|
||||
{
|
||||
tc = l->data;
|
||||
if ((tc->name) && (!strcmp(tc->name, text_class)))
|
||||
{
|
||||
/* Match and the same, return */
|
||||
|
@ -742,7 +738,7 @@ edje_object_text_class_set(Evas_Object *obj, const char *text_class, const char
|
|||
}
|
||||
|
||||
/* Add to edje's text class list */
|
||||
ed->text_classes = evas_list_append(ed->text_classes, tc);
|
||||
ed->text_classes = eina_list_append(ed->text_classes, tc);
|
||||
ed->dirty = 1;
|
||||
_edje_textblock_style_all_update(ed);
|
||||
_edje_recalc(ed);
|
||||
|
@ -966,7 +962,7 @@ edje_object_part_text_insert(Evas_Object *obj, const char *part, const char *tex
|
|||
* @param part The part name
|
||||
* @return The list of anchors
|
||||
*/
|
||||
EAPI Evas_List *
|
||||
EAPI Eina_List *
|
||||
edje_object_part_text_anchor_list_get(const Evas_Object *obj, const char *part)
|
||||
{
|
||||
Edje *ed;
|
||||
|
@ -1866,28 +1862,22 @@ _edje_real_part_get(Edje *ed, const char *part)
|
|||
Edje_Color_Class *
|
||||
_edje_color_class_find(Edje *ed, const char *color_class)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Color_Class *cc = NULL;
|
||||
|
||||
if ((!ed) || (!color_class)) return NULL;
|
||||
|
||||
/* first look through the object scope */
|
||||
for (l = ed->color_classes; l; l = l->next)
|
||||
{
|
||||
cc = l->data;
|
||||
if ((cc->name) && (!strcmp(color_class, cc->name))) return cc;
|
||||
}
|
||||
EINA_LIST_FOREACH(ed->color_classes, l, cc)
|
||||
if ((cc->name) && (!strcmp(color_class, cc->name))) return cc;
|
||||
|
||||
/* next look through the global scope */
|
||||
cc = evas_hash_find(_edje_color_class_hash, color_class);
|
||||
if (cc) return cc;
|
||||
|
||||
/* finally, look through the file scope */
|
||||
for (l = ed->file->color_classes; l; l = l->next)
|
||||
{
|
||||
cc = l->data;
|
||||
if ((cc->name) && (!strcmp(color_class, cc->name))) return cc;
|
||||
}
|
||||
EINA_LIST_FOREACH(ed->file->color_classes, l, cc)
|
||||
if ((cc->name) && (!strcmp(color_class, cc->name))) return cc;
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
@ -1895,7 +1885,7 @@ _edje_color_class_find(Edje *ed, const char *color_class)
|
|||
void
|
||||
_edje_color_class_member_add(Edje *ed, const char *color_class)
|
||||
{
|
||||
Evas_List *members;
|
||||
Eina_List *members;
|
||||
|
||||
if ((!ed) || (!color_class)) return;
|
||||
members = evas_hash_find(_edje_color_class_member_hash, color_class);
|
||||
|
@ -1905,7 +1895,7 @@ _edje_color_class_member_add(Edje *ed, const char *color_class)
|
|||
evas_hash_del(_edje_color_class_member_hash, color_class, members);
|
||||
}
|
||||
|
||||
members = evas_list_prepend(members, ed);
|
||||
members = eina_list_prepend(members, ed);
|
||||
_edje_color_class_member_hash =
|
||||
evas_hash_add(_edje_color_class_member_hash, color_class, members);
|
||||
}
|
||||
|
@ -1913,7 +1903,7 @@ _edje_color_class_member_add(Edje *ed, const char *color_class)
|
|||
void
|
||||
_edje_color_class_member_del(Edje *ed, const char *color_class)
|
||||
{
|
||||
Evas_List *members;
|
||||
Eina_List *members;
|
||||
|
||||
if ((!ed) || (!color_class)) return;
|
||||
members = evas_hash_find(_edje_color_class_member_hash, color_class);
|
||||
|
@ -1921,7 +1911,7 @@ _edje_color_class_member_del(Edje *ed, const char *color_class)
|
|||
|
||||
_edje_color_class_member_hash =
|
||||
evas_hash_del(_edje_color_class_member_hash, color_class, members);
|
||||
members = evas_list_remove(members, ed);
|
||||
members = eina_list_remove(members, ed);
|
||||
if (members)
|
||||
{
|
||||
_edje_color_class_member_hash =
|
||||
|
@ -1936,7 +1926,7 @@ _edje_color_class_member_del(Edje *ed, const char *color_class)
|
|||
static Evas_Bool
|
||||
member_list_free(const Evas_Hash *hash, const char *key, void *data, void *fdata)
|
||||
{
|
||||
evas_list_free(data);
|
||||
eina_list_free(data);
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@ -1972,41 +1962,33 @@ _edje_color_class_hash_free(void)
|
|||
void
|
||||
_edje_color_class_on_del(Edje *ed, Edje_Part *ep)
|
||||
{
|
||||
Evas_List *tmp;
|
||||
Eina_List *tmp;
|
||||
Edje_Part_Description *desc;
|
||||
|
||||
if ((ep->default_desc) && (ep->default_desc->color_class))
|
||||
_edje_color_class_member_del(ed, ep->default_desc->color_class);
|
||||
|
||||
for (tmp = ep->other_desc; tmp; tmp = tmp->next)
|
||||
{
|
||||
Edje_Part_Description *desc;
|
||||
|
||||
desc = tmp->data;
|
||||
if (desc->color_class)
|
||||
_edje_color_class_member_del(ed, desc->color_class);
|
||||
}
|
||||
EINA_LIST_FOREACH(ep->other_desc, tmp, desc)
|
||||
if (desc->color_class)
|
||||
_edje_color_class_member_del(ed, desc->color_class);
|
||||
}
|
||||
|
||||
Edje_Text_Class *
|
||||
_edje_text_class_find(Edje *ed, const char *text_class)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Text_Class *tc;
|
||||
|
||||
if ((!ed) || (!text_class)) return NULL;
|
||||
for (l = ed->text_classes; l; l = l->next)
|
||||
{
|
||||
Edje_Text_Class *tc;
|
||||
|
||||
tc = l->data;
|
||||
if ((tc->name) && (!strcmp(text_class, tc->name))) return tc;
|
||||
}
|
||||
EINA_LIST_FOREACH(ed->text_classes, l, tc)
|
||||
if ((tc->name) && (!strcmp(text_class, tc->name))) return tc;
|
||||
return evas_hash_find(_edje_text_class_hash, text_class);
|
||||
}
|
||||
|
||||
void
|
||||
_edje_text_class_member_add(Edje *ed, const char *text_class)
|
||||
{
|
||||
Evas_List *members;
|
||||
Eina_List *members;
|
||||
|
||||
if ((!ed) || (!text_class)) return;
|
||||
|
||||
|
@ -2021,7 +2003,7 @@ _edje_text_class_member_add(Edje *ed, const char *text_class)
|
|||
}
|
||||
|
||||
/* Update the member list */
|
||||
members = evas_list_prepend(members, ed);
|
||||
members = eina_list_prepend(members, ed);
|
||||
|
||||
/* Add the member list back */
|
||||
_edje_text_class_member_hash =
|
||||
|
@ -2031,7 +2013,7 @@ _edje_text_class_member_add(Edje *ed, const char *text_class)
|
|||
void
|
||||
_edje_text_class_member_del(Edje *ed, const char *text_class)
|
||||
{
|
||||
Evas_List *members;
|
||||
Eina_List *members;
|
||||
|
||||
if ((!ed) || (!text_class)) return;
|
||||
members = evas_hash_find(_edje_text_class_member_hash, text_class);
|
||||
|
@ -2040,7 +2022,7 @@ _edje_text_class_member_del(Edje *ed, const char *text_class)
|
|||
_edje_text_class_member_hash =
|
||||
evas_hash_del(_edje_text_class_member_hash, text_class, members);
|
||||
|
||||
members = evas_list_remove(members, ed);
|
||||
members = eina_list_remove(members, ed);
|
||||
if (members)
|
||||
{
|
||||
_edje_text_class_member_hash =
|
||||
|
|
|
@ -8,7 +8,7 @@ static int _edje_var_timer_cb(void *data);
|
|||
static int _edje_var_anim_cb(void *data);
|
||||
|
||||
static Ecore_Animator *_edje_animator = NULL;
|
||||
static Evas_List *_edje_anim_list = NULL;
|
||||
static Eina_List *_edje_anim_list = NULL;
|
||||
|
||||
static int
|
||||
_edje_var_timer_cb(void *data)
|
||||
|
@ -24,7 +24,7 @@ _edje_var_timer_cb(void *data)
|
|||
embryo_program_vm_push(ed->collection->script);
|
||||
_edje_embryo_globals_init(ed);
|
||||
embryo_parameter_cell_push(ed->collection->script, (Embryo_Cell)et->val);
|
||||
ed->var_pool->timers = evas_list_remove(ed->var_pool->timers, et);
|
||||
ed->var_pool->timers = eina_list_remove(ed->var_pool->timers, et);
|
||||
fn = et->func;
|
||||
free(et);
|
||||
{
|
||||
|
@ -44,32 +44,34 @@ _edje_var_timer_cb(void *data)
|
|||
static int
|
||||
_edje_var_anim_cb(void *data)
|
||||
{
|
||||
Evas_List *l, *tl = NULL;
|
||||
Eina_List *l, *tl = NULL;
|
||||
double t;
|
||||
const void *tmp;
|
||||
|
||||
t = ecore_time_get();
|
||||
for (l = _edje_anim_list; l; l = l->next)
|
||||
tl = evas_list_append(tl, l->data);
|
||||
EINA_LIST_FOREACH(_edje_anim_list, l, tmp)
|
||||
tl = eina_list_append(tl, tmp);
|
||||
while (tl)
|
||||
{
|
||||
Edje *ed;
|
||||
Evas_List *tl2;
|
||||
Eina_List *tl2;
|
||||
Edje_Var_Animator *ea;
|
||||
|
||||
ed = tl->data;
|
||||
ed = eina_list_data_get(tl);
|
||||
_edje_ref(ed);
|
||||
_edje_block(ed);
|
||||
_edje_freeze(ed);
|
||||
tl = evas_list_remove(tl, ed);
|
||||
tl = eina_list_remove(tl, ed);
|
||||
if (!ed->var_pool) continue;
|
||||
tl2 = NULL;
|
||||
for (l = ed->var_pool->animators; l; l = l->next)
|
||||
tl2 = evas_list_append(tl2, l->data);
|
||||
EINA_LIST_FOREACH(ed->var_pool->animators, l, tmp)
|
||||
tl2 = eina_list_append(tl2, tmp);
|
||||
ed->var_pool->walking_list++;
|
||||
while (tl2)
|
||||
{
|
||||
Edje_Var_Animator *ea;
|
||||
|
||||
ea = tl2->data;
|
||||
ea = eina_list_data_get(tl2);
|
||||
if ((ed->var_pool) && (!ea->delete_me))
|
||||
{
|
||||
if ((!ed->paused) && (!ed->delete_me))
|
||||
|
@ -99,30 +101,27 @@ _edje_var_anim_cb(void *data)
|
|||
if (v == 1.0) ea->delete_me = 1;
|
||||
}
|
||||
}
|
||||
tl2 = evas_list_remove(tl2, ea);
|
||||
tl2 = eina_list_remove(tl2, ea);
|
||||
if (ed->block_break)
|
||||
{
|
||||
evas_list_free(tl2);
|
||||
eina_list_free(tl2);
|
||||
break;
|
||||
}
|
||||
}
|
||||
ed->var_pool->walking_list--;
|
||||
for (l = ed->var_pool->animators; l;)
|
||||
EINA_LIST_FOREACH(ed->var_pool->animators, l, ea)
|
||||
{
|
||||
Edje_Var_Animator *ea;
|
||||
|
||||
ea = l->data;
|
||||
if (ea->delete_me)
|
||||
{
|
||||
l = l->next;
|
||||
ed->var_pool->animators = evas_list_remove(ed->var_pool->animators, ea);
|
||||
l = eina_list_next(l);
|
||||
ed->var_pool->animators = eina_list_remove(ed->var_pool->animators, ea);
|
||||
free(ea);
|
||||
}
|
||||
else
|
||||
l = l->next;
|
||||
l = eina_list_next(l);
|
||||
}
|
||||
if (!ed->var_pool->animators)
|
||||
_edje_anim_list = evas_list_remove(_edje_anim_list, ed);
|
||||
_edje_anim_list = eina_list_remove(_edje_anim_list, ed);
|
||||
_edje_unblock(ed);
|
||||
_edje_thaw(ed);
|
||||
_edje_unref(ed);
|
||||
|
@ -195,8 +194,8 @@ _edje_var_shutdown(Edje *ed)
|
|||
{
|
||||
while (ed->var_pool->vars[i].data.l.v)
|
||||
{
|
||||
_edje_var_free(ed->var_pool->vars[i].data.l.v->data);
|
||||
ed->var_pool->vars[i].data.l.v = evas_list_remove_list(ed->var_pool->vars[i].data.l.v, ed->var_pool->vars[i].data.l.v);
|
||||
_edje_var_free(eina_list_data_get(ed->var_pool->vars[i].data.l.v));
|
||||
ed->var_pool->vars[i].data.l.v = eina_list_remove_list(ed->var_pool->vars[i].data.l.v, ed->var_pool->vars[i].data.l.v);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -206,14 +205,14 @@ _edje_var_shutdown(Edje *ed)
|
|||
{
|
||||
Edje_Var_Timer *et;
|
||||
|
||||
et = ed->var_pool->timers->data;
|
||||
et = eina_list_data_get(ed->var_pool->timers);
|
||||
ecore_timer_del(et->timer);
|
||||
free(et);
|
||||
ed->var_pool->timers = evas_list_remove(ed->var_pool->timers, et);
|
||||
ed->var_pool->timers = eina_list_remove(ed->var_pool->timers, et);
|
||||
}
|
||||
if (ed->var_pool->animators)
|
||||
{
|
||||
_edje_anim_list = evas_list_remove(_edje_anim_list, ed);
|
||||
_edje_anim_list = eina_list_remove(_edje_anim_list, ed);
|
||||
if (!_edje_anim_list)
|
||||
{
|
||||
if (_edje_animator)
|
||||
|
@ -227,9 +226,9 @@ _edje_var_shutdown(Edje *ed)
|
|||
{
|
||||
Edje_Var_Animator *ea;
|
||||
|
||||
ea = ed->var_pool->animators->data;
|
||||
ea = eina_list_data_get(ed->var_pool->animators);
|
||||
free(ea);
|
||||
ed->var_pool->animators = evas_list_remove(ed->var_pool->animators, ea);
|
||||
ed->var_pool->animators = eina_list_remove(ed->var_pool->animators, ea);
|
||||
}
|
||||
free(ed->var_pool);
|
||||
ed->var_pool = NULL;
|
||||
|
@ -532,7 +531,7 @@ _edje_var_list_var_append(Edje *ed, int id, Edje_Var *var)
|
|||
id -= EDJE_VAR_MAGIC_BASE;
|
||||
if ((id < 0) || (id >= ed->var_pool->size)) return;
|
||||
if (ed->var_pool->vars[id].type != EDJE_VAR_LIST) return;
|
||||
ed->var_pool->vars[id].data.l.v = evas_list_append(ed->var_pool->vars[id].data.l.v, var);
|
||||
ed->var_pool->vars[id].data.l.v = eina_list_append(ed->var_pool->vars[id].data.l.v, var);
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -543,7 +542,7 @@ _edje_var_list_var_prepend(Edje *ed, int id, Edje_Var *var)
|
|||
id -= EDJE_VAR_MAGIC_BASE;
|
||||
if ((id < 0) || (id >= ed->var_pool->size)) return;
|
||||
if (ed->var_pool->vars[id].type != EDJE_VAR_LIST) return;
|
||||
ed->var_pool->vars[id].data.l.v = evas_list_prepend(ed->var_pool->vars[id].data.l.v, var);
|
||||
ed->var_pool->vars[id].data.l.v = eina_list_prepend(ed->var_pool->vars[id].data.l.v, var);
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -554,7 +553,7 @@ _edje_var_list_var_append_relative(Edje *ed, int id, Edje_Var *var, Edje_Var *re
|
|||
id -= EDJE_VAR_MAGIC_BASE;
|
||||
if ((id < 0) || (id >= ed->var_pool->size)) return;
|
||||
if (ed->var_pool->vars[id].type != EDJE_VAR_LIST) return;
|
||||
ed->var_pool->vars[id].data.l.v = evas_list_append_relative(ed->var_pool->vars[id].data.l.v, var, relative);
|
||||
ed->var_pool->vars[id].data.l.v = eina_list_append_relative(ed->var_pool->vars[id].data.l.v, var, relative);
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -565,7 +564,7 @@ _edje_var_list_var_prepend_relative(Edje *ed, int id, Edje_Var *var, Edje_Var *r
|
|||
id -= EDJE_VAR_MAGIC_BASE;
|
||||
if ((id < 0) || (id >= ed->var_pool->size)) return;
|
||||
if (ed->var_pool->vars[id].type != EDJE_VAR_LIST) return;
|
||||
ed->var_pool->vars[id].data.l.v = evas_list_prepend_relative(ed->var_pool->vars[id].data.l.v, var, relative);
|
||||
ed->var_pool->vars[id].data.l.v = eina_list_prepend_relative(ed->var_pool->vars[id].data.l.v, var, relative);
|
||||
}
|
||||
|
||||
Edje_Var *
|
||||
|
@ -576,7 +575,7 @@ _edje_var_list_nth(Edje *ed, int id, int n)
|
|||
id -= EDJE_VAR_MAGIC_BASE;
|
||||
if ((id < 0) || (id >= ed->var_pool->size)) return NULL;
|
||||
if (ed->var_pool->vars[id].type != EDJE_VAR_LIST) return NULL;
|
||||
return evas_list_nth(ed->var_pool->vars[id].data.l.v, n);
|
||||
return eina_list_nth(ed->var_pool->vars[id].data.l.v, n);
|
||||
}
|
||||
|
||||
int
|
||||
|
@ -589,7 +588,7 @@ _edje_var_list_count_get(Edje *ed, int id)
|
|||
if (ed->var_pool->vars[id].type == EDJE_VAR_NONE)
|
||||
ed->var_pool->vars[id].type = EDJE_VAR_LIST;
|
||||
else if (ed->var_pool->vars[id].type != EDJE_VAR_LIST) return 0;
|
||||
return evas_list_count(ed->var_pool->vars[id].data.l.v);
|
||||
return eina_list_count(ed->var_pool->vars[id].data.l.v);
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -603,13 +602,13 @@ _edje_var_list_remove_nth(Edje *ed, int id, int n)
|
|||
ed->var_pool->vars[id].type = EDJE_VAR_LIST;
|
||||
else if (ed->var_pool->vars[id].type != EDJE_VAR_LIST) return;
|
||||
{
|
||||
Evas_List *nth;
|
||||
Eina_List *nth;
|
||||
|
||||
nth = evas_list_nth_list(ed->var_pool->vars[id].data.l.v, n);
|
||||
nth = eina_list_nth_list(ed->var_pool->vars[id].data.l.v, n);
|
||||
if (nth)
|
||||
{
|
||||
_edje_var_free(nth->data);
|
||||
ed->var_pool->vars[id].data.l.v = evas_list_remove_list(ed->var_pool->vars[id].data.l.v, nth);
|
||||
_edje_var_free(eina_list_data_get(nth));
|
||||
ed->var_pool->vars[id].data.l.v = eina_list_remove_list(ed->var_pool->vars[id].data.l.v, nth);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -956,23 +955,20 @@ _edje_var_timer_add(Edje *ed, double in, const char *fname, int val)
|
|||
free(et);
|
||||
return 0;
|
||||
}
|
||||
ed->var_pool->timers = evas_list_prepend(ed->var_pool->timers, et);
|
||||
ed->var_pool->timers = eina_list_prepend(ed->var_pool->timers, et);
|
||||
return et->id;
|
||||
}
|
||||
|
||||
static Edje_Var_Timer *
|
||||
_edje_var_timer_find(Edje *ed, int id)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Var_Timer *et;
|
||||
|
||||
if (!ed->var_pool) return NULL;
|
||||
|
||||
for (l = ed->var_pool->timers; l; l = l->next)
|
||||
{
|
||||
Edje_Var_Timer *et = l->data;
|
||||
|
||||
if (et->id == id) return et;
|
||||
}
|
||||
EINA_LIST_FOREACH(ed->var_pool->timers, l, et)
|
||||
if (et->id == id) return et;
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
@ -985,7 +981,7 @@ _edje_var_timer_del(Edje *ed, int id)
|
|||
et = _edje_var_timer_find(ed, id);
|
||||
if (!et) return;
|
||||
|
||||
ed->var_pool->timers = evas_list_remove(ed->var_pool->timers, et);
|
||||
ed->var_pool->timers = eina_list_remove(ed->var_pool->timers, et);
|
||||
ecore_timer_del(et->timer);
|
||||
free(et);
|
||||
}
|
||||
|
@ -1008,8 +1004,8 @@ _edje_var_anim_add(Edje *ed, double len, const char *fname, int val)
|
|||
ea->edje = ed;
|
||||
ea->func = fn;
|
||||
ea->val = val;
|
||||
_edje_anim_list = evas_list_append(_edje_anim_list, ed);
|
||||
ed->var_pool->animators = evas_list_prepend(ed->var_pool->animators, ea);
|
||||
_edje_anim_list = eina_list_append(_edje_anim_list, ed);
|
||||
ed->var_pool->animators = eina_list_prepend(ed->var_pool->animators, ea);
|
||||
if (!_edje_animator)
|
||||
_edje_animator = ecore_animator_add(_edje_var_anim_cb, NULL);
|
||||
return ea->id;
|
||||
|
@ -1018,16 +1014,13 @@ _edje_var_anim_add(Edje *ed, double len, const char *fname, int val)
|
|||
static Edje_Var_Animator *
|
||||
_edje_var_anim_find(Edje *ed, int id)
|
||||
{
|
||||
Evas_List *l;
|
||||
Eina_List *l;
|
||||
Edje_Var_Animator *ea;
|
||||
|
||||
if (!ed->var_pool) return NULL;
|
||||
|
||||
for (l = ed->var_pool->animators; l; l = l->next)
|
||||
{
|
||||
Edje_Var_Animator *ea = l->data;
|
||||
|
||||
if (ea->id == id) return ea;
|
||||
}
|
||||
EINA_LIST_FOREACH(ed->var_pool->animators, l, ea)
|
||||
if (ea->id == id) return ea;
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
@ -1046,12 +1039,12 @@ _edje_var_anim_del(Edje *ed, int id)
|
|||
return;
|
||||
}
|
||||
|
||||
ed->var_pool->animators = evas_list_remove(ed->var_pool->animators, ea);
|
||||
ed->var_pool->animators = eina_list_remove(ed->var_pool->animators, ea);
|
||||
free(ea);
|
||||
|
||||
if (ed->var_pool->animators) return;
|
||||
|
||||
_edje_anim_list = evas_list_remove(_edje_anim_list, ed);
|
||||
_edje_anim_list = eina_list_remove(_edje_anim_list, ed);
|
||||
if (!_edje_anim_list)
|
||||
{
|
||||
if (_edje_animator)
|
||||
|
|
Loading…
Reference in New Issue