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 / javax / swing / plaf / metal / MetalIconFactory$TreeControlIcon.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  2.2 KB  |  96 lines

  1. package javax.swing.plaf.metal;
  2.  
  3. import java.awt.Component;
  4. import java.awt.Graphics;
  5. import java.awt.Image;
  6. import java.awt.image.BufferedImage;
  7. import java.awt.image.ImageObserver;
  8. import java.io.Serializable;
  9. import javax.swing.Icon;
  10.  
  11. public class MetalIconFactory$TreeControlIcon implements Icon, Serializable {
  12.    protected boolean isLight;
  13.    transient Image image;
  14.    transient boolean cachedOrientation = true;
  15.  
  16.    public MetalIconFactory$TreeControlIcon(boolean var1) {
  17.       this.isLight = var1;
  18.    }
  19.  
  20.    public void paintIcon(Component var1, Graphics var2, int var3, int var4) {
  21.       if (this.image == null || this.cachedOrientation != MetalUtils.isLeftToRight(var1)) {
  22.          this.cachedOrientation = MetalUtils.isLeftToRight(var1);
  23.          this.image = new BufferedImage(this.getIconWidth(), this.getIconHeight(), 2);
  24.          Graphics var5 = this.image.getGraphics();
  25.          this.paintMe(var1, var5, var3, var4);
  26.          var5.dispose();
  27.       }
  28.  
  29.       if (MetalUtils.isLeftToRight(var1)) {
  30.          if (this.isLight) {
  31.             var2.drawImage(this.image, var3 + 5, var4 + 3, var3 + 18, var4 + 13, 4, 3, 17, 13, (ImageObserver)null);
  32.          } else {
  33.             var2.drawImage(this.image, var3 + 5, var4 + 3, var3 + 18, var4 + 17, 4, 3, 17, 17, (ImageObserver)null);
  34.          }
  35.       } else if (this.isLight) {
  36.          var2.drawImage(this.image, var3 + 3, var4 + 3, var3 + 16, var4 + 13, 4, 3, 17, 13, (ImageObserver)null);
  37.       } else {
  38.          var2.drawImage(this.image, var3 + 3, var4 + 3, var3 + 16, var4 + 17, 4, 3, 17, 17, (ImageObserver)null);
  39.       }
  40.  
  41.    }
  42.  
  43.    public void paintMe(Component var1, Graphics var2, int var3, int var4) {
  44.       var2.setColor(MetalLookAndFeel.getPrimaryControlInfo());
  45.       int var5 = MetalUtils.isLeftToRight(var1) ? 0 : 4;
  46.       var2.drawLine(var5 + 4, 6, var5 + 4, 9);
  47.       var2.drawLine(var5 + 5, 5, var5 + 5, 5);
  48.       var2.drawLine(var5 + 6, 4, var5 + 9, 4);
  49.       var2.drawLine(var5 + 10, 5, var5 + 10, 5);
  50.       var2.drawLine(var5 + 11, 6, var5 + 11, 9);
  51.       var2.drawLine(var5 + 10, 10, var5 + 10, 10);
  52.       var2.drawLine(var5 + 6, 11, var5 + 9, 11);
  53.       var2.drawLine(var5 + 5, 10, var5 + 5, 10);
  54.       var2.drawLine(var5 + 7, 7, var5 + 8, 7);
  55.       var2.drawLine(var5 + 7, 8, var5 + 8, 8);
  56.       if (this.isLight) {
  57.          if (MetalUtils.isLeftToRight(var1)) {
  58.             var2.drawLine(12, 7, 15, 7);
  59.             var2.drawLine(12, 8, 15, 8);
  60.          } else {
  61.             var2.drawLine(4, 7, 7, 7);
  62.             var2.drawLine(4, 8, 7, 8);
  63.          }
  64.       } else {
  65.          var2.drawLine(var5 + 7, 12, var5 + 7, 15);
  66.          var2.drawLine(var5 + 8, 12, var5 + 8, 15);
  67.       }
  68.  
  69.       var2.setColor(MetalLookAndFeel.getPrimaryControlDarkShadow());
  70.       var2.drawLine(var5 + 5, 6, var5 + 5, 9);
  71.       var2.drawLine(var5 + 6, 5, var5 + 9, 5);
  72.       var2.setColor(MetalLookAndFeel.getPrimaryControlShadow());
  73.       var2.drawLine(var5 + 6, 6, var5 + 6, 6);
  74.       var2.drawLine(var5 + 9, 6, var5 + 9, 6);
  75.       var2.drawLine(var5 + 6, 9, var5 + 6, 9);
  76.       var2.drawLine(var5 + 10, 6, var5 + 10, 9);
  77.       var2.drawLine(var5 + 6, 10, var5 + 9, 10);
  78.       var2.setColor(MetalLookAndFeel.getPrimaryControl());
  79.       var2.drawLine(var5 + 6, 7, var5 + 6, 8);
  80.       var2.drawLine(var5 + 7, 6, var5 + 8, 6);
  81.       var2.drawLine(var5 + 9, 7, var5 + 9, 7);
  82.       var2.drawLine(var5 + 7, 9, var5 + 7, 9);
  83.       var2.setColor(MetalLookAndFeel.getPrimaryControlHighlight());
  84.       var2.drawLine(var5 + 8, 9, var5 + 9, 9);
  85.       var2.drawLine(var5 + 9, 8, var5 + 9, 8);
  86.    }
  87.  
  88.    public int getIconWidth() {
  89.       return MetalIconFactory.access$1800().width;
  90.    }
  91.  
  92.    public int getIconHeight() {
  93.       return MetalIconFactory.access$1800().height;
  94.    }
  95. }
  96.