Enlightenment CVS committal

Author  : rbdpngn
Project : e17
Module  : libs/ewl

Dir     : e17/libs/ewl/src


Modified Files:
        ewl_events.c 


Log Message:
Fix some build issues with the FB engine.

===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_events.c,v
retrieving revision 1.60
retrieving revision 1.61
diff -u -3 -r1.60 -r1.61
--- ewl_events.c        10 Apr 2004 18:22:31 -0000      1.60
+++ ewl_events.c        12 Apr 2004 13:07:23 -0000      1.61
@@ -19,7 +19,7 @@
 extern Ewl_Widget     *last_focused;
 extern Ewl_Widget     *dnd_widget;
 
-extern Ecore_List       *embed_list;;
+extern Ecore_List       *ewl_embed_list;;
 
 #ifdef HAVE_EVAS_ENGINE_SOFTWARE_X11_H
 int ewl_ev_x_window_expose(void *data, int type, void *_ev);
@@ -100,9 +100,9 @@
                                        ewl_ev_fb_key_down, NULL);
                ecore_event_handler_add(ECORE_FB_EVENT_KEY_UP, ewl_ev_fb_key_up,
                                        NULL);
-               ecore_event_handler_add(ECORE_FB_EVENT_MOUSE_DOWN,
+               ecore_event_handler_add(ECORE_FB_EVENT_MOUSE_BUTTON_DOWN,
                                        ewl_ev_fb_mouse_down, NULL);
-               ecore_event_handler_add(ECORE_FB_EVENT_MOUSE_UP,
+               ecore_event_handler_add(ECORE_FB_EVENT_MOUSE_BUTTON_UP,
                                        ewl_ev_fb_mouse_up, NULL);
                ecore_event_handler_add(ECORE_FB_EVENT_MOUSE_MOVE,
                                        ewl_ev_fb_mouse_move, NULL);
@@ -463,7 +463,6 @@
  */
 int ewl_ev_fb_key_down(void *data, int type, void *e)
 {
-       Ewl_Widget     *temp;
        Ewl_Embed      *embed;
        Ecore_Fb_Event_Key_Down *ev;
 
@@ -471,12 +470,12 @@
 
        ev = e;
 
-       embed = ecore_list_goto_first(embed_list);
+       embed = ecore_list_goto_first(ewl_embed_list);
 
        if (!embed)
                DRETURN_INT(TRUE, DLEVEL_STABLE);
 
-       ewl_ev_feed_key_down(embed, ev->keyname);
+       ewl_embed_feed_key_down(embed, ev->keyname, key_modifiers);
 
        DRETURN_INT(TRUE, DLEVEL_STABLE);
 }
@@ -492,7 +491,6 @@
  */
 int ewl_ev_fb_key_up(void *data, int type, void *e)
 {
-       Ewl_Widget     *temp;
        Ewl_Embed      *embed;
        Ecore_Fb_Event_Key_Up *ev;
 
@@ -500,12 +498,12 @@
 
        ev = e;
 
-       embed = ecore_list_goto_first(embed_list);
+       embed = ecore_list_goto_first(ewl_embed_list);
 
        if (!embed)
                DRETURN_INT(TRUE, DLEVEL_STABLE);
 
-       ewl_ev_feed_key_down(embed, ev->keyname);
+       ewl_embed_feed_key_down(embed, ev->keyname, key_modifiers);
 
        DRETURN_INT(TRUE, DLEVEL_STABLE);
 }
@@ -522,18 +520,53 @@
  */
 int ewl_ev_fb_mouse_down(void *data, int type, void *e)
 {
-       Ewl_Embed      *embed;
+       int clicks = 1;
+       Ewl_Embed *embed;
        Ecore_Fb_Event_Mouse_Button_Down *ev;
 
        DENTER_FUNCTION(DLEVEL_STABLE);
 
        ev = e;
 
-       embed = ewl_embed_find_by_evas_window(ev->win);
+       embed = ecore_list_goto_first(ewl_embed_list);
        if (!embed)
                DRETURN_INT(TRUE, DLEVEL_STABLE);
 
-       ewl_embed_feed_mouse_down(embed, ev->button, ev->x, ev->y);
+       if (ev->double_click)
+               clicks = 2;
+       if (ev->triple_click)
+               clicks = 3;
+
+       ewl_embed_feed_mouse_down(embed, ev->button, clicks, ev->x, ev->y,
+                                 key_modifiers);
+
+       DRETURN_INT(TRUE, DLEVEL_STABLE);
+}
+
+/**
+ * @param data: user specified data passed to the function
+ * @param type: the type of event triggering the function call
+ * @param e: the mouse up event information
+ * @return Returns no value.
+ * @brief Handles mouse up events in windows
+ *
+ * Dispatches the mouse up event to the appropriate ewl window.
+ * Also determines the widgets clicked state.
+ */
+int ewl_ev_fb_mouse_up(void *data, int type, void *e)
+{
+       Ewl_Embed      *embed;
+       Ecore_X_Event_Mouse_Button_Up *ev;
+
+       DENTER_FUNCTION(DLEVEL_STABLE);
+
+       ev = e;
+
+       embed = ecore_list_goto_first(ewl_embed_list);
+       if (!embed)
+               DRETURN_INT(TRUE, DLEVEL_STABLE);
+
+       ewl_embed_feed_mouse_up(embed, ev->button, ev->x, ev->y, key_modifiers);
 
        DRETURN_INT(TRUE, DLEVEL_STABLE);
 }
@@ -549,7 +582,6 @@
  */
 int ewl_ev_fb_mouse_move(void *data, int type, void *e)
 {
-       Ewl_Widget     *widget;
        Ewl_Embed      *embed;
        Ecore_Fb_Event_Mouse_Move *ev;
 
@@ -557,11 +589,11 @@
 
        ev = e;
 
-       embed = ewl_embed_find_by_evas_window(ev->win);
+       embed = ecore_list_goto_first(ewl_embed_list);
        if (!embed)
                DRETURN_INT(TRUE, DLEVEL_STABLE);
 
-       ewl_embed_feed_mouse_move(embed, ev->x, ev->y);
+       ewl_embed_feed_mouse_move(embed, ev->x, ev->y, key_modifiers);
 
        DRETURN_INT(TRUE, DLEVEL_STABLE);
 }




-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to