home *** CD-ROM | disk | FTP | other *** search
/ Computer Shopper 139 / dpcs0999.iso / Web / CFserver / data1.cab / Java / CFJava.cab / CFJavaRuntime.cab / netscape / application / Image.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-10-01  |  3.9 KB  |  183 lines

  1. package netscape.application;
  2.  
  3. import netscape.util.ClassInfo;
  4. import netscape.util.Codable;
  5. import netscape.util.CodingException;
  6. import netscape.util.Decoder;
  7. import netscape.util.Encoder;
  8. import netscape.util.InconsistencyException;
  9.  
  10. public abstract class Image implements Codable {
  11.    public static final int CENTERED = 0;
  12.    public static final int SCALED = 1;
  13.    public static final int TILED = 2;
  14.    public static final String IMAGE_TYPE = "netscape.application.Image";
  15.  
  16.    public static Image imageNamed(String var0) {
  17.       String var4 = "";
  18.       int var5 = var0.indexOf(47);
  19.       if (var5 == -1) {
  20.          var5 = var0.indexOf(92);
  21.       }
  22.  
  23.       if (var5 == -1) {
  24.          return null;
  25.       } else {
  26.          String var3 = var0.substring(0, var5);
  27.  
  28.          Class var1;
  29.          try {
  30.             var4 = "netscape.application." + var3;
  31.             var1 = Class.forName(var4);
  32.          } catch (ClassNotFoundException var10) {
  33.             var1 = null;
  34.          }
  35.  
  36.          if (var1 == null) {
  37.             try {
  38.                var4 = var3;
  39.                var1 = Class.forName(var3);
  40.             } catch (ClassNotFoundException var9) {
  41.                var1 = null;
  42.             }
  43.          }
  44.  
  45.          if (var1 == null) {
  46.             return null;
  47.          } else {
  48.             Image var2;
  49.             try {
  50.                var2 = (Image)var1.newInstance();
  51.             } catch (InstantiationException var7) {
  52.                throw new InconsistencyException("Unable to instantiate class \"" + var4 + "\" -- " + ((Throwable)var7).getMessage());
  53.             } catch (IllegalAccessException var8) {
  54.                throw new InconsistencyException("Illegal access to class \"" + var4 + "\" -- " + ((Throwable)var8).getMessage());
  55.             }
  56.  
  57.             return var2.imageWithName(var0.substring(var5 + 1));
  58.          }
  59.       }
  60.    }
  61.  
  62.    public abstract int width();
  63.  
  64.    public abstract int height();
  65.  
  66.    public abstract void drawAt(Graphics var1, int var2, int var3);
  67.  
  68.    public void drawScaled(Graphics var1, int var2, int var3, int var4, int var5) {
  69.       this.drawCentered(var1, var2, var3, var4, var5);
  70.    }
  71.  
  72.    public String name() {
  73.       return null;
  74.    }
  75.  
  76.    public void drawCentered(Graphics var1, int var2, int var3, int var4, int var5) {
  77.       this.drawAt(var1, var2 + (var4 - this.width()) / 2, var3 + (var5 - this.height()) / 2);
  78.    }
  79.  
  80.    public void drawCentered(Graphics var1, Rect var2) {
  81.       if (var2 != null) {
  82.          this.drawCentered(var1, var2.x, var2.y, var2.width, var2.height);
  83.       }
  84.    }
  85.  
  86.    public void drawScaled(Graphics var1, Rect var2) {
  87.       if (var2 != null) {
  88.          this.drawScaled(var1, var2.x, var2.y, var2.width, var2.height);
  89.       }
  90.    }
  91.  
  92.    public void drawTiled(Graphics var1, int var2, int var3, int var4, int var5) {
  93.       Rect var6 = var1.clipRect();
  94.       int var7 = this.width();
  95.       int var8 = this.height();
  96.       if (var7 > 0 && var8 > 0) {
  97.          var1.pushState();
  98.          var1.setClipRect(new Rect(var2, var3, var4, var5));
  99.          int var9;
  100.          if (var2 > var6.x) {
  101.             var9 = var2;
  102.          } else {
  103.             var9 = var2 + var7 * ((var6.x - var2) / var7);
  104.          }
  105.  
  106.          int var11;
  107.          if (var2 + var4 < var6.maxX()) {
  108.             var11 = var2 + var4;
  109.          } else {
  110.             var11 = var6.maxX();
  111.          }
  112.  
  113.          int var10;
  114.          if (var3 > var6.y) {
  115.             var10 = var3;
  116.          } else {
  117.             var10 = var3 + var8 * ((var6.y - var3) / var8);
  118.          }
  119.  
  120.          int var12;
  121.          if (var3 + var5 < var6.maxY()) {
  122.             var12 = var3 + var5;
  123.          } else {
  124.             var12 = var6.maxY();
  125.          }
  126.  
  127.          for(int var13 = var9; var13 < var11; var13 += var7) {
  128.             for(int var14 = var10; var14 < var12; var14 += var8) {
  129.                this.drawAt(var1, var13, var14);
  130.             }
  131.          }
  132.  
  133.          var1.popState();
  134.       }
  135.    }
  136.  
  137.    public void drawTiled(Graphics var1, Rect var2) {
  138.       if (var2 != null) {
  139.          this.drawTiled(var1, var2.x, var2.y, var2.width, var2.height);
  140.       }
  141.    }
  142.  
  143.    public void drawWithStyle(Graphics var1, int var2, int var3, int var4, int var5, int var6) {
  144.       switch (var6) {
  145.          case 0:
  146.             this.drawCentered(var1, var2, var3, var4, var5);
  147.             return;
  148.          case 1:
  149.             this.drawScaled(var1, var2, var3, var4, var5);
  150.             return;
  151.          case 2:
  152.             this.drawTiled(var1, var2, var3, var4, var5);
  153.             return;
  154.          default:
  155.             throw new InconsistencyException("Unknown style: " + var6);
  156.       }
  157.    }
  158.  
  159.    public void drawWithStyle(Graphics var1, Rect var2, int var3) {
  160.       this.drawWithStyle(var1, var2.x, var2.y, var2.width, var2.height, var3);
  161.    }
  162.  
  163.    public Image imageWithName(String var1) {
  164.       return null;
  165.    }
  166.  
  167.    public boolean isTransparent() {
  168.       return true;
  169.    }
  170.  
  171.    public void describeClassInfo(ClassInfo var1) {
  172.    }
  173.  
  174.    public void encode(Encoder var1) throws CodingException {
  175.    }
  176.  
  177.    public void decode(Decoder var1) throws CodingException {
  178.    }
  179.  
  180.    public void finishDecoding() throws CodingException {
  181.    }
  182. }
  183.