mirror of git://gcc.gnu.org/git/gcc.git
				
				
				
			
		
			
				
	
	
		
			236 lines
		
	
	
		
			5.6 KiB
		
	
	
	
		
			Java
		
	
	
	
			
		
		
	
	
			236 lines
		
	
	
		
			5.6 KiB
		
	
	
	
		
			Java
		
	
	
	
| /* Copyright (C) 2000  Free Software Foundation
 | |
| 
 | |
|    This file is part of libgcj.
 | |
| 
 | |
| This software is copyrighted work licensed under the terms of the
 | |
| Libgcj License.  Please consult the file "LIBGCJ_LICENSE" for
 | |
| details.  */
 | |
| 
 | |
| package java.awt;
 | |
| 
 | |
| import java.awt.image.ImageObserver;
 | |
| 
 | |
| /**
 | |
|  * @author Warren Levy <warrenl@cygnus.com>
 | |
|  * @date March 15, 2000.
 | |
|  */
 | |
| 
 | |
| /**
 | |
|  * Written using on-line Java Platform 1.2 API Specification, as well
 | |
|  * as "The Java Class Libraries", 2nd edition (Addison-Wesley, 1998).
 | |
|  * Status:  Almost complete
 | |
|  */
 | |
| 
 | |
| public abstract class Graphics
 | |
| {
 | |
|   protected Graphics() {}
 | |
|   
 | |
|   public abstract Graphics create();
 | |
| 
 | |
|   public Graphics create(int x, int y, int width, int height)
 | |
|   {
 | |
|     Graphics gfx = create();
 | |
|     gfx.translate(x, y);
 | |
|     gfx.setClip(0, y, width, height);
 | |
|     return gfx;
 | |
|   }
 | |
| 
 | |
|   public abstract void translate(int x, int y);
 | |
| 
 | |
|   public abstract Color getColor();
 | |
| 
 | |
|   public abstract void setColor(Color color);
 | |
| 
 | |
|   public abstract void setPaintMode();
 | |
| 
 | |
|   public abstract void setXORMode(Color altColor);
 | |
| 
 | |
|   public abstract Font getFont();
 | |
| 
 | |
|   public abstract void setFont(Font font);
 | |
| 
 | |
|   public FontMetrics getFontMetrics()
 | |
|   {
 | |
|     return getFontMetrics(getFont());
 | |
|   }
 | |
| 
 | |
|   public abstract FontMetrics getFontMetrics(Font font);
 | |
| 
 | |
|   public abstract Rectangle getClipBounds();
 | |
| 
 | |
|   public abstract void clipRect(int x, int y, int width, int height);
 | |
| 
 | |
|   public abstract void setClip(int x, int y, int width, int height);
 | |
| 
 | |
|   public abstract Shape getClip();
 | |
| 
 | |
|   public abstract void setClip(Shape clip);
 | |
| 
 | |
|   public abstract void copyArea(int x, int y, int width, int height,
 | |
| 				int dx, int dy);
 | |
| 
 | |
|   public abstract void drawLine(int x1, int y1, int x2, int y2);
 | |
|     
 | |
|   public abstract void fillRect(int x, int y, int width, int height);
 | |
| 
 | |
|   public void drawRect(int x, int y, int width, int height)
 | |
|   {
 | |
|     int x1 = x;
 | |
|     int y1 = y;
 | |
|     int x2 = x + width;
 | |
|     int y2 = y + height;
 | |
|     drawLine(x1, y1, x2, y1);
 | |
|     drawLine(x2, y1, x2, y2);
 | |
|     drawLine(x2, y2, x1, y2);
 | |
|     drawLine(x1, y2, x1, y1);
 | |
|   }
 | |
| 
 | |
|   public abstract void clearRect(int x, int y, int width, int height);
 | |
|   
 | |
|   public abstract void drawRoundRect(int x, int y, int width, int height,
 | |
| 				     int arcWidth, int arcHeight);
 | |
|   
 | |
|   public abstract void fillRoundRect(int x, int y, int width, int height,
 | |
| 				     int arcWidth, int arcHeight);
 | |
|   
 | |
|   public void draw3DRect(int x, int y, int width, int height,
 | |
| 			 boolean raised)
 | |
|   {
 | |
|     Color color = getColor();
 | |
|     Color tl = color.brighter();
 | |
|     Color br = color.darker();
 | |
|     
 | |
|     if (!raised)
 | |
|       {
 | |
| 	Color tmp = tl;
 | |
| 	tl = br;
 | |
| 	br = tmp;
 | |
|       }
 | |
|     
 | |
|     int x1 = x;
 | |
|     int y1 = y;
 | |
|     int x2 = x + width;
 | |
|     int y2 = y + height;
 | |
|     
 | |
|     setColor(tl);
 | |
|     drawLine(x1, y1, x2, y1);
 | |
|     drawLine(x1, y2, x1, y1);
 | |
|     setColor(br);
 | |
|     drawLine(x2, y1, x2, y2);
 | |
|     drawLine(x2, y1, x1, y2);
 | |
|     setColor(color);
 | |
|   }
 | |
| 
 | |
|   public void fill3DRect(int x, int y, int width, int height,
 | |
| 			 boolean raised)
 | |
|   {
 | |
|     fillRect(x, y, width, height);
 | |
|     draw3DRect(x, y, width-1, height-1, raised);
 | |
|   }
 | |
| 
 | |
|   public abstract void drawOval(int x, int y, int width, int height);
 | |
|   
 | |
|   public abstract void fillOval(int x, int y, int width, int height);
 | |
|   
 | |
|   public abstract void drawArc(int x, int y, int width, int height,
 | |
| 			       int startAngle, int arcAngle);
 | |
|   
 | |
|   public abstract void fillArc(int x, int y, int width, int height,
 | |
| 			       int startAngle, int arcAngle);
 | |
|   
 | |
|   public abstract void drawPolyline(int[] xPoints, int[] yPoints,
 | |
| 				    int nPoints);
 | |
|   
 | |
|   public abstract void drawPolygon(int[] xPoints, int[] yPoints,
 | |
| 				   int nPoints);
 | |
|   
 | |
|   //public void drawPolygon(Polygon p);
 | |
|     
 | |
|   public abstract void fillPolygon(int[] xPoints, int[] yPoints,
 | |
| 				   int nPoints);
 | |
| 
 | |
|   //public void fillPolygon(Polygon p);
 | |
| 
 | |
|   public abstract void drawString(String str, int x, int y);
 | |
| 
 | |
|   /*
 | |
|   public abstract void drawString(AttributedCharacterIterator iterator,
 | |
| 	        		  int x, int y)
 | |
|   */
 | |
| 
 | |
|   public void drawChars(char[] data, int offset, int length,
 | |
| 			int x, int y)
 | |
|   {
 | |
|     String str = new String(data, offset, length);
 | |
|     drawString(str, x, y);
 | |
|   }
 | |
| 
 | |
|   public void drawBytes(byte[] data, int offset, int length,
 | |
| 			int x, int y)
 | |
|   {
 | |
|     String str = new String(data, offset, length);
 | |
|     drawString(str, x, y);
 | |
|   }
 | |
| 
 | |
|   public abstract boolean drawImage(Image img, int x, int y,
 | |
| 				    ImageObserver observer);
 | |
| 
 | |
|   public abstract boolean drawImage(Image img, int x, int y,
 | |
| 				    int width, int height,
 | |
| 				    ImageObserver observer);
 | |
| 
 | |
|   public abstract boolean drawImage(Image img, int x, int y, Color bgcolor,
 | |
| 				    ImageObserver observer);
 | |
|   
 | |
|   public abstract boolean drawImage(Image img, int x, int y,
 | |
| 				    int width, int height, Color bgcolor,
 | |
| 				    ImageObserver observer);
 | |
| 
 | |
|   public abstract boolean drawImage(Image img,
 | |
| 				    int dx1, int dy1, int dx2, int dy2,
 | |
| 				    int sx1, int sy1, int sx2, int sy2,
 | |
| 				    ImageObserver observer);
 | |
| 
 | |
|   public abstract boolean drawImage(Image img,
 | |
| 				    int dx1, int dy1, int dx2, int dy2,
 | |
| 				    int sx1, int sy1, int sx2, int sy2,
 | |
| 				    Color bgcolor, ImageObserver observer);
 | |
| 
 | |
|   public abstract void dispose();
 | |
|   
 | |
|   public void finalize()
 | |
|   {
 | |
|     dispose();
 | |
|   }
 | |
| 
 | |
|   public String toString()
 | |
|   {
 | |
|     return super.toString(); // FIXME
 | |
|   }
 | |
|     
 | |
|   /** @deprecated */
 | |
|   public Rectangle getClipRect()
 | |
|   {
 | |
|     return getClipBounds(null);
 | |
|   }
 | |
| 
 | |
|   public boolean hitClip(int x, int y, int width, int height)
 | |
|   {
 | |
|     throw new UnsupportedOperationException("not implemented yet");
 | |
|   }
 | |
| 
 | |
|   public Rectangle getClipBounds(Rectangle r)
 | |
|   {
 | |
|     Rectangle clipBounds = getClipBounds();
 | |
| 
 | |
|     if (r == null)
 | |
|       return clipBounds;
 | |
| 
 | |
|     r.x      = clipBounds.x;
 | |
|     r.y      = clipBounds.y;
 | |
|     r.width  = clipBounds.width;
 | |
|     r.height = clipBounds.height;
 | |
|     return r;
 | |
|   }
 | |
| }
 |