Enlightenment CVS committal Author : ningerso Project : e17 Module : libs/ewl
Dir : e17/libs/ewl/src/lib Modified Files: ewl_dnd.c ewl_dnd.h ewl_embed.c ewl_embed.h ewl_enums.h ewl_events.h ewl_widget.c Log Message: Fix compilation with debugging disabled. Additional DND work. =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_dnd.c,v retrieving revision 1.16 retrieving revision 1.17 diff -u -3 -r1.16 -r1.17 --- ewl_dnd.c 15 Aug 2006 16:41:51 -0000 1.16 +++ ewl_dnd.c 5 Sep 2006 02:14:24 -0000 1.17 @@ -7,6 +7,12 @@ #define EWL_DND_WINDOW_ROOT 0 +int EWL_CALLBACK_DND_POSITION = 0; /**< A DND position event **/ +int EWL_CALLBACK_DND_ENTER = 0; /**< On enter of a widget **/ +int EWL_CALLBACK_DND_LEAVE = 0; /**< On exit of a widget **/ +int EWL_CALLBACK_DND_DROP = 0; /**< Drop event **/ +int EWL_CALLBACK_DND_DATA = 0; /**< Data event **/ + static int ewl_dragging_current = 0; static int ewl_dnd_move_count = 0; static Ecore_Evas *ewl_dnd_drag_canvas; @@ -38,6 +44,12 @@ ewl_dnd_init(void) { DENTER_FUNCTION(DLEVEL_STABLE); + + EWL_CALLBACK_DND_POSITION = ewl_callback_type_add(); + EWL_CALLBACK_DND_ENTER = ewl_callback_type_add(); + EWL_CALLBACK_DND_LEAVE = ewl_callback_type_add(); + EWL_CALLBACK_DND_DROP = ewl_callback_type_add(); + EWL_CALLBACK_DND_DATA = ewl_callback_type_add(); ewl_dnd_position_hash = ecore_hash_new(ecore_direct_hash, ecore_direct_compare); =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_dnd.h,v retrieving revision 1.13 retrieving revision 1.14 diff -u -3 -r1.13 -r1.14 --- ewl_dnd.h 6 Aug 2006 10:01:57 -0000 1.13 +++ ewl_dnd.h 5 Sep 2006 02:14:24 -0000 1.14 @@ -7,6 +7,12 @@ * @{ */ +extern int EWL_CALLBACK_DND_POSITION; +extern int EWL_CALLBACK_DND_ENTER; +extern int EWL_CALLBACK_DND_LEAVE; +extern int EWL_CALLBACK_DND_DROP; +extern int EWL_CALLBACK_DND_DATA; + int ewl_dnd_init(void); void ewl_dnd_shutdown(void); =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_embed.c,v retrieving revision 1.75 retrieving revision 1.76 diff -u -3 -r1.75 -r1.76 --- ewl_embed.c 15 Aug 2006 15:06:51 -0000 1.75 +++ ewl_embed.c 5 Sep 2006 02:14:24 -0000 1.76 @@ -901,6 +901,39 @@ } /** + * @param embed: the embed where the selection data event is to occur + * @param data: a pointer to the data received that generated the event + * @param len: length of the data that generated the event + * @return Returns no value. + * @brief Sends the event for selection data received into an embed. + */ +void +ewl_embed_selection_data_feed(Ewl_Embed *embed, void *data, unsigned int len) +{ + Ewl_Event_Dnd_Data ev; + + DENTER_FUNCTION(DLEVEL_STABLE); + DCHECK_PARAM_PTR("embed", embed); + DCHECK_PARAM_PTR("data", data); + DCHECK_TYPE("embed", embed, EWL_EMBED_TYPE); + + /* + * setup the event struct + */ + ev.data = data; + ev.len = len; + + /* + * If a widget is expecting DND data, send the data to the widget + */ + if (embed->dnd_widget) { + ewl_callback_call_with_event_data(embed->dnd_widget, EWL_CALLBACK_DND_DATA, &ev); + } + + DLEAVE_FUNCTION(DLEVEL_STABLE); +} + +/** * @param path: the font path to add to the embeds * @return Returns no value. * @brief Add a font path to all embeds after realized =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_embed.h,v retrieving revision 1.21 retrieving revision 1.22 diff -u -3 -r1.21 -r1.22 --- ewl_embed.h 7 Jul 2006 21:06:26 -0000 1.21 +++ ewl_embed.h 5 Sep 2006 02:14:24 -0000 1.22 @@ -101,7 +101,8 @@ unsigned int modifiers); void ewl_embed_dnd_position_feed(Ewl_Embed *embed, int x, int y,int*,int*,int*,int*); -void ewl_embed_dnd_drop_feed(Ewl_Embed* , int x, int y, int internal); +void ewl_embed_dnd_drop_feed(Ewl_Embed* embed, int x, int y, int internal); +void ewl_embed_dnd_data_feed(Ewl_Embed* embed, void *data, unsigned int len); void ewl_embed_mouse_out_feed(Ewl_Embed *embed, int x, int y, unsigned int modifiers); =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_enums.h,v retrieving revision 1.52 retrieving revision 1.53 diff -u -3 -r1.52 -r1.53 --- ewl_enums.h 20 Aug 2006 21:09:05 -0000 1.52 +++ ewl_enums.h 5 Sep 2006 02:14:24 -0000 1.53 @@ -43,11 +43,6 @@ EWL_CALLBACK_WIDGET_ENABLE, /**< Widget has been re-enabled */ EWL_CALLBACK_WIDGET_DISABLE, /**< Widget no longer takes input */ - EWL_CALLBACK_DND_POSITION, /**< A DND position event **/ - EWL_CALLBACK_DND_ENTER, /**< On enter of a widget **/ - EWL_CALLBACK_DND_LEAVE, /**< On exit of a widget **/ - EWL_CALLBACK_DND_DROP, /**< Drop event **/ - EWL_CALLBACK_MAX /**< Flag to indicate last value */ }; =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_events.h,v retrieving revision 1.15 retrieving revision 1.16 diff -u -3 -r1.15 -r1.16 --- ewl_events.h 12 May 2006 01:24:39 -0000 1.15 +++ ewl_events.h 5 Sep 2006 02:14:24 -0000 1.16 @@ -207,6 +207,20 @@ typedef struct Ewl_Event_Dnd_Drop Ewl_Event_Dnd_Drop; /** + * Provides information about dnd drop data + */ +struct Ewl_Event_Dnd_Data +{ + void* data; /**< Data from drop source */ + unsigned int len; /**< Length of received data */ +}; + +/** + * The Ewl_Event_Dnd_Data type + */ +typedef struct Ewl_Event_Dnd_Data Ewl_Event_Dnd_Data; + +/** * The Ewl_Dialog_Evenet type */ typedef struct Ewl_Dialog_Event Ewl_Dialog_Event; =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_widget.c,v retrieving revision 1.97 retrieving revision 1.98 diff -u -3 -r1.97 -r1.98 --- ewl_widget.c 21 Aug 2006 01:36:38 -0000 1.97 +++ ewl_widget.c 5 Sep 2006 02:14:24 -0000 1.98 @@ -2046,7 +2046,7 @@ } } - DRETURN_PTR(ol, DLEVEL_STABLE) + DRETURN_PTR(ol, DLEVEL_STABLE); } /** ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs