home *** CD-ROM | disk | FTP | other *** search
/ PC Online 1997 October / PCO1097.ISO / FilesBBS / WIN95 / IAVAZIP.EXE / DATA.Z / zipView.class (.txt) < prev   
Encoding:
Java Class File  |  1997-08-18  |  2.6 KB  |  104 lines

  1. package com.sfs.iavazip.viewer;
  2.  
  3. import com.sfs.debug.Debug;
  4. import java.awt.BorderLayout;
  5. import java.awt.Color;
  6. import java.awt.Component;
  7. import java.awt.Container;
  8. import java.awt.Font;
  9. import java.awt.Frame;
  10. import java.awt.Label;
  11. import java.awt.TextArea;
  12. import java.io.IOException;
  13. import java.util.Date;
  14. import java.util.Enumeration;
  15. import java.util.zip.ZipEntry;
  16. import java.util.zip.ZipException;
  17. import java.util.zip.ZipFile;
  18.  
  19. public class zipView extends Viewer {
  20.    Frame parent;
  21.    TextArea content;
  22.    // $FF: renamed from: zf java.util.zip.ZipFile
  23.    ZipFile field_0;
  24.  
  25.    public void setArgs(Frame var1, String var2) {
  26.       try {
  27.          this.field_0 = new ZipFile(var2);
  28.          Label var3 = new Label(" Name                             Date                               Size");
  29.          ((Container)this).add("North", var3);
  30.          ((Component)var3).setFont(new Font("DialogInput", 12, 0));
  31.          ((Component)var3).setBackground(Color.lightGray);
  32.          ((Container)this).add("Center", this.content = new TextArea());
  33.          this.content.setFont(new Font("DialogInput", 12, 0));
  34.          this.displayEntries();
  35.          this.flush();
  36.       } catch (ZipException var5) {
  37.          this.flush();
  38.          ((Container)this).add("Center", new Label(((Throwable)var5).getMessage(), 1));
  39.       } catch (IOException var6) {
  40.          this.flush();
  41.          ((Container)this).add("Center", new Label(((Throwable)var6).getMessage(), 1));
  42.       }
  43.  
  44.       ((Container)this).doLayout();
  45.    }
  46.  
  47.    public zipView() {
  48.       ((Container)this).setLayout(new BorderLayout());
  49.    }
  50.  
  51.    void displayEntries() {
  52.       Enumeration var1 = this.field_0.entries();
  53.       StringBuffer var2 = new StringBuffer(100);
  54.  
  55.       while(var1.hasMoreElements()) {
  56.          ZipEntry var3 = (ZipEntry)var1.nextElement();
  57.          if (!var3.isDirectory()) {
  58.             var2.setLength(0);
  59.             String var4 = var3.getName();
  60.             if (var4.length() >= 30) {
  61.                var2.append("...");
  62.                var2.append(var4.substring(var4.length() - 27));
  63.             } else {
  64.                var2.append(var4);
  65.  
  66.                for(int var5 = 30 - var4.length(); var5 > 0; --var5) {
  67.                   var2.append(" ");
  68.                }
  69.             }
  70.  
  71.             var2.append("   ");
  72.             long var8 = var3.getTime();
  73.             if (var8 != -1L) {
  74.                Date var7 = new Date(var8);
  75.                var2.append(var7.toString());
  76.             } else {
  77.                var2.append(" unknown time");
  78.             }
  79.  
  80.             for(int var9 = 51 - var2.length(); var9 > 0; --var9) {
  81.                var2.append(" ");
  82.             }
  83.  
  84.             var2.append("   ").append(var3.getSize()).append('\n');
  85.             this.content.append(var2.toString());
  86.          }
  87.       }
  88.  
  89.    }
  90.  
  91.    public void flush() {
  92.       if (this.field_0 != null) {
  93.          try {
  94.             this.field_0.close();
  95.             this.field_0 = null;
  96.             return;
  97.          } catch (IOException var3) {
  98.             Debug.Info("zipView.flush() failed during " + ((Throwable)var3).getMessage());
  99.          }
  100.       }
  101.  
  102.    }
  103. }
  104.