diff --git a/app/src/androidTest/java/net/pokeranalytics/android/unitTests/filter/BlindFilterInstrumentedTest.kt b/app/src/androidTest/java/net/pokeranalytics/android/unitTests/filter/BlindFilterInstrumentedTest.kt index c8a52b87..91a4653f 100644 --- a/app/src/androidTest/java/net/pokeranalytics/android/unitTests/filter/BlindFilterInstrumentedTest.kt +++ b/app/src/androidTest/java/net/pokeranalytics/android/unitTests/filter/BlindFilterInstrumentedTest.kt @@ -44,8 +44,7 @@ class BlindFilterInstrumentedTest : BaseFilterInstrumentedUnitTest() { val filter = QueryCondition.BLIND() val blind = QueryCondition.BLIND().apply { - blind = s1.blinds!! - hasDefaultCurrency = false + stringValues = arrayListOf(s1.blinds!!) } blind.filterSectionRow = FilterSectionRow.BLIND @@ -92,12 +91,10 @@ class BlindFilterInstrumentedTest : BaseFilterInstrumentedUnitTest() { val filter = QueryCondition.BLIND() val blind1 = QueryCondition.BLIND().apply { - blind = s1.blinds!! - hasDefaultCurrency = true + stringValues = arrayListOf(s1.blinds!!) } val blind2 = QueryCondition.BLIND().apply { - blind = s2.blinds!! - hasDefaultCurrency = true + stringValues = arrayListOf(s2.blinds!!) } blind1.filterSectionRow = FilterSectionRow.BLIND @@ -146,8 +143,7 @@ class BlindFilterInstrumentedTest : BaseFilterInstrumentedUnitTest() { val filter = QueryCondition.BLIND() val blind = QueryCondition.BLIND().apply { - blind = s3.blinds!! - hasDefaultCurrency = false + stringValues = arrayListOf(s3.blinds!!) } blind.filterSectionRow = FilterSectionRow.BLIND @@ -195,12 +191,10 @@ class BlindFilterInstrumentedTest : BaseFilterInstrumentedUnitTest() { val filter = QueryCondition.BLIND() val blind1 = QueryCondition.BLIND().apply { - blind = s1.blinds!! - hasDefaultCurrency = false + stringValues = arrayListOf(s1.blinds!!) } val blind2 = QueryCondition.BLIND().apply { - blind = s2.blinds!! - hasDefaultCurrency = false + stringValues = arrayListOf(s2.blinds!!) } blind1.filterSectionRow = FilterSectionRow.BLIND diff --git a/app/src/androidTest/java/net/pokeranalytics/android/unitTests/filter/DateFilterInstrumentedUnitTest.kt b/app/src/androidTest/java/net/pokeranalytics/android/unitTests/filter/DateFilterInstrumentedUnitTest.kt index 4c07b937..515d37c5 100644 --- a/app/src/androidTest/java/net/pokeranalytics/android/unitTests/filter/DateFilterInstrumentedUnitTest.kt +++ b/app/src/androidTest/java/net/pokeranalytics/android/unitTests/filter/DateFilterInstrumentedUnitTest.kt @@ -33,7 +33,7 @@ class DateFilterInstrumentedUnitTest : BaseFilterInstrumentedUnitTest() { val filter = QueryCondition.DAY_OF_WEEK() cal.time = s1.startDate - val filterElementRow = QueryCondition.DAY_OF_WEEK().apply { intValue = cal.get(Calendar.DAY_OF_WEEK) } + val filterElementRow = QueryCondition.DAY_OF_WEEK().apply { intValues = arrayListOf(cal.get(Calendar.DAY_OF_WEEK)) } filterElementRow.filterSectionRow = FilterSectionRow.DYNAMIC_DATE val filterElement = FilterCondition(arrayListOf(filterElementRow)) filter.updateValueMap(filterElement) @@ -61,7 +61,7 @@ class DateFilterInstrumentedUnitTest : BaseFilterInstrumentedUnitTest() { val filter = QueryCondition.MONTH() cal.time = s1.startDate - val filterElementRow = QueryCondition.MONTH().apply { intValue = cal.get(Calendar.MONTH) } + val filterElementRow = QueryCondition.MONTH().apply { intValues = arrayListOf(cal.get(Calendar.MONTH)) } filterElementRow.filterSectionRow = FilterSectionRow.DYNAMIC_DATE val filterElement = FilterCondition(arrayListOf(filterElementRow)) filter.updateValueMap(filterElement) @@ -89,7 +89,7 @@ class DateFilterInstrumentedUnitTest : BaseFilterInstrumentedUnitTest() { val filter = QueryCondition.YEAR() cal.time = s1.startDate - val filterElementRow = QueryCondition.YEAR().apply { intValue = cal.get(Calendar.YEAR) } + val filterElementRow = QueryCondition.YEAR().apply { intValues = arrayListOf(cal.get(Calendar.YEAR)) } filterElementRow.filterSectionRow = FilterSectionRow.DYNAMIC_DATE val filterElement = FilterCondition(arrayListOf(filterElementRow)) filter.updateValueMap(filterElement) diff --git a/app/src/main/java/net/pokeranalytics/android/calculus/Report.kt b/app/src/main/java/net/pokeranalytics/android/calculus/Report.kt index cd8d0bcf..eab4fff7 100644 --- a/app/src/main/java/net/pokeranalytics/android/calculus/Report.kt +++ b/app/src/main/java/net/pokeranalytics/android/calculus/Report.kt @@ -69,17 +69,16 @@ class Report(var options: Calculator.Options) { return BarDataSet(entries, statToUse?.name) } - fun multiLineEntries(context: Context): List> { - val entries = mutableListOf>() + fun multiLineEntries(context: Context): List { + val dataSets = mutableListOf() options.displayedStats.forEach { stat -> this._results.forEach { result -> - val dataSet = result.singleLineEntries(stat, context) -// entries.add(entryList) + dataSets.add(result.singleLineEntries(stat, context)) } } - return entries + return dataSets } } @@ -424,7 +423,7 @@ class ComputedResults(group: ComputableGroup, shouldManageMultiGroupProgressValu override val entryTitle: String = this.group.name - override fun formattedValue(stat: Stat, context: Context): TextFormat { + override fun formattedValue(stat: Stat): TextFormat { this.computedStat(stat)?.let { return it.format() } ?: run { diff --git a/app/src/main/java/net/pokeranalytics/android/calculus/Stat.kt b/app/src/main/java/net/pokeranalytics/android/calculus/Stat.kt index bacf6695..3e731206 100644 --- a/app/src/main/java/net/pokeranalytics/android/calculus/Stat.kt +++ b/app/src/main/java/net/pokeranalytics/android/calculus/Stat.kt @@ -1,10 +1,12 @@ package net.pokeranalytics.android.calculus import android.content.Context +import com.github.mikephil.charting.data.Entry import net.pokeranalytics.android.R import net.pokeranalytics.android.exceptions.FormattingException import net.pokeranalytics.android.model.interfaces.Timed import net.pokeranalytics.android.ui.graph.AxisFormatting +import net.pokeranalytics.android.ui.view.LegendView import net.pokeranalytics.android.ui.view.RowRepresentable import net.pokeranalytics.android.ui.view.RowViewType import net.pokeranalytics.android.util.NULL_TEXT @@ -25,7 +27,23 @@ class ObjectIdentifier(var id: String, var clazz: Class) { interface StatEntry { val entryTitle: String - fun formattedValue(stat: Stat, context: Context): TextFormat + fun formattedValue(stat: Stat): TextFormat + + fun legendValues(stat: Stat, entry: Entry) : LegendView.Values { + + return when (stat) { + Stat.NUMBER_OF_SETS, Stat.NUMBER_OF_GAMES -> { + val totalStatValue = stat.format(entry.y.toDouble(), currency = null) + LegendView.Values(this.entryTitle, totalStatValue) + } + else -> { + val entryValue = this.formattedValue(stat) + val totalStatValue = stat.format(entry.y.toDouble(), currency = null) + LegendView.Values(this.entryTitle, entryValue, totalStatValue) + } + } + + } } @@ -239,7 +257,7 @@ enum class Stat : RowRepresentable { val significantIndividualValue: Boolean get() { return when (this) { - WIN_RATIO, NUMBER_OF_SETS, NUMBER_OF_GAMES -> false + WIN_RATIO, NUMBER_OF_SETS, NUMBER_OF_GAMES, STANDARD_DEVIATION -> false else -> true } } diff --git a/app/src/main/java/net/pokeranalytics/android/model/Criteria.kt b/app/src/main/java/net/pokeranalytics/android/model/Criteria.kt index 0ac16179..a264c901 100644 --- a/app/src/main/java/net/pokeranalytics/android/model/Criteria.kt +++ b/app/src/main/java/net/pokeranalytics/android/model/Criteria.kt @@ -93,8 +93,7 @@ sealed class Criteria { query.map { it.blinds?.let { stake -> blinds.add(QueryCondition.BLIND().apply { - blind = stake - hasDefaultCurrency = it.hasDefaultCurrency + stringValues = arrayListOf(stake) }) } } diff --git a/app/src/main/java/net/pokeranalytics/android/model/filter/QueryCondition.kt b/app/src/main/java/net/pokeranalytics/android/model/filter/QueryCondition.kt index cc524dff..86f7ad56 100644 --- a/app/src/main/java/net/pokeranalytics/android/model/filter/QueryCondition.kt +++ b/app/src/main/java/net/pokeranalytics/android/model/filter/QueryCondition.kt @@ -86,7 +86,6 @@ sealed class QueryCondition : FilterElementRow { } interface asListOfDouble { var doubleValues : ArrayList } - interface asListOfBoolean { var booleanValues : ArrayList } interface asListOfString { var stringValues : ArrayList } interface asDateValue { var dateValue: Date @@ -147,7 +146,7 @@ sealed class QueryCondition : FilterElementRow { return when (this) { is StaticDataQueryCondition -> label() is QueryDataCondition<*> -> label() - is BLIND -> this.blind!! + is BLIND -> label() else -> baseId } } @@ -248,12 +247,20 @@ sealed class QueryCondition : FilterElementRow { } } - class BLIND: QueryCondition(), asListOfString, asListOfBoolean { - var blind: String? = null - var hasDefaultCurrency: Boolean = false - override var booleanValues = ArrayList() + class BLIND: QueryCondition(), asListOfString { override var stringValues = ArrayList() - } + + fun label(): String { + val completeLabel = when (stringValues.size) { + 0 -> return NULL_TEXT + 1,2 -> { + return stringValues.map { it }.joinToString(", ") + } + else -> "${stringValues.size} $baseId" + } + return completeLabel + } + } class LAST_GAMES: SingleValueQueryCondition() class LAST_SESSIONS: SingleValueQueryCondition() @@ -355,31 +362,9 @@ sealed class QueryCondition : FilterElementRow { } realmQuery } - is BLIND -> { - val blinds: Array = stringValues.toTypedArray() - val hasDefaultCurrency: Array = booleanValues.toTypedArray() - //realmQuery.`in`(fieldName, blinds) - blinds.forEachIndexed { index, s -> - val isUsingDefaultCurrency = hasDefaultCurrency[index] - realmQuery.beginGroup() - if (isUsingDefaultCurrency) { - realmQuery.endsWith(fieldName, s) - .and() - .isNull("bankroll.currency.code") - } else { - realmQuery.equalTo(fieldName, s) - } - .endGroup() - if (index < blinds.size - 1) { - realmQuery.or() - } - } - realmQuery - } + is BLIND -> realmQuery.`in`(fieldName, stringValues.toTypedArray()) is QueryDataCondition<*> -> realmQuery.`in`(fieldName, stringValues.toTypedArray()) - is StaticDataQueryCondition -> { - realmQuery.`in`(fieldName, intValues.toTypedArray()) - } + is StaticDataQueryCondition -> realmQuery.`in`(fieldName, intValues.toTypedArray()) is DateQuery -> { if (this is Less) { realmQuery.lessThanOrEqualTo(fieldName, dateValue) @@ -444,10 +429,7 @@ sealed class QueryCondition : FilterElementRow { is asListOfDouble -> filterCondition.doubleValues.map { doubleValues.add(it) } is QueryDataCondition<*> -> filterCondition.ids.map { stringValues.add(it) } is DateQuery -> dateValue = filterCondition.date - is BLIND -> { - filterCondition.blinds.map { stringValues.add(it) } - filterCondition.hasDefaultCurrency.map { booleanValues.add(it) } - } + is BLIND -> filterCondition.blinds.map { stringValues.add(it) } } } diff --git a/app/src/main/java/net/pokeranalytics/android/model/migrations/PokerAnalyticsMigration.kt b/app/src/main/java/net/pokeranalytics/android/model/migrations/PokerAnalyticsMigration.kt index 8336fd41..c9d63922 100644 --- a/app/src/main/java/net/pokeranalytics/android/model/migrations/PokerAnalyticsMigration.kt +++ b/app/src/main/java/net/pokeranalytics/android/model/migrations/PokerAnalyticsMigration.kt @@ -38,6 +38,7 @@ class PokerAnalyticsMigration : RealmMigration { schema.rename("FilterElement", "FilterCondition") schema.get("Filter")?.let { it.renameField("filterElements", "filterConditions") + it.removeField("entityType") } schema.get("SessionSet")?.let { it.addField("id", String::class.java).setRequired("id", true) @@ -55,10 +56,6 @@ class PokerAnalyticsMigration : RealmMigration { it.addField("blinds", String::class.java) } - schema.get("FilterCondition")?.let { - it.addRealmListField("booleanValues", Boolean::class.java).setNullable("booleanValues", true) - } - schema.get("FilterCondition")?.let { it.removeField("blindValues") } diff --git a/app/src/main/java/net/pokeranalytics/android/model/realm/Currency.kt b/app/src/main/java/net/pokeranalytics/android/model/realm/Currency.kt index 5dc19015..304f3a2b 100644 --- a/app/src/main/java/net/pokeranalytics/android/model/realm/Currency.kt +++ b/app/src/main/java/net/pokeranalytics/android/model/realm/Currency.kt @@ -3,6 +3,7 @@ package net.pokeranalytics.android.model.realm import io.realm.RealmObject import io.realm.annotations.Ignore import io.realm.annotations.PrimaryKey +import net.pokeranalytics.android.util.UserDefaults import java.util.* open class Currency : RealmObject() { @@ -42,4 +43,10 @@ open class Currency : RealmObject() { } } + + fun hasMainCurrencyCode() : Boolean { + this.code?.let { return it == UserDefaults.currency.currencyCode } + return false + } + } \ No newline at end of file diff --git a/app/src/main/java/net/pokeranalytics/android/model/realm/Filter.kt b/app/src/main/java/net/pokeranalytics/android/model/realm/Filter.kt index 106831ba..06e91e6d 100644 --- a/app/src/main/java/net/pokeranalytics/android/model/realm/Filter.kt +++ b/app/src/main/java/net/pokeranalytics/android/model/realm/Filter.kt @@ -20,13 +20,6 @@ import java.util.* */ open class Filter : RealmObject() { - private var entityType: Int? = Entity.SESSION.ordinal - - private enum class Entity { - SESSION, - ; - } - companion object { // Create a new instance diff --git a/app/src/main/java/net/pokeranalytics/android/model/realm/FilterCondition.kt b/app/src/main/java/net/pokeranalytics/android/model/realm/FilterCondition.kt index 7fd481ed..0d86f3f3 100644 --- a/app/src/main/java/net/pokeranalytics/android/model/realm/FilterCondition.kt +++ b/app/src/main/java/net/pokeranalytics/android/model/realm/FilterCondition.kt @@ -21,20 +21,6 @@ open class FilterCondition() : RealmObject() { is QueryCondition.asDateValue -> { this.dateValue = row.dateValue } - is QueryCondition.BLIND -> { - //TODO refactor raz - this.stringValues = RealmList().apply { - this.addAll(filterElementRows.map { - (it as QueryCondition.BLIND).blind - - }) - } - this.booleanValues = RealmList().apply { - this.addAll(filterElementRows.map { - (it as QueryCondition.BLIND).hasDefaultCurrency - }) - } - } is QueryCondition.asListOfString -> { this.stringValues = RealmList().apply { this.addAll(filterElementRows.map { @@ -64,7 +50,6 @@ open class FilterCondition() : RealmObject() { private var numericValues: RealmList? = null private var dateValue: Date? = null private var stringValues: RealmList? = null - private var booleanValues: RealmList? = null val ids: Array get() = stringValues?.toTypedArray() ?: throw PokerAnalyticsException.FilterElementExpectedValueMissing @@ -72,26 +57,9 @@ open class FilterCondition() : RealmObject() { val blinds: Array get() = stringValues?.toTypedArray() ?: throw PokerAnalyticsException.FilterElementExpectedValueMissing - val hasDefaultCurrency: Array - get() = booleanValues?.toTypedArray() ?: throw PokerAnalyticsException.FilterElementExpectedValueMissing - val date: Date get() = dateValue ?: throw PokerAnalyticsException.FilterElementExpectedValueMissing - - val intValues: Array - get() = numericValues?.map { - println("test double: $it") - it.toInt() - }?.toTypedArray() ?: throw PokerAnalyticsException.FilterElementExpectedValueMissing - - - val doubleValue: Double - get() = numericValues?.first() ?: throw PokerAnalyticsException.FilterElementExpectedValueMissing - - val intValue: Int - get() = numericValues?.first()?.toInt() ?: throw PokerAnalyticsException.FilterElementExpectedValueMissing - val doubleValues: Array get() = numericValues?.toTypedArray() ?: throw PokerAnalyticsException.FilterElementExpectedValueMissing } 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 9e99cfcc..0b1e53bb 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 @@ -1,6 +1,7 @@ package net.pokeranalytics.android.model.realm import android.content.Context +import com.github.mikephil.charting.data.Entry import io.realm.Realm import io.realm.RealmList import io.realm.RealmObject @@ -26,6 +27,7 @@ import net.pokeranalytics.android.model.interfaces.* import net.pokeranalytics.android.model.utils.SessionSetManager import net.pokeranalytics.android.ui.adapter.StaticRowRepresentableDataSource import net.pokeranalytics.android.ui.adapter.UnmanagedRowRepresentableException +import net.pokeranalytics.android.ui.view.LegendView import net.pokeranalytics.android.ui.view.RowRepresentable import net.pokeranalytics.android.ui.view.RowRepresentableEditDescriptor import net.pokeranalytics.android.ui.view.RowViewType @@ -489,11 +491,6 @@ open class Session : RealmObject(), Savable, Editable, StaticRowRepresentableDat return NULL_TEXT } - val hasDefaultCurrency: Boolean - get() { - return bankroll?.currency?.code == null - } - val currency: Currency get() { return bankroll?.currency?.code?.let { @@ -921,7 +918,7 @@ open class Session : RealmObject(), Savable, Editable, StaticRowRepresentableDat return DateFormat.getDateInstance(DateFormat.SHORT).format(this.startDate) } - override fun formattedValue(stat: Stat, context: Context): TextFormat { + override fun formattedValue(stat: Stat): TextFormat { this.result?.let { result -> @@ -961,6 +958,30 @@ open class Session : RealmObject(), Savable, Editable, StaticRowRepresentableDat } + override fun legendValues(stat: Stat, entry: Entry) : LegendView.Values { + + return when (stat) { + Stat.STANDARD_DEVIATION -> { + val left = this.formattedValue(Stat.NET_RESULT) + + val hasMainCurrencyCode = this.bankroll?.currency?.hasMainCurrencyCode() ?: false + var right: TextFormat? = null + + if (!hasMainCurrencyCode) { + this.computableResult?.ratedNet?.let { ratedNet -> + right = Stat.NET_RESULT.format(ratedNet) + } + } + + return LegendView.Values(this.entryTitle, left, right) + + } else -> { + return super.legendValues(stat, entry) + } + } + + } + // Timed override val objectIdentifier: ObjectIdentifier diff --git a/app/src/main/java/net/pokeranalytics/android/model/realm/SessionSet.kt b/app/src/main/java/net/pokeranalytics/android/model/realm/SessionSet.kt index e2777e86..f5aa245f 100644 --- a/app/src/main/java/net/pokeranalytics/android/model/realm/SessionSet.kt +++ b/app/src/main/java/net/pokeranalytics/android/model/realm/SessionSet.kt @@ -1,6 +1,5 @@ package net.pokeranalytics.android.model.realm -import android.content.Context import io.realm.Realm import io.realm.RealmObject import io.realm.RealmResults @@ -118,7 +117,7 @@ open class SessionSet() : RealmObject(), Timed, Filterable { return DateFormat.getDateInstance(DateFormat.SHORT).format(this.startDate) } - override fun formattedValue(stat: Stat, context: Context) : TextFormat { + override fun formattedValue(stat: Stat) : TextFormat { return when (stat) { Stat.NET_RESULT, Stat.AVERAGE -> stat.format(this.ratedNet, currency = null) Stat.DURATION, Stat.AVERAGE_DURATION -> stat.format(this.netDuration.toDouble(), currency = null) diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/GraphFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/GraphFragment.kt index 88e569dc..8a2665c0 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/GraphFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/GraphFragment.kt @@ -153,11 +153,13 @@ class GraphFragment : PokerAnalyticsFragment(), OnChartValueSelectedListener { } statEntry?.let { - val formattedDate = it.entryTitle - val entryValue = it.formattedValue(this.stat, requireContext()) - val totalStatValue = this.stat.format(entry.y.toDouble(), currency = null) + this.legendView.setItemData(it.legendValues(stat, entry)) - this.legendView.setItemData(this.stat, formattedDate, entryValue, totalStatValue) +// val formattedDate = it.entryTitle +// val entryValue = it.formattedValue(this.stat, requireContext()) +// val totalStatValue = this.stat.format(entry.y.toDouble(), currency = null) +// +// this.legendView.setItemData(this.stat, formattedDate, entryValue, totalStatValue) } } diff --git a/app/src/main/java/net/pokeranalytics/android/ui/graph/LargeNumberFormatter.kt b/app/src/main/java/net/pokeranalytics/android/ui/graph/AxisFormatter.kt similarity index 100% rename from app/src/main/java/net/pokeranalytics/android/ui/graph/LargeNumberFormatter.kt rename to app/src/main/java/net/pokeranalytics/android/ui/graph/AxisFormatter.kt diff --git a/app/src/main/java/net/pokeranalytics/android/ui/view/LegendView.kt b/app/src/main/java/net/pokeranalytics/android/ui/view/LegendView.kt index f2cce401..bbd1f847 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/view/LegendView.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/view/LegendView.kt @@ -17,6 +17,8 @@ import net.pokeranalytics.android.ui.extensions.setTextFormat */ class LegendView : FrameLayout { + class Values(var title: String, var leftFormat: TextFormat, var rightFormat: TextFormat? = null) + private lateinit var legendLayout: ConstraintLayout /** @@ -66,17 +68,19 @@ class LegendView : FrameLayout { /** * */ - fun setItemData(stat: Stat, title: String, statFormat1: TextFormat, statFormat2: TextFormat) { + fun setItemData(values: Values) { - this.title.text = title + this.title.text = values.title - if (stat.significantIndividualValue) { - this.stat1Value.setTextFormat(statFormat1, context) - this.stat2Value.setTextFormat(statFormat2, context) - } else { - this.stat1Value.setTextFormat(statFormat2, context) + this.stat1Value.setTextFormat(values.leftFormat, context) + values.rightFormat?.let { + this.stat2Value.setTextFormat(it, context) } + val showRightStat = values.rightFormat != null + this.stat2Name.isVisible = showRightStat + this.stat2Value.isVisible = showRightStat + } } \ No newline at end of file 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 f832bf98..a76a4d83 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 @@ -89,9 +89,9 @@ enum class RowViewType(private var layoutRes: Int) { return when (this) { // Row View Holder - HEADER_TITLE, HEADER_TITLE_VALUE, HEADER_TITLE_AMOUNT, HEADER_TITLE_AMOUNT_BIG, - LOCATION_TITLE, INFO, - TITLE, TITLE_ARROW, TITLE_ICON_ARROW, TITLE_VALUE, TITLE_VALUE_ARROW, TITLE_GRID, TITLE_SWITCH, TITLE_CHECK, TITLE_VALUE_CHECK, + HEADER_TITLE, HEADER_TITLE_VALUE, HEADER_TITLE_AMOUNT, HEADER_TITLE_AMOUNT_BIG, LOCATION_TITLE, + INFO, TITLE, TITLE_ARROW, TITLE_ICON_ARROW, TITLE_VALUE, TITLE_VALUE_ARROW, TITLE_GRID, + TITLE_SWITCH, TITLE_CHECK, TITLE_VALUE_CHECK, DATA, BOTTOM_SHEET_DATA, LOADER -> RowViewHolder(layout) // Row Session @@ -297,8 +297,6 @@ enum class RowViewType(private var layoutRes: Int) { } } - - // Listener val listener = View.OnClickListener { adapter.delegate?.onRowSelected(position, row) @@ -307,7 +305,6 @@ enum class RowViewType(private var layoutRes: Int) { } } - /** * Display a stat */ diff --git a/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/FilterElementRow.kt b/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/FilterElementRow.kt index f0a5f15b..013e1b34 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/FilterElementRow.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/FilterElementRow.kt @@ -1,30 +1,15 @@ package net.pokeranalytics.android.ui.view.rowrepresentable -import android.content.Context import android.text.InputType import net.pokeranalytics.android.R import net.pokeranalytics.android.model.filter.QueryCondition -import net.pokeranalytics.android.model.realm.FilterCondition import net.pokeranalytics.android.ui.fragment.components.bottomsheet.BottomSheetType import net.pokeranalytics.android.ui.view.RowRepresentable import net.pokeranalytics.android.ui.view.RowRepresentableEditDescriptor import net.pokeranalytics.android.ui.view.RowViewType -import java.text.DateFormatSymbols import java.util.* interface FilterElementRow : RowRepresentable { - fun contains(filterConditions: List): Boolean { - return when (this) { - is QueryCondition.StaticDataQueryCondition -> filterConditions.any { - it.intValues.contains(this.intValues.first()) - } - is QueryCondition.QueryDataCondition<*>-> filterConditions.any { - it.ids.contains(this.dataObject?.id) - } - else -> true - } - } - override val resId: Int? get() { return when (this) {