Project

General

Profile

Download (3.43 KB) Statistics
| Branch: | Tag: | Revision:
1
// $Id$
2
/**
3
* Copyright (C) 2013 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.view.derivateSearch;
11

    
12
import org.eclipse.jface.viewers.ColumnLabelProvider;
13
import org.eclipse.swt.graphics.Image;
14

    
15
import eu.etaxonomy.cdm.model.molecular.Amplification;
16
import eu.etaxonomy.cdm.model.molecular.Sequence;
17
import eu.etaxonomy.cdm.model.molecular.SingleRead;
18
import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
19
import eu.etaxonomy.cdm.model.occurrence.FieldUnit;
20
import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
21
import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
22
import eu.etaxonomy.taxeditor.model.ImageResources;
23

    
24
/**
25
 * Label provider for the views to show {@link SpecimenOrObservationBase}s.
26
 */
27
public class DerivateLabelProvider extends ColumnLabelProvider {
28

    
29
    /** {@inheritDoc} */
30
    @Override
31
    public String getText(Object element) {
32
        return getDerivateText(element);
33
    }
34

    
35
    /** {@inheritDoc} */
36
    @Override
37
    public String getToolTipText(Object element) {
38
        return getDerivateText(element);
39
    }
40

    
41
    private String getDerivateText(Object element){
42
        if(element instanceof SpecimenOrObservationBase){
43
            SpecimenOrObservationBase<?> derivate = (SpecimenOrObservationBase<?>) element;
44
            SpecimenOrObservationType type = derivate.getRecordBasis();
45
            return derivate.getTitleCache() + (type!=null?" ["+type.toString()+"]":"");
46
        }
47
        return element.toString();
48
    }
49

    
50
    /* (non-Javadoc)
51
     * @see org.eclipse.jface.viewers.ColumnLabelProvider#getImage(java.lang.Object)
52
     */
53
    @Override
54
    public Image getImage(Object element) {
55
        if(element instanceof FieldUnit){
56
            return ImageResources.getImage(ImageResources.FIELD_UNIT);
57
        }
58
        else if(element instanceof DerivedUnit){
59
            DerivedUnit derivedUnit = (DerivedUnit)element;
60
            if(derivedUnit.getRecordBasis()==SpecimenOrObservationType.FieldUnit){
61
                return ImageResources.getImage(ImageResources.FIELD_UNIT);
62
            }
63
            else if(derivedUnit.getRecordBasis()==SpecimenOrObservationType.DnaSample){
64
                return ImageResources.getImage(ImageResources.DNA_SAMPLE_DERIVATE);
65
            }
66
            else if(derivedUnit.getRecordBasis()==SpecimenOrObservationType.TissueSample){
67
                return ImageResources.getImage(ImageResources.TISSUE_SAMPLE_DERIVATE);
68
            }
69
            else if(derivedUnit.getRecordBasis()==SpecimenOrObservationType.PreservedSpecimen){
70
                return ImageResources.getImage(ImageResources.SPECIMEN_DERIVATE);
71
            }
72
            else if(derivedUnit.getRecordBasis()==SpecimenOrObservationType.StillImage){
73
                return ImageResources.getImage(ImageResources.ARTWORK_DERIVATE);
74
            }
75
        }
76
        else if(element instanceof Sequence){
77
            return ImageResources.getImage(ImageResources.SEQUENCE_DERIVATE);
78
        }
79
        else if(element instanceof Amplification){
80
            return ImageResources.getImage(ImageResources.AMPLIFICATION_DERIVATE);
81
        }
82
        else if(element instanceof SingleRead){
83
            return ImageResources.getImage(ImageResources.SINGLE_READ_DERIVATE);
84
        }
85
        return super.getImage(element);
86
    }
87

    
88
}
(1-1/4)