From 812fbfb87a8d2163d9a679079a7bb9504cee5ac7 Mon Sep 17 00:00:00 2001 From: clfreville2 Date: Sun, 22 Jan 2023 20:58:48 +0100 Subject: [PATCH] Also add newly created sensors to the selected virtual sensor --- src/fr/uca/iut/clfreville2/gui/MainWindows.java | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/fr/uca/iut/clfreville2/gui/MainWindows.java b/src/fr/uca/iut/clfreville2/gui/MainWindows.java index 7108168..190e7fa 100644 --- a/src/fr/uca/iut/clfreville2/gui/MainWindows.java +++ b/src/fr/uca/iut/clfreville2/gui/MainWindows.java @@ -28,7 +28,9 @@ import javafx.beans.value.ChangeListener; import javafx.beans.value.ObservableValue; import javafx.collections.FXCollections; import javafx.fxml.FXML; +import javafx.scene.control.Alert; import javafx.scene.control.Button; +import javafx.scene.control.ButtonType; import javafx.scene.control.CheckBox; import javafx.scene.control.ChoiceBox; import javafx.scene.control.Slider; @@ -139,7 +141,16 @@ public class MainWindows { @FXML public void onCreateClick() { - createType.getSelectionModel().getSelectedItem().create(registry, newName.getText()); + if (createType.getSelectionModel().getSelectedItem() == null || newName.getText().isEmpty()) { + Alert alert = new Alert(Alert.AlertType.ERROR, "Empty form", ButtonType.CANCEL); + alert.showAndWait(); + return; + } + Sensor sensor = createType.getSelectionModel().getSelectedItem().create(registry, newName.getText()); + Sensor selected = getSelectedSensor(); + if (selected instanceof VirtualSensor virtual) { + virtual.addSource(sensor, 1D); + } } @FXML @@ -232,6 +243,7 @@ public class MainWindows { new VirtualSensorFactory() ); createType.setConverter(new NameableStringConverter<>(createType.getItems())); + createType.getSelectionModel().selectFirst(); } @FXML