|
@@ -1,87 +0,0 @@
|
|
|
-package client.view;
|
|
|
|
|
-
|
|
|
|
|
-import java.awt.BorderLayout;
|
|
|
|
|
-import java.awt.Color;
|
|
|
|
|
-import java.awt.Dimension;
|
|
|
|
|
-import java.awt.Graphics;
|
|
|
|
|
-import java.awt.Graphics2D;
|
|
|
|
|
-import java.awt.GridLayout;
|
|
|
|
|
-import java.util.ArrayList;
|
|
|
|
|
-
|
|
|
|
|
-import javax.swing.JButton;
|
|
|
|
|
-import javax.swing.JLabel;
|
|
|
|
|
-import javax.swing.JPanel;
|
|
|
|
|
-import javax.swing.JTextField;
|
|
|
|
|
-
|
|
|
|
|
-import server.network.NetworkMessage;
|
|
|
|
|
-public class ChatPanel extends JPanel{
|
|
|
|
|
- //Only for gui testing:
|
|
|
|
|
- Color color = Color.red;
|
|
|
|
|
- String name = "Janco";
|
|
|
|
|
-
|
|
|
|
|
- private ChatPanelMessage messagepanel;
|
|
|
|
|
- private ChatPanelInput inputpanel;
|
|
|
|
|
-
|
|
|
|
|
- public ChatPanel(){
|
|
|
|
|
- setBackground(Color.WHITE);
|
|
|
|
|
- JLabel label = new JLabel(name);
|
|
|
|
|
- label.setForeground(color);
|
|
|
|
|
- setLayout(new BorderLayout());
|
|
|
|
|
- add(label, BorderLayout.NORTH);
|
|
|
|
|
- add(messagepanel = new ChatPanelMessage(), BorderLayout.CENTER);
|
|
|
|
|
- add(inputpanel = new ChatPanelInput(), BorderLayout.SOUTH);
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- public class ChatPanelInput extends JPanel{
|
|
|
|
|
- JTextField input;
|
|
|
|
|
- JButton send;
|
|
|
|
|
-
|
|
|
|
|
- public ChatPanelInput(){
|
|
|
|
|
- input = new JTextField();
|
|
|
|
|
- send = new JButton("Verzenden");
|
|
|
|
|
- setLayout(new GridLayout(1, 2));
|
|
|
|
|
- add(input);
|
|
|
|
|
- add(send);
|
|
|
|
|
- setOpaque(false);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- public class ChatPanelMessage extends JPanel{
|
|
|
|
|
- private ArrayList<NetworkMessage> messages;
|
|
|
|
|
- public ChatPanelMessage(){
|
|
|
|
|
- setPreferredSize(new Dimension(1000, 1000));
|
|
|
|
|
- this.add(new JLabel("Berichten:"));
|
|
|
|
|
- messages = new ArrayList<NetworkMessage>();
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- @Override
|
|
|
|
|
- public void paintComponent(Graphics g)
|
|
|
|
|
- {
|
|
|
|
|
- super.paintComponent(g);
|
|
|
|
|
- Graphics2D g2d = (Graphics2D) g;
|
|
|
|
|
- int y = 20;
|
|
|
|
|
- for(NetworkMessage m:messages){
|
|
|
|
|
- g2d.setColor(m.getC());
|
|
|
|
|
- if(m.getUsername().equals(getName())){
|
|
|
|
|
- g2d.drawString(m.getUsername() + ": " + m.getMessage(), 10, y +=18);
|
|
|
|
|
- }else{
|
|
|
|
|
- g2d.drawString(m.getUsername() + ": " + m.getMessage(), getWidth()-100, y +=18);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- public void addMessage(NetworkMessage m){
|
|
|
|
|
- messagepanel.messages.add(m);
|
|
|
|
|
- repaint();
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- public JButton getSendButton(){
|
|
|
|
|
- return inputpanel.send;
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- public JTextField getInputField(){
|
|
|
|
|
- return inputpanel.input;
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|