update manifest

dev_raz_wip
Razmig Sarkissian 7 years ago
parent 55dc491f23
commit 8fecc266e1
  1. 2
      app/src/main/AndroidManifest.xml
  2. 12
      app/src/main/java/net/pokeranalytics/android/ui/adapter/components/DynamicRowInterface.kt
  3. 23
      app/src/main/java/net/pokeranalytics/android/ui/fragment/EditableDataFragment.kt

@ -25,7 +25,7 @@
android:name=".ui.activity.NewSessionActivity" android:name=".ui.activity.NewSessionActivity"
android:launchMode="singleTop"/> android:launchMode="singleTop"/>
<activity android:name=".ui.activity.DataManagementActivity"/> <activity android:name=".ui.activity.EditableDataActivity"/>
<meta-data <meta-data
android:name="preloaded_fonts" android:name="preloaded_fonts"

@ -17,7 +17,7 @@ interface DynamicValues {
fun items(realm: Realm): RealmResults<*> fun items(realm: Realm): RealmResults<*>
var sortingFieldName: String var sortingFieldName: String
var sorting: Sort var sorting: Sort
fun <RealmObject> clazz(): Class<*> fun clazz(): Class<out RealmObject>
} }
class SectionRow(stringRes: Int) : DynamicRowInterface { class SectionRow(stringRes: Int) : DynamicRowInterface {
@ -86,19 +86,13 @@ enum class SettingRow(val resId: Int) : DynamicRowInterface, DynamicValues {
override var bottomSheetType: BottomSheetType = BottomSheetType.NONE override var bottomSheetType: BottomSheetType = BottomSheetType.NONE
override fun items(realm: Realm): RealmResults<*> { override fun items(realm: Realm): RealmResults<*> {
return when (this) { return realm.where(this.clazz()).findAll().sort(this.sortingFieldName, this.sorting)
BANKROLL -> realm.where(Bankroll::class.java).findAll().sort(this.sortingFieldName, this.sorting)
GAME-> realm.where(Game::class.java).findAll().sort(this.sortingFieldName, this.sorting)
LOCATION -> realm.where(Location::class.java).findAll().sort(this.sortingFieldName, this.sorting)
TOURNAMENT_TYPE -> realm.where(TournamentFeature::class.java).findAll().sort(this.sortingFieldName, this.sorting)
TRANSACTION_TYPE -> realm.where(TransactionType::class.java).findAll().sort(this.sortingFieldName, this.sorting)
}
} }
override var sortingFieldName: String = "name" override var sortingFieldName: String = "name"
override var sorting: Sort = Sort.DESCENDING override var sorting: Sort = Sort.DESCENDING
override fun <RealmObject> clazz(): Class<*> { override fun clazz(): Class<out RealmObject> {
return when (this) { return when (this) {
BANKROLL -> Bankroll::class.java BANKROLL -> Bankroll::class.java
GAME -> Game::class.java GAME -> Game::class.java

@ -43,12 +43,10 @@ class EditableDataFragment : PokerAnalyticsFragment(), DynamicRowCallback {
private fun initUI() { private fun initUI() {
val viewManager = LinearLayoutManager(requireContext()) val viewManager = LinearLayoutManager(requireContext())
val dynamicListAdapter = DynamicListAdapter((this.item as DynamicRowDelegate), this)
recyclerView.apply { recyclerView.apply {
setHasFixedSize(true) setHasFixedSize(true)
layoutManager = viewManager layoutManager = viewManager
adapter = dynamicListAdapter
} }
} }
@ -58,20 +56,21 @@ class EditableDataFragment : PokerAnalyticsFragment(), DynamicRowCallback {
fun setData(dataType: Int, primaryKey: String?) { fun setData(dataType: Int, primaryKey: String?) {
this.dataType = SettingRow.values()[dataType] this.dataType = SettingRow.values()[dataType]
val realm = Realm.getDefaultInstance() val realm = Realm.getDefaultInstance()
var _item : RealmObject? = null
primaryKey?.let { primaryKey?.let {
when (this.dataType) { val t = realm.where(this.dataType.clazz()).equalTo("id", it).findFirst()
SettingRow.BANKROLL -> realm.where(Bankroll::class.java).equalTo("id", it).findFirst() t?.let {
SettingRow.GAME -> realm.where(Game::class.java).equalTo("id", it).findFirst() _item = t
SettingRow.LOCATION -> realm.where(Location::class.java).equalTo("id", it).findFirst()
SettingRow.TOURNAMENT_TYPE -> realm.where(TournamentFeature::class.java).equalTo("id", it).findFirst()
SettingRow.TRANSACTION_TYPE-> realm.where(TransactionType::class.java).equalTo("id", it).findFirst()
}?.let {
this.item = realm.copyFromRealm(it)
} }
} }
if (this.item == null) { _item?.let {
this.item = realm.createObject(Bankroll) this.item = it
} ?: run {
this.item = realm.createObject(this.dataType.clazz())
} }
val dynamicListAdapter = DynamicListAdapter((this.item as DynamicRowDelegate), this)
this.recyclerView.adapter = dynamicListAdapter
} }
} }
Loading…
Cancel
Save