Revision: 1124
Author:   atdi...@gmail.com
Date:     Mon Mar 28 21:59:59 2011
Log: Issue 173; Added @since and @param to setUseBufferedPainting. Added unit test covering buffered painting branch in PSwing.paint.
http://code.google.com/p/piccolo2d/source/detail?r=1124

Modified:
/piccolo2d.java/branches/release-1.3/extras/src/main/java/edu/umd/cs/piccolox/pswing/PSwing.java /piccolo2d.java/branches/release-1.3/extras/src/test/java/edu/umd/cs/piccolox/pswing/PSwingTest.java

=======================================
--- /piccolo2d.java/branches/release-1.3/extras/src/main/java/edu/umd/cs/piccolox/pswing/PSwing.java Mon Mar 28 21:12:27 2011 +++ /piccolo2d.java/branches/release-1.3/extras/src/main/java/edu/umd/cs/piccolox/pswing/PSwing.java Mon Mar 28 21:59:59 2011
@@ -346,6 +346,8 @@
* a transformed context is slow. Enabling buffered painting gives a significant performance * boost on these platforms; however, at the expense of a lower-quality drawing result at larger
      * scales.
+     * @since 1.3.1
+ * @param useBufferedPainting true if this {@link PSwing} should use buffered painting
      */
     public void setUseBufferedPainting(final boolean useBufferedPainting) {
         this.useBufferedPainting = useBufferedPainting;
=======================================
--- /piccolo2d.java/branches/release-1.3/extras/src/test/java/edu/umd/cs/piccolox/pswing/PSwingTest.java Tue Mar 15 15:28:41 2011 +++ /piccolo2d.java/branches/release-1.3/extras/src/test/java/edu/umd/cs/piccolox/pswing/PSwingTest.java Mon Mar 28 21:59:59 2011
@@ -28,20 +28,20 @@
  */
 package edu.umd.cs.piccolox.pswing;

+import edu.umd.cs.piccolo.util.PPaintContext;
+import junit.framework.TestCase;
+
+import javax.swing.JButton;
+import javax.swing.JComponent;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+import javax.swing.RepaintManager;
 import java.awt.Color;
 import java.awt.Dimension;
 import java.awt.Graphics2D;
 import java.awt.geom.AffineTransform;
 import java.awt.image.BufferedImage;
 import java.io.IOException;
-import javax.swing.JButton;
-import javax.swing.JComponent;
-import javax.swing.JLabel;
-import javax.swing.JPanel;
-import javax.swing.RepaintManager;
-
-import junit.framework.TestCase;
-import edu.umd.cs.piccolo.util.PPaintContext;

 public class PSwingTest extends TestCase {
        public void setUp() {
@@ -97,6 +97,21 @@
                pSwing.paint(paintContext);
                assertEquals(Color.RED.getRGB(), image.getRGB(50, 50));
        }
+
+ public void testPSwingWithBufferedPaintingDelegatesPaintingToItsComponent() throws IOException {
+               final JPanel panel = new JPanel();
+               final MockPaintingPSwing pSwing = new MockPaintingPSwing(panel);
+        pSwing.setUseBufferedPainting(true);
+               panel.setBackground(Color.RED);
+               panel.setPreferredSize(new Dimension(100, 100));
+
+               final BufferedImage image = new BufferedImage(100, 100,
+                               BufferedImage.TYPE_INT_RGB);
+               Graphics2D graphics = image.createGraphics();
+               PPaintContext paintContext = new PPaintContext(graphics);
+               pSwing.paint(paintContext);
+               assertEquals(Color.RED.getRGB(), image.getRGB(50, 50));
+       }

        public void testHidingPNodeHidesComponent() {
                final JPanel panel = new JPanel();

--
Piccolo2D Developers Group: http://groups.google.com/group/piccolo2d-dev?hl=en

Reply via email to