Revision: 639
Author: allain.lalonde
Date: Mon Aug  3 19:46:04 2009
Log: Additional Checkstyle fixes. Also, made java doc comments on private  
members/fields optional.
http://code.google.com/p/piccolo2d/source/detail?r=639

Modified:
  /piccolo2d.java/trunk/core/src/build/conf/checkstyle.xml
  /piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/PCamera.java
  /piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/PNode.java
   
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/event/PInputEvent.java
   
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/event/PInputEventFilter.java
   
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/event/PInputEventListener.java
   
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/util/PAffineTransformException.java
   
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/util/PObjectOutputStream.java
   
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/util/PPaintContext.java
   
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/util/PPickPath.java
   
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/util/PStack.java
  /piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/util/PUtil.java

=======================================
--- /piccolo2d.java/trunk/core/src/build/conf/checkstyle.xml    Sun Aug  2  
19:48:01 2009
+++ /piccolo2d.java/trunk/core/src/build/conf/checkstyle.xml    Mon Aug  3  
19:46:04 2009
@@ -45,9 +45,15 @@

          <!-- Checks for Javadoc comments.                     -->
          <!-- See http://checkstyle.sf.net/config_javadoc.html -->
-        <module name="JavadocMethod"/>
-        <module name="JavadocType"/>
-        <module name="JavadocVariable"/>
+        <module name="JavadocMethod">
+               <property name="scope" value="protected"/>
+        </module>
+        <module name="JavadocType">
+               <property name="scope" value="public"/>
+        </module>
+        <module name="JavadocVariable">
+            <property name="scope" value="protected" />
+        </module>
          <module name="JavadocStyle"/>


=======================================
---  
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/PCamera.java        
 
Sat Aug  1 04:53:29 2009
+++  
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/PCamera.java        
 
Mon Aug  3 19:46:04 2009
@@ -443,7 +443,7 @@
      public void fullPaint(final PPaintContext paintContext) {
          paintContext.pushCamera(this);
          super.fullPaint(paintContext);
-        paintContext.popCamera(this);
+        paintContext.popCamera();
      }

      /**
=======================================
--- /piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/PNode.java      
 
Sun Aug  2 19:48:01 2009
+++ /piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/PNode.java      
 
Mon Aug  3 19:46:04 2009
@@ -3642,5 +3642,5 @@
           * @param node node needing repaint
           */
          void nodeFullBoundsInvalidated(PNode node);
-    }
-}
+    }
+}
=======================================
---  
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/event/PInputEvent.java
       
Sun Aug  2 19:48:01 2009
+++  
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/event/PInputEvent.java
       
Mon Aug  3 19:46:04 2009
@@ -89,7 +89,7 @@
       * Changes the cursor to the one provided and stores it on the cursor  
stack
       * for later retrieval.
       *
-     * @param cursor
+     * @param cursor cursor to push on cursor stack
       */
      public void pushCursor(final Cursor cursor) {
          final PComponent component = getTopCamera().getComponent();
@@ -131,6 +131,8 @@
      /**
       * Return the topmost camera this is painting. This is the camera  
associated
       * with the PCanvas that requested the current repaint.
+     *
+     * @return topmost camera on the pick path
       */
      public PCamera getTopCamera() {
          return getPath().getTopCamera();
@@ -139,6 +141,8 @@
      /**
       * Get the canvas associated with the top camera. This is the canvas  
where
       * the originating swing event came from.
+     *
+     * @return component attached to the top camera of the current pick  
path
       */
      public PComponent getComponent() {
          return getTopCamera().getComponent();
@@ -148,6 +152,8 @@
       * Return the input manager that dispatched this event. You can use  
this
       * input manager to find the current mouse focus, mouse over, and key  
focus
       * nodes. You can also set a new key focus node.
+     *
+     * @return input manager that dispatched this event
       */
      public PInputManager getInputManager() {
          return inputManager;
@@ -155,11 +161,18 @@

      /**
       * Return the PPickPath associated with this input event.
+     *
+     * @return pick path associated with this event (may be null)
       */
      public PPickPath getPath() {
          return pickPath;
      }

+    /**
+     * Sets the PIckPath associated with this mouse event.
+     *
+     * @param path path to associate with this mouse event
+     */
      public void setPath(final PPickPath path) {
          pickPath = path;
      }
@@ -167,6 +180,8 @@
      /**
       * Return the bottom node on the current pickpath, that is the picked  
node
       * furthest from the root node.
+     *
+     * @return the currently picked node of this mouse event
       */
      public PNode getPickedNode() {
          return pickPath.getPickedNode();
@@ -176,6 +191,11 @@
      // Basics
      // ****************************************************************

+    /**
+     * Returns the key code associated with a key event.
+     *
+     * @return key code associated with a key event
+     */
      public int getKeyCode() {
          if (isKeyEvent()) {
              final KeyEvent e = (KeyEvent) inputEvent;
@@ -184,6 +204,11 @@
          throw new IllegalStateException("Can't get keycode from mouse  
event");
      }

+    /**
+     * Returns the character associated with a key event.
+     *
+     * @return char associated with a key event
+     */
      public char getKeyChar() {
          if (isKeyEvent()) {
              final KeyEvent e = (KeyEvent) inputEvent;
@@ -192,6 +217,12 @@
          throw new IllegalStateException("Can't get keychar from mouse  
event");
      }

+    /**
+     * Returns the location on the keyboard from which the key stroke
+     * originated.
+     *
+     * @return location on keyboard from which stroke originated.
+     */
      public int getKeyLocation() {
          if (isKeyEvent()) {
              final KeyEvent e = (KeyEvent) inputEvent;
@@ -200,6 +231,11 @@
          throw new IllegalStateException("Can't get keylocation from mouse  
event");
      }

+    /**
+     * Returns whether the key event involves the action key.
+     *
+     * @return true if key involved is the action key
+     */
      public boolean isActionKey() {
          if (isKeyEvent()) {
              final KeyEvent e = (KeyEvent) inputEvent;
@@ -208,6 +244,11 @@
          throw new IllegalStateException("Can't get isActionKey from mouse  
event");
      }

+    /**
+     * Returns the modifiers provided for the input event by swing.
+     *
+     * @return modifier flags for the input event
+     */
      public int getModifiers() {
          if (!isFocusEvent()) {
              return inputEvent.getModifiers();
@@ -215,6 +256,11 @@
          throw new IllegalStateException("Can't get modifiers from focus  
event");
      }

+    /**
+     * Returns the extended modifiers provided for the input event by  
swing.
+     *
+     * @return extended modifies of input event
+     */
      public int getModifiersEx() {
          if (!isFocusEvent()) {
              return inputEvent.getModifiersEx();
@@ -222,6 +268,11 @@
          throw new IllegalStateException("Can't get modifiers ex from focus  
event");
      }

+    /**
+     * Returns the click count of the mouse event.
+     *
+     * @return click count of mouse event
+     */
      public int getClickCount() {
          if (isMouseEvent()) {
              return ((MouseEvent) inputEvent).getClickCount();
@@ -229,6 +280,11 @@
          throw new IllegalStateException("Can't get clickcount from key  
event");
      }

+    /**
+     * Returns the time at which the event was emitted.
+     *
+     * @return time at which the vent was emitted
+     */
      public long getWhen() {
          if (!isFocusEvent()) {
              return inputEvent.getWhen();
@@ -236,6 +292,11 @@
          throw new IllegalStateException("Can't get when from focus event");
      }

+    /**
+     * Returns whether the alt key is currently down.
+     *
+     * @return true if alt key is down
+     */
      public boolean isAltDown() {
          if (!isFocusEvent()) {
              return inputEvent.isAltDown();
@@ -243,6 +304,11 @@
          throw new IllegalStateException("Can't get altdown from focus  
event");
      }

+    /**
+     * Returns whether the control key is currently down.
+     *
+     * @return true if control key is down
+     */
      public boolean isControlDown() {
          if (!isFocusEvent()) {
              return inputEvent.isControlDown();
@@ -250,6 +316,11 @@
          throw new IllegalStateException("Can't get controldown from focus  
event");
      }

+    /**
+     * Returns whether the meta key is currently down.
+     *
+     * @return true if meta key is down
+     */
      public boolean isMetaDown() {
          if (!isFocusEvent()) {
              return inputEvent.isMetaDown();
@@ -257,6 +328,11 @@
          throw new IllegalStateException("Can't get modifiers from focus  
event");
      }

+    /**
+     * Returns whether the shift key is currently down.
+     *
+     * @return true if shift key is down
+     */
      public boolean isShiftDown() {
          if (!isFocusEvent()) {
              return inputEvent.isShiftDown();
@@ -264,6 +340,11 @@
          throw new IllegalStateException("Can't get shiftdown from focus  
event");
      }

+    /**
+     * Returns whether the mouse event involves the left mouse button.
+     *
+     * @return true if left mouse button is involved the mouse event
+     */
      public boolean isLeftMouseButton() {
          if (isMouseEvent()) {
              return SwingUtilities.isLeftMouseButton((MouseEvent)  
getSourceSwingEvent());
@@ -271,6 +352,11 @@
          throw new IllegalStateException("Can't get isLeftMouseButton from  
focus event");
      }

+    /**
+     * Returns whether the mouse event involves the middle mouse button.
+     *
+     * @return true if middle mouse button is involved the mouse event
+     */
      public boolean isMiddleMouseButton() {
          if (isMouseEvent()) {
              return SwingUtilities.isMiddleMouseButton((MouseEvent)  
getSourceSwingEvent());
@@ -278,6 +364,11 @@
          throw new IllegalStateException("Can't get isMiddleMouseButton  
from focus event");
      }

+    /**
+     * Returns whether the mouse event involves the right mouse button.
+     *
+     * @return true if right mouse button is involved the mouse event
+     */
      public boolean isRightMouseButton() {
          if (isMouseEvent()) {
              return SwingUtilities.isRightMouseButton((MouseEvent)  
getSourceSwingEvent());
@@ -289,6 +380,8 @@
       * Return true if another event handler has already handled this event.
       * Event handlers should use this as a hint before handling the event
       * themselves and possibly reject events that have already been  
handled.
+     *
+     * @return true if event has been marked as handled
       */
      public boolean isHandled() {
          return handled;
@@ -300,11 +393,18 @@
       * dispatched to event handlers even after it is marked as handled, but
       * other event handlers that might conflict are expected to ignore  
events
       * that have already been handled.
+     *
+     * @param handled whether the event is marked
       */
      public void setHandled(final boolean handled) {
          this.handled = handled;
      }

+    /**
+     * Returns the mouse button value of the underlying mouse event.
+     *
+     * @return button value of underlying mouse event
+     */
      public int getButton() {
          if (isMouseEvent()) {
              return ((MouseEvent) inputEvent).getButton();
@@ -312,6 +412,12 @@
          throw new IllegalStateException("Can't get button from key event");
      }

+    /**
+     * Returns the current value of the wheel rotation on Mouse Wheel  
Rotation
+     * events.
+     *
+     * @return wheel rotation value
+     */
      public int getWheelRotation() {
          if (isMouseWheelEvent()) {
              return ((MouseWheelEvent) inputEvent).getWheelRotation();
@@ -319,6 +425,11 @@
          throw new IllegalStateException("Can't get wheel rotation from  
non-wheel event");
      }

+    /**
+     * Returns the underlying swing event that this PInputEvent is  
wrapping.
+     *
+     * @return underlying swing event
+     */
      public InputEvent getSourceSwingEvent() {
          return inputEvent;
      }
@@ -328,22 +439,48 @@
      // events.
      // ****************************************************************

+    /**
+     * Returns whether the underlying event is a KeyEvent.
+     *
+     * @return true if is key event
+     */
      public boolean isKeyEvent() {
          return inputEvent instanceof KeyEvent;
      }

+    /**
+     * Returns whether the underlying event is a MouseEvent.
+     *
+     * @return true if is mouse event
+     */
      public boolean isMouseEvent() {
          return inputEvent instanceof MouseEvent;
      }
+
+    /**
+     * Returns whether the underlying event is a Mouse Wheel Event.
+     *
+     * @return true if is a mouse wheel event
+     */

      public boolean isMouseWheelEvent() {
          return inputEvent instanceof MouseWheelEvent;
      }

+    /**
+     * Returns whether the underlying event is a Focus Event.
+     *
+     * @return true if is focus event
+     */
      public boolean isFocusEvent() {
          return inputEvent == null;
      }

+    /**
+     * Returns whether the underlying event is a mouse entered or exited  
event.
+     *
+     * @return true if is a mouse entered or exited event
+     */
      public boolean isMouseEnteredOrMouseExited() {
          if (isMouseEvent()) {
              return inputEvent.getID() == MouseEvent.MOUSE_ENTERED ||  
inputEvent.getID() == MouseEvent.MOUSE_EXITED;
@@ -379,6 +516,8 @@

      /**
       * Return the mouse position in PCanvas coordinates.
+     *
+     * @return mouse position in PCanvas coordinates
       */
      public Point2D getCanvasPosition() {
          return (Point2D) inputManager.getCurrentCanvasPosition().clone();
@@ -387,6 +526,9 @@
      /**
       * Return the delta between the last and current mouse position in  
PCanvas
       * coordinates.
+     *
+     * @return delta between last and current mouse position as measured  
by the
+     *         PCanvas
       */
      public PDimension getCanvasDelta() {
          final Point2D last = inputManager.getLastCanvasPosition();
@@ -396,6 +538,10 @@

      /**
       * Return the mouse position relative to a given node on the pick path.
+     *
+     * @param nodeOnPath node on the current PPickPath
+     *
+     * @return mouse position relative to the provided node on pick path
       */
      public Point2D getPositionRelativeTo(final PNode nodeOnPath) {
          final Point2D r = getCanvasPosition();
@@ -405,6 +551,10 @@
      /**
       * Return the delta between the last and current mouse positions  
relative to
       * a given node on the pick path.
+     *
+     * @param nodeOnPath node from which to measure
+     * @return delta between current mouse position and a given node on  
the pick
+     *         path
       */
      public PDimension getDeltaRelativeTo(final PNode nodeOnPath) {
          final PDimension r = getCanvasDelta();
@@ -414,6 +564,8 @@
      /**
       * Return the mouse position transformed through the view transform of  
the
       * bottom camera.
+     *
+     * @return mouse position as measured by the bottom camera
       */
      public Point2D getPosition() {
          final Point2D r = getCanvasPosition();
@@ -424,6 +576,9 @@
      /**
       * Return the delta between the last and current mouse positions  
transformed
       * through the view transform of the bottom camera.
+     *
+     * @return delta between last and current mouse position as measured  
by the
+     *         bottom camera
       */
      public PDimension getDelta() {
          final PDimension r = getCanvasDelta();
@@ -433,6 +588,8 @@

      /**
       * Returns a string representation of this object for debugging  
purposes.
+     *
+     * @return string representation of this object
       */
      public String toString() {
          final StringBuffer result = new StringBuffer();
=======================================
---  
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/event/PInputEventFilter.java
         
Sun Aug  2 19:48:01 2009
+++  
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/event/PInputEventFilter.java
         
Mon Aug  3 19:46:04 2009
@@ -52,7 +52,7 @@
   * @author Jesse Grosjean
   */
  public class PInputEventFilter {
-
+    /** Mask representing all possible modifiers. */
      public static int ALL_MODIFIERS_MASK = InputEvent.BUTTON1_MASK |  
InputEvent.BUTTON2_MASK | InputEvent.BUTTON3_MASK
              | InputEvent.SHIFT_MASK | InputEvent.CTRL_MASK |  
InputEvent.ALT_MASK | InputEvent.ALT_GRAPH_MASK
              | InputEvent.META_MASK;
=======================================
---  
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/event/PInputEventListener.java
       
Fri Jan 23 12:25:52 2009
+++  
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/event/PInputEventListener.java
       
Mon Aug  3 19:46:04 2009
@@ -43,7 +43,12 @@
   * @author Jesse Grosjean
   */
  public interface PInputEventListener extends EventListener {
-
-    public void processEvent(PInputEvent aEvent, int type);
-
-}
+    /**
+     * Called whenever an event is emitted. Used to notify listeners that  
an
+     * event is available for proecessing.
+     *
+     * @param event event that was emitted
+     * @param type type of event
+     */
+    void processEvent(PInputEvent event, int type);
+}
=======================================
---  
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/util/PAffineTransformException.java
  
Mon Aug  3 12:11:00 2009
+++  
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/util/PAffineTransformException.java
  
Mon Aug  3 19:46:04 2009
@@ -1,5 +1,8 @@
  package edu.umd.cs.piccolo.util;

+/**
+ * This class is used to encapsulate exceptions that may occur while  
performing transform operations.
+ */
  public class PAffineTransformException extends RuntimeException {
      /**
       * Allows for future serialization code to understand versioned binary
=======================================
---  
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/util/PObjectOutputStream.java
        
Tue Jul 28 12:46:54 2009
+++  
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/util/PObjectOutputStream.java
        
Mon Aug  3 19:46:04 2009
@@ -111,7 +111,7 @@
      protected void recordUnconditionallyWritten(final Object aRoot) throws  
IOException {
          class ZMarkObjectOutputStream extends PObjectOutputStream {
              public ZMarkObjectOutputStream() throws IOException {
-                super(PUtil.NULL_OUTPUT_STREAM);
+                super(NULL_OUTPUT_STREAM);
                  enableReplaceObject(true);
              }

@@ -125,4 +125,21 @@
          }
          new ZMarkObjectOutputStream().writeObject(aRoot);
      }
-}
+
+    private static final OutputStream NULL_OUTPUT_STREAM = new  
OutputStream() {
+        public void close() {
+        }
+
+        public void flush() {
+        }
+
+        public void write(final byte[] b) {
+        }
+
+        public void write(final byte[] b, final int off, final int len) {
+        }
+
+        public void write(final int b) {
+        }
+    };
+}
=======================================
---  
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/util/PPaintContext.java
      
Tue Jul 28 12:46:54 2009
+++  
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/util/PPaintContext.java
      
Mon Aug  3 19:46:04 2009
@@ -49,27 +49,54 @@
   * @author Jesse Grosjean
   */
  public class PPaintContext {
-
+    /** Used for lowering quality of rendering when requested. */
      public static final int LOW_QUALITY_RENDERING = 0;
+
+    /** Used for improving quality of rendering when requested. */
      public static final int HIGH_QUALITY_RENDERING = 1;

+    /** Font context to use while in low quality rendering. */
      public static FontRenderContext RENDER_QUALITY_LOW_FRC = new  
FontRenderContext(null, false, true);
+
+    /** Font context to use while in high quality rendering. */
      public static FontRenderContext RENDER_QUALITY_HIGH_FRC = new  
FontRenderContext(null, true, true);
+
+    /**
+     * @deprecated will disappear as soon as possible Global for accessing  
the
+     *             current paint context while painting.
+     **/
      public static PPaintContext CURRENT_PAINT_CONTEXT;

+    /** Used while calculating scale at which rendering is occurring. */
      private static double[] PTS = new double[4];

+    /** PaintContext is associated with this graphics context */
      private final Graphics2D graphics;
+
+    /** Used while computing transparency. */
      protected PStack compositeStack;
+
+    /** Used to optimize clipping region. */
      protected PStack clipStack;
+
+    /** Tracks clipping region in local coordinate system. */
      protected PStack localClipStack;
+
      protected PStack cameraStack;
+
      protected PStack transformStack;
+
+    /** The current render quality that all rendering should be done in. */
      protected int renderQuality;

-    public PPaintContext(final Graphics2D aGraphics) {
+    /**
+     * Creates a PPaintContext associated with the given graphics context.
+     *
+     * @param graphics graphics context to associate with this paint  
context
+     */
+    public PPaintContext(final Graphics2D graphics) {
          super();
-        graphics = aGraphics;
+        this.graphics = graphics;
          compositeStack = new PStack();
          clipStack = new PStack();
          localClipStack = new PStack();
@@ -77,10 +104,10 @@
          transformStack = new PStack();
          renderQuality = HIGH_QUALITY_RENDERING;

-        Shape clip = aGraphics.getClip();
+        Shape clip = graphics.getClip();
          if (clip == null) {
              clip = new PBounds(-Integer.MAX_VALUE / 2, -Integer.MAX_VALUE  
/ 2, Integer.MAX_VALUE, Integer.MAX_VALUE);
-            aGraphics.setClip(clip);
+            graphics.setClip(clip);
          }

          localClipStack.push(clip.getBounds2D());
@@ -88,6 +115,11 @@
          CURRENT_PAINT_CONTEXT = this;
      }

+    /**
+     * Returns the graphics context associated with this paint context.
+     *
+     * @return graphics context associated with this paint context
+     */
      public Graphics2D getGraphics() {
          return graphics;
      }
@@ -96,10 +128,24 @@
      // Context Attributes.
      // ****************************************************************

+    /**
+     * Returns the clipping region in the local coordinate system applied  
by
+     * graphics
+     *
+     * @return clipping region in the local coordinate system applied by
+     *         graphics
+     */
      public Rectangle2D getLocalClip() {
          return (Rectangle2D) localClipStack.peek();
      }

+    /**
+     * Returns scale of the current graphics context. By calculating how a  
unit
+     * segment gets transformed after transforming it by the graphics  
context's
+     * transform.
+     *
+     * @return scale of the current graphics context's transformation
+     */
      public double getScale() {
          PTS[0] = 0;// x1
          PTS[1] = 0;// y1
@@ -114,13 +160,32 @@
      // popped.
      // ****************************************************************

+    /**
+     * Pushes the camera onto the camera stack.
+     *
+     * @param aCamera camera to push onto the stack
+     */
      public void pushCamera(final PCamera aCamera) {
          cameraStack.push(aCamera);
      }

+    /**
+     * @deprecated in favor of popCamera()
+     *
+     * @param aCamera absolute not used in any way
+     */
      public void popCamera(final PCamera aCamera) {
          cameraStack.pop();
      }
+
+    /**
+     * Removes the camera at the top of the camera stack.
+     *
+     * @param aCamera absolute not used in any way
+     */
+    public void popCamera() {
+        cameraStack.pop();
+    }

      public PCamera getCamera() {
          return (PCamera) cameraStack.peek();
@@ -142,7 +207,7 @@
      }

      public void pushTransparency(final float transparency) {
-        if (transparency == 1) {
+        if (transparency == 1.0f) {
              return;
          }
          final Composite current = graphics.getComposite();
@@ -158,7 +223,7 @@
      }

      public void popTransparency(final float transparency) {
-        if (transparency == 1) {
+        if (transparency == 1.0f) {
              return;
          }
          final Composite c = (Composite) compositeStack.pop();
@@ -166,30 +231,43 @@
      }

      public void pushTransform(final PAffineTransform aTransform) {
-        if (aTransform == null) {
-            return;
-        }
-        final Rectangle2D newLocalClip = (Rectangle2D)  
getLocalClip().clone();
-        aTransform.inverseTransform(newLocalClip, newLocalClip);
-        transformStack.push(graphics.getTransform());
-        localClipStack.push(newLocalClip);
-        graphics.transform(aTransform);
+        if (aTransform != null) {
+            final Rectangle2D newLocalClip = (Rectangle2D)  
getLocalClip().clone();
+            aTransform.inverseTransform(newLocalClip, newLocalClip);
+            transformStack.push(graphics.getTransform());
+            localClipStack.push(newLocalClip);
+            graphics.transform(aTransform);
+        }
      }

+    /**
+     * Pops the topmost Transform from the top of the transform if the  
passed in
+     * transform is not null.
+     *
+     * @deprecated in favor of popTransform()
+     * @param aTransform transform that should be at the top of the stack
+     */
      public void popTransform(final PAffineTransform aTransform) {
-        if (aTransform == null) {
-            return;
-        }
-        graphics.setTransform((AffineTransform) transformStack.pop());
-        localClipStack.pop();
+        if (aTransform != null) {
+            graphics.setTransform((AffineTransform) transformStack.pop());
+            localClipStack.pop();
+        }
      }

-    // ****************************************************************
-    // Render Quality.
-    // ****************************************************************/
+    /**
+     * Pops the topmost Transform from the top of the transform stack, or  
does nothing if it's empty.
+     */
+    public void popTransform() {
+        if (!transformStack.isEmpty()) {
+            graphics.setTransform((AffineTransform) transformStack.pop());
+            localClipStack.pop();
+        }
+    }

      /**
       * Return the render quality used by this paint context.
+     *
+     * @return the current render quality
       */
      public int getRenderQuality() {
          return renderQuality;
=======================================
---  
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/util/PPickPath.java 
 
Tue Jul 28 12:46:54 2009
+++  
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/util/PPickPath.java 
 
Mon Aug  3 19:46:04 2009
@@ -63,22 +63,32 @@
   * @author Jesse Grosjean
   */
  public class PPickPath implements PInputEventListener {
-
+    /** Global pick path. */
      public static PPickPath CURRENT_PICK_PATH;

+    /** Used when calculating the scale. */
      private static double[] PTS = new double[4];

+    /** Stack of nodes representing all picked nodes. */
      private PStack nodeStack;
+
+    private final PCamera topCamera;
      private PStack transformStack;
      private PStack pickBoundsStack;
-    private final PCamera topCamera;
      private PCamera bottomCamera;
      private HashMap excludedNodes;

-    public PPickPath(final PCamera aCamera, final PBounds  
aScreenPickBounds) {
+    /**
+     * Creates a pick pack originating from the provided camera and with  
the
+     * given screen pick bounds.
+     *
+     * @param camera camera from which the pickpath originates
+     * @param aScreenPickBounds bounds of pick area
+     */
+    public PPickPath(final PCamera camera, final PBounds  
aScreenPickBounds) {
          super();
          pickBoundsStack = new PStack();
-        topCamera = aCamera;
+        topCamera = camera;
          nodeStack = new PStack();
          transformStack = new PStack();
          pickBoundsStack.push(aScreenPickBounds);
=======================================
---  
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/util/PStack.java    
 
Tue Jul 28 12:46:54 2009
+++  
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/util/PStack.java    
 
Mon Aug  3 19:46:04 2009
@@ -45,13 +45,26 @@
       */
      private static final long serialVersionUID = 1L;

+    /**
+     * Creates an empty stack.
+     */
      public PStack() {
      }

+    /**
+     * Pushes the provided object onto the top of the stack.
+     *
+     * @param o object to add to the stack
+     */
      public void push(final Object o) {
          add(o);
      }

+    /**
+     * Returns  topmost element on the stack, or null if stack is empty.
+     *
+     * @return topmost element on the stack, or null if empty
+     */
      public Object peek() {
          final int s = size();
          if (s == 0) {
@@ -62,6 +75,11 @@
          }
      }

+    /**
+     * Removes top element on the stack and returns it.
+     *
+     * @return topmost element on stack.
+     */
      public Object pop() {
          return remove(size() - 1);
      }
=======================================
---  
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/util/PUtil.java     
 
Fri Jul 31 14:04:44 2009
+++  
/piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/util/PUtil.java     
 
Mon Aug  3 19:46:04 2009
@@ -53,12 +53,15 @@
   * @author Jesse Grosjean
   */
  public class PUtil {
-
-    public static long DEFAULT_ACTIVITY_STEP_RATE = 20;
+    /**
+     * PActivities are broken into steps, this is how many milliseconds  
should
+     * pass between steps.
+     */
+    public static long DEFAULT_ACTIVITY_STEP_RATE = 20;
      public static int ACTIVITY_SCHEDULER_FRAME_DELAY = 10;
-    private static final int PATH_TERMINATOR = -1;
-
      public static Iterator NULL_ITERATOR =  
Collections.EMPTY_LIST.iterator();
+
+    private static final int PATH_TERMINATOR = -1;
      public static Enumeration NULL_ENUMERATION = new Enumeration() {
          public boolean hasMoreElements() {
              return false;
@@ -69,6 +72,9 @@
          }
      };

+    /**
+     * @deprecated This has been moved into a private static class of  
PObjectOutputStream
+     */
      public static OutputStream NULL_OUTPUT_STREAM = new OutputStream() {
          public void close() {
          }
@@ -86,16 +92,21 @@
          }
      };

+    /**
+     * Creates the simplest possible scene graph.  1 Camera, 1 Layer, 1  
Root
+     *
+     *  @return a basic scene with 1 camera, layer and root
+     */
      public static PCamera createBasicScenegraph() {
-        final PRoot r = new PRoot();
-        final PLayer l = new PLayer();
-        final PCamera c = new PCamera();
-
-        r.addChild(c);
-        r.addChild(l);
-        c.addLayer(l);
-
-        return c;
+        final PRoot root = new PRoot();
+        final PLayer layer = new PLayer();
+        final PCamera camera = new PCamera();
+
+        root.addChild(camera);
+        root.addChild(layer);
+        camera.addLayer(layer);
+
+        return camera;
      }

      public static void writeStroke(final Stroke stroke, final  
ObjectOutputStream out) throws IOException {

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

Reply via email to