Create BottomSheetDelegate

dev_raz_wip
Aurelien Hubert 7 years ago
parent 5126f73da5
commit 6f0137954e
  1. 4
      app/src/main/java/net/pokeranalytics/android/ui/fragment/NewSessionFragment.kt
  2. 10
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/BottomSheetFragment.kt
  3. 1
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/PokerAnalyticsFragment.kt

@ -13,12 +13,12 @@ import net.pokeranalytics.android.ui.activity.components.PokerAnalyticsActivity
import net.pokeranalytics.android.ui.adapter.components.DynamicListAdapter import net.pokeranalytics.android.ui.adapter.components.DynamicListAdapter
import net.pokeranalytics.android.ui.adapter.components.DynamicRowCallback import net.pokeranalytics.android.ui.adapter.components.DynamicRowCallback
import net.pokeranalytics.android.ui.adapter.components.DynamicRowInterface import net.pokeranalytics.android.ui.adapter.components.DynamicRowInterface
import net.pokeranalytics.android.ui.adapter.components.EditableDataDelegate 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.BottomSheetType import net.pokeranalytics.android.ui.fragment.components.BottomSheetType
import net.pokeranalytics.android.ui.fragment.components.PokerAnalyticsFragment import net.pokeranalytics.android.ui.fragment.components.PokerAnalyticsFragment
class NewSessionFragment : PokerAnalyticsFragment(), DynamicRowCallback, EditableDataDelegate { class NewSessionFragment : PokerAnalyticsFragment(), DynamicRowCallback, BottomSheetDelegate {
private lateinit var newSession: Session private lateinit var newSession: Session

@ -11,7 +11,6 @@ import com.google.android.material.bottomsheet.BottomSheetDialogFragment
import kotlinx.android.synthetic.main.fragment_bottom_sheet.* import kotlinx.android.synthetic.main.fragment_bottom_sheet.*
import net.pokeranalytics.android.R import net.pokeranalytics.android.R
import net.pokeranalytics.android.ui.adapter.components.DynamicRowInterface import net.pokeranalytics.android.ui.adapter.components.DynamicRowInterface
import net.pokeranalytics.android.ui.adapter.components.EditableDataDelegate
enum class BottomSheetType { enum class BottomSheetType {
NONE, NONE,
@ -29,15 +28,20 @@ interface BottomSheetInterface {
fun clickOnAdd() fun clickOnAdd()
} }
interface BottomSheetDelegate {
fun setValue(value: Any, row: DynamicRowInterface)
}
open class BottomSheetFragment : BottomSheetDialogFragment(), BottomSheetInterface { open class BottomSheetFragment : BottomSheetDialogFragment(), BottomSheetInterface {
lateinit var row: DynamicRowInterface lateinit var row: DynamicRowInterface
lateinit var valueDelegate: EditableDataDelegate lateinit var valueDelegate: BottomSheetDelegate
private var data: Any? = null private var data: Any? = null
companion object { companion object {
fun create( fragmentManager: FragmentManager?, row: DynamicRowInterface, valueDelegate: EditableDataDelegate, data: Any?): BottomSheetFragment { fun create( fragmentManager: FragmentManager?, row: DynamicRowInterface, valueDelegate: BottomSheetDelegate, data: Any?): BottomSheetFragment {
val bottomSheetFragment = when (row.bottomSheetType) { val bottomSheetFragment = when (row.bottomSheetType) {
BottomSheetType.BLINDS -> BottomSheetBlindsFragment() BottomSheetType.BLINDS -> BottomSheetBlindsFragment()

@ -4,6 +4,7 @@ import android.os.Bundle
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import io.realm.Realm import io.realm.Realm
import net.pokeranalytics.android.ui.activity.components.PokerAnalyticsActivity import net.pokeranalytics.android.ui.activity.components.PokerAnalyticsActivity
import net.pokeranalytics.android.ui.adapter.components.DynamicRowInterface
open class PokerAnalyticsFragment: Fragment() { open class PokerAnalyticsFragment: Fragment() {

Loading…
Cancel
Save