X-Git-Url: https://git.ktnx.net/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fmodel%2FTemplateDetailsItem.java;h=2eb3346df313e6c9ae040e84e05aa594d1856064;hb=55f4f1b5f101d0f9874fe3d3406d53c6df931a40;hp=84e83d54a314a10275554b9322fd08ebceee4914;hpb=7976a12a55de234c277d593467b94395422fbc30;p=mobile-ledger.git diff --git a/app/src/main/java/net/ktnx/mobileledger/model/TemplateDetailsItem.java b/app/src/main/java/net/ktnx/mobileledger/model/TemplateDetailsItem.java index 84e83d54..2eb3346d 100644 --- a/app/src/main/java/net/ktnx/mobileledger/model/TemplateDetailsItem.java +++ b/app/src/main/java/net/ktnx/mobileledger/model/TemplateDetailsItem.java @@ -98,6 +98,8 @@ abstract public class TemplateDetailsItem { else header.setDateYearMatchGroup(ph.getDateYearMatchGroup()); + header.setFallback(ph.isFallback()); + return header; } else if (p instanceof TemplateAccount) { @@ -446,6 +448,7 @@ abstract public class TemplateDetailsItem { private PossiblyMatchedValue dateMonth = PossiblyMatchedValue.withLiteralInt(null); private PossiblyMatchedValue dateDay = PossiblyMatchedValue.withLiteralInt(null); private SpannableString testMatch; + private boolean isFallback; private Header() { super(Type.HEADER); } @@ -463,12 +466,20 @@ abstract public class TemplateDetailsItem { dateYear = new PossiblyMatchedValue<>(origin.dateYear); dateMonth = new PossiblyMatchedValue<>(origin.dateMonth); dateDay = new PossiblyMatchedValue<>(origin.dateDay); + + isFallback = origin.isFallback; } private static StyleSpan capturedSpan() { return new StyleSpan(Typeface.BOLD); } private static UnderlineSpan matchedSpan() { return new UnderlineSpan(); } private static ForegroundColorSpan notMatchedSpan() { return new ForegroundColorSpan(Color.GRAY); } + public boolean isFallback() { + return isFallback; + } + public void setFallback(boolean fallback) { + this.isFallback = fallback; + } public String getName() { return name; } @@ -603,7 +614,7 @@ abstract public class TemplateDetailsItem { return Misc.equalStrings(name, o.name) && Misc.equalStrings(pattern, o.pattern) && Misc.equalStrings(testText, o.testText) && Misc.equalStrings(patternError, o.patternError) && - Objects.equals(testMatch, o.testMatch); + Objects.equals(testMatch, o.testMatch) && isFallback == o.isFallback; } public String getMatchGroupText(int group) { if (compiledPattern != null && testText != null) { @@ -673,6 +684,8 @@ abstract public class TemplateDetailsItem { else result.setDateDayMatchGroup(dateDay.getMatchGroup()); + result.setFallback(isFallback); + return result; } public SpannableString getTestMatch() {