|
- package de.uniluebeck.mi.projmi6.controller;
-
- import de.uniluebeck.mi.projmi6.model.HL7Message;
- import de.uniluebeck.mi.projmi6.view.MessageIcon;
- import javafx.beans.property.SimpleListProperty;
- import javafx.collections.FXCollections;
- import javafx.fxml.FXML;
- import javafx.fxml.FXMLLoader;
- import javafx.scene.Parent;
- import javafx.scene.Scene;
- import javafx.scene.image.Image;
- import javafx.stage.Modality;
- import javafx.stage.Stage;
-
- import java.io.IOException;
-
- /**
- * Created by Johannes on 21/11/2015.
- */
- public class MessageController {
- final MainController mainController;
- private final SimpleListProperty<HL7Message> messages = new SimpleListProperty(FXCollections.observableArrayList());
- @FXML
- private MessageIcon messageIcon;
-
-
- public MessageController(MainController mainController) {
- this.mainController = mainController;
- }
-
- @FXML
- private void initialize() {
- messageIcon.messageCountProperty().bind(messages.sizeProperty());
- }
-
- @FXML
- private void onMessageIconClicked() {
- showMessageList();
- }
-
- private void showMessageList() {
- FXMLLoader fxmlLoader = new FXMLLoader();
- fxmlLoader.setLocation(getClass().getClassLoader().getResource("message_list.fxml"));
- MessageListController messageListController = new MessageListController(messages, mainController);
- fxmlLoader.setControllerFactory(clazz -> messageListController);
-
- Parent root = null;
- try {
- root = fxmlLoader.load();
- } catch (IOException e) {
- e.printStackTrace();
- return;
- }
-
- Stage stage = new Stage();
-
- stage.setTitle("Neue HL7-Nachrichten");
- stage.setScene(new Scene(root, 600, 400));
-
- stage.getIcons().add(new Image("icon.png"));
- stage.initModality(Modality.WINDOW_MODAL);
- stage.initOwner(messageIcon.getScene().getWindow());
- stage.show();
- }
-
-
- public void addMessage(HL7Message message) {
- messages.add(message);
- mainController.getLogController().refreshLogFromDb();
- }
-
- }
-
|