aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/awt/Point.java
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java/awt/Point.java')
-rw-r--r--libjava/java/awt/Point.java99
1 files changed, 92 insertions, 7 deletions
diff --git a/libjava/java/awt/Point.java b/libjava/java/awt/Point.java
index df8aba5..e03b8a8 100644
--- a/libjava/java/awt/Point.java
+++ b/libjava/java/awt/Point.java
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999 Free Software Foundation
+/* Copyright (C) 1999, 2002 Free Software Foundation
This file is part of libjava.
@@ -9,28 +9,69 @@ details. */
package java.awt;
import java.awt.geom.Point2D;
-/**
- * @author Per Bothner <bothner@cygnus.com>
- * @date February 8, 1999.
- */
-
/* Written using "Java Class Libraries", 2nd edition, plus online
* API docs for JDK 1.2 beta from http://www.javasoft.com.
* Status: Believed complete and correct, except that neither toString
* nor hashCode have been compared with JDK output.
*/
+/**
+ * This class represents a point on the screen using cartesian coordinates.
+ *
+ * @author Per Bothner <bothner@cygnus.com>
+ * @author Aaron M. Renn (arenn@urbanophile.com)
+ * @date February 8, 1999.
+ */
public class Point extends Point2D implements java.io.Serializable
{
+ /**
+ * @serial The X coordinate of the point.
+ */
public int x;
+
+ /**
+ * @serial The Y coordinate of the point.
+ */
public int y;
+ /**
+ * Initializes a new instance of <code>Point</code> representing the
+ * coordiates (0,0).
+ */
public Point () { }
+ /**
+ * Initializes a new instance of <code>Point</code> with coordinates
+ * identical to the coordinates of the specified points.
+ *
+ * @param point The point to copy the coordinates from.
+ */
public Point (Point p) { this.x = p.x; this.y = p.y; }
+ /**
+ * Initializes a new instance of <code>Point</code> with the specified
+ * coordinates.
+ *
+ * @param x The X coordinate of this point.
+ * @param y The Y coordinate of this point.
+ */
public Point (int x, int y) { this.x = x; this.y = y; }
+ /**
+ * Tests whether or not this object is equal to the specified object.
+ * This will be true if and only if the specified objectj:
+ * <p>
+ * <ul>
+ * <li>Is not <code>null</code>.
+ * <li>Is an instance of <code>Point</code>.
+ * <li>Has X and Y coordinates equal to this object's.
+ * </ul>
+ *
+ * @param obj The object to test against for equality.
+ *
+ * @return <code>true</code> if the specified object is equal to this
+ * object, <code>false</code> otherwise.
+ */
public boolean equals (Object obj)
{
if (! (obj instanceof Point))
@@ -39,21 +80,65 @@ public class Point extends Point2D implements java.io.Serializable
return this.x == p.x && this.y == p.y;
}
+ /**
+ * Returns a hash value for this point.
+ *
+ * @param A hash value for this point.
+ */
public int hashCode () { return x ^ y; }
+ /**
+ * Returns the location of this object as a point. A pretty useless
+ * method. It is included to mimic the <code>getLocation</code> method
+ * in component.
+ *
+ * @return This point.
+ */
public Point getLocation () { return new Point(this); }
+ /**
+ * Sets this object's coordinates to the specified values. This method
+ * is identical to the <code>setLocation(int, int)</code> method.
+ *
+ * @param x The new X coordinate.
+ * @param y The new Y coordinate.
+ */
public void move (int x, int y) { this.x = x; this.y = y; }
+ /**
+ * Sets this object's coordinates to the specified values. This method
+ * is identical to the <code>move()</code> method.
+ *
+ * @param x The new X coordinate.
+ * @param y The new Y coordinate.
+ */
public void setLocation (int x, int y) { this.x = x; this.y = y; }
+ /**
+ * Sets this object's coordinates to match those of the specified point.
+ *
+ * @param point The point to copy the coordinates from.
+ */
public void setLocation (Point pt) { this.x = pt.x; this.y = pt.y; }
+ /**
+ * Changes the coordinates of this point such that the specified
+ * <code>dx</code> parameter is added to the existing X coordinate and
+ * <code>dy</code> is added to the existing Y coordinate.
+ *
+ * @param dx The amount to add to the X coordinate.
+ * @param dy The amount to add to the Y coordinate.
+ */
public void translate (int x, int y) { this.x += x; this.y += y; }
+ /**
+ * Returns a string representation of this object.
+ *
+ * @return A string representation of this object.
+ */
public String toString ()
{
- return "Point[x:"+x+",y:"+y+']';
+ return getClass().getName() + "[x:"+x+",y:"+y+']';
}
public double getX() { return x; }