home *** CD-ROM | disk | FTP | other *** search
/ S283 Planetary Science &n…he Search for Life DVD 2 / DVD-ROM.iso / install / jre1_3 / lib / rt.jar / java / awt / font / ImageGraphicAttribute.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  1.5 KB  |  77 lines

  1. package java.awt.font;
  2.  
  3. import java.awt.Graphics;
  4. import java.awt.Graphics2D;
  5. import java.awt.Image;
  6. import java.awt.geom.Rectangle2D;
  7. import java.awt.image.ImageObserver;
  8.  
  9. public final class ImageGraphicAttribute extends GraphicAttribute {
  10.    private Image fImage;
  11.    private float fImageWidth;
  12.    private float fImageHeight;
  13.    private float fOriginX;
  14.    private float fOriginY;
  15.  
  16.    public ImageGraphicAttribute(Image var1, int var2) {
  17.       this(var1, var2, 0.0F, 0.0F);
  18.    }
  19.  
  20.    public ImageGraphicAttribute(Image var1, int var2, float var3, float var4) {
  21.       super(var2);
  22.       this.fImage = var1;
  23.       this.fImageWidth = (float)var1.getWidth((ImageObserver)null);
  24.       this.fImageHeight = (float)var1.getHeight((ImageObserver)null);
  25.       this.fOriginX = var3;
  26.       this.fOriginY = var4;
  27.    }
  28.  
  29.    public float getAscent() {
  30.       return Math.max(0.0F, this.fOriginY);
  31.    }
  32.  
  33.    public float getDescent() {
  34.       return Math.max(0.0F, this.fImageHeight - this.fOriginY);
  35.    }
  36.  
  37.    public float getAdvance() {
  38.       return Math.max(0.0F, this.fImageWidth - this.fOriginX);
  39.    }
  40.  
  41.    public Rectangle2D getBounds() {
  42.       return new Rectangle2D.Float(-this.fOriginX, -this.fOriginY, this.fImageWidth, this.fImageHeight);
  43.    }
  44.  
  45.    public void draw(Graphics2D var1, float var2, float var3) {
  46.       ((Graphics)var1).drawImage(this.fImage, (int)(var2 - this.fOriginX), (int)(var3 - this.fOriginY), (ImageObserver)null);
  47.    }
  48.  
  49.    public int hashCode() {
  50.       return this.fImage.hashCode();
  51.    }
  52.  
  53.    public boolean equals(Object var1) {
  54.       try {
  55.          return this.equals((ImageGraphicAttribute)var1);
  56.       } catch (ClassCastException var3) {
  57.          return false;
  58.       }
  59.    }
  60.  
  61.    public boolean equals(ImageGraphicAttribute var1) {
  62.       if (var1 == null) {
  63.          return false;
  64.       } else if (this == var1) {
  65.          return true;
  66.       } else if (this.fOriginX == var1.fOriginX && this.fOriginY == var1.fOriginY) {
  67.          if (((GraphicAttribute)this).getAlignment() != ((GraphicAttribute)var1).getAlignment()) {
  68.             return false;
  69.          } else {
  70.             return this.fImage.equals(var1.fImage);
  71.          }
  72.       } else {
  73.          return false;
  74.       }
  75.    }
  76. }
  77.