OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [libjava/] [classpath/] [java/] [awt/] [Graphics2D.java] - Blame information for rev 771

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 771 jeremybenn
/* Copyright (C) 2000, 2002, 2004, 2006,  Free Software Foundation
2
 
3
This file is part of GNU Classpath.
4
 
5
GNU Classpath is free software; you can redistribute it and/or modify
6
it under the terms of the GNU General Public License as published by
7
the Free Software Foundation; either version 2, or (at your option)
8
any later version.
9
 
10
GNU Classpath is distributed in the hope that it will be useful, but
11
WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13
General Public License for more details.
14
 
15
You should have received a copy of the GNU General Public License
16
along with GNU Classpath; see the file COPYING.  If not, write to the
17
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
18
02110-1301 USA.
19
 
20
Linking this library statically or dynamically with other modules is
21
making a combined work based on this library.  Thus, the terms and
22
conditions of the GNU General Public License cover the whole
23
combination.
24
 
25
As a special exception, the copyright holders of this library give you
26
permission to link this library with independent modules to produce an
27
executable, regardless of the license terms of these independent
28
modules, and to copy and distribute the resulting executable under
29
terms of your choice, provided that you also meet, for each linked
30
independent module, the terms and conditions of the license of that
31
module.  An independent module is a module which is not derived from
32
or based on this library.  If you modify this library, you may extend
33
this exception to your version of the library, but you are not
34
obligated to do so.  If you do not wish to do so, delete this
35
exception statement from your version. */
36
 
37
 
38
package java.awt;
39
 
40
import java.awt.font.FontRenderContext;
41
import java.awt.font.GlyphVector;
42
import java.awt.geom.AffineTransform;
43
import java.awt.image.BufferedImage;
44
import java.awt.image.BufferedImageOp;
45
import java.awt.image.ImageObserver;
46
import java.awt.image.RenderedImage;
47
import java.awt.image.renderable.RenderableImage;
48
import java.awt.print.PageFormat;
49
import java.awt.print.Printable;
50
import java.text.AttributedCharacterIterator;
51
import java.util.Map;
52
 
53
/**
54
 * An abstract class defining a device independent two-dimensional vector
55
 * graphics API.  Concrete subclasses implement this API for output of
56
 * vector graphics to:
57
 * <p>
58
 * <ul>
59
 * <li>a {@link javax.swing.JComponent} - in the
60
 *     {@link javax.swing.JComponent#paint(Graphics)} method, the incoming
61
 *     {@link Graphics} should always be an instance of
62
 *     <code>Graphics2D</code>;</li>
63
 * <li>a {@link BufferedImage} - see
64
 *     {@link BufferedImage#createGraphics()};</li>
65
 * <li>a {@link java.awt.print.PrinterJob} - in the
66
 *     {@link Printable#print(Graphics, PageFormat, int)} method, the incoming
67
 *     {@link Graphics} should always be an instance of
68
 *     <code>Graphics2D</code>.</li>
69
 * </ul>
70
 * <p>
71
 * Third party libraries provide support for output to other formats via this
72
 * API, including encapsulated postscript (EPS), portable document format (PDF),
73
 * and scalable vector graphics (SVG).
74
 *
75
 * @author Rolf W. Rasmussen (rolfwr@ii.uib.no)
76
 */
77
public abstract class Graphics2D extends Graphics
78
{
79
 
80
  protected Graphics2D()
81
  {
82
  }
83
 
84
  public void draw3DRect(int x, int y, int width, int height,
85
                         boolean raised)
86
  {
87
    super.draw3DRect(x, y, width, height, raised);
88
  }
89
 
90
  public void fill3DRect(int x, int y, int width, int height,
91
                         boolean raised)
92
  {
93
    super.fill3DRect(x, y, width, height, raised);
94
  }
95
 
96
  /**
97
   * Draws an outline around a shape using the current stroke and paint.
98
   *
99
   * @param shape  the shape (<code>null</code> not permitted).
100
   *
101
   * @see #getStroke()
102
   * @see #getPaint()
103
   */
104
  public abstract void draw(Shape shape);
105
 
106
  public abstract boolean drawImage(Image image, AffineTransform xform,
107
                                    ImageObserver obs);
108
 
109
  public abstract void drawImage(BufferedImage image,
110
                                 BufferedImageOp op,
111
                                 int x,
112
                                 int y);
113
 
114
  public abstract void drawRenderedImage(RenderedImage image,
115
                                         AffineTransform xform);
116
 
117
  public abstract void drawRenderableImage(RenderableImage image,
118
                                           AffineTransform xform);
119
 
120
  /**
121
   * Draws a string at the specified location, using the current font.
122
   *
123
   * @param text  the string to draw.
124
   * @param x  the x-coordinate.
125
   * @param y  the y-coordinate.
126
   *
127
   * @see Graphics#setFont(Font)
128
   */
129
  public abstract void drawString(String text, int x, int y);
130
 
131
  /**
132
   * Draws a string at the specified location, using the current font.
133
   *
134
   * @param text  the string to draw.
135
   * @param x  the x-coordinate.
136
   * @param y  the y-coordinate.
137
   *
138
   * @see Graphics#setFont(Font)
139
   */
140
  public abstract void drawString(String text, float x, float y);
141
 
142
  /**
143
   * Draws an attributed string at the specified location.
144
   *
145
   * @param iterator  the source of the attributed text.
146
   * @param x  the x-coordinate.
147
   * @param y  the y-coordinate.
148
   */
149
  public abstract void drawString(AttributedCharacterIterator iterator,
150
                                  int x, int y);
151
 
152
  /**
153
   * Draws an attributed string at the specified location.
154
   *
155
   * @param iterator  the source of the attributed text.
156
   * @param x  the x-coordinate.
157
   * @param y  the y-coordinate.
158
   */
159
  public abstract void drawString(AttributedCharacterIterator iterator,
160
                                  float x, float y);
161
 
162
  /**
163
   * Fills the interior of the specified <code>shape</code> using the current
164
   * paint.
165
   *
166
   * @param shape  the shape to fill (<code>null</code> not permitted).
167
   *
168
   * @see #draw(Shape)
169
   * @see #getPaint()
170
   */
171
  public abstract void fill(Shape shape);
172
 
173
  public abstract boolean hit(Rectangle rect, Shape text,
174
                              boolean onStroke);
175
 
176
  public abstract GraphicsConfiguration getDeviceConfiguration();
177
 
178
  /**
179
   * Sets the current compositing rule.
180
   *
181
   * @param comp  the composite.
182
   *
183
   * @see #getComposite()
184
   */
185
  public abstract void setComposite(Composite comp);
186
 
187
  /**
188
   * Sets the paint to be used for subsequent drawing operations.
189
   *
190
   * @param paint  the paint (<code>null</code> not permitted).
191
   *
192
   * @see #getPaint()
193
   */
194
  public abstract void setPaint(Paint paint);
195
 
196
  /**
197
   * Sets the stroke to be used for subsequent drawing operations.
198
   *
199
   * @param stroke  the stroke (<code>null</code> not permitted).
200
   *
201
   * @see #getStroke()
202
   */
203
  public abstract void setStroke(Stroke stroke);
204
 
205
  /**
206
   * Adds or updates a hint in the current rendering hints table.
207
   *
208
   * @param hintKey  the hint key.
209
   * @param hintValue  the hint value.
210
   */
211
  public abstract void setRenderingHint(RenderingHints.Key hintKey,
212
                                        Object hintValue);
213
 
214
  /**
215
   * Returns the current value of a rendering hint.
216
   *
217
   * @param hintKey  the key for the hint.
218
   *
219
   * @return The value for the specified hint.
220
   */
221
  public abstract Object getRenderingHint(RenderingHints.Key hintKey);
222
 
223
  /**
224
   * Replaces the current rendering hints with the supplied hints.
225
   *
226
   * @param hints  the hints.
227
   *
228
   * @see #addRenderingHints(Map)
229
   */
230
  public abstract void setRenderingHints(Map<?,?> hints);
231
 
232
  /**
233
   * Adds/updates the rendering hint.
234
   *
235
   * @param hints  the hints to add or update.
236
   */
237
  public abstract void addRenderingHints(Map<?,?> hints);
238
 
239
  /**
240
   * Returns the current rendering hints.
241
   *
242
   * @return The current rendering hints.
243
   */
244
  public abstract RenderingHints getRenderingHints();
245
 
246
  public abstract void translate(int x, int y);
247
 
248
  public abstract void translate(double tx, double ty);
249
 
250
  public abstract void rotate(double theta);
251
 
252
  public abstract void rotate(double theta, double x, double y);
253
 
254
  public abstract void scale(double scaleX, double scaleY);
255
 
256
  public abstract void shear(double shearX, double shearY);
257
 
258
  /**
259
   * Sets the current transform to a concatenation of <code>transform</code>
260
   * and the existing transform.
261
   *
262
   * @param transform  the transform.
263
   */
264
  public abstract void transform(AffineTransform transform);
265
 
266
  /**
267
   * Sets the current transform.  If the caller specifies a <code>null</code>
268
   * transform, this method should set the current transform to the
269
   * identity transform.
270
   *
271
   * @param transform  the transform (<code>null</code> permitted).
272
   *
273
   * @see #getTransform()
274
   */
275
  public abstract void setTransform(AffineTransform transform);
276
 
277
  /**
278
   * Returns the current transform.
279
   *
280
   * @return The current transform.
281
   *
282
   * @see #setTransform(AffineTransform)
283
   */
284
  public abstract AffineTransform getTransform();
285
 
286
  /**
287
   * Returns the current paint.
288
   *
289
   * @return The current paint.
290
   *
291
   * @see #setPaint(Paint)
292
   */
293
  public abstract Paint getPaint();
294
 
295
  /**
296
   * Returns the current compositing rule.
297
   *
298
   * @return The current compositing rule.
299
   *
300
   * @see #setComposite(Composite)
301
   */
302
  public abstract Composite getComposite();
303
 
304
  /**
305
   * Sets the background color (used by the
306
   * {@link Graphics#clearRect(int, int, int, int)} method).
307
   *
308
   * @param color  the color.
309
   *
310
   * @see #getBackground()
311
   */
312
  public abstract void setBackground(Color color);
313
 
314
  /**
315
   * Returns the color used by the
316
   * {@link Graphics#clearRect(int, int, int, int)} method.
317
   *
318
   * @return The background color.
319
   *
320
   * @see #setBackground(Color)
321
   */
322
  public abstract Color getBackground();
323
 
324
  /**
325
   * Returns the current stroke.
326
   *
327
   * @return The current stroke.
328
   *
329
   * @see #setStroke(Stroke)
330
   */
331
  public abstract Stroke getStroke();
332
 
333
  /**
334
   * Sets the clip region to the intersection of the current clipping region
335
   * and <code>s</code>.
336
   *
337
   * @param s  the shape to intersect with the current clipping region.
338
   *
339
   * @see Graphics#setClip(Shape)
340
   */
341
  public abstract void clip(Shape s);
342
 
343
  /**
344
   * Returns the font render context.
345
   *
346
   * @return The font render context.
347
   */
348
  public abstract FontRenderContext getFontRenderContext();
349
 
350
  /**
351
   * Draws a glyph vector at the specified location.
352
   *
353
   * @param g  the glyph vector.
354
   * @param x  the x-coordinate.
355
   * @param y  the y-coordinate.
356
   */
357
  public abstract void drawGlyphVector(GlyphVector g, float x, float y);
358
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.