Author: toshok
Date: 2007-09-19 14:29:14 -0400 (Wed, 19 Sep 2007)
New Revision: 86028

Modified:
   trunk/moon/src/ChangeLog
   trunk/moon/src/dirty.cpp
   trunk/moon/src/dirty.h
   trunk/moon/src/uielement.cpp
Log:


Modified: trunk/moon/src/ChangeLog
===================================================================
--- trunk/moon/src/ChangeLog    2007-09-19 18:22:22 UTC (rev 86027)
+++ trunk/moon/src/ChangeLog    2007-09-19 18:29:14 UTC (rev 86028)
@@ -1,3 +1,10 @@
+2007-09-19  Chris Toshok  <[EMAIL PROTECTED]>
+
+       * uielement.cpp (~UIElement): remove this from the dirty lists.
+
+       * dirty.h, dirty.cpp (remove_dirty_element): new function, remove
+       element from both the up and down dirty lists.
+
 2007-09-19  Jeffrey Stedfast  <[EMAIL PROTECTED]>
 
        * font.cpp: More hackery.

Modified: trunk/moon/src/dirty.cpp
===================================================================
--- trunk/moon/src/dirty.cpp    2007-09-19 18:22:22 UTC (rev 86027)
+++ trunk/moon/src/dirty.cpp    2007-09-19 18:29:14 UTC (rev 86028)
@@ -49,6 +49,13 @@
 }
 
 void
+remove_dirty_element (UIElement *element)
+{
+       up_dirty = g_slist_remove (up_dirty, element);
+       down_dirty = g_slist_remove (down_dirty, element);
+}
+
+void
 process_dirty_elements ()
 {
        /* push down the transforms and opacity changes first */

Modified: trunk/moon/src/dirty.h
===================================================================
--- trunk/moon/src/dirty.h      2007-09-19 18:22:22 UTC (rev 86027)
+++ trunk/moon/src/dirty.h      2007-09-19 18:29:14 UTC (rev 86028)
@@ -46,5 +46,6 @@
 };
 
 void add_dirty_element (UIElement *element, DirtyType dirt);
+void remove_dirty_element (UIElement *element);
 void process_dirty_elements ();
 bool is_anything_dirty ();

Modified: trunk/moon/src/uielement.cpp
===================================================================
--- trunk/moon/src/uielement.cpp        2007-09-19 18:22:22 UTC (rev 86027)
+++ trunk/moon/src/uielement.cpp        2007-09-19 18:29:14 UTC (rev 86028)
@@ -70,6 +70,8 @@
                opacityMask->Detach (NULL, this);
                opacityMask->unref ();
        }
+
+       remove_dirty_element (this);
 }
 
 void

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to