home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1999 May / PCWK5A99.ISO / Linuxwld / linuxwld.exe / ConnectPanel.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-05-31  |  3.5 KB  |  150 lines

  1. import java.awt.Button;
  2. import java.awt.Color;
  3. import java.awt.Container;
  4. import java.awt.Event;
  5. import java.awt.FlowLayout;
  6. import java.awt.Font;
  7. import java.awt.GridLayout;
  8. import java.awt.Label;
  9. import java.awt.Panel;
  10. import java.awt.TextField;
  11.  
  12. public class ConnectPanel extends Panel {
  13.    Label pStatic1;
  14.    Label pStatic2;
  15.    Label pStatic3;
  16.    Label pStatic4;
  17.    TextField pNickEdit;
  18.    TextField pRealEdit;
  19.    TextField pEmailEdit;
  20.    TextField pWarnEdit;
  21.    TextField pPasswdEdit;
  22.    Button pDoConnectBtn;
  23.    Button pConnectCancelBtn;
  24.    ParaChat chat;
  25.  
  26.    public ConnectPanel(ParaChat var1) {
  27.       this.chat = var1;
  28.       String var2 = this.chat.nickName;
  29.       String var3 = this.chat.realName;
  30.       String var4 = this.chat.emailAddr;
  31.       String var5 = this.chat.passwd;
  32.       MsgTable var6 = this.chat.xtab;
  33.       this.pStatic1 = new Label(var6.translate("Nick Name (required)"));
  34.       this.pNickEdit = new TextField(var2, 18);
  35.       this.pStatic2 = new Label(var6.translate("Real Name (optional)"));
  36.       this.pRealEdit = new TextField(var3, 18);
  37.       this.pStatic3 = new Label(var6.translate("Email Address (optional)"));
  38.       this.pEmailEdit = new TextField(var4, 18);
  39.       this.pStatic4 = new Label(var6.translate("Password (for some rooms)"));
  40.       this.pWarnEdit = new TextField(var6.translate("**WARNING** The information above is visible to ALL users!!"));
  41.       this.pWarnEdit.setFont(new Font("Dialog", 1, 11));
  42.       this.pWarnEdit.setForeground(Color.red);
  43.       this.pWarnEdit.setBackground(Color.black);
  44.       this.pWarnEdit.setEditable(false);
  45.       this.pPasswdEdit = new TextField("", 18);
  46.       this.pPasswdEdit.setEchoCharacter('*');
  47.       this.pPasswdEdit.setText(var5);
  48.       this.pDoConnectBtn = new Button(var6.translate("OK, Connect!"));
  49.       this.pDoConnectBtn.setFont(new Font("Dialog", 1, 11));
  50.       this.pConnectCancelBtn = new Button(var6.translate("Cancel"));
  51.       this.pConnectCancelBtn.setFont(new Font("Dialog", 1, 11));
  52.       ((Container)this).setLayout(new GridLayout(6, 1, 2, 1));
  53.       Panel var7 = new Panel();
  54.       Panel var8 = new Panel();
  55.       Panel var9 = new Panel();
  56.       Panel var10 = new Panel();
  57.       Panel var11 = new Panel();
  58.       Panel var12 = new Panel();
  59.       ((Container)var12).setLayout(new GridLayout(1, 2, 2, 2));
  60.       ((Container)var7).add(this.pStatic1);
  61.       ((Container)var7).add(this.pNickEdit);
  62.       ((Container)var8).add(this.pStatic2);
  63.       ((Container)var8).add(this.pRealEdit);
  64.       ((Container)var9).add(this.pStatic3);
  65.       ((Container)var9).add(this.pEmailEdit);
  66.       ((Container)var10).add(this.pWarnEdit);
  67.       ((Container)var10).add(new Label(""));
  68.       ((Container)var11).add(this.pStatic4);
  69.       ((Container)var11).add(this.pPasswdEdit);
  70.       Panel var13 = new Panel();
  71.       Panel var14 = new Panel();
  72.       ((Container)var13).setLayout(new FlowLayout(1, 5, 10));
  73.       ((Container)var14).setLayout(new FlowLayout(1, 5, 10));
  74.       ((Container)var13).add(this.pDoConnectBtn);
  75.       ((Container)var14).add(this.pConnectCancelBtn);
  76.       ((Container)var12).add(var13);
  77.       ((Container)var12).add(var14);
  78.       ((Container)this).add(var7);
  79.       ((Container)this).add(var8);
  80.       ((Container)this).add(var9);
  81.       ((Container)this).add(var10);
  82.       ((Container)this).add(var11);
  83.       ((Container)this).add(var12);
  84.       this.display();
  85.    }
  86.  
  87.    public void display() {
  88.       this.pNickEdit.requestFocus();
  89.    }
  90.  
  91.    public String getNick() {
  92.       return this.pNickEdit.getText();
  93.    }
  94.  
  95.    public String getReal() {
  96.       return this.pRealEdit.getText();
  97.    }
  98.  
  99.    public String getEmail() {
  100.       return this.pEmailEdit.getText();
  101.    }
  102.  
  103.    public String getPasswd() {
  104.       return this.pPasswdEdit.getText();
  105.    }
  106.  
  107.    public boolean handleEvent(Event var1) {
  108.       if (var1.id == 401 && var1.key == 9) {
  109.          if (var1.target == this.pNickEdit) {
  110.             this.pRealEdit.requestFocus();
  111.          } else if (var1.target == this.pRealEdit) {
  112.             this.pEmailEdit.requestFocus();
  113.          } else if (var1.target == this.pEmailEdit) {
  114.             this.pPasswdEdit.requestFocus();
  115.          } else {
  116.             if (var1.target != this.pPasswdEdit) {
  117.                return false;
  118.             }
  119.  
  120.             this.pNickEdit.requestFocus();
  121.          }
  122.  
  123.          return true;
  124.       } else {
  125.          return super.handleEvent(var1);
  126.       }
  127.    }
  128.  
  129.    public boolean action(Event var1, Object var2) {
  130.       if (var1.target == this.pDoConnectBtn) {
  131.          if (!this.chat.isShortAlphaNum(this.pNickEdit.getText())) {
  132.             if (this.pNickEdit.getText().length() > 18) {
  133.                this.pNickEdit.setText(this.chat.xtab.translate("Nick name too long!"));
  134.             } else {
  135.                this.pNickEdit.setText(this.chat.xtab.translate("Enter a single alphanumeric word"));
  136.             }
  137.  
  138.             return false;
  139.          }
  140.  
  141.          this.chat.hideConnectionControls();
  142.          this.chat.doConnect();
  143.       } else if (var1.target == this.pConnectCancelBtn) {
  144.          this.chat.hideConnectionControls();
  145.       }
  146.  
  147.       return false;
  148.    }
  149. }
  150.