From 4867e522e39ce82ed996375b2d9bb24999e63fff Mon Sep 17 00:00:00 2001
From: Robert Goldmann <deadlocker@gmx.de>
Date: Sun, 4 Dec 2016 19:37:11 +0100
Subject: [PATCH] implemented new ui (dark theme, better levelpack and level
 select ui)

---
 bin/de/bricked/main/_de.properties               |  7 ++++++-
 src/de/bricked/main/_de.properties               |  7 ++++++-
 src/de/bricked/ui/Controller.java                |  8 ++++++++
 src/de/bricked/ui/LevelController.java           | 15 ++++++++++-----
 src/de/bricked/ui/LevelPackSelectController.java |  6 ++++++
 src/de/bricked/ui/LevelSelectController.java     |  5 +++++
 src/de/bricked/ui/cells/LevelCell.java           |  6 +++++-
 src/de/bricked/ui/cells/LevelPackCell.java       |  6 +++++-
 8 files changed, 51 insertions(+), 9 deletions(-)

diff --git a/bin/de/bricked/main/_de.properties b/bin/de/bricked/main/_de.properties
index 04c1a6f..d644203 100644
--- a/bin/de/bricked/main/_de.properties
+++ b/bin/de/bricked/main/_de.properties
@@ -4,4 +4,9 @@ version.name=0.0.0
 version.date=19.10.16
 author=Max Wittig, Robert Goldmann (Vielen Dank an Tobias) 
 
-shortcut.debug.console=F12
\ No newline at end of file
+shortcut.debug.console=F12
+
+color.background=#333333
+color.select.levelpack=#FFDD66
+color.select.level=#77C0EA
+color.button=#CCCCCC
\ No newline at end of file
diff --git a/src/de/bricked/main/_de.properties b/src/de/bricked/main/_de.properties
index 04c1a6f..d644203 100644
--- a/src/de/bricked/main/_de.properties
+++ b/src/de/bricked/main/_de.properties
@@ -4,4 +4,9 @@ version.name=0.0.0
 version.date=19.10.16
 author=Max Wittig, Robert Goldmann (Vielen Dank an Tobias) 
 
-shortcut.debug.console=F12
\ No newline at end of file
+shortcut.debug.console=F12
+
+color.background=#333333
+color.select.levelpack=#FFDD66
+color.select.level=#77C0EA
+color.button=#CCCCCC
\ No newline at end of file
diff --git a/src/de/bricked/ui/Controller.java b/src/de/bricked/ui/Controller.java
index 75128b9..1914ba6 100644
--- a/src/de/bricked/ui/Controller.java
+++ b/src/de/bricked/ui/Controller.java
@@ -29,6 +29,7 @@ public class Controller
 	@FXML private Button buttonLevelSelect;
 	@FXML private Button buttonSettings;
 	@FXML private Button buttonAchievements;
+	@FXML private Button buttonAbout;
 
 	public Stage stage;
 	public Image icon = new Image("de/bricked/resources/icon.png");
@@ -57,6 +58,12 @@ public class Controller
 			}
 		});
 		
+		mainPane.setStyle("-fx-base: " + bundle.getString("color.background") + ";");
+		buttonLevelSelect.setStyle("-fx-base: " + bundle.getString("color.button"));
+		buttonSettings.setStyle("-fx-base: " + bundle.getString("color.button"));
+		buttonAchievements.setStyle("-fx-base: " + bundle.getString("color.button"));
+		buttonAbout.setStyle("-fx-base: " + bundle.getString("color.button"));
+		
 		Logger.log(LogLevel.INFO, "successfully started");
 	}	
 	
@@ -123,6 +130,7 @@ public class Controller
 		alert.setHeaderText(bundle.getString("app.name")); 
 		alert.setContentText("Version:     " + bundle.getString("version.name") + "\r\nDate:         " + bundle.getString("version.date") + "\r\nAuthors:     "+ bundle.getString("author") +"\r\n");
 		Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
+		alert.getDialogPane().setStyle("-fx-base: " + bundle.getString("color.background"));
 		dialogStage.getIcons().add(icon);
 		dialogStage.centerOnScreen();
 		alert.showAndWait();
diff --git a/src/de/bricked/ui/LevelController.java b/src/de/bricked/ui/LevelController.java
index c1e6bee..cbefa7f 100644
--- a/src/de/bricked/ui/LevelController.java
+++ b/src/de/bricked/ui/LevelController.java
@@ -19,7 +19,6 @@ import de.bricked.game.paddle.Paddle;
 import de.bricked.game.paddle.PaddleSize;
 import de.bricked.game.powerups.PowerUp;
 import de.bricked.game.powerups.PowerUpType;
-import de.bricked.game.sound.SoundHandler;
 import de.bricked.utils.CountdownTimer;
 import fontAwesome.FontIcon;
 import fontAwesome.FontIconType;
@@ -146,6 +145,10 @@ public class LevelController
 		game.setBoard(new Board(game));
 		game.setLevelController(this);
 		
+		anchorPane.setStyle("-fx-base: " + bundle.getString("color.background") + ";");
+		buttonBack.setStyle("-fx-base: " + bundle.getString("color.button"));
+		anchorPaneGame.setStyle("-fx-background-color: #F4F4F4");	
+		labelMultiplicator.setStyle("-fx-text-fill: #000000;");	
 		anchorPaneGame.setCursor(Cursor.NONE);
 
 		anchorPaneGame.setOnMouseClicked(new EventHandler<MouseEvent>()
@@ -294,11 +297,11 @@ public class LevelController
 		buttonBack.setText("");
 		buttonBack.setGraphic(iconBack);
 
-		vboxPowerUps.setStyle("-fx-border-color: #333333; -fx-border-width: 2px;");
+		vboxPowerUps.setStyle("-fx-border-color: #333333; -fx-border-width: 2px; -fx-background-color: #F4F4F4");
 		vboxPowerUps.setPadding(new Insets(3));
 		vboxPowerUps.setAlignment(Pos.TOP_CENTER);
 		vboxPowerUps.setSpacing(7);
-		vboxLives.setStyle("-fx-border-color: #333333; -fx-border-width: 2px;");
+		vboxLives.setStyle("-fx-border-color: #333333; -fx-border-width: 2px; -fx-background-color: #F4F4F4");
 		vboxLives.setPadding(new Insets(3));
 		vboxLives.setAlignment(Pos.BOTTOM_CENTER);
 		vboxLives.setSpacing(9);
@@ -446,6 +449,7 @@ public class LevelController
 								alert.setHeaderText("");
 								alert.setContentText("You have no lives left");
 								Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
+								alert.getDialogPane().setStyle("-fx-base: " + bundle.getString("color.background"));
 								dialogStage.getIcons().add(icon);
 								dialogStage.centerOnScreen();
 								alert.showAndWait();
@@ -808,6 +812,7 @@ public class LevelController
 						alert.setHeaderText("");
 						alert.setContentText("You finished Level \"" + game.getLevel().getName() + "\" with " + game.getTotalPoints() + " Points");
 						Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow();
+						alert.getDialogPane().setStyle("-fx-base: " + bundle.getString("color.background"));
 						dialogStage.getIcons().add(icon);
 						dialogStage.centerOnScreen();
 						alert.showAndWait();
@@ -834,7 +839,7 @@ public class LevelController
 		Label labelNotification = new Label("+" + points);
 		labelNotification.setTranslateX(xPosition);
 		labelNotification.setTranslateY(yPosition);
-		labelNotification.setStyle("-fx-font-weight: bold; -fx-font-size: " + fontSize + "; ");
+		labelNotification.setStyle("-fx-font-weight: bold; -fx-font-size: " + fontSize + "; -fx-text-fill: #000000;");
 		labelNotification.setAlignment(Pos.CENTER);	
 		
 		labelNotification.setPrefWidth(t.getLayoutBounds().getWidth() + 10);
@@ -956,7 +961,7 @@ public class LevelController
 			labelIcon.setPrefHeight(20);
 			
 			Label labelSeconds = new Label(String.valueOf(powerUp.getDurationInSeconds()));
-			labelSeconds.setStyle("-fx-font-size: 16;" + "-fx-font-weight: bold;");
+			labelSeconds.setStyle("-fx-font-size: 16;" + "-fx-font-weight: bold; -fx-text-fill: #000000;");
 			
 			hbox.getChildren().add(labelIcon);
 			hbox.getChildren().add(labelSeconds);
diff --git a/src/de/bricked/ui/LevelPackSelectController.java b/src/de/bricked/ui/LevelPackSelectController.java
index 06873f0..a40a11d 100644
--- a/src/de/bricked/ui/LevelPackSelectController.java
+++ b/src/de/bricked/ui/LevelPackSelectController.java
@@ -36,6 +36,7 @@ public class LevelPackSelectController
 	@FXML private AnchorPane mainPane;
 	@FXML private ScrollPane pane;
 	@FXML private Label labelLevelPack;
+	@FXML private Button buttonBack;
     @FXML private Button downloadLevelpackButton;
 
 	public Stage stage;
@@ -105,6 +106,11 @@ public class LevelPackSelectController
 				Platform.exit();
 			}
 		});
+		
+		mainPane.setStyle("-fx-base: " + bundle.getString("color.background") + ";");
+		
+		buttonBack.setStyle("-fx-base: " + bundle.getString("color.button"));
+		downloadLevelpackButton.setStyle("-fx-base: " + bundle.getString("color.button"));
 	}
 
 	public void reload()
diff --git a/src/de/bricked/ui/LevelSelectController.java b/src/de/bricked/ui/LevelSelectController.java
index 509915f..d6affc8 100644
--- a/src/de/bricked/ui/LevelSelectController.java
+++ b/src/de/bricked/ui/LevelSelectController.java
@@ -15,6 +15,7 @@ import javafx.fxml.FXML;
 import javafx.fxml.FXMLLoader;
 import javafx.scene.Parent;
 import javafx.scene.Scene;
+import javafx.scene.control.Button;
 import javafx.scene.control.Label;
 import javafx.scene.control.ListCell;
 import javafx.scene.control.ListView;
@@ -37,6 +38,7 @@ public class LevelSelectController
 	@FXML private AnchorPane mainPane;
 	@FXML private ScrollPane pane;
 	@FXML private Label labelLevelPack;
+	@FXML private Button buttonBack; 
 
 	public Stage stage;
 	public Image icon = new Image("de/bricked/resources/icon.png");
@@ -88,6 +90,9 @@ public class LevelSelectController
 				Platform.exit();
 			}
 		});		
+		
+		mainPane.setStyle("-fx-base: " + bundle.getString("color.background") + ";");
+		buttonBack.setStyle("-fx-base: " + bundle.getString("color.button"));
 	}
 
 	public void reload()
diff --git a/src/de/bricked/ui/cells/LevelCell.java b/src/de/bricked/ui/cells/LevelCell.java
index 8febc74..d1a3fa5 100644
--- a/src/de/bricked/ui/cells/LevelCell.java
+++ b/src/de/bricked/ui/cells/LevelCell.java
@@ -1,5 +1,8 @@
 package de.bricked.ui.cells;
 
+import java.util.Locale;
+import java.util.ResourceBundle;
+
 import de.bricked.game.levels.Level;
 import javafx.geometry.Insets;
 import javafx.geometry.Pos;
@@ -13,6 +16,7 @@ import javafx.scene.layout.Region;
 
 public class LevelCell extends ListCell<Level>
 {
+	private final ResourceBundle bundle = ResourceBundle.getBundle("de/bricked/main/", Locale.GERMANY);
 	private double maxWidth;
 
 	public LevelCell(double maxWidth)
@@ -109,7 +113,7 @@ public class LevelCell extends ListCell<Level>
 			HBox.setMargin(labelAuthor, new Insets(0, 0, 0, 10));
 
 			hbox.setAlignment(Pos.CENTER);
-			hbox.setStyle("-fx-border-color: #212121; -fx-border-width: 2px; -fx-border-radius: 10; -fx-background-radius: 10; -fx-background-color: #77C0EA;");
+			hbox.setStyle("-fx-background-color: " + bundle.getString("color.select.level") + ";");
 			hbox.setPadding(new Insets(15));
 
 			setGraphic(hbox);
diff --git a/src/de/bricked/ui/cells/LevelPackCell.java b/src/de/bricked/ui/cells/LevelPackCell.java
index 52ded4a..09bb92b 100644
--- a/src/de/bricked/ui/cells/LevelPackCell.java
+++ b/src/de/bricked/ui/cells/LevelPackCell.java
@@ -1,5 +1,8 @@
 package de.bricked.ui.cells;
 
+import java.util.Locale;
+import java.util.ResourceBundle;
+
 import de.bricked.game.levels.LevelPack;
 import javafx.geometry.Insets;
 import javafx.geometry.Pos;
@@ -11,6 +14,7 @@ import javafx.scene.layout.Region;
 
 public class LevelPackCell extends ListCell<LevelPack>
 {
+	private final ResourceBundle bundle = ResourceBundle.getBundle("de/bricked/main/", Locale.GERMANY);
 	private double maxWidth;
 	
 	public LevelPackCell(double maxWidth)
@@ -53,7 +57,7 @@ public class LevelPackCell extends ListCell<LevelPack>
 			HBox.setMargin(labelAuthor, new Insets(0, 0, 0, 10));
 		
 			hbox.setAlignment(Pos.CENTER);
-			hbox.setStyle("-fx-border-color: #212121; -fx-border-width: 2px; -fx-border-radius: 10; -fx-background-radius: 10; -fx-background-color: #CBE581;");
+			hbox.setStyle("-fx-background-color: " + bundle.getString("color.select.levelpack") + ";");
 			hbox.setPadding(new Insets(15));
 			
 			hbox.setMaxWidth(maxWidth);
-- 
GitLab