From 469db3f4636a946adfc228d923f6fb7611a6e1f6 Mon Sep 17 00:00:00 2001 From: "Erik C. Thauvin" Date: Wed, 7 Sep 2016 22:24:40 -0700 Subject: [PATCH] Added isLinear. --- .../tesremoteprogrammer/ProgrammingActivity.kt | 15 ++++++++++----- .../erik/android/tesremoteprogrammer/util/Dtmf.kt | 4 ++-- .../android/tesremoteprogrammer/util/Strings.kt | 4 ++++ 3 files changed, 16 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/net/thauvin/erik/android/tesremoteprogrammer/ProgrammingActivity.kt b/app/src/main/java/net/thauvin/erik/android/tesremoteprogrammer/ProgrammingActivity.kt index f7b2cc2..8274fcf 100644 --- a/app/src/main/java/net/thauvin/erik/android/tesremoteprogrammer/ProgrammingActivity.kt +++ b/app/src/main/java/net/thauvin/erik/android/tesremoteprogrammer/ProgrammingActivity.kt @@ -42,6 +42,7 @@ import net.thauvin.erik.android.tesremoteprogrammer.models.Option import net.thauvin.erik.android.tesremoteprogrammer.models.Params import net.thauvin.erik.android.tesremoteprogrammer.util.Dtmf import net.thauvin.erik.android.tesremoteprogrammer.util.isDKS +import net.thauvin.erik.android.tesremoteprogrammer.util.isLinear import net.thauvin.erik.android.tesremoteprogrammer.widget.ScrollAwareFABBehavior import org.jetbrains.anko.* import org.jetbrains.anko.custom.ankoView @@ -97,22 +98,26 @@ class ProgrammingActivity : AppCompatActivity(), AnkoLogger { val inputFilters: ArrayList = ArrayList() val editText = editText() { - hint = field.hint + hint = field!!.hint if (field.alpha) { - if (params.type.equals(Dtmf.DKS, true)) { + if (params.type.isDKS()) { inputType = InputType.TYPE_CLASS_TEXT or InputType.TYPE_TEXT_FLAG_CAP_CHARACTERS inputFilters.add(AlphaFilter(Dtmf.DKS_EXTRAS)) - } else if (params.type.equals(Dtmf.LINEAR, true)) { + } else if (params.type.isLinear()) { inputType = InputType.TYPE_CLASS_TEXT or InputType.TYPE_TEXT_FLAG_CAP_WORDS inputFilters.add(AlphaFilter(Dtmf.LINEAR_EXTRAS)) } } else { inputType = InputType.TYPE_CLASS_PHONE - inputFilters.add(NumberFilter(field.digits, if (field.alt) params.alt else "")) + inputFilters.add(NumberFilter(field.digits, if (field.alt) params.alt else empty)) if (field.max != -1 && field.min != -1) { inputFilters.add( - MinMaxFilter(field.min, field.max, field.size, params.type.isDKS() || field.zeros)) + MinMaxFilter( + field.min, + field.max, + field.size, + params.type.isDKS() || field.zeros)) } } diff --git a/app/src/main/java/net/thauvin/erik/android/tesremoteprogrammer/util/Dtmf.kt b/app/src/main/java/net/thauvin/erik/android/tesremoteprogrammer/util/Dtmf.kt index b32d6ff..538e384 100644 --- a/app/src/main/java/net/thauvin/erik/android/tesremoteprogrammer/util/Dtmf.kt +++ b/app/src/main/java/net/thauvin/erik/android/tesremoteprogrammer/util/Dtmf.kt @@ -161,9 +161,9 @@ class Dtmf { fields.forEachIndexed { i, field -> replace.add(Pair(DTMF_FIELD.format(i + 1), - if (option.fields[i].alpha && type.equals(DKS, true)) { + if (option.fields[i]!!.alpha && type.isDKS()) { dksAlphaToDigits(field.text.toString(), ack) - } else if (option.fields[i].alpha && type.equals(LINEAR, true)) { + } else if (option.fields[i]!!.alpha && type.isLinear()) { linearAlphaToDigits(field.text.toString()) } else { field.text.toString() diff --git a/app/src/main/java/net/thauvin/erik/android/tesremoteprogrammer/util/Strings.kt b/app/src/main/java/net/thauvin/erik/android/tesremoteprogrammer/util/Strings.kt index 28f724e..1f85fc1 100644 --- a/app/src/main/java/net/thauvin/erik/android/tesremoteprogrammer/util/Strings.kt +++ b/app/src/main/java/net/thauvin/erik/android/tesremoteprogrammer/util/Strings.kt @@ -35,6 +35,10 @@ fun String.isDKS(): Boolean { return this.equals(Dtmf.DKS, true) } +fun String.isLinear(): Boolean { + return this.equals(Dtmf.LINEAR, true) +} + fun String.replaceAll(replace: Array>): String { val result = StringBuilder(this) var offset: Int