You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by ap...@apache.org on 2007/08/13 13:50:41 UTC
svn commit: r565317 - in
/harmony/enhanced/classlib/trunk/modules/awt/src/main/java:
common/org/apache/harmony/awt/gl/ common/org/apache/harmony/awt/gl/image/
unix/org/apache/harmony/awt/gl/linux/
Author: apetrenko
Date: Mon Aug 13 04:50:40 2007
New Revision: 565317
URL: http://svn.apache.org/viewvc?view=rev&rev=565317
Log:
Patch for HARMONY-4580 "[classlib][awt] JavaTextRenderer should be moved out of CommonGraphics2D class"
Modified:
harmony/enhanced/classlib/trunk/modules/awt/src/main/java/common/org/apache/harmony/awt/gl/CommonGraphics2D.java
harmony/enhanced/classlib/trunk/modules/awt/src/main/java/common/org/apache/harmony/awt/gl/image/BufferedImageGraphics2D.java
harmony/enhanced/classlib/trunk/modules/awt/src/main/java/unix/org/apache/harmony/awt/gl/linux/XGraphics2D.java
Modified: harmony/enhanced/classlib/trunk/modules/awt/src/main/java/common/org/apache/harmony/awt/gl/CommonGraphics2D.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/awt/src/main/java/common/org/apache/harmony/awt/gl/CommonGraphics2D.java?view=diff&rev=565317&r1=565316&r2=565317
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/awt/src/main/java/common/org/apache/harmony/awt/gl/CommonGraphics2D.java (original)
+++ harmony/enhanced/classlib/trunk/modules/awt/src/main/java/common/org/apache/harmony/awt/gl/CommonGraphics2D.java Mon Aug 13 04:50:40 2007
@@ -654,70 +654,6 @@
drawString(str, (float)x, (float)y);
}
- @Override
- public void drawString(String str, float x, float y) {
- if (debugOutput) {
- System.err.println("CommonGraphics2D.drawString("+str+", "+x+", "+y+")"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
- }
-
- AffineTransform at = (AffineTransform)this.getTransform().clone();
- AffineTransform fontTransform = font.getTransform();
- at.concatenate(fontTransform);
-
- if (!at.isIdentity()){
- // TYPE_TRANSLATION
- if (at.getType() == AffineTransform.TYPE_TRANSLATION){
- jtr.drawString(this, str,
- (float)(x+fontTransform.getTranslateX()),
- (float)(y+fontTransform.getTranslateY()));
- return;
- }
- // TODO: we use slow type of drawing strings when Font object
- // in Graphics has transforms, we just fill outlines. New textrenderer
- // is to be implemented.
- Shape sh = font.createGlyphVector(this.getFontRenderContext(), str).getOutline(x, y);
- fill(sh);
- } else {
- jtr.drawString(this, str, x, y);
- }
-
- }
-
- @Override
- public void drawGlyphVector(GlyphVector gv, float x, float y) {
-
- AffineTransform at = gv.getFont().getTransform();
-
- double[] matrix = new double[6];
- if ((at != null) && (!at.isIdentity())){
-
- int atType = at.getType();
- at.getMatrix(matrix);
-
- // TYPE_TRANSLATION
- if ((atType == AffineTransform.TYPE_TRANSLATION) &&
- ((gv.getLayoutFlags() & GlyphVector.FLAG_HAS_TRANSFORMS) == 0)){
- jtr.drawGlyphVector(this, gv, (int)(x+matrix[4]), (int)(y+matrix[5]));
- return;
- }
- } else {
- if (((gv.getLayoutFlags() & GlyphVector.FLAG_HAS_TRANSFORMS) == 0)){
- jtr.drawGlyphVector(this, gv, x, y);
- return;
- }
- }
-
- // TODO: we use slow type of drawing strings when Font object
- // in Graphics has transforms, we just fill outlines. New textrenderer
- // is to be implemented.
-
- Shape sh = gv.getOutline(x, y);
- this.fill(sh);
-
- }
-
-
-
/***************************************************************************
*
Modified: harmony/enhanced/classlib/trunk/modules/awt/src/main/java/common/org/apache/harmony/awt/gl/image/BufferedImageGraphics2D.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/awt/src/main/java/common/org/apache/harmony/awt/gl/image/BufferedImageGraphics2D.java?view=diff&rev=565317&r1=565316&r2=565317
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/awt/src/main/java/common/org/apache/harmony/awt/gl/image/BufferedImageGraphics2D.java (original)
+++ harmony/enhanced/classlib/trunk/modules/awt/src/main/java/common/org/apache/harmony/awt/gl/image/BufferedImageGraphics2D.java Mon Aug 13 04:50:40 2007
@@ -23,6 +23,8 @@
import java.awt.Graphics;
import java.awt.GraphicsConfiguration;
import java.awt.Rectangle;
+import java.awt.Shape;
+import java.awt.font.GlyphVector;
import java.awt.image.BufferedImage;
import java.awt.image.ColorModel;
import java.awt.image.WritableRaster;
@@ -75,5 +77,17 @@
public WritableRaster getWritableRaster() {
return bi.getRaster();
+ }
+
+ @Override
+ public void drawString(String str, float x, float y) {
+ Shape sh = font.createGlyphVector(this.getFontRenderContext(), str).getOutline(x, y);
+ fill(sh);
+ }
+
+ @Override
+ public void drawGlyphVector(GlyphVector gv, float x, float y) {
+ Shape sh = gv.getOutline(x, y);
+ this.fill(sh);
}
}
Modified: harmony/enhanced/classlib/trunk/modules/awt/src/main/java/unix/org/apache/harmony/awt/gl/linux/XGraphics2D.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/awt/src/main/java/unix/org/apache/harmony/awt/gl/linux/XGraphics2D.java?view=diff&rev=565317&r1=565316&r2=565317
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/awt/src/main/java/unix/org/apache/harmony/awt/gl/linux/XGraphics2D.java (original)
+++ harmony/enhanced/classlib/trunk/modules/awt/src/main/java/unix/org/apache/harmony/awt/gl/linux/XGraphics2D.java Mon Aug 13 04:50:40 2007
@@ -24,6 +24,7 @@
package org.apache.harmony.awt.gl.linux;
import java.awt.*;
+import java.awt.font.GlyphVector;
import java.awt.image.IndexColorModel;
import java.awt.geom.AffineTransform;
import java.awt.geom.Point2D;
@@ -530,5 +531,62 @@
} else {
simpleComposite = false;
}
+ }
+
+ @Override
+ public void drawString(String str, float x, float y) {
+ AffineTransform at = (AffineTransform)this.getTransform().clone();
+ AffineTransform fontTransform = font.getTransform();
+ at.concatenate(fontTransform);
+
+ if (!at.isIdentity()){
+ // TYPE_TRANSLATION
+ if (at.getType() == AffineTransform.TYPE_TRANSLATION){
+ jtr.drawString(this, str,
+ (float)(x+fontTransform.getTranslateX()),
+ (float)(y+fontTransform.getTranslateY()));
+ return;
+ }
+ // TODO: we use slow type of drawing strings when Font object
+ // in Graphics has transforms, we just fill outlines. New textrenderer
+ // is to be implemented.
+ Shape sh = font.createGlyphVector(this.getFontRenderContext(), str).getOutline(x, y);
+ fill(sh);
+ } else {
+ jtr.drawString(this, str, x, y);
+ }
+ }
+
+ @Override
+ public void drawGlyphVector(GlyphVector gv, float x, float y) {
+
+ AffineTransform at = gv.getFont().getTransform();
+
+ double[] matrix = new double[6];
+ if ((at != null) && (!at.isIdentity())){
+
+ int atType = at.getType();
+ at.getMatrix(matrix);
+
+ // TYPE_TRANSLATION
+ if ((atType == AffineTransform.TYPE_TRANSLATION) &&
+ ((gv.getLayoutFlags() & GlyphVector.FLAG_HAS_TRANSFORMS) == 0)){
+ jtr.drawGlyphVector(this, gv, (int)(x+matrix[4]), (int)(y+matrix[5]));
+ return;
+ }
+ } else {
+ if (((gv.getLayoutFlags() & GlyphVector.FLAG_HAS_TRANSFORMS) == 0)){
+ jtr.drawGlyphVector(this, gv, x, y);
+ return;
+ }
+ }
+
+ // TODO: we use slow type of drawing strings when Font object
+ // in Graphics has transforms, we just fill outlines. New textrenderer
+ // is to be implemented.
+
+ Shape sh = gv.getOutline(x, y);
+ this.fill(sh);
+
}
}