Skip to content
Snippets Groups Projects
Commit f793ae51 authored by Harry Linrui XU's avatar Harry Linrui XU
Browse files

Delete edit and delete buttons. Fixed edit and delete

functionalities
parent 3cdc50c1
No related branches found
No related tags found
5 merge requests!43Merging frontend-testing into master,!38"Made progressbar dynamic in accordance to spending. Added balance field....,!37Made the sub progress bars respond to changes in expense,!32Added input validation to add dialog boxes.,!31Added input validation to tableviews
...@@ -90,12 +90,6 @@ public class IncomeExpenseController implements FinanceController { ...@@ -90,12 +90,6 @@ public class IncomeExpenseController implements FinanceController {
@FXML @FXML
private MenuItem addIncome; private MenuItem addIncome;
@FXML
private Button deleteBtn;
@FXML
private Button editBtn;
@FXML @FXML
private ProgressBar budgetProgress; private ProgressBar budgetProgress;
...@@ -161,13 +155,12 @@ public class IncomeExpenseController implements FinanceController { ...@@ -161,13 +155,12 @@ public class IncomeExpenseController implements FinanceController {
expenseTableView.setItems(expenses); expenseTableView.setItems(expenses);
//Setting pie chart values to correspond with the registers //Setting pie chart values to correspond with the registers
refreshPieCharts();
incomePieChart.setLegendSide(Side.RIGHT); incomePieChart.setLegendSide(Side.RIGHT);
refreshPieCharts();
expensePieChart.setLegendSide(Side.RIGHT); expensePieChart.setLegendSide(Side.RIGHT);
expensePieChart.setLabelLineLength(10); expensePieChart.setLabelLineLength(10);
refreshPieCharts();
refreshProgress(); refreshProgress();
formatDatePicker(); formatDatePicker();
...@@ -250,30 +243,29 @@ public class IncomeExpenseController implements FinanceController { ...@@ -250,30 +243,29 @@ public class IncomeExpenseController implements FinanceController {
Income chosenIncome = incomeTableView.getSelectionModel().getSelectedItem(); Income chosenIncome = incomeTableView.getSelectionModel().getSelectedItem();
Expense chosenExpense = expenseTableView.getSelectionModel().getSelectedItem(); Expense chosenExpense = expenseTableView.getSelectionModel().getSelectedItem();
boolean isEditIncome = event.getSource() == editIncomeMenu;
boolean isDeleteIncome = event.getSource() == deleteIncomeMenu;
boolean isEditExpense = event.getSource() == editExpenseMenu;
boolean isDeleteExpense = event.getSource() == deleteExpenseMenu;
System.out.println(chosenIncome); System.out.println(chosenIncome);
System.out.println(chosenExpense); System.out.println(chosenExpense);
if (chosenIncome != null) { if (isEditIncome) {
if (event.getSource() == editBtn || event.getSource() == editIncomeMenu) { handleEditIncome(chosenIncome);
handleEditIncome(chosenIncome); } else if (isDeleteIncome) {
System.out.println(1); handleDeleteIncome(chosenIncome);
} else if (event.getSource() == deleteIncomeMenu) { } else if (isEditExpense) {
handleDeleteIncome(chosenIncome); handleEditExpense(chosenExpense);
System.out.println(2); } else if (isDeleteExpense) {
} else return; handleDeleteExpense(chosenExpense);
} else if (chosenExpense != null) {
if (event.getSource() == editBtn || event.getSource() == editExpenseMenu) {
handleEditExpense(chosenExpense);
System.out.println(3);
} else if (event.getSource() == deleteExpenseMenu) {
handleDeleteExpense(chosenExpense);
System.out.println(4);
} else return;
} else return; } else return;
//Updates the tableview and pie chart using the register //Updates the tableview and pie chart using the register
refreshTableView(); refreshTableView();
refreshPieCharts();
refreshProgress(); refreshProgress();
} }
...@@ -301,7 +293,7 @@ public class IncomeExpenseController implements FinanceController { ...@@ -301,7 +293,7 @@ public class IncomeExpenseController implements FinanceController {
this.expenses.setAll(expenseRegister.getItems()); this.expenses.setAll(expenseRegister.getItems());
//this.sum.setText(String.valueOf(incomeRegister.getTotalSum())); //this.sum.setText(String.valueOf(incomeRegister.getTotalSum()));
} }
private void refreshPieCharts() { private void refreshPieCharts() {
this.incomePieChart.setData(createIncomePieChart()); this.incomePieChart.setData(createIncomePieChart());
this.expensePieChart.setData(createExpensePieChart()); this.expensePieChart.setData(createExpensePieChart());
...@@ -406,6 +398,8 @@ public class IncomeExpenseController implements FinanceController { ...@@ -406,6 +398,8 @@ public class IncomeExpenseController implements FinanceController {
dialog.setTitle(dialogTitle); dialog.setTitle(dialogTitle);
// Show the Dialog and wait for the user to close it // Show the Dialog and wait for the user to close it
dialog.showAndWait(); dialog.showAndWait();
this.incomePieChart.setData(createIncomePieChart());
} }
@FXML @FXML
...@@ -433,6 +427,8 @@ public class IncomeExpenseController implements FinanceController { ...@@ -433,6 +427,8 @@ public class IncomeExpenseController implements FinanceController {
dialog.setTitle(dialogTitle); dialog.setTitle(dialogTitle);
// Show the Dialog and wait for the user to close it // Show the Dialog and wait for the user to close it
dialog.showAndWait(); dialog.showAndWait();
this.expensePieChart.setData(createIncomePieChart());
} }
@FXML @FXML
...@@ -441,6 +437,7 @@ public class IncomeExpenseController implements FinanceController { ...@@ -441,6 +437,7 @@ public class IncomeExpenseController implements FinanceController {
if (isConfirmed.isPresent() && isConfirmed.get() == ButtonType.OK) { if (isConfirmed.isPresent() && isConfirmed.get() == ButtonType.OK) {
incomeRegister.removeItem(chosenIncome); incomeRegister.removeItem(chosenIncome);
} }
this.incomePieChart.setData(createIncomePieChart());
} }
@FXML @FXML
...@@ -449,7 +446,7 @@ public class IncomeExpenseController implements FinanceController { ...@@ -449,7 +446,7 @@ public class IncomeExpenseController implements FinanceController {
if (isConfirmed.isPresent() && isConfirmed.get() == ButtonType.OK) { if (isConfirmed.isPresent() && isConfirmed.get() == ButtonType.OK) {
expenseRegister.removeItem(chosenExpense); expenseRegister.removeItem(chosenExpense);
} }
this.incomePieChart.setData(createIncomePieChart());
} }
/** /**
* Returns an optional, which is a popup alert box, asking for confirmation for deleting an * Returns an optional, which is a popup alert box, asking for confirmation for deleting an
......
...@@ -75,7 +75,7 @@ ...@@ -75,7 +75,7 @@
</BorderPane> </BorderPane>
<BorderPane prefHeight="64.0" prefWidth="1100.0"> <BorderPane prefHeight="64.0" prefWidth="1100.0">
<left> <left>
<HBox prefHeight="100.0" prefWidth="200.0" spacing="10.0" BorderPane.alignment="CENTER"> <HBox alignment="CENTER_LEFT" prefHeight="100.0" prefWidth="200.0" spacing="10.0" BorderPane.alignment="CENTER">
<children> <children>
<MenuButton mnemonicParsing="false" prefHeight="25.0" prefWidth="50.0"> <MenuButton mnemonicParsing="false" prefHeight="25.0" prefWidth="50.0">
<items> <items>
...@@ -90,30 +90,6 @@ ...@@ -90,30 +90,6 @@
</ImageView> </ImageView>
</graphic> </graphic>
</MenuButton> </MenuButton>
<Button fx:id="editBtn" mnemonicParsing="false" onAction="#handleEditBtn" prefHeight="25.0" prefWidth="60.0">
<font>
<Font name="Lucida Console" size="12.0" />
</font>
<graphic>
<ImageView fitHeight="30.0" fitWidth="50.0" pickOnBounds="true" preserveRatio="true">
<image>
<Image url="@../Images/edit.png" />
</image>
</ImageView>
</graphic>
</Button>
<Button fx:id="deleteBtn" mnemonicParsing="false" onAction="#handleDeleteBtn" prefHeight="25.0" prefWidth="60.0">
<font>
<Font name="Lucida Console" size="12.0" />
</font>
<graphic>
<ImageView fitHeight="30.0" fitWidth="50.0" pickOnBounds="true" preserveRatio="true">
<image>
<Image url="@../Images/delete.png" />
</image>
</ImageView>
</graphic>
</Button>
</children> </children>
<BorderPane.margin> <BorderPane.margin>
<Insets left="30.0" /> <Insets left="30.0" />
...@@ -136,7 +112,7 @@ ...@@ -136,7 +112,7 @@
<center> <center>
<Pane BorderPane.alignment="CENTER"> <Pane BorderPane.alignment="CENTER">
<children> <children>
<ComboBox fx:id="filter" layoutX="134.0" layoutY="2.0" prefWidth="150.0" promptText="Show"> <ComboBox fx:id="filter" layoutX="135.0" layoutY="25.0" prefWidth="150.0" promptText="Show">
<opaqueInsets> <opaqueInsets>
<Insets /> <Insets />
</opaqueInsets> </opaqueInsets>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment