Added all currencies to account edit page.

This commit is contained in:
Andrew Lalis 2023-12-28 21:44:17 -05:00
parent e09e36527f
commit 633cd60572
1 changed files with 14 additions and 11 deletions

View File

@ -12,8 +12,8 @@ import javafx.scene.control.*;
import javafx.scene.layout.VBox;
import java.math.BigDecimal;
import java.util.Currency;
import java.util.Optional;
import java.util.*;
import java.util.stream.Stream;
import static com.andrewlalis.perfin.PerfinApp.router;
@ -38,15 +38,18 @@ public class EditAccountController implements RouteSelectionListener {
@FXML
public void initialize() {
final String[] currencies = {
"USD",
"EUR",
"GBP"
};
for (String currencyCode : currencies) {
accountCurrencyComboBox.getItems().add(Currency.getInstance(currencyCode));
}
accountCurrencyComboBox.getSelectionModel().select(Currency.getInstance("USD"));
List<Currency> priorityCurrencies = Stream.of("USD", "EUR", "GBP", "CAD", "AUD")
.map(Currency::getInstance)
.toList();
List<Currency> availableCurrencies = Currency.getAvailableCurrencies().stream()
.filter(c -> !priorityCurrencies.contains(c))
.sorted(Comparator.comparing(Currency::getCurrencyCode))
.toList();
List<Currency> allCurrencies = new ArrayList<>();
allCurrencies.addAll(priorityCurrencies);
allCurrencies.addAll(availableCurrencies);
accountCurrencyComboBox.getItems().addAll(allCurrencies);
accountCurrencyComboBox.getSelectionModel().selectFirst();
accountTypeChoiceBox.getItems().add(AccountType.CHECKING);
accountTypeChoiceBox.getItems().add(AccountType.SAVINGS);