From eb763d5c7f514d088ac0d80466c302fbb512246c Mon Sep 17 00:00:00 2001
From: Robert Goldmann <deadlocker@gmx.de>
Date: Fri, 26 May 2017 18:03:39 +0200
Subject: [PATCH] Fixed #11 - use AlertGenerator

---
 src/charts/ChartGUIController.java            |  19 +--
 src/core/Exporter.java                        |  30 ++---
 src/core/Importer.java                        |  60 ++--------
 src/userInterface/EditController.java         |  14 +--
 src/userInterface/InsertTimeController.java   |  42 ++-----
 src/userInterface/Main.java                   |  10 +-
 .../ProjektFensterController.java             |  11 +-
 .../UserInterfaceController.java              | 111 +++---------------
 8 files changed, 56 insertions(+), 241 deletions(-)

diff --git a/src/charts/ChartGUIController.java b/src/charts/ChartGUIController.java
index 551ecfb..f3e7eae 100644
--- a/src/charts/ChartGUIController.java
+++ b/src/charts/ChartGUIController.java
@@ -4,22 +4,22 @@ import java.util.ArrayList;
 import java.util.Collections;
 import java.util.HashSet;
 
+import core.LogObject;
+import core.SQL;
+import core.Utils;
 import javafx.beans.value.ChangeListener;
 import javafx.beans.value.ObservableValue;
 import javafx.fxml.FXML;
 import javafx.scene.chart.BarChart;
 import javafx.scene.chart.PieChart;
-import javafx.scene.control.Alert;
+import javafx.scene.control.Alert.AlertType;
 import javafx.scene.control.Button;
 import javafx.scene.control.ComboBox;
-import javafx.scene.control.Alert.AlertType;
 import javafx.scene.image.Image;
 import javafx.scene.layout.AnchorPane;
 import javafx.scene.layout.VBox;
 import javafx.stage.Stage;
-import core.LogObject;
-import core.SQL;
-import core.Utils;
+import tools.AlertGenerator;
 
 @SuppressWarnings("rawtypes")
 public class ChartGUIController
@@ -428,14 +428,7 @@ public class ChartGUIController
 	
 	private void showErrorMessage()
 	{
-		Alert alert = new Alert(AlertType.ERROR);	
-		alert.setTitle("Fehler");
-		alert.setHeaderText("");
-		alert.setContentText("Fehler beim Erstellen des Diagramms.");
-		alert.initOwner(stage);
-		Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-		dialogStage.getIcons().add(icon);
-		alert.showAndWait();	
+		AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Fehler beim Erstellen des Diagramms.", icon, stage, null, false);	
 	}
 
 	private void showPieChart(PieChart chart)
diff --git a/src/core/Exporter.java b/src/core/Exporter.java
index 8d1e995..2b4a41e 100644
--- a/src/core/Exporter.java
+++ b/src/core/Exporter.java
@@ -6,13 +6,13 @@ import java.io.FileWriter;
 import java.util.ArrayList;
 import java.util.Date;
 
+import org.jason.JSONObject;
+
 import javafx.application.Platform;
-import javafx.scene.control.Alert;
 import javafx.scene.control.Alert.AlertType;
 import javafx.scene.image.Image;
 import javafx.stage.Stage;
-
-import org.jason.JSONObject;
+import tools.AlertGenerator;
 
 public class Exporter
 {
@@ -52,31 +52,17 @@ public class Exporter
 		
 			BufferedWriter out = new BufferedWriter(new FileWriter(file));		
             out.write(allItems.toString());           
-            out.close();    
-			
-			Platform.runLater(()->{
-				Alert alert = new Alert(AlertType.INFORMATION);			
-				alert.setTitle("Erfolgreich exportiert");
-				alert.setHeaderText("");
-				alert.setContentText("Der Exportvorgang wurde erfolgreich abgeschlossen.");
-				alert.initOwner(stage);
-				Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-				dialogStage.getIcons().add(icon);
-				alert.showAndWait();
+            out.close();   
+            
+			Platform.runLater(()->{				
+				AlertGenerator.showAlert(AlertType.INFORMATION, "Erfolgreich exportiert", "", "Der Exportvorgang wurde erfolgreich abgeschlossen.", icon, stage, null, false);
 			});
 		}
 		catch(Exception e)
 		{			
 			e.printStackTrace();
 			Platform.runLater(()->{
-				Alert alert = new Alert(AlertType.ERROR);
-				alert.setTitle("Fehler");
-				alert.setHeaderText("");
-				alert.setContentText("Beim Exportieren der Daten ist ein Fehler aufgetreten.");
-				alert.initOwner(stage);
-				Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-				dialogStage.getIcons().add(icon);
-				alert.showAndWait();
+				AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Beim Exportieren der Daten ist ein Fehler aufgetreten.", icon, stage, null, false);
 			});
 		}		
 	}	
diff --git a/src/core/Importer.java b/src/core/Importer.java
index 8420ea8..0ee6170 100644
--- a/src/core/Importer.java
+++ b/src/core/Importer.java
@@ -7,14 +7,14 @@ import java.io.InputStreamReader;
 import java.util.ArrayList;
 import java.util.regex.Pattern;
 
+import org.jason.JSONArray;
+import org.jason.JSONObject;
+
 import javafx.application.Platform;
-import javafx.scene.control.Alert;
 import javafx.scene.control.Alert.AlertType;
 import javafx.scene.image.Image;
 import javafx.stage.Stage;
-
-import org.jason.JSONArray;
-import org.jason.JSONObject;
+import tools.AlertGenerator;
 
 public class Importer
 {
@@ -52,29 +52,15 @@ public class Importer
 				sql.insert(o);
 			}
 			
-			Platform.runLater(()->{
-				Alert alert = new Alert(AlertType.INFORMATION);			
-				alert.setTitle("Erfolgreich importiert");
-				alert.setHeaderText("");
-				alert.setContentText("Der Importvorgang wurde erfolgreich abgeschlossen.");
-				alert.initOwner(stage);
-				Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-				dialogStage.getIcons().add(icon);
-				alert.showAndWait();
+			Platform.runLater(()->{				
+				AlertGenerator.showAlert(AlertType.INFORMATION, "Erfolgreich importiert", "", "Der Importvorgang wurde erfolgreich abgeschlossen.", icon, stage, null, false);
 			});
 		}
 		catch(Exception e)
 		{			
 			e.printStackTrace();
 			Platform.runLater(()->{
-				Alert alert = new Alert(AlertType.ERROR);
-				alert.setTitle("Fehler");
-				alert.setHeaderText("");
-				alert.setContentText("Beim Importieren der Daten ist ein Fehler aufgetreten.");
-				alert.initOwner(stage);
-				Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-				dialogStage.getIcons().add(icon);
-				alert.showAndWait();
+				AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Beim Importieren der Daten ist ein Fehler aufgetreten.", icon, stage, null, false);
 			});
 		}		
 	}	
@@ -91,29 +77,15 @@ public class Importer
 				currentDB.insert(item);
 			}
 			
-			Platform.runLater(()->{
-				Alert alert = new Alert(AlertType.INFORMATION);			
-				alert.setTitle("Erfolgreich importiert");
-				alert.setHeaderText("");
-				alert.setContentText("Der Importvorgang wurde erfolgreich abgeschlossen.");
-				alert.initOwner(stage);
-				Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-				dialogStage.getIcons().add(icon);
-				alert.showAndWait();
+			Platform.runLater(()->{				
+				AlertGenerator.showAlert(AlertType.INFORMATION, "Erfolgreich importiert", "", "Der Importvorgang wurde erfolgreich abgeschlossen.", icon, stage, null, false);
 			});
 		}
 		catch(Exception e)
 		{			
 			e.printStackTrace();
 			Platform.runLater(()->{
-				Alert alert = new Alert(AlertType.ERROR);
-				alert.setTitle("Fehler");
-				alert.setHeaderText("");
-				alert.setContentText("Beim Importieren der Daten ist ein Fehler aufgetreten.");
-				alert.initOwner(stage);
-				Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-				dialogStage.getIcons().add(icon);
-				alert.showAndWait();
+				AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Beim Importieren der Daten ist ein Fehler aufgetreten.", icon, stage, null, false);
 			});
 		}		
 	}
@@ -156,14 +128,7 @@ public class Importer
 		{			
 			e.printStackTrace();
 			Platform.runLater(()->{
-				Alert alert = new Alert(AlertType.ERROR);
-				alert.setTitle("Fehler");
-				alert.setHeaderText("");
-				alert.setContentText("Beim Importieren der Daten ist ein Fehler aufgetreten.");
-				alert.initOwner(stage);
-				Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-				dialogStage.getIcons().add(icon);
-				alert.showAndWait();
+				AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Beim Importieren der Daten ist ein Fehler aufgetreten.", icon, stage, null, false);
 			});
 		}					
 	}
@@ -180,8 +145,7 @@ public class Importer
 			list.add(line);
 		}
 		
-		reader.close();
-		
+		reader.close();		
 		return list;
 	}
 }
diff --git a/src/userInterface/EditController.java b/src/userInterface/EditController.java
index 620b5a6..6a5c64f 100644
--- a/src/userInterface/EditController.java
+++ b/src/userInterface/EditController.java
@@ -4,6 +4,8 @@ import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Optional;
 
+import core.LogObject;
+import core.SQL;
 import javafx.beans.value.ChangeListener;
 import javafx.beans.value.ObservableValue;
 import javafx.event.ActionEvent;
@@ -15,8 +17,7 @@ import javafx.scene.control.ButtonType;
 import javafx.scene.control.ComboBox;
 import javafx.scene.image.Image;
 import javafx.stage.Stage;
-import core.LogObject;
-import core.SQL;
+import tools.AlertGenerator;
 
 
 public class EditController
@@ -86,14 +87,7 @@ public class EditController
 
 		if(project == null || project.equals("") || task == null || task.equals(""))
 		{
-			Alert alert = new Alert(AlertType.WARNING);
-			alert.setTitle("Warnung");
-			alert.setHeaderText("");
-			alert.setContentText("Die Felder dürfen nicht leer sein.");
-			alert.initOwner(stage);
-			Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-			dialogStage.getIcons().add(icon);
-			alert.showAndWait();
+			AlertGenerator.showAlert(AlertType.WARNING, "Warnung", "", "Die Felder dürfen nicht leer sein.", icon, stage, null, false);
 		}
 		else
 		{
diff --git a/src/userInterface/InsertTimeController.java b/src/userInterface/InsertTimeController.java
index b7e9263..99df4a3 100644
--- a/src/userInterface/InsertTimeController.java
+++ b/src/userInterface/InsertTimeController.java
@@ -13,11 +13,12 @@ import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Date;
 
+import core.LogObject;
+import core.SQL;
 import javafx.beans.value.ChangeListener;
 import javafx.beans.value.ObservableValue;
 import javafx.fxml.FXML;
 import javafx.scene.Parent;
-import javafx.scene.control.Alert;
 import javafx.scene.control.Alert.AlertType;
 import javafx.scene.control.Button;
 import javafx.scene.control.ComboBox;
@@ -27,8 +28,7 @@ import javafx.scene.control.Label;
 import javafx.scene.image.Image;
 import javafx.stage.Stage;
 import javafx.util.Callback;
-import core.LogObject;
-import core.SQL;
+import tools.AlertGenerator;
 
 public class InsertTimeController 
 {
@@ -200,49 +200,21 @@ public class InsertTimeController
 				catch(Exception e)
 				{	
 					e.printStackTrace();
-					Alert alert = new Alert(AlertType.ERROR);
-					alert.setTitle("Fehler");
-					alert.setHeaderText("");
-					alert.setContentText("Fehler beim Speichern des Eintrags.");
-					alert.initOwner(stage);
-					Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-					dialogStage.getIcons().add(icon);
-					alert.showAndWait();						
+					AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Fehler beim Speichern des Eintrags.", icon, stage, null, false);									
 				}				
 				
-				Alert alert = new Alert(AlertType.INFORMATION);
-				alert.setTitle("Gespeichert");
-				alert.setHeaderText("");
-				alert.setContentText("Der Eintrag wurde erfolgreich gespeichert.");
-				alert.initOwner(stage);
-				Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-				dialogStage.getIcons().add(icon);
-				alert.showAndWait();
+				AlertGenerator.showAlert(AlertType.INFORMATION, "Gespeichert", "", "Der Eintrag wurde erfolgreich gespeichert.", icon, stage, null, false);				
 				stage.close();
 				controller.loadAll();				
 			}
 			else
 			{
-				Alert alert = new Alert(AlertType.WARNING);
-				alert.setTitle("Warnung");
-				alert.setHeaderText("");
-				alert.setContentText("Endzeit muss nach Startzeit liegen!");
-				alert.initOwner(stage);
-				Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-				dialogStage.getIcons().add(icon);
-				alert.showAndWait();
+				AlertGenerator.showAlert(AlertType.WARNING, "Warnung", "", "Endzeit muss vor Startzeit liegen.", icon, stage, null, false);
 			}
 		}
 		else
 		{
-			Alert alert = new Alert(AlertType.WARNING);
-			alert.setTitle("Warnung");
-			alert.setHeaderText("");
-			alert.setContentText("Die Felder für Projekt und Task dürfen nicht leer sein!");
-			alert.initOwner(stage);
-			Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-			dialogStage.getIcons().add(icon);
-			alert.showAndWait();
+			AlertGenerator.showAlert(AlertType.WARNING, "Warnung", "", "Die Felder für Projekt und Task dürfen nicht leer sein.", icon, stage, null, false);
 		}
 	}
 	
diff --git a/src/userInterface/Main.java b/src/userInterface/Main.java
index 9c5eaf0..ca2caa1 100644
--- a/src/userInterface/Main.java
+++ b/src/userInterface/Main.java
@@ -5,11 +5,11 @@ import javafx.event.EventHandler;
 import javafx.fxml.FXMLLoader;
 import javafx.scene.Parent;
 import javafx.scene.Scene;
-import javafx.scene.control.Alert;
 import javafx.scene.control.Alert.AlertType;
 import javafx.scene.image.Image;
 import javafx.stage.Stage;
 import javafx.stage.WindowEvent;
+import tools.AlertGenerator;
 
 
 public class Main extends Application
@@ -42,12 +42,8 @@ public class Main extends Application
 				{
 					if(controller.stoppUhrLäuftFlag == true)
 					{
-						Alert alert = new Alert(AlertType.WARNING);
-						alert.setTitle("Warnung");
-						alert.setHeaderText("");
-						alert.setContentText("Stoppuhr läuft noch!");
-						alert.showAndWait();
-
+						AlertGenerator.showAlert(AlertType.WARNING, "Warnung", "", "Die Stoppuhr läuft noch!", new Image("/userInterface/icon.png"), stage, null, false);
+						
 						// "schluckt" die Aufforderung das Fenster zu schließen
 						// (Fenster wird dadurch nicht geschlossen)
 						we.consume();
diff --git a/src/userInterface/ProjektFensterController.java b/src/userInterface/ProjektFensterController.java
index 3d613b8..57c93b8 100644
--- a/src/userInterface/ProjektFensterController.java
+++ b/src/userInterface/ProjektFensterController.java
@@ -8,12 +8,12 @@ import javafx.beans.value.ChangeListener;
 import javafx.beans.value.ObservableValue;
 import javafx.event.ActionEvent;
 import javafx.fxml.FXML;
-import javafx.scene.control.Alert;
 import javafx.scene.control.Alert.AlertType;
 import javafx.scene.control.Button;
 import javafx.scene.control.ComboBox;
 import javafx.scene.image.Image;
 import javafx.stage.Stage;
+import tools.AlertGenerator;
 
 /**
  * Controllerklasse für das Projektfenster
@@ -96,14 +96,7 @@ public class ProjektFensterController
 
 		if(project == null || project.equals("") || task == null || task.equals(""))
 		{
-			Alert alert = new Alert(AlertType.WARNING);
-			alert.setTitle("Warnung");
-			alert.setHeaderText("");
-			alert.setContentText("Die Felder dürfen nicht leer sein.");
-			alert.initOwner(stage);
-			Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-			dialogStage.getIcons().add(icon);
-			alert.showAndWait();
+			AlertGenerator.showAlert(AlertType.WARNING, "Warnung", "", "Die Felder dürfen nicht leer sein.", icon, stage, null, false);
 		}
 		else
 		{
diff --git a/src/userInterface/UserInterfaceController.java b/src/userInterface/UserInterfaceController.java
index af9a526..435d354 100644
--- a/src/userInterface/UserInterfaceController.java
+++ b/src/userInterface/UserInterfaceController.java
@@ -57,6 +57,7 @@ import javafx.stage.Modality;
 import javafx.stage.Stage;
 import javafx.stage.WindowEvent;
 import javafx.util.Callback;
+import tools.AlertGenerator;
 import tools.ConvertTo;
 import tools.PathUtils;
 
@@ -141,15 +142,7 @@ public class UserInterfaceController
 				}
 			else
 			{
-				Alert alert = new Alert(AlertType.WARNING);
-				alert.setTitle("Warnung");
-				alert.setHeaderText("");
-				alert.setContentText("Kein Projekt ausgewählt!");
-				alert.initOwner(stage);
-				Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-				dialogStage.getIcons().add(icon);
-				alert.showAndWait();
-
+				AlertGenerator.showAlert(AlertType.WARNING, "Warnung", "", "Kein Projekt ausgewählt.", icon, stage, null, false);
 				startButton.setSelected(false);
 			}
 		});
@@ -164,14 +157,7 @@ public class UserInterfaceController
 		// Prüft, ob die Stoppuhr noch läuft
 		if(stoppUhrLäuftFlag == true)
 		{
-			Alert alert = new Alert(AlertType.WARNING);
-			alert.setTitle("Warnung");
-			alert.setHeaderText("");
-			alert.setContentText("Stoppuhr läuft noch!");
-			alert.initOwner(stage);
-			Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-			dialogStage.getIcons().add(icon);
-			alert.showAndWait();
+			AlertGenerator.showAlert(AlertType.WARNING, "Warnung", "", "Stoppuhr läuft noch!", icon, stage, null, false);			
 		}
 		else
 		{
@@ -214,14 +200,7 @@ public class UserInterfaceController
 		}
 		else
 		{
-			Alert alert = new Alert(AlertType.WARNING);
-			alert.setTitle("Warnung");
-			alert.setHeaderText("Stoppuhr läuft noch!");
-			alert.setContentText("Projekt und Task können nur geändert werden,\nwenn die Stoppuhr nicht läuft.");
-			alert.initOwner(stage);
-			Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-			dialogStage.getIcons().add(icon);
-			alert.showAndWait();
+			AlertGenerator.showAlert(AlertType.WARNING, "Warnung", "Stoppuhr läuft noch!", "Projekt und Task können nur geändert werden,\nwenn die Stoppuhr nicht läuft.", icon, stage, null, false);
 		}
 	}
 
@@ -292,14 +271,7 @@ public class UserInterfaceController
 		catch(Exception e)
 		{
 			e.printStackTrace();
-			Alert alert = new Alert(AlertType.ERROR);
-			alert.setTitle("Fehler");
-			alert.setHeaderText("");
-			alert.setContentText("Beim Laden der Daten ist ein Fehler aufgetreten.");
-			alert.initOwner(stage);
-			Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-			dialogStage.getIcons().add(icon);
-			alert.showAndWait();
+			AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Beim Laden der Daten ist ein Fehler aufgetreten.", icon, stage, null, false);
 		}
 	}
 
@@ -331,14 +303,7 @@ public class UserInterfaceController
 			catch(Exception ex)
 			{
 				ex.printStackTrace();
-				Alert alert = new Alert(AlertType.ERROR);
-				alert.setTitle("Fehler");
-				alert.setHeaderText("");
-				alert.setContentText("Fehler beim Erstellen der Datenbank.");
-				alert.initOwner(stage);
-				Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-				dialogStage.getIcons().add(icon);
-				alert.showAndWait();
+				AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Fehler beim Erstellen der Datenbank.", icon, stage, null, false);
 			}
 		}
 	}
@@ -521,14 +486,7 @@ public class UserInterfaceController
 		catch(Exception e)
 		{
 			e.printStackTrace();
-			Alert alert = new Alert(AlertType.ERROR);
-			alert.setTitle("Fehler");
-			alert.setHeaderText("");
-			alert.setContentText("Fehler beim Speichern des Eintrags.");
-			alert.initOwner(stage);
-			Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-			dialogStage.getIcons().add(icon);
-			alert.showAndWait();
+			AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Fehler beim Speichern des Eintrags.", icon, stage, null, false);
 		}
 
 		loadAll();
@@ -671,23 +629,9 @@ public class UserInterfaceController
 			catch(IOException e)
 			{
 				e.printStackTrace();
-				Alert alert = new Alert(AlertType.ERROR);
-				alert.setTitle("Fehler");
-				alert.setHeaderText("");
-				alert.setContentText("Beim Exportieren der Daten ist ein Fehler aufgetreten.");
-				alert.initOwner(stage);
-				Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-				dialogStage.getIcons().add(icon);
-				alert.showAndWait();
-			}
-			Alert alert = new Alert(AlertType.INFORMATION);
-			alert.setTitle("Erfolgreich exportiert");
-			alert.setHeaderText("");
-			alert.setContentText("Export erfolgreich abgeschlossen.");
-			alert.initOwner(stage);
-			Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-			dialogStage.getIcons().add(icon);
-			alert.showAndWait();
+				AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Beim Exportieren der Daten ist ein Fehler aufgetreten.", icon, stage, null, false);
+			}			
+			AlertGenerator.showAlert(AlertType.INFORMATION, "Erfolgreich exportiert", "", "Export erfolgreich abgeschlossen.", icon, stage, null, false);
 		}
 	}
 
@@ -791,15 +735,8 @@ public class UserInterfaceController
 		}
 		catch(Exception e)
 		{
-			Alert alert = new Alert(AlertType.ERROR);
-			alert.setTitle("Fehler");
-			alert.setHeaderText("");
-			alert.setContentText("Beim Aktualisieren des Eintrags ist ein Fehler aufgetreten.");
-			alert.initOwner(stage);
-			Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-			dialogStage.getIcons().add(icon);
-			alert.showAndWait();
 			e.printStackTrace();
+			AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Beim Aktualisieren des Eintrags ist ein Fehler aufgetreten.", icon, stage, null, false);
 		}
 	}
 
@@ -812,15 +749,8 @@ public class UserInterfaceController
 		}
 		catch(Exception e)
 		{
-			Alert alert = new Alert(AlertType.ERROR);
-			alert.setTitle("Fehler");
-			alert.setHeaderText("");
-			alert.setContentText("Beim Löschen des Eintrags ist ein Fehler aufgetreten.");
-			alert.initOwner(stage);
-			Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-			dialogStage.getIcons().add(icon);
-			alert.showAndWait();
 			e.printStackTrace();
+			AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Beim Löschen des Eintrags ist ein Fehler aufgetreten.", icon, stage, null, false);
 		}
 	}
 	
@@ -844,27 +774,14 @@ public class UserInterfaceController
 			}
 			catch(Exception e)
 			{
-				Alert alert2 = new Alert(AlertType.ERROR);
-				alert2.setTitle("Fehler");
-				alert2.setHeaderText("");
-				alert2.setContentText("Beim Löschen der Datenbank ist ein Fehler aufgetreten.");
-				alert2.initOwner(stage);
-				Stage dialogStage2 = (Stage)alert.getDialogPane().getScene().getWindow();
-				dialogStage2.getIcons().add(icon);
-				alert2.showAndWait();
 				e.printStackTrace();
+				AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Beim Löschen der Datenbank ist ein Fehler aufgetreten.", icon, stage, null, false);
 			}			
 		}		
 	}
 
 	public void about()
 	{
-		Alert alert = new Alert(AlertType.INFORMATION);
-		alert.setTitle("Über " + bundle.getString("app.name"));
-		alert.setHeaderText(bundle.getString("app.name"));
-		alert.setContentText("Version:     " + bundle.getString("version.name") + "\r\nDatum:      " + bundle.getString("version.date") + "\r\nAutor:        Robert Goldmann\r\n");
-		Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
-		dialogStage.getIcons().add(icon);
-		alert.showAndWait();
+		AlertGenerator.showAboutAlert(bundle.getString("app.name"), bundle.getString("version.name"), bundle.getString("version.code"), bundle.getString("version.date"), "Robert Goldmann", icon, stage, null, false);		
 	}	
 }
\ No newline at end of file
-- 
GitLab