aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/ui
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/ui')
-rw-r--r--src/main/java/ui/ChooseOpponentPanel.java66
-rw-r--r--src/main/java/ui/LoginPanel.java4
-rw-r--r--src/main/java/ui/MainFrame.java13
3 files changed, 65 insertions, 18 deletions
diff --git a/src/main/java/ui/ChooseOpponentPanel.java b/src/main/java/ui/ChooseOpponentPanel.java
index e508f6e..1b63fca 100644
--- a/src/main/java/ui/ChooseOpponentPanel.java
+++ b/src/main/java/ui/ChooseOpponentPanel.java
@@ -1,25 +1,81 @@
package ui;
import javax.swing.JPanel;
+import javax.swing.JLabel;
+import javax.swing.JTextField;
+import javax.swing.SwingUtilities;
+
+import models.ComboBoxUser;
+import models.User;
+import models.UserListWrapper;
+
+import javax.swing.JTextArea;
+import java.awt.SystemColor;
+import java.awt.Font;
+import java.awt.BorderLayout;
+import java.awt.Color;
import javax.swing.JButton;
import javax.swing.JComboBox;
+import javax.swing.JFrame;
+
+import java.awt.event.ActionListener;
+import java.beans.XMLDecoder;
+import java.io.ByteArrayInputStream;
+import java.nio.ByteBuffer;
+import java.nio.channels.SocketChannel;
+import java.util.ArrayList;
+import java.util.List;
+import java.awt.event.ActionEvent;
public class ChooseOpponentPanel extends JPanel {
- /**
- * Create the panel.
- */
+ JButton btnSendGameRequest;
+ JComboBox comboBox;
public ChooseOpponentPanel() {
setLayout(null);
- JButton btnSendGameRequest = new JButton("Send Game Request");
+ btnSendGameRequest = new JButton("Send Game Request");
btnSendGameRequest.setBounds(134, 153, 166, 23);
add(btnSendGameRequest);
- JComboBox comboBox = new JComboBox();
+ comboBox = new JComboBox();
comboBox.setBounds(134, 101, 166, 22);
add(comboBox);
}
+
+ public void getUsers() {
+ MainFrame topFrame=(MainFrame) SwingUtilities.getAncestorOfClass(MainFrame.class, ChooseOpponentPanel.this);
+ try {
+ SocketChannel client=topFrame.getClient();
+ ByteBuffer readBuffer=topFrame.getReadBuffer();
+ ByteBuffer buff = ByteBuffer.wrap("REQUESTUSERS".getBytes());
+ client.write(buff);
+ client.configureBlocking(true);
+ readBuffer.clear();
+ StringBuilder sb=new StringBuilder();
+ while(client.read(readBuffer)>0) {
+ System.out.println("uslo");
+ readBuffer.flip();
+ byte[] bytes = new byte[readBuffer.limit()];
+ readBuffer.get(bytes);
+ sb.append(new String(bytes));
+ readBuffer.clear();
+ client.configureBlocking(false);
+ }
+ XMLDecoder decoder = null;
+ decoder = new XMLDecoder(new ByteArrayInputStream(sb.toString().getBytes()));
+ UserListWrapper wp=(UserListWrapper) decoder.readObject();
+ decoder.close();
+ comboBox.removeAllItems();
+ for(User user :wp.getUsers()) {
+ comboBox.addItem(new ComboBoxUser(user));
+
+ }
+
+ } catch (Exception e) {
+ // TODO: handle exception
+ }
+ }
}
diff --git a/src/main/java/ui/LoginPanel.java b/src/main/java/ui/LoginPanel.java
index 5ab4c0d..7ec97f1 100644
--- a/src/main/java/ui/LoginPanel.java
+++ b/src/main/java/ui/LoginPanel.java
@@ -102,8 +102,10 @@ public class LoginPanel extends JPanel {
if(response[0].trim().equals("ACCEPTED")) {
topFrame.setUserId(Long.parseLong(response[1].trim()));
topFrame.getContentPane().removeAll();
- topFrame.getContentPane().add(new ChooseOpponentPanel(),BorderLayout.CENTER);
+ ChooseOpponentPanel panel=new ChooseOpponentPanel();
+ topFrame.getContentPane().add(panel,BorderLayout.CENTER);
SwingUtilities.updateComponentTreeUI(topFrame);
+ panel.getUsers();
}else {
diff --git a/src/main/java/ui/MainFrame.java b/src/main/java/ui/MainFrame.java
index cfef0ba..cb6c6ca 100644
--- a/src/main/java/ui/MainFrame.java
+++ b/src/main/java/ui/MainFrame.java
@@ -75,18 +75,7 @@ public class MainFrame extends JFrame implements Runnable {
@Override
public void run() {
while(true) {
- try {
-
-
-
-
-
-
-
- } catch (Exception e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
+
}
}