Enlightenment CVS committal
Author : ningerso
Project : e17
Module : libs/ewl
Dir : e17/libs/ewl/src/lib
Modified Files:
ewl_embed.c ewl_embed.h
Log Message:
Updated embed to accept DND data with type specified.
===================================================================
RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_embed.c,v
retrieving revision 1.76
retrieving revision 1.77
diff -u -3 -r1.76 -r1.77
--- ewl_embed.c 5 Sep 2006 02:14:24 -0000 1.76
+++ ewl_embed.c 7 Sep 2006 18:53:09 -0000 1.77
@@ -713,8 +713,9 @@
widget = ewl_container_child_at_recursive_get(EWL_CONTAINER(embed), x,
y);
if (widget) {
Ewl_Widget *parent;
-
-
+
+
+ embed->dnd_widget = widget;
if (internal) {
Ewl_Widget_Drag cb;
@@ -728,7 +729,7 @@
/* Handle external drops */
ev.data = NULL;
}
-
+
parent = widget;
while (parent) {
ewl_callback_call_with_event_data(parent,
@@ -757,7 +758,7 @@
ewl_embed_dnd_position_feed(Ewl_Embed *embed, int x, int y, int* px, int* py,
int* pw, int* ph)
{
Ewl_Widget *widget = NULL;
- Ewl_Event_Mouse_Move ev;
+ Ewl_Event_Dnd_Position ev;
DENTER_FUNCTION(DLEVEL_STABLE);
DCHECK_PARAM_PTR("embed", embed);
@@ -908,7 +909,7 @@
* @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_embed_selection_data_feed(Ewl_Embed *embed, char *type, void *data,
unsigned int len)
{
Ewl_Event_Dnd_Data ev;
@@ -917,17 +918,21 @@
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);
+ if (ewl_dnd_accepts_types_contains(embed->dnd_widget, type)) {
+ /*
+ * setup the event struct
+ */
+ ev.type = type;
+ ev.data = data;
+ ev.len = len;
+ ewl_callback_call_with_event_data(embed->dnd_widget,
+ EWL_CALLBACK_DND_DATA,
+ &ev);
+ }
}
DLEAVE_FUNCTION(DLEVEL_STABLE);
===================================================================
RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_embed.h,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -3 -r1.22 -r1.23
--- ewl_embed.h 5 Sep 2006 02:14:24 -0000 1.22
+++ ewl_embed.h 7 Sep 2006 18:53:09 -0000 1.23
@@ -103,6 +103,7 @@
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* embed, int x, int y, int
internal);
void ewl_embed_dnd_data_feed(Ewl_Embed* embed, void *data, unsigned
int len);
+void ewl_embed_selection_data_feed(Ewl_Embed *embed, char *type,
void *data, unsigned int len);
void ewl_embed_mouse_out_feed(Ewl_Embed *embed, int x, int y,
unsigned int modifiers);
-------------------------------------------------------------------------
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
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs