From 9321f8af38505d024ea94b4b3e16cbc5a24ec1c8 Mon Sep 17 00:00:00 2001
From: Peter <pt033@hdm-stuttgart.de>
Date: Fri, 29 Dec 2023 21:50:41 +0100
Subject: [PATCH] update(statistics): add pie chart styling #14

---
 .../Controller/MenuBorderPaneController.java  |  1 -
 .../Controller/StatisticsController.java      |  3 +++
 .../hdm_stuttgart/battlearena/Main/Main.java  |  3 ++-
 src/main/resources/fxml/Statistics.fxml       | 15 +++++++----
 src/main/resources/styles/style.css           | 27 ++++++++++++++++++-
 5 files changed, 41 insertions(+), 8 deletions(-)

diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Controller/MenuBorderPaneController.java b/src/main/java/de/hdm_stuttgart/battlearena/Controller/MenuBorderPaneController.java
index d0a9572a..49dc199b 100644
--- a/src/main/java/de/hdm_stuttgart/battlearena/Controller/MenuBorderPaneController.java
+++ b/src/main/java/de/hdm_stuttgart/battlearena/Controller/MenuBorderPaneController.java
@@ -37,7 +37,6 @@ public class MenuBorderPaneController implements Initializable {
     List<String> shuffledVideos = Arrays.asList(videoFiles);
 
     Rectangle2D screen = Screen.getPrimary().getVisualBounds();
-    Screen windows = Screen.getPrimary();
     @Override
     public void initialize(URL url, ResourceBundle resourceBundle) {
         center.getChildren().add(sceneLoader.loadScene("MainMenu"));
diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Controller/StatisticsController.java b/src/main/java/de/hdm_stuttgart/battlearena/Controller/StatisticsController.java
index e50fbec7..e5a6196a 100644
--- a/src/main/java/de/hdm_stuttgart/battlearena/Controller/StatisticsController.java
+++ b/src/main/java/de/hdm_stuttgart/battlearena/Controller/StatisticsController.java
@@ -27,9 +27,12 @@ public class StatisticsController implements Initializable {
         parent.getChildren().add(sceneLoader.loadScene("MainMenu"));
     }
 
+    @Override
     public void initialize(URL url, ResourceBundle resourceBundle) {
         iniPieChartkd();
         iniPieChartwl();
+        kd.setLegendVisible(false);
+        wl.setLegendVisible(false);
     }
 
     public void iniPieChartkd() {
diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Main/Main.java b/src/main/java/de/hdm_stuttgart/battlearena/Main/Main.java
index 6e767ce6..1925554e 100644
--- a/src/main/java/de/hdm_stuttgart/battlearena/Main/Main.java
+++ b/src/main/java/de/hdm_stuttgart/battlearena/Main/Main.java
@@ -33,7 +33,8 @@ public class Main extends Application {
 //        loading font in start() because CSS can't handle whitespace in folder names
         Font.loadFont(getClass().getResourceAsStream("/fonts/StarshipShadow.ttf"), 50);
 
-        Parent root =  FXMLLoader.load(Objects.requireNonNull(getClass().getResource("/fxml/Intro.fxml")));
+//        TODO: revert back to intro scene
+        Parent root =  FXMLLoader.load(Objects.requireNonNull(getClass().getResource("/fxml/MenuBorderPane.fxml")));
 
         Scene scene = new Scene(root);
 
diff --git a/src/main/resources/fxml/Statistics.fxml b/src/main/resources/fxml/Statistics.fxml
index cb429d7b..6c98b4e5 100644
--- a/src/main/resources/fxml/Statistics.fxml
+++ b/src/main/resources/fxml/Statistics.fxml
@@ -7,10 +7,9 @@
 <?import javafx.scene.layout.VBox?>
 <?import javafx.scene.text.Text?>
 
-
 <VBox fx:id="parent" alignment="CENTER" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" spacing="50.0" xmlns="http://javafx.com/javafx/21" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.hdm_stuttgart.battlearena.Controller.StatisticsController">
    <children>
-      <HBox alignment="CENTER" prefHeight="100.0" prefWidth="200.0" spacing="30.0">
+      <HBox alignment="CENTER" prefHeight="100.0" prefWidth="200.0" spacing="30.0" VBox.vgrow="ALWAYS">
          <children>
             <VBox alignment="CENTER_RIGHT" prefHeight="200.0" prefWidth="100.0" spacing="10.0" HBox.hgrow="ALWAYS">
                <children>
@@ -35,10 +34,16 @@
                   <Insets />
                </HBox.margin>
             </VBox>
-            <VBox prefHeight="200.0" prefWidth="100.0">
+            <VBox prefHeight="200.0" prefWidth="100.0" HBox.hgrow="ALWAYS">
                <children>
-                  <PieChart fx:id="kd" />
-                  <PieChart fx:id="wl" />
+                  <PieChart fx:id="kd" minHeight="-Infinity" minWidth="-Infinity" VBox.vgrow="ALWAYS">
+                     <VBox.margin>
+                        <Insets bottom="-200.0" />
+                     </VBox.margin></PieChart>
+                  <PieChart fx:id="wl" minHeight="-Infinity" minWidth="-Infinity" VBox.vgrow="ALWAYS">
+                     <VBox.margin>
+                        <Insets top="-40.0" />
+                     </VBox.margin></PieChart>
                </children>
             </VBox>
          </children>
diff --git a/src/main/resources/styles/style.css b/src/main/resources/styles/style.css
index b66dc398..5ba6c2d2 100644
--- a/src/main/resources/styles/style.css
+++ b/src/main/resources/styles/style.css
@@ -155,4 +155,29 @@
 
 .table-row-cell:selected {
     -fx-background-color: rgba(255, 255, 255, 0.3);
-}
\ No newline at end of file
+}
+
+.chart {
+    -fx-pref-width: 600;
+    -fx-pref-height: 620;
+    -fx-min-width: 600;
+    -fx-min-height: 620;
+    -fx-max-width: 916;
+    -fx-max-height: 620;
+}
+
+.chart-pie {
+    -fx-border-color: black;
+}
+
+.chart-pie-label {
+    -fx-font-size: 0.7em;
+}
+
+.chart-legend {
+    -fx-background-color: rgba(60, 32, 20, 0.2);
+}
+
+.default-color0.chart-pie {-fx-pie-color: transparent;}
+.default-color1.chart-pie {-fx-pie-color: transparent;}
+.default-color2.chart-pie {-fx-pie-color: transparent;}
-- 
GitLab