home *** CD-ROM | disk | FTP | other *** search
/ Chip 2001 June / CHIPHEFT062001.ISO / browser / nc32lyc / comm.z / java40.jar / sun / awt / macos / MTextFieldPeer.class (.txt) < prev    next >
Encoding:
Java Class File  |  2000-08-15  |  2.7 KB  |  101 lines

  1. package sun.awt.macos;
  2.  
  3. import java.awt.AWTError;
  4. import java.awt.Color;
  5. import java.awt.Dimension;
  6. import java.awt.FontMetrics;
  7. import java.awt.TextComponent;
  8. import java.awt.TextField;
  9. import java.awt.event.ActionEvent;
  10. import java.awt.event.TextEvent;
  11. import java.awt.peer.TextFieldPeer;
  12.  
  13. public class MTextFieldPeer extends MComponentPeer implements TextFieldPeer {
  14.    public MTextFieldPeer(TextField var1) {
  15.       super(var1);
  16.    }
  17.  
  18.    native void create(MComponentPeer var1);
  19.  
  20.    void initialize() {
  21.       TextField var1 = (TextField)super.target;
  22.       this.setText(((TextComponent)var1).getText());
  23.       if (var1.echoCharIsSet()) {
  24.          this.setEchoCharacter(var1.getEchoChar());
  25.       }
  26.  
  27.       this.select(((TextComponent)var1).getSelectionStart(), ((TextComponent)var1).getSelectionEnd());
  28.       this.setEditable(((TextComponent)var1).isEditable());
  29.       super.initialize();
  30.    }
  31.  
  32.    public void setBackground(Color var1) {
  33.       TextField var2 = (TextField)super.target;
  34.       if (((TextComponent)var2).isEditable()) {
  35.          var1 = var1.brighter();
  36.       }
  37.  
  38.       super.setBackground(var1);
  39.    }
  40.  
  41.    public native void setEditable(boolean var1);
  42.  
  43.    public native void select(int var1, int var2);
  44.  
  45.    public native int getSelectionStart();
  46.  
  47.    public native int getSelectionEnd();
  48.  
  49.    public native void setText(String var1);
  50.  
  51.    public native String getText();
  52.  
  53.    public native void setEchoCharacter(char var1);
  54.  
  55.    public void setEchoChar(char var1) {
  56.       this.setEchoCharacter(var1);
  57.    }
  58.  
  59.    public Dimension getPreferredSize(int var1) {
  60.       return this.preferredSize(var1);
  61.    }
  62.  
  63.    public Dimension getMinimumSize(int var1) {
  64.       return this.minimumSize(var1);
  65.    }
  66.  
  67.    public void setCaretPosition(int var1) {
  68.       throw new AWTError("setCaretPosition is unimplemented.");
  69.    }
  70.  
  71.    public int getCaretPosition() {
  72.       throw new AWTError("getCaretPosition is unimplemented.");
  73.    }
  74.  
  75.    public Dimension minimumSize() {
  76.       FontMetrics var1 = ((MComponentPeer)this).getFontMetrics(super.target.getFont());
  77.       return new Dimension(var1.stringWidth(((TextField)super.target).getText()) + 20, var1.getHeight() + 6);
  78.    }
  79.  
  80.    public Dimension preferredSize(int var1) {
  81.       return this.minimumSize(var1);
  82.    }
  83.  
  84.    public Dimension minimumSize(int var1) {
  85.       FontMetrics var2 = ((MComponentPeer)this).getFontMetrics(super.target.getFont());
  86.       return new Dimension(var2.charWidth('0') * var1 + 20, var2.getHeight() + 6);
  87.    }
  88.  
  89.    public void handleAction() {
  90.       MToolkit.postEvent(new ActionEvent(super.target, 1001, this.getText()));
  91.    }
  92.  
  93.    protected void handleTextChanged() {
  94.       MToolkit.postEvent(new TextEvent(super.target, 900));
  95.    }
  96.  
  97.    public boolean isFocusTraversable() {
  98.       return true;
  99.    }
  100. }
  101.