You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by fa...@apache.org on 2018/11/13 16:08:11 UTC
svn commit: r1846520 - in /poi/trunk/src:
java/org/apache/poi/ss/format/CellFormatPart.java
ooxml/testcases/org/apache/poi/ss/format/TestCellFormatPart.java
Author: fanningpj
Date: Tue Nov 13 16:08:11 2018
New Revision: 1846520
URL: http://svn.apache.org/viewvc?rev=1846520&view=rev
Log:
[bug-62908] populate NamedColors
Modified:
poi/trunk/src/java/org/apache/poi/ss/format/CellFormatPart.java
poi/trunk/src/ooxml/testcases/org/apache/poi/ss/format/TestCellFormatPart.java
Modified: poi/trunk/src/java/org/apache/poi/ss/format/CellFormatPart.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ss/format/CellFormatPart.java?rev=1846520&r1=1846519&r2=1846520&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/ss/format/CellFormatPart.java (original)
+++ poi/trunk/src/java/org/apache/poi/ss/format/CellFormatPart.java Tue Nov 13 16:08:11 2018
@@ -54,26 +54,22 @@ public class CellFormatPart {
private final CellFormatter format;
private final CellFormatType type;
- private static final Map<String, Color> NAMED_COLORS;
+ static final Map<String, Color> NAMED_COLORS;
static {
NAMED_COLORS = new TreeMap<>(
String.CASE_INSENSITIVE_ORDER);
- Map<Integer,HSSFColor> colors = HSSFColor.getIndexHash();
- for (HSSFColor color : colors.values()) {
- Class<? extends HSSFColor> type = color.getClass();
- String name = type.getSimpleName();
- if (name.equals(name.toUpperCase(Locale.ROOT))) {
- short[] rgb = color.getTriplet();
- Color c = new Color(rgb[0], rgb[1], rgb[2]);
- NAMED_COLORS.put(name, c);
- if (name.indexOf('_') > 0)
- NAMED_COLORS.put(name.replace('_', ' '), c);
- if (name.indexOf("_PERCENT") > 0)
- NAMED_COLORS.put(name.replace("_PERCENT", "%").replace('_',
- ' '), c);
- }
+ for (HSSFColor.HSSFColorPredefined color : HSSFColor.HSSFColorPredefined.values()) {
+ String name = color.name();
+ short[] rgb = color.getTriplet();
+ Color c = new Color(rgb[0], rgb[1], rgb[2]);
+ NAMED_COLORS.put(name, c);
+ if (name.indexOf('_') > 0)
+ NAMED_COLORS.put(name.replace('_', ' '), c);
+ if (name.indexOf("_PERCENT") > 0)
+ NAMED_COLORS.put(name.replace("_PERCENT", "%").replace('_',
+ ' '), c);
}
}
Modified: poi/trunk/src/ooxml/testcases/org/apache/poi/ss/format/TestCellFormatPart.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/ss/format/TestCellFormatPart.java?rev=1846520&r1=1846519&r2=1846520&view=diff
==============================================================================
--- poi/trunk/src/ooxml/testcases/org/apache/poi/ss/format/TestCellFormatPart.java (original)
+++ poi/trunk/src/ooxml/testcases/org/apache/poi/ss/format/TestCellFormatPart.java Tue Nov 13 16:08:11 2018
@@ -17,12 +17,15 @@
package org.apache.poi.ss.format;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
import java.util.Locale;
import java.util.TimeZone;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
+import org.apache.poi.hssf.util.HSSFColor;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.util.LocaleUtil;
import org.apache.poi.xssf.XSSFITestDataProvider;
@@ -153,6 +156,19 @@ public class TestCellFormatPart extends
});
}
+ @Test
+ public void testNamedColors() {
+ assertTrue(CellFormatPart.NAMED_COLORS.size() >= HSSFColor.HSSFColorPredefined.values().length);
+ assertNotNull(CellFormatPart.NAMED_COLORS.get("GREEN"));
+ assertNotNull(CellFormatPart.NAMED_COLORS.get("Green"));
+ assertNotNull(CellFormatPart.NAMED_COLORS.get("RED"));
+ assertNotNull(CellFormatPart.NAMED_COLORS.get("Red"));
+ assertNotNull(CellFormatPart.NAMED_COLORS.get("BLUE"));
+ assertNotNull(CellFormatPart.NAMED_COLORS.get("Blue"));
+ assertNotNull(CellFormatPart.NAMED_COLORS.get("YELLOW"));
+ assertNotNull(CellFormatPart.NAMED_COLORS.get("Yellow"));
+ }
+
private double extractNumber(String str) {
Matcher m = NUMBER_EXTRACT_FMT.matcher(str);
if (!m.find())
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org