X-Git-Url: https://git.ktnx.net/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fasync%2FTransactionAccumulator.java;h=62b962748b9bab4e3a0deda55e1fe77f2cc34bc9;hb=bae2aa9e;hp=89fa2edd19d84b6c4f7e318980e6bde1a7739903;hpb=5df10dc0b58df4d4be4e9ab34f1e0f477ca46766;p=mobile-ledger.git diff --git a/app/src/main/java/net/ktnx/mobileledger/async/TransactionAccumulator.java b/app/src/main/java/net/ktnx/mobileledger/async/TransactionAccumulator.java index 89fa2edd..62b96274 100644 --- a/app/src/main/java/net/ktnx/mobileledger/async/TransactionAccumulator.java +++ b/app/src/main/java/net/ktnx/mobileledger/async/TransactionAccumulator.java @@ -1,5 +1,5 @@ /* - * Copyright © 2020 Damyan Ivanov. + * Copyright © 2021 Damyan Ivanov. * This file is part of MoLe. * MoLe is free software: you can distribute it and/or modify it * under the term of the GNU General Public License as published by @@ -17,24 +17,33 @@ package net.ktnx.mobileledger.async; +import net.ktnx.mobileledger.model.Data; import net.ktnx.mobileledger.model.LedgerTransaction; import net.ktnx.mobileledger.model.TransactionListItem; import net.ktnx.mobileledger.ui.MainModel; import net.ktnx.mobileledger.utils.SimpleDate; import java.util.ArrayList; +import java.util.Date; public class TransactionAccumulator { private final ArrayList list = new ArrayList<>(); private final MainModel model; + private final String boldAccountName; private SimpleDate earliestDate, latestDate; private SimpleDate lastDate; private boolean done; public TransactionAccumulator(MainModel model) { this.model = model; + boldAccountName = model.getAccountFilter() + .getValue(); + list.add(new TransactionListItem()); // head item } + public void put(LedgerTransaction transaction) { + put(transaction, transaction.getDate()); + } public void put(LedgerTransaction transaction, SimpleDate date) { if (done) throw new IllegalStateException("Can't put new items after done()"); @@ -51,13 +60,14 @@ public class TransactionAccumulator { list.add(new TransactionListItem(date, showMonth)); } - list.add(new TransactionListItem(transaction)); + list.add(new TransactionListItem(transaction, boldAccountName)); lastDate = date; } public void done() { done = true; model.setDisplayedTransactions(list); + Data.lastUpdateDate.postValue(new Date()); model.setFirstTransactionDate(earliestDate); model.setLastTransactionDate(latestDate); }