diff --git a/app/src/main/java/net/pokeranalytics/android/ui/adapter/components/DynamicRowInterface.kt b/app/src/main/java/net/pokeranalytics/android/ui/adapter/components/DynamicRowInterface.kt index 307c023f..4c260015 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/adapter/components/DynamicRowInterface.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/adapter/components/DynamicRowInterface.kt @@ -69,6 +69,13 @@ enum class BankrollRow(val resId: Int) : DynamicRowInterface { override var viewType: Int = 1 override var bottomSheetType: BottomSheetType = BottomSheetType.NONE + get() { + return when (this) { + NAME -> BottomSheetType.DATE + LIVE -> BottomSheetType.DATE + CURRENCY -> BottomSheetType.DATE + } + } } enum class SettingRow(val resId: Int) : DynamicRowInterface, DynamicValues { diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/DataListFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/DataListFragment.kt index 5a7997d7..353dad8b 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/DataListFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/DataListFragment.kt @@ -6,13 +6,9 @@ import android.view.View import android.view.ViewGroup import androidx.recyclerview.widget.LinearLayoutManager import io.realm.Realm -import io.realm.RealmObject import io.realm.RealmResults -import io.realm.Sort -import kotlinx.android.synthetic.main.fragment_new_session.* +import kotlinx.android.synthetic.main.fragment_data_list.* import net.pokeranalytics.android.R -import net.pokeranalytics.android.model.realm.* -import net.pokeranalytics.android.ui.activity.DataListActivity import net.pokeranalytics.android.ui.activity.EditableDataActivity import net.pokeranalytics.android.ui.adapter.components.* import net.pokeranalytics.android.util.PokerAnalyticsFragment @@ -61,6 +57,11 @@ class DataListFragment : PokerAnalyticsFragment(), DisplayableDelegate { layoutManager = viewManager adapter = dataListAdapter } + + this.addButton.setOnClickListener { + EditableDataActivity.newInstance(requireContext(), dataType = this.dataType.ordinal, primaryKey = null) + } + } diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/EditableDataFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/EditableDataFragment.kt index 986ef2a5..b28d90c6 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/EditableDataFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/EditableDataFragment.kt @@ -4,6 +4,7 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.widget.Toast import androidx.recyclerview.widget.LinearLayoutManager import io.realm.Realm import io.realm.RealmObject @@ -12,9 +13,11 @@ import kotlinx.android.synthetic.main.fragment_new_session.* import net.pokeranalytics.android.R import net.pokeranalytics.android.model.realm.* import net.pokeranalytics.android.ui.adapter.components.* +import net.pokeranalytics.android.ui.fragment.components.BottomSheetFragment +import net.pokeranalytics.android.ui.fragment.components.BottomSheetType import net.pokeranalytics.android.util.PokerAnalyticsFragment -class EditableDataFragment : PokerAnalyticsFragment(), DynamicRowCallback { +class EditableDataFragment : PokerAnalyticsFragment(), DynamicRowCallback, EditableDataDelegate { private lateinit var item: RealmObject private var dataType: SettingRow = SettingRow.BANKROLL @@ -31,7 +34,12 @@ class EditableDataFragment : PokerAnalyticsFragment(), DynamicRowCallback { } override fun onRowSelected(row: DynamicRowInterface) { - TODO("not implemented") //To change body of created functions use File | Settings | File Templates. + val data = item + BottomSheetFragment.create(fragmentManager, row, this, data) + } + + override fun setValue(value: Any, row: DynamicRowInterface) { + Toast.makeText(requireContext(), "Callback for ${row.localizedTitle(requireContext())} ($value)", Toast.LENGTH_SHORT).show() } private fun initData() {