diff --git a/pom.xml b/pom.xml index ccec90007b7180a0e5217dd1c67323f132d5f920..b89e09f4aa5adf8ff897397c06d63c055cb4c5f9 100644 --- a/pom.xml +++ b/pom.xml @@ -25,6 +25,12 @@ <artifactId>javafx-fxml</artifactId> <version>${use.javafx.version}</version> </dependency> + <!-- https://mvnrepository.com/artifact/net.sourceforge.plantuml/plantuml --> + <dependency> + <groupId>net.sourceforge.plantuml</groupId> + <artifactId>plantuml</artifactId> + <version>8059</version> + </dependency> <!-- https://mvnrepository.com/artifact/org.xerial/sqlite-jdbc --> <dependency> <groupId>org.xerial</groupId> diff --git a/src/main/java/Enigma/GuiController.java b/src/main/java/Enigma/GuiController.java index 3bfb5056ad2d8ed737f883004b0f7747c0ed5dea..c5bb75c83804ac83e6f39aeebc35bbdcded0f63c 100644 --- a/src/main/java/Enigma/GuiController.java +++ b/src/main/java/Enigma/GuiController.java @@ -5,6 +5,7 @@ import javafx.scene.control.*; import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.util.ArrayList; public class GuiController { @@ -133,6 +134,7 @@ public class GuiController { @FXML void gedrueckteTaste() { + } @FXML @@ -226,25 +228,142 @@ public class GuiController { assert tfKenngruppe != null : "fx:id=\"tfKenngruppe\" was not injected: check your FXML file 'gui.fxml'."; assert mBtnNotchPos1 != null : "fx:id=\"mBtnNotchPos1\" was not injected: check your FXML file 'gui.fxml'."; + // ActionListener den Butten hinzufügen + btnA.setOnAction(e -> {gedrueckteTaste(e);}); + btnB.setOnAction(e -> {gedrueckteTaste(e);}); + btnC.setOnAction(e -> {gedrueckteTaste(e);}); + btnD.setOnAction(e -> {gedrueckteTaste(e);}); + btnE.setOnAction(e -> {gedrueckteTaste(e);}); + btnF.setOnAction(e -> {gedrueckteTaste(e);}); + btnG.setOnAction(e -> {gedrueckteTaste(e);}); + btnH.setOnAction(e -> {gedrueckteTaste(e);}); + btnI.setOnAction(e -> {gedrueckteTaste(e);}); + btnJ.setOnAction(e -> {gedrueckteTaste(e);}); + btnK.setOnAction(e -> {gedrueckteTaste(e);}); + btnL.setOnAction(e -> {gedrueckteTaste(e);}); + btnM.setOnAction(e -> {gedrueckteTaste(e);}); + btnN.setOnAction(e -> {gedrueckteTaste(e);}); + btnO.setOnAction(e -> {gedrueckteTaste(e);}); + btnP.setOnAction(e -> {gedrueckteTaste(e);}); + btnQ.setOnAction(e -> {gedrueckteTaste(e);}); + btnR.setOnAction(e -> {gedrueckteTaste(e);}); + btnS.setOnAction(e -> {gedrueckteTaste(e);}); + btnT.setOnAction(e -> {gedrueckteTaste(e);}); + btnU.setOnAction(e -> {gedrueckteTaste(e);}); + btnV.setOnAction(e -> {gedrueckteTaste(e);}); + btnW.setOnAction(e -> {gedrueckteTaste(e);}); + btnX.setOnAction(e -> {gedrueckteTaste(e);}); + btnY.setOnAction(e -> {gedrueckteTaste(e);}); + btnZ.setOnAction(e -> {gedrueckteTaste(e);}); + } + + /** + * Auswertung welcher Button gedrückt wurde + * @param e => ActionEvent des auslösenden Button + */ + private void gedrueckteTaste(javafx.event.ActionEvent e) { + //TODO Anbindung an Klasse Hardware + if (e.getSource() == btnA) System.out.println("Taste A gedrückt"); + if (e.getSource() == btnB) System.out.println("Taste B gedrückt"); + if (e.getSource() == btnC) System.out.println("Taste C gedrückt"); + if (e.getSource() == btnD) System.out.println("Taste D gedrückt"); + if (e.getSource() == btnE) System.out.println("Taste E gedrückt"); + if (e.getSource() == btnF) System.out.println("Taste F gedrückt"); + if (e.getSource() == btnG) System.out.println("Taste G gedrückt"); + if (e.getSource() == btnH) System.out.println("Taste H gedrückt"); + if (e.getSource() == btnI) System.out.println("Taste I gedrückt"); + if (e.getSource() == btnJ) System.out.println("Taste J gedrückt"); + if (e.getSource() == btnK) System.out.println("Taste K gedrückt"); + if (e.getSource() == btnL) System.out.println("Taste L gedrückt"); + if (e.getSource() == btnM) System.out.println("Taste M gedrückt"); + if (e.getSource() == btnN) System.out.println("Taste N gedrückt"); + if (e.getSource() == btnO) System.out.println("Taste O gedrückt"); + if (e.getSource() == btnP) System.out.println("Taste P gedrückt"); + if (e.getSource() == btnQ) System.out.println("Taste Q gedrückt"); + if (e.getSource() == btnR) System.out.println("Taste R gedrückt"); + if (e.getSource() == btnS) System.out.println("Taste S gedrückt"); + if (e.getSource() == btnT) System.out.println("Taste T gedrückt"); + if (e.getSource() == btnU) System.out.println("Taste U gedrückt"); + if (e.getSource() == btnV) System.out.println("Taste V gedrückt"); + if (e.getSource() == btnW) System.out.println("Taste W gedrückt"); + if (e.getSource() == btnX) System.out.println("Taste X gedrückt"); + if (e.getSource() == btnY) System.out.println("Taste Y gedrückt"); + if (e.getSource() == btnZ) System.out.println("Taste Z gedrückt"); + } + + /** + * Setzt die Anzeige des entsprechende Gui-Element auf die entsprechende Walze + * ->d.h. welche Walze sitzt auf welcher Position + * + * @param walze => gibt die Walzennummer an (entspricht + * @param position => gibt die Position der Walze (entspricht + */ + public void setzeWalze(int walze, int position){ + switch (position){ + case 1: + mBtnWalzPos1.setText(str[position]); + break; + case 2: + mBtnWalzPos2.setText(str[position]); + break; + case 3: + mBtnWalzPos3.setText(str[position]); + break; + default: + break; + } } -// /** -// * Setzt die Anzeige des entsprechende Gui-Element auf die entsprechende Walze -// * -// * @param walze => gibt die Walzennummer an (entspricht -// * @param position => gibt die Position der Walze (entspricht -// */ -// public void setzeWalze(int walze, int position){ -// switch (position){ -// case 1: -// // mBtnWalzPos1.setText(); -// break; -// case 2: -// break; -// case 3: -// break; -// } -// -// -// } + /** + * Setzt den Notch (position)=> die Mitnahmeposition der Walze (walze) fest + * Mitnahmeposition meint => die nächste Walze wird bei erreichen dieser Position (notch) + * um eine Stelle versetzt + * + * @param walze => gibt die walze an + * @param position => gibt den notch der Walze (walze) an + */ + public void setzeRing(int walze, int position){ + switch (walze){ + case 1: + mBtnNotchPos1.setText(num[position]); + break; + case 2: + mBtnNotchPos2.setText(num[position]); + break; + case 3: + mBtnNotchPos3.setText(num[position]); + break; + default: + break; + } + } + + /** + * Setzt die Startposition/ aktuelle Position der Walze + * @param walze => gibt die walze an + * @param buchstabe gibt den Startwert bzw die aktuelle Position der Walze (walze) an + */ + public void setzePosition(int walze, char buchstabe){ + switch (walze){ + case 1: + mBtnStartPos1.setText(String.valueOf(buchstabe)); + break; + case 2: + mBtnStartPos2.setText(buchstabe+""); + break; + case 3: + mBtnStartPos3.setText(buchstabe+""); + break; + default: + break; + } + } + + /** + * Setzt den aktuellen TagesSchluessel + * @param tagesSchluessel + */ + public void setzeTagesSchluessel(String tagesSchluessel){ + //TODO Benötige TestString aus der DB Codebuch + } }