ref #7044 Migrate color theme
[taxeditor.git] / eu.etaxonomy.taxeditor.navigation / src / main / java / eu / etaxonomy / taxeditor / navigation / search / SearchResultLabelProvider.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.search;
12
13 import org.eclipse.jface.viewers.ColumnLabelProvider;
14 import org.eclipse.jface.viewers.ILabelProvider;
15 import org.eclipse.swt.graphics.Color;
16 import org.eclipse.swt.graphics.Font;
17 import org.eclipse.swt.graphics.Image;
18
19 import eu.etaxonomy.cdm.model.taxon.Synonym;
20 import eu.etaxonomy.cdm.model.taxon.Taxon;
21 import eu.etaxonomy.cdm.model.taxon.TaxonBase;
22 import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;
23 import eu.etaxonomy.taxeditor.model.ImageResources;
24 import eu.etaxonomy.taxeditor.navigation.NavigationUtil;
25 import eu.etaxonomy.taxeditor.navigation.l10n.Messages;
26 import eu.etaxonomy.taxeditor.preference.Resources;
27
28 /**
29 * <p>SearchResultLabelProvider class.</p>
30 *
31 * @author n.hoffmann
32 * @created 04.05.2009
33 * @version 1.0
34 */
35 public class SearchResultLabelProvider extends ColumnLabelProvider implements ILabelProvider {
36
37 /** {@inheritDoc} */
38 @Override
39 public String getText(Object element) {
40 if(element instanceof UuidAndTitleCache){
41 return ((UuidAndTitleCache) element).getTitleCache();
42 }
43 return element.toString();
44 }
45
46 /* (non-Javadoc)
47 * @see org.eclipse.jface.viewers.ColumnLabelProvider#getBackground(java.lang.Object)
48 */
49 /** {@inheritDoc} */
50 @Override
51 public Color getBackground(Object element) {
52 return super.getBackground(element);
53 }
54
55 /* (non-Javadoc)
56 * @see org.eclipse.jface.viewers.ColumnLabelProvider#getFont(java.lang.Object)
57 */
58 /** {@inheritDoc} */
59 @Override
60 public Font getFont(Object element) {
61 if(element instanceof Taxon){
62 return NavigationUtil.getFont(Resources.FONT_SEARCH_VIEW_ACCEPTED);
63 }else if(element instanceof Synonym){
64 return NavigationUtil.getFont(Resources.FONT_SEARCH_VIEW_SYNONYM);
65 }else{
66 return NavigationUtil.getFont(Resources.FONT_SEARCH_VIEW_OTHER);
67 }
68 }
69
70 /* (non-Javadoc)
71 * @see org.eclipse.jface.viewers.ColumnLabelProvider#getImage(java.lang.Object)
72 */
73 /** {@inheritDoc} */
74 @Override
75 public Image getImage(Object element) {
76 if(element instanceof UuidAndTitleCache){
77 Class type = ((UuidAndTitleCache) element).getType();
78 // unfortunately we can not distinct misapplication anymore
79 // if(taxon.isMisapplication()){
80 // return ImageResources.getImage(ImageResources.MISAPPLIED_NAME_ICON);
81 // }else{
82 if(type == Taxon.class){
83 if(((UuidAndTitleCache) element).getIsOrphaned()) {
84 return ImageResources.getImage(ImageResources.ORPHANED_TAXON);
85 }
86 return ImageResources.getImage(ImageResources.BLACK_SQUARE_ICON);
87 }else if(type == Synonym.class){
88 return ImageResources.getImage(ImageResources.HETEROTYPIC_SYN_ICON);
89 }
90 }
91 return super.getImage(element);
92 }
93
94 /* (non-Javadoc)
95 * @see org.eclipse.jface.viewers.CellLabelProvider#getToolTipText(java.lang.Object)
96 *
97 * does not seem t work right now
98 */
99 /** {@inheritDoc} */
100 @Override
101 public String getToolTipText(Object element) {
102 if(element instanceof TaxonBase){
103 if(element instanceof Synonym){
104 return Messages.SearchResultLabelProvider_SYNONYM + ((TaxonBase<?>) element).getName().getTitleCache();
105 }else{
106 return Messages.SearchResultLabelProvider_TAXON + ((TaxonBase<?>) element).getName().getTitleCache();
107 }
108 }
109 return Messages.SearchResultLabelProvider_NAME + element.toString();
110 }
111
112
113
114 }