diff --git a/src/main/java/projekt/enigma/GuiController.java b/src/main/java/projekt/enigma/GuiController.java index 9fb90f297e59066458600165b2d85e0f5fcb626a..9e5665c2953f02dcc7fc51cb4b86dc669ecaf191 100644 --- a/src/main/java/projekt/enigma/GuiController.java +++ b/src/main/java/projekt/enigma/GuiController.java @@ -505,16 +505,21 @@ public class GuiController { * sowie den Klartext in das Textfeld tfKlartext. Setzt den Spruchschlüssel */ private void empfangeFunkspruch() { + progressDialogue("rx"); - if (this.empfangeneNachricht[2] != null) { - setzeTagesSchluessel(); - tfKlartext.setText(this.empfangeneNachricht[2]); - tfCodiert.setText(this.empfangeneNachricht[1]); - resetDisplay = true; + try { + if (this.empfangeneNachricht[2] != null && this.empfangeneNachricht[1] != null) { + setzeTagesSchluessel(); + tfKlartext.setText(this.empfangeneNachricht[2]); + tfCodiert.setText(this.empfangeneNachricht[1]); + resetDisplay = true; - // Spruchschluessel in das Feld lblSpruchschluessel schreiben - lblSpruchschluessel.setText(codierer.empfangenerSpruchschluessel(this.empfangeneNachricht[2])); + // Spruchschluessel in das Feld lblSpruchschluessel schreiben + lblSpruchschluessel.setText(codierer.empfangenerSpruchschluessel(this.empfangeneNachricht[2])); + } + } catch(NullPointerException ignored) { + new Fehler().showErrorDialog("warning", "Aus dem Westen nichts neues", "Keine neuen Nachrichten vorhanden"); } } @@ -523,6 +528,7 @@ public class GuiController { * Löscht die Textfelder tfKlartext und tfCodiert */ private void sendeFunkspruch() { + this.tfKlartext.setText(""); this.tfCodiert.setText(""); @@ -530,6 +536,7 @@ public class GuiController { } private void progressDialogue(String strRxTx) { + Task copyWorker = createWorker(strRxTx); ProgressDialog dialog = new ProgressDialog(copyWorker);