aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Gilbert <david.gilbert@object-refinery.com>2005-02-22 19:07:40 +0000
committerMichael Koch <mkoch@gcc.gnu.org>2005-02-22 19:07:40 +0000
commit118ca7d014b362b4d3c4417650d8031cde97b508 (patch)
tree78632f35b07ac4cd2c9b28aaaf52fb6f59b19ba1
parentb22dcb1f3071073b9521d72824eccad571c81613 (diff)
downloadgcc-118ca7d014b362b4d3c4417650d8031cde97b508.zip
gcc-118ca7d014b362b4d3c4417650d8031cde97b508.tar.gz
gcc-118ca7d014b362b4d3c4417650d8031cde97b508.tar.bz2
2005-02-22 David Gilbert <david.gilbert@object-refinery.com>
* java/awt/font/TransformAttribute.java, (TransformAttribute(AffineTransform)): throw IllegalArgumentException for null transform. (getTransform): return a copy of transform. Added doc comments to all. From-SVN: r95408
-rw-r--r--libjava/ChangeLog8
-rw-r--r--libjava/java/awt/font/TransformAttribute.java37
2 files changed, 40 insertions, 5 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index d36ba6f..5c99a78 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,11 @@
+2005-02-22 David Gilbert <david.gilbert@object-refinery.com>
+
+ * java/awt/font/TransformAttribute.java,
+ (TransformAttribute(AffineTransform)): throw
+ IllegalArgumentException for null transform.
+ (getTransform): return a copy of transform.
+ Added doc comments to all.
+
2005-02-22 Jeroen Frijters <jeroen@frijters.net>
* java/io/Externalizable.java,
diff --git a/libjava/java/awt/font/TransformAttribute.java b/libjava/java/awt/font/TransformAttribute.java
index b241704..3bb3c3c 100644
--- a/libjava/java/awt/font/TransformAttribute.java
+++ b/libjava/java/awt/font/TransformAttribute.java
@@ -1,5 +1,5 @@
-/* TransformAttribute.java
- Copyright (C) 2003 Free Software Foundation, Inc.
+/* TransformAttribute.java --
+ Copyright (C) 2003, 2005 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -42,6 +42,13 @@ import java.awt.geom.AffineTransform;
import java.io.Serializable;
/**
+ * This class provides a mechanism for using an {@link AffineTransform} as
+ * an <i>immutable</i> attribute (for example, in the
+ * {@link java.text.AttributedString} class). Any transform passed to
+ * this class is copied before being stored, and any transform handed out
+ * by this class is a copy of the stored transform. In this way, it is
+ * not possible to modify the stored transform.
+ *
* @author Michael Koch
*/
public final class TransformAttribute implements Serializable
@@ -50,20 +57,40 @@ public final class TransformAttribute implements Serializable
private AffineTransform affineTransform;
+ /**
+ * Creates a new attribute that contains a copy of the given transform.
+ *
+ * @param transform the transform (<code>null</code> not permitted).
+ *
+ * @throws IllegalArgumentException if <code>transform</code> is
+ * <code>null</code>.
+ */
public TransformAttribute (AffineTransform transform)
{
- if (transform != null)
+ if (transform == null)
{
- this.affineTransform = new AffineTransform (transform);
+ throw new IllegalArgumentException("Null 'transform' not permitted.");
}
+ this.affineTransform = new AffineTransform (transform);
}
+ /**
+ * Returns a copy of the transform contained by this attribute.
+ *
+ * @return A copy of the transform.
+ */
public AffineTransform getTransform ()
{
- return affineTransform;
+ return (AffineTransform) affineTransform.clone();
}
/**
+ * Returns <code>true</code> if the transform contained by this attribute is
+ * an identity transform, and <code>false</code> otherwise.
+ *
+ * @return <code>true</code> if the transform contained by this attribute is
+ * an identity transform, and <code>false</code> otherwise.
+ *
* @since 1.4
*/
public boolean isIdentity ()