ecore: rely on Efl.Object.invalidate instead of a hack for Efl.Model.Container.Item.

This commit is contained in:
Cedric Bail 2018-03-07 10:59:20 -08:00
parent 83251edae7
commit 83233a976d
3 changed files with 5 additions and 10 deletions

View File

@ -90,11 +90,7 @@ _efl_model_container_efl_object_destructor(Eo *obj, Efl_Model_Container_Data *sd
EINA_LIST_FREE(sd->children, child)
{
if (child)
{
efl_model_container_item_invalidate(child);
efl_parent_set(child, NULL);
}
if (child) efl_parent_set(child, NULL);
}
eina_array_free(sd->defined_properties);

View File

@ -23,8 +23,10 @@ _efl_model_container_item_define(Eo *obj EINA_UNUSED, Efl_Model_Container_Item_D
}
EOLIAN static void
_efl_model_container_item_invalidate(Eo *obj EINA_UNUSED, Efl_Model_Container_Item_Data *sd)
_efl_model_container_item_efl_object_invalidate(Eo *obj, Efl_Model_Container_Item_Data *sd)
{
efl_invalidate(efl_super(obj, MY_CLASS));
sd->parent_data = NULL;
sd->index = 0;
}

View File

@ -19,10 +19,6 @@ class Efl.Model.Container.Item (Efl.Object, Efl.Model)
children.]]
}
}
invalidate {
[[Invalidates the object preventing it from using the given parent
data.]]
}
}
implements {
Efl.Model.properties { get; }
@ -32,6 +28,7 @@ class Efl.Model.Container.Item (Efl.Object, Efl.Model)
Efl.Model.child_del;
Efl.Model.children_slice_get;
Efl.Model.children_count_get;
Efl.Object.invalidate;
}
constructors {
.define;