fixes 777
[taxeditor.git] / taxeditor-navigation / src / main / java / eu / etaxonomy / taxeditor / navigation / navigator / NavigatorTaxonLabelProvider.java
1 // $Id$
2 /**
3 * Copyright (C) 2007 EDIT
4 * European Distributed Institute of Taxonomy
5 * http://www.e-taxonomy.eu
6 *
7 * The contents of this file are subject to the Mozilla Public License Version 1.1
8 * See LICENSE.TXT at the top of this package for the full license terms.
9 */
10
11 package eu.etaxonomy.taxeditor.navigation.navigator;
12
13 import org.apache.log4j.Logger;
14 import org.eclipse.jface.viewers.ColumnLabelProvider;
15 import org.eclipse.jface.viewers.ILabelProvider;
16 import org.eclipse.jface.viewers.StyledString;
17 import org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.IStyledLabelProvider;
18 import org.eclipse.swt.graphics.Image;
19 import org.eclipse.ui.navigator.IDescriptionProvider;
20
21 import eu.etaxonomy.cdm.model.taxon.Taxon;
22 import eu.etaxonomy.cdm.model.taxon.TaxonNode;
23
24 /**
25 * @author p.ciardelli
26 * @created 04.06.2009
27 * @version 1.0
28 */
29 public class NavigatorTaxonLabelProvider extends ColumnLabelProvider
30 implements ILabelProvider, IDescriptionProvider, IStyledLabelProvider {
31 private static final Logger logger = Logger
32 .getLogger(NavigatorTaxonLabelProvider.class);
33
34 public Image getImage(Object element) {
35 return null;
36 }
37
38 public String getText(Object element) {
39 if (element instanceof TaxonNode){
40 Taxon taxon = ((TaxonNode) element).getTaxon();
41 return taxon.getName() != null ? taxon.getName().getTitleCache() : new String();
42 }
43 return new String();
44 }
45
46 /* (non-Javadoc)
47 * @see org.eclipse.ui.navigator.IDescriptionProvider#getDescription(java.lang.Object)
48 */
49 public String getDescription(Object anElement) {
50 if (anElement instanceof TaxonNode) {
51 Taxon data = ((TaxonNode) anElement).getTaxon();
52 return "Taxon: " + data.getTitleCache(); //$NON-NLS-1$
53 }
54 return null;
55 }
56
57 /* (non-Javadoc)
58 * @see org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.IStyledLabelProvider#getStyledText(java.lang.Object)
59 */
60 public StyledString getStyledText(Object element) {
61 return new StyledString(getText(element));
62 }
63 }