home *** CD-ROM | disk | FTP | other *** search
/ Your Web Site Creator / Your Web Site Creator.iso / WebSite / data1.cab / Program_Executable_Files / Classes / HELOCAN2.CLA (.txt) < prev    next >
Encoding:
Java Class File  |  1999-01-13  |  3.1 KB  |  104 lines

  1. import java.applet.Applet;
  2. import java.awt.Canvas;
  3. import java.awt.Color;
  4. import java.awt.Component;
  5. import java.awt.Dimension;
  6. import java.awt.Font;
  7. import java.awt.FontMetrics;
  8. import java.awt.Graphics;
  9. import java.awt.Image;
  10. import java.net.InetAddress;
  11. import java.net.UnknownHostException;
  12.  
  13. public class HelloCanvas2 extends Canvas {
  14.    Image osImage;
  15.    Graphics osg;
  16.    Color bkColor;
  17.    Image bkImage;
  18.    InetAddress address;
  19.    Font font;
  20.    // $FF: renamed from: fm java.awt.FontMetrics
  21.    FontMetrics field_0;
  22.    Color textColor;
  23.  
  24.    public HelloCanvas2(Applet var1, int var2) {
  25.       this.GetParameters(var1, var2);
  26.  
  27.       try {
  28.          this.address = InetAddress.getLocalHost();
  29.       } catch (UnknownHostException var3) {
  30.       }
  31.    }
  32.  
  33.    void GetParameters(Applet var1, int var2) {
  34.       String var3 = var1.getParameter("helloBkColor" + var2);
  35.       this.bkColor = AppletParam2.GetColor(var3, (Color)null);
  36.       if (this.bkColor != null) {
  37.          ((Component)this).setBackground(this.bkColor);
  38.       }
  39.  
  40.       var3 = var1.getParameter("helloBkImage" + var2);
  41.       this.bkImage = var1.getImage(var1.getCodeBase(), var3);
  42.       var3 = var1.getParameter("helloFont" + var2);
  43.       this.font = AppletParam2.GetJavaFont(var3);
  44.       this.field_0 = ((Component)this).getFontMetrics(this.font);
  45.       var3 = var1.getParameter("helloColor" + var2);
  46.       this.textColor = AppletParam2.GetColor(var3, Color.black);
  47.    }
  48.  
  49.    public void paint(Graphics var1) {
  50.       this.update(var1);
  51.    }
  52.  
  53.    public void update(Graphics var1) {
  54.       if (this.osImage == null) {
  55.          this.osImage = ((Component)this).createImage(((Component)this).size().width, ((Component)this).size().height);
  56.          this.osg = this.osImage.getGraphics();
  57.       }
  58.  
  59.       this.osg.setColor(((Component)this).getBackground());
  60.       this.osg.fillRect(0, 0, ((Component)this).size().width, ((Component)this).size().height);
  61.       if (this.bkImage != null) {
  62.          int var2 = this.bkImage.getWidth(this);
  63.          int var3 = this.bkImage.getHeight(this);
  64.          int var4 = ((Component)this).size().width / var2;
  65.          int var5 = ((Component)this).size().height / var3;
  66.          ++var4;
  67.          ++var5;
  68.  
  69.          for(int var6 = 0; var6 < var5; ++var6) {
  70.             for(int var7 = 0; var7 < var4; ++var7) {
  71.                this.osg.drawImage(this.bkImage, var7 * var2, var6 * var3, this);
  72.             }
  73.          }
  74.       }
  75.  
  76.       this.osg.setFont(this.font);
  77.       this.osg.setColor(this.textColor);
  78.       String var8 = "Welcome " + this.address.getHostName() + "!";
  79.       int var9 = ((Component)this).size().width / 2 - this.field_0.stringWidth(var8) / 2;
  80.       int var11 = ((Component)this).size().height / 2 + this.field_0.getAscent() / 2;
  81.       this.osg.drawString(var8, var9, var11);
  82.       var1.drawImage(this.osImage, 0, 0, this);
  83.    }
  84.  
  85.    public Dimension minimumSize() {
  86.       return new Dimension(10, 10);
  87.    }
  88.  
  89.    public Dimension preferredSize() {
  90.       return new Dimension(10, 10);
  91.    }
  92.  
  93.    public synchronized void reshape(int var1, int var2, int var3, int var4) {
  94.       super.reshape(var1, var2, var3, var4);
  95.       this.osImage = null;
  96.       this.osg = null;
  97.    }
  98.  
  99.    public boolean imageUpdate(Image var1, int var2, int var3, int var4, int var5, int var6) {
  100.       ((Component)this).repaint();
  101.       return true;
  102.    }
  103. }
  104.