]> git.ktnx.net Git - mobile-ledger.git/blobdiff - app/src/main/java/net/ktnx/mobileledger/ui/CurrencySelectorModel.java
make transaction header row always have Id of 0
[mobile-ledger.git] / app / src / main / java / net / ktnx / mobileledger / ui / CurrencySelectorModel.java
index a2bc9ca4924526bfd20527cd8b8591b4680acb16..4b346cdf7759d16ceb4b7e3bea18f3cd51ab8d2e 100644 (file)
@@ -24,13 +24,15 @@ import androidx.lifecycle.ViewModel;
 
 import net.ktnx.mobileledger.model.Currency;
 
+import java.util.ArrayList;
 import java.util.List;
 
 public class CurrencySelectorModel extends ViewModel {
     public final MutableLiveData<List<Currency>> currencies;
     private final MutableLiveData<Boolean> positionAndPaddingVisible = new MutableLiveData<>(true);
+    private OnCurrencySelectedListener selectionListener;
     public CurrencySelectorModel() {
-        this.currencies = new MutableLiveData<>();
+        this.currencies = new MutableLiveData<>(new ArrayList<>());
     }
     public void showPositionAndPadding() {
         positionAndPaddingVisible.postValue(true);
@@ -38,7 +40,18 @@ public class CurrencySelectorModel extends ViewModel {
     public void hidePositionAndPadding() {
         positionAndPaddingVisible.postValue(false);
     }
-    public void observePositionAndPaddingVisible(LifecycleOwner activity, Observer<Boolean> observer) {
+    public void observePositionAndPaddingVisible(LifecycleOwner activity,
+                                                 Observer<Boolean> observer) {
         positionAndPaddingVisible.observe(activity, observer);
     }
+    void setOnCurrencySelectedListener(OnCurrencySelectedListener listener) {
+        selectionListener = listener;
+    }
+    void resetOnCurrencySelectedListener() {
+        selectionListener = null;
+    }
+    void triggerOnCurrencySelectedListener(Currency c) {
+        if (selectionListener != null)
+            selectionListener.onCurrencySelected(c);
+    }
 }