]> git.ktnx.net Git - mobile-ledger.git/blobdiff - app/src/main/java/net/ktnx/mobileledger/ui/patterns/PatternDetailsAdapter.java
ui/machinery support for negated pattern amounts
[mobile-ledger.git] / app / src / main / java / net / ktnx / mobileledger / ui / patterns / PatternDetailsAdapter.java
index 1484eab7925a7afd755dc664b65a771b09b4c338..c7f42ec178dc3026afc9c79f6284a3366c577514 100644 (file)
@@ -502,6 +502,9 @@ class PatternDetailsAdapter extends RecyclerView.Adapter<PatternDetailsAdapter.V
 
                 b.patternDetailsAccountAmount.setText(Data.formatNumber(amt));
             });
+
+            b.negateAmountSwitch.setOnCheckedChangeListener(
+                    (buttonView, isChecked) -> getItem().setNegateAmount(isChecked));
         }
         @Override
         void bind(PatternDetailsItem item) {
@@ -539,12 +542,15 @@ class PatternDetailsAdapter extends RecyclerView.Adapter<PatternDetailsAdapter.V
                 Float amt = accRow.getAmount();
                 b.patternDetailsAccountAmount.setText((amt == null) ? null : String.format(
                         Data.locale.getValue(), "%,4.2f", (accRow.getAmount())));
+                b.negateAmountSwitch.setVisibility(View.GONE);
             }
             else {
                 b.patternDetailsAccountAmountSource.setText(
                         String.format(Locale.US, "Group %d (%s)", accRow.getAmountMatchGroup(),
                                 getMatchGroupText(accRow.getAmountMatchGroup())));
                 b.patternDetailsAccountAmountLayout.setVisibility(View.GONE);
+                b.negateAmountSwitch.setVisibility(View.VISIBLE);
+                b.negateAmountSwitch.setChecked(accRow.isNegateAmount());
             }
 
             b.patternAccountNameSourceLabel.setOnClickListener(