X-Git-Url: https://git.ktnx.net/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fui%2Factivity%2FNewTransactionModel.java;h=7fd177683f461db1be543200007585a74dec4efb;hb=356b7a4d11096b57996b0aaca854a8ef63d77670;hp=062495c1537a0a169fe7febc7015a44292b6529b;hpb=f2f0413c454a2fd63decc60fcbc0f8ac80f6159f;p=mobile-ledger.git diff --git a/app/src/main/java/net/ktnx/mobileledger/ui/activity/NewTransactionModel.java b/app/src/main/java/net/ktnx/mobileledger/ui/activity/NewTransactionModel.java index 062495c1..7fd17768 100644 --- a/app/src/main/java/net/ktnx/mobileledger/ui/activity/NewTransactionModel.java +++ b/app/src/main/java/net/ktnx/mobileledger/ui/activity/NewTransactionModel.java @@ -59,6 +59,10 @@ public class NewTransactionModel extends ViewModel { profile -> showCurrency.postValue(profile.getShowCommodityByDefault()); private final AtomicInteger busyCounter = new AtomicInteger(0); private final MutableLiveData busyFlag = new MutableLiveData<>(false); + final MutableLiveData showComments = new MutableLiveData<>(false); + void observeShowComments(LifecycleOwner owner, Observer observer) { + showComments.observe(owner, observer); + } void observeBusyFlag(@NonNull LifecycleOwner owner, Observer observer) { busyFlag.observe(owner, observer); } @@ -89,12 +93,16 @@ public class NewTransactionModel extends ViewModel { public String getDescription() { return header.description.getValue(); } + public String getComment() { + return header.comment.getValue(); + } LiveData isSubmittable() { return this.isSubmittable; } void reset() { header.date.setValue(null); header.description.setValue(null); + header.comment.setValue(null); items.clear(); items.add(new Item(this, new LedgerTransactionAccount(""))); items.add(new Item(this, new LedgerTransactionAccount(""))); @@ -207,9 +215,12 @@ public class NewTransactionModel extends ViewModel { public boolean getBusyFlag() { return busyFlag.getValue(); } + public void toggleShowComments() { + showComments.setValue(!showComments.getValue()); + } enum ItemType {generalData, transactionRow, bottomFiller} - enum FocusedElement {Account, Comment, Amount} + enum FocusedElement {Account, Comment, Amount, Description, TransactionComment} //========================================================================================== @@ -379,6 +390,23 @@ public class NewTransactionModel extends ViewModel { @NonNull androidx.lifecycle.Observer observer) { this.description.removeObserver(observer); } + public String getTransactionComment() { + ensureType(ItemType.generalData); + return comment.getValue(); + } + public void setTransactionComment(String transactionComment) { + ensureType(ItemType.generalData); + this.comment.setValue(transactionComment); + } + void observeTransactionComment(@NonNull @NotNull LifecycleOwner owner, + @NonNull Observer observer) { + ensureType(ItemType.generalData); + this.comment.observe(owner, observer); + } + void stopObservingTransactionComment(@NonNull Observer observer) { + ensureType(ItemType.generalData); + this.comment.removeObserver(observer); + } public LedgerTransactionAccount getAccount() { ensureType(ItemType.transactionRow); return account;