import eu.etaxonomy.cdm.common.CdmUtils;
import eu.etaxonomy.cdm.model.common.Language;
import eu.etaxonomy.cdm.model.common.LanguageString;
+import eu.etaxonomy.cdm.model.description.Feature;
import eu.etaxonomy.cdm.model.description.KeyStatement;
import eu.etaxonomy.cdm.model.description.PolytomousKeyNode;
import eu.etaxonomy.taxeditor.store.CdmStore;
// TODO make this configurable via preferences
private static final String INCREMENTOR_CHARACTER = "'"; //$NON-NLS-1$
- /*
- * (non-Javadoc)
- *
- * @see
- * org.eclipse.jface.viewers.StyledCellLabelProvider#update(org.eclipse.
- * jface.viewers.ViewerCell)
- */
@Override
public void update(ViewerCell cell) {
Object element = cell.getElement();
return EMPTY;
}
- /**
- * @param node
- * @return
- */
private String getFeature(PolytomousKeyNode node) {
- return node!=null?(node.getFeature()!=null?node.getFeature().getLabel():EMPTY):EMPTY;
+ if (isParentRoot(node)) {
+ return ""; //$NON-NLS-1$
+ } else {
+ Feature parentFeature = getParent(node).getFeature();
+ if (parentFeature == null){
+ return EMPTY;
+ }
+ String statementLabel = CdmUtils.Nz(parentFeature.getLabel(CdmStore.getDefaultLanguage()));
+ if(CdmUtils.isBlank(statementLabel)){
+ statementLabel = parentFeature.getLabel();
+ }
+ return statementLabel;
+ }
}
- /**
- * @return
- */
private Styler getStyler() {
if (styler == null) {
styler = new Styler() {