disconnect button added

git-svn-id: svn://anubis/gvsu@107 45c1a28c-8058-47b2-ae61-ca45b979098e
This commit is contained in:
josh 2008-04-14 00:56:59 +00:00
parent 47e272d82f
commit cc151fea70

View File

@ -16,6 +16,7 @@ public class BlobWars extends JFrame
private JTextField m_serverField; private JTextField m_serverField;
private JLabel m_statusLabel; private JLabel m_statusLabel;
private JButton m_connectButton; private JButton m_connectButton;
private JButton m_disconnectButton;
private EventHandler m_handler; private EventHandler m_handler;
private javax.swing.Timer m_timer; private javax.swing.Timer m_timer;
private Socket m_socket; private Socket m_socket;
@ -48,6 +49,9 @@ public class BlobWars extends JFrame
m_serverField.addKeyListener(m_handler); m_serverField.addKeyListener(m_handler);
add(m_connectButton = new JButton("Connect")); add(m_connectButton = new JButton("Connect"));
m_connectButton.addActionListener(m_handler); m_connectButton.addActionListener(m_handler);
add(m_disconnectButton = new JButton("Disconnect"));
m_disconnectButton.addActionListener(m_handler);
m_disconnectButton.setEnabled(false);
}}); }});
add(new JPanel() {{ add(new JPanel() {{
setLayout(new BoxLayout(this, BoxLayout.X_AXIS)); setLayout(new BoxLayout(this, BoxLayout.X_AXIS));
@ -88,6 +92,7 @@ public class BlobWars extends JFrame
m_connectButton.setEnabled(false); m_connectButton.setEnabled(false);
m_nameField.setEnabled(false); m_nameField.setEnabled(false);
m_serverField.setEnabled(false); m_serverField.setEnabled(false);
m_disconnectButton.setEnabled(true);
m_panel.requestFocusInWindow(); m_panel.requestFocusInWindow();
(new Thread(new ClientHandler())).start(); (new Thread(new ClientHandler())).start();
m_timer = new javax.swing.Timer(50, m_handler); m_timer = new javax.swing.Timer(50, m_handler);
@ -99,6 +104,7 @@ public class BlobWars extends JFrame
{ {
m_timer.stop(); m_timer.stop();
m_connectButton.setEnabled(true); m_connectButton.setEnabled(true);
m_disconnectButton.setEnabled(false);
m_nameField.setEnabled(true); m_nameField.setEnabled(true);
m_serverField.setEnabled(true); m_serverField.setEnabled(true);
m_world.clear(); m_world.clear();
@ -125,7 +131,7 @@ public class BlobWars extends JFrame
try { try {
line = br.readLine(); line = br.readLine();
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); // e.printStackTrace();
break; break;
} }
if (line == null) if (line == null)
@ -166,6 +172,16 @@ public class BlobWars extends JFrame
{ {
doConnect(); doConnect();
} }
else if (e.getSource() == m_disconnectButton)
{
if (m_socket != null)
{
try {
m_socket.close();
} catch (Exception ex) {}
doDisconnect();
}
}
else if (e.getSource() == m_timer) else if (e.getSource() == m_timer)
{ {
/* m_world.step(); /* step the world like the server would /* m_world.step(); /* step the world like the server would