home *** CD-ROM | disk | FTP | other *** search
/ PC Pro 1999 April / DPPCPRO0499.ISO / April / Netobjs / Install.exe / data1.cab / Components / AdBanner / FadeTransition.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-12-16  |  2.0 KB  |  94 lines

  1. import java.awt.image.MemoryImageSource;
  2.  
  3. public class FadeTransition extends BannerTransition {
  4.    static final int TOTAL_FRAMES = 8;
  5.    static final int MULTIPLIER = 6102575;
  6.    int[][] random;
  7.    int pixelsPerFrame;
  8.  
  9.    public FadeTransition() {
  10.       super.numOfFrames = 7;
  11.    }
  12.  
  13.    public void finishInit() {
  14.       this.pixelsPerFrame = super.pixelsPerImage / 8;
  15.       this.random = new int[8][this.pixelsPerFrame];
  16.       int[] var1 = new int[8];
  17.  
  18.       for(int var2 = 0; var2 < 8; ++var2) {
  19.          var1[var2] = 0;
  20.       }
  21.  
  22.       int var4 = this.pixelsPerFrame * 8;
  23.       int var5 = (int)System.currentTimeMillis();
  24.  
  25.       int var6;
  26.       for(var6 = 10; (this.pixelsPerFrame % var6 > 0 || super.imageHeight % var6 == 0) && var6 > 1; --var6) {
  27.       }
  28.  
  29.       int var7 = this.pixelsPerFrame / var6;
  30.       int var8 = var4 / var6;
  31.  
  32.       int var3;
  33.       for(int var9 = 0; var9 < var7; this.random[var3][var1[var3]++] = var9++) {
  34.          var5 *= 6102575;
  35.          var3 = var5 >>> 29;
  36.       }
  37.  
  38.       var5 += 20560;
  39.  
  40.       try {
  41.          Thread.sleep(150L);
  42.       } catch (InterruptedException var17) {
  43.       }
  44.  
  45.       for(int var10 = var7; var10 < var8; this.random[var3][var1[var3]++] = var10++) {
  46.          var5 *= 6102575;
  47.          var3 = var5 >>> 29;
  48.  
  49.          while(var1[var3] >= var7) {
  50.             ++var3;
  51.             if (var3 >= 8) {
  52.                var3 = 0;
  53.             }
  54.          }
  55.       }
  56.  
  57.       for(int var11 = 0; var11 < super.numOfFrames; ++var11) {
  58.          for(int var12 = var7; var12 < this.pixelsPerFrame; var12 += var7) {
  59.             for(int var13 = 0; var13 < var7; ++var13) {
  60.                this.random[var11][var12 + var13] = this.random[var11][var13] + var12 * 8;
  61.             }
  62.          }
  63.  
  64.          try {
  65.             Thread.sleep(50L);
  66.          } catch (InterruptedException var16) {
  67.          }
  68.       }
  69.  
  70.       System.arraycopy(super.owner.banners[super.owner.currentBanner].imagePixels, 0, super.workPixels, 0, super.pixelsPerImage);
  71.  
  72.       for(int var20 = 0; var20 < super.numOfFrames; ++var20) {
  73.          try {
  74.             Thread.sleep(100L);
  75.          } catch (InterruptedException var15) {
  76.          }
  77.  
  78.          for(int var21 = 0; var21 < this.pixelsPerFrame; ++var21) {
  79.             super.workPixels[this.random[var20][var21]] = super.owner.banners[super.owner.nextBanner].imagePixels[this.random[var20][var21]];
  80.          }
  81.  
  82.          try {
  83.             Thread.sleep(50L);
  84.          } catch (InterruptedException var14) {
  85.          }
  86.  
  87.          super.frames[var20] = super.owner.createImage(new MemoryImageSource(super.imageWidth, super.imageHeight, super.workPixels, 0, super.imageWidth));
  88.          super.owner.prepareImage(super.frames[var20], super.owner);
  89.       }
  90.  
  91.       super.workPixels = null;
  92.    }
  93. }
  94.