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

dev_raz_wip
Aurelien Hubert 7 years ago
commit 5fc55d04e7
  1. 5
      app/src/main/java/net/pokeranalytics/android/model/DataList.kt
  2. 1
      app/src/main/java/net/pokeranalytics/android/model/realm/Session.kt
  3. 7
      app/src/main/java/net/pokeranalytics/android/ui/activity/DataListActivity.kt
  4. 12
      app/src/main/java/net/pokeranalytics/android/ui/activity/EditableDataActivity.kt
  5. 10
      app/src/main/java/net/pokeranalytics/android/ui/adapter/components/DynamicRowInterface.kt
  6. 23
      app/src/main/java/net/pokeranalytics/android/ui/fragment/DataListFragment.kt
  7. 4
      app/src/main/java/net/pokeranalytics/android/ui/fragment/EditableDataFragment.kt
  8. 1
      app/src/main/java/net/pokeranalytics/android/ui/fragment/NewSessionFragment.kt

@ -1,13 +1,13 @@
package net.pokeranalytics.android.model.realm
package net.pokeranalytics.android.model
import io.realm.Realm
import io.realm.RealmObject
import io.realm.RealmResults
import io.realm.Sort
import net.pokeranalytics.android.model.realm.*
import java.util.*
enum class DataList {
NONE,
BANKROLL,
GAME,
LOCATION,
@ -25,7 +25,6 @@ enum class DataList {
private val relatedEntity: Class < out RealmObject >
get() {
return when (this) {
NONE -> RealmObject::class.java
BANKROLL -> Bankroll::class.java
GAME -> Game::class.java
LOCATION -> Location::class.java

@ -6,6 +6,7 @@ import io.realm.annotations.Ignore
import io.realm.annotations.PrimaryKey
import net.pokeranalytics.android.R
import net.pokeranalytics.android.calculus.SessionInterface
import net.pokeranalytics.android.model.DataList
import net.pokeranalytics.android.ui.adapter.components.*
import net.pokeranalytics.android.ui.fragment.components.BottomSheetData
import net.pokeranalytics.android.util.data.sessionDao

@ -9,11 +9,14 @@ import net.pokeranalytics.android.ui.fragment.DataListFragment
import net.pokeranalytics.android.ui.activity.components.PokerAnalyticsActivity
class DataListActivity : PokerAnalyticsActivity() {
enum class IntentKey(val keyName : String) {
DATATYPE("DATATYPE"),
}
companion object {
fun newInstance(context: Context, dataType: Int) {
val intent = Intent(context, DataListActivity::class.java)
intent.putExtra("dataType", dataType)
intent.putExtra(IntentKey.DATATYPE.keyName, dataType)
context.startActivity(intent)
}
}
@ -30,7 +33,7 @@ class DataListActivity : PokerAnalyticsActivity() {
*/
private fun initUI() {
val dataType = intent.getIntExtra("dataType", 0)
val dataType = intent.getIntExtra(IntentKey.DATATYPE.keyName, 0)
val fragment = dataListFragment as DataListFragment
fragment.setData(dataType)
}

@ -9,13 +9,17 @@ import net.pokeranalytics.android.ui.activity.components.PokerAnalyticsActivity
import net.pokeranalytics.android.ui.fragment.EditableDataFragment
class EditableDataActivity : PokerAnalyticsActivity() {
enum class IntentKey(val keyName : String) {
DATATYPE("DATATYPE"),
PRIMARYKEY("PRIMARYKEY");
}
companion object {
fun newInstance(context: Context, dataType: Int, primaryKey: String? = null) {
val intent = Intent(context, EditableDataActivity::class.java)
intent.putExtra("dataType", dataType)
intent.putExtra(IntentKey.DATATYPE.keyName, dataType)
primaryKey?.let {
intent.putExtra("primaryKey", it)
intent.putExtra(IntentKey.PRIMARYKEY.keyName, it)
}
context.startActivity(intent)
}
@ -32,8 +36,8 @@ class EditableDataActivity : PokerAnalyticsActivity() {
*/
private fun initUI() {
val dataType = intent.getIntExtra("dataType", 0)
val primaryKey = intent.getStringExtra("primaryKey")
val dataType = intent.getIntExtra(IntentKey.DATATYPE.keyName, 0)
val primaryKey = intent.getStringExtra(IntentKey.PRIMARYKEY.keyName)
val fragment = editableDataFragment as EditableDataFragment
fragment.setData(dataType, primaryKey)
}

@ -2,14 +2,14 @@ package net.pokeranalytics.android.ui.adapter.components
import android.content.Context
import net.pokeranalytics.android.R
import net.pokeranalytics.android.model.realm.DataList
import net.pokeranalytics.android.model.DataList
import net.pokeranalytics.android.ui.fragment.components.BottomSheetType
interface DynamicRowInterface {
fun localizedTitle(context: Context): String
val viewType: Int
get() {
get() {
return 0
}
@ -18,9 +18,9 @@ interface DynamicRowInterface {
return BottomSheetType.NONE
}
val relatedDataList: DataList
val relatedDataList: DataList?
get() {
return DataList.NONE
return null
}
}
@ -195,7 +195,7 @@ enum class SettingRow(val resId: Int) : DynamicRowInterface {
override val viewType: Int = RowViewType.TITLE.ordinal
override val relatedDataList : DataList
override val relatedDataList : DataList?
get() {
return when (this) {
BANKROLL -> DataList.BANKROLL

@ -36,7 +36,9 @@ class DataListFragment : PokerAnalyticsFragment(), DisplayableDelegate {
}
override fun onRowSelected(position: Int) {
EditableDataActivity.newInstance(requireContext(), this.dataType.relatedDataList.ordinal, this.data(position).primaryKey)
this.dataType.relatedDataList?.let {
EditableDataActivity.newInstance(requireContext(), it.ordinal, this.data(position).primaryKey)
}
}
override fun size(): Int {
@ -61,7 +63,13 @@ class DataListFragment : PokerAnalyticsFragment(), DisplayableDelegate {
}
this.addButton.setOnClickListener {
EditableDataActivity.newInstance(requireContext(), dataType = this.dataType.relatedDataList.ordinal, primaryKey = null)
this.dataType.relatedDataList?.let {
EditableDataActivity.newInstance(
requireContext(),
dataType = it.ordinal,
primaryKey = null
)
}
}
}
@ -74,10 +82,13 @@ class DataListFragment : PokerAnalyticsFragment(), DisplayableDelegate {
this.dataType = SettingRow.values()[dataType]
this.title.text = this.dataType.name.toLowerCase().capitalize()
val realm = Realm.getDefaultInstance()
this.items = this.dataType.relatedDataList.items(realm)
this.items.addChangeListener { newItems ->
Timber.d("newItems: ${newItems.size}")
this.recyclerView.adapter?.notifyDataSetChanged()
this.dataType.relatedDataList?.let {
this.items = it.items(realm)
this.items.addChangeListener { newItems ->
Timber.d("newItems: ${newItems.size}")
this.recyclerView.adapter?.notifyDataSetChanged()
}
}
}
}

@ -11,7 +11,7 @@ import io.realm.RealmObject
import kotlinx.android.synthetic.main.fragment_editable_data.*
import kotlinx.android.synthetic.main.fragment_editable_data.view.*
import net.pokeranalytics.android.R
import net.pokeranalytics.android.model.realm.DataList
import net.pokeranalytics.android.model.DataList
import net.pokeranalytics.android.ui.activity.components.PokerAnalyticsActivity
import net.pokeranalytics.android.ui.adapter.components.DynamicListAdapter
import net.pokeranalytics.android.ui.adapter.components.DynamicRowCallback
@ -25,7 +25,7 @@ import java.util.*
class EditableDataFragment : PokerAnalyticsFragment(), DynamicRowCallback, BottomSheetDelegate {
private lateinit var item: RealmObject
private var dataType: DataList = DataList.NONE
private lateinit var dataType: DataList
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
return inflater.inflate(R.layout.fragment_editable_data, container, false)

@ -9,6 +9,7 @@ import androidx.recyclerview.widget.LinearLayoutManager
import kotlinx.android.synthetic.main.fragment_new_session.*
import net.pokeranalytics.android.R
import net.pokeranalytics.android.model.realm.*
import net.pokeranalytics.android.model.DataList
import net.pokeranalytics.android.ui.activity.EditableDataActivity
import net.pokeranalytics.android.ui.activity.components.PokerAnalyticsActivity
import net.pokeranalytics.android.ui.adapter.components.DynamicListAdapter

Loading…
Cancel
Save