The parent of an object.

Parents keep references to their children and will release these references when destroyed. In this way, objects can be assigned to a parent upon creation, tying their life cycle so the programmer does not need to worry about destroying the child object. In order to destroy an object before its parent, set the parent to NULL and use efl_unref(), or use efl_del() directly.

The Eo parent is conceptually user set. That means that a parent should not be changed behind the scenes in an unexpected way.

For example: If you have a widget which can swallow objects into an internal box, the parent of the swallowed objects should be the widget, not the internal box. The user is not even aware of the existence of the internal box.

Since 1.22


  • parent - The new parent.

Overridden from Efl.Object.parent (set).


@property parent {
    get {}
    set {}
    values {
        parent: Efl.Object;

C signature

Efl_Object *efl_parent_get(const Eo *obj);
void efl_parent_set(Eo *obj, Efl_Object *parent);

Implemented by