diff --git a/src/main/java/no/ntnu/idatt1002/demo/controller/BudgetController.java b/src/main/java/no/ntnu/idatt1002/demo/controller/BudgetController.java index f6a536851fdfdacecdaf5ad1c1877fcfb7f0a15e..9d4a90644cb3d09d7e6d4dc84501aeb3fc296f03 100644 --- a/src/main/java/no/ntnu/idatt1002/demo/controller/BudgetController.java +++ b/src/main/java/no/ntnu/idatt1002/demo/controller/BudgetController.java @@ -51,8 +51,6 @@ public class BudgetController extends FinanceController { @FXML private Button returnToMainMenuBtn; - @FXML - private Button returnBtn; @FXML private Button backBtn; @@ -303,22 +301,21 @@ public class BudgetController extends FinanceController { public void switchScene(ActionEvent event) { FXMLLoader loader = new FXMLLoader(); try { - if (event.getSource() == returnToMainMenuBtn || event.getSource() == continueBtn) { + if (event.getSource() == returnToMainMenuBtn) { //Adds unused categories to the table - System.out.println(general.getBudgetItems().size()); general.addUnusedCategories(); - System.out.println(general.getBudgetItems().size()); + loader.setLocation(getClass().getResource("/view/MainMenuNew.fxml")); //Always saving the data when switching scenes + saveDataToFile(); + } else if (event.getSource() == continueBtn) { + general.addUnusedCategories(); updateBudgetRegister(FileHandlingSelectedBudget.readSelectedBudget()); loader.setLocation(getClass().getResource("/view/MainMenuNew.fxml")); + //Always saving the data when switching scenes + saveDataToFile(); } else if (event.getSource() == backBtn) { loader.setLocation(getClass().getResource("/view/dualList.fxml")); - } else if (event.getSource() == returnBtn) { - loader.setLocation(getClass().getResource("/view/FirstMenu.fxml")); - FileHandlingBudgetArchive.deleteBudgetDirectory(FileHandlingSelectedBudget.readSelectedBudget()); - FileHandlingSelectedBudget.clearSelectedBudget(); } - saveDataToFile(); Parent root = loader.load(); Stage stage = (Stage) ((Node) event.getSource()).getScene().getWindow(); Scene scene = new Scene(root); diff --git a/src/main/java/no/ntnu/idatt1002/demo/data/Budget/BudgetRegister.java b/src/main/java/no/ntnu/idatt1002/demo/data/Budget/BudgetRegister.java index 0ab516a2c17c3745a40d3afcbeead261d12c7e22..256aa5ed9d73fb68e323c3bf4f0b2aaa752377e6 100644 --- a/src/main/java/no/ntnu/idatt1002/demo/data/Budget/BudgetRegister.java +++ b/src/main/java/no/ntnu/idatt1002/demo/data/Budget/BudgetRegister.java @@ -17,6 +17,7 @@ public class BudgetRegister { public void addBudgetName(String name) { if (name == null) throw new IllegalArgumentException("Name cannot be null"); if (name.isBlank()) throw new IllegalArgumentException("Name cannot be blank"); + //if(budgetNames.contains(name)) throw new IllegalArgumentException("Duplicate entry"); budgetNames.add(name); } diff --git a/src/main/java/no/ntnu/idatt1002/demo/data/Budget/FileHandlingBudgetArchive.java b/src/main/java/no/ntnu/idatt1002/demo/data/Budget/FileHandlingBudgetArchive.java index c39e54a5f53503d2533f17561fb5757b3dca6fdc..a5fe1c0519913f4f4ab9d5d0c2e16d76d515f3e4 100644 --- a/src/main/java/no/ntnu/idatt1002/demo/data/Budget/FileHandlingBudgetArchive.java +++ b/src/main/java/no/ntnu/idatt1002/demo/data/Budget/FileHandlingBudgetArchive.java @@ -7,17 +7,38 @@ import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; +//Disable next i dualList før income har blitt lagt til. Kanksje filter som prevneter negativ max amount (if balance < 1) +//Disable next i newBudgetbert til maxamount har blitt burkt opp +//Sette label til total balance i dualList +//HVIS CONTINUE I BUDGET PRESSES, SHOWCONFIRMATION +//VIKTIG_ BALANCE LABEL ER RØD PÅ GRØNN BAKGRUNN!!! +//Binde label to total balance i budget window (newBUdgetBert) +//Popup for edit og delete button +//La next button save dataene i to nye filer for persisterign i tilfelle "back" trykkes i newBudgetbudget +//confirmation for når returnBtn som returner til start. "Are you sure you want to go back. Changes will not be saved" +// FIKSE TRY CATCHES I ALLE METODENE!!!!!!!!!! +//tester for nye klasserr +//resize fordi tabellkolonner er for små, fontsize, font +//set all windows unresizable +//Bytte oversikt på dualList til Monthly .... + +//System.out.println(System.getProperty("user.dir") + path); = +//C:\Users\xulr0\IdeaProjects\skoleProsjekter\idatt1002\idatt1002_2023_9src/main/resources/ + +//(System.getProperty("user.dir") + "/" + path) = +//(path) = +//(src/main/resources) public class FileHandlingBudgetArchive { private static final String filePath = "src/main/resources/budgets/"; private static final String fileType = ".archive"; public static void writeBudgetRegisterToArchive(BudgetRegister budgetNames) throws IOException { try (BufferedWriter bw = new BufferedWriter(new FileWriter(filePath + "Archive" + fileType))) { - System.out.println(filePath + "Archive.txt"); + System.out.println(filePath + "Archive.archive"); bw.write(budgetNames.toString()); } catch (IOException ioe) { ioe.printStackTrace(); - throw new IOException("Could not write to file: Archive.txt", ioe); + throw new IOException("Could not write to file: Archive.archive", ioe); } }