home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 2000 March / pcp161a.iso / handson / files / copyjava.exe / com / sun / java / swing / LookAndFeel$1.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-02-26  |  2.0 KB  |  57 lines

  1. package com.sun.java.swing;
  2.  
  3. import com.sun.java.swing.plaf.IconUIResource;
  4. import java.io.BufferedInputStream;
  5. import java.io.ByteArrayOutputStream;
  6. import java.io.FilterInputStream;
  7. import java.io.IOException;
  8. import java.io.InputStream;
  9. import java.io.OutputStream;
  10.  
  11. final class LookAndFeel$1 implements UIDefaults.LazyValue {
  12.    // $FF: synthetic field
  13.    private final String val$gifFile;
  14.    // $FF: synthetic field
  15.    private final Class val$baseClass;
  16.  
  17.    public Object createValue(UIDefaults var1) {
  18.       Object var2 = null;
  19.  
  20.       try {
  21.          InputStream var3 = this.val$baseClass.getResourceAsStream(this.val$gifFile);
  22.          if (var3 == null) {
  23.             System.err.println(this.val$baseClass.getName() + "/" + this.val$gifFile + " not found.");
  24.             return null;
  25.          }
  26.  
  27.          BufferedInputStream var4 = new BufferedInputStream(var3);
  28.          ByteArrayOutputStream var5 = new ByteArrayOutputStream(1024);
  29.          byte[] var8 = new byte[1024];
  30.  
  31.          int var6;
  32.          while((var6 = ((FilterInputStream)var4).read(var8)) > 0) {
  33.             var5.write(var8, 0, var6);
  34.          }
  35.  
  36.          ((FilterInputStream)var4).close();
  37.          ((OutputStream)var5).flush();
  38.          var9 = var5.toByteArray();
  39.          if (var9.length == 0) {
  40.             System.err.println("warning: " + this.val$gifFile + " is zero-length");
  41.             return null;
  42.          }
  43.       } catch (IOException var7) {
  44.          System.err.println(((Throwable)var7).toString());
  45.          return null;
  46.       }
  47.  
  48.       return new IconUIResource(new ImageIcon(var9));
  49.    }
  50.  
  51.    // $FF: synthetic method
  52.    LookAndFeel$1(Class var1, String var2) {
  53.       this.val$baseClass = var1;
  54.       this.val$gifFile = var2;
  55.    }
  56. }
  57.