home *** CD-ROM | disk | FTP | other *** search
- package java.awt;
-
- import java.awt.event.TextEvent;
- import java.awt.event.TextListener;
- import java.awt.peer.TextComponentPeer;
- import java.io.IOException;
- import java.io.ObjectInputStream;
- import java.io.ObjectOutputStream;
- import sun.awt.SunToolkit;
-
- public class TextComponent extends Component {
- String text;
- boolean editable = true;
- int selectionStart;
- int selectionEnd;
- protected transient TextListener textListener;
- private static final long serialVersionUID = -2214773872412987419L;
- private int textComponentSerializedDataVersion = 1;
-
- TextComponent(String var1) {
- this.text = var1;
- ((Component)this).setCursor(Cursor.getPredefinedCursor(2));
- }
-
- boolean areInputMethodsEnabled() {
- try {
- Toolkit var1 = Toolkit.getDefaultToolkit();
- return ((SunToolkit)var1).enableInputMethodsForTextComponent();
- } catch (Exception var2) {
- return false;
- }
- }
-
- public void removeNotify() {
- Object var1 = ((Component)this).getTreeLock();
- synchronized(var1){}
-
- try {
- TextComponentPeer var3 = (TextComponentPeer)super.peer;
- if (var3 != null) {
- this.text = var3.getText();
- this.selectionStart = var3.getSelectionStart();
- this.selectionEnd = var3.getSelectionEnd();
- }
-
- super.removeNotify();
- } catch (Throwable var5) {
- throw var5;
- }
-
- }
-
- public synchronized void setText(String var1) {
- this.text = var1;
- TextComponentPeer var2 = (TextComponentPeer)super.peer;
- if (var2 != null) {
- var2.setText(var1);
- }
-
- }
-
- public synchronized String getText() {
- TextComponentPeer var1 = (TextComponentPeer)super.peer;
- if (var1 != null) {
- this.text = var1.getText();
- }
-
- return this.text;
- }
-
- public synchronized String getSelectedText() {
- return this.getText().substring(this.getSelectionStart(), this.getSelectionEnd());
- }
-
- public boolean isEditable() {
- return this.editable;
- }
-
- public synchronized void setEditable(boolean var1) {
- this.editable = var1;
- TextComponentPeer var2 = (TextComponentPeer)super.peer;
- if (var2 != null) {
- var2.setEditable(var1);
- }
-
- }
-
- public synchronized int getSelectionStart() {
- TextComponentPeer var1 = (TextComponentPeer)super.peer;
- if (var1 != null) {
- this.selectionStart = var1.getSelectionStart();
- }
-
- return this.selectionStart;
- }
-
- public synchronized void setSelectionStart(int var1) {
- this.select(var1, this.getSelectionEnd());
- }
-
- public synchronized int getSelectionEnd() {
- TextComponentPeer var1 = (TextComponentPeer)super.peer;
- if (var1 != null) {
- this.selectionEnd = var1.getSelectionEnd();
- }
-
- return this.selectionEnd;
- }
-
- public synchronized void setSelectionEnd(int var1) {
- this.select(this.getSelectionStart(), var1);
- }
-
- public synchronized void select(int var1, int var2) {
- String var3 = this.getText();
- if (var1 < 0) {
- var1 = 0;
- }
-
- if (var2 > var3.length()) {
- var2 = var3.length();
- }
-
- if (var2 < var1) {
- var2 = var1;
- }
-
- if (var1 > var2) {
- var1 = var2;
- }
-
- this.selectionStart = var1;
- this.selectionEnd = var2;
- TextComponentPeer var4 = (TextComponentPeer)super.peer;
- if (var4 != null) {
- var4.select(var1, var2);
- }
-
- }
-
- public synchronized void selectAll() {
- this.getText();
- this.selectionStart = 0;
- this.selectionEnd = this.getText().length();
- TextComponentPeer var1 = (TextComponentPeer)super.peer;
- if (var1 != null) {
- var1.select(this.selectionStart, this.selectionEnd);
- }
-
- }
-
- public synchronized void setCaretPosition(int var1) {
- if (var1 < 0) {
- throw new IllegalArgumentException("position less than zero.");
- } else {
- int var2 = this.getText().length();
- if (var1 > var2) {
- var1 = var2;
- }
-
- TextComponentPeer var3 = (TextComponentPeer)super.peer;
- if (var3 != null) {
- var3.setCaretPosition(var1);
- } else {
- throw new IllegalComponentStateException("Cannot set caret position until after the peer has been created");
- }
- }
- }
-
- public synchronized int getCaretPosition() {
- TextComponentPeer var1 = (TextComponentPeer)super.peer;
- int var2 = 0;
- if (var1 != null) {
- var2 = var1.getCaretPosition();
- }
-
- return var2;
- }
-
- public synchronized void addTextListener(TextListener var1) {
- this.textListener = AWTEventMulticaster.add(this.textListener, var1);
- super.newEventsOnly = true;
- }
-
- public void removeTextListener(TextListener var1) {
- this.textListener = AWTEventMulticaster.remove(this.textListener, var1);
- }
-
- boolean eventEnabled(AWTEvent var1) {
- if (var1.id == 900) {
- return (super.eventMask & 1024L) != 0L || this.textListener != null;
- } else {
- return super.eventEnabled(var1);
- }
- }
-
- protected void processEvent(AWTEvent var1) {
- if (var1 instanceof TextEvent) {
- this.processTextEvent((TextEvent)var1);
- } else {
- super.processEvent(var1);
- }
- }
-
- protected void processTextEvent(TextEvent var1) {
- if (this.textListener != null) {
- int var2 = ((AWTEvent)var1).getID();
- switch (var2) {
- case 900:
- this.textListener.textValueChanged(var1);
- return;
- }
- }
-
- }
-
- protected String paramString() {
- String var1 = super.paramString() + ",text=" + this.getText();
- if (this.editable) {
- var1 = var1 + ",editable";
- }
-
- return var1 + ",selection=" + this.getSelectionStart() + "-" + this.getSelectionEnd();
- }
-
- private void writeObject(ObjectOutputStream var1) throws IOException {
- TextComponentPeer var2 = (TextComponentPeer)super.peer;
- if (var2 != null) {
- this.text = var2.getText();
- this.selectionStart = var2.getSelectionStart();
- this.selectionEnd = var2.getSelectionEnd();
- }
-
- var1.defaultWriteObject();
- AWTEventMulticaster.save(var1, "textL", this.textListener);
- var1.writeObject((Object)null);
- }
-
- private void readObject(ObjectInputStream var1) throws ClassNotFoundException, IOException {
- var1.defaultReadObject();
-
- Object var2;
- while((var2 = var1.readObject()) != null) {
- String var3 = ((String)var2).intern();
- if (var3 == "textL") {
- this.addTextListener((TextListener)var1.readObject());
- } else {
- var1.readObject();
- }
- }
-
- }
- }
-