Enlightenment CVS committal

Author  : raster
Project : e17
Module  : libs/ecore

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


Modified Files:
      Tag: SPLIT
        Ecore_Evas.h ecore_evas.c ecore_evas_fb.c ecore_evas_private.h 
        ecore_evas_x.c 


Log Message:


pre/post render callback hooks

===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_evas/Attic/Ecore_Evas.h,v
retrieving revision 1.1.2.17
retrieving revision 1.1.2.18
diff -u -3 -r1.1.2.17 -r1.1.2.18
--- Ecore_Evas.h        21 May 2003 00:01:39 -0000      1.1.2.17
+++ Ecore_Evas.h        16 Jul 2003 04:49:07 -0000      1.1.2.18
@@ -49,6 +49,8 @@
 void        ecore_evas_callback_focus_out_set(Ecore_Evas *ee, void (*func) 
(Ecore_Evas *ee));
 void        ecore_evas_callback_mouse_in_set(Ecore_Evas *ee, void (*func) (Ecore_Evas 
*ee));
 void        ecore_evas_callback_mouse_out_set(Ecore_Evas *ee, void (*func) 
(Ecore_Evas *ee));
+void        ecore_evas_callback_pre_render_set(Ecore_Evas *ee, void (*func) 
(Ecore_Evas *ee));
+void        ecore_evas_callback_post_render_set(Ecore_Evas *ee, void (*func) 
(Ecore_Evas *ee));
 Evas       *ecore_evas_get(Ecore_Evas *ee);
 void        ecore_evas_move(Ecore_Evas *ee, int x, int y);
 void        ecore_evas_resize(Ecore_Evas *ee, int w, int h);
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_evas/Attic/ecore_evas.c,v
retrieving revision 1.1.2.18
retrieving revision 1.1.2.19
diff -u -3 -r1.1.2.18 -r1.1.2.19
--- ecore_evas.c        21 May 2003 00:01:39 -0000      1.1.2.18
+++ ecore_evas.c        16 Jul 2003 04:49:07 -0000      1.1.2.19
@@ -285,6 +285,46 @@
  * FIXME: To be fixed.
  * <hr><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
  */
+void
+ecore_evas_callback_pre_render_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee))
+{
+   if (!ECORE_MAGIC_CHECK(ee, ECORE_MAGIC_EVAS))
+     {
+       ECORE_MAGIC_FAIL(ee, ECORE_MAGIC_EVAS,
+                        "ecore_evas_callback_pre_render_set");
+       return;
+     }
+   IFC(ee, fn_callback_pre_render_set) (ee, func);
+   IFE;
+   ee->func.fn_pre_render = func;
+}
+
+/**
+ * To be documented.
+ *
+ * FIXME: To be fixed.
+ * <hr><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
+ */
+void
+ecore_evas_callback_post_render_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee))
+{
+   if (!ECORE_MAGIC_CHECK(ee, ECORE_MAGIC_EVAS))
+     {
+       ECORE_MAGIC_FAIL(ee, ECORE_MAGIC_EVAS,
+                        "ecore_evas_callback_post_render_set");
+       return;
+     }
+   IFC(ee, fn_callback_post_render_set) (ee, func);
+   IFE;
+   ee->func.fn_post_render = func;
+}
+
+/**
+ * To be documented.
+ *
+ * FIXME: To be fixed.
+ * <hr><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
+ */
 Evas *
 ecore_evas_get(Ecore_Evas *ee)
 {
===================================================================
RCS file: 
/cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_evas/Attic/ecore_evas_fb.c,v
retrieving revision 1.1.2.13
retrieving revision 1.1.2.14
diff -u -3 -r1.1.2.13 -r1.1.2.14
--- ecore_evas_fb.c     21 May 2003 00:01:39 -0000      1.1.2.13
+++ ecore_evas_fb.c     16 Jul 2003 04:49:07 -0000      1.1.2.14
@@ -174,7 +174,11 @@
        
        ee = (Ecore_Evas *)l;
        if (ee->visible)
-         evas_render(ee->evas);
+         {
+            if (ee->func.fn_pre_render) ee->func.fn_pre_render(ee);
+            evas_render(ee->evas);
+            if (ee->func.fn_post_render) ee->func.fn_post_render(ee);
+         }
      }
    return 1;
 }
@@ -380,6 +384,8 @@
 static const Ecore_Evas_Engine_Func _ecore_fb_engine_func =
 {
    _ecore_evas_fb_free,
+     NULL,
+     NULL,
      NULL,
      NULL,
      NULL,
===================================================================
RCS file: 
/cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_evas/Attic/ecore_evas_private.h,v
retrieving revision 1.1.2.16
retrieving revision 1.1.2.17
diff -u -3 -r1.1.2.16 -r1.1.2.17
--- ecore_evas_private.h        28 May 2003 05:53:08 -0000      1.1.2.16
+++ ecore_evas_private.h        16 Jul 2003 04:49:07 -0000      1.1.2.17
@@ -31,10 +31,12 @@
    void        (*fn_callback_focus_out_set) (Ecore_Evas *ee, void (*func) (Ecore_Evas 
*ee));
    void        (*fn_callback_mouse_in_set) (Ecore_Evas *ee, void (*func) (Ecore_Evas 
*ee));
    void        (*fn_callback_mouse_out_set) (Ecore_Evas *ee, void (*func) (Ecore_Evas 
*ee));
+   void        (*fn_callback_pre_render_set) (Ecore_Evas *ee, void (*func) 
(Ecore_Evas *ee));
+   void        (*fn_callback_post_render_set) (Ecore_Evas *ee, void (*func) 
(Ecore_Evas *ee));
    void        (*fn_move) (Ecore_Evas *ee, int x, int y);
    void        (*fn_resize) (Ecore_Evas *ee, int w, int h);
    void        (*fn_move_resize) (Ecore_Evas *ee, int x, int y, int w, int h);
-   void (*fn_rotation_set) (Ecore_Evas *ee, int rot);
+   void        (*fn_rotation_set) (Ecore_Evas *ee, int rot);
    void        (*fn_shaped_set) (Ecore_Evas *ee, int shaped);
    void        (*fn_show) (Ecore_Evas *ee);
    void        (*fn_hide) (Ecore_Evas *ee);
@@ -49,10 +51,10 @@
    void        (*fn_cursor_set) (Ecore_Evas *ee, const char *file, int layer, int 
hot_x, int hot_y);
    void        (*fn_layer_set) (Ecore_Evas *ee, int layer);
    void        (*fn_focus_set) (Ecore_Evas *ee, int on);
-   void (*fn_iconified_set) (Ecore_Evas *ee, int on);
+   void        (*fn_iconified_set) (Ecore_Evas *ee, int on);
    void        (*fn_borderless_set) (Ecore_Evas *ee, int on);
    void        (*fn_override_set) (Ecore_Evas *ee, int on);
-   void (*fn_maximized_set) (Ecore_Evas *ee, int on);
+   void        (*fn_maximized_set) (Ecore_Evas *ee, int on);
    void        (*fn_fullscreen_set) (Ecore_Evas *ee, int on);
    void        (*fn_avoid_damage_set) (Ecore_Evas *ee, int on);
    void        (*fn_withdrawn_set) (Ecore_Evas *ee, int withdrawn);
@@ -141,6 +143,8 @@
       void          (*fn_focus_out) (Ecore_Evas *ee);
       void          (*fn_mouse_in) (Ecore_Evas *ee);
       void          (*fn_mouse_out) (Ecore_Evas *ee);
+      void          (*fn_pre_render) (Ecore_Evas *ee);
+      void          (*fn_post_render) (Ecore_Evas *ee);
    } func;
    
    Ecore_Evas_Engine engine;
===================================================================
RCS file: 
/cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_evas/Attic/ecore_evas_x.c,v
retrieving revision 1.1.2.18
retrieving revision 1.1.2.19
diff -u -3 -r1.1.2.18 -r1.1.2.19
--- ecore_evas_x.c      28 May 2003 06:32:18 -0000      1.1.2.18
+++ ecore_evas_x.c      16 Jul 2003 04:49:07 -0000      1.1.2.19
@@ -436,6 +436,7 @@
        Ecore_Evas *ee;
        
        ee = (Ecore_Evas *)l;
+       if (ee->func.fn_pre_render) ee->func.fn_pre_render(ee);
        if (ee->prop.avoid_damage)
          {
             Evas_List *updates, *l;
@@ -521,6 +522,7 @@
             else
               evas_render(ee->evas);
          }
+       if (ee->func.fn_post_render) ee->func.fn_post_render(ee);
      }
    ecore_x_flush();
    return 1;
@@ -998,6 +1000,8 @@
      NULL,
      NULL,
      _ecore_evas_callback_delete_request_set,
+     NULL,
+     NULL,
      NULL,
      NULL,
      NULL,




-------------------------------------------------------
This SF.net email is sponsored by: VM Ware
With VMware you can run multiple operating systems on a single machine.
WITHOUT REBOOTING! Mix Linux / Windows / Novell virtual machines at the
same time. Free trial click here: http://www.vmware.com/wl/offer/345/0
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to