home *** CD-ROM | disk | FTP | other *** search
/ CD Actual Thematic 7: Programming / CDAT7.iso / Share / Java / Bluette / Plastic / demo / GraphicsApplet.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-07-21  |  2.5 KB  |  73 lines

  1. import java.applet.Applet;
  2. import java.awt.Color;
  3. import java.awt.Component;
  4. import java.awt.Dimension;
  5. import java.awt.Font;
  6. import java.awt.FontMetrics;
  7. import java.awt.Graphics;
  8. import java.awt.Image;
  9.  
  10. public class GraphicsApplet extends Applet {
  11.    Font appFont;
  12.    Color appColor;
  13.    String appShape;
  14.    String appText;
  15.    Image image;
  16.  
  17.    public void init() {
  18.       this.appFont = new Font("Helvetica", 1, 14);
  19.       String var1 = ((Applet)this).getParameter("COLOR");
  20.       if (var1 != null) {
  21.          this.appColor = this.colorFromString(var1, Color.red);
  22.       }
  23.  
  24.       this.appShape = ((Applet)this).getParameter("SHAPE");
  25.       if (this.appShape == null) {
  26.          this.appShape = "Line";
  27.       }
  28.  
  29.       this.appText = ((Applet)this).getParameter("TEXT");
  30.       if (this.appText == null) {
  31.          this.appText = "Graphics";
  32.       }
  33.  
  34.       var1 = ((Applet)this).getParameter("IMAGE");
  35.       if (var1 != null) {
  36.          this.image = ((Applet)this).getImage(((Applet)this).getDocumentBase(), var1);
  37.       }
  38.  
  39.    }
  40.  
  41.    public Color colorFromString(String var1, Color var2) {
  42.       try {
  43.          Integer var3 = Integer.valueOf(var1, 16);
  44.          return new Color(var3);
  45.       } catch (NumberFormatException var4) {
  46.          return var2;
  47.       }
  48.    }
  49.  
  50.    public void drawCenteredString(String var1, Graphics var2, Dimension var3) {
  51.       FontMetrics var4 = var2.getFontMetrics(this.appFont);
  52.       var2.drawString(var1, (var3.width - var4.stringWidth(var1)) / 2, (var3.height - var4.getHeight()) / 2);
  53.    }
  54.  
  55.    public void paint(Graphics var1) {
  56.       Dimension var2 = ((Component)this).size();
  57.       var1.setColor(this.appColor);
  58.       if (this.appShape.equalsIgnoreCase("line")) {
  59.          var1.drawLine(0, 0, var2.width, var2.height);
  60.       } else if (this.appShape.equalsIgnoreCase("rectangle")) {
  61.          var1.drawRect(0, 0, var2.width - 1, var2.height - 1);
  62.       } else if (this.appShape.equalsIgnoreCase("image")) {
  63.          var1.drawImage(this.image, 0, 0, var2.width, var2.height, this);
  64.       } else {
  65.          if (this.appShape.equalsIgnoreCase("string")) {
  66.             var1.setFont(this.appFont);
  67.             this.drawCenteredString(this.appText, var1, var2);
  68.          }
  69.  
  70.       }
  71.    }
  72. }
  73.