Adds QueryCondition name fine tuning

blinds
Laurent 5 years ago
parent f11b4c94ab
commit 6aab1c3a3b
  1. 2
      app/src/main/java/net/pokeranalytics/android/model/filter/Query.kt
  2. 54
      app/src/main/java/net/pokeranalytics/android/model/filter/QueryCondition.kt
  3. 4
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/FilterableFragment.kt
  4. 3
      app/src/main/res/values-de/strings.xml
  5. 3
      app/src/main/res/values-es/strings.xml
  6. 3
      app/src/main/res/values-fr/strings.xml
  7. 3
      app/src/main/res/values-hi/strings.xml
  8. 3
      app/src/main/res/values-it/strings.xml
  9. 3
      app/src/main/res/values-ja/strings.xml
  10. 3
      app/src/main/res/values-pt/strings.xml
  11. 3
      app/src/main/res/values-ru/strings.xml
  12. 3
      app/src/main/res/values-zh/strings.xml
  13. 3
      app/src/main/res/values/strings.xml

@ -55,7 +55,7 @@ class Query {
fun getName(context: Context): String { fun getName(context: Context): String {
return when (this._conditions.size) { return when (this._conditions.size) {
0 -> context.getString(R.string.all_sessions) // @todo should be dependant of the underlying type, ie. Session, Transaction... 0 -> context.getString(R.string.all_sessions) // @todo should be dependant of the underlying type, ie. Session, Transaction...
else -> this._conditions.joinToString(" + ") { it.getDisplayName(context) } else -> this._conditions.joinToString(" + ") { it.getDisplayNameWithValues(context) }
} }
} }

@ -140,6 +140,17 @@ sealed class QueryCondition : RowRepresentable {
abstract var operator: Operator abstract var operator: Operator
override fun getDisplayName(context: Context): String {
this.resId?.let {
return context.getString(it)
}
return baseId
}
open fun getDisplayNameWithValues(context: Context): String {
return getDisplayName(context)
}
abstract class ListOfValues<T> : QueryCondition(), Comparable<ListOfValues<T>> where T : Comparable<T> { abstract class ListOfValues<T> : QueryCondition(), Comparable<ListOfValues<T>> where T : Comparable<T> {
abstract var listOfValues: MutableList<T> abstract var listOfValues: MutableList<T>
@ -149,6 +160,10 @@ sealed class QueryCondition : RowRepresentable {
return getDisplayName(context) return getDisplayName(context)
} }
override fun getDisplayNameWithValues(context: Context): String {
return this.getDisplayName(context, this.listOfValues)
}
private fun getDisplayName(context: Context, values: List<T>): String { private fun getDisplayName(context: Context, values: List<T>): String {
val prefix = this.resId?.let { val prefix = this.resId?.let {
context.getString(it) + " " context.getString(it) + " "
@ -176,28 +191,37 @@ sealed class QueryCondition : RowRepresentable {
} }
abstract class SingleValue<T>(value: T) : QueryCondition() where T : Comparable<T> { abstract class SingleValue<T>(value: T) : QueryCondition() where T : Comparable<T> {
// override var listOfValues = mutableListOf<T>()
var singleValue: T = value var singleValue: T = value
abstract fun labelForValue(value: T, context: Context): String abstract fun labelForValue(value: T, context: Context): String
override fun getDisplayName(context: Context): String { override fun getDisplayName(context: Context): String {
return getDisplayName(context, singleValue) return this.resId?.let {
context.getString(it)
} ?: ""
// return getDisplayName(context, this.singleValue)
} }
fun getDisplayName(context: Context, value: T): String { override fun getDisplayNameWithValues(context: Context): String {
return this.getDisplayName(context, this.singleValue)
}
open fun getDisplayName(context: Context, value: T): String {
val prefix = this.resId?.let { val prefix = this.resId?.let {
context.getString(it, value.toString()) // + " " context.getString(it)
} ?: "" } ?: ""
return prefix // + labelForValue(value, context) return prefix + labelForValue(value, context)
} }
} }
abstract class ListOfDouble : ListOfValues<Double>() { abstract class ListOfDouble : ListOfValues<Double>() {
open var sign: Int = 1 open var sign: Int = 1
override var operator: Operator = Operator.ANY override var operator: Operator = Operator.ANY
override var listOfValues = mutableListOf<Double>() override var listOfValues = mutableListOf<Double>()
override fun updateValueBy(filterCondition: FilterCondition) { override fun updateValueBy(filterCondition: FilterCondition) {
super.updateValueBy(filterCondition) super.updateValueBy(filterCondition)
listOfValues = filterCondition.getValues() listOfValues = filterCondition.getValues()
@ -261,13 +285,6 @@ sealed class QueryCondition : RowRepresentable {
} }
override fun getDisplayName(context: Context): String {
this.resId?.let {
return context.getString(it)
}
return baseId
}
// override var filterSectionRow: FilterSectionRow = FilterSectionRow.CashOrTournament // override var filterSectionRow: FilterSectionRow = FilterSectionRow.CashOrTournament
abstract class QueryDataCondition<T : NameManageable> : ListOfString() { abstract class QueryDataCondition<T : NameManageable> : ListOfString() {
@ -562,15 +579,9 @@ sealed class QueryCondition : RowRepresentable {
override var operator = Operator.EQUALS override var operator = Operator.EQUALS
override val viewType: Int = RowViewType.TITLE_VALUE_CHECK.ordinal override val viewType: Int = RowViewType.TITLE_VALUE_CHECK.ordinal
// override fun labelForValue(value: Int, context: Context): String { override fun getDisplayNameWithValues(context: Context): String {
// return value.toString() return context.getString(R.string.period_in_days_with_value, this.singleValue.toString())
// } }
// override fun entityName(context: Context): String {
// return this.resId?.let {
// " " + context.getString(it)
// } ?: ""
// }
} }
class Duration(value: Int) : SingleInt(value) { class Duration(value: Int) : SingleInt(value) {
@ -892,7 +903,6 @@ sealed class QueryCondition : RowRepresentable {
} }
} }
override val viewType: Int override val viewType: Int
get() { get() {
return when (this) { return when (this) {

@ -133,9 +133,7 @@ open class FilterableFragment : RealmFragment(),
viewGroup, viewGroup,
false false
) )
layoutCurrentFilter.findViewById<TextView>(R.id.filterName)?.text = filter.getDisplayName( layoutCurrentFilter.findViewById<TextView>(R.id.filterName)?.text = filter.getDisplayName(requireContext())
requireContext()
)
layoutCurrentFilter.findViewById<ImageView>(R.id.deselectFilter).setOnClickListener { layoutCurrentFilter.findViewById<ImageView>(R.id.deselectFilter).setOnClickListener {
saveFilter(requireContext(), "") saveFilter(requireContext(), "")
} }

@ -429,7 +429,8 @@
<string name="paused_session_state">Pause</string> <string name="paused_session_state">Pause</string>
<string name="payment_successful">Zahlung erfolgt</string> <string name="payment_successful">Zahlung erfolgt</string>
<string name="period">Dauer</string> <string name="period">Dauer</string>
<string name="period_in_days">Vergangene %1$s Tagen</string> <string name="period_in_days">Vergangene Tagen</string>
<string name="period_in_days_with_value">Vergangene %1$s Tagen</string>
<string name="pincode_activated">ja</string> <string name="pincode_activated">ja</string>
<string name="pincode_desactivated">nein</string> <string name="pincode_desactivated">nein</string>
<string name="player">Spieler</string> <string name="player">Spieler</string>

@ -432,7 +432,8 @@ La aplicación funciona con una suscripción anual para uso ilimitado, pero obti
<string name="paused_session_state">Pausa</string> <string name="paused_session_state">Pausa</string>
<string name="payment_successful">Pago realizado</string> <string name="payment_successful">Pago realizado</string>
<string name="period">Duración</string> <string name="period">Duración</string>
<string name="period_in_days">Últimos %1$s días</string> <string name="period_in_days">Últimos días</string>
<string name="period_in_days_with_value">Últimos %1$s días</string>
<string name="pincode_activated"></string> <string name="pincode_activated"></string>
<string name="pincode_desactivated">no</string> <string name="pincode_desactivated">no</string>
<string name="place">Lugar</string> <string name="place">Lugar</string>

@ -429,7 +429,8 @@
<string name="paused_session_state">Pause</string> <string name="paused_session_state">Pause</string>
<string name="payment_successful">Paiement effectué</string> <string name="payment_successful">Paiement effectué</string>
<string name="period">Durée</string> <string name="period">Durée</string>
<string name="period_in_days">%1$s derniers jours</string> <string name="period_in_days">Jours précédents</string>
<string name="period_in_days_with_value">%1$s derniers jours</string>
<string name="pincode_activated">oui</string> <string name="pincode_activated">oui</string>
<string name="pincode_desactivated">non</string> <string name="pincode_desactivated">non</string>
<string name="place">Place</string> <string name="place">Place</string>

@ -427,7 +427,8 @@
<string name="paused_session_state">ि</string> <string name="paused_session_state">ि</string>
<string name="payment_successful">गतन सफल</string> <string name="payment_successful">गतन सफल</string>
<string name="period">अवधि</string> <string name="period">अवधि</string>
<string name="period_in_days">िछल %1$s दि</string> <string name="period_in_days">िछलि</string>
<string name="period_in_days_with_value">िछल %1$s दि</string>
<string name="pincode_activated"></string> <string name="pincode_activated"></string>
<string name="pincode_desactivated">नह</string> <string name="pincode_desactivated">नह</string>
<string name="place"></string> <string name="place"></string>

@ -427,7 +427,8 @@
<string name="paused_session_state">Pausa</string> <string name="paused_session_state">Pausa</string>
<string name="payment_successful">Pagamento effettuato</string> <string name="payment_successful">Pagamento effettuato</string>
<string name="period">Durata</string> <string name="period">Durata</string>
<string name="period_in_days">Giorni %1$s passati</string> <string name="period_in_days">Giorni passati</string>
<string name="period_in_days_with_value">Giorni %1$s passati</string>
<string name="pincode_activated"></string> <string name="pincode_activated"></string>
<string name="pincode_desactivated">no</string> <string name="pincode_desactivated">no</string>
<string name="place">Luogo</string> <string name="place">Luogo</string>

@ -431,7 +431,8 @@
<string name="paused_session_state">ブレーク</string> <string name="paused_session_state">ブレーク</string>
<string name="payment_successful">支払い成功</string> <string name="payment_successful">支払い成功</string>
<string name="period">期間</string> <string name="period">期間</string>
<string name="period_in_days">経過%1$s日数</string> <string name="period_in_days">経過日数</string>
<string name="period_in_days_with_value">経過%1$s日数</string>
<string name="pincode_activated">はい</string> <string name="pincode_activated">はい</string>
<string name="pincode_desactivated">いいえ</string> <string name="pincode_desactivated">いいえ</string>
<string name="place">プレース</string> <string name="place">プレース</string>

@ -427,7 +427,8 @@
<string name="paused_session_state">Intervalo</string> <string name="paused_session_state">Intervalo</string>
<string name="payment_successful">Pagamento realizado com sucesso!</string> <string name="payment_successful">Pagamento realizado com sucesso!</string>
<string name="period">Duração</string> <string name="period">Duração</string>
<string name="period_in_days">Últimos %1$s dias</string> <string name="period_in_days">Últimos dias</string>
<string name="period_in_days_with_value">Últimos %1$s dias</string>
<string name="pincode_activated">sim</string> <string name="pincode_activated">sim</string>
<string name="pincode_desactivated">não</string> <string name="pincode_desactivated">não</string>
<string name="place">Lugar</string> <string name="place">Lugar</string>

@ -430,7 +430,8 @@
<string name="paused_session_state">Перерыв</string> <string name="paused_session_state">Перерыв</string>
<string name="payment_successful">Платёж успешен</string> <string name="payment_successful">Платёж успешен</string>
<string name="period">Продолжительность</string> <string name="period">Продолжительность</string>
<string name="period_in_days">Прошедшие %1$s дни</string> <string name="period_in_days">Прошедшие дни</string>
<string name="period_in_days_with_value">Прошедшие %1$s дни</string>
<string name="pincode_activated">Да</string> <string name="pincode_activated">Да</string>
<string name="pincode_desactivated">не</string> <string name="pincode_desactivated">не</string>
<string name="place">Место</string> <string name="place">Место</string>

@ -400,7 +400,8 @@
<string name="paused_session_state">休息</string> <string name="paused_session_state">休息</string>
<string name="payment_successful">支付成功</string> <string name="payment_successful">支付成功</string>
<string name="period">时长</string> <string name="period">时长</string>
<string name="period_in_days">已过%1$s天数</string> <string name="period_in_days">已过天数</string>
<string name="period_in_days_with_value">已过%1$s天数</string>
<string name="pincode_activated"></string> <string name="pincode_activated"></string>
<string name="pincode_desactivated"></string> <string name="pincode_desactivated"></string>
<string name="player">玩家</string> <string name="player">玩家</string>

@ -424,7 +424,8 @@
<string name="paused_session_state">Break</string> <string name="paused_session_state">Break</string>
<string name="payment_successful">Payment successful</string> <string name="payment_successful">Payment successful</string>
<string name="period">Duration</string> <string name="period">Duration</string>
<string name="period_in_days">Past %1$s days</string> <string name="period_in_days">Past days</string>
<string name="period_in_days_with_value">Past %1$s days</string>
<string name="pincode_activated">yes</string> <string name="pincode_activated">yes</string>
<string name="pincode_desactivated">no</string> <string name="pincode_desactivated">no</string>
<string name="place">Place</string> <string name="place">Place</string>

Loading…
Cancel
Save