Mercurial > hg > Database > Alice
annotate src/main/java/alice/test/chat/ChatWindow.java @ 601:30f2c04571c2 dispose
add chat, add Star topology to topology manager&node
author | Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp> |
---|---|
date | Wed, 27 Apr 2016 16:28:10 +0900 |
parents | |
children | 8a9fd716c335 |
rev | line source |
---|---|
601
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
1 package alice.test.chat; |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
2 |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
3 import alice.codesegment.CodeSegment; |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
4 import alice.datasegment.CommandType; |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
5 import alice.datasegment.Receiver; |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
6 |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
7 import javax.swing.*; |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
8 import java.awt.*; |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
9 import java.awt.event.ActionEvent; |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
10 import java.awt.event.ActionListener; |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
11 |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
12 /** |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
13 * Created by e125769 on 3/29/16. |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
14 */ |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
15 public class ChatWindow extends CodeSegment{ |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
16 |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
17 public JTextArea textArea; |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
18 public Receiver name = ids.create(CommandType.PEEK); |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
19 |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
20 public ChatWindow(){ |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
21 name.setKey("local","userName"); |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
22 } |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
23 |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
24 @Override |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
25 public void run() { |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
26 JFrame mainFrame = new JFrame("Chat"); |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
27 mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
28 mainFrame.setSize(300, 500); |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
29 mainFrame.setLocationRelativeTo(null); |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
30 Container contentPane = mainFrame.getContentPane(); |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
31 |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
32 textArea = new JTextArea(5,0); |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
33 JScrollPane scrollPane = new JScrollPane(textArea); |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
34 |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
35 final JTextField textField = new JTextField(); |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
36 textField.addActionListener(new ActionListener() { |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
37 public void actionPerformed(ActionEvent e) { |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
38 send("(" + name+ ") " + textField.getText() + "\n"); |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
39 textField.setText(""); |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
40 } |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
41 }); |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
42 |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
43 contentPane.add(scrollPane, BorderLayout.CENTER); |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
44 contentPane.add(textField, BorderLayout.SOUTH); |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
45 mainFrame.setVisible(true); |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
46 } |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
47 |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
48 public void show(String message){ |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
49 textArea.append(message); |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
50 } |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
51 |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
52 public void send(String message){ |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
53 ods.put("sendMessage", message); |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
54 } |
30f2c04571c2
add chat, add Star topology to topology manager&node
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
55 } |