From d6d952689787a64f49204299f3ea21106092c2cb Mon Sep 17 00:00:00 2001 From: Alexis Durgnat <alexis.durgnat@etu.hesge.ch> Date: Sat, 2 Feb 2019 18:28:46 +0100 Subject: [PATCH] ChatMessage view --- .../ch/hepia/ui/MainWindowController.java | 20 ++++++++++++++++++- src/main/resources/fxml/MainWindow.fxml | 2 +- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/main/java/ch/hepia/ui/MainWindowController.java b/src/main/java/ch/hepia/ui/MainWindowController.java index ad4288d..0592f24 100644 --- a/src/main/java/ch/hepia/ui/MainWindowController.java +++ b/src/main/java/ch/hepia/ui/MainWindowController.java @@ -10,6 +10,7 @@ import javafx.fxml.FXML; import javafx.fxml.Initializable; import javafx.scene.canvas.Canvas; import javafx.scene.control.*; +import javafx.scene.image.Image; import javafx.scene.input.KeyCode; import javafx.scene.paint.Color; import org.json.JSONArray; @@ -20,6 +21,9 @@ import java.text.ParseException; import java.util.ArrayList; import java.util.List; import java.util.ResourceBundle; +import javafx.scene.image.Image; +import javafx.scene.layout.Pane; +import javafx.scene.layout.StackPane; public class MainWindowController implements Initializable { @@ -53,6 +57,9 @@ public class MainWindowController implements Initializable { @FXML private TextField messageTextBox; + @FXML + private StackPane chatContainer; + /** * Shows a sad message when the API crashes. */ @@ -103,6 +110,14 @@ public class MainWindowController implements Initializable { connectionCanvas.getGraphicsContext2D().fillOval(x + 620 - 5, y - 5, 10, 10); } + private void drawMessage(String message){ + Pane p = new Pane(); + Label msg = new Label(); + msg.setText(message); + p.getChildren().add(msg); + chatContainer.getChildren().add(p); + } + /** * Sets the form up * @param url The JavaFX URL handler @@ -155,7 +170,10 @@ public class MainWindowController implements Initializable { }); app.getMessageManager().conditionalSubscribeChatMessage( - chatMessage -> System.out.println(chatMessage.getUser().toString() + ": " + chatMessage.getMessage()), + chatMessage -> { + String message = chatMessage.getUser().toString() + ": " + chatMessage.getMessage(); + System.out.println(message); + }, chatMessage -> !(app.getUser().get().getIgnoredUserList().contains(chatMessage.getUser())) ); } diff --git a/src/main/resources/fxml/MainWindow.fxml b/src/main/resources/fxml/MainWindow.fxml index 2cf2f27..0acd6d3 100644 --- a/src/main/resources/fxml/MainWindow.fxml +++ b/src/main/resources/fxml/MainWindow.fxml @@ -47,7 +47,7 @@ <Line endX="326.0" endY="475.0" startY="475.0" stroke="#0000008c" /> <TextField id="messageTextBox" fx:id="messageTextBox" layoutX="6.0" layoutY="483.0" prefHeight="27.0" prefWidth="206.0" /> <Button id="sendMessageButton" fx:id="sendMessageButton" layoutX="219.0" layoutY="483.0" mnemonicParsing="false" prefHeight="27.0" prefWidth="101.0" text="Envoyer" /> - <ScrollPane fx:id="chatContainer" layoutX="7.0" layoutY="6.0" prefHeight="465.0" prefWidth="315.0" /> + <StackPane fx:id="chatContainer" layoutX="7.0" layoutY="6.0" prefHeight="465.0" prefWidth="315.0" /> </children></Pane> </right> <center> -- GitLab