]> code.citadel.org Git - citadel.git/blob - shaggy/loginPanel.java
*** empty log message ***
[citadel.git] / shaggy / loginPanel.java
1 import javax.swing.*;
2 import java.awt.*;
3 import java.awt.event.*;
4
5 public class loginPanel extends JPanel {
6   JLabel        serverBlurb;
7   JTextArea     message;
8   JTextField    user, pass;
9   JButton       login;
10
11   public loginPanel() {
12     setLayout( new BorderLayout() );
13     add( "North", serverBlurb = new JLabel( "this is where you'd have server info" ) );
14
15     JPanel      p = new JPanel();
16     p.setLayout( new BorderLayout() );
17     p.setBorder( BorderFactory.createTitledBorder( 
18                   BorderFactory.createEtchedBorder(), "Welcome Message" ) );
19     p.add( "Center", message = new JTextArea() );
20     message.setLineWrap( true );
21     message.setWrapStyleWord( true );
22     add( "Center", p );
23
24     p = new JPanel();
25     p.setLayout( new BorderLayout() );
26
27     PairPanel   pp = new PairPanel( 4, 4 );
28     pp.addLeft( new JLabel( "User:" ) );
29     pp.addRight( user = new JTextField( 10 ) );
30     pp.addLeft( new JLabel( "Pass:" ) );
31     pp.addRight( pass = new JPasswordField( 10 ) );
32
33     user.addActionListener( new ActionListener() {
34       public void actionPerformed( ActionEvent e ) {
35         pass.requestFocus();
36       }
37     } );
38
39     pass.addActionListener( new ActionListener() {
40       public void actionPerformed( ActionEvent e ) {
41         citadel.me.authenticate( user.getText(), pass.getText() );
42       } } );
43
44     p.add( "Center", pp );
45
46   
47     p.add( "East", login = new JButton( "Login" ) );
48     login.addActionListener( new ActionListener() {
49       public void actionPerformed( ActionEvent e ) {
50         citadel.me.authenticate( user.getText(), pass.getText() );
51       } } );
52
53     add( "South", p );
54   }
55
56   public void refresh() {
57     serverBlurb.setText( "Connecting..." );
58     message.setText( "" );
59     login.setEnabled( true );
60     citadel.me.getServerInfo( new CallBack() {
61       public void run( citReply r ) {
62         server  sI = new server( r );
63         serverBlurb.setText( sI.blurb );       
64         citadel.me.setServerInfo( sI );
65       }});
66     citadel.me.getSystemMessage( "hello", new CallBack() {
67       public void run( citReply r ) {
68         message.setText( r.getData() );
69         }
70       });
71   }
72
73   public void setDefault( String user, String pass ) {
74     this.user.setText( user );
75     this.pass.setText( pass );
76   }
77 }
78
79