|
|
|
@ -20,6 +20,7 @@ import net.pokeranalytics.android.model.interfaces.Identifiable |
|
|
|
import net.pokeranalytics.android.model.realm.Filter |
|
|
|
import net.pokeranalytics.android.model.realm.Filter |
|
|
|
import net.pokeranalytics.android.ui.activity.EditableDataActivity |
|
|
|
import net.pokeranalytics.android.ui.activity.EditableDataActivity |
|
|
|
import net.pokeranalytics.android.ui.activity.FiltersActivity |
|
|
|
import net.pokeranalytics.android.ui.activity.FiltersActivity |
|
|
|
|
|
|
|
import net.pokeranalytics.android.ui.activity.components.RequestCode |
|
|
|
import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter |
|
|
|
import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter |
|
|
|
import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate |
|
|
|
import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate |
|
|
|
import net.pokeranalytics.android.ui.extensions.removeMargins |
|
|
|
import net.pokeranalytics.android.ui.extensions.removeMargins |
|
|
|
@ -113,11 +114,19 @@ open class DataListFragment : DeletableItemFragment(), RowRepresentableDelegate |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
this.addButton.setOnClickListener { |
|
|
|
this.addButton.setOnClickListener { |
|
|
|
EditableDataActivity.newInstance( |
|
|
|
|
|
|
|
requireContext(), |
|
|
|
EditableDataActivity.newInstanceForResult(this, |
|
|
|
dataType = this.model.dataType.ordinal, |
|
|
|
dataType = this.model.dataType, |
|
|
|
primaryKey = null |
|
|
|
primaryKey = null, |
|
|
|
) |
|
|
|
requestCode = RequestCode.NEW_DATA.value |
|
|
|
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// EditableDataActivity.newInstance( |
|
|
|
|
|
|
|
// requireContext(), |
|
|
|
|
|
|
|
// dataType = this.model.dataType, |
|
|
|
|
|
|
|
// primaryKey = null |
|
|
|
|
|
|
|
// ) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
this.addButton.isVisible = this.model.showAddButton |
|
|
|
this.addButton.isVisible = this.model.showAddButton |
|
|
|
@ -154,14 +163,37 @@ open class DataListFragment : DeletableItemFragment(), RowRepresentableDelegate |
|
|
|
super.onCreateOptionsMenu(menu, inflater) |
|
|
|
super.onCreateOptionsMenu(menu, inflater) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { |
|
|
|
|
|
|
|
super.onActivityResult(requestCode, resultCode, data) |
|
|
|
|
|
|
|
when (requestCode) { |
|
|
|
|
|
|
|
RequestCode.NEW_DATA.value -> { |
|
|
|
|
|
|
|
if (this.model.isSelectionInstance) { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
data?.getStringExtra(BundleKey.PRIMARY_KEY.value)?.let { id -> |
|
|
|
|
|
|
|
finishActivityWithSelection(id) |
|
|
|
|
|
|
|
} ?: throw PAIllegalStateException("identifier not found") |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private fun finishActivityWithSelection(identifier: String) { |
|
|
|
|
|
|
|
val intent = Intent() |
|
|
|
|
|
|
|
intent.putExtra(BundleKey.PRIMARY_KEY.value, identifier) |
|
|
|
|
|
|
|
this.activity?.setResult(Activity.RESULT_OK, intent) |
|
|
|
|
|
|
|
this.activity?.finish() |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
override fun onRowSelected(position: Int, row: RowRepresentable, tag: Int) { |
|
|
|
override fun onRowSelected(position: Int, row: RowRepresentable, tag: Int) { |
|
|
|
|
|
|
|
|
|
|
|
if (this.model.isSelectionInstance) { // Ends the activity and go back to previous screen |
|
|
|
if (this.model.isSelectionInstance) { // Ends the activity and go back to previous screen |
|
|
|
val identifier = (row as Identifiable).id |
|
|
|
val identifier = (row as Identifiable).id |
|
|
|
val intent = Intent() |
|
|
|
finishActivityWithSelection(identifier) |
|
|
|
intent.putExtra(BundleKey.PRIMARY_KEY.value, identifier) |
|
|
|
// val intent = Intent() |
|
|
|
this.activity?.setResult(Activity.RESULT_OK, intent) |
|
|
|
// intent.putExtra(BundleKey.PRIMARY_KEY.value, identifier) |
|
|
|
this.activity?.finish() |
|
|
|
// this.activity?.setResult(Activity.RESULT_OK, intent) |
|
|
|
|
|
|
|
// this.activity?.finish() |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
|
|
|
|
|
|
|
|
when (this.model.dataType) { |
|
|
|
when (this.model.dataType) { |
|
|
|
|