Project

General

Profile

Download (3.82 KB) Statistics
| Branch: | Tag: | Revision:
1
// $Id$
2
/**
3
 * Copyright (C) 2017 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
package eu.etaxonomy.taxeditor.navigation.navigator.e4;
11

    
12
import org.eclipse.jface.viewers.StyledString;
13
import org.eclipse.jface.viewers.StyledString.Styler;
14
import org.eclipse.swt.graphics.TextStyle;
15
import org.eclipse.ui.navigator.IDescriptionProvider;
16

    
17
import eu.etaxonomy.cdm.model.taxon.Classification;
18
import eu.etaxonomy.cdm.model.taxon.Taxon;
19
import eu.etaxonomy.cdm.model.taxon.TaxonNode;
20
import eu.etaxonomy.cdm.persistence.dto.TaxonNodeDto;
21
import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;
22
import eu.etaxonomy.taxeditor.navigation.l10n.Messages;
23
import eu.etaxonomy.taxeditor.preference.Resources;
24
import eu.etaxonomy.taxeditor.store.StoreUtil;
25
import eu.etaxonomy.taxeditor.util.TaxonTreeNodeLabelProvider;
26

    
27
/**
28
 * @author pplitzner
29
 * @date 05.09.2017
30
 *
31
 */
32
public class TaxonNavigatorLabelProviderE4 extends TaxonTreeNodeLabelProvider
33
implements IDescriptionProvider {
34

    
35
    /**
36
     * {@inheritDoc}
37
     */
38
    @Override
39
    public String getText(Object element) {
40
        if (element instanceof TaxonNode){
41
            return super.getText(element);
42
        }
43
        if (element instanceof UuidAndTitleCache){
44
            if(((TaxonNodeDto)element).getTitleCache() != null){
45
                String text = ((TaxonNodeDto)element).getTitleCache();
46
                return text;
47

    
48
            }else{
49
                return  new String();
50

    
51
            }
52

    
53
        }
54
        return new String();
55

    
56
//        return super.getText(element);
57
        //FIXME E4 show synonym in navigator?
58
        //synonym
59
//        else if (element instanceof Synonym && ((Synonym) element).getName()!=null) {
60
//            return "= " + ((Synonym) element).getName().getTitleCache(); //$NON-NLS-1$
61
//        }
62
    }
63
//    @Override
64
//    public Font getFont(Object element) {
65
//
66
//        return new Font(null, "Arial Unicode MS", 10, SWT.NORMAL);
67
//
68
//    }
69

    
70
    /**
71
     * {@inheritDoc}
72
     */
73
    @Override
74
    public String getDescription(Object anElement) {
75
        //classification
76
        if (anElement instanceof Classification) {
77
            return "Taxonomic Tree: " +  ((Classification) anElement).getTitleCache(); //$NON-NLS-1$
78
        }
79
        //FIXME E4 show synonym in navigator?
80
        //synonym
81
//        else if (anElement instanceof Synonym) {
82
//            Synonym data = (Synonym) anElement;
83
//            return "Synonym: " + data.getTitleCache(); //$NON-NLS-1$
84
//        }
85
        //taxon node
86
        else if (anElement instanceof TaxonNode) {
87
            Taxon data = ((TaxonNode) anElement).getTaxon();
88
            String text =  (data != null ? Messages.TaxonNodeLabelProvider_TAXON + data.getTitleCache() : Messages.TaxonNodeLabelProvider_CLASSIFICATION + ((TaxonNode)anElement).getClassification().getTitleCache());
89
            return text;
90
        }
91
        return null;
92
    }
93

    
94
    /**
95
     * {@inheritDoc}
96
     */
97
    @Override
98
    public StyledString getStyledText(Object element) {
99
        return super.getStyledText(element);
100
        //FIXME E4 show synonym in navigator?
101
        //synonym
102
//        else if(element instanceof Synonym){
103
//            return new StyledString(getText(element), StyledString.QUALIFIER_STYLER);
104
//        }
105
    }
106

    
107

    
108
    private Styler getNotGrantedStyler() {
109
        if (notGrantedStyler  == null) {
110
            notGrantedStyler = new Styler() {
111
                @Override
112
                public void applyStyles(TextStyle textStyle) {
113
                    textStyle.underline = false;
114
                    textStyle.foreground = StoreUtil.getColor(Resources.COLOR_TEXT_DISABLED);
115
                }
116
            };
117
        }
118
        return notGrantedStyler;
119
    }
120

    
121

    
122
}
(4-4/6)