Project

General

Profile

Download (2.75 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
* Copyright (C) 2007 EDIT
3
* European Distributed Institute of Taxonomy
4
* http://www.e-taxonomy.eu
5
*
6
* The contents of this file are subject to the Mozilla Public License Version 1.1
7
* See LICENSE.TXT at the top of this package for the full license terms.
8
*/
9

    
10
package eu.etaxonomy.taxeditor.ui.section.reference;
11

    
12
import org.eclipse.jface.viewers.ISelectionProvider;
13

    
14
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
15
import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
16
import eu.etaxonomy.cdm.model.name.TaxonName;
17
import eu.etaxonomy.cdm.model.reference.Reference;
18
import eu.etaxonomy.cdm.model.taxon.TaxonBase;
19
import eu.etaxonomy.taxeditor.model.AbstractUtility;
20
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
21
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
22
import eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailElement;
23
import eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailSection;
24
import eu.etaxonomy.taxeditor.ui.section.ITaxonBaseDetailSection;
25

    
26
/**
27
 * <p>ReferenceBaseDetailSection class.</p>
28
 *
29
 * @author n.hoffmann
30
 * @created 05.06.2009
31
 * @version 1.0
32
 */
33
public class ReferenceDetailSection extends AbstractCdmDetailSection<Reference> implements ITaxonBaseDetailSection{
34

    
35
	private TaxonBase taxonBase;
36

    
37
	/**
38
	 * <p>Constructor for ReferenceBaseDetailSection.</p>
39
	 *
40
	 * @param parentElement a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement} object.
41
	 * @param style a int.
42
	 * @param cdmFormFactory a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory} object.
43
	 * @param conversation a {@link eu.etaxonomy.cdm.api.conversation.ConversationHolder} object.
44
	 * @param selectionProvider a {@link org.eclipse.jface.viewers.ISelectionProvider} object.
45
	 */
46
	public ReferenceDetailSection(CdmFormFactory cdmFormFactory, ConversationHolder conversation, ICdmFormElement parentElement,
47
			ISelectionProvider selectionProvider, int style) {
48
		super(cdmFormFactory, conversation, parentElement, selectionProvider, style);
49
	}
50

    
51
	/** {@inheritDoc} */
52
	@Override
53
    public void setTaxonBase(TaxonBase entity) {
54
		this.taxonBase = entity;
55
		TaxonName name = HibernateProxyHelper.deproxy(entity.getName());
56

    
57
		Reference reference = (Reference) HibernateProxyHelper.deproxy(name.getNomenclaturalReference());
58

    
59
		setEntity(reference);
60
	}
61

    
62
	/** {@inheritDoc} */
63
	@Override
64
	public String getHeading() {
65
		return "Reference";
66
	}
67

    
68
	/** {@inheritDoc} */
69
	@Override
70
	public void refresh() {
71
		super.refresh();
72
		AbstractUtility.refreshDetailsViewer();
73
	}
74

    
75
	@Override
76
	public TaxonBase getTaxonBase() {
77
		return taxonBase;
78
	}
79

    
80
	@Override
81
	protected AbstractCdmDetailElement<Reference> createCdmDetailElement(AbstractCdmDetailSection<Reference> parentElement, int style) {
82
	    return formFactory.createReferenceDetailElement(parentElement, style, false);
83
	}
84

    
85
}
(4-4/6)