add a DEL callback - called at the very start of object deleteion.

SVN revision: 31942
This commit is contained in:
Carsten Haitzler 2007-10-03 04:09:36 +00:00
parent 64f3e597e0
commit e6aa181b56
2 changed files with 4 additions and 2 deletions

View File

@ -35,7 +35,7 @@ typedef enum _Evas_Callback_Type
EVAS_CALLBACK_MOUSE_UP, /**< Mouse Button Up Event */
EVAS_CALLBACK_MOUSE_MOVE, /**< Mouse Move Event */
EVAS_CALLBACK_MOUSE_WHEEL, /**< Mouse Wheel Event */
EVAS_CALLBACK_FREE, /**< Object Being Freed */
EVAS_CALLBACK_FREE, /**< Object Being Freed (Called after Del) */
EVAS_CALLBACK_KEY_DOWN, /**< Key Press Event */
EVAS_CALLBACK_KEY_UP, /**< Key Release Event */
EVAS_CALLBACK_FOCUS_IN, /**< Focus In Event */
@ -44,7 +44,8 @@ typedef enum _Evas_Callback_Type
EVAS_CALLBACK_HIDE, /**< Hide Event */
EVAS_CALLBACK_MOVE, /**< Move Event */
EVAS_CALLBACK_RESIZE, /**< Resize Event */
EVAS_CALLBACK_RESTACK /**< Restack Event */
EVAS_CALLBACK_RESTACK, /**< Restack Event */
EVAS_CALLBACK_DEL /**< Object Being Deleted (called before Free) */
} Evas_Callback_Type; /**< The type of event to trigger the callback */
typedef enum _Evas_Button_Flags

View File

@ -463,6 +463,7 @@ evas_object_del(Evas_Object *obj)
if (obj->delete_me) return;
evas_object_event_callback_call(obj, EVAS_CALLBACK_DEL, NULL);
if (obj->name) evas_object_name_set(obj, NULL);
if (!obj->layer)
{