]> git.ktnx.net Git - mobile-ledger.git/blobdiff - app/src/main/java/net/ktnx/mobileledger/ui/patterns/PatternListFragment.java
rework pattern management machinery
[mobile-ledger.git] / app / src / main / java / net / ktnx / mobileledger / ui / patterns / PatternListFragment.java
index ad3564565dbee4fab3049196e09299e9aeedee3f..226f846f253929870a47278b177334599528eb67 100644 (file)
@@ -28,14 +28,20 @@ import androidx.fragment.app.Fragment;
 import androidx.lifecycle.Lifecycle;
 import androidx.lifecycle.LifecycleEventObserver;
 import androidx.lifecycle.LifecycleOwner;
+import androidx.lifecycle.LiveData;
 import androidx.recyclerview.widget.LinearLayoutManager;
 import androidx.recyclerview.widget.RecyclerView;
 
-import net.ktnx.mobileledger.R;
+import net.ktnx.mobileledger.dao.PatternHeaderDAO;
 import net.ktnx.mobileledger.databinding.FragmentPatternListBinding;
+import net.ktnx.mobileledger.db.DB;
+import net.ktnx.mobileledger.db.PatternHeader;
+import net.ktnx.mobileledger.utils.Logger;
 
 import org.jetbrains.annotations.NotNull;
 
+import java.util.List;
+
 /**
  * A simple {@link Fragment} subclass.
  * Use the {@link PatternListFragment#newInstance} factory method to
@@ -73,16 +79,16 @@ public class PatternListFragment extends Fragment {
     @Override
     public View onCreateView(@NotNull LayoutInflater inflater, ViewGroup container,
                              Bundle savedInstanceState) {
+        Logger.debug("flow", "PatternListFragment.onCreateView()");
         b = FragmentPatternListBinding.inflate(inflater);
 
-        b.toolbarLayout.setTitle(getString(R.string.title_activity_patterns));
-
-        b.fab.setOnClickListener(this::fabClicked);
-
         PatternsRecyclerViewAdapter modelAdapter = new PatternsRecyclerViewAdapter();
 
         b.patternList.setAdapter(modelAdapter);
-        PatternsModel.retrievePatterns(modelAdapter);
+        PatternHeaderDAO pDao = DB.get()
+                                  .getPatternDAO();
+        LiveData<List<PatternHeader>> patterns = pDao.getPatterns();
+        patterns.observe(getViewLifecycleOwner(), list -> {modelAdapter.setPatterns(list);});
         LinearLayoutManager llm = new LinearLayoutManager(getContext());
         llm.setOrientation(RecyclerView.VERTICAL);
         b.patternList.setLayoutManager(llm);
@@ -115,7 +121,7 @@ public class PatternListFragment extends Fragment {
         if (mListener == null)
             return;
 
-        mListener.onNewPattern();
+        mListener.onEditPattern(null);
     }
     /**
      * This interface must be implemented by activities that contain this
@@ -128,8 +134,8 @@ public class PatternListFragment extends Fragment {
      * >Communicating with Other Fragments</a> for more information.
      */
     public interface OnPatternListFragmentInteractionListener {
-        void onNewPattern();
+        void onSavePattern();
 
-        void onEditPattern(int id);
+        void onEditPattern(Long id);
     }
 }
\ No newline at end of file