aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/ui/ChooseOpponentPanel.java
diff options
context:
space:
mode:
authorcirakg <ciraboxkg@gmail.com>2022-12-30 04:32:03 +0100
committercirakg <ciraboxkg@gmail.com>2022-12-30 04:32:03 +0100
commit110a2354cff010f88b59dbb302192fce0cc6a9ac (patch)
tree0742a34829c7be0f5d68fa70b6e2c7342dcb9922 /src/main/java/ui/ChooseOpponentPanel.java
parent336af3217840237bba99935d63631d199d5c0e3e (diff)
Omogucen prikaz online korisnika.
Diffstat (limited to 'src/main/java/ui/ChooseOpponentPanel.java')
-rw-r--r--src/main/java/ui/ChooseOpponentPanel.java66
1 files changed, 61 insertions, 5 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
+ }
+ }
}