X-Git-Url: https://git.ktnx.net/?p=mobile-ledger.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fui%2Fnew_transaction%2FNewTransactionModel.java;fp=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fui%2Fnew_transaction%2FNewTransactionModel.java;h=54bb31af257307abb6a7d9aac4fc252785a96367;hp=2bcf82fb8d46ce3d54d193436087eaf4bba83ba4;hb=35de61e97302f23f3e7d18e99e97b2f78277ba18;hpb=311cb018cc9cd6be1f189e2fc674a517ff4d47fc diff --git a/app/src/main/java/net/ktnx/mobileledger/ui/new_transaction/NewTransactionModel.java b/app/src/main/java/net/ktnx/mobileledger/ui/new_transaction/NewTransactionModel.java index 2bcf82fb..54bb31af 100644 --- a/app/src/main/java/net/ktnx/mobileledger/ui/new_transaction/NewTransactionModel.java +++ b/app/src/main/java/net/ktnx/mobileledger/ui/new_transaction/NewTransactionModel.java @@ -29,6 +29,7 @@ import androidx.lifecycle.Observer; import androidx.lifecycle.ViewModel; import net.ktnx.mobileledger.BuildConfig; +import net.ktnx.mobileledger.db.Currency; import net.ktnx.mobileledger.db.DB; import net.ktnx.mobileledger.db.Profile; import net.ktnx.mobileledger.db.TemplateAccount; @@ -290,11 +291,13 @@ public class NewTransactionModel extends ViewModel { if (amount != null && acc.getNegateAmount() != null && acc.getNegateAmount()) amount = -amount; - // TODO currency TransactionAccount accRow = new TransactionAccount(accountName); accRow.setComment(accountComment); if (amount != null) accRow.setAmount(amount); + accRow.setCurrency( + extractCurrencyFromMatches(matchResult, acc.getCurrencyMatchGroup(), + acc.getCurrencyObject())); newItems.add(accRow); } @@ -302,6 +305,9 @@ public class NewTransactionModel extends ViewModel { Misc.onMainThread(() -> replaceItems(newItems)); }); } + private String extractCurrencyFromMatches(MatchResult m, Integer group, Currency literal) { + return extractStringFromMatches(m, group, (literal == null) ? "" : literal.getName()); + } private int extractIntFromMatches(MatchResult m, Integer group, Integer literal) { if (literal != null) return literal;