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

  1. package com.sfs.iavazip;
  2.  
  3. import com.sfs.awt.Picture;
  4. import com.sfs.awt.ProgressBar;
  5. import com.sfs.awt.TexturePanel;
  6. import java.awt.AWTEvent;
  7. import java.awt.BorderLayout;
  8. import java.awt.Button;
  9. import java.awt.Component;
  10. import java.awt.Container;
  11. import java.awt.Dialog;
  12. import java.awt.FlowLayout;
  13. import java.awt.Font;
  14. import java.awt.GridLayout;
  15. import java.awt.Label;
  16. import java.awt.Panel;
  17. import java.awt.Rectangle;
  18. import java.awt.Window;
  19. import java.awt.event.ActionEvent;
  20. import java.awt.event.ActionListener;
  21. import java.awt.event.WindowEvent;
  22.  
  23. public abstract class processDlg extends Dialog implements ActionListener, Runnable {
  24.    boolean notCanceled = true;
  25.    iavaZip mainApp;
  26.    // $FF: renamed from: pb com.sfs.awt.ProgressBar
  27.    ProgressBar field_0;
  28.    Label Status;
  29.    Label Heading;
  30.    Thread thread;
  31.    boolean retCode = true;
  32.  
  33.    protected void processWindowEvent(WindowEvent var1) {
  34.       switch (((AWTEvent)var1).getID()) {
  35.          case 201:
  36.             this.processCanceled();
  37.             this.retCode = false;
  38.             ((Window)this).dispose();
  39.             this.notCanceled = false;
  40.             return;
  41.          default:
  42.       }
  43.    }
  44.  
  45.    public abstract void processCanceled();
  46.  
  47.    public void showHeading(String var1) {
  48.       this.Heading.setText(var1);
  49.    }
  50.  
  51.    public void actionPerformed(ActionEvent var1) {
  52.       String var2 = var1.getActionCommand();
  53.       if (var2.equals("Cancel")) {
  54.          this.processCanceled();
  55.          this.retCode = false;
  56.          ((Window)this).dispose();
  57.          this.notCanceled = false;
  58.       }
  59.  
  60.    }
  61.  
  62.    public void setMaximum(int var1) {
  63.       this.field_0.setMaximum((float)var1);
  64.    }
  65.  
  66.    processDlg(iavaZip var1, String var2) {
  67.       super(var1, var2, true);
  68.       this.mainApp = var1;
  69.       ((Container)this).setLayout(new BorderLayout());
  70.       Panel var3 = new Panel();
  71.       ((Container)var3).setLayout(new FlowLayout());
  72.       Panel var4 = new Panel();
  73.       ((Container)var4).setLayout(new GridLayout(2, 1));
  74.       ((Container)var4).add(this.Heading = new Label("preparing Action ...", 1));
  75.       ((Container)var4).add(this.Status = new Label("processing...", 2));
  76.       ((Container)var3).add(var4);
  77.       Font var5 = ((Component)this).getFont();
  78.       this.Heading.setFont(new Font(var5.getName(), 1, var5.getSize()));
  79.       ((Container)var3).add(new Picture(this, var1.progressAnimation, true));
  80.       ((Container)this).add("North", var3);
  81.       ((Container)this).add(this.field_0 = new ProgressBar());
  82.       TexturePanel var6 = new TexturePanel(this, var1.backgroundTexture);
  83.       ((Container)var6).setLayout(new FlowLayout());
  84.       Button var7 = new Button("Cancel");
  85.       ((Container)var6).add(var7);
  86.       var7.addActionListener(this);
  87.       ((Container)this).add("South", var6);
  88.       ((Component)this).enableEvents(64L);
  89.       ((Dialog)this).setResizable(true);
  90.       this.thread = new Thread(this);
  91.    }
  92.  
  93.    public void showStatus(String var1) {
  94.       this.Status.setText(var1);
  95.    }
  96.  
  97.    public abstract void run();
  98.  
  99.    public boolean doModal() {
  100.       ((Window)this).pack();
  101.       Rectangle var1 = ((Component)this).getParent().getBounds();
  102.       Rectangle var2 = ((Component)this).getBounds();
  103.       var2.x = var1.x + (var1.width - var2.width) / 2;
  104.       var2.y = var1.y + (var1.height - var2.height) / 2;
  105.       ((Component)this).setBounds(var2);
  106.       this.thread.start();
  107.       ((Dialog)this).show();
  108.       return this.retCode;
  109.    }
  110. }
  111.