Enlightenment CVS committal

Author  : raster
Project : e17
Module  : libs/evas

Dir     : e17/libs/evas/src/lib/canvas


Modified Files:
        evas_callbacks.c evas_events.c evas_object_rectangle.c 


Log Message:


add calls to tell evas to propagate (or not) events on an object to its
parent smart object IF there is a callback set. ie. if there is a key down
callback set and propagae is set to false then the key event will not
prpagate to the parent as long as the child gets the key down events and has
the callback set.

===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/evas/src/lib/canvas/evas_callbacks.c,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -3 -r1.22 -r1.23
--- evas_callbacks.c    18 Jun 2005 01:00:29 -0000      1.22
+++ evas_callbacks.c    30 Oct 2005 05:07:51 -0000      1.23
@@ -193,6 +193,7 @@
    obj->callbacks->walking_list--;
    if (!obj->callbacks->walking_list)
      evas_object_event_callback_clear(obj);
+   if ((obj->no_propagate) && (*l_mod)) return;
    if ((obj->smart.parent) &&
        (type != EVAS_CALLBACK_FREE) &&
        (type <= EVAS_CALLBACK_KEY_UP))
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/evas/src/lib/canvas/evas_events.c,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -3 -r1.41 -r1.42
--- evas_events.c       27 Oct 2005 02:44:36 -0000      1.41
+++ evas_events.c       30 Oct 2005 05:07:51 -0000      1.42
@@ -971,3 +971,33 @@
    MAGIC_CHECK_END();
    return obj->repeat_events;
 }
+
+/**
+ * To be documented.
+ *
+ * FIXME: To be fixed.
+ *
+ */
+void
+evas_object_propagate_events_set(Evas_Object *obj, Evas_Bool prop)
+{
+   MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ);
+   return;
+   MAGIC_CHECK_END();
+   obj->no_propagate = !prop;
+}
+
+/**
+ * To be documented.
+ *
+ * FIXME: To be fixed.
+ *
+ */
+Evas_Bool
+evas_object_propagate_events_get(Evas_Object *obj)
+{
+   MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ);
+   return 0;
+   MAGIC_CHECK_END();
+   return !(obj->no_propagate);
+}
===================================================================
RCS file: 
/cvsroot/enlightenment/e17/libs/evas/src/lib/canvas/evas_object_rectangle.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- evas_object_rectangle.c     18 Jun 2005 01:00:29 -0000      1.7
+++ evas_object_rectangle.c     30 Oct 2005 05:07:51 -0000      1.8
@@ -213,7 +213,7 @@
      {
        Evas_Rectangle *r;
        Evas_List *rl;
-
+       
        rl = evas_rects_return_difference_rects(obj->cur.cache.geometry.x,
                                                obj->cur.cache.geometry.y,
                                                obj->cur.cache.geometry.w,
@@ -233,6 +233,7 @@
    /* it obviously didn't change - add a NO obscure - this "unupdates"  this */
    /* area so if there were updates for it they get wiped. don't do it if we */
    /* arent fully opaque and we are visible */
+/*   
    if (evas_object_is_visible(obj) &&
        evas_object_is_opaque(obj) &&
        (!obj->clip.clipees))
@@ -241,6 +242,7 @@
                                                            
obj->cur.cache.clip.y,
                                                            
obj->cur.cache.clip.w,
                                                            
obj->cur.cache.clip.h);
+ */
    done:
    evas_object_render_pre_effect_updates(updates, obj, is_v, was_v);
 }




-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.
Get Certified Today * Register for a JBoss Training Course
Free Certification Exam for All Training Attendees Through End of 2005
Visit http://www.jboss.com/services/certification for more information
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to