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;
/**
*
/** {@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<Language>());
+ }
+ return rep != null? rep.getLabel() : term.getTitleCache();
+ }
}
return "No label provided";