|
|
|
@ -19,13 +19,18 @@ import net.pokeranalytics.android.ui.activity.components.PokerAnalyticsActivity |
|
|
|
import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter |
|
|
|
import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter |
|
|
|
import net.pokeranalytics.android.ui.adapter.RowRepresentableDataSource |
|
|
|
import net.pokeranalytics.android.ui.adapter.RowRepresentableDataSource |
|
|
|
import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate |
|
|
|
import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate |
|
|
|
|
|
|
|
import net.pokeranalytics.android.ui.fragment.components.PlacePickerManager |
|
|
|
import net.pokeranalytics.android.ui.fragment.components.PokerAnalyticsFragment |
|
|
|
import net.pokeranalytics.android.ui.fragment.components.PokerAnalyticsFragment |
|
|
|
import net.pokeranalytics.android.ui.fragment.components.bottomsheet.BottomSheetDelegate |
|
|
|
import net.pokeranalytics.android.ui.fragment.components.bottomsheet.BottomSheetDelegate |
|
|
|
import net.pokeranalytics.android.ui.fragment.components.bottomsheet.BottomSheetFragment |
|
|
|
import net.pokeranalytics.android.ui.fragment.components.bottomsheet.BottomSheetFragment |
|
|
|
import net.pokeranalytics.android.ui.view.RowRepresentable |
|
|
|
import net.pokeranalytics.android.ui.view.RowRepresentable |
|
|
|
|
|
|
|
import net.pokeranalytics.android.ui.view.rowrepresentable.LocationRow |
|
|
|
|
|
|
|
import timber.log.Timber |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class EditableDataFragment : PokerAnalyticsFragment(), RowRepresentableDelegate, BottomSheetDelegate { |
|
|
|
class EditableDataFragment : PokerAnalyticsFragment(), RowRepresentableDelegate, BottomSheetDelegate { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private lateinit var parentActivity: PokerAnalyticsActivity |
|
|
|
private lateinit var item: RealmObject |
|
|
|
private lateinit var item: RealmObject |
|
|
|
private lateinit var liveDataType: LiveData |
|
|
|
private lateinit var liveDataType: LiveData |
|
|
|
private lateinit var rowRepresentableAdapter: RowRepresentableAdapter |
|
|
|
private lateinit var rowRepresentableAdapter: RowRepresentableAdapter |
|
|
|
@ -60,12 +65,19 @@ class EditableDataFragment : PokerAnalyticsFragment(), RowRepresentableDelegate, |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
override fun onRowSelected(position: Int, row: RowRepresentable, fromAction: Boolean) { |
|
|
|
override fun onRowSelected(position: Int, row: RowRepresentable, fromAction: Boolean) { |
|
|
|
BottomSheetFragment.create( |
|
|
|
when (row) { |
|
|
|
fragmentManager, |
|
|
|
LocationRow.LOCATE_ME -> PlacePickerManager.create(parentActivity, row, this) |
|
|
|
row, |
|
|
|
else -> { |
|
|
|
this, |
|
|
|
BottomSheetFragment.create( |
|
|
|
(this.item as RowRepresentableDataSource).editDescriptors(row) |
|
|
|
fragmentManager, |
|
|
|
) |
|
|
|
row, |
|
|
|
|
|
|
|
this, |
|
|
|
|
|
|
|
(this.item as RowRepresentableDataSource).editDescriptors(row) |
|
|
|
|
|
|
|
) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
override fun clickOnAdd(row: RowRepresentable) { |
|
|
|
override fun clickOnAdd(row: RowRepresentable) { |
|
|
|
@ -76,7 +88,11 @@ class EditableDataFragment : PokerAnalyticsFragment(), RowRepresentableDelegate, |
|
|
|
this.getRealm().executeTransaction { |
|
|
|
this.getRealm().executeTransaction { |
|
|
|
(this.item as Savable).updateValue(value, row) |
|
|
|
(this.item as Savable).updateValue(value, row) |
|
|
|
} |
|
|
|
} |
|
|
|
rowRepresentableAdapter.refreshRow(row) |
|
|
|
when(row) { |
|
|
|
|
|
|
|
LocationRow.LOCATE_ME -> rowRepresentableAdapter.notifyDataSetChanged() |
|
|
|
|
|
|
|
else -> rowRepresentableAdapter.refreshRow(row) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private fun initData() { |
|
|
|
private fun initData() { |
|
|
|
@ -86,9 +102,9 @@ class EditableDataFragment : PokerAnalyticsFragment(), RowRepresentableDelegate, |
|
|
|
* Init UI |
|
|
|
* Init UI |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
private fun initUI() { |
|
|
|
private fun initUI() { |
|
|
|
val activity = activity as PokerAnalyticsActivity |
|
|
|
parentActivity = activity as PokerAnalyticsActivity |
|
|
|
activity.setSupportActionBar(toolbar) |
|
|
|
parentActivity.setSupportActionBar(toolbar) |
|
|
|
activity.supportActionBar?.setDisplayHomeAsUpEnabled(true) |
|
|
|
parentActivity.supportActionBar?.setDisplayHomeAsUpEnabled(true) |
|
|
|
setHasOptionsMenu(true) |
|
|
|
setHasOptionsMenu(true) |
|
|
|
|
|
|
|
|
|
|
|
val viewManager = LinearLayoutManager(requireContext()) |
|
|
|
val viewManager = LinearLayoutManager(requireContext()) |
|
|
|
@ -115,7 +131,7 @@ class EditableDataFragment : PokerAnalyticsFragment(), RowRepresentableDelegate, |
|
|
|
this.getRealm().executeTransaction { |
|
|
|
this.getRealm().executeTransaction { |
|
|
|
val item = it.copyToRealmOrUpdate(this.item) |
|
|
|
val item = it.copyToRealmOrUpdate(this.item) |
|
|
|
|
|
|
|
|
|
|
|
val uniqueIdentifier = if (item is Identifiable) { |
|
|
|
val uniqueIdentifier = if (item is Identifiable) { |
|
|
|
item.uniqueIdentifier() |
|
|
|
item.uniqueIdentifier() |
|
|
|
} else "" |
|
|
|
} else "" |
|
|
|
|
|
|
|
|
|
|
|
|