4 package eu
.etaxonomy
.taxeditor
.ui
.section
.supplemental
;
6 import org
.eclipse
.swt
.events
.SelectionListener
;
8 import eu
.etaxonomy
.cdm
.hibernate
.HibernateProxyHelper
;
9 import eu
.etaxonomy
.cdm
.model
.common
.Extension
;
10 import eu
.etaxonomy
.cdm
.model
.common
.ExtensionType
;
11 import eu
.etaxonomy
.cdm
.model
.common
.TermType
;
12 import eu
.etaxonomy
.taxeditor
.ui
.combo
.TermComboElement
;
13 import eu
.etaxonomy
.taxeditor
.ui
.element
.AbstractFormSection
;
14 import eu
.etaxonomy
.taxeditor
.ui
.element
.CdmFormFactory
;
15 import eu
.etaxonomy
.taxeditor
.ui
.element
.ICdmFormElement
;
16 import eu
.etaxonomy
.taxeditor
.ui
.element
.LayoutConstants
;
17 import eu
.etaxonomy
.taxeditor
.ui
.element
.TextWithLabelElement
;
18 import eu
.etaxonomy
.taxeditor
.ui
.section
.AbstractEntityCollectionElement
;
21 * <p>ExtensionElement class.</p>
24 * @created Nov 17, 2009
27 public class ExtensionElement
extends AbstractEntityCollectionElement
<Extension
> {
29 private TermComboElement
<ExtensionType
> combo_extensionType
;
30 private TextWithLabelElement text_extensionValue
;
33 * <p>Constructor for ExtensionElement.</p>
35 * @param formElement a {@link eu.etaxonomy.taxeditor.ui.element.AbstractFormSection} object.
36 * @param element a {@link eu.etaxonomy.cdm.model.common.Extension} object.
37 * @param removeListener a {@link org.eclipse.swt.events.SelectionListener} object.
39 * @param cdmFormFactory a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory} object.
41 public ExtensionElement(CdmFormFactory cdmFormFactory
, AbstractFormSection formElement
, Extension element
,
42 SelectionListener removeListener
, int style
) {
43 super(cdmFormFactory
, formElement
, element
, removeListener
, null, style
);
47 * @see eu.etaxonomy.taxeditor.forms.entitysections.AbstractEntitySetElementComposite#createControls(org.eclipse.swt.widgets.Composite, int)
51 public void createControls(ICdmFormElement element
, int style
) {
52 combo_extensionType
= formFactory
.createDefinedTermComboElement(TermType
.ExtensionType
, this, null, null, style
);
53 text_extensionValue
= formFactory
.createTextWithLabelElement(element
, null, null, style
);
54 text_extensionValue
.getLayoutComposite().setLayoutData(LayoutConstants
.FILL_HORIZONTALLY());
58 * @see eu.etaxonomy.taxeditor.forms.entitysections.AbstractEntitySetElementComposite#setElement(eu.etaxonomy.cdm.model.common.VersionableEntity)
62 public void setEntity(Extension element
) {
63 this.entity
= element
;
64 ExtensionType extensionType
= (ExtensionType
) HibernateProxyHelper
.deproxy(element
.getType());
65 combo_extensionType
.setSelection(extensionType
);
66 text_extensionValue
.setText(element
.getValue());
71 * @see eu.etaxonomy.taxeditor.section.AbstractEntityCollectionElement#handleEvent(java.lang.Object)
75 public void handleEvent(Object eventSource
) {
76 if(eventSource
== combo_extensionType
){
77 entity
.setType(combo_extensionType
.getSelection());
79 else if(eventSource
== text_extensionValue
){
80 entity
.setValue(text_extensionValue
.getText());