diff --git a/extras/src/main/java/org/piccolo2d/extras/event/PSelectionEventHandler.java b/extras/src/main/java/org/piccolo2d/extras/event/PSelectionEventHandler.java index 43df014..672913b 100644 --- a/extras/src/main/java/org/piccolo2d/extras/event/PSelectionEventHandler.java +++ b/extras/src/main/java/org/piccolo2d/extras/event/PSelectionEventHandler.java @@ -599,7 +599,9 @@ } marquee.globalToLocal(b); - marquee.setPathToRectangle((float) b.x, (float) b.y, (float) b.width, (float) b.height); + marquee.reset(); + marquee.append(b, false); + marquee.closePath(); b.reset(); b.add(presspt); b.add(pie.getPosition()); diff --git a/extras/src/main/java/org/piccolo2d/extras/handles/PHandle.java b/extras/src/main/java/org/piccolo2d/extras/handles/PHandle.java index 403a331..6f6aef2 100644 --- a/extras/src/main/java/org/piccolo2d/extras/handles/PHandle.java +++ b/extras/src/main/java/org/piccolo2d/extras/handles/PHandle.java @@ -59,7 +59,7 @@ * @version 1.0 * @author Jesse Grosjean */ -public class PHandle extends PPath { +public class PHandle extends PPath.Float { private final class HandleDragHandler extends PDragSequenceEventHandler { protected void startDrag(final PInputEvent event) { super.startDrag(event); diff --git a/extras/src/main/java/org/piccolo2d/extras/nodes/PClip.java b/extras/src/main/java/org/piccolo2d/extras/nodes/PClip.java index 80fdca2..1260d1c 100644 --- a/extras/src/main/java/org/piccolo2d/extras/nodes/PClip.java +++ b/extras/src/main/java/org/piccolo2d/extras/nodes/PClip.java @@ -47,7 +47,7 @@ * @version 1.0 * @author Jesse Grosjean */ -public class PClip extends PPath { +public class PClip extends PPath.Float { private static final long serialVersionUID = 1L; /** diff --git a/extras/src/main/java/org/piccolo2d/extras/nodes/PLens.java b/extras/src/main/java/org/piccolo2d/extras/nodes/PLens.java index 2fe0130..3edcd0d 100644 --- a/extras/src/main/java/org/piccolo2d/extras/nodes/PLens.java +++ b/extras/src/main/java/org/piccolo2d/extras/nodes/PLens.java @@ -30,6 +30,9 @@ import java.awt.Color; import java.awt.Paint; + +import java.awt.geom.Rectangle2D; + import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; @@ -66,6 +69,7 @@ private static final long serialVersionUID = 1L; private final PPath dragBar; + private final Rectangle2D dragBarRect; private final PCamera camera; private final transient PDragEventHandler lensDragger; @@ -84,7 +88,8 @@ public PLens() { // Drag bar gets resized to fit the available space, so any rectangle // will do here - dragBar = PPath.createRectangle(0, 0, 1, 1); + dragBarRect = new Rectangle2D.Float(0.0f, 0.0f, 1.0f, 1.0f); + dragBar = new PPath.Float(dragBarRect); dragBar.setPaint(DEFAULT_DRAGBAR_PAINT); // This forces drag events to percolate up to PLens object dragBar.setPickable(false); @@ -170,7 +175,10 @@ * lenses camera child appropriately. */ protected void layoutChildren() { - dragBar.setPathToRectangle((float) getX(), (float) getY(), (float) getWidth(), (float) LENS_DRAGBAR_HEIGHT); + dragBar.reset(); + dragBarRect.setRect((float) getX(), (float) getY(), (float) getWidth(), (float) LENS_DRAGBAR_HEIGHT); + dragBar.append(dragBarRect, false); + dragBar.closePath(); camera.setBounds(getX(), getY() + LENS_DRAGBAR_HEIGHT, getWidth(), getHeight() - LENS_DRAGBAR_HEIGHT); } } diff --git a/extras/src/main/java/org/piccolo2d/extras/nodes/PLine.java b/extras/src/main/java/org/piccolo2d/extras/nodes/PLine.java index ff7ff33..4df516c 100644 --- a/extras/src/main/java/org/piccolo2d/extras/nodes/PLine.java +++ b/extras/src/main/java/org/piccolo2d/extras/nodes/PLine.java @@ -58,6 +58,12 @@ private static final PAffineTransform TEMP_TRANSFORM = new PAffineTransform(); private static final BasicStroke DEFAULT_STROKE = new BasicStroke(1.0f); private static final Color DEFAULT_STROKE_PAINT = Color.black; + private static final String PROPERTY_STROKE_PAINT = "strokePaint"; + private static final int PROPERTY_CODE_STROKE_PAINT = 1 << 16; + private static final String PROPERTY_STROKE = "stroke"; + private static final int PROPERTY_CODE_STROKE = 1 << 17; + private static final String PROPERTY_PATH = "path"; + private static final int PROPERTY_CODE_PATH = 1 << 18; private final transient LineShape lineShape; private transient Stroke stroke; @@ -116,7 +122,7 @@ final Paint oldPaint = strokePaint; strokePaint = newStrokePaint; invalidatePaint(); - firePropertyChange(PPath.PROPERTY_CODE_STROKE_PAINT, PPath.PROPERTY_STROKE_PAINT, oldPaint, strokePaint); + firePropertyChange(PROPERTY_CODE_STROKE_PAINT, PROPERTY_STROKE_PAINT, oldPaint, strokePaint); } /** @@ -138,7 +144,7 @@ stroke = newStroke; updateBoundsFromLine(); invalidatePaint(); - firePropertyChange(PPath.PROPERTY_CODE_STROKE, PPath.PROPERTY_STROKE, oldStroke, stroke); + firePropertyChange(PROPERTY_CODE_STROKE, PROPERTY_STROKE, oldStroke, stroke); } /** {@inheritDoc} */ @@ -266,7 +272,7 @@ * as requiring a repaint. */ protected void lineChanged() { - firePropertyChange(PPath.PROPERTY_CODE_PATH, PPath.PROPERTY_PATH, null, lineShape); + firePropertyChange(PROPERTY_CODE_PATH, PROPERTY_PATH, null, lineShape); updateBoundsFromLine(); invalidatePaint(); } diff --git a/swt/pom.xml b/swt/pom.xml index c68cc50..e4ef42a 100644 --- a/swt/pom.xml +++ b/swt/pom.xml @@ -293,6 +293,7 @@ enable this profile to build on mac osx, jdk 1.6, x86_64 set MAVEN_OPTS="-Dd64", or unit tests will fail +--> macosx_cocoa_intel @@ -307,6 +308,5 @@ -XstartOnFirstThread ---> diff --git a/swt/src/main/java/org/piccolo2d/extras/swt/PSWTPath.java b/swt/src/main/java/org/piccolo2d/extras/swt/PSWTPath.java index 06d7b5e..e40514d 100644 --- a/swt/src/main/java/org/piccolo2d/extras/swt/PSWTPath.java +++ b/swt/src/main/java/org/piccolo2d/extras/swt/PSWTPath.java @@ -65,6 +65,10 @@ * path, but old value will always be null. */ public static final String PROPERTY_SHAPE = "shape"; + private static final String PROPERTY_PATH = "path"; + private static final int PROPERTY_CODE_PATH = 1 << 18; + private static final String PROPERTY_STROKE_PAINT = "strokePaint"; + private static final int PROPERTY_CODE_STROKE_PAINT = 1 << 16; private static final double BOUNDS_TOLERANCE = 0.01; private static final Rectangle2D.Float TEMP_RECTANGLE = new Rectangle2D.Float(); @@ -206,7 +210,7 @@ final Paint old = strokePaint; strokePaint = strokeColor; invalidatePaint(); - firePropertyChange(PPath.PROPERTY_CODE_STROKE_PAINT, PPath.PROPERTY_STROKE_PAINT, old, strokePaint); + firePropertyChange(PROPERTY_CODE_STROKE_PAINT, PROPERTY_STROKE_PAINT, old, strokePaint); } /** @@ -394,7 +398,7 @@ origShape = shape; updateShapePoints(newShape); - firePropertyChange(PPath.PROPERTY_CODE_PATH, PPath.PROPERTY_PATH, null, shape); + firePropertyChange(PROPERTY_CODE_PATH, PROPERTY_PATH, null, shape); updateBoundsFromPath(); invalidatePaint(); }