}
/* Private Routines */
+static Eina_Bool
+_text_class_member_free(const Eina_Hash *hash __UNUSED__,
+ const void *key,
+ void *data,
+ void *fdata)
+{
+ _edje_text_class_member_direct_del(key, data);
+ return EINA_TRUE;
+}
void
_edje_del(Edje *ed)
free(cb);
}
- if (ed->members) eina_hash_free(ed->members);
+ if (ed->members)
+ {
+ eina_hash_foreach(ed->members, _text_class_member_free, NULL);
+ eina_hash_free(ed->members);
+ }
free(ed);
}
Edje_Text_Class *_edje_text_class_find(Edje *ed, const char *text_class);
void _edje_text_class_member_add(Edje *ed, const char *text_class);
void _edje_text_class_member_del(Edje *ed, const char *text_class);
+void _edje_text_class_member_direct_del(const char *text_class, Eina_List *lookup);
void _edje_text_class_members_free(void);
void _edje_text_class_hash_free(void);
evas_object_geometry_get(obj, &(ed->x), &(ed->y), &(ed->w), &(ed->h));
ed->obj = obj;
_edje_edjes = eina_list_append(_edje_edjes, obj);
+ fprintf(stderr, "living edje object: %i\n", eina_list_count(_edje_edjes));
/*
{
Eina_List *l;
}
void
+_edje_text_class_member_direct_del(const char *text_class,
+ Eina_List *lookup)
+{
+ Eina_List *members;
+
+ members = eina_hash_find(_edje_text_class_member_hash, text_class);
+ members = eina_list_remove_list(members, lookup);
+ eina_hash_set(_edje_text_class_member_hash, text_class, members);
+}
+
+void
_edje_text_class_member_add(Edje *ed, const char *text_class)
{
Eina_List *members;