Refactor BottomSheet management

dev_raz_wip
Aurelien Hubert 7 years ago
parent 063b3c8606
commit 63c0b76a04
  1. 9
      app/src/main/java/net/pokeranalytics/android/ui/adapter/components/DynamicRowInterface.kt
  2. 3
      app/src/main/java/net/pokeranalytics/android/ui/fragment/NewSessionFragment.kt
  3. 2
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/BottomSheetDoubleListFragment.kt
  4. 25
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/BottomSheetFragment.kt
  5. 2
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/BottomSheetListFragment.kt

@ -1,7 +1,10 @@
package net.pokeranalytics.android.ui.adapter.components
import android.content.Context
import io.realm.*
import io.realm.Realm
import io.realm.RealmObject
import io.realm.RealmResults
import io.realm.Sort
import net.pokeranalytics.android.R
import net.pokeranalytics.android.model.realm.*
import net.pokeranalytics.android.ui.fragment.components.BottomSheetType
@ -51,8 +54,8 @@ enum class SessionRow(val resId: Int) : DynamicRowInterface {
override var bottomSheetType: BottomSheetType = BottomSheetType.NONE
get() {
return when (this) {
BLINDS -> BottomSheetType.BLINDS
GAME -> BottomSheetType.GAME
BLINDS -> BottomSheetType.LIST
GAME -> BottomSheetType.DOUBLE_LIST
DATE -> BottomSheetType.DATE
}
}

@ -15,7 +15,6 @@ import net.pokeranalytics.android.ui.adapter.components.DynamicRowCallback
import net.pokeranalytics.android.ui.adapter.components.DynamicRowInterface
import net.pokeranalytics.android.ui.fragment.components.BottomSheetDelegate
import net.pokeranalytics.android.ui.fragment.components.BottomSheetFragment
import net.pokeranalytics.android.ui.fragment.components.BottomSheetType
import net.pokeranalytics.android.ui.fragment.components.PokerAnalyticsFragment
class NewSessionFragment : PokerAnalyticsFragment(), DynamicRowCallback, BottomSheetDelegate {
@ -35,9 +34,11 @@ class NewSessionFragment : PokerAnalyticsFragment(), DynamicRowCallback, BottomS
override fun onRowSelected(row: DynamicRowInterface) {
val data = when (row.bottomSheetType) {
/*
BottomSheetType.BLINDS -> newSession
BottomSheetType.DATE -> newSession.timeFrame
BottomSheetType.GAME -> newSession.game
*/
else -> Any()
}

@ -15,7 +15,7 @@ import net.pokeranalytics.android.ui.adapter.components.DisplayableDelegate
import net.pokeranalytics.android.ui.adapter.components.DynamicRowInterface
class BottomSheetGameFragment : BottomSheetFragment(), DisplayableDelegate {
class BottomSheetDoubleListFragment : BottomSheetFragment(), DisplayableDelegate {
private var game: Game = Game()

@ -14,12 +14,12 @@ import net.pokeranalytics.android.ui.adapter.components.DynamicRowInterface
enum class BottomSheetType {
NONE,
GAME,
BLINDS,
LOCATION,
BANKROLL,
TABLE_SIZE,
DATE
LIST,
DOUBLE_LIST,
DATE,
GRID,
EDIT_TEXT,
DOUBLE_EDIT_TEXT,
}
interface BottomSheetInterface {
@ -41,12 +41,17 @@ open class BottomSheetFragment : BottomSheetDialogFragment(), BottomSheetInterfa
private var data: Any? = null
companion object {
fun create( fragmentManager: FragmentManager?, row: DynamicRowInterface, valueDelegate: BottomSheetDelegate, data: Any?): BottomSheetFragment {
fun create(
fragmentManager: FragmentManager?,
row: DynamicRowInterface,
valueDelegate: BottomSheetDelegate,
data: Any?
): BottomSheetFragment {
val bottomSheetFragment = when (row.bottomSheetType) {
BottomSheetType.BLINDS -> BottomSheetBlindsFragment()
BottomSheetType.DATE -> BottomSheetDateFragment()
BottomSheetType.GAME -> BottomSheetGameFragment()
BottomSheetType.LIST -> BottomSheetListFragment()
BottomSheetType.DOUBLE_LIST -> BottomSheetDoubleListFragment()
else -> BottomSheetFragment()
}
@ -119,7 +124,7 @@ open class BottomSheetFragment : BottomSheetDialogFragment(), BottomSheetInterfa
/**
* Return the data object
*/
fun getData() : Any? {
fun getData(): Any? {
return data
}

@ -9,7 +9,7 @@ import kotlinx.android.synthetic.main.fragment_bottom_sheet.view.*
import net.pokeranalytics.android.R
import net.pokeranalytics.android.model.realm.Session
class BottomSheetBlindsFragment : BottomSheetFragment() {
class BottomSheetListFragment : BottomSheetFragment() {
private var session: Session = Session()
Loading…
Cancel
Save