Enlightenment CVS committal

Author  : raster
Project : e17
Module  : libs/ecore

Dir     : e17/libs/ecore/src/lib/ecore_x


Modified Files:
      Tag: SPLIT
        Ecore_X.h ecore_x.c ecore_x_events.c 


Log Message:


cleanup warnings
simplify event freeing for x module (less code, less worries)
optimise some of the event loop to only loop thru handlers, idlers, etc. for
deletion if the delete flag is set. not sure i can optimise this much more,
and even so i'm not sure anyone would ever notice if i could...


===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/Attic/Ecore_X.h,v
retrieving revision 1.1.2.6
retrieving revision 1.1.2.7
diff -u -3 -r1.1.2.6 -r1.1.2.7
--- Ecore_X.h   23 Jan 2003 11:12:18 -0000      1.1.2.6
+++ Ecore_X.h   23 Jan 2003 23:03:24 -0000      1.1.2.7
@@ -138,6 +138,8 @@
 struct _Ecore_X_Event_Window_Focus_In
 {
    Window  win;
+   
+   Time time;
 };
 
 struct _Ecore_X_Event_Window_Focus_Out
@@ -284,6 +286,8 @@
 
 int      ecore_x_init(const char *name);       
 Display *ecore_x_display_get(void);
+void     ecore_x_double_click_time_set(double t);
+double   ecore_x_double_click_time_get(void);
        
 void ecore_x_error_handler_set(void (*func) (void *data), const void *data);
 int  ecore_x_error_request_get(void);
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/Attic/ecore_x.c,v
retrieving revision 1.1.2.5
retrieving revision 1.1.2.6
diff -u -3 -r1.1.2.5 -r1.1.2.6
--- ecore_x.c   23 Jan 2003 11:12:18 -0000      1.1.2.5
+++ ecore_x.c   23 Jan 2003 23:03:24 -0000      1.1.2.6
@@ -200,6 +200,33 @@
    return _ecore_x_disp;
 }
 
+/**
+ * Set the timeout for double/triple click to be flagged
+ * @param t The time in seconds
+ * 
+ * This sets the time between clicks before the double_click flag is set in a 
+ * button down event. If 3 clicks occur within double this time then the 
+ * triple_click flag is also set.
+ */
+void
+ecore_x_double_click_time_set(double t)
+{
+   if (t < 0.0) t = 0.0;
+   _ecore_x_double_click_time = t;
+}
+
+/**
+ * Get the double/triple click timeout
+ * @return The timeout for double clicks in seconds
+ * 
+ * This returns the tiemout that can be set by ecore_x_double_click_time_set()
+ */
+double
+ecore_x_double_click_time_get(void)
+{
+   return _ecore_x_double_click_time;
+}
+
 static int
 _ecore_x_fd_handler(Ecore_Fd_Handler *fd_handler, void *data)
 {
===================================================================
RCS file: 
/cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/Attic/ecore_x_events.c,v
retrieving revision 1.1.2.3
retrieving revision 1.1.2.4
diff -u -3 -r1.1.2.3 -r1.1.2.4
--- ecore_x_events.c    23 Jan 2003 11:12:18 -0000      1.1.2.3
+++ ecore_x_events.c    23 Jan 2003 23:03:24 -0000      1.1.2.4
@@ -2,16 +2,12 @@
 #include "ecore_x_private.h"
 #include "Ecore_X.h"
 
-static void _ecore_x_event_handle_key_press_free(void *ev, void *data);
-static void _ecore_x_event_handle_key_release_free(void *ev, void *data);
-static void _ecore_x_event_handle_button_press_free(void *ev, void *data);
-static void _ecore_x_event_handle_button_release_free(void *ev, void *data);
-static void _ecore_x_event_handle_motion_notify_free(void *ev, void *data);
-static void _ecore_x_event_handle_enter_notify_free(void *ev, void *data);
-static void _ecore_x_event_handle_leave_notify_free(void *ev, void *data);
+static void _ecore_x_event_free_key_down(void *ev, void *data);
+static void _ecore_x_event_free_key_up(void *ev, void *data);
+static void _ecore_x_event_free_generic(void *ev, void *data);
 
 static void
-_ecore_x_event_handle_key_press_free(void *ev, void *data)
+_ecore_x_event_free_key_down(void *ev, void *data)
 {
    Ecore_X_Event_Key_Down *e;
 
@@ -21,6 +17,23 @@
    free(e);
 }
 
+static void
+_ecore_x_event_free_key_up(void *ev, void *data)
+{
+   Ecore_X_Event_Key_Up *e;
+
+   e = ev;
+   if (e->keyname) free(e->keyname);
+   if (e->key_compose) free(e->key_compose);
+   free(e);
+}
+
+static void
+_ecore_x_event_free_generic(void *ev, void *data)
+{
+   free(ev);
+}
+
 void
 _ecore_x_event_handle_key_press(XEvent *xevent)
 {
@@ -53,19 +66,7 @@
    e->subwin = xevent->xkey.subwindow;
    e->time = xevent->xkey.time;
    e->modifiers = xevent->xkey.state;
-   ecore_event_add(ECORE_EVENT_X_KEY_DOWN, e,
-                  _ecore_x_event_handle_key_press_free, NULL);
-}
-
-static void
-_ecore_x_event_handle_key_release_free(void *ev, void *data)
-{
-   Ecore_X_Event_Key_Up *e;
-
-   e = ev;
-   if (e->keyname) free(e->keyname);
-   if (e->key_compose) free(e->key_compose);
-   free(e);
+   ecore_event_add(ECORE_EVENT_X_KEY_DOWN, e, _ecore_x_event_free_key_down, NULL);
 }
 
 void
@@ -100,17 +101,7 @@
    e->subwin = xevent->xkey.subwindow;
    e->time = xevent->xkey.time;
    e->modifiers = xevent->xkey.state;
-   ecore_event_add(ECORE_EVENT_X_KEY_UP, e,
-                  _ecore_x_event_handle_key_release_free, NULL);
-}
-
-static void
-_ecore_x_event_handle_button_press_free(void *ev, void *data)
-{
-   Ecore_X_Event_Mouse_Button_Down *e;
-   
-   e = ev;
-   free(e);
+   ecore_event_add(ECORE_EVENT_X_KEY_UP, e, _ecore_x_event_free_key_up, NULL);
 }
 
 void
@@ -137,8 +128,7 @@
             e->win = xevent->xbutton.window;
             e->subwin = xevent->xbutton.subwindow;
             e->time = xevent->xbutton.time;
-            ecore_event_add(ECORE_EVENT_X_MOUSE_MOVE, e,
-                            _ecore_x_event_handle_motion_notify_free, NULL);
+            ecore_event_add(ECORE_EVENT_X_MOUSE_MOVE, e, _ecore_x_event_free_generic, 
+NULL);
          }
          {
             Ecore_X_Event_Mouse_Button_Down *e;
@@ -161,8 +151,7 @@
                  did_triple = 1;
                  e->triple_click = 1;
               }
-            ecore_event_add(ECORE_EVENT_X_MOUSE_BUTTON_DOWN, e,
-                            _ecore_x_event_handle_button_press_free, NULL);
+            ecore_event_add(ECORE_EVENT_X_MOUSE_BUTTON_DOWN, e, 
+_ecore_x_event_free_generic, NULL);
          }
        if (did_triple)
          {
@@ -177,15 +166,6 @@
      }
 }
 
-static void
-_ecore_x_event_handle_button_release_free(void *ev, void *data)
-{
-   Ecore_X_Event_Mouse_Button_Up *e;
-   
-   e = ev;
-   free(e);
-}
-
 void
 _ecore_x_event_handle_button_release(XEvent *xevent)
 {
@@ -203,8 +183,7 @@
             e->win = xevent->xbutton.window;
             e->subwin = xevent->xbutton.subwindow;
             e->time = xevent->xbutton.time;
-            ecore_event_add(ECORE_EVENT_X_MOUSE_MOVE, e,
-                            _ecore_x_event_handle_motion_notify_free, NULL);
+            ecore_event_add(ECORE_EVENT_X_MOUSE_MOVE, e, _ecore_x_event_free_generic, 
+NULL);
          }
          {
             Ecore_X_Event_Mouse_Button_Up *e;
@@ -218,21 +197,11 @@
             e->win = xevent->xbutton.window;
             e->subwin = xevent->xbutton.subwindow;
             e->time = xevent->xbutton.time;
-            ecore_event_add(ECORE_EVENT_X_MOUSE_BUTTON_UP, e,
-                            _ecore_x_event_handle_button_release_free, NULL);
+            ecore_event_add(ECORE_EVENT_X_MOUSE_BUTTON_UP, e, 
+_ecore_x_event_free_generic, NULL);
          }
      }
 }
 
-static void
-_ecore_x_event_handle_motion_notify_free(void *ev, void *data)
-{
-   Ecore_X_Event_Mouse_Move *e;
-   
-   e = ev;
-   free(e);
-}
-
 void
 _ecore_x_event_handle_motion_notify(XEvent *xevent)
 {
@@ -246,17 +215,7 @@
    e->win = xevent->xmotion.window;
    e->subwin = xevent->xmotion.subwindow;
    e->time = xevent->xmotion.time;
-   ecore_event_add(ECORE_EVENT_X_MOUSE_MOVE, e,
-                  _ecore_x_event_handle_motion_notify_free, NULL);
-}
-
-static void
-_ecore_x_event_handle_enter_notify_free(void *ev, void *data)
-{
-   Ecore_X_Event_Mouse_In *e;
-   
-   e = ev;
-   free(e);
+   ecore_event_add(ECORE_EVENT_X_MOUSE_MOVE, e, _ecore_x_event_free_generic, NULL);
 }
 
 void
@@ -273,8 +232,7 @@
        e->win = xevent->xcrossing.window;
        e->subwin = xevent->xcrossing.subwindow;
        e->time = xevent->xcrossing.time;
-       ecore_event_add(ECORE_EVENT_X_MOUSE_MOVE, e,
-                       _ecore_x_event_handle_motion_notify_free, NULL);
+       ecore_event_add(ECORE_EVENT_X_MOUSE_MOVE, e, _ecore_x_event_free_generic, 
+NULL);
      }
      {
        Ecore_X_Event_Mouse_In *e;
@@ -310,20 +268,10 @@
             e->notify.non_linear = 1;
          }
        e->time = xevent->xcrossing.time;
-       ecore_event_add(ECORE_EVENT_X_MOUSE_IN, e,
-                       _ecore_x_event_handle_enter_notify_free, NULL);
+       ecore_event_add(ECORE_EVENT_X_MOUSE_IN, e, _ecore_x_event_free_generic, NULL);
      }
 }
 
-static void
-_ecore_x_event_handle_leave_notify_free(void *ev, void *data)
-{
-   Ecore_X_Event_Mouse_Out *e;
-   
-   e = ev;
-   free(e);
-}
-
 void
 _ecore_x_event_handle_leave_notify(XEvent *xevent)
 {
@@ -338,8 +286,7 @@
        e->win = xevent->xcrossing.window;
        e->subwin = xevent->xcrossing.subwindow;
        e->time = xevent->xcrossing.time;
-       ecore_event_add(ECORE_EVENT_X_MOUSE_MOVE, e,
-                       _ecore_x_event_handle_motion_notify_free, NULL);
+       ecore_event_add(ECORE_EVENT_X_MOUSE_MOVE, e, _ecore_x_event_free_generic, 
+NULL);
      }
      {
        Ecore_X_Event_Mouse_Out *e;
@@ -375,8 +322,7 @@
             e->notify.non_linear = 1;
          }
        e->time = xevent->xcrossing.time;
-       ecore_event_add(ECORE_EVENT_X_MOUSE_OUT, e,
-                       _ecore_x_event_handle_leave_notify_free, NULL);
+       ecore_event_add(ECORE_EVENT_X_MOUSE_OUT, e, _ecore_x_event_free_generic, NULL);
      }
 }
 




-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to