From: Peter Edberg Date: Fri, 16 Feb 2018 19:17:27 +0000 (+0000) Subject: ICU-12740 getFieldDisplayName J initial implementation & tests; TODO: C++ tests,... X-Git-Tag: release-61-rc~81 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=1d3a9958dfbbbff41a72b9f57a784230d8553350;p=icu ICU-12740 getFieldDisplayName J initial implementation & tests; TODO: C++ tests, impl cleanup? X-SVN-Rev: 40940 --- diff --git a/icu4j/main/classes/core/src/com/ibm/icu/text/DateTimePatternGenerator.java b/icu4j/main/classes/core/src/com/ibm/icu/text/DateTimePatternGenerator.java index 77f24bf980c..52a9ae819c8 100644 --- a/icu4j/main/classes/core/src/com/ibm/icu/text/DateTimePatternGenerator.java +++ b/icu4j/main/classes/core/src/com/ibm/icu/text/DateTimePatternGenerator.java @@ -217,13 +217,22 @@ public class DateTimePatternGenerator implements Freezable= 0) { + fieldDisplayNames[field][width.ordinal()] = value; + } + } + + /** + * The general interface to get a display name for a particular date/time field, + * in one of several possible display widths. + * + * @param field The field type, such as ERA. + * @param width The desired DisplayWidth, such as DisplayWidth.ABBREVIATED. + * @return. The display name for the field + * @draft ICU 61 + */ + public String getFieldDisplayName(int field, DisplayWidth width) { + if (field >= TYPE_LIMIT || field < 0) { + return ""; + } + return fieldDisplayNames[field][width.ordinal()]; } /** @@ -1294,7 +1391,7 @@ public class DateTimePatternGenerator implements Freezable) skeleton2pattern.clone(); result.basePattern_pattern = (TreeMap) basePattern_pattern.clone(); result.appendItemFormats = appendItemFormats.clone(); - result.appendItemNames = appendItemNames.clone(); + result.fieldDisplayNames = fieldDisplayNames.clone(); result.current = new DateTimeMatcher(); result.fp = new FormatParser(); result._distanceInfo = new DistanceInfo(); @@ -1796,7 +1893,7 @@ public class DateTimePatternGenerator implements Freezable