* make old items replaceable in-place. makes the new values visually blend in
*/
private void renumberItems() {
- final List<Item> list = items.getValue();
+ renumberItems(items.getValue());
+ }
+ private void renumberItems(List<Item> list) {
if (list == null) {
return;
}
List<Item> list = new ArrayList<>();
Item.resetIdDispenser();
list.add(new TransactionHead(""));
- list.add(new TransactionAccount(""));
- list.add(new TransactionAccount(""));
+ final String defaultCurrency = Objects.requireNonNull(Data.getProfile())
+ .getDefaultCommodity();
+ list.add(new TransactionAccount("", defaultCurrency));
+ list.add(new TransactionAccount("", defaultCurrency));
noteFocusChanged(0, FocusedElement.Description);
renumberItems();
isSubmittable.setValue(false);
if (Misc.emptyIsNull(transactionComment) != null)
head.setComment(transactionComment);
- Item.resetIdDispenser();
List<Item> newItems = new ArrayList<>();
newItems.add(head);
newItems.add(accRow);
}
+ renumberItems(newItems);
Misc.onMainThread(() -> replaceItems(newItems));
});
}
List<Item> newList = new ArrayList<>();
Item.resetIdDispenser();
+ Item currentHead = items.getValue()
+ .get(0);
TransactionHead head = new TransactionHead(tr.transaction.getDescription());
head.setComment(tr.transaction.getComment());
+ if (currentHead instanceof TransactionHead)
+ head.setDate(((TransactionHead) currentHead).date);
newList.add(head);