Graphics2D.java 4.95 KB
Newer Older
1
/* Copyright (C) 2000, 2002  Free Software Foundation
2

3
This file is part of GNU Classpath.
4

5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.

GNU Classpath is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
General Public License for more details.

You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING.  If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA.

20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
Linking this library statically or dynamically with other modules is
making a combined work based on this library.  Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.

As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent
modules, and to copy and distribute the resulting executable under
terms of your choice, provided that you also meet, for each linked
independent module, the terms and conditions of the license of that
module.  An independent module is a module which is not derived from
or based on this library.  If you modify this library, you may extend
this exception to your version of the library, but you are not
obligated to do so.  If you do not wish to do so, delete this
exception statement from your version. */
36 37 38

package java.awt;

39 40
import java.awt.font.FontRenderContext;
import java.awt.font.GlyphVector;
41
import java.awt.geom.AffineTransform;
Bryce McKinlay committed
42
import java.awt.image.BufferedImage;
Tom Tromey committed
43
import java.awt.image.BufferedImageOp;
Bryce McKinlay committed
44
import java.awt.image.RenderedImage;
45
import java.awt.image.ImageObserver;
Bryce McKinlay committed
46
import java.awt.image.renderable.RenderableImage;
47

Bryce McKinlay committed
48 49 50
import java.text.AttributedCharacterIterator;

import java.util.Map;
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79

/**
 * @author Rolf W. Rasmussen <rolfwr@ii.uib.no>
 */
public abstract class Graphics2D extends Graphics
{

  protected Graphics2D()
  {
  }
  
  public void draw3DRect(int x, int y, int width, int height,
			 boolean raised)
  {
    super.draw3DRect(x, y, width, height, raised);
  }
  
  public void fill3DRect(int x, int y, int width, int height,
			 boolean raised)
  {
    super.fill3DRect(x, y, width, height, raised);
  }

  public abstract void draw(Shape shape);

  public abstract boolean drawImage(Image image, AffineTransform xform,
				    ImageObserver obs);

  public abstract void drawImage(BufferedImage image,
Tom Tromey committed
80
				 BufferedImageOp op,
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
				 int x,
				 int y);

  public abstract void drawRenderedImage(RenderedImage image,
					 AffineTransform xform);

  public abstract void drawRenderableImage(RenderableImage image,
                                           AffineTransform xform);

  public abstract void drawString(String text, int x, int y);

  public abstract void drawString(String text, float x, float y);
    
  public abstract void drawString(AttributedCharacterIterator iterator,
                                  int x, int y);

  public abstract void drawString(AttributedCharacterIterator iterator,
				  float x, float y);

Bryce McKinlay committed
100
  // public abstract void drawGlyphVector(GlyphVector g, float x, float y);
101 102 103 104 105 106 107 108

  public abstract void fill(Shape shape);
    
  public abstract boolean hit(Rectangle rect, Shape text,
			      boolean onStroke);

  public abstract GraphicsConfiguration getDeviceConfiguration();

Bryce McKinlay committed
109
  public abstract void setComposite(Composite comp);
110 111 112
    
  public abstract void setPaint(Paint paint);

Bryce McKinlay committed
113
  public abstract void setStroke(Stroke stroke);
114 115 116 117 118 119

  public abstract void setRenderingHint(RenderingHints.Key hintKey,
                                        Object hintValue);

  public abstract Object getRenderingHint(RenderingHints.Key hintKey);
  
Bryce McKinlay committed
120
  public abstract void setRenderingHints(Map hints);
121

Bryce McKinlay committed
122
  public abstract void addRenderingHints(Map hints);
123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145

  public abstract RenderingHints getRenderingHints();

  public abstract void translate(int x, int y);

  public abstract void translate(double tx, double ty);
    
  public abstract void rotate(double theta);

  public abstract void rotate(double theta, double x, double y);

  public abstract void scale(double scaleX, double scaleY);

  public abstract void shear(double shearX, double shearY);

  public abstract void transform(AffineTransform Tx);
  
  public abstract void setTransform(AffineTransform Tx);

  public abstract AffineTransform getTransform();

  public abstract Paint getPaint();

Bryce McKinlay committed
146
  public abstract Composite getComposite();
147 148 149 150 151

  public abstract void setBackground(Color color);

  public abstract Color getBackground();

Bryce McKinlay committed
152
  public abstract Stroke getStroke();    
153 154 155

  public abstract void clip(Shape s);

156 157 158
  public abstract FontRenderContext getFontRenderContext ();

  public abstract void drawGlyphVector (GlyphVector g, float x, float y);
159
}