Project

General

Profile

Download (4.2 KB) Statistics
| Branch: | Tag: | Revision:
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.section.supplemental;
12

    
13
import org.apache.log4j.Logger;
14
import org.eclipse.swt.SWT;
15
import org.eclipse.swt.events.SelectionListener;
16

    
17
import eu.etaxonomy.cdm.model.common.ReferencedEntityBase;
18
import eu.etaxonomy.taxeditor.forms.AbstractFormSection;
19
import eu.etaxonomy.taxeditor.forms.CdmFormFactory;
20
import eu.etaxonomy.taxeditor.forms.ICdmFormElement;
21
import eu.etaxonomy.taxeditor.forms.TextWithLabelElement;
22
import eu.etaxonomy.taxeditor.forms.CdmFormFactory.SelectionType;
23
import eu.etaxonomy.taxeditor.forms.selection.ReferenceSelectionElement;
24
import eu.etaxonomy.taxeditor.section.AbstractEntityCollectionElement;
25
import eu.etaxonomy.taxeditor.section.BulkEditorOpeningSelectionListener;
26

    
27
/**
28
 * <p>Abstract AbstractReferencedEntityElement class.</p>
29
 *
30
 * @author n.hoffmann
31
 * @created Mar 25, 2010
32
 * @version 1.0
33
 */
34
public abstract class AbstractReferencedEntityElement<T extends ReferencedEntityBase> extends
35
		AbstractEntityCollectionElement<T> {
36

    
37

    
38
	private static final Logger logger = Logger
39
			.getLogger(AbstractReferencedEntityElement.class);
40
	
41
	
42
	protected ReferenceSelectionElement selection_reference;
43
	protected TextWithLabelElement text_referenceDetail;
44

    
45

    
46
	protected TextWithLabelElement text_originaleNameString;
47

    
48

    
49
	private boolean hasOriginalNameString = false;
50

    
51
	/**
52
	 * <p>Constructor for AbstractReferencedEntityElement.</p>
53
	 *
54
	 * @param formFactory a {@link eu.etaxonomy.taxeditor.forms.CdmFormFactory} object.
55
	 * @param section a {@link eu.etaxonomy.taxeditor.forms.AbstractFormSection} object.
56
	 * @param entity a T object.
57
	 * @param removeListener a {@link org.eclipse.swt.events.SelectionListener} object.
58
	 * @param style a int.
59
	 * @param <T> a T object.
60
	 */
61
	public AbstractReferencedEntityElement(CdmFormFactory formFactory,
62
			AbstractFormSection section, T entity,
63
			SelectionListener removeListener,
64
			int style) {
65
		super(formFactory, section, entity, removeListener, null, style);
66
	}
67
	
68
	/* (non-Javadoc)
69
	 * @see eu.etaxonomy.taxeditor.forms.section.AbstractEntityCollectionElement#createControls(eu.etaxonomy.taxeditor.forms.ICdmFormElement, int)
70
	 */
71
	/** {@inheritDoc} */
72
	@Override
73
	public void createControls(ICdmFormElement formElement, int style) {
74
		selection_reference = (ReferenceSelectionElement) formFactory.createSelectionElement(SelectionType.REFERENCE, getConversationHolder(), formElement, "Reference", null, style);
75
		text_referenceDetail = formFactory.createTextWithLabelElement(formElement, "Reference Detail", null, SWT.NULL);
76
		if(hasOriginalNameString) text_originaleNameString = formFactory.createTextWithLabelElement(formElement, "Original Name", null, SWT.NULL);
77
	}
78
	
79
	/**
80
	 * <p>setEntity</p>
81
	 *
82
	 * @param entity a T object.
83
	 */
84
	public void setEntity(T entity) {
85
		this.entity = entity;
86
		
87
		selection_reference.setEntity(entity.getCitation());
88
		text_referenceDetail.setText(entity.getCitationMicroReference());
89
		if(hasOriginalNameString) text_originaleNameString.setText(entity.getOriginalNameString());
90
//		// remove old listeners
91
//		clearEditButtonSelectionListener();
92
//		
93
//		addEditButtonSelectionListener(new BulkEditorOpeningSelectionListener(entity.getCitation()));
94
//		
95
	};
96
//	
97
//	public void addEditButtonSelectionListener(SelectionListener listener){
98
//		selection_reference.addEditButtonSelectionListener(listener);
99
//	}
100
//	
101
//	public void removeEditButtonSelectionListener(SelectionListener listener){
102
//		selection_reference.removeEditorButtonSelectionListener(listener);
103
//	}
104
//	
105
//	public void clearEditButtonSelectionListener(){
106
//		selection_reference.clearEditButtonSelectionListener();
107
//	}
108

    
109
	/**
110
	 * <p>Setter for the field <code>hasOriginalNameString</code>.</p>
111
	 *
112
	 * @param hasOriginalNameString a boolean.
113
	 */
114
	public void setHasOriginalNameString(boolean hasOriginalNameString) {
115
		this.hasOriginalNameString = hasOriginalNameString;
116
	}
117

    
118
	/**
119
	 * <p>hasOriginalNameString</p>
120
	 *
121
	 * @return a boolean.
122
	 */
123
	public boolean hasOriginalNameString() {
124
		return hasOriginalNameString;
125
	}
126
}
(3-3/24)