Merge branch 'master' of gitlab.com:stax-river/poker-analytics

dev_raz_wip
Aurelien Hubert 7 years ago
commit c267c56bbd
  1. 9
      app/src/main/java/net/pokeranalytics/android/model/DataList.kt
  2. 28
      app/src/main/java/net/pokeranalytics/android/model/realm/Bankroll.kt
  3. 28
      app/src/main/java/net/pokeranalytics/android/model/realm/Game.kt
  4. 29
      app/src/main/java/net/pokeranalytics/android/model/realm/Location.kt
  5. 6
      app/src/main/java/net/pokeranalytics/android/model/realm/Session.kt
  6. 30
      app/src/main/java/net/pokeranalytics/android/model/realm/TournamentFeature.kt
  7. 30
      app/src/main/java/net/pokeranalytics/android/model/realm/TransactionType.kt
  8. 3
      app/src/main/java/net/pokeranalytics/android/ui/adapter/components/DataListAdapter.kt
  9. 89
      app/src/main/java/net/pokeranalytics/android/ui/adapter/components/DynamicRowInterface.kt
  10. 15
      app/src/main/java/net/pokeranalytics/android/ui/fragment/EditableDataFragment.kt
  11. 2
      app/src/main/java/net/pokeranalytics/android/ui/fragment/NewSessionFragment.kt

@ -1,11 +1,19 @@
package net.pokeranalytics.android.model package net.pokeranalytics.android.model
import android.text.InputType
import io.realm.Realm import io.realm.Realm
import io.realm.RealmObject import io.realm.RealmObject
import io.realm.RealmResults import io.realm.RealmResults
import io.realm.Sort import io.realm.Sort
import net.pokeranalytics.android.model.realm.* import net.pokeranalytics.android.model.realm.*
import net.pokeranalytics.android.ui.adapter.components.DynamicRowInterface
import net.pokeranalytics.android.ui.adapter.components.EditableDataSource
import net.pokeranalytics.android.ui.adapter.components.SimpleRow
import net.pokeranalytics.android.ui.fragment.components.BottomSheetData
import net.pokeranalytics.android.ui.fragment.components.BottomSheetDelegate
import net.pokeranalytics.android.ui.fragment.components.BottomSheetFragment
import java.util.* import java.util.*
import kotlin.collections.ArrayList
enum class DataList { enum class DataList {
BANKROLL, BANKROLL,
@ -55,7 +63,6 @@ enum class DataList {
return realm.copyFromRealm(t) return realm.copyFromRealm(t)
} }
} }
} }
/* /*

@ -1,15 +1,14 @@
package net.pokeranalytics.android.model.realm package net.pokeranalytics.android.model.realm
import android.text.InputType
import io.realm.* import io.realm.*
import io.realm.annotations.PrimaryKey import io.realm.annotations.PrimaryKey
import net.pokeranalytics.android.ui.adapter.components.BankrollRow import net.pokeranalytics.android.ui.adapter.components.*
import net.pokeranalytics.android.ui.adapter.components.DisplayableDataSource import net.pokeranalytics.android.ui.fragment.components.BottomSheetData
import net.pokeranalytics.android.ui.adapter.components.DynamicRowDelegate
import net.pokeranalytics.android.ui.adapter.components.DynamicRowInterface
import java.util.* import java.util.*
import kotlin.collections.ArrayList import kotlin.collections.ArrayList
open class Bankroll(name: String = "") : RealmObject(), DynamicRowDelegate, DisplayableDataSource { open class Bankroll(name: String = "") : RealmObject(), DynamicRowDelegate, DisplayableDataSource, EditableDataSource {
companion object { companion object {
fun newInstance() : Bankroll { fun newInstance() : Bankroll {
@ -35,18 +34,19 @@ open class Bankroll(name: String = "") : RealmObject(), DynamicRowDelegate, Disp
// @todo rate management // @todo rate management
override val title: String get() = this.id override val title: String get() = this.name
override val primaryKey: String get() = this.id override val primaryKey: String get() = this.id
override fun adapterRows(): ArrayList<DynamicRowInterface> { override fun adapterRows(): ArrayList<DynamicRowInterface> {
val rows = ArrayList<DynamicRowInterface>() val rows = ArrayList<DynamicRowInterface>()
rows.add(SimpleRow.NAME)
rows.addAll(BankrollRow.values()) rows.addAll(BankrollRow.values())
return rows return rows
} }
override fun stringForRow(row: DynamicRowInterface): String { override fun stringForRow(row: DynamicRowInterface): String {
return when (row) { return when (row) {
BankrollRow.NAME -> this.id SimpleRow.NAME -> this.name
BankrollRow.LIVE -> if (this.live) "live" else "online" BankrollRow.LIVE -> if (this.live) "live" else "online"
BankrollRow.CURRENCY -> this.currency?.code?: "" BankrollRow.CURRENCY -> this.currency?.code?: ""
else -> return super.stringForRow(row) else -> return super.stringForRow(row)
@ -59,4 +59,18 @@ open class Bankroll(name: String = "") : RealmObject(), DynamicRowDelegate, Disp
else -> return super.boolForRow(row) else -> return super.boolForRow(row)
} }
} }
override fun getBottomSheetData(row: DynamicRowInterface): ArrayList<BottomSheetData> {
val data = java.util.ArrayList<BottomSheetData>()
when (row) {
SimpleRow.NAME -> data.add(BottomSheetData(this.name, SimpleRow.NAME.resId, InputType.TYPE_CLASS_TEXT))
}
return data
}
override fun setBottomSheetValue(value: Any, row: DynamicRowInterface) {
when (row) {
SimpleRow.NAME -> this.name = value as String
}
}
} }

@ -1,14 +1,14 @@
package net.pokeranalytics.android.model.realm package net.pokeranalytics.android.model.realm
import android.text.InputType
import io.realm.Realm
import io.realm.RealmObject import io.realm.RealmObject
import io.realm.annotations.PrimaryKey import io.realm.annotations.PrimaryKey
import net.pokeranalytics.android.ui.adapter.components.DisplayableDataSource import net.pokeranalytics.android.ui.adapter.components.*
import net.pokeranalytics.android.ui.adapter.components.DynamicRowDelegate import net.pokeranalytics.android.ui.fragment.components.BottomSheetData
import net.pokeranalytics.android.ui.adapter.components.DynamicRowInterface
import net.pokeranalytics.android.ui.adapter.components.GameRow
import java.util.* import java.util.*
open class Game : RealmObject(), DynamicRowDelegate, DisplayableDataSource { open class Game : RealmObject(), DynamicRowDelegate, DisplayableDataSource, EditableDataSource {
@PrimaryKey @PrimaryKey
var id = UUID.randomUUID().toString() var id = UUID.randomUUID().toString()
@ -19,20 +19,34 @@ open class Game : RealmObject(), DynamicRowDelegate, DisplayableDataSource {
// A shorter name for the game // A shorter name for the game
var shortName: String? = null var shortName: String? = null
override val title: String get() = this.id override val title: String get() = this.name
override val primaryKey: String get() = this.id override val primaryKey: String get() = this.id
override fun adapterRows(): ArrayList<DynamicRowInterface> { override fun adapterRows(): ArrayList<DynamicRowInterface> {
val rows = ArrayList<DynamicRowInterface>() val rows = ArrayList<DynamicRowInterface>()
rows.add(SimpleRow.NAME)
rows.addAll(GameRow.values()) rows.addAll(GameRow.values())
return rows return rows
} }
override fun stringForRow(row: DynamicRowInterface): String { override fun stringForRow(row: DynamicRowInterface): String {
return when (row) { return when (row) {
GameRow.NAME -> this.id SimpleRow.NAME -> this.name
else -> return super.stringForRow(row) else -> return super.stringForRow(row)
} }
} }
override fun getBottomSheetData(row: DynamicRowInterface): ArrayList<BottomSheetData> {
val data = java.util.ArrayList<BottomSheetData>()
when (row) {
SimpleRow.NAME -> data.add(BottomSheetData(this.name, SimpleRow.NAME.resId, InputType.TYPE_CLASS_TEXT))
}
return data
}
override fun setBottomSheetValue(value: Any, row: DynamicRowInterface) {
when (row) {
SimpleRow.NAME -> this.name = value as String
}
}
} }

@ -1,15 +1,15 @@
package net.pokeranalytics.android.model.realm package net.pokeranalytics.android.model.realm
import android.text.InputType
import io.realm.Realm
import io.realm.RealmObject import io.realm.RealmObject
import io.realm.annotations.PrimaryKey import io.realm.annotations.PrimaryKey
import net.pokeranalytics.android.ui.adapter.components.DisplayableDataSource import net.pokeranalytics.android.ui.adapter.components.*
import net.pokeranalytics.android.ui.adapter.components.DynamicRowDelegate import net.pokeranalytics.android.ui.fragment.components.BottomSheetData
import net.pokeranalytics.android.ui.adapter.components.DynamicRowInterface
import net.pokeranalytics.android.ui.adapter.components.LocationRow
import java.util.* import java.util.*
open class Location : RealmObject(), DynamicRowDelegate, DisplayableDataSource { open class Location : RealmObject(), DynamicRowDelegate, DisplayableDataSource, EditableDataSource {
@PrimaryKey @PrimaryKey
var id = UUID.randomUUID().toString() var id = UUID.randomUUID().toString()
@ -23,20 +23,35 @@ open class Location : RealmObject(), DynamicRowDelegate, DisplayableDataSource {
// the latitude of the location // the latitude of the location
var latitude: Double? = null var latitude: Double? = null
override val title: String get() = this.id override val title: String get() = this.name
override val primaryKey: String get() = this.id override val primaryKey: String get() = this.id
override fun adapterRows(): ArrayList<DynamicRowInterface> { override fun adapterRows(): ArrayList<DynamicRowInterface> {
val rows = ArrayList<DynamicRowInterface>() val rows = ArrayList<DynamicRowInterface>()
rows.add(SimpleRow.NAME)
rows.addAll(LocationRow.values()) rows.addAll(LocationRow.values())
return rows return rows
} }
override fun stringForRow(row: DynamicRowInterface): String { override fun stringForRow(row: DynamicRowInterface): String {
return when (row) { return when (row) {
LocationRow.NAME -> this.id SimpleRow.NAME -> this.name
else -> return super.stringForRow(row) else -> return super.stringForRow(row)
} }
} }
override fun getBottomSheetData(row: DynamicRowInterface): ArrayList<BottomSheetData> {
val data = java.util.ArrayList<BottomSheetData>()
when (row) {
SimpleRow.NAME -> data.add(BottomSheetData(this.name, SimpleRow.NAME.resId, InputType.TYPE_CLASS_TEXT))
}
return data
}
override fun setBottomSheetValue(value: Any, row: DynamicRowInterface) {
when (row) {
SimpleRow.NAME -> this.name = value as String
}
}
} }

@ -164,7 +164,7 @@ open class Session : RealmObject(), SessionInterface, DynamicRowDelegate, Displa
override var title: String = "Change that: $creationDate" override var title: String = "Change that: $creationDate"
override val primaryKey: String get() = this.id override val primaryKey: String get() = this.id
override fun getBottomSheetData(row: DynamicRowInterface, realm: Realm): ArrayList<BottomSheetData> { override fun getBottomSheetData(row: DynamicRowInterface): ArrayList<BottomSheetData> {
val data = ArrayList<BottomSheetData>() val data = ArrayList<BottomSheetData>()
@ -189,6 +189,10 @@ open class Session : RealmObject(), SessionInterface, DynamicRowDelegate, Displa
return data return data
} }
override fun setBottomSheetValue(value: Any, row: DynamicRowInterface) {
TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
}
} }
enum class TournamentKind { enum class TournamentKind {

@ -1,14 +1,14 @@
package net.pokeranalytics.android.model.realm package net.pokeranalytics.android.model.realm
import android.text.InputType
import io.realm.Realm
import io.realm.RealmObject import io.realm.RealmObject
import io.realm.annotations.PrimaryKey import io.realm.annotations.PrimaryKey
import net.pokeranalytics.android.ui.adapter.components.DisplayableDataSource import net.pokeranalytics.android.ui.adapter.components.*
import net.pokeranalytics.android.ui.adapter.components.DynamicRowDelegate import net.pokeranalytics.android.ui.fragment.components.BottomSheetData
import net.pokeranalytics.android.ui.adapter.components.DynamicRowInterface
import net.pokeranalytics.android.ui.adapter.components.TournamentFeatureRow
import java.util.* import java.util.*
open class TournamentFeature : RealmObject(), DynamicRowDelegate, DisplayableDataSource { open class TournamentFeature : RealmObject(), DynamicRowDelegate, DisplayableDataSource, EditableDataSource {
@PrimaryKey @PrimaryKey
var id = UUID.randomUUID().toString() var id = UUID.randomUUID().toString()
@ -16,19 +16,35 @@ open class TournamentFeature : RealmObject(), DynamicRowDelegate, DisplayableDat
// The name of the feature // The name of the feature
var name: String = "" var name: String = ""
override val title: String get() = this.id override val title: String get() = this.name
override val primaryKey: String get() = this.id override val primaryKey: String get() = this.id
override fun adapterRows(): ArrayList<DynamicRowInterface> { override fun adapterRows(): ArrayList<DynamicRowInterface> {
val rows = ArrayList<DynamicRowInterface>() val rows = ArrayList<DynamicRowInterface>()
rows.add(SimpleRow.NAME)
rows.addAll(TournamentFeatureRow.values()) rows.addAll(TournamentFeatureRow.values())
return rows return rows
} }
override fun stringForRow(row: DynamicRowInterface): String { override fun stringForRow(row: DynamicRowInterface): String {
return when (row) { return when (row) {
TournamentFeatureRow.NAME -> this.id SimpleRow.NAME -> this.name
else -> return super.stringForRow(row) else -> return super.stringForRow(row)
} }
} }
override fun getBottomSheetData(row: DynamicRowInterface): ArrayList<BottomSheetData> {
val data = java.util.ArrayList<BottomSheetData>()
when (row) {
SimpleRow.NAME -> data.add(BottomSheetData(this.name, SimpleRow.NAME.resId, InputType.TYPE_CLASS_TEXT))
}
return data
}
override fun setBottomSheetValue(value: Any, row: DynamicRowInterface) {
when (row) {
SimpleRow.NAME -> this.name = value as String
}
}
} }

@ -1,15 +1,15 @@
package net.pokeranalytics.android.model.realm package net.pokeranalytics.android.model.realm
import android.text.InputType
import io.realm.Realm
import io.realm.RealmObject import io.realm.RealmObject
import io.realm.annotations.PrimaryKey import io.realm.annotations.PrimaryKey
import net.pokeranalytics.android.ui.adapter.components.DisplayableDataSource import net.pokeranalytics.android.ui.adapter.components.*
import net.pokeranalytics.android.ui.adapter.components.DynamicRowDelegate import net.pokeranalytics.android.ui.fragment.components.BottomSheetData
import net.pokeranalytics.android.ui.adapter.components.DynamicRowInterface
import net.pokeranalytics.android.ui.adapter.components.TransactionTypeRow
import java.util.* import java.util.*
open class TransactionType : RealmObject(), DynamicRowDelegate, DisplayableDataSource { open class TransactionType : RealmObject(), DynamicRowDelegate, DisplayableDataSource, EditableDataSource {
@PrimaryKey @PrimaryKey
var id = UUID.randomUUID().toString() var id = UUID.randomUUID().toString()
@ -26,21 +26,37 @@ open class TransactionType : RealmObject(), DynamicRowDelegate, DisplayableDataS
// The predefined kind, if necessary, like: Withdrawal, deposit, or tips // The predefined kind, if necessary, like: Withdrawal, deposit, or tips
var kind: Int? = null var kind: Int? = null
override val title: String get() = this.id override val title: String get() = this.name
override val primaryKey: String get() = this.id override val primaryKey: String get() = this.id
override fun adapterRows(): ArrayList<DynamicRowInterface> { override fun adapterRows(): ArrayList<DynamicRowInterface> {
val rows = ArrayList<DynamicRowInterface>() val rows = ArrayList<DynamicRowInterface>()
rows.add(SimpleRow.NAME)
rows.addAll(TransactionTypeRow.values()) rows.addAll(TransactionTypeRow.values())
return rows return rows
} }
override fun stringForRow(row: DynamicRowInterface): String { override fun stringForRow(row: DynamicRowInterface): String {
return when (row) { return when (row) {
TransactionTypeRow.NAME -> this.id SimpleRow.NAME -> this.name
else -> return super.stringForRow(row) else -> return super.stringForRow(row)
} }
} }
override fun getBottomSheetData(row: DynamicRowInterface): ArrayList<BottomSheetData> {
val data = java.util.ArrayList<BottomSheetData>()
when (row) {
SimpleRow.NAME -> data.add(BottomSheetData(this.name, SimpleRow.NAME.resId, InputType.TYPE_CLASS_TEXT))
}
return data
}
override fun setBottomSheetValue(value: Any, row: DynamicRowInterface) {
when (row) {
SimpleRow.NAME -> this.name = value as String
}
}
} }
enum class TransactionKind { enum class TransactionKind {

@ -22,7 +22,8 @@ interface DisplayableDataSource {
} }
interface EditableDataSource { interface EditableDataSource {
fun getBottomSheetData(row: DynamicRowInterface, realm: Realm): ArrayList<BottomSheetData> fun getBottomSheetData(row: DynamicRowInterface): ArrayList<BottomSheetData>
fun setBottomSheetValue(value: Any, row: DynamicRowInterface)
} }
class DataListAdapter(var delegate: DisplayableDelegate, var layout: Int? = null) : RecyclerView.Adapter<RecyclerView.ViewHolder>() { class DataListAdapter(var delegate: DisplayableDelegate, var layout: Int? = null) : RecyclerView.Adapter<RecyclerView.ViewHolder>() {

@ -68,8 +68,16 @@ enum class SessionRow(val resId: Int) : DynamicRowInterface {
} }
enum class SimpleRow(val resId: Int) : DynamicRowInterface {
NAME(R.string.name);
override fun localizedTitle(context: Context): String {
return context.getString(this.resId)
}
override val viewType: Int = RowViewType.TITLE_VALUE.ordinal
override val bottomSheetType: BottomSheetType = BottomSheetType.EDIT_TEXT
}
enum class BankrollRow(val resId: Int) : DynamicRowInterface { enum class BankrollRow(val resId: Int) : DynamicRowInterface {
NAME(R.string.name),
LIVE(R.string.live), LIVE(R.string.live),
CURRENCY(R.string.currency); CURRENCY(R.string.currency);
@ -80,14 +88,13 @@ enum class BankrollRow(val resId: Int) : DynamicRowInterface {
override val viewType: Int override val viewType: Int
get() { get() {
return when (this) { return when (this) {
NAME, LIVE, CURRENCY -> RowViewType.TITLE_VALUE.ordinal LIVE, CURRENCY -> RowViewType.TITLE_VALUE.ordinal
} }
} }
override val bottomSheetType: BottomSheetType override val bottomSheetType: BottomSheetType
get() { get() {
return when (this) { return when (this) {
NAME -> BottomSheetType.EDIT_TEXT
LIVE -> BottomSheetType.NONE LIVE -> BottomSheetType.NONE
CURRENCY -> BottomSheetType.LIST CURRENCY -> BottomSheetType.LIST
} }
@ -95,91 +102,15 @@ enum class BankrollRow(val resId: Int) : DynamicRowInterface {
} }
enum class GameRow(val resId: Int) : DynamicRowInterface { enum class GameRow(val resId: Int) : DynamicRowInterface {
NAME(R.string.name);
override fun localizedTitle(context: Context): String {
return context.getString(this.resId)
}
override val viewType: Int
get() {
return when (this) {
NAME -> RowViewType.TITLE_VALUE.ordinal
}
}
override val bottomSheetType: BottomSheetType
get() {
return when (this) {
NAME -> BottomSheetType.EDIT_TEXT
}
}
} }
enum class LocationRow(val resId: Int) : DynamicRowInterface { enum class LocationRow(val resId: Int) : DynamicRowInterface {
NAME(R.string.name);
override fun localizedTitle(context: Context): String {
return context.getString(this.resId)
}
override val viewType: Int
get() {
return when (this) {
NAME -> RowViewType.TITLE_VALUE.ordinal
}
}
override val bottomSheetType: BottomSheetType
get() {
return when (this) {
NAME -> BottomSheetType.EDIT_TEXT
}
}
} }
enum class TransactionTypeRow(val resId: Int) : DynamicRowInterface { enum class TransactionTypeRow(val resId: Int) : DynamicRowInterface {
NAME(R.string.name);
override fun localizedTitle(context: Context): String {
return context.getString(this.resId)
}
override val viewType: Int
get() {
return when (this) {
NAME -> RowViewType.TITLE_VALUE.ordinal
}
}
override val bottomSheetType: BottomSheetType
get() {
return when (this) {
NAME -> BottomSheetType.EDIT_TEXT
}
}
} }
enum class TournamentFeatureRow(val resId: Int) : DynamicRowInterface { enum class TournamentFeatureRow(val resId: Int) : DynamicRowInterface {
NAME(R.string.name);
override fun localizedTitle(context: Context): String {
return context.getString(this.resId)
}
override val viewType: Int
get() {
return when (this) {
NAME -> RowViewType.TITLE_VALUE.ordinal
}
}
override val bottomSheetType: BottomSheetType
get() {
return when (this) {
NAME -> BottomSheetType.EDIT_TEXT
}
}
} }
enum class SettingRow(val resId: Int) : DynamicRowInterface { enum class SettingRow(val resId: Int) : DynamicRowInterface {

@ -1,6 +1,7 @@
package net.pokeranalytics.android.ui.fragment package net.pokeranalytics.android.ui.fragment
import android.os.Bundle import android.os.Bundle
import android.text.InputType
import android.view.LayoutInflater import android.view.LayoutInflater
import android.view.View import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
@ -12,11 +13,10 @@ import kotlinx.android.synthetic.main.fragment_editable_data.*
import kotlinx.android.synthetic.main.fragment_editable_data.view.* import kotlinx.android.synthetic.main.fragment_editable_data.view.*
import net.pokeranalytics.android.R import net.pokeranalytics.android.R
import net.pokeranalytics.android.model.DataList import net.pokeranalytics.android.model.DataList
import net.pokeranalytics.android.model.realm.Bankroll
import net.pokeranalytics.android.ui.activity.components.PokerAnalyticsActivity import net.pokeranalytics.android.ui.activity.components.PokerAnalyticsActivity
import net.pokeranalytics.android.ui.adapter.components.DynamicListAdapter import net.pokeranalytics.android.ui.adapter.components.*
import net.pokeranalytics.android.ui.adapter.components.DynamicRowCallback import net.pokeranalytics.android.ui.fragment.components.BottomSheetData
import net.pokeranalytics.android.ui.adapter.components.DynamicRowDelegate
import net.pokeranalytics.android.ui.adapter.components.DynamicRowInterface
import net.pokeranalytics.android.ui.fragment.components.BottomSheetDelegate import net.pokeranalytics.android.ui.fragment.components.BottomSheetDelegate
import net.pokeranalytics.android.ui.fragment.components.BottomSheetFragment import net.pokeranalytics.android.ui.fragment.components.BottomSheetFragment
import net.pokeranalytics.android.ui.fragment.components.PokerAnalyticsFragment import net.pokeranalytics.android.ui.fragment.components.PokerAnalyticsFragment
@ -38,8 +38,7 @@ class EditableDataFragment : PokerAnalyticsFragment(), DynamicRowCallback, Botto
} }
override fun onRowSelected(row: DynamicRowInterface) { override fun onRowSelected(row: DynamicRowInterface) {
val data = item BottomSheetFragment.create(fragmentManager, row, this, (this.item as EditableDataSource).getBottomSheetData(row))
BottomSheetFragment.create(fragmentManager, row, this, ArrayList())
} }
override fun clickOnAdd(row: DynamicRowInterface) { override fun clickOnAdd(row: DynamicRowInterface) {
@ -51,6 +50,10 @@ class EditableDataFragment : PokerAnalyticsFragment(), DynamicRowCallback, Botto
} }
override fun setValue(value: Any, row: DynamicRowInterface) { override fun setValue(value: Any, row: DynamicRowInterface) {
(this.item as EditableDataSource).setBottomSheetValue(value, row)
this.getRealm().executeTransaction {
it.copyToRealm(this.item)
}
Toast.makeText(requireContext(), "Callback for ${row.localizedTitle(requireContext())} ($value)", Toast.LENGTH_SHORT).show() Toast.makeText(requireContext(), "Callback for ${row.localizedTitle(requireContext())} ($value)", Toast.LENGTH_SHORT).show()
} }

@ -38,7 +38,7 @@ class NewSessionFragment : PokerAnalyticsFragment(), DynamicRowCallback, BottomS
} }
override fun onRowSelected(row: DynamicRowInterface) { override fun onRowSelected(row: DynamicRowInterface) {
val data = currentSession.getBottomSheetData(row, getRealm()) val data = currentSession.getBottomSheetData(row)
when(row) { when(row) {
SessionRow.START_DATE -> DateTimePickerManager.create(requireContext(), row, this, currentSession.timeFrame?.startDate) SessionRow.START_DATE -> DateTimePickerManager.create(requireContext(), row, this, currentSession.timeFrame?.startDate)
SessionRow.END_DATE -> DateTimePickerManager.create(requireContext(), row, this, currentSession.timeFrame?.endDate) SessionRow.END_DATE -> DateTimePickerManager.create(requireContext(), row, this, currentSession.timeFrame?.endDate)

Loading…
Cancel
Save