diff --git a/src/de/deadlocker8/budgetmaster/logic/utils/Helpers.java b/src/de/deadlocker8/budgetmaster/logic/utils/Helpers.java
index 79afb7987cfa9cf4398a5dba7bddf1692d07cacc..1933a2fe17a7f8f23c0b1511f5d8fc4c8d4420bb 100644
--- a/src/de/deadlocker8/budgetmaster/logic/utils/Helpers.java
+++ b/src/de/deadlocker8/budgetmaster/logic/utils/Helpers.java
@@ -8,11 +8,14 @@ import java.time.LocalDate;
 import java.time.format.DateTimeFormatter;
 import java.util.ArrayList;
 
-import de.deadlocker8.budgetmaster.ui.ModalController;
+import de.deadlocker8.budgetmaster.ui.controller.ModalController;
+import fontAwesome.FontIcon;
+import fontAwesome.FontIconType;
 import javafx.fxml.FXMLLoader;
 import javafx.scene.Parent;
 import javafx.scene.Scene;
 import javafx.scene.image.Image;
+import javafx.scene.paint.Color;
 import javafx.stage.Modality;
 import javafx.stage.Stage;
 import logger.Logger;
@@ -85,11 +88,43 @@ public class Helpers
 		return years;
 	}
 	
+	public static ArrayList<Color> getCategoryColorList()
+	{
+	    ArrayList<Color> colors = new ArrayList<>();       
+        //grey (light to dark)      
+        colors.add(Color.web("#CCCCCC"));   
+        colors.add(Color.web("#888888"));       
+        colors.add(Color.web("#333333"));   
+        colors.add(Color.rgb(255, 241, 119));   //lighyellow    
+        colors.add(Color.rgb(255, 204, 0));     //yellow
+        colors.add(Color.rgb(255, 149, 0));     //orange
+        colors.add(Color.rgb(255, 59, 48));     //red
+        colors.add(Color.rgb(169, 3, 41));      //darkred   
+        colors.add(Color.rgb(255, 81, 151));    //pink
+        colors.add(Color.rgb(155, 89, 182));    //purple
+        colors.add(Color.rgb(88, 86, 214));     //darkpurple
+        colors.add(Color.rgb(0, 122, 250));     //blue      
+        colors.add(Color.rgb(90, 200, 250));    //lightblue
+        colors.add(Color.rgb(76, 217, 100));    //lightgreen
+        colors.add(Color.rgb(46, 124, 43));     //darkgreen
+        
+        return colors;
+	}
+	
+	public static FontIcon getFontIcon(FontIconType type, int size, Color color)
+	{
+	    FontIcon icon = new FontIcon(type);
+	    icon.setSize(size);
+	    icon.setColor(color);
+	    
+	    return icon;
+	}
+	
 	public static Stage showModal(String title, String message, Stage owner, Image icon)
 	{
 		try
 		{
-			FXMLLoader fxmlLoader = new FXMLLoader(Helpers.class.getResource("/de/deadlocker8/budgetmaster/ui/Modal.fxml"));
+			FXMLLoader fxmlLoader = new FXMLLoader(Helpers.class.getResource("/de/deadlocker8/budgetmaster/ui/fxml/Modal.fxml"));
 			Parent root = (Parent)fxmlLoader.load();
 			Stage newStage = new Stage();
 			newStage.initOwner(owner);
diff --git a/src/de/deadlocker8/budgetmaster/main/Main.java b/src/de/deadlocker8/budgetmaster/main/Main.java
index cd3555d262e161e21c2952a155ec0a0d2fdc26b2..30857a6e29f8b1a3de8bbae3e3ebd062199ef5b9 100644
--- a/src/de/deadlocker8/budgetmaster/main/Main.java
+++ b/src/de/deadlocker8/budgetmaster/main/Main.java
@@ -4,7 +4,7 @@ import java.io.File;
 import java.util.Locale;
 import java.util.ResourceBundle;
 
-import de.deadlocker8.budgetmaster.ui.SplashScreenController;
+import de.deadlocker8.budgetmaster.ui.controller.SplashScreenController;
 import javafx.application.Application;
 import javafx.fxml.FXMLLoader;
 import javafx.scene.Parent;
@@ -24,15 +24,16 @@ public class Main extends Application
 	{
 		try
 		{
-			FXMLLoader loader = new FXMLLoader(getClass().getClassLoader().getResource("de/deadlocker8/budgetmaster/ui/SplashScreen.fxml"));
+		    Image icon = new Image("/de/deadlocker8/budgetmaster/resources/icon.png");
+			FXMLLoader loader = new FXMLLoader(getClass().getClassLoader().getResource("de/deadlocker8/budgetmaster/ui/fxml/SplashScreen.fxml"));
 			Parent root = (Parent)loader.load();
 			
 			Scene scene = new Scene(root, 450, 230);
 
-			((SplashScreenController)loader.getController()).init(stage, new Image("/de/deadlocker8/budgetmaster/resources/icon.png"), bundle);
+			((SplashScreenController)loader.getController()).init(stage, icon, bundle);
 
 			stage.setResizable(false);			
-			stage.getIcons().add(new Image("/de/deadlocker8/budgetmaster/resources/icon.png"));
+			stage.getIcons().add(icon);
 			stage.setTitle(bundle.getString("app.name"));
 			stage.setScene(scene);			
 			stage.show();
diff --git a/src/de/deadlocker8/budgetmaster/ui/cells/CategoryBudgetCell.java b/src/de/deadlocker8/budgetmaster/ui/cells/CategoryBudgetCell.java
index b06fef967751ff51a86e62cbcab0d26ba33d1422..11296797f1be9efd9bf0b607b8f7cf746fe5e4c9 100644
--- a/src/de/deadlocker8/budgetmaster/ui/cells/CategoryBudgetCell.java
+++ b/src/de/deadlocker8/budgetmaster/ui/cells/CategoryBudgetCell.java
@@ -2,7 +2,7 @@ package de.deadlocker8.budgetmaster.ui.cells;
 
 import de.deadlocker8.budgetmaster.logic.CategoryBudget;
 import de.deadlocker8.budgetmaster.logic.utils.Helpers;
-import de.deadlocker8.budgetmaster.ui.HomeController;
+import de.deadlocker8.budgetmaster.ui.controller.HomeController;
 import javafx.geometry.Insets;
 import javafx.geometry.Pos;
 import javafx.scene.control.Label;
diff --git a/src/de/deadlocker8/budgetmaster/ui/cells/CategoryCell.java b/src/de/deadlocker8/budgetmaster/ui/cells/CategoryCell.java
index c81345ed20c85813d0377eec1a6dd407cb1a8c64..3d4b91854244fe5ded12664c68f2ae55e72797a0 100644
--- a/src/de/deadlocker8/budgetmaster/ui/cells/CategoryCell.java
+++ b/src/de/deadlocker8/budgetmaster/ui/cells/CategoryCell.java
@@ -3,8 +3,8 @@ package de.deadlocker8.budgetmaster.ui.cells;
 import java.util.Optional;
 
 import de.deadlocker8.budgetmaster.logic.Category;
-import de.deadlocker8.budgetmaster.ui.CategoryController;
-import fontAwesome.FontIcon;
+import de.deadlocker8.budgetmaster.logic.utils.Helpers;
+import de.deadlocker8.budgetmaster.ui.controller.CategoryController;
 import fontAwesome.FontIconType;
 import javafx.geometry.Insets;
 import javafx.geometry.Pos;
@@ -16,6 +16,7 @@ import javafx.scene.control.ListCell;
 import javafx.scene.layout.HBox;
 import javafx.scene.layout.Priority;
 import javafx.scene.layout.Region;
+import javafx.scene.paint.Color;
 import javafx.stage.Stage;
 import tools.ConvertTo;
 
@@ -60,10 +61,8 @@ public class CategoryCell extends ListCell<Category>
 			hbox.getChildren().add(r);
 			HBox.setHgrow(r, Priority.ALWAYS);
 			
-			Button buttonEdit = new Button();
-			FontIcon iconEdit = new FontIcon(FontIconType.PENCIL);
-			iconEdit.setSize(16);
-			buttonEdit.setGraphic(iconEdit);
+			Button buttonEdit = new Button();			
+			buttonEdit.setGraphic(Helpers.getFontIcon(FontIconType.PENCIL, 16, Color.web("#212121")));
 			buttonEdit.setPrefHeight(HEIGHT);					
 			buttonEdit.getStyleClass().add("greylabel");
 			buttonEdit.setStyle("-fx-background-color: transparent");
@@ -73,10 +72,8 @@ public class CategoryCell extends ListCell<Category>
 			hbox.getChildren().add(buttonEdit);
 			HBox.setMargin(buttonEdit, new Insets(0, 0, 0, 25));
 			
-			Button buttonDelete = new Button();
-			FontIcon iconDelete = new FontIcon(FontIconType.TRASH);
-			iconDelete.setSize(16);
-			buttonDelete.setGraphic(iconDelete);
+			Button buttonDelete = new Button();			
+			buttonDelete.setGraphic(Helpers.getFontIcon(FontIconType.TRASH, 16, Color.web("#212121")));
 			buttonDelete.setPrefHeight(HEIGHT);					
 			buttonDelete.getStyleClass().add("greylabel");
 			buttonDelete.setStyle("-fx-background-color: transparent");
diff --git a/src/de/deadlocker8/budgetmaster/ui/cells/PaymentCell.java b/src/de/deadlocker8/budgetmaster/ui/cells/PaymentCell.java
index 13edac0e323762f96230daf3df9db7db3d2a716a..ce02969c7f592b4da63f44009aeaebe7f97fcd45 100644
--- a/src/de/deadlocker8/budgetmaster/ui/cells/PaymentCell.java
+++ b/src/de/deadlocker8/budgetmaster/ui/cells/PaymentCell.java
@@ -11,8 +11,7 @@ import de.deadlocker8.budgetmaster.logic.NormalPayment;
 import de.deadlocker8.budgetmaster.logic.Payment;
 import de.deadlocker8.budgetmaster.logic.RepeatingPaymentEntry;
 import de.deadlocker8.budgetmaster.logic.utils.Helpers;
-import de.deadlocker8.budgetmaster.ui.PaymentController;
-import fontAwesome.FontIcon;
+import de.deadlocker8.budgetmaster.ui.controller.PaymentController;
 import fontAwesome.FontIconType;
 import javafx.geometry.Insets;
 import javafx.geometry.Pos;
@@ -73,18 +72,15 @@ public class PaymentCell extends ListCell<Payment>
 			labelDate.setMinWidth(75);
 			hbox.getChildren().add(labelDate);
 
-			FontIcon iconRepeating = new FontIcon(FontIconType.CALENDAR);
-			iconRepeating.setSize(20);
+			Label labelRepeating = new Label();
 			if(item instanceof RepeatingPaymentEntry)
-			{
-				iconRepeating.setColor(Color.web("#212121"));
+			{				
+				labelRepeating.setGraphic(Helpers.getFontIcon(FontIconType.CALENDAR, 20, Color.web("#212121")));
 			}
 			else
 			{
-				iconRepeating.setColor(Color.TRANSPARENT);
+			    labelRepeating.setGraphic(Helpers.getFontIcon(FontIconType.CALENDAR, 20, Color.TRANSPARENT));
 			}
-			Label labelRepeating = new Label();
-			labelRepeating.setGraphic(iconRepeating);
 			labelRepeating.setPrefHeight(HEIGHT);
 			labelRepeating.setStyle("-fx-font-weight: bold; -fx-font-size: 16; -fx-text-fill: #212121");
 			labelRepeating.setAlignment(Pos.CENTER);
@@ -141,10 +137,8 @@ public class PaymentCell extends ListCell<Payment>
 				labelBudget.setStyle("-fx-font-weight: bold; -fx-font-size: 16; -fx-text-fill: #CC0000");
 			}
 
-			Button buttonDelete = new Button();
-			FontIcon iconDelete = new FontIcon(FontIconType.TRASH);
-			iconDelete.setSize(16);
-			buttonDelete.setGraphic(iconDelete);
+			Button buttonDelete = new Button();			
+			buttonDelete.setGraphic(Helpers.getFontIcon(FontIconType.TRASH, 16, Color.web("#212121")));
 			buttonDelete.setPrefHeight(HEIGHT);
 			buttonDelete.getStyleClass().add("greylabel");
 			buttonDelete.setStyle("-fx-background-color: transparent");			
diff --git a/src/de/deadlocker8/budgetmaster/ui/ColorView.java b/src/de/deadlocker8/budgetmaster/ui/colorPick/ColorView.java
similarity index 97%
rename from src/de/deadlocker8/budgetmaster/ui/ColorView.java
rename to src/de/deadlocker8/budgetmaster/ui/colorPick/ColorView.java
index 9abaf1f94b172651e662746390f93c0a160417cc..a633cbe1e4b163f6b33772a4e9ffecdc6acef516 100644
--- a/src/de/deadlocker8/budgetmaster/ui/ColorView.java
+++ b/src/de/deadlocker8/budgetmaster/ui/colorPick/ColorView.java
@@ -1,9 +1,9 @@
-package de.deadlocker8.budgetmaster.ui;
+package de.deadlocker8.budgetmaster.ui.colorPick;
 
 import java.util.ArrayList;
 import java.util.function.Consumer;
 
-import de.deadlocker8.budgetmaster.ui.colorPick.ColorPickController;
+import de.deadlocker8.budgetmaster.ui.controller.NewCategoryController;
 import fontAwesome.FontIcon;
 import fontAwesome.FontIconType;
 import javafx.fxml.FXMLLoader;
diff --git a/src/de/deadlocker8/budgetmaster/ui/CategoryController.java b/src/de/deadlocker8/budgetmaster/ui/controller/CategoryController.java
similarity index 92%
rename from src/de/deadlocker8/budgetmaster/ui/CategoryController.java
rename to src/de/deadlocker8/budgetmaster/ui/controller/CategoryController.java
index 1c5e03bcbcbbca4b799feaf217b9f721ae615312..5a03fcc229c5f70451d3e7c966c239398b062acf 100644
--- a/src/de/deadlocker8/budgetmaster/ui/CategoryController.java
+++ b/src/de/deadlocker8/budgetmaster/ui/controller/CategoryController.java
@@ -1,4 +1,4 @@
-package de.deadlocker8.budgetmaster.ui;
+package de.deadlocker8.budgetmaster.ui.controller;
 
 
 import java.io.IOException;
@@ -7,8 +7,9 @@ import java.util.ArrayList;
 import de.deadlocker8.budgetmaster.logic.Category;
 import de.deadlocker8.budgetmaster.logic.serverconnection.ExceptionHandler;
 import de.deadlocker8.budgetmaster.logic.serverconnection.ServerConnection;
+import de.deadlocker8.budgetmaster.logic.utils.Helpers;
+import de.deadlocker8.budgetmaster.ui.Refreshable;
 import de.deadlocker8.budgetmaster.ui.cells.CategoryCell;
-import fontAwesome.FontIcon;
 import fontAwesome.FontIconType;
 import javafx.application.Platform;
 import javafx.beans.value.ChangeListener;
@@ -24,6 +25,7 @@ import javafx.scene.control.ListCell;
 import javafx.scene.control.ListView;
 import javafx.scene.input.MouseEvent;
 import javafx.scene.layout.AnchorPane;
+import javafx.scene.paint.Color;
 import javafx.stage.Modality;
 import javafx.stage.Stage;
 import javafx.util.Callback;
@@ -86,10 +88,7 @@ public class CategoryController implements Refreshable
 		labelPlaceholder.setStyle("-fx-font-size: 16");
 		listView.setPlaceholder(labelPlaceholder);
 
-		FontIcon iconCategory = new FontIcon(FontIconType.PLUS);
-		iconCategory.setSize(18);
-		iconCategory.setStyle("-fx-text-fill: white");
-		buttonCategory.setGraphic(iconCategory);
+		buttonCategory.setGraphic(Helpers.getFontIcon(FontIconType.PLUS, 18, Color.WHITE));
 
 		//apply theme
 		anchorPaneMain.setStyle("-fx-background-color: #F4F4F4;");
@@ -123,7 +122,7 @@ public class CategoryController implements Refreshable
 	{
 		try
 		{
-			FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/NewCategoryGUI.fxml"));
+			FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/fxml/NewCategoryGUI.fxml"));
 			Parent root = (Parent)fxmlLoader.load();
 			Stage newStage = new Stage();
 			newStage.initOwner(controller.getStage());
diff --git a/src/de/deadlocker8/budgetmaster/ui/ChartController.java b/src/de/deadlocker8/budgetmaster/ui/controller/ChartController.java
similarity index 92%
rename from src/de/deadlocker8/budgetmaster/ui/ChartController.java
rename to src/de/deadlocker8/budgetmaster/ui/controller/ChartController.java
index 0d8ab2d6985cde19ea8368165b0000216ef6211b..ddd9882794e82ad3ac4b51db0cf6069e19bfd8db 100644
--- a/src/de/deadlocker8/budgetmaster/ui/ChartController.java
+++ b/src/de/deadlocker8/budgetmaster/ui/controller/ChartController.java
@@ -1,4 +1,4 @@
-package de.deadlocker8.budgetmaster.ui;
+package de.deadlocker8.budgetmaster.ui.controller;
 
 import java.io.File;
 import java.io.IOException;
@@ -18,7 +18,7 @@ import de.deadlocker8.budgetmaster.logic.charts.MonthLineChart;
 import de.deadlocker8.budgetmaster.logic.serverconnection.ExceptionHandler;
 import de.deadlocker8.budgetmaster.logic.serverconnection.ServerConnection;
 import de.deadlocker8.budgetmaster.logic.utils.Helpers;
-import fontAwesome.FontIcon;
+import de.deadlocker8.budgetmaster.ui.Refreshable;
 import fontAwesome.FontIconType;
 import javafx.application.Platform;
 import javafx.collections.FXCollections;
@@ -79,29 +79,18 @@ public class ChartController implements Refreshable
 		vboxChartCategories.setStyle("-fx-background-color: #F4F4F4;");
 		vboxChartCategories.setSpacing(20);
 		vboxChartMonth.setStyle("-fx-background-color: #F4F4F4;");
-		FontIcon iconShow = new FontIcon(FontIconType.CHECK);
-		iconShow.setSize(16);
-		iconShow.setColor(Color.WHITE);
+		
 		buttonChartCategoriesShow.setStyle("-fx-background-color: #2E79B9;");
-		buttonChartCategoriesShow.setGraphic(iconShow);
+		buttonChartCategoriesShow.setGraphic(Helpers.getFontIcon(FontIconType.CHECK, 16, Color.WHITE));
 
-		FontIcon iconShow2 = new FontIcon(FontIconType.SAVE);
-		iconShow2.setSize(16);
-		iconShow2.setColor(Color.WHITE);
 		buttonChartCategoriesExport.setStyle("-fx-background-color: #2E79B9;");
-		buttonChartCategoriesExport.setGraphic(iconShow2);
+		buttonChartCategoriesExport.setGraphic(Helpers.getFontIcon(FontIconType.SAVE, 16, Color.WHITE));
 
-		FontIcon iconShow3 = new FontIcon(FontIconType.CHECK);
-		iconShow3.setSize(16);
-		iconShow3.setColor(Color.WHITE);
 		buttonChartMonthShow.setStyle("-fx-background-color: #2E79B9;");
-		buttonChartMonthShow.setGraphic(iconShow3);
+		buttonChartMonthShow.setGraphic(Helpers.getFontIcon(FontIconType.CHECK, 16, Color.WHITE));
 
-		FontIcon iconShow4 = new FontIcon(FontIconType.SAVE);
-		iconShow4.setSize(16);
-		iconShow4.setColor(Color.WHITE);
 		buttonChartMonthExport.setStyle("-fx-background-color: #2E79B9;");
-		buttonChartMonthExport.setGraphic(iconShow4);		
+		buttonChartMonthExport.setGraphic(Helpers.getFontIcon(FontIconType.SAVE, 16, Color.WHITE));		
 	
 		datePickerEnd.setDayCellFactory(new Callback<DatePicker, DateCell>()
 		{
@@ -204,7 +193,7 @@ public class ChartController implements Refreshable
 			Platform.runLater(() -> {
 				try
 				{
-					FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/ExportChartGUI.fxml"));
+					FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/fxml/ExportChartGUI.fxml"));
 					Parent root = (Parent)fxmlLoader.load();
 					Stage newStage = new Stage();
 					newStage.initOwner(controller.getStage());
diff --git a/src/de/deadlocker8/budgetmaster/ui/Controller.java b/src/de/deadlocker8/budgetmaster/ui/controller/Controller.java
similarity index 92%
rename from src/de/deadlocker8/budgetmaster/ui/Controller.java
rename to src/de/deadlocker8/budgetmaster/ui/controller/Controller.java
index 2fa2e5b0ff43445d08b1907ea9414b50dc178c47..5d78940b58085a2e06211f3fa5c9ac6e17bd384e 100644
--- a/src/de/deadlocker8/budgetmaster/ui/Controller.java
+++ b/src/de/deadlocker8/budgetmaster/ui/controller/Controller.java
@@ -1,4 +1,4 @@
-package de.deadlocker8.budgetmaster.ui;
+package de.deadlocker8.budgetmaster.ui.controller;
 
 import java.io.IOException;
 import java.util.ArrayList;
@@ -15,7 +15,6 @@ import de.deadlocker8.budgetmaster.logic.Settings;
 import de.deadlocker8.budgetmaster.logic.serverconnection.ExceptionHandler;
 import de.deadlocker8.budgetmaster.logic.serverconnection.ServerConnection;
 import de.deadlocker8.budgetmaster.logic.utils.Helpers;
-import fontAwesome.FontIcon;
 import fontAwesome.FontIconType;
 import javafx.animation.FadeTransition;
 import javafx.animation.SequentialTransition;
@@ -31,6 +30,7 @@ import javafx.scene.control.Tab;
 import javafx.scene.control.TabPane;
 import javafx.scene.image.Image;
 import javafx.scene.layout.AnchorPane;
+import javafx.scene.paint.Color;
 import javafx.stage.Stage;
 import javafx.util.Duration;
 import logger.Logger;
@@ -92,25 +92,25 @@ public class Controller
 
 		try
 		{
-			FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/HomeTab.fxml"));
+			FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/fxml/HomeTab.fxml"));
 			Parent nodeTabHome = (Parent)fxmlLoader.load();
 			homeController = fxmlLoader.getController();
 			homeController.init(this);
 			tabHome.setContent(nodeTabHome);
 
-			fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/PaymentTab.fxml"));
+			fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/fxml/PaymentTab.fxml"));
 			Parent nodeTabPayment = (Parent)fxmlLoader.load();
 			paymentController = fxmlLoader.getController();
 			paymentController.init(this);
 			tabPayments.setContent(nodeTabPayment);
 
-			fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/CategoryTab.fxml"));
+			fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/fxml/CategoryTab.fxml"));
 			Parent nodeTabCategory = (Parent)fxmlLoader.load();
 			categoryController = fxmlLoader.getController();
 			categoryController.init(this);
 			tabCategories.setContent(nodeTabCategory);
 
-			fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/ChartTab.fxml"));
+			fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/fxml/ChartTab.fxml"));
 			Parent nodeTabChart = (Parent)fxmlLoader.load();
 			chartController = fxmlLoader.getController();
 			chartController.init(this);
@@ -122,13 +122,13 @@ public class Controller
 				}
 			});
 			
-			fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/ReportTab.fxml"));
+			fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/fxml/ReportTab.fxml"));
 			Parent nodeTabReport = (Parent)fxmlLoader.load();
 			reportController = fxmlLoader.getController();
 			reportController.init(this);
 			tabReports.setContent(nodeTabReport);
 
-			fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/SettingsTab.fxml"));
+			fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/fxml/SettingsTab.fxml"));
 			Parent nodeTabSettings = (Parent)fxmlLoader.load();
 			settingsController = fxmlLoader.getController();
 			settingsController.init(this);
@@ -141,19 +141,11 @@ public class Controller
 				AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Beim Erstellen der Benutzeroberfläche ist ein Fehler aufgetreten", icon, stage, null, false);
 			});			
 		}
-
-		FontIcon iconPrevious = new FontIcon(FontIconType.CHEVRON_LEFT);
-		iconPrevious.setSize(20);
-		buttonLeft.setGraphic(iconPrevious);
-		FontIcon iconNext = new FontIcon(FontIconType.CHEVRON_RIGHT);
-		iconNext.setSize(20);
-		buttonRight.setGraphic(iconNext);
-		FontIcon iconToday = new FontIcon(FontIconType.CALENDAR_ALT);
-		iconToday.setSize(20);
-		buttonToday.setGraphic(iconToday);
-		FontIcon iconAbout = new FontIcon(FontIconType.INFO);
-		iconAbout.setSize(20);
-		buttonAbout.setGraphic(iconAbout);
+		
+		buttonLeft.setGraphic(Helpers.getFontIcon(FontIconType.CHEVRON_LEFT, 20, Color.web(bundle.getString("color.text"))));		
+		buttonRight.setGraphic(Helpers.getFontIcon(FontIconType.CHEVRON_RIGHT, 20, Color.web(bundle.getString("color.text"))));		
+		buttonToday.setGraphic(Helpers.getFontIcon(FontIconType.CALENDAR_ALT, 20, Color.web(bundle.getString("color.text"))));		
+		buttonAbout.setGraphic(Helpers.getFontIcon(FontIconType.INFO, 20, Color.web(bundle.getString("color.text"))));
 
 		// apply theme
 		anchorPaneMain.setStyle("-fx-background-color: #DDDDDD");
diff --git a/src/de/deadlocker8/budgetmaster/ui/ExportChartController.java b/src/de/deadlocker8/budgetmaster/ui/controller/ExportChartController.java
similarity index 91%
rename from src/de/deadlocker8/budgetmaster/ui/ExportChartController.java
rename to src/de/deadlocker8/budgetmaster/ui/controller/ExportChartController.java
index 3b25804ae713bad2d5ce5a819334dee430f2bd66..14e7cc02eacbf9a44b792f27d0fb4f24eaa1c910 100644
--- a/src/de/deadlocker8/budgetmaster/ui/ExportChartController.java
+++ b/src/de/deadlocker8/budgetmaster/ui/controller/ExportChartController.java
@@ -1,4 +1,4 @@
-package de.deadlocker8.budgetmaster.ui;
+package de.deadlocker8.budgetmaster.ui.controller;
 
 import java.awt.Desktop;
 import java.io.File;
@@ -8,7 +8,7 @@ import java.util.Optional;
 import javax.imageio.ImageIO;
 
 import de.deadlocker8.budgetmaster.logic.charts.ChartExportable;
-import fontAwesome.FontIcon;
+import de.deadlocker8.budgetmaster.logic.utils.Helpers;
 import fontAwesome.FontIconType;
 import javafx.embed.swing.SwingFXUtils;
 import javafx.fxml.FXML;
@@ -57,25 +57,16 @@ public class ExportChartController
 		textFieldWidth.setText(String.valueOf((int)chart.getSuggestedWidth()));
 		textFieldHeight.setText(String.valueOf((int)chart.getSuggestedHeight()));
 
-		anchorPaneMain.setStyle("-fx-background-color: #F4F4F4;");
-		
-		FontIcon iconShow = new FontIcon(FontIconType.FOLDER_OPEN);
-		iconShow.setSize(14);
-		iconShow.setColor(Color.WHITE);
+		anchorPaneMain.setStyle("-fx-background-color: #F4F4F4;");		
+	
 		buttonChooseFile.setStyle("-fx-background-color: #2E79B9; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 14;");
-		buttonChooseFile.setGraphic(iconShow);
-
-		FontIcon iconShow2 = new FontIcon(FontIconType.SAVE);
-		iconShow2.setSize(14);
-		iconShow2.setColor(Color.WHITE);
+		buttonChooseFile.setGraphic(Helpers.getFontIcon(FontIconType.FOLDER_OPEN, 14, Color.WHITE));
+		
 		buttonExport.setStyle("-fx-background-color: #2E79B9; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 14;");
-		buttonExport.setGraphic(iconShow2);
+		buttonExport.setGraphic(Helpers.getFontIcon(FontIconType.SAVE, 14, Color.WHITE));
 
-		FontIcon iconShow3 = new FontIcon(FontIconType.TIMES);
-		iconShow3.setSize(14);
-		iconShow3.setColor(Color.WHITE);
 		buttonCancel.setStyle("-fx-background-color: #2E79B9; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 14;");
-		buttonCancel.setGraphic(iconShow3);		
+		buttonCancel.setGraphic(Helpers.getFontIcon(FontIconType.TIMES, 14, Color.WHITE));		
 		
 		textFieldWidth.setTextFormatter(new TextFormatter<>(c -> {
 			if(c.getControlNewText().isEmpty())
diff --git a/src/de/deadlocker8/budgetmaster/ui/FilterController.java b/src/de/deadlocker8/budgetmaster/ui/controller/FilterController.java
similarity index 89%
rename from src/de/deadlocker8/budgetmaster/ui/FilterController.java
rename to src/de/deadlocker8/budgetmaster/ui/controller/FilterController.java
index 504610f91c7cab1b0b7198d891d6dd1ecb0adfc4..c264a28baa2f8bd6bf014f9eff8f3a3acdc75545 100644
--- a/src/de/deadlocker8/budgetmaster/ui/FilterController.java
+++ b/src/de/deadlocker8/budgetmaster/ui/controller/FilterController.java
@@ -1,10 +1,10 @@
-package de.deadlocker8.budgetmaster.ui;
+package de.deadlocker8.budgetmaster.ui.controller;
 
 import java.util.ArrayList;
 
 import de.deadlocker8.budgetmaster.logic.Category;
 import de.deadlocker8.budgetmaster.logic.FilterSettings;
-import fontAwesome.FontIcon;
+import de.deadlocker8.budgetmaster.logic.utils.Helpers;
 import fontAwesome.FontIconType;
 import javafx.fxml.FXML;
 import javafx.scene.Node;
@@ -12,6 +12,7 @@ import javafx.scene.control.Button;
 import javafx.scene.control.CheckBox;
 import javafx.scene.control.TextField;
 import javafx.scene.layout.VBox;
+import javafx.scene.paint.Color;
 import javafx.stage.Stage;
 
 public class FilterController
@@ -39,18 +40,9 @@ public class FilterController
 		this.controller = controller;
 		this.filterSetttings = filterSettings;
 
-		FontIcon iconCancel = new FontIcon(FontIconType.TIMES);
-		iconCancel.setSize(17);
-		iconCancel.setStyle("-fx-text-fill: white");
-		buttonCancel.setGraphic(iconCancel);
-		FontIcon iconReset = new FontIcon(FontIconType.UNDO);
-		iconReset.setSize(17);
-		iconReset.setStyle("-fx-text-fill: white");
-		buttonReset.setGraphic(iconReset);
-		FontIcon iconSave = new FontIcon(FontIconType.FILTER);
-		iconSave.setSize(17);
-		iconSave.setStyle("-fx-text-fill: white");
-		buttonFilter.setGraphic(iconSave);
+		buttonCancel.setGraphic(Helpers.getFontIcon(FontIconType.TIMES, 17, Color.WHITE));
+		buttonReset.setGraphic(Helpers.getFontIcon(FontIconType.UNDO, 17, Color.WHITE));		
+		buttonFilter.setGraphic(Helpers.getFontIcon(FontIconType.FILTER, 17, Color.WHITE));
 
 		buttonCancel.setStyle("-fx-background-color: #2E79B9; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 15;");
 		buttonReset.setStyle("-fx-background-color: #2E79B9; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 15;");
diff --git a/src/de/deadlocker8/budgetmaster/ui/HomeController.java b/src/de/deadlocker8/budgetmaster/ui/controller/HomeController.java
similarity index 91%
rename from src/de/deadlocker8/budgetmaster/ui/HomeController.java
rename to src/de/deadlocker8/budgetmaster/ui/controller/HomeController.java
index feb5c989952314609ee527f5549d236efd45f6a7..5a8dcb30e95b48de692afc4a55dc37ddd4652b2b 100644
--- a/src/de/deadlocker8/budgetmaster/ui/HomeController.java
+++ b/src/de/deadlocker8/budgetmaster/ui/controller/HomeController.java
@@ -1,10 +1,11 @@
-package de.deadlocker8.budgetmaster.ui;
+package de.deadlocker8.budgetmaster.ui.controller;
 
 import java.util.ArrayList;
 
 import de.deadlocker8.budgetmaster.logic.Budget;
 import de.deadlocker8.budgetmaster.logic.CategoryBudget;
 import de.deadlocker8.budgetmaster.logic.utils.Helpers;
+import de.deadlocker8.budgetmaster.ui.Refreshable;
 import de.deadlocker8.budgetmaster.ui.cells.CategoryBudgetCell;
 import javafx.application.Platform;
 import javafx.beans.value.ChangeListener;
@@ -40,6 +41,10 @@ public class HomeController implements Refreshable
 				return new CategoryBudgetCell(thisController);
 			}
 		});
+		
+		Label labelPlaceholder = new Label("Keine Daten verfügbar");          
+        labelPlaceholder.setStyle("-fx-font-size: 16");
+        listView.setPlaceholder(labelPlaceholder);
 
 		listView.getSelectionModel().selectedIndexProperty().addListener(new ChangeListener<Number>()
 		{
@@ -112,9 +117,5 @@ public class HomeController implements Refreshable
 	{
 		refreshListView();	
 		refreshCounter();
-		
-		Label labelPlaceholder = new Label("Keine Daten verfügbar");			
-		labelPlaceholder.setStyle("-fx-font-size: 16");
-		listView.setPlaceholder(labelPlaceholder);
 	}
 }
\ No newline at end of file
diff --git a/src/de/deadlocker8/budgetmaster/ui/ModalController.java b/src/de/deadlocker8/budgetmaster/ui/controller/ModalController.java
similarity index 85%
rename from src/de/deadlocker8/budgetmaster/ui/ModalController.java
rename to src/de/deadlocker8/budgetmaster/ui/controller/ModalController.java
index 042c7345a46f1f688df26dc19bf4eaf82a317c42..d86c8cbc3cccfbcb48d12a916d012bdab5c0e31d 100644
--- a/src/de/deadlocker8/budgetmaster/ui/ModalController.java
+++ b/src/de/deadlocker8/budgetmaster/ui/controller/ModalController.java
@@ -1,4 +1,4 @@
-package de.deadlocker8.budgetmaster.ui;
+package de.deadlocker8.budgetmaster.ui.controller;
 
 import javafx.fxml.FXML;
 import javafx.scene.control.Label;
diff --git a/src/de/deadlocker8/budgetmaster/ui/NewCategoryController.java b/src/de/deadlocker8/budgetmaster/ui/controller/NewCategoryController.java
similarity index 78%
rename from src/de/deadlocker8/budgetmaster/ui/NewCategoryController.java
rename to src/de/deadlocker8/budgetmaster/ui/controller/NewCategoryController.java
index 54070e374c2ababc76b88595c9acf8495950d7df..6b08ff5dfb10bf6e97afb7d54d813a5dfd30d7f8 100644
--- a/src/de/deadlocker8/budgetmaster/ui/NewCategoryController.java
+++ b/src/de/deadlocker8/budgetmaster/ui/controller/NewCategoryController.java
@@ -1,4 +1,4 @@
-package de.deadlocker8.budgetmaster.ui;
+package de.deadlocker8.budgetmaster.ui.controller;
 
 import java.util.ArrayList;
 
@@ -8,7 +8,8 @@ import org.controlsfx.control.PopOver.ArrowLocation;
 import de.deadlocker8.budgetmaster.logic.Category;
 import de.deadlocker8.budgetmaster.logic.serverconnection.ExceptionHandler;
 import de.deadlocker8.budgetmaster.logic.serverconnection.ServerConnection;
-import fontAwesome.FontIcon;
+import de.deadlocker8.budgetmaster.logic.utils.Helpers;
+import de.deadlocker8.budgetmaster.ui.colorPick.ColorView;
 import fontAwesome.FontIconType;
 import javafx.fxml.FXML;
 import javafx.scene.control.Alert.AlertType;
@@ -44,15 +45,9 @@ public class NewCategoryController
 		this.edit = edit;
 		this.color = null;
 		this.category = category;
-
-		FontIcon iconCancel = new FontIcon(FontIconType.TIMES);
-		iconCancel.setSize(17);
-		iconCancel.setStyle("-fx-text-fill: white");
-		buttonCancel.setGraphic(iconCancel);
-		FontIcon iconSave = new FontIcon(FontIconType.SAVE);
-		iconSave.setSize(17);
-		iconSave.setStyle("-fx-text-fill: white");
-		buttonSave.setGraphic(iconSave);
+	
+		buttonCancel.setGraphic(Helpers.getFontIcon(FontIconType.TIMES, 17, Color.WHITE));		
+		buttonSave.setGraphic(Helpers.getFontIcon(FontIconType.SAVE, 17, Color.WHITE));
 
 		buttonCancel.setStyle("-fx-background-color: #2E79B9; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 15;");
 		buttonSave.setStyle("-fx-background-color: #2E79B9; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 15;");
@@ -60,23 +55,7 @@ public class NewCategoryController
 		
 		buttonColor.prefWidthProperty().bind(textFieldName.widthProperty());
 		
-		ArrayList<Color> colors = new ArrayList<>();		
-		//grey (light to dark)		
-		colors.add(Color.web("#CCCCCC"));	
-		colors.add(Color.web("#888888"));		
-		colors.add(Color.web("#333333"));	
-		colors.add(Color.rgb(255, 241, 119));	//lighyellow	
-		colors.add(Color.rgb(255, 204, 0));		//yellow
-		colors.add(Color.rgb(255, 149, 0)); 	//orange
-		colors.add(Color.rgb(255, 59, 48));		//red
-		colors.add(Color.rgb(169, 3, 41));		//darkred	
-		colors.add(Color.rgb(255, 81, 151));	//pink
-		colors.add(Color.rgb(155, 89, 182));	//purple
-		colors.add(Color.rgb(88, 86, 214));		//darkpurple
-		colors.add(Color.rgb(0, 122, 250));		//blue		
-		colors.add(Color.rgb(90, 200, 250));	//lightblue
-		colors.add(Color.rgb(76, 217, 100));	//lightgreen
-		colors.add(Color.rgb(46, 124, 43));		//darkgreen
+		ArrayList<Color> colors = Helpers.getCategoryColorList();
 		
 		buttonColor.setOnMouseClicked((e) -> {
 
diff --git a/src/de/deadlocker8/budgetmaster/ui/NewPaymentController.java b/src/de/deadlocker8/budgetmaster/ui/controller/NewPaymentController.java
similarity index 97%
rename from src/de/deadlocker8/budgetmaster/ui/NewPaymentController.java
rename to src/de/deadlocker8/budgetmaster/ui/controller/NewPaymentController.java
index 2ba2285b179909a908ab05b2024b1bdfc5b9e10b..51031c0f7d10537ed92d4cc1e1dca19bf7b97d62 100644
--- a/src/de/deadlocker8/budgetmaster/ui/NewPaymentController.java
+++ b/src/de/deadlocker8/budgetmaster/ui/controller/NewPaymentController.java
@@ -1,4 +1,4 @@
-package de.deadlocker8.budgetmaster.ui;
+package de.deadlocker8.budgetmaster.ui.controller;
 
 import java.time.LocalDate;
 import java.util.ArrayList;
@@ -16,7 +16,6 @@ import de.deadlocker8.budgetmaster.logic.utils.Helpers;
 import de.deadlocker8.budgetmaster.ui.cells.ButtonCategoryCell;
 import de.deadlocker8.budgetmaster.ui.cells.RepeatingDayCell;
 import de.deadlocker8.budgetmaster.ui.cells.SmallCategoryCell;
-import fontAwesome.FontIcon;
 import fontAwesome.FontIconType;
 import javafx.fxml.FXML;
 import javafx.scene.control.Alert.AlertType;
@@ -71,15 +70,9 @@ public class NewPaymentController
 		this.isPayment = isPayment;
 		this.edit = edit;
 		this.payment = payment;
-
-		FontIcon iconCancel = new FontIcon(FontIconType.TIMES);
-		iconCancel.setSize(17);
-		iconCancel.setStyle("-fx-text-fill: white");
-		buttonCancel.setGraphic(iconCancel);
-		FontIcon iconSave = new FontIcon(FontIconType.SAVE);
-		iconSave.setSize(17);
-		iconSave.setStyle("-fx-text-fill: white");
-		buttonSave.setGraphic(iconSave);
+		
+		buttonCancel.setGraphic(Helpers.getFontIcon(FontIconType.TIMES, 17, Color.WHITE));
+		buttonSave.setGraphic(Helpers.getFontIcon(FontIconType.SAVE, 17, Color.WHITE));
 
 		buttonCancel.setStyle("-fx-background-color: #2E79B9; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 15;");
 		buttonSave.setStyle("-fx-background-color: #2E79B9; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 15;");
diff --git a/src/de/deadlocker8/budgetmaster/ui/PaymentController.java b/src/de/deadlocker8/budgetmaster/ui/controller/PaymentController.java
similarity index 88%
rename from src/de/deadlocker8/budgetmaster/ui/PaymentController.java
rename to src/de/deadlocker8/budgetmaster/ui/controller/PaymentController.java
index 272e133d70f97fc8e8f7f12d8450161be4be92e4..634a08e0e6cbf62d42436177f6a349709ba379a9 100644
--- a/src/de/deadlocker8/budgetmaster/ui/PaymentController.java
+++ b/src/de/deadlocker8/budgetmaster/ui/controller/PaymentController.java
@@ -1,4 +1,4 @@
-package de.deadlocker8.budgetmaster.ui;
+package de.deadlocker8.budgetmaster.ui.controller;
 
 import java.io.IOException;
 import java.util.ArrayList;
@@ -12,8 +12,8 @@ import de.deadlocker8.budgetmaster.logic.RepeatingPaymentEntry;
 import de.deadlocker8.budgetmaster.logic.serverconnection.ExceptionHandler;
 import de.deadlocker8.budgetmaster.logic.serverconnection.ServerConnection;
 import de.deadlocker8.budgetmaster.logic.utils.Helpers;
+import de.deadlocker8.budgetmaster.ui.Refreshable;
 import de.deadlocker8.budgetmaster.ui.cells.PaymentCell;
-import fontAwesome.FontIcon;
 import fontAwesome.FontIconType;
 import javafx.application.Platform;
 import javafx.beans.value.ChangeListener;
@@ -29,6 +29,7 @@ import javafx.scene.control.ListCell;
 import javafx.scene.control.ListView;
 import javafx.scene.input.MouseEvent;
 import javafx.scene.layout.AnchorPane;
+import javafx.scene.paint.Color;
 import javafx.stage.Modality;
 import javafx.stage.Stage;
 import javafx.util.Callback;
@@ -79,6 +80,10 @@ public class PaymentController implements Refreshable
 				return cell;
 			}
 		});
+		
+		Label labelPlaceholder = new Label("Keine Daten verfügbar");      
+        labelPlaceholder.setStyle("-fx-font-size: 16");
+        listView.setPlaceholder(labelPlaceholder);
 
 		listView.getSelectionModel().selectedIndexProperty().addListener(new ChangeListener<Number>()
 		{
@@ -95,23 +100,10 @@ public class PaymentController implements Refreshable
 			}
 		});
 
-		FontIcon iconIncome = new FontIcon(FontIconType.DOWNLOAD);
-		iconIncome.setSize(18);
-		iconIncome.setStyle("-fx-text-fill: white");
-		buttonNewIncome.setGraphic(iconIncome);
-		FontIcon iconFilter = new FontIcon(FontIconType.FILTER);
-		iconFilter.setSize(18);
-		iconFilter.setStyle("-fx-text-fill: white");
-		buttonFilter.setGraphic(iconFilter);
-		FontIcon iconPayment = new FontIcon(FontIconType.UPLOAD);
-		iconPayment.setSize(18);
-		iconPayment.setStyle("-fx-text-fill: white");
-		buttonNewPayment.setGraphic(iconPayment);
-		
-		FontIcon iconWarning = new FontIcon(FontIconType.WARNING);
-		iconWarning.setSize(13);
-		iconWarning.setStyle("-fx-text-fill: " + controller.getBundle().getString("color.text"));
-		labelFilterActive.setGraphic(iconWarning);
+		buttonNewIncome.setGraphic(Helpers.getFontIcon(FontIconType.DOWNLOAD, 18, Color.WHITE));
+		buttonFilter.setGraphic(Helpers.getFontIcon(FontIconType.FILTER, 18, Color.WHITE));
+		buttonNewPayment.setGraphic(Helpers.getFontIcon(FontIconType.UPLOAD, 18, Color.WHITE));
+		labelFilterActive.setGraphic(Helpers.getFontIcon(FontIconType.WARNING, 13, Color.web(controller.getBundle().getString("color.text"))));
 
 		// apply theme
 		anchorPaneMain.setStyle("-fx-background-color: #F4F4F4;");
@@ -141,7 +133,7 @@ public class PaymentController implements Refreshable
 	{
 		try
 		{
-			FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/NewPaymentGUI.fxml"));
+			FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/fxml/NewPaymentGUI.fxml"));
 			Parent root = (Parent)fxmlLoader.load();
 			Stage newStage = new Stage();
 			newStage.initOwner(controller.getStage());
@@ -248,7 +240,7 @@ public class PaymentController implements Refreshable
 	{
 		try
 		{
-			FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/FilterGUI.fxml"));
+			FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/fxml/FilterGUI.fxml"));
 			Parent root = (Parent)fxmlLoader.load();
 			Stage newStage = new Stage();
 			newStage.initOwner(controller.getStage());
@@ -286,9 +278,5 @@ public class PaymentController implements Refreshable
 		{
 			labelFilterActive.setVisible(true);
 		}
-
-		Label labelPlaceholder = new Label("Keine Daten verfügbar");		
-		labelPlaceholder.setStyle("-fx-font-size: 16");
-		listView.setPlaceholder(labelPlaceholder);
 	}
 }
\ No newline at end of file
diff --git a/src/de/deadlocker8/budgetmaster/ui/ReportController.java b/src/de/deadlocker8/budgetmaster/ui/controller/ReportController.java
similarity index 93%
rename from src/de/deadlocker8/budgetmaster/ui/ReportController.java
rename to src/de/deadlocker8/budgetmaster/ui/controller/ReportController.java
index a0fe17c0911799612bb511bd79ba36a54e571ef4..4790ea4e2a084fb0a68e878ac533fca679e01494 100644
--- a/src/de/deadlocker8/budgetmaster/ui/ReportController.java
+++ b/src/de/deadlocker8/budgetmaster/ui/controller/ReportController.java
@@ -1,4 +1,4 @@
-package de.deadlocker8.budgetmaster.ui;
+package de.deadlocker8.budgetmaster.ui.controller;
 
 import java.awt.Desktop;
 import java.io.File;
@@ -20,7 +20,7 @@ import de.deadlocker8.budgetmaster.logic.report.ColumnType;
 import de.deadlocker8.budgetmaster.logic.report.ReportGenerator;
 import de.deadlocker8.budgetmaster.logic.report.ReportItem;
 import de.deadlocker8.budgetmaster.logic.utils.Helpers;
-import fontAwesome.FontIcon;
+import de.deadlocker8.budgetmaster.ui.Refreshable;
 import fontAwesome.FontIconType;
 import javafx.application.Platform;
 import javafx.beans.property.SimpleStringProperty;
@@ -74,18 +74,9 @@ public class ReportController implements Refreshable
 	{
 		this.controller = controller;
 
-		FontIcon iconFilter = new FontIcon(FontIconType.FILTER);
-		iconFilter.setSize(18);
-		iconFilter.setStyle("-fx-text-fill: white");
-		buttonFilter.setGraphic(iconFilter);
-		FontIcon iconPayment = new FontIcon(FontIconType.COGS);
-		iconPayment.setSize(18);
-		iconPayment.setStyle("-fx-text-fill: white");
-		buttonGenerate.setGraphic(iconPayment);
-		FontIcon iconWarning = new FontIcon(FontIconType.WARNING);
-		iconWarning.setSize(13);
-		iconWarning.setStyle("-fx-text-fill: " + controller.getBundle().getString("color.text"));
-		labelFilterActive.setGraphic(iconWarning);
+		buttonFilter.setGraphic(Helpers.getFontIcon(FontIconType.FILTER, 18, Color.WHITE));		
+		buttonGenerate.setGraphic(Helpers.getFontIcon(FontIconType.COGS, 18, Color.WHITE));	
+		labelFilterActive.setGraphic(Helpers.getFontIcon(FontIconType.WARNING, 16, Color.web(controller.getBundle().getString("color.text"))));
 		
 		initTable();
 
@@ -191,14 +182,16 @@ public class ReportController implements Refreshable
                     public void updateItem(Boolean item, boolean empty)
                     {
                         if(!empty)
-                        {                           
-                            FontIcon iconRepeating = new FontIcon(FontIconType.CALENDAR);
-                            iconRepeating.setSize(16);                          
-                            Color color = item ? Color.web("#212121") : Color.TRANSPARENT;
-                            iconRepeating.setColor(color);
-                            
+                        {   
                             Label labelRepeating = new Label();
-                            labelRepeating.setGraphic(iconRepeating);
+                            if(item)
+                            {
+                                labelRepeating.setGraphic(Helpers.getFontIcon(FontIconType.CALENDAR, 16, Color.web(controller.getBundle().getString("color.text"))));
+                            }
+                            else
+                            {
+                                labelRepeating.setGraphic(Helpers.getFontIcon(FontIconType.CALENDAR, 16, Color.TRANSPARENT));
+                            }                            
                             labelRepeating.setStyle("-fx-font-weight: bold; -fx-font-size: 14; -fx-text-fill: #212121");
                             labelRepeating.setAlignment(Pos.CENTER);
                             setGraphic(labelRepeating);
@@ -345,12 +338,15 @@ public class ReportController implements Refreshable
                     {
                         if(!empty)
                         {                               
-                            FontIcon iconRepeating = item > 0 ? new FontIcon(FontIconType.PLUS) : new FontIcon(FontIconType.MINUS);                     
-                            iconRepeating.setSize(14);
-                            iconRepeating.setColor(Color.web("#212121"));
-                            
                             Label labelRepeating = new Label();
-                            labelRepeating.setGraphic(iconRepeating);
+                            if(item > 0)
+                            {
+                                labelRepeating.setGraphic(Helpers.getFontIcon(FontIconType.PLUS, 14, Color.web(controller.getBundle().getString("color.text"))));
+                            }
+                            else
+                            {
+                                labelRepeating.setGraphic(Helpers.getFontIcon(FontIconType.MINUS, 14, Color.web(controller.getBundle().getString("color.text"))));
+                            }
                             labelRepeating.setStyle("-fx-font-weight: bold; -fx-font-size: 14; -fx-text-fill: #212121");
                             labelRepeating.setAlignment(Pos.CENTER);
                             setGraphic(labelRepeating);
@@ -452,7 +448,7 @@ public class ReportController implements Refreshable
 	{
 		try
 		{
-			FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/FilterGUI.fxml"));
+			FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/fxml/FilterGUI.fxml"));
 			Parent root = (Parent)fxmlLoader.load();
 			Stage newStage = new Stage();
 			newStage.initOwner(controller.getStage());
diff --git a/src/de/deadlocker8/budgetmaster/ui/SettingsController.java b/src/de/deadlocker8/budgetmaster/ui/controller/SettingsController.java
similarity index 99%
rename from src/de/deadlocker8/budgetmaster/ui/SettingsController.java
rename to src/de/deadlocker8/budgetmaster/ui/controller/SettingsController.java
index 159c37cc184be56be33bd56eadee8edef2d98946..34993a4d68c4e92cded299e56cda8413a8723971 100644
--- a/src/de/deadlocker8/budgetmaster/ui/SettingsController.java
+++ b/src/de/deadlocker8/budgetmaster/ui/controller/SettingsController.java
@@ -1,4 +1,4 @@
-package de.deadlocker8.budgetmaster.ui;
+package de.deadlocker8.budgetmaster.ui.controller;
 
 import java.io.File;
 import java.io.IOException;
@@ -163,7 +163,6 @@ public class SettingsController
 		{
 			if(!clientSecret.equals("******"))
 			{
-				System.out.println(clientSecret);
 				controller.getSettings().setClientSecret(HashUtils.hash(clientSecret, Helpers.SALT));
 			}
 			
diff --git a/src/de/deadlocker8/budgetmaster/ui/SplashScreenController.java b/src/de/deadlocker8/budgetmaster/ui/controller/SplashScreenController.java
similarity index 94%
rename from src/de/deadlocker8/budgetmaster/ui/SplashScreenController.java
rename to src/de/deadlocker8/budgetmaster/ui/controller/SplashScreenController.java
index b40112b622bda27cd9d1f4036195fea38b488d21..5c2efed54bb7f3915b404fff847525345184aa2d 100644
--- a/src/de/deadlocker8/budgetmaster/ui/SplashScreenController.java
+++ b/src/de/deadlocker8/budgetmaster/ui/controller/SplashScreenController.java
@@ -1,4 +1,4 @@
-package de.deadlocker8.budgetmaster.ui;
+package de.deadlocker8.budgetmaster.ui.controller;
 
 import java.io.IOException;
 import java.util.ResourceBundle;
@@ -6,7 +6,6 @@ import java.util.ResourceBundle;
 import de.deadlocker8.budgetmaster.logic.Settings;
 import de.deadlocker8.budgetmaster.logic.utils.FileHelper;
 import de.deadlocker8.budgetmaster.logic.utils.Helpers;
-import fontAwesome.FontIcon;
 import fontAwesome.FontIconType;
 import javafx.application.Platform;
 import javafx.fxml.FXML;
@@ -21,6 +20,7 @@ import javafx.scene.control.PasswordField;
 import javafx.scene.image.Image;
 import javafx.scene.image.ImageView;
 import javafx.scene.input.KeyCode;
+import javafx.scene.paint.Color;
 import javafx.stage.Stage;
 import logger.Logger;
 import tools.AlertGenerator;
@@ -48,11 +48,8 @@ public class SplashScreenController
 		imageViewLogo.setImage(icon);
 		
 		labelVersion.setText("v" + bundle.getString("version.name"));
-		
-		FontIcon iconLogin = new FontIcon(FontIconType.SIGN_IN);
-		iconLogin.setSize(18);
-		iconLogin.setStyle("-fx-text-fill: white");
-		buttonLogin.setGraphic(iconLogin);
+	
+		buttonLogin.setGraphic(Helpers.getFontIcon(FontIconType.SIGN_IN, 18, Color.WHITE));
 		buttonLogin.setStyle("-fx-background-color: #2E79B9; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 16;");
 		buttonLogin.setPadding(new Insets(3, 7, 3, 7));		
 		
@@ -134,7 +131,7 @@ public class SplashScreenController
 	{
 		try
 		{
-			FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/GUI.fxml"));
+			FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/fxml/GUI.fxml"));
 			Parent root = (Parent)fxmlLoader.load();
 			Stage newStage = new Stage();
 			newStage.setTitle(bundle.getString("app.name"));
diff --git a/src/de/deadlocker8/budgetmaster/ui/CategoryTab.fxml b/src/de/deadlocker8/budgetmaster/ui/fxml/CategoryTab.fxml
similarity index 97%
rename from src/de/deadlocker8/budgetmaster/ui/CategoryTab.fxml
rename to src/de/deadlocker8/budgetmaster/ui/fxml/CategoryTab.fxml
index 39c008340c0e91fe20ecb768f1cc8bb0dcda7030..308c45777eb5722cf94af3f6ade82e2659f4680b 100644
--- a/src/de/deadlocker8/budgetmaster/ui/CategoryTab.fxml
+++ b/src/de/deadlocker8/budgetmaster/ui/fxml/CategoryTab.fxml
@@ -7,7 +7,7 @@
 <?import javafx.scene.layout.VBox?>
 <?import javafx.scene.text.Font?>
 
-<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.CategoryController">
+<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.controller.CategoryController">
    <children>
       <VBox alignment="TOP_CENTER" layoutY="24.0" prefHeight="562.0" prefWidth="772.0" spacing="25.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="25.0">
          <children>
diff --git a/src/de/deadlocker8/budgetmaster/ui/ChartTab.fxml b/src/de/deadlocker8/budgetmaster/ui/fxml/ChartTab.fxml
similarity index 99%
rename from src/de/deadlocker8/budgetmaster/ui/ChartTab.fxml
rename to src/de/deadlocker8/budgetmaster/ui/fxml/ChartTab.fxml
index 58380127ae9c51be53859d42d1ffbed7f25a8e1a..608f46d85e4a54e45443bb67844ed7a22d49fdbb 100644
--- a/src/de/deadlocker8/budgetmaster/ui/ChartTab.fxml
+++ b/src/de/deadlocker8/budgetmaster/ui/fxml/ChartTab.fxml
@@ -13,7 +13,7 @@
 <?import javafx.scene.layout.VBox?>
 <?import javafx.scene.text.Font?>
 
-<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.ChartController">
+<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.controller.ChartController">
    <children>
       <Accordion fx:id="accordion" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="25.0">
         <panes>
diff --git a/src/de/deadlocker8/budgetmaster/ui/ExportChartGUI.fxml b/src/de/deadlocker8/budgetmaster/ui/fxml/ExportChartGUI.fxml
similarity index 98%
rename from src/de/deadlocker8/budgetmaster/ui/ExportChartGUI.fxml
rename to src/de/deadlocker8/budgetmaster/ui/fxml/ExportChartGUI.fxml
index 2cf04b071b923d51bd9d3fc276ab5f52da693016..1b0ad1292b4d9f91aeb8a40e0eccbdec22969c48 100644
--- a/src/de/deadlocker8/budgetmaster/ui/ExportChartGUI.fxml
+++ b/src/de/deadlocker8/budgetmaster/ui/fxml/ExportChartGUI.fxml
@@ -9,7 +9,7 @@
 <?import javafx.scene.layout.VBox?>
 <?import javafx.scene.text.Font?>
 
-<AnchorPane fx:id="anchorPaneMain" prefHeight="200.0" prefWidth="450.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.ExportChartController">
+<AnchorPane fx:id="anchorPaneMain" prefHeight="200.0" prefWidth="450.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.controller.ExportChartController">
    <children>
       <VBox AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0">
          <children>
diff --git a/src/de/deadlocker8/budgetmaster/ui/FilterGUI.fxml b/src/de/deadlocker8/budgetmaster/ui/fxml/FilterGUI.fxml
similarity index 98%
rename from src/de/deadlocker8/budgetmaster/ui/FilterGUI.fxml
rename to src/de/deadlocker8/budgetmaster/ui/fxml/FilterGUI.fxml
index 643fd670ecbe7c76ad87e023a0608e9037bac18c..9d3e61437ca8cab1118bafc0503d88a40571e52c 100644
--- a/src/de/deadlocker8/budgetmaster/ui/FilterGUI.fxml
+++ b/src/de/deadlocker8/budgetmaster/ui/fxml/FilterGUI.fxml
@@ -12,7 +12,7 @@
 <?import javafx.scene.layout.VBox?>
 <?import javafx.scene.text.Font?>
 
-<AnchorPane prefHeight="600.0" prefWidth="450.0" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.FilterController">
+<AnchorPane prefHeight="600.0" prefWidth="450.0" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.controller.FilterController">
    <children>
       <VBox prefHeight="273.0" prefWidth="465.0" spacing="25.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0">
          <children>
diff --git a/src/de/deadlocker8/budgetmaster/ui/GUI.fxml b/src/de/deadlocker8/budgetmaster/ui/fxml/GUI.fxml
similarity index 99%
rename from src/de/deadlocker8/budgetmaster/ui/GUI.fxml
rename to src/de/deadlocker8/budgetmaster/ui/fxml/GUI.fxml
index 549a7e45e216a6d0604a3c12e9cd1a3263dfaf82..f6f3815ef6f5ba9dd9ca2d798f357e9ba84f3767 100644
--- a/src/de/deadlocker8/budgetmaster/ui/GUI.fxml
+++ b/src/de/deadlocker8/budgetmaster/ui/fxml/GUI.fxml
@@ -12,7 +12,7 @@
 <?import javafx.scene.layout.VBox?>
 <?import javafx.scene.text.Font?>
 
-<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.Controller">
+<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.controller.Controller">
    <children>
       <VBox alignment="TOP_CENTER" layoutY="24.0" prefHeight="562.0" prefWidth="772.0" spacing="15.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="14.0">
          <children>
diff --git a/src/de/deadlocker8/budgetmaster/ui/HomeTab.fxml b/src/de/deadlocker8/budgetmaster/ui/fxml/HomeTab.fxml
similarity index 98%
rename from src/de/deadlocker8/budgetmaster/ui/HomeTab.fxml
rename to src/de/deadlocker8/budgetmaster/ui/fxml/HomeTab.fxml
index 0144989045ba447bb06c251528de84497b54b7b2..77674f01c5c45b86e088df7c7820cd59511f538d 100644
--- a/src/de/deadlocker8/budgetmaster/ui/HomeTab.fxml
+++ b/src/de/deadlocker8/budgetmaster/ui/fxml/HomeTab.fxml
@@ -8,7 +8,7 @@
 <?import javafx.scene.layout.VBox?>
 <?import javafx.scene.text.Font?>
 
-<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.HomeController">
+<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.controller.HomeController">
    <children>
       <VBox alignment="TOP_CENTER" layoutY="24.0" prefHeight="562.0" prefWidth="772.0" spacing="15.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0">
          <children>
diff --git a/src/de/deadlocker8/budgetmaster/ui/Modal.fxml b/src/de/deadlocker8/budgetmaster/ui/fxml/Modal.fxml
similarity index 96%
rename from src/de/deadlocker8/budgetmaster/ui/Modal.fxml
rename to src/de/deadlocker8/budgetmaster/ui/fxml/Modal.fxml
index 33759ff9bb89cf861f75e900f957f48ee27a25fd..846a76e2b3ba52076c54a92a9d95eab81bf105fb 100644
--- a/src/de/deadlocker8/budgetmaster/ui/Modal.fxml
+++ b/src/de/deadlocker8/budgetmaster/ui/fxml/Modal.fxml
@@ -6,7 +6,7 @@
 <?import javafx.scene.layout.HBox?>
 <?import javafx.scene.text.Font?>
 
-<AnchorPane fx:id="anchorPaneMain" prefHeight="100.0" prefWidth="375.0" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.ModalController">
+<AnchorPane fx:id="anchorPaneMain" prefHeight="100.0" prefWidth="375.0" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.controller.ModalController">
    <children>
       <HBox alignment="CENTER_LEFT" spacing="10.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0">
          <children>
diff --git a/src/de/deadlocker8/budgetmaster/ui/NewCategoryGUI.fxml b/src/de/deadlocker8/budgetmaster/ui/fxml/NewCategoryGUI.fxml
similarity index 97%
rename from src/de/deadlocker8/budgetmaster/ui/NewCategoryGUI.fxml
rename to src/de/deadlocker8/budgetmaster/ui/fxml/NewCategoryGUI.fxml
index 203d4acb88da4931ec70ca307d61d331d061861c..0bb2bb676e02a1c6ef47e336022f7c151bb256f7 100644
--- a/src/de/deadlocker8/budgetmaster/ui/NewCategoryGUI.fxml
+++ b/src/de/deadlocker8/budgetmaster/ui/fxml/NewCategoryGUI.fxml
@@ -9,7 +9,7 @@
 <?import javafx.scene.layout.VBox?>
 <?import javafx.scene.text.Font?>
 
-<AnchorPane prefHeight="180.0" prefWidth="400.0" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.NewCategoryController">
+<AnchorPane prefHeight="180.0" prefWidth="400.0" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.controller.NewCategoryController">
    <children>
       <VBox prefHeight="273.0" prefWidth="465.0" spacing="25.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0">
          <children>
diff --git a/src/de/deadlocker8/budgetmaster/ui/NewPaymentGUI.fxml b/src/de/deadlocker8/budgetmaster/ui/fxml/NewPaymentGUI.fxml
similarity index 99%
rename from src/de/deadlocker8/budgetmaster/ui/NewPaymentGUI.fxml
rename to src/de/deadlocker8/budgetmaster/ui/fxml/NewPaymentGUI.fxml
index 31366e41dd3bded01be30e3b15e6ab06cdce95be..59b546bdf8234e1044cbada23c69a4be65192a08 100644
--- a/src/de/deadlocker8/budgetmaster/ui/NewPaymentGUI.fxml
+++ b/src/de/deadlocker8/budgetmaster/ui/fxml/NewPaymentGUI.fxml
@@ -16,7 +16,7 @@
 <?import javafx.scene.layout.VBox?>
 <?import javafx.scene.text.Font?>
 
-<AnchorPane prefHeight="600.0" prefWidth="450.0" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.NewPaymentController">
+<AnchorPane prefHeight="600.0" prefWidth="450.0" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.controller.NewPaymentController">
    <children>
       <VBox prefHeight="273.0" prefWidth="465.0" spacing="20.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0">
          <children>
diff --git a/src/de/deadlocker8/budgetmaster/ui/PaymentTab.fxml b/src/de/deadlocker8/budgetmaster/ui/fxml/PaymentTab.fxml
similarity index 99%
rename from src/de/deadlocker8/budgetmaster/ui/PaymentTab.fxml
rename to src/de/deadlocker8/budgetmaster/ui/fxml/PaymentTab.fxml
index 6222f5e8f8219b798a02de61cdcab31573d41e66..ede86bb05d9a96997b1a479b5fc72f38b06a12e0 100644
--- a/src/de/deadlocker8/budgetmaster/ui/PaymentTab.fxml
+++ b/src/de/deadlocker8/budgetmaster/ui/fxml/PaymentTab.fxml
@@ -10,7 +10,7 @@
 <?import javafx.scene.layout.VBox?>
 <?import javafx.scene.text.Font?>
 
-<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.PaymentController">
+<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.controller.PaymentController">
    <children>
       <VBox alignment="TOP_CENTER" layoutY="24.0" prefHeight="562.0" prefWidth="772.0" spacing="25.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="25.0">
          <children>
diff --git a/src/de/deadlocker8/budgetmaster/ui/ReportTab.fxml b/src/de/deadlocker8/budgetmaster/ui/fxml/ReportTab.fxml
similarity index 99%
rename from src/de/deadlocker8/budgetmaster/ui/ReportTab.fxml
rename to src/de/deadlocker8/budgetmaster/ui/fxml/ReportTab.fxml
index 7896f78520dc1381e8997090d5014bc5983678d2..ab291d65658415d00f20767d52e55fdb8d82a51b 100644
--- a/src/de/deadlocker8/budgetmaster/ui/ReportTab.fxml
+++ b/src/de/deadlocker8/budgetmaster/ui/fxml/ReportTab.fxml
@@ -10,7 +10,7 @@
 <?import javafx.scene.layout.VBox?>
 <?import javafx.scene.text.Font?>
 
-<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.ReportController">
+<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.controller.ReportController">
    <children>
       <VBox alignment="TOP_CENTER" layoutY="24.0" prefHeight="562.0" prefWidth="772.0" spacing="20.0" AnchorPane.bottomAnchor="35.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="25.0">
          <children>
diff --git a/src/de/deadlocker8/budgetmaster/ui/SettingsTab.fxml b/src/de/deadlocker8/budgetmaster/ui/fxml/SettingsTab.fxml
similarity index 99%
rename from src/de/deadlocker8/budgetmaster/ui/SettingsTab.fxml
rename to src/de/deadlocker8/budgetmaster/ui/fxml/SettingsTab.fxml
index ef7cf9648179692799bfd65211d01778a9f10261..29b7eeb2ed092f59d70fcf8ca7c0908ca3192bf7 100644
--- a/src/de/deadlocker8/budgetmaster/ui/SettingsTab.fxml
+++ b/src/de/deadlocker8/budgetmaster/ui/fxml/SettingsTab.fxml
@@ -12,7 +12,7 @@
 <?import javafx.scene.layout.VBox?>
 <?import javafx.scene.text.Font?>
 
-<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.SettingsController">
+<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.controller.SettingsController">
    <children>
       <VBox alignment="TOP_CENTER" layoutY="24.0" prefHeight="562.0" prefWidth="772.0" spacing="25.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="25.0">
          <children>
diff --git a/src/de/deadlocker8/budgetmaster/ui/SplashScreen.fxml b/src/de/deadlocker8/budgetmaster/ui/fxml/SplashScreen.fxml
similarity index 98%
rename from src/de/deadlocker8/budgetmaster/ui/SplashScreen.fxml
rename to src/de/deadlocker8/budgetmaster/ui/fxml/SplashScreen.fxml
index a7d5c94b8d8d206844e2d7810b329ce757a90aa7..a028fad4e6d8894c5b51a38db79102ceed5b2f5d 100644
--- a/src/de/deadlocker8/budgetmaster/ui/SplashScreen.fxml
+++ b/src/de/deadlocker8/budgetmaster/ui/fxml/SplashScreen.fxml
@@ -10,7 +10,7 @@
 <?import javafx.scene.layout.VBox?>
 <?import javafx.scene.text.Font?>
 
-<AnchorPane fx:id="anchorPaneMain" prefHeight="230.0" prefWidth="400.0" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.SplashScreenController">
+<AnchorPane fx:id="anchorPaneMain" prefHeight="230.0" prefWidth="400.0" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmaster.ui.controller.SplashScreenController">
    <children>
       <VBox layoutX="14.0" layoutY="14.0" spacing="10.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0">
          <children>