From 201b6dee986d05a6412cee2cea949c76101e6d99 Mon Sep 17 00:00:00 2001 From: Aurelien Hubert Date: Tue, 16 Apr 2019 14:41:00 +0200 Subject: [PATCH 1/3] Refactor and unify row management --- .../net/pokeranalytics/android/model/realm/Session.kt | 8 ++++---- .../android/ui/fragment/CurrenciesFragment.kt | 4 ++-- .../pokeranalytics/android/ui/fragment/StatsFragment.kt | 2 +- .../net/pokeranalytics/android/ui/view/RowViewType.kt | 2 +- .../{SeparatorRowRepresentable.kt => SeparatorRow.kt} | 2 +- .../android/ui/view/rowrepresentable/SessionRow.kt | 8 ++++---- .../view/rowrepresentable}/StatRepresentable.kt | 2 +- 7 files changed, 14 insertions(+), 14 deletions(-) rename app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/{SeparatorRowRepresentable.kt => SeparatorRow.kt} (75%) rename app/src/main/java/net/pokeranalytics/android/{model => ui/view/rowrepresentable}/StatRepresentable.kt (90%) diff --git a/app/src/main/java/net/pokeranalytics/android/model/realm/Session.kt b/app/src/main/java/net/pokeranalytics/android/model/realm/Session.kt index 8722f4f9..eba8afc5 100644 --- a/app/src/main/java/net/pokeranalytics/android/model/realm/Session.kt +++ b/app/src/main/java/net/pokeranalytics/android/model/realm/Session.kt @@ -30,7 +30,7 @@ import net.pokeranalytics.android.ui.view.RowRepresentable import net.pokeranalytics.android.ui.view.RowRepresentableEditDescriptor import net.pokeranalytics.android.ui.view.RowViewType import net.pokeranalytics.android.ui.view.rowrepresentable.CustomizableRowRepresentable -import net.pokeranalytics.android.ui.view.rowrepresentable.SeparatorRowRepresentable +import net.pokeranalytics.android.ui.view.rowrepresentable.SeparatorRow import net.pokeranalytics.android.ui.view.rowrepresentable.SessionRow import net.pokeranalytics.android.util.NULL_TEXT import net.pokeranalytics.android.util.UserDefaults @@ -584,7 +584,7 @@ open class Session : RealmObject(), Savable, Editable, StaticRowRepresentableDat computedStat = ComputedStat(Stat.NETRESULT, result?.net ?: 0.0, currency) ) ) - rows.add(SeparatorRowRepresentable()) + rows.add(SeparatorRow()) } SessionState.PAUSED -> { rows.add( @@ -594,7 +594,7 @@ open class Session : RealmObject(), Savable, Editable, StaticRowRepresentableDat computedStat = ComputedStat(Stat.NETRESULT, result?.net ?: 0.0, currency) ) ) - rows.add(SeparatorRowRepresentable()) + rows.add(SeparatorRow()) } SessionState.FINISHED -> { rows.add( @@ -621,7 +621,7 @@ open class Session : RealmObject(), Savable, Editable, StaticRowRepresentableDat // ) // ) // } - rows.add(SeparatorRowRepresentable()) + rows.add(SeparatorRow()) } else -> { } diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/CurrenciesFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/CurrenciesFragment.kt index 4a53d724..76d552e3 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/CurrenciesFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/CurrenciesFragment.kt @@ -16,7 +16,7 @@ import net.pokeranalytics.android.ui.adapter.StaticRowRepresentableDataSource import net.pokeranalytics.android.ui.fragment.components.PokerAnalyticsFragment import net.pokeranalytics.android.ui.view.RowRepresentable import net.pokeranalytics.android.ui.view.RowViewType -import net.pokeranalytics.android.ui.view.rowrepresentable.SeparatorRowRepresentable +import net.pokeranalytics.android.ui.view.rowrepresentable.SeparatorRow import java.util.* class CurrenciesFragment : PokerAnalyticsFragment(), StaticRowRepresentableDataSource, RowRepresentableDelegate { @@ -28,7 +28,7 @@ class CurrenciesFragment : PokerAnalyticsFragment(), StaticRowRepresentableDataS val rowRepresentation : List by lazy { val rows = ArrayList() rows.addAll(mostUsedCurrencies) - rows.add(SeparatorRowRepresentable()) + rows.add(SeparatorRow()) rows.addAll(availableCurrencies) rows } diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/StatsFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/StatsFragment.kt index 4c0c34e2..1c09199c 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/StatsFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/StatsFragment.kt @@ -10,7 +10,7 @@ import kotlinx.android.synthetic.main.fragment_stats.* import kotlinx.coroutines.* import net.pokeranalytics.android.R import net.pokeranalytics.android.calculus.* -import net.pokeranalytics.android.model.StatRepresentable +import net.pokeranalytics.android.ui.view.rowrepresentable.StatRepresentable import net.pokeranalytics.android.model.filter.QueryCondition import net.pokeranalytics.android.ui.activity.StatisticDetailsActivity import net.pokeranalytics.android.ui.adapter.DisplayDescriptor diff --git a/app/src/main/java/net/pokeranalytics/android/ui/view/RowViewType.kt b/app/src/main/java/net/pokeranalytics/android/ui/view/RowViewType.kt index 387756b9..42865a4b 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/view/RowViewType.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/view/RowViewType.kt @@ -13,7 +13,7 @@ import androidx.recyclerview.widget.RecyclerView import kotlinx.android.synthetic.main.row_history_session.view.* import kotlinx.android.synthetic.main.row_transaction.view.* import net.pokeranalytics.android.R -import net.pokeranalytics.android.model.StatRepresentable +import net.pokeranalytics.android.ui.view.rowrepresentable.StatRepresentable import net.pokeranalytics.android.model.realm.Session import net.pokeranalytics.android.model.realm.Transaction import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter diff --git a/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/SeparatorRowRepresentable.kt b/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/SeparatorRow.kt similarity index 75% rename from app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/SeparatorRowRepresentable.kt rename to app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/SeparatorRow.kt index 7497d908..a45bfb04 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/SeparatorRowRepresentable.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/SeparatorRow.kt @@ -6,6 +6,6 @@ import net.pokeranalytics.android.ui.view.RowViewType /** * A class to display separator as row representable */ -class SeparatorRowRepresentable(customViewType: RowViewType? = RowViewType.SEPARATOR) : RowRepresentable { +class SeparatorRow(customViewType: RowViewType? = RowViewType.SEPARATOR) : RowRepresentable { override val viewType: Int = customViewType?.ordinal ?: RowViewType.SEPARATOR.ordinal } diff --git a/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/SessionRow.kt b/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/SessionRow.kt index 27b2c73f..40a49efe 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/SessionRow.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/SessionRow.kt @@ -68,7 +68,7 @@ enum class SessionRow : RowRepresentable { POSITION, PLAYERS, TIPS, - SeparatorRowRepresentable(), + SeparatorRow(), GAME, INITIAL_BUY_IN, LOCATION, @@ -77,7 +77,7 @@ enum class SessionRow : RowRepresentable { TOURNAMENT_TYPE, TOURNAMENT_NAME, TOURNAMENT_FEATURE, - SeparatorRowRepresentable(), + SeparatorRow(), START_DATE, END_DATE, BREAK_TIME, @@ -98,7 +98,7 @@ enum class SessionRow : RowRepresentable { CASHED_OUT, BUY_IN, TIPS, - SeparatorRowRepresentable(), + SeparatorRow(), GAME, BLINDS, LOCATION, @@ -112,7 +112,7 @@ enum class SessionRow : RowRepresentable { } else { arrayListOf( NET_RESULT, - SeparatorRowRepresentable(), + SeparatorRow(), GAME, BLINDS, LOCATION, diff --git a/app/src/main/java/net/pokeranalytics/android/model/StatRepresentable.kt b/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/StatRepresentable.kt similarity index 90% rename from app/src/main/java/net/pokeranalytics/android/model/StatRepresentable.kt rename to app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/StatRepresentable.kt index 25829c3a..ac081a20 100644 --- a/app/src/main/java/net/pokeranalytics/android/model/StatRepresentable.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/StatRepresentable.kt @@ -1,4 +1,4 @@ -package net.pokeranalytics.android.model +package net.pokeranalytics.android.ui.view.rowrepresentable import net.pokeranalytics.android.calculus.ComputedStat import net.pokeranalytics.android.calculus.Stat From 7a5d92d9dfee114afb248abb458e31ac22b6cba9 Mon Sep 17 00:00:00 2001 From: Aurelien Hubert Date: Tue, 16 Apr 2019 14:41:41 +0200 Subject: [PATCH 2/3] Rename StatRepresentable --- .../ui/view/rowrepresentable/{StatRepresentable.kt => StatRow.kt} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/{StatRepresentable.kt => StatRow.kt} (100%) diff --git a/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/StatRepresentable.kt b/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/StatRow.kt similarity index 100% rename from app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/StatRepresentable.kt rename to app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/StatRow.kt From d64a66b662140c56204cdb6f039e7e09c4797e42 Mon Sep 17 00:00:00 2001 From: Aurelien Hubert Date: Tue, 16 Apr 2019 14:41:54 +0200 Subject: [PATCH 3/3] Update StatRow reference --- .../android/ui/fragment/StatsFragment.kt | 10 +++++----- .../net/pokeranalytics/android/ui/view/RowViewType.kt | 4 ++-- .../android/ui/view/rowrepresentable/StatRow.kt | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/StatsFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/StatsFragment.kt index 1c09199c..5ee27236 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/StatsFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/StatsFragment.kt @@ -10,7 +10,7 @@ import kotlinx.android.synthetic.main.fragment_stats.* import kotlinx.coroutines.* import net.pokeranalytics.android.R import net.pokeranalytics.android.calculus.* -import net.pokeranalytics.android.ui.view.rowrepresentable.StatRepresentable +import net.pokeranalytics.android.ui.view.rowrepresentable.StatRow import net.pokeranalytics.android.model.filter.QueryCondition import net.pokeranalytics.android.ui.activity.StatisticDetailsActivity import net.pokeranalytics.android.ui.adapter.DisplayDescriptor @@ -74,7 +74,7 @@ class StatsFragment : SessionObserverFragment(), StaticRowRepresentableDataSourc override fun contentDescriptorForRow(row: RowRepresentable): DisplayDescriptor? { val dc = DisplayDescriptor() dc.textFormat = TextFormat(NULL_TEXT) - if (row is StatRepresentable) { + if (row is StatRow) { context?.let { context -> row.computedStat?.let { dc.textFormat = it.format(context) @@ -85,7 +85,7 @@ class StatsFragment : SessionObserverFragment(), StaticRowRepresentableDataSourc } override fun statFormatForRow(row: RowRepresentable): TextFormat { - if (row is StatRepresentable) { + if (row is StatRow) { context?.let { context -> row.computedStat?.let { return it.format(context) } } @@ -188,7 +188,7 @@ class StatsFragment : SessionObserverFragment(), StaticRowRepresentableDataSourc report.results.forEach { result -> rows.add(CustomizableRowRepresentable(title = result.group.name)) result.group.stats?.forEach { stat -> - rows.add(StatRepresentable(stat, result.computedStat(stat), result.group.name)) + rows.add(StatRow(stat, result.computedStat(stat), result.group.name)) } } @@ -199,7 +199,7 @@ class StatsFragment : SessionObserverFragment(), StaticRowRepresentableDataSourc override fun onRowSelected(position: Int, row: RowRepresentable, fromAction: Boolean) { - if (row is StatRepresentable && row.stat.hasEvolutionGraph) { + if (row is StatRow && row.stat.hasEvolutionGraph) { // filter groups val groupResults = this.report?.results?.filter { diff --git a/app/src/main/java/net/pokeranalytics/android/ui/view/RowViewType.kt b/app/src/main/java/net/pokeranalytics/android/ui/view/RowViewType.kt index 42865a4b..76254452 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/view/RowViewType.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/view/RowViewType.kt @@ -13,7 +13,7 @@ import androidx.recyclerview.widget.RecyclerView import kotlinx.android.synthetic.main.row_history_session.view.* import kotlinx.android.synthetic.main.row_transaction.view.* import net.pokeranalytics.android.R -import net.pokeranalytics.android.ui.view.rowrepresentable.StatRepresentable +import net.pokeranalytics.android.ui.view.rowrepresentable.StatRow import net.pokeranalytics.android.model.realm.Session import net.pokeranalytics.android.model.realm.Transaction import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter @@ -236,7 +236,7 @@ enum class RowViewType(private var layoutRes: Int) { } } - if (row is StatRepresentable) { + if (row is StatRow) { itemView.findViewById(R.id.nextArrow)?.isVisible = row.stat.hasEvolutionGraph } diff --git a/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/StatRow.kt b/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/StatRow.kt index ac081a20..7dd06355 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/StatRow.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/StatRow.kt @@ -6,7 +6,7 @@ import net.pokeranalytics.android.ui.view.RowRepresentable import net.pokeranalytics.android.ui.view.RowViewType -class StatRepresentable(stat: Stat, computedStat: ComputedStat?, groupName: String = "") : RowRepresentable { +class StatRow(stat: Stat, computedStat: ComputedStat?, groupName: String = "") : RowRepresentable { var stat: Stat = stat var computedStat: ComputedStat? = computedStat