blob: 882534fb4280af72200129dbda1201594fe1d510 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
|
package Client;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.xml.soap.Text;
public class UserInterface extends JFrame implements ActionListener
{
private JTextField message;
private JTextArea output;
private ChatClient client;
private ChatClientReader read;
private JTextField host = new JTextField("localhost", 15);
private JTextField port = new JTextField("6667", 4);
public void outputWriter (String line)
{
output.append(line + "\n");
}
/** Graphic interface recipient the client*/
public UserInterface(ChatClient client)
{
this.client = client;
this.setIconImage(getIconImage());
this.setSize(800, 400);
output = new JTextArea(10, 20);
output.setBackground(Color.gray);
JPanel msgPanel = new JPanel();
JPanel conPanel = new JPanel();
JPanel vertPanel = new JPanel();
message = new JTextField(40);
JButton stop = new JButton("Stop");
stop.setActionCommand("stop");
stop.addActionListener(this);
stop.setToolTipText("Click this button to exit.");
JButton send = new JButton("Send");
send.setActionCommand("send");
send.addActionListener(this);
send.setToolTipText("Click this button to send message.");
JButton connect = new JButton("Connect");
connect.setActionCommand("connect");
connect.addActionListener(this);
connect.setToolTipText("Click this button to connect the server.");
vertPanel.setLayout(new BoxLayout(vertPanel, BoxLayout.PAGE_AXIS));
msgPanel.add(connect);
msgPanel.add(send);
msgPanel.add(new JLabel("Message:"));
msgPanel.add(message);
msgPanel.add(stop);
conPanel.add(new JLabel("host:"));
conPanel.add(host);
conPanel.add(new JLabel("port:"));
conPanel.add(port);
vertPanel.add(output);
vertPanel.add(conPanel);
vertPanel.add(msgPanel);
add(vertPanel);
setVisible(true);
}
/** Syncing the the action that the button send to the perform
* @param name of the action */
int counterClick = 0;
public void actionPerformed(ActionEvent e)
{
System.out.println(e.getActionCommand()); //FIXME: delete.
String command = e.getActionCommand();
if (command == "stop")
{
System.exit(0);
}
if (command == "send")
{
output.append(message.getText() + "\n");
message.setText("");
}
if (counterClick>0 && command == "connect")
{
output.append("You've connected to the server alredy" + "\n");
}
if (command == "connect" && counterClick == 0 )
{
if (client.connect("localhost",(Integer.parseInt("6667"))))
{
output.append("You've connect to the server succesufully" + "\n");
counterClick++;
}
}
}
}
|