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

  1. package com.sun.java.swing;
  2.  
  3. import java.awt.image.ImageConsumer;
  4. import java.util.Hashtable;
  5.  
  6. class SyntheticImageGenerator extends Thread {
  7.    // $FF: renamed from: ic java.awt.image.ImageConsumer
  8.    ImageConsumer field_0;
  9.    boolean useful;
  10.    SyntheticImageGenerator next;
  11.    SyntheticImage parent;
  12.  
  13.    SyntheticImageGenerator(ImageConsumer var1, SyntheticImageGenerator var2, SyntheticImage var3) {
  14.       this.field_0 = var1;
  15.       this.next = var2;
  16.       this.parent = var3;
  17.       this.useful = true;
  18.       ((Thread)this).setDaemon(true);
  19.    }
  20.  
  21.    public void run() {
  22.       ImageConsumer var1 = this.field_0;
  23.       int var2 = this.parent.width;
  24.       int var3 = this.parent.height;
  25.       int var4 = 14;
  26.       if (this.parent.isStatic()) {
  27.          var4 |= 16;
  28.       }
  29.  
  30.       var1.setHints(var4);
  31.       var1.setDimensions(var2, var3);
  32.       var1.setProperties((Hashtable)null);
  33.       var1.setColorModel(SyntheticImage.cm);
  34.       if (this.useful) {
  35.          int[] var5 = new int[var2];
  36.          Thread.currentThread().setPriority(1);
  37.  
  38.          do {
  39.             for(int var6 = 0; var6 < var3 && this.useful; ++var6) {
  40.                this.parent.computeRow(var6, var5);
  41.                var1.setPixels(0, var6, var2, 1, SyntheticImage.cm, var5, 0, var2);
  42.             }
  43.  
  44.             var1.imageComplete(this.parent.isStatic() ? 3 : 2);
  45.          } while(!this.parent.isStatic() && this.useful);
  46.       }
  47.  
  48.    }
  49. }
  50.