Commit 118ca7d0 by David Gilbert Committed by Michael Koch

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
parent b22dcb1f
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> 2005-02-22 Jeroen Frijters <jeroen@frijters.net>
* java/io/Externalizable.java, * java/io/Externalizable.java,
......
/* TransformAttribute.java /* TransformAttribute.java --
Copyright (C) 2003 Free Software Foundation, Inc. Copyright (C) 2003, 2005 Free Software Foundation, Inc.
This file is part of GNU Classpath. This file is part of GNU Classpath.
...@@ -42,6 +42,13 @@ import java.awt.geom.AffineTransform; ...@@ -42,6 +42,13 @@ import java.awt.geom.AffineTransform;
import java.io.Serializable; 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 * @author Michael Koch
*/ */
public final class TransformAttribute implements Serializable public final class TransformAttribute implements Serializable
...@@ -50,20 +57,40 @@ public final class TransformAttribute implements Serializable ...@@ -50,20 +57,40 @@ public final class TransformAttribute implements Serializable
private AffineTransform affineTransform; 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) 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 () 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 * @since 1.4
*/ */
public boolean isIdentity () public boolean isIdentity ()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment