iface add() before smart add() is better.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/evas@73991
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
{
const char *name; /**< Name of the given interface */
unsigned private_size; /**< Size, in bytes, of the interface's private dada blob. This will be allocated and freed automatically for you. Get it with evas_object_smart_interface_data_get(). */
- Eina_Bool (*add)(Evas_Object *obj); /**< Function to be called at object creation time */
- void (*del)(Evas_Object *obj); /**< Function to be called at object deletion time */
+ Eina_Bool (*add)(Evas_Object *obj); /**< Function to be called at object creation time. This will take place @b before the object's smart @c add() function. */
+ void (*del)(Evas_Object *obj); /**< Function to be called at object deletion time. This will take place @b after the object's smart @c del() function. */
};
/**
_evas_smart_class_ifaces_private_data_alloc(obj, s);
- if (s->smart_class->add) s->smart_class->add(obj);
-
for (i = 0; i < s->interfaces.size; i++)
{
const Evas_Smart_Interface *iface;
}
}
+ if (s->smart_class->add) s->smart_class->add(obj);
+
return obj;
}