1 package nl.tudelft.goal.ut2004.visualizer.panels.connection;
2
3 import java.awt.event.ActionEvent;
4 import java.awt.event.ActionListener;
5 import java.net.URI;
6
7 import javax.swing.JButton;
8 import javax.swing.JLabel;
9 import javax.swing.JPanel;
10
11 import cz.cuni.amis.utils.flag.Flag;
12 import cz.cuni.amis.utils.flag.FlagListener;
13
14 public class ConnectedPanel extends JPanel {
15
16 private final JLabel connectionStatus;
17 private final JButton disconnectButton;
18
19 public ConnectedPanel(Flag<URI> uriFlag, final IDisconnect disconnect) {
20 this.connectionStatus = new JLabel("Connected to: " + uriFlag.getFlag());
21 this.disconnectButton = new JButton("Disconnect");
22
23 add(connectionStatus);
24 add(disconnectButton);
25
26 uriFlag.addListener(new FlagListener<URI>() {
27
28 @Override
29 public void flagChanged(URI changedValue) {
30 connectionStatus.setText("Connected to: " + changedValue);
31 }
32 });
33
34 this.disconnectButton.addActionListener(new ActionListener() {
35
36 @Override
37 public void actionPerformed(ActionEvent arg0) {
38 disconnect.disconnect();
39
40 }
41 });
42 }
43 }