Add callback when drag start in item containers

This commit is contained in:
Daniel Zaoui 2013-11-28 16:05:28 +02:00
parent d0375f8550
commit cfdb3eec4d
2 changed files with 12 additions and 0 deletions

View File

@ -3950,6 +3950,7 @@ _cont_obj_drag_start(void *data)
Item_Container_Drag_Info *st = data;
st->tm = NULL;
Elm_Drag_User_Info *info = &st->user_info;
if (info->dragstart) info->dragstart(info->startcbdata, st->obj);
elm_widget_scroll_freeze_push(st->obj);
evas_object_event_callback_del_full
(st->obj, EVAS_CALLBACK_MOUSE_MOVE, _cont_obj_mouse_move, st);

View File

@ -187,6 +187,15 @@ typedef void (*Elm_Drag_Accept) (void *data, Evas_Object *obj, Eina_Bool doaccep
*/
typedef void (*Elm_Drag_Pos) (void *data, Evas_Object *obj, Evas_Coord x, Evas_Coord y, Elm_Xdnd_Action action);
/**
* Callback called when a drag starts from an item container
*
* @param data Application specific data
* @param obj The object where the drag started
* @since 1.8
*/
typedef void (*Elm_Drag_Start) (void *data, Evas_Object *obj);
/**
* @brief Set copy data for a widget.
*
@ -424,6 +433,8 @@ struct _Elm_Drag_User_Info
Elm_Xdnd_Action action;
Elm_Drag_Icon_Create_Cb createicon;
void *createdata;
Elm_Drag_Start dragstart;
void *startcbdata;
Elm_Drag_Pos dragpos;
void *dragdata;
Elm_Drag_Accept acceptcb;