[piccolo2d-dev] [piccolo2d] r1155 committed - Issue 227; fixed bounds issue when replacing PCamera on a PCanvas; add...

2011-11-13 Thread piccolo2d

Revision: 1155
Author:   atdixon
Date: Sun Nov 13 11:00:58 2011
Log:  Issue 227; fixed bounds issue when replacing PCamera on a  
PCanvas; added relevant tests

http://code.google.com/p/piccolo2d/source/detail?r=1155

Modified:
  
/piccolo2d.java/branches/release-1.3.1/core/src/main/java/edu/umd/cs/piccolo/PCanvas.java
  
/piccolo2d.java/branches/release-1.3.1/core/src/test/java/edu/umd/cs/piccolo/PCanvasTest.java


===
---  
/piccolo2d.java/branches/release-1.3.1/core/src/main/java/edu/umd/cs/piccolo/PCanvas.java	 
Tue Mar 15 15:28:41 2011
+++  
/piccolo2d.java/branches/release-1.3.1/core/src/main/java/edu/umd/cs/piccolo/PCanvas.java	 
Sun Nov 13 11:00:58 2011

@@ -28,6 +28,19 @@
  */
 package edu.umd.cs.piccolo;

+import edu.umd.cs.piccolo.event.PInputEventListener;
+import edu.umd.cs.piccolo.event.PPanEventHandler;
+import edu.umd.cs.piccolo.event.PZoomEventHandler;
+import edu.umd.cs.piccolo.util.PBounds;
+import edu.umd.cs.piccolo.util.PDebug;
+import edu.umd.cs.piccolo.util.PPaintContext;
+import edu.umd.cs.piccolo.util.PStack;
+import edu.umd.cs.piccolo.util.PUtil;
+
+import javax.swing.FocusManager;
+import javax.swing.JComponent;
+import javax.swing.RepaintManager;
+import javax.swing.Timer;
 import java.awt.Color;
 import java.awt.Component;
 import java.awt.Cursor;
@@ -46,20 +59,6 @@
 import java.awt.event.MouseWheelEvent;
 import java.awt.event.MouseWheelListener;

-import javax.swing.FocusManager;
-import javax.swing.JComponent;
-import javax.swing.RepaintManager;
-import javax.swing.Timer;
-
-import edu.umd.cs.piccolo.event.PInputEventListener;
-import edu.umd.cs.piccolo.event.PPanEventHandler;
-import edu.umd.cs.piccolo.event.PZoomEventHandler;
-import edu.umd.cs.piccolo.util.PBounds;
-import edu.umd.cs.piccolo.util.PDebug;
-import edu.umd.cs.piccolo.util.PPaintContext;
-import edu.umd.cs.piccolo.util.PStack;
-import edu.umd.cs.piccolo.util.PUtil;
-
 /**
  * bPCanvas/b is a simple Swing component that can be used to embed  
Piccolo
  * into a Java Swing application. Canvases view the Piccolo scene graph  
through

@@ -286,7 +285,7 @@

 if (camera != null) {
 camera.setComponent(this);
-camera.setBounds(getBounds());
+camera.setBounds(0, 0, getWidth(), getHeight());
 }
 }

===
---  
/piccolo2d.java/branches/release-1.3.1/core/src/test/java/edu/umd/cs/piccolo/PCanvasTest.java	 
Tue Mar 15 15:28:41 2011
+++  
/piccolo2d.java/branches/release-1.3.1/core/src/test/java/edu/umd/cs/piccolo/PCanvasTest.java	 
Sun Nov 13 11:00:58 2011

@@ -28,12 +28,13 @@
  */
 package edu.umd.cs.piccolo;

-import java.awt.Cursor;
-
-import junit.framework.TestCase;
 import edu.umd.cs.piccolo.event.PInputEventListener;
 import edu.umd.cs.piccolo.util.PBounds;
 import edu.umd.cs.piccolo.util.PPaintContext;
+import edu.umd.cs.piccolo.util.PUtil;
+import junit.framework.TestCase;
+
+import java.awt.Cursor;

 /**
  * Unit test for PCanvas.
@@ -127,6 +128,25 @@
 canvas.setBounds(0, 0, 100, 100);
 assertEquals(new PBounds(0, 0, 100, 100),  
canvas.getCamera().getBounds());

 }
+
+public void testSettingCanvasBoundsNotAtOrigin() {
+canvas.setBounds(50, 50, 100, 100);
+assertEquals(new PBounds(0, 0, 100, 100),  
canvas.getCamera().getBounds()); // camera should remain at (0,0)

+}
+
+public void testSettingCameraAffectsCameraBounds() {
+canvas.setBounds(0, 0, 100, 100);
+PCamera camera = PUtil.createBasicScenegraph();
+canvas.setCamera(camera);
+assertEquals(new PBounds(0, 0, 100, 100),  
canvas.getCamera().getBounds());

+}
+
+public void testSettingCameraOnCanvasNotAtOrigin() {
+canvas.setBounds(50, 50, 100, 100);
+PCamera camera = PUtil.createBasicScenegraph();
+canvas.setCamera(camera);
+assertEquals(new PBounds(0, 0, 100, 100),  
canvas.getCamera().getBounds()); // camera should remain at (0,0)

+}

 public void testAddInputEventListenersIsHonoured() {
 canvas.addInputEventListener(mockListener);

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


[piccolo2d-dev] Re: Issue 227 in piccolo2d: PCanvas.setCamera() sets new Camera's bounds to Canvas bounds

2011-11-13 Thread piccolo2d

Updates:
Status: Fixed

Comment #3 on issue 227 by atdi...@gmail.com: PCanvas.setCamera() sets new  
Camera's bounds to Canvas bounds

http://code.google.com/p/piccolo2d/issues/detail?id=227

Committed revision 1155.

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


[piccolo2d-dev] Re: Issue 227 in piccolo2d: PCanvas.setCamera() sets new Camera's bounds to Canvas bounds

2011-11-13 Thread piccolo2d


Comment #4 on issue 227 by atdi...@gmail.com: PCanvas.setCamera() sets new  
Camera's bounds to Canvas bounds

http://code.google.com/p/piccolo2d/issues/detail?id=227

Committed revision 1156. (TRUNK, same fix as the earlier branch commit.)

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