home *** CD-ROM | disk | FTP | other *** search
/ PC Professionell 1998 November / PCpro_1998_11.ISO / software / Lotus / NETOBJ / T2.Z / TimeBasedComp.nfx (.txt) < prev    next >
Encoding:
Java Class File  |  1998-03-09  |  5.2 KB  |  289 lines

  1. public class TimeBasedComp extends ComponentApp {
  2.    int maxWidth;
  3.    int maxHeight;
  4.    int numImages;
  5.    static final int MaxImages = 24;
  6.    DDrawJava theJavaApplet;
  7.    int[] imageNames;
  8.    int[] imageURLs;
  9.    int[] imageStarts;
  10.    DAssetManager assetMan;
  11.  
  12.    public String PropertyListener(String var1, String var2, int var3, int var4, IDInspector var5) {
  13.       if (var3 == 1) {
  14.          if (var1.compareTo("Number of Images") == 0) {
  15.             return Integer.toString(this.numImages);
  16.          }
  17.  
  18.          for(int var6 = 0; var6 < this.numImages; ++var6) {
  19.             if (var1.compareTo("Image " + Integer.toString(var6 + 1)) == 0) {
  20.                return Integer.toString(this.imageNames[var6]);
  21.             }
  22.  
  23.             if (var1.compareTo("URL for Image " + Integer.toString(var6 + 1)) == 0) {
  24.                return Integer.toString(this.imageURLs[var6]);
  25.             }
  26.  
  27.             if (var1.compareTo("Start Time for Image " + Integer.toString(var6 + 1)) == 0) {
  28.                return Integer.toString(this.imageStarts[var6]);
  29.             }
  30.          }
  31.       } else if (var1.compareTo("Number of Images") == 0) {
  32.          int var12 = Integer.parseInt(var2, 10);
  33.          if (var12 < 1) {
  34.             return "";
  35.          }
  36.  
  37.          if (var12 > 24) {
  38.             var12 = 24;
  39.          }
  40.  
  41.          if (var12 < this.numImages) {
  42.             for(int var7 = var12; var7 < this.numImages; ++var7) {
  43.                this.imageURLs[var7] = 0;
  44.             }
  45.  
  46.             DImage var14 = new DImage();
  47.             this.maxHeight = this.maxWidth = 0;
  48.  
  49.             for(int var8 = 0; var8 < var12; ++var8) {
  50.                String var9 = this.assetMan.GetAssetLocation(this.imageNames[var8], 1, 1);
  51.                var14.setImageFile(var9);
  52.                IDSize var10 = var14.getSize();
  53.                if (var10.getHeight() > this.maxHeight) {
  54.                   this.maxHeight = var10.getHeight();
  55.                }
  56.  
  57.                if (var10.getWidth() > this.maxWidth) {
  58.                   this.maxWidth = var10.getWidth();
  59.                }
  60.             }
  61.  
  62.             this.theJavaApplet.SetSize(this.maxWidth, this.maxHeight);
  63.          }
  64.  
  65.          while(var12 < this.numImages) {
  66.             this.assetMan.RemoveAsset(this.imageNames[this.numImages += -1]);
  67.          }
  68.  
  69.          this.numImages = var12;
  70.          this.theJavaApplet.AddParam(var1, "String\u0000", var2);
  71.       } else {
  72.          for(int var13 = 0; var13 < this.numImages; ++var13) {
  73.             if (var1.compareTo("Image " + Integer.toString(var13 + 1)) == 0) {
  74.                if (this.imageNames[var13] != 0) {
  75.                   this.assetMan.RemoveAsset(this.imageNames[var13]);
  76.                }
  77.  
  78.                this.imageNames[var13] = Integer.parseInt(var2, 10);
  79.                String var15 = this.assetMan.GetAssetLocation(this.imageNames[var13], 1, 1);
  80.                this.theJavaApplet.setImageFile(var15);
  81.                DImage var17 = new DImage();
  82.                this.maxHeight = this.maxWidth = 0;
  83.  
  84.                for(int var18 = 0; var18 < this.numImages; ++var18) {
  85.                   var15 = this.assetMan.GetAssetLocation(this.imageNames[var18], 1, 1);
  86.                   var17.setImageFile(var15);
  87.                   IDSize var19 = var17.getSize();
  88.                   if (var19.getHeight() > this.maxHeight) {
  89.                      this.maxHeight = var19.getHeight();
  90.                   }
  91.  
  92.                   if (var19.getWidth() > this.maxWidth) {
  93.                      this.maxWidth = var19.getWidth();
  94.                   }
  95.                }
  96.  
  97.                this.theJavaApplet.SetSize(this.maxWidth, this.maxHeight);
  98.             }
  99.  
  100.             if (var1.compareTo("URL for Image " + Integer.toString(var13 + 1)) == 0) {
  101.                this.imageURLs[var13] = Integer.parseInt(var2, 10);
  102.             }
  103.  
  104.             if (var1.compareTo("Start Time for Image " + Integer.toString(var13 + 1)) == 0) {
  105.                this.imageStarts[var13] = Integer.parseInt(var2, 10);
  106.                if (this.imageStarts[var13] > 23) {
  107.                   this.imageStarts[var13] = 23;
  108.                } else if (this.imageStarts[var13] < 0) {
  109.                   this.imageStarts[var13] = 0;
  110.                }
  111.             }
  112.          }
  113.       }
  114.  
  115.       return "";
  116.    }
  117.  
  118.    public void onCopy() {
  119.       int[] var1 = this.imageNames;
  120.       int[] var2 = this.imageURLs;
  121.       this.imageNames = new int[24];
  122.       this.imageURLs = new int[24];
  123.  
  124.       for(int var3 = 0; var3 < this.numImages; ++var3) {
  125.          this.imageNames[var3] = var1[var3];
  126.          this.imageURLs[var3] = var2[var3];
  127.          if (this.imageNames[var3] != 0) {
  128.             this.assetMan.CopyAsset(this.imageNames[var3]);
  129.          }
  130.  
  131.          if (this.imageURLs[var3] != 0) {
  132.             this.assetMan.CopyAsset(this.imageURLs[var3]);
  133.          }
  134.       }
  135.  
  136.    }
  137.  
  138.    public String onInstall(DAssetManager var1, String var2) {
  139.       this.assetMan = var1;
  140.       return "Time Based Picture";
  141.    }
  142.  
  143.    protected void finalize() {
  144.       for(int var1 = 0; var1 < this.numImages; ++var1) {
  145.          if (this.imageNames[var1] != 0) {
  146.             this.assetMan.RemoveAsset(this.imageNames[var1]);
  147.          }
  148.       }
  149.  
  150.    }
  151.  
  152.    public void onUnInstall(DAssetManager var1) {
  153.    }
  154.  
  155.    protected void onImport() {
  156.       for(int var1 = 0; var1 < this.numImages; ++var1) {
  157.          if (this.imageNames[var1] != 0) {
  158.             int var2 = this.imageNames[var1];
  159.             this.imageNames[var1] = this.assetMan.ImportAsset(var2);
  160.          }
  161.       }
  162.  
  163.    }
  164.  
  165.    public void onPublish(DAssetManager var1, int var2) {
  166.       if (var2 == 1) {
  167.          for(int var3 = 0; var3 < this.numImages; ++var3) {
  168.             String var4 = this.assetMan.GetAssetLocation(this.imageNames[var3], var2, 0);
  169.             var4.replace('|', ':');
  170.             this.theJavaApplet.AddParam("Image " + Integer.toString(var3 + 1), "String\u0000", var4);
  171.          }
  172.       } else {
  173.          for(int var11 = 0; var11 < this.numImages; ++var11) {
  174.             this.theJavaApplet.AddParam("Image " + Integer.toString(var11 + 1), "String\u0000", this.assetMan.GetAssetRelativeLocation(this.imageNames[var11], var2, 0));
  175.          }
  176.       }
  177.  
  178.       for(int var12 = 0; var12 < this.numImages; ++var12) {
  179.          String var14;
  180.          if (this.imageURLs[var12] != 0) {
  181.             var14 = this.assetMan.GetAssetLocation(this.imageURLs[var12], var2, 1);
  182.          } else {
  183.             var14 = "";
  184.          }
  185.  
  186.          this.theJavaApplet.AddParam("URL for Image " + Integer.toString(var12 + 1), "String\u0000", var14);
  187.          this.theJavaApplet.AddParam("Start Time for Image " + Integer.toString(var12 + 1), "String\u0000", Integer.toString(this.imageStarts[var12]));
  188.       }
  189.  
  190.       this.theJavaApplet.AddParam("Image Width", "String\u0000", Integer.toString(this.maxWidth));
  191.       this.theJavaApplet.AddParam("Image Height", "String\u0000", Integer.toString(this.maxHeight));
  192.       IDRect var13 = this.theJavaApplet.getObjectRect();
  193.       this.theJavaApplet.AddParam("X Position", "String\u0000", Integer.toString(var13.getLeft()));
  194.       this.theJavaApplet.AddParam("Y Position", "String\u0000", Integer.toString(var13.getTop() + 7));
  195.       IDLayout var15 = this.theJavaApplet.getLayout();
  196.       IDSite var5 = var15.getSite();
  197.       IDStyle var6 = var5.getCurrentStyle();
  198.       int var7 = var15.getBackgroundStyle();
  199.       if (var7 != 0) {
  200.          if (var7 == 1) {
  201.             this.theJavaApplet.AddParam("BackgroundColor", "String\u0000", Integer.toString(var15.getBackgroundColor()));
  202.          } else if (var7 == 2) {
  203.             int var8 = this.assetMan.AddAsset(var15.getBackgroundImage(), "Image\u0000", "");
  204.             String var9 = this.assetMan.GetAssetRelativeLocation(var8, var2, 1);
  205.             if (var2 == 1) {
  206.                var9 = var9;
  207.             }
  208.  
  209.             this.theJavaApplet.AddParam("BackgroundImage", "String\u0000", var9);
  210.          }
  211.       } else {
  212.          var7 = var6.getBackgroundStyle();
  213.          if (var7 == 1) {
  214.             this.theJavaApplet.AddParam("BackgroundColor", "String\u0000", Integer.toString(var6.getBackgroundColor()));
  215.          } else if (var7 == 2) {
  216.             int var17 = this.assetMan.AddAsset(var6.getBackgroundImage(), "Image\u0000", "");
  217.             String var18 = this.assetMan.GetAssetRelativeLocation(var17, var2, 1);
  218.             if (var2 == 1) {
  219.                var18 = var18;
  220.             }
  221.  
  222.             this.theJavaApplet.AddParam("BackgroundImage", "String\u0000", var18);
  223.          }
  224.       }
  225.  
  226.    }
  227.  
  228.    public void onDrop(IDLayout var1, IDRect var2, int var3) {
  229.       if (var3 == 1) {
  230.          this.maxWidth = 0;
  231.          this.maxHeight = 0;
  232.          this.numImages = 3;
  233.          this.imageURLs = new int[24];
  234.          this.imageNames = new int[24];
  235.          this.imageStarts = new int[24];
  236.          int var6 = 0;
  237.  
  238.          do {
  239.             this.imageNames[var6] = 0;
  240.             this.imageURLs[var6] = 0;
  241.             this.imageStarts[var6] = var6++;
  242.          } while(var6 < 24);
  243.  
  244.          this.theJavaApplet = new DDrawJava();
  245.          this.theJavaApplet.setImageFile(this.theJavaApplet.getCodeBase() + "banner.gif");
  246.          this.theJavaApplet.setAppletFileName(this.theJavaApplet.getCodeBase() + "TimeBased.class");
  247.          this.theJavaApplet.setStretch(1);
  248.          this.theJavaApplet.setAltTag("Time Based Loader");
  249.          int var4 = var2.getLeft();
  250.          int var5 = var2.getTop();
  251.          this.theJavaApplet.AddParam("Number of Images", "String\u0000", "3");
  252.          this.imageNames[0] = this.assetMan.AddAsset(this.theJavaApplet.getCodeBase() + "banner.gif", "Image\u0000", "");
  253.          this.imageNames[1] = this.assetMan.AddAsset(this.theJavaApplet.getCodeBase() + "banner2.gif", "Image\u0000", "");
  254.          this.imageNames[2] = this.assetMan.AddAsset(this.theJavaApplet.getCodeBase() + "banner3.gif", "Image\u0000", "");
  255.          DImage var9 = new DImage();
  256.          var9.setImageFile(this.theJavaApplet.getCodeBase() + "banner.gif");
  257.          IDSize var7 = var9.getSize();
  258.          if (var7.getHeight() > this.maxHeight) {
  259.             this.maxHeight = var7.getHeight();
  260.             if (var7.getWidth() > this.maxWidth) {
  261.                this.maxWidth = var7.getWidth();
  262.             }
  263.  
  264.             this.theJavaApplet.SetPositionRect(var4, var5, var4 + this.maxWidth, var5 + this.maxHeight);
  265.          } else if (var7.getWidth() > this.maxWidth) {
  266.             this.maxWidth = var7.getWidth();
  267.             this.theJavaApplet.SetPositionRect(var4, var5, var4 + this.maxWidth, var5 + this.maxHeight);
  268.          }
  269.  
  270.          var1.AddObject(this.theJavaApplet);
  271.       }
  272.    }
  273.  
  274.    public void onInspect(CStringArray var1, CStringArray var2) {
  275.       var1.Set("Number of Images");
  276.       var2.Set("Collection\u0000");
  277.  
  278.       for(int var3 = 0; var3 < this.numImages; ++var3) {
  279.          var1.Set("Image " + Integer.toString(var3 + 1));
  280.          var2.Set("Image\u0000");
  281.          var1.Set("URL for Image " + Integer.toString(var3 + 1));
  282.          var2.Set("Link\u0000");
  283.          var1.Set("Start Time for Image " + Integer.toString(var3 + 1));
  284.          var2.Set("Set(12am|1am|2am|3am|4am|5am|6am|7am|8am|9am|10am|11am|12pm|1pm|2pm|3pm|4pm|5pm|6pm|7pm|8pm|9pm|10pm|11pm)");
  285.       }
  286.  
  287.    }
  288. }
  289.