From b3002fa924d98b9b4901b306316faeb31f2dc1f4 Mon Sep 17 00:00:00 2001
From: Harry Linrui XU <xulr0820@hotmail.com>
Date: Fri, 24 Mar 2023 14:47:56 +0100
Subject: [PATCH] "Made progressbar dynamic in accordance to spending. Added
 balance field. Title of month changes depending on month"

---
 .../demo/controller/MainMenuController.java   | 27 ++++++++++++++-----
 src/main/resources/view/MainMenu.fxml         |  6 ++---
 2 files changed, 24 insertions(+), 9 deletions(-)

diff --git a/src/main/java/no/ntnu/idatt1002/demo/controller/MainMenuController.java b/src/main/java/no/ntnu/idatt1002/demo/controller/MainMenuController.java
index ae9a4db3..89656de8 100644
--- a/src/main/java/no/ntnu/idatt1002/demo/controller/MainMenuController.java
+++ b/src/main/java/no/ntnu/idatt1002/demo/controller/MainMenuController.java
@@ -1,5 +1,6 @@
 package no.ntnu.idatt1002.demo.controller;
 import java.io.IOException;
+import java.time.LocalDate;
 import javafx.event.ActionEvent;
 import javafx.fxml.FXML;
 import javafx.fxml.FXMLLoader;
@@ -11,8 +12,10 @@ import javafx.scene.control.DatePicker;
 import javafx.scene.control.Label;
 import javafx.scene.control.ProgressBar;
 import javafx.scene.image.ImageView;
+import javafx.scene.text.Text;
 import javafx.stage.Stage;
 import no.ntnu.idatt1002.demo.data.Economics.ExpenseRegister;
+import no.ntnu.idatt1002.demo.data.Economics.FileHandling;
 import no.ntnu.idatt1002.demo.data.Economics.IncomeRegister;
 
 public class MainMenuController {
@@ -38,16 +41,28 @@ public class MainMenuController {
     @FXML
     private Label today;
 
-    ExpenseRegister expenseRegister;
+    @FXML
+    private Text budgetMonth;
+
+    @FXML
+    private Label balance;
 
-    IncomeRegister incomeRegister;
     @FXML
-    public void initialize() {
-        //expenseRegister = loadData();
-        //incomeRegister = loadData();
-        //progressbar.setProgress(expenseRegister.getTotalSum()/incomeRegister.getTotalSum());
+    public void initialize() throws IOException {
+        IncomeController incomeController = new IncomeController();
+        IncomeRegister incomeRegister = incomeController.loadIncomeDataFromFile("Income");
+
+        ExpensesController expensesController = new ExpensesController();
+        ExpenseRegister expenseRegister = expensesController.loadExpenseDataFromFile("Expense");
+
+        System.out.println(expenseRegister.getTotalSum() + ",  " + incomeRegister.getTotalSum());
+
+        progressbar.setProgress(expenseRegister.getTotalSum()/incomeRegister.getTotalSum());
         progressMarker.setTranslateX(-275 + progressbar.getProgress());
         today.setTranslateX(-275 + progressbar.getProgress());
+
+        budgetMonth.setText("BUDGET " + (LocalDate.EPOCH.getMonth()));
+        balance.setText("Balance: " + (incomeRegister.getTotalSum() - expenseRegister.getTotalSum()));
     }
 
     @FXML
diff --git a/src/main/resources/view/MainMenu.fxml b/src/main/resources/view/MainMenu.fxml
index 69be7964..86ef6d3a 100644
--- a/src/main/resources/view/MainMenu.fxml
+++ b/src/main/resources/view/MainMenu.fxml
@@ -48,9 +48,9 @@
                         <DatePicker fx:id="date" />
                         <HBox alignment="BOTTOM_CENTER" prefHeight="28.0" prefWidth="574.0">
                            <children>
-                              <Label text="5000kr left" textAlignment="CENTER">
+                              <Label fx:id="balance" text="Balance:" textAlignment="CENTER">
                                  <font>
-                                    <Font name="System Bold" size="12.0" />
+                                    <Font name="System Bold" size="24.0" />
                                  </font></Label>
                            </children>
                         </HBox>
@@ -141,7 +141,7 @@
                      </HBox.margin>
                   </Button>
                   <Region prefHeight="70.0" prefWidth="103.0" />
-                  <Text strokeType="OUTSIDE" strokeWidth="0.0" text="BUDGET FEBRUARY" textAlignment="CENTER">
+                  <Text fx:id="budgetMonth" strokeType="OUTSIDE" strokeWidth="0.0" text="BUDGET MARCH" textAlignment="CENTER">
                      <HBox.margin>
                         <Insets />
                      </HBox.margin>
-- 
GitLab