home *** CD-ROM | disk | FTP | other *** search
- package com.sfs.html;
-
- import java.awt.Image;
- import java.awt.Toolkit;
- import java.awt.image.ImageObserver;
- import java.awt.image.IndexColorModel;
- import java.awt.image.MemoryImageSource;
- import java.net.URL;
-
- class ImageVector implements ImageObserver {
- private static final int ERR_WIDTH = 50;
- private static final int ERR_HEIGHT = 50;
- // $FF: renamed from: tk java.awt.Toolkit
- private static Toolkit field_0 = Toolkit.getDefaultToolkit();
- private static Image errImg;
- private URL[] dataURL = new URL[100];
- private int[] dataWidth = new int[100];
- private int[] dataHeight = new int[100];
- private Image[] dataImage = new Image[100];
- private int size;
- private int index;
-
- private void changeCapacity(int var1) {
- int[] var2 = new int[var1];
- System.arraycopy(this.dataWidth, 0, var2, 0, this.size);
- this.dataWidth = var2;
- var2 = new int[var1];
- System.arraycopy(this.dataHeight, 0, var2, 0, this.size);
- this.dataHeight = var2;
- URL[] var3 = new URL[var1];
- System.arraycopy(this.dataURL, 0, var3, 0, this.size);
- this.dataURL = var3;
- Image[] var4 = new Image[var1];
- System.arraycopy(this.dataImage, 0, var4, 0, this.size);
- this.dataImage = var4;
- }
-
- protected void reset() {
- this.index = 0;
- }
-
- protected synchronized HtmlImage nextElement() {
- if (this.dataImage[this.index] != null) {
- Image var1 = this.dataImage[this.index];
- int var2;
- int var3;
- if (!this.imageSizeAvailable(var1, this.dataWidth[this.index], this.dataHeight[this.index])) {
- this.dataURL[this.index] = null;
- var2 = 50;
- var3 = 50;
- } else {
- var2 = var1.getWidth((ImageObserver)null);
- var3 = var1.getHeight((ImageObserver)null);
- }
-
- this.dataImage[this.index] = null;
- if (this.dataWidth[this.index] < 0) {
- this.dataWidth[this.index] = var2;
- }
-
- if (this.dataHeight[this.index] < 0) {
- this.dataHeight[this.index] = var3;
- }
- }
-
- Image var5;
- if (this.dataURL[this.index] == null) {
- var5 = errImg;
- } else {
- var5 = field_0.getImage(this.dataURL[this.index]);
- }
-
- field_0.prepareImage(var5, this.dataWidth[this.index], this.dataHeight[this.index], (ImageObserver)null);
- HtmlImage var4 = new HtmlImage(-1, -1, this.dataWidth[this.index], this.dataHeight[this.index], var5);
- ++this.index;
- return var4;
- }
-
- private synchronized boolean imageSizeAvailable(Image var1, int var2, int var3) {
- while(true) {
- try {
- int var4 = field_0.checkImage(var1, var2, var3, this);
- if ((var4 & 192) != 0) {
- return false;
- }
-
- if ((var4 & 3) == 3) {
- return true;
- }
-
- this.wait();
- } catch (InterruptedException var5) {
- }
- }
- }
-
- protected boolean hasMoreElements() {
- return this.index < this.size;
- }
-
- public synchronized boolean imageUpdate(Image var1, int var2, int var3, int var4, int var5, int var6) {
- if ((var2 & 192) != 0) {
- this.notify();
- return true;
- } else {
- var2 = field_0.checkImage(var1, -1, -1, (ImageObserver)null);
- if ((var2 & 3) == 3) {
- this.notify();
- return true;
- } else {
- return false;
- }
- }
- }
-
- protected synchronized void addElement(URL var1, String var2, int var3, int var4) {
- if (this.size == this.dataURL.length) {
- this.changeCapacity(2 * this.size);
- }
-
- this.dataWidth[this.size] = var3;
- this.dataHeight[this.size] = var4;
-
- URL var5;
- Image var6;
- try {
- var5 = new URL(var1, var2);
- var6 = field_0.getImage(new URL(var1, var2));
- field_0.prepareImage(var6, var3, var4, (ImageObserver)null);
- } catch (Exception var7) {
- var5 = null;
- var6 = null;
- if (this.dataWidth[this.size] < 0) {
- this.dataWidth[this.size] = 50;
- }
-
- if (this.dataHeight[this.size] < 0) {
- this.dataHeight[this.size] = 50;
- }
- }
-
- this.dataURL[this.size] = var5;
- this.dataImage[this.size] = var6;
- ++this.size;
- }
-
- static {
- byte[] var0 = new byte[]{-1};
- byte[] var1 = new byte[]{0};
- byte[] var2 = new byte[]{0};
- IndexColorModel var3 = new IndexColorModel(1, 1, var0, var1, var2);
- byte[] var4 = new byte[2500];
- int var5 = 0;
-
- do {
- var4[var5] = 0;
- ++var5;
- } while(var5 < 2500);
-
- errImg = field_0.createImage(new MemoryImageSource(50, 50, var3, var4, 0, 50));
- field_0.prepareImage(errImg, -1, -1, (ImageObserver)null);
- }
-
- protected void trimToSize() {
- if (this.size < this.dataURL.length) {
- this.changeCapacity(this.size);
- }
-
- }
-
- private String statusString(int var1) {
- String var2 = "";
- if ((var1 & 128) != 0) {
- var2 = var2 + "ABORT ";
- }
-
- if ((var1 & 32) != 0) {
- var2 = var2 + "ALLBITS ";
- }
-
- if ((var1 & 64) != 0) {
- var2 = var2 + "ERROR ";
- }
-
- if ((var1 & 16) != 0) {
- var2 = var2 + "FRAMEBITS ";
- }
-
- if ((var1 & 2) != 0) {
- var2 = var2 + "HEIGHT ";
- }
-
- if ((var1 & 4) != 0) {
- var2 = var2 + "PROPERTIES ";
- }
-
- if ((var1 & 8) != 0) {
- var2 = var2 + "SOMEBITS ";
- }
-
- if ((var1 & 1) != 0) {
- var2 = var2 + "WIDTH ";
- }
-
- return var2 + var1;
- }
- }
-