home *** CD-ROM | disk | FTP | other *** search
- package com.zerog.ia.download.dialogs;
-
- import com.zerog.ia.download.utility.AppletResourceBundle;
- import com.zerog.ia.download.utility.Gestalt;
- import java.awt.Canvas;
- import java.awt.Color;
- import java.awt.Component;
- import java.awt.Dimension;
- import java.awt.Font;
- import java.awt.Graphics;
- import java.awt.Image;
-
- public class ProgressBar extends Canvas {
- int percentDone;
- int fontHeight;
- long timerStarted;
- Image offscreenImage;
- Graphics offscreenGraphics;
- public static final String PERCENT_DONE = ".PercentDone";
- public static final String ABOUT_PREPEND = ".About.Prepend";
- public static final String ABOUT_POSTPEND = ".About.Postpend";
- public static final String ABOUT_A_MINUTE = ".AboutAMinute";
- public static final String LESS_A_MINUTE = ".AboutLessMinute";
- // $FF: synthetic field
- static Class class$com$zerog$ia$download$dialogs$ProgressBar;
-
- public ProgressBar() {
- this(300, 50);
- }
-
- public ProgressBar(int var1, int var2) {
- this.percentDone = 0;
- this.timerStarted = 0L;
- ((Component)this).resize(var1, var2);
- }
-
- public void addNotify() {
- super.addNotify();
- this.fontHeight = ((Component)this).getFontMetrics(((Component)this).getFont()).getHeight();
- this.offscreenImage = ((Component)this).createImage(((Component)this).size().width, ((Component)this).size().height);
- this.offscreenGraphics = this.offscreenImage.getGraphics();
- if (Gestalt.getVMVendor().equals(Gestalt.APPLE_VM)) {
- this.offscreenGraphics.setFont(new Font("SanSerif", 0, 10));
- } else {
- this.offscreenGraphics.setFont(new Font("Dialog", 0, 12));
- }
-
- this.offscreenGraphics.translate(2, 2);
- ((Component)this).repaint();
- }
-
- public void paint(Graphics var1) {
- var1.drawImage(this.offscreenImage, 0, 0, this);
- }
-
- public void update(Graphics var1) {
- Dimension var2 = ((Component)this).size();
- Dimension var3 = ((Component)this).size();
- var3.height = (var2.height >> 1) - 4;
- var3.width = var2.width - 4;
- String var11 = "" + this.percentDone + "% " + AppletResourceBundle.getLocalizedString(this, ".PercentDone");
- if (this.percentDone >= 10) {
- long var4 = System.currentTimeMillis() - this.timerStarted;
- long var6 = (100L * var4 / (long)this.percentDone - var4) / 1000L;
- if (var6 > 90L) {
- var11 = var11 + " (" + AppletResourceBundle.getLocalizedString(this, ".About.Prepend") + " " + (var6 + 30L) / 60L + " " + AppletResourceBundle.getLocalizedString(this, ".About.Postpend") + ")";
- } else if (var6 > 30L) {
- var11 = var11 + " (" + AppletResourceBundle.getLocalizedString(this, ".AboutAMinute") + ")";
- } else {
- var11 = var11 + " (" + AppletResourceBundle.getLocalizedString(this, ".AboutLessMinute") + ")";
- }
- }
-
- int var8 = this.percentDone * var3.width / 100;
- this.offscreenGraphics.setColor(((Component)this).getBackground());
- this.offscreenGraphics.fillRect(-2, -2, var2.width, var2.height);
- this.offscreenGraphics.setColor(Color.black);
- this.offscreenGraphics.drawRect(0, 0, var2.width - 5, var3.height - 1);
- byte var12 = 0;
-
- for(int var13 = 0; var13 <= var12; ++var13) {
- Color var14 = new Color(0, 0, 150);
-
- for(int var15 = var13; var15 < var12; ++var15) {
- var14 = var14.darker();
- }
-
- this.offscreenGraphics.setColor(var14);
- this.offscreenGraphics.fillRect(var13, var13, var8 - var13, var3.height - 1 - var13);
- float var16 = (float)var13 / (float)var12;
- this.offscreenGraphics.setColor(new Color(var16, var16, var16));
- }
-
- this.offscreenGraphics.setColor(Color.black);
- this.offscreenGraphics.drawString(var11, 0, var3.height + (this.fontHeight >> 1) + 5);
- this.paint(var1);
- }
-
- public void setPercentDone(int var1) {
- if (var1 != this.percentDone || var1 == 0) {
- this.percentDone = var1;
- if (this.percentDone < 0) {
- this.percentDone = 0;
- } else if (this.percentDone > 100) {
- this.percentDone = 100;
- }
-
- if (this.timerStarted == 0L && var1 > 0) {
- this.timerStarted = System.currentTimeMillis();
- }
-
- ((Component)this).repaint();
- }
- }
-
- public int getPercentDone() {
- return this.percentDone;
- }
-
- // $FF: synthetic method
- static Class class$(String var0) {
- try {
- return Class.forName(var0);
- } catch (ClassNotFoundException var2) {
- throw new NoClassDefFoundError(((Throwable)var2).getMessage());
- }
- }
-
- static {
- AppletResourceBundle.setDefaultLocalizedString(class$com$zerog$ia$download$dialogs$ProgressBar == null ? (class$com$zerog$ia$download$dialogs$ProgressBar = class$("com.zerog.ia.download.dialogs.ProgressBar")) : class$com$zerog$ia$download$dialogs$ProgressBar, ".PercentDone", "done");
- AppletResourceBundle.setDefaultLocalizedString(class$com$zerog$ia$download$dialogs$ProgressBar == null ? (class$com$zerog$ia$download$dialogs$ProgressBar = class$("com.zerog.ia.download.dialogs.ProgressBar")) : class$com$zerog$ia$download$dialogs$ProgressBar, ".About.Prepend", "About");
- AppletResourceBundle.setDefaultLocalizedString(class$com$zerog$ia$download$dialogs$ProgressBar == null ? (class$com$zerog$ia$download$dialogs$ProgressBar = class$("com.zerog.ia.download.dialogs.ProgressBar")) : class$com$zerog$ia$download$dialogs$ProgressBar, ".About.Postpend", "minutes remaining");
- AppletResourceBundle.setDefaultLocalizedString(class$com$zerog$ia$download$dialogs$ProgressBar == null ? (class$com$zerog$ia$download$dialogs$ProgressBar = class$("com.zerog.ia.download.dialogs.ProgressBar")) : class$com$zerog$ia$download$dialogs$ProgressBar, ".AboutAMinute", "About a minute remaining");
- AppletResourceBundle.setDefaultLocalizedString(class$com$zerog$ia$download$dialogs$ProgressBar == null ? (class$com$zerog$ia$download$dialogs$ProgressBar = class$("com.zerog.ia.download.dialogs.ProgressBar")) : class$com$zerog$ia$download$dialogs$ProgressBar, ".AboutLessMinute", "Less than a minute remaining");
- }
- }
-