[cairo-commit] goocanvas ChangeLog,1.109,1.110 TODO,1.30,1.31

Damon Chaplin commit at pdx.freedesktop.org
Wed Apr 25 04:08:35 PDT 2007


Committed by: damon

Update of /cvs/cairo/goocanvas
In directory kemper:/tmp/cvs-serv5405

Modified Files:
	ChangeLog TODO 
Log Message:
2007-04-25  Damon Chaplin  <damon at gnome.org>

	* demo/mv-scalability-demo.c: 
	* demo/scalability-demo.c: instead of connecting signals to all items
	we just use a handler on the root item. Also added a switch to turn
	off the text items, to see the difference in performance (a lot).
	Without text items we can startup with 100,000 items in 1 second
	for a simple canvas, or 4 seconds for model-view (compared to 4 seconds
	and 7 seconds with text items).

	* src/goocanvasitemsimple.c (goo_canvas_item_simple_set_model): only
	setup the accessibility stuff if accessibility is enabled (as it is
	quite slow if you have lots of items).



Index: ChangeLog
===================================================================
RCS file: /cvs/cairo/goocanvas/ChangeLog,v
retrieving revision 1.109
retrieving revision 1.110
diff -u -d -r1.109 -r1.110
--- ChangeLog	25 Apr 2007 10:23:40 -0000	1.109
+++ ChangeLog	25 Apr 2007 11:08:25 -0000	1.110
@@ -1,5 +1,19 @@
 2007-04-25  Damon Chaplin  <damon at gnome.org>
 
+	* demo/mv-scalability-demo.c: 
+	* demo/scalability-demo.c: instead of connecting signals to all items
+	we just use a handler on the root item. Also added a switch to turn
+	off the text items, to see the difference in performance (a lot).
+	Without text items we can startup with 100,000 items in 1 second
+	for a simple canvas, or 4 seconds for model-view (compared to 4 seconds
+	and 7 seconds with text items).
+
+	* src/goocanvasitemsimple.c (goo_canvas_item_simple_set_model): only
+	setup the accessibility stuff if accessibility is enabled (as it is
+	quite slow if you have lots of items).
+
+2007-04-25  Damon Chaplin  <damon at gnome.org>
+
 	* src/goocanvasrect.c (goo_canvas_rect_update): added optimized
 	function to calculate the bounds without using cairo.
 

Index: TODO
===================================================================
RCS file: /cvs/cairo/goocanvas/TODO,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -d -r1.30 -r1.31
--- TODO	3 Apr 2007 09:58:05 -0000	1.30
+++ TODO	25 Apr 2007 11:08:25 -0000	1.31
@@ -15,10 +15,6 @@
    errors. Maybe we should extend any bounds returned from cairo slightly to
    cover the maximum possible errors.
 
- o GooCanvasImage - redrawing artifacts in demo when zoom>1.
-   Seems to be a bug in cairo, introduced in 1.3.12.
-   See http://bugs.freedesktop.org/show_bug.cgi?id=10508
-
 
 Features definitely needed:
 
@@ -28,6 +24,12 @@
 
 Possible additional features:
 
+ o "scale-x" and "scale-y" properties to allow setting different horizontal
+   and vertical scales. We already seem to support this internally.
+
+ o "integer-layout" property for GooCanvas so all containers like
+   GooCanvasTable do layout in integers (i.e. on the pixel grid).
+
  o Caching of rendered items to improve performance. Items would have a cache
    option with choices like Never, Always and WhenVisible.
  o Sticky items that don't move at all as the canvas is scrolled & zoomed.



More information about the cairo-commit mailing list