home *** CD-ROM | disk | FTP | other *** search
/ PC Online 1998 January / PCO0198.ISO / 1&1 / java.z / java_301 / java / awt / Label.class (.txt) < prev    next >
Encoding:
Java Class File  |  1996-10-20  |  2.2 KB  |  82 lines

  1. package java.awt;
  2.  
  3. import java.awt.peer.LabelPeer;
  4.  
  5. public class Label extends Component {
  6.    public static final int LEFT = 0;
  7.    public static final int CENTER = 1;
  8.    public static final int RIGHT = 2;
  9.    String label;
  10.    int alignment;
  11.  
  12.    public Label() {
  13.       this("");
  14.    }
  15.  
  16.    public Label(String label) {
  17.       this.label = label;
  18.    }
  19.  
  20.    public Label(String label, int alignment) {
  21.       this.label = label;
  22.       this.setAlignment(alignment);
  23.    }
  24.  
  25.    public synchronized void addNotify() {
  26.       super.peer = ((Component)this).getToolkit().createLabel(this);
  27.       super.addNotify();
  28.    }
  29.  
  30.    public int getAlignment() {
  31.       return this.alignment;
  32.    }
  33.  
  34.    public void setAlignment(int alignment) {
  35.       switch (alignment) {
  36.          case 0:
  37.          case 1:
  38.          case 2:
  39.             this.alignment = alignment;
  40.             LabelPeer peer = (LabelPeer)super.peer;
  41.             if (peer != null) {
  42.                peer.setAlignment(alignment);
  43.             }
  44.  
  45.             return;
  46.          default:
  47.             throw new IllegalArgumentException("improper alignment: " + alignment);
  48.       }
  49.    }
  50.  
  51.    public String getText() {
  52.       return this.label;
  53.    }
  54.  
  55.    public void setText(String label) {
  56.       if (label != this.label && (this.label == null || !this.label.equals(label))) {
  57.          this.label = label;
  58.          LabelPeer peer = (LabelPeer)super.peer;
  59.          if (peer != null) {
  60.             peer.setText(label);
  61.          }
  62.       }
  63.  
  64.    }
  65.  
  66.    protected String paramString() {
  67.       String str = ",align=";
  68.       switch (this.alignment) {
  69.          case 0:
  70.             str = str + "left";
  71.             break;
  72.          case 1:
  73.             str = str + "center";
  74.             break;
  75.          case 2:
  76.             str = str + "right";
  77.       }
  78.  
  79.       return super.paramString() + str + ",label=" + this.label;
  80.    }
  81. }
  82.