From b48bc489a94d6efe8eb2b4a6e1f96bec1bc73b86 Mon Sep 17 00:00:00 2001 From: "hugo.debuyser.etu" <hugo.debuyser.etu@univ-lille.fr> Date: Fri, 18 Oct 2024 10:40:41 +0200 Subject: [PATCH] Modification des fichiers FXML et ajout des controllers --- res/stages/add-data-stage.fxml | 6 ++-- res/stages/axes-settings-stage.fxml | 8 ++--- res/stages/display-settings-stage.fxml | 6 ++-- res/stages/load-data-stage.fxml | 6 ++-- res/stages/main-stage.fxml | 17 ++++++----- .../controller/AddDataController.java | 15 ++++++++++ .../controller/AxesSettingsController.java | 16 ++++++++++ .../controller/DisplaySettingsController.java | 19 ++++++++++++ .../controller/LoadDataController.java | 12 ++++++-- .../controller/MainStageController.java | 29 ++++++++++++++----- 10 files changed, 104 insertions(+), 30 deletions(-) create mode 100644 src/main/java/fr/univlille/sae/classification/controller/AddDataController.java create mode 100644 src/main/java/fr/univlille/sae/classification/controller/AxesSettingsController.java create mode 100644 src/main/java/fr/univlille/sae/classification/controller/DisplaySettingsController.java diff --git a/res/stages/add-data-stage.fxml b/res/stages/add-data-stage.fxml index 837b259..99a1ad4 100644 --- a/res/stages/add-data-stage.fxml +++ b/res/stages/add-data-stage.fxml @@ -5,7 +5,7 @@ <?import javafx.scene.layout.*?> <?import javafx.stage.*?> -<Stage xmlns="http://javafx.com/javafx/17.0.12" xmlns:fx="http://javafx.com/fxml/1"> +<Stage fx:id="stage" xmlns="http://javafx.com/javafx/17.0.12" xmlns:fx="http://javafx.com/fxml/1" fx:controller="fr.univlille.sae.classification.controller.AddDataController"> <scene> <Scene> <AnchorPane prefHeight="200" prefWidth="200"> @@ -21,7 +21,7 @@ <HBox alignment="CENTER" layoutX="10.0" layoutY="47.0" prefHeight="17.0" prefWidth="335.0" spacing="20.0"> <children> <Label text="Valeur 2" /> - <ChoiceBox prefWidth="150.0" /> + <ChoiceBox prefHeight="26.0" prefWidth="163.0" /> </children> </HBox> <HBox alignment="CENTER" layoutX="10.0" layoutY="109.0" prefHeight="17.0" prefWidth="335.0" spacing="20.0"> @@ -30,7 +30,7 @@ <Spinner /> </children> </HBox> - <Button mnemonicParsing="false" text="Valider" /> + <Button fx:id="confirmAdd" mnemonicParsing="false" text="Valider" /> </children></VBox> </children></AnchorPane> </Scene> diff --git a/res/stages/axes-settings-stage.fxml b/res/stages/axes-settings-stage.fxml index b605dc7..8fb6b84 100644 --- a/res/stages/axes-settings-stage.fxml +++ b/res/stages/axes-settings-stage.fxml @@ -5,7 +5,7 @@ <?import javafx.scene.layout.*?> <?import javafx.stage.*?> -<Stage xmlns="http://javafx.com/javafx/17.0.12" xmlns:fx="http://javafx.com/fxml/1"> +<Stage fx:id="stage" xmlns="http://javafx.com/javafx/17.0.12" xmlns:fx="http://javafx.com/fxml/1" fx:controller="fr.univlille.sae.classification.controller.AxesSettingsController"> <scene> <Scene> <AnchorPane prefHeight="200" prefWidth="200"> @@ -15,16 +15,16 @@ <HBox alignment="CENTER" prefHeight="46.0" prefWidth="406.0" spacing="20.0"> <children> <Label text="Valeur des ordonnées" /> - <ChoiceBox prefWidth="150.0" /> + <ChoiceBox fx:id="selectOrd" prefWidth="150.0" /> </children> </HBox> <HBox alignment="CENTER" prefHeight="44.0" prefWidth="406.0" spacing="20.0"> <children> <Label text="Valeur des abscisses" /> - <ChoiceBox prefWidth="150.0" /> + <ChoiceBox fx:id="selectAbs" prefWidth="150.0" /> </children> </HBox> - <Button mnemonicParsing="false" text="Valider" /> + <Button fx:id="confirmAxes" mnemonicParsing="false" text="Valider" /> </children> </VBox> </children></AnchorPane> diff --git a/res/stages/display-settings-stage.fxml b/res/stages/display-settings-stage.fxml index 92792ea..acc017f 100644 --- a/res/stages/display-settings-stage.fxml +++ b/res/stages/display-settings-stage.fxml @@ -5,7 +5,7 @@ <?import javafx.scene.layout.*?> <?import javafx.stage.*?> -<Stage xmlns="http://javafx.com/javafx/17.0.12" xmlns:fx="http://javafx.com/fxml/1"> +<Stage fx:id="stage" xmlns="http://javafx.com/javafx/17.0.12" xmlns:fx="http://javafx.com/fxml/1" fx:controller="fr.univlille.sae.classification.controller.DisplaySettingsController"> <scene> <Scene> <AnchorPane prefHeight="200" prefWidth="200"> @@ -15,9 +15,9 @@ <HBox alignment="CENTER" prefHeight="58.0" prefWidth="294.0" spacing="20.0"> <children> <Label text="Nouvel ajout" /> - <ColorPicker editable="true" /> + <ColorPicker fx:id="addColor" editable="true" /> </children></HBox> - <Button mnemonicParsing="false" text="Valider" /> + <Button fx:id="confirmSettings" mnemonicParsing="false" text="Valider" /> </children></VBox> </children></AnchorPane> </Scene> diff --git a/res/stages/load-data-stage.fxml b/res/stages/load-data-stage.fxml index fb198d4..111def3 100644 --- a/res/stages/load-data-stage.fxml +++ b/res/stages/load-data-stage.fxml @@ -14,13 +14,13 @@ <children> <HBox alignment="CENTER" prefHeight="91.0" prefWidth="272.0"> <children> - <Button mnemonicParsing="false" onAction="#openFileChooser" text="Parcourir" /> - <TextField prefHeight="26.0" prefWidth="207.0" /> + <Button fx:id="browseFile" mnemonicParsing="false" onAction="#openFileChooser" text="Parcourir" /> + <TextField fx:id="filePath" prefHeight="26.0" prefWidth="207.0" /> </children> </HBox> <HBox alignment="CENTER" prefHeight="76.0" prefWidth="310.0"> <children> - <Button mnemonicParsing="false" onAction="#validate" text="Valider" /> + <Button fx:id="confirmDataSelection" mnemonicParsing="false" onAction="#validate" text="Valider" /> </children> </HBox> </children> diff --git a/res/stages/main-stage.fxml b/res/stages/main-stage.fxml index cc9ca10..b7282d0 100644 --- a/res/stages/main-stage.fxml +++ b/res/stages/main-stage.fxml @@ -13,24 +13,25 @@ <children> <VBox prefHeight="488.0" prefWidth="691.0"> <children> - <VBox alignment="CENTER" prefHeight="379.0" prefWidth="691.0"> + <HBox prefHeight="356.0" prefWidth="691.0"> <children> + <Region prefHeight="338.0" prefWidth="65.0" /> <ScatterChart prefHeight="342.0" prefWidth="609.0"> <xAxis> - <CategoryAxis prefHeight="21.0" prefWidth="498.0" side="BOTTOM" /> + <CategoryAxis fx:id="absAxe" prefHeight="21.0" prefWidth="498.0" side="BOTTOM" /> </xAxis> <yAxis> - <NumberAxis side="LEFT" /> + <NumberAxis fx:id="ordAxe" side="LEFT" /> </yAxis> </ScatterChart> - <Button mnemonicParsing="false" text="Configuration de l'affichage" /> + <Button fx:id="settings" mnemonicParsing="false" text="Réglage" /> </children> - </VBox> + </HBox> <HBox alignment="CENTER" prefHeight="169.0" prefWidth="691.0" spacing="50.0"> <children> - <Button mnemonicParsing="false" onAction="#openLoadData" prefHeight="27.0" prefWidth="185.0" text="Charger un jeu de données" /> - <Button mnemonicParsing="false" prefHeight="26.0" prefWidth="141.0" text="Ajouter une donnée" /> - <Button disable="true" mnemonicParsing="false" prefHeight="26.0" prefWidth="157.0" text="Classifier une donnée" /> + <Button fx:id="loadData" mnemonicParsing="false" onAction="#openLoadData" prefHeight="27.0" prefWidth="185.0" text="Charger un jeu de données" /> + <Button fx:id="addData" mnemonicParsing="false" prefHeight="26.0" prefWidth="141.0" text="Ajouter une donnée" /> + <Button fx:id="classifyData" disable="true" mnemonicParsing="false" prefHeight="26.0" prefWidth="157.0" text="Classifier une donnée" /> </children> </HBox> </children> diff --git a/src/main/java/fr/univlille/sae/classification/controller/AddDataController.java b/src/main/java/fr/univlille/sae/classification/controller/AddDataController.java new file mode 100644 index 0000000..d025119 --- /dev/null +++ b/src/main/java/fr/univlille/sae/classification/controller/AddDataController.java @@ -0,0 +1,15 @@ +package fr.univlille.sae.classification.controller; + +import javafx.fxml.FXML; +import javafx.scene.control.Button; +import javafx.stage.Stage; + +public class AddDataController { + @FXML + Stage stage; + + @FXML + Button confirmAdd; + + +} diff --git a/src/main/java/fr/univlille/sae/classification/controller/AxesSettingsController.java b/src/main/java/fr/univlille/sae/classification/controller/AxesSettingsController.java new file mode 100644 index 0000000..0679ea9 --- /dev/null +++ b/src/main/java/fr/univlille/sae/classification/controller/AxesSettingsController.java @@ -0,0 +1,16 @@ +package fr.univlille.sae.classification.controller; + +import javafx.fxml.FXML; +import javafx.scene.control.Button; +import javafx.scene.control.ChoiceBox; + +public class AxesSettingsController { + @FXML + ChoiceBox selectOrd; + + @FXML + ChoiceBox selectAbs; + + @FXML + Button confirmAxes; +} diff --git a/src/main/java/fr/univlille/sae/classification/controller/DisplaySettingsController.java b/src/main/java/fr/univlille/sae/classification/controller/DisplaySettingsController.java new file mode 100644 index 0000000..203a5ae --- /dev/null +++ b/src/main/java/fr/univlille/sae/classification/controller/DisplaySettingsController.java @@ -0,0 +1,19 @@ +package fr.univlille.sae.classification.controller; + +import javafx.fxml.FXML; +import javafx.scene.control.Button; +import javafx.scene.control.ColorPicker; +import javafx.stage.Stage; + +public class DisplaySettingsController { + @FXML + Stage stage; + + @FXML + Button confirmSettings; + + @FXML + ColorPicker addColor; + + +} diff --git a/src/main/java/fr/univlille/sae/classification/controller/LoadDataController.java b/src/main/java/fr/univlille/sae/classification/controller/LoadDataController.java index 1908058..5615e33 100644 --- a/src/main/java/fr/univlille/sae/classification/controller/LoadDataController.java +++ b/src/main/java/fr/univlille/sae/classification/controller/LoadDataController.java @@ -1,7 +1,9 @@ package fr.univlille.sae.classification.controller; import javafx.fxml.FXML; +import javafx.scene.control.Button; import javafx.scene.control.Label; +import javafx.scene.control.TextField; import javafx.stage.FileChooser; import javafx.stage.Stage; @@ -14,7 +16,13 @@ public class LoadDataController { Stage stage; @FXML - Label filenamelab; + Button browseFile; + + @FXML + Button confirmDataSelection; + + @FXML + TextField filePath; File file; @@ -34,7 +42,7 @@ public class LoadDataController { this.file = fileChooser.showOpenDialog(stage); if(file != null) { - filenamelab.setText(file.getName()); + filePath.setText(file.getName()); } } diff --git a/src/main/java/fr/univlille/sae/classification/controller/MainStageController.java b/src/main/java/fr/univlille/sae/classification/controller/MainStageController.java index 636343a..9639175 100644 --- a/src/main/java/fr/univlille/sae/classification/controller/MainStageController.java +++ b/src/main/java/fr/univlille/sae/classification/controller/MainStageController.java @@ -2,10 +2,9 @@ package fr.univlille.sae.classification.controller; import javafx.fxml.FXML; import javafx.fxml.FXMLLoader; -import javafx.scene.Scene; -import javafx.scene.layout.VBox; -import javafx.stage.Modality; -import javafx.stage.Stage; +import javafx.scene.chart.*; +import javafx.scene.control.Button; +import javafx.stage.*; import java.io.File; import java.io.IOException; @@ -17,6 +16,25 @@ public class MainStageController { @FXML Stage stage; + @FXML + CategoryAxis absAxe; + + @FXML + NumberAxis ordAxe; + + @FXML + Button settings; + + @FXML + Button loadData; + + @FXML + Button addData; + + @FXML + Button classifyData; + + Stage loadStage; @@ -25,9 +43,6 @@ public class MainStageController { * @throws IOException */ public void openLoadData() throws IOException { - - - FXMLLoader loader = new FXMLLoader(); URL fxmlFileUrl = new File(System.getProperty("user.dir") + File.separator + "res" + File.separator + "stages" + File.separator + "load-data-stage.fxml").toURI().toURL(); -- GitLab