X-Git-Url: https://dev.e-taxonomy.eu/gitweb/taxeditor.git/blobdiff_plain/6683588710e09130f3e99183bfcc5719474b0406..236273db18ff32378fda85c0b54edd567fe6304f:/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/featuretree/FeatureTreeLabelProvider.java diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/featuretree/FeatureTreeLabelProvider.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/featuretree/FeatureTreeLabelProvider.java index 5ff277cef..7139a9783 100644 --- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/featuretree/FeatureTreeLabelProvider.java +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/featuretree/FeatureTreeLabelProvider.java @@ -9,11 +9,16 @@ package eu.etaxonomy.taxeditor.featuretree; +import java.util.ArrayList; + import org.eclipse.jface.viewers.LabelProvider; -import eu.etaxonomy.cdm.model.description.Feature; -import eu.etaxonomy.cdm.model.description.FeatureNode; -import eu.etaxonomy.cdm.model.description.FeatureTree; +import eu.etaxonomy.cdm.model.common.Language; +import eu.etaxonomy.cdm.model.term.DefinedTermBase; +import eu.etaxonomy.cdm.model.term.Representation; +import eu.etaxonomy.cdm.model.term.TermNode; +import eu.etaxonomy.cdm.model.term.TermTree; +import eu.etaxonomy.taxeditor.preference.PreferencesUtil; /** * @@ -26,13 +31,17 @@ public class FeatureTreeLabelProvider extends LabelProvider { /** {@inheritDoc} */ @Override public String getText(Object element) { - if(element instanceof FeatureTree){ - return ((FeatureTree) element).getTitleCache(); - }else if(element instanceof FeatureNode){ - Feature feature = ((FeatureNode) element).getFeature(); - if(feature != null) { - return feature.getTitleCache(); - } + if(element instanceof TermTree){ + return ((TermTree) element).getTitleCache(); + }else if(element instanceof TermNode){ + DefinedTermBase term = ((TermNode) element).getTerm(); + if(term!=null){ + Representation rep = term.getRepresentation(PreferencesUtil.getGlobalLanguage()); + if (rep == null){ + rep = term.getPreferredRepresentation(new ArrayList()); + } + return rep != null? rep.getLabel() : term.getTitleCache(); + } } return "No label provided";