[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug awt/27960] CairoGraphics2D.setTransform() doesn't update clip
From: |
mark at gcc dot gnu dot org |
Subject: |
[Bug awt/27960] CairoGraphics2D.setTransform() doesn't update clip |
Date: |
13 Jun 2006 07:46:56 -0000 |
------- Comment #1 from mark at gcc dot gnu dot org 2006-06-13 07:46 -------
With Roman's latest patches jfreechart seems to look fine again.
2006-06-12 Roman Kennke <address@hidden>
* gnu/java/awt/peer/gtk/CairoGraphics2D.java
(copy): Use getClip() to copy the clip. Make copied transform
null when original transform is null. Set clip here.
(setTransform): Correctly update the clip.
(setTransformImpl): New method. Updates the actual transform for
Cairo.
(transform): Correctly update the clip.
(translate): Correctly update the clip.
(clip): Handle null clip and argument correctly.
(clipRect): Avoid creating new Rectangle objects.
(getClip): Get the correct copy of the clip.
(setClip): Correctly handle null argument.
* gnu/java/awt/peer/gtk/CairoSurfaceGraphics.java
(CairoSurfaceGraphics): Don't set the clip here. The clip can either
be null or whatever has been set in copy().
* gnu/java/awt/peer/gtk/ComponentGraphics.java
(drawImage): Add translation to the image coordinates.
* gnu/java/awt/peer/gtk/VolatileImageGraphics.java
(VolatileImageGraphics): Don't set clip here. The clip can either
be null or whatever has been set in copy().
Could you retest?
Not all Mauve tests PASS yet, but I don't believe the implementation is
actually wrong, just that we are missing some optimization if the clip is
actually rectangular.
the jfreechart superdemo is a really slow, but that seems to be caused by the
text area on the bottom-right, not by the graphics drawing. But that is another
bug.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27960