CVSROOT:        /cvs/gnome
Module name:    gegl
Changes by:     ok      06/10/29 14:45:48

Modified files:
        .              : ChangeLog 
        bin            : gegl-projection.c gegl-view.c gegl.c 
        gegl           : Makefile.am gegl-node.c gegl-node.h 
                         gegl-operation.c gegl-types.h 
        operations/blur: box-blur.c gaussian-blur.c 
        operations/core: shift.c 
        operations/generated: porter-duff.rb 
        operations/transform: affine.c 

Log message:
Minimized unneeded recomputation in the GUI test app with a new
dirt propagation infrastructure. The dirt accumulation is happening
as the graph is manipulated, properties are changed etc automatically.
The code probably needs more changes as well, but the basics seems
to work correctly.

* bin/gegl-projection.c: (gegl_projection_constructor),
(set_property), (task_render), (task_monitor): Handle dirt
tracking/cleaning for updates.
* bin/gegl-view.c: (set_property), (gegl_view_repaint):
* bin/gegl.c: (main): changed the default project.

* gegl/Makefile.am: added gegl-{clean,dirt}-visitor.[ch]
* gegl/gegl-types.h: added dirt and clean visitors.
* gegl/gegl-dirt-visitor.[ch] NEW:, visitor for propagating dirtied
regions in the graph.
* gegl/gegl-clean-visitor.[ch] NEW:, visitor that cleans up dirt
rectangles.

* gegl/gegl-node.[ch]: added gegl_node_get_dirty_rect,
gegl_node_clear_dirt and dirt_rect instance member.
* gegl/gegl-operation.c: (get_affected_region):

Added get_affected_region to operations that needed to override
default behavior.

* operations/blur/box-blur.c: (get_affected_region), (class_init):
* operations/blur/gaussian-blur.c: (get_affected_region),
(class_init):
* operations/core/shift.c: (get_affected_region), (class_init):
* operations/transform/affine.c: (op_affine_class_init),
(get_defined_region), (get_affected_region):
* operations/generated/porter-duff.rb: (op_affine_class_init).

URL : 
http://cvs.gnome.org/bonsai/cvsquery.cgi?branch=&dir=gegl&who=ok&date=explicit&mindate=2006-10-29%2014:44&maxdate=2006-10-29%2014:46

_______________________________________________
cvs-commits-list mailing list
cvs-commits-list@gnome.org
http://mail.gnome.org/mailman/listinfo/cvs-commits-list

Reply via email to