|
|
|
@ -7,6 +7,7 @@ import android.view.ViewGroup |
|
|
|
import androidx.recyclerview.widget.LinearLayoutManager |
|
|
|
import androidx.recyclerview.widget.LinearLayoutManager |
|
|
|
import io.realm.Realm |
|
|
|
import io.realm.Realm |
|
|
|
import io.realm.RealmObject |
|
|
|
import io.realm.RealmObject |
|
|
|
|
|
|
|
import io.realm.RealmResults |
|
|
|
import io.realm.Sort |
|
|
|
import io.realm.Sort |
|
|
|
import kotlinx.android.synthetic.main.fragment_new_session.* |
|
|
|
import kotlinx.android.synthetic.main.fragment_new_session.* |
|
|
|
import net.pokeranalytics.android.R |
|
|
|
import net.pokeranalytics.android.R |
|
|
|
@ -14,11 +15,11 @@ import net.pokeranalytics.android.model.realm.* |
|
|
|
import net.pokeranalytics.android.ui.adapter.components.* |
|
|
|
import net.pokeranalytics.android.ui.adapter.components.* |
|
|
|
import net.pokeranalytics.android.util.PokerAnalyticsFragment |
|
|
|
import net.pokeranalytics.android.util.PokerAnalyticsFragment |
|
|
|
|
|
|
|
|
|
|
|
class DataListFragment : PokerAnalyticsFragment(), DataRowDelegate, DataRowCallback { |
|
|
|
class DataListFragment : PokerAnalyticsFragment(), DisplayableDelegate { |
|
|
|
|
|
|
|
|
|
|
|
private lateinit var dataType: DataObjectRowType |
|
|
|
private lateinit var dataType: SettingRow |
|
|
|
|
|
|
|
|
|
|
|
private lateinit var realmObjects: ArrayList<RealmObject> |
|
|
|
private lateinit var items: RealmResults<*> |
|
|
|
|
|
|
|
|
|
|
|
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { |
|
|
|
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { |
|
|
|
return inflater.inflate(R.layout.fragment_data_list, container, false) |
|
|
|
return inflater.inflate(R.layout.fragment_data_list, container, false) |
|
|
|
@ -30,8 +31,8 @@ class DataListFragment : PokerAnalyticsFragment(), DataRowDelegate, DataRowCallb |
|
|
|
initUI() |
|
|
|
initUI() |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
override fun data(position: Int): DisplayableData { |
|
|
|
override fun data(position: Int): DisplayableDataSource { |
|
|
|
return (realmObjects[position] as DisplayableData) |
|
|
|
return (items[position] as DisplayableDataSource) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
override fun onRowSelected(position: Int) { |
|
|
|
override fun onRowSelected(position: Int) { |
|
|
|
@ -39,7 +40,7 @@ class DataListFragment : PokerAnalyticsFragment(), DataRowDelegate, DataRowCallb |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
override fun size(): Int { |
|
|
|
override fun size(): Int { |
|
|
|
return realmObjects.size |
|
|
|
return items.size |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private fun initData() { |
|
|
|
private fun initData() { |
|
|
|
@ -51,7 +52,7 @@ class DataListFragment : PokerAnalyticsFragment(), DataRowDelegate, DataRowCallb |
|
|
|
private fun initUI() { |
|
|
|
private fun initUI() { |
|
|
|
|
|
|
|
|
|
|
|
val viewManager = LinearLayoutManager(requireContext()) |
|
|
|
val viewManager = LinearLayoutManager(requireContext()) |
|
|
|
val dataListAdapter = DataListAdapter(this, this) |
|
|
|
val dataListAdapter = DataListAdapter(this) |
|
|
|
|
|
|
|
|
|
|
|
recyclerView.apply { |
|
|
|
recyclerView.apply { |
|
|
|
setHasFixedSize(true) |
|
|
|
setHasFixedSize(true) |
|
|
|
@ -65,15 +66,8 @@ class DataListFragment : PokerAnalyticsFragment(), DataRowDelegate, DataRowCallb |
|
|
|
* Set fragment data |
|
|
|
* Set fragment data |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
fun setData(dataType: Int) { |
|
|
|
fun setData(dataType: Int) { |
|
|
|
this.dataType = DataObjectRowType.values()[dataType] |
|
|
|
this.dataType = SettingRow.values()[dataType] |
|
|
|
val realm = Realm.getDefaultInstance() |
|
|
|
val realm = Realm.getDefaultInstance() |
|
|
|
|
|
|
|
this.items = this.dataType.items(realm) |
|
|
|
realmObjects = ArrayList( when (DataObjectRowType.values()[dataType]) { |
|
|
|
|
|
|
|
DataObjectRowType.BANKROLL -> realm.where(Bankroll::class.java).findAll().sort("name", Sort.DESCENDING) |
|
|
|
|
|
|
|
DataObjectRowType.GAME-> realm.where(Game::class.java).findAll().sort("name", Sort.DESCENDING) |
|
|
|
|
|
|
|
DataObjectRowType.LOCATION -> realm.where(Location::class.java).findAll().sort("name", Sort.DESCENDING) |
|
|
|
|
|
|
|
DataObjectRowType.TOURNAMENT_TYPE -> realm.where(TournamentFeature::class.java).findAll().sort("name", Sort.DESCENDING) |
|
|
|
|
|
|
|
DataObjectRowType.TRANSACTION_TYPE -> realm.where(TransactionType::class.java).findAll().sort("name", Sort.DESCENDING) |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |