commit 9c38452812e67e28a5d1dfa09addf7ec9da01c28
Author: Patrick Plitzner
Date: Tue Jun 18 18:49:06 2019 +0200
fix #8333 Show modifiers for states in Character Matrix
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/descriptiveDataSet/matrix/categorical/CategoricalDataDisplayConverter.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/descriptiveDataSet/matrix/categorical/CategoricalDataDisplayConverter.java
index 8afc77378..afc7ad7a7 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/descriptiveDataSet/matrix/categorical/CategoricalDataDisplayConverter.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/descriptiveDataSet/matrix/categorical/CategoricalDataDisplayConverter.java
@@ -16,6 +16,7 @@ import eu.etaxonomy.cdm.model.description.CategoricalData;
import eu.etaxonomy.cdm.model.description.State;
import eu.etaxonomy.cdm.persistence.dto.TermDto;
import eu.etaxonomy.cdm.remote.l10n.TermRepresentation_L10n;
+import eu.etaxonomy.taxeditor.model.DescriptionHelper;
/**
* Converts CategoricalData and States of one cell of the character matrix to a
@@ -33,10 +34,8 @@ public class CategoricalDataDisplayConverter extends DisplayConverter {
@Override
public Object canonicalToDisplayValue(Object canonicalValue) {
if(canonicalValue instanceof CategoricalData){
- CategoricalData categoricalData = (CategoricalData)canonicalValue;
- String result = categoricalData.getStatesOnly().toString();
- result = result.substring(1, result.length() - 1);
- return result;
+ String text = DescriptionHelper.getLabel(canonicalValue);
+ return text.equals(DescriptionHelper.NO_LABEL_STRING)?"":text;
}
else if(canonicalValue instanceof State){
return ((State) canonicalValue).getLabel();
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/model/DescriptionHelper.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/model/DescriptionHelper.java
index f373507d2..0c6c1fd14 100644
--- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/model/DescriptionHelper.java
+++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/model/DescriptionHelper.java
@@ -571,6 +571,7 @@ public class DescriptionHelper {
private static DescriptionBuilder quantitativeDescriptionBuilder = new DefaultQuantitativeDescriptionBuilder();
private static DescriptionBuilder categoricalDescriptionBuilder = new DefaultCategoricalDescriptionBuilder();
+ public static final String NO_LABEL_STRING = "[no label]";
/**
@@ -720,7 +721,6 @@ public class DescriptionHelper {
* @return a {@link java.lang.String} object.
*/
public static String getLabel(Object element){
- String noLabelString = "[no label]";
if (element instanceof FeatureNodeContainer){
return getFeatureNodeContainerText((FeatureNodeContainer) element);
}
@@ -730,7 +730,7 @@ public class DescriptionHelper {
else if(element instanceof CategoricalData){
String categoricalDataText = getCategoricalDataText((CategoricalData) element);
if(categoricalDataText==null || categoricalDataText.isEmpty()){
- categoricalDataText = noLabelString;
+ categoricalDataText = NO_LABEL_STRING;
}
return categoricalDataText;
}
@@ -746,7 +746,7 @@ public class DescriptionHelper {
else if (element instanceof QuantitativeData) {
String quantitativeDataText = getQuantitativeDataText((QuantitativeData) element);
if(quantitativeDataText==null || quantitativeDataText.isEmpty()){
- quantitativeDataText = noLabelString;
+ quantitativeDataText = NO_LABEL_STRING;
}
return quantitativeDataText;
}