Commit 83ef3f2b by Jerry Quinn Committed by Jerry Quinn

Font.java (deriveFont): Implement missing variants.

2004-04-22  Jerry Quinn  <jlquinn@optonline.net>

	* java/awt/Font.java (deriveFont): Implement missing variants.
	* gnu/java/awt/peer/ClasspathFontPeer.java (deriveFont): Implement
	missing variants.

From-SVN: r81002
parent aa26a3f6
2004-04-22 Jerry Quinn <jlquinn@optonline.net>
* java/awt/Font.java (deriveFont): Implement missing variants.
* gnu/java/awt/peer/ClasspathFontPeer.java (deriveFont): Implement
missing variants.
2004-04-21 Bryce McKinlay <mckinlay@redhat.com> 2004-04-21 Bryce McKinlay <mckinlay@redhat.com>
* java/lang/natClass.cc (_Jv_LayoutInterfaceMethods): New method. * java/lang/natClass.cc (_Jv_LayoutInterfaceMethods): New method.
......
/* ClasspathFontPeer.java -- Font peer used by GNU Classpath. /* ClasspathFontPeer.java -- Font peer used by GNU Classpath.
Copyright (C) 2003 Free Software Foundation, Inc. Copyright (C) 2003, 2004 Free Software Foundation, Inc.
This file is part of GNU Classpath. This file is part of GNU Classpath.
...@@ -395,6 +395,23 @@ public abstract class ClasspathFontPeer ...@@ -395,6 +395,23 @@ public abstract class ClasspathFontPeer
} }
/** /**
* Implementation of {@link Font#deriveFont(int, float)}
*
* @param font the font this peer is being called from. This may be
* useful if you are sharing peers between Font objects. Otherwise it may
* be ignored.
*/
public Font deriveFont (Font font, int style, float size)
{
Map attrs = new HashMap ();
getStandardAttributes (attrs);
copyStyleToAttrs (style, attrs);
copySizeToAttrs (size, attrs);
return tk().getFont (logicalName, attrs);
}
/**
* Implementation of {@link Font#deriveFont(float)} * Implementation of {@link Font#deriveFont(float)}
* *
* @param font the font this peer is being called from. This may be * @param font the font this peer is being called from. This may be
...@@ -444,6 +461,22 @@ public abstract class ClasspathFontPeer ...@@ -444,6 +461,22 @@ public abstract class ClasspathFontPeer
} }
/** /**
* Implementation of {@link Font#deriveFont(AffineTransform)}
*
* @param font the font this peer is being called from. This may be
* useful if you are sharing peers between Font objects. Otherwise it may
* be ignored.
*/
public Font deriveFont (Font font, AffineTransform t)
{
Map attrs = new HashMap ();
getStandardAttributes (attrs);
copyTransformToAttrs (t, attrs);
return tk().getFont (logicalName, attrs);
}
/**
* Implementation of {@link Font#deriveFont(Map)} * Implementation of {@link Font#deriveFont(Map)}
* *
* @param font the font this peer is being called from. This may be * @param font the font this peer is being called from. This may be
......
/* Font.java -- Font object /* Font.java -- Font object
Copyright (C) 1999, 2002 Free Software Foundation, Inc. Copyright (C) 1999, 2002, 2004 Free Software Foundation, Inc.
This file is part of GNU Classpath. This file is part of GNU Classpath.
...@@ -650,6 +650,22 @@ private static final long serialVersionUID = -4206021311591459213L; ...@@ -650,6 +650,22 @@ private static final long serialVersionUID = -4206021311591459213L;
/** /**
* Produces a new {@link Font} based on the current font, adjusted to a * Produces a new {@link Font} based on the current font, adjusted to a
* new size and style.
*
* @param style The style of the newly created font.
* @param size The size of the newly created font.
*
* @return A clone of the current font, with the specified size and style.
*
* @since 1.2
*/
public Font deriveFont (int style, float size)
{
return peer.deriveFont (this, style, size);
}
/**
* Produces a new {@link Font} based on the current font, adjusted to a
* new size. * new size.
* *
* @param size The size of the newly created font. * @param size The size of the newly created font.
...@@ -702,6 +718,27 @@ private static final long serialVersionUID = -4206021311591459213L; ...@@ -702,6 +718,27 @@ private static final long serialVersionUID = -4206021311591459213L;
} }
/** /**
* Produces a new {@link Font} based on the current font, subjected
* to a new affine transformation.
*
* @param a The transformation to apply.
*
* @return A clone of the current font, with the specified transform.
*
* @throws IllegalArgumentException If transformation is
* <code>null</code>.
*
* @since 1.2
*/
public Font deriveFont (AffineTransform a)
{
if (a == null)
throw new IllegalArgumentException ("Affine transformation is null");
return peer.deriveFont (this, a);
}
/**
* Produces a new {@link Font} based on the current font, adjusted to a * Produces a new {@link Font} based on the current font, adjusted to a
* new set of attributes. * new set of attributes.
* *
......
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