ref #9939: implement occurrence status in taxEditor - first implementation
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / ui / section / occurrence / OccurrenceStatusElement.java
1 package eu.etaxonomy.taxeditor.ui.section.occurrence;
2
3 import org.eclipse.swt.events.SelectionListener;
4 import org.eclipse.swt.graphics.Color;
5
6 import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
7 import eu.etaxonomy.cdm.model.common.ExtensionType;
8 import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
9 import eu.etaxonomy.cdm.model.occurrence.OccurrenceStatus;
10 import eu.etaxonomy.cdm.model.term.DefinedTerm;
11 import eu.etaxonomy.cdm.model.term.DefinedTermBase;
12 import eu.etaxonomy.cdm.model.term.TermType;
13 import eu.etaxonomy.taxeditor.ui.combo.term.TermComboElement;
14 import eu.etaxonomy.taxeditor.ui.element.AbstractFormSection;
15 import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
16 import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
17 import eu.etaxonomy.taxeditor.ui.element.TextWithLabelElement;
18 import eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailElement;
19 import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionElement;
20
21 public class OccurrenceStatusElement extends AbstractEntityCollectionElement<OccurrenceStatus>{
22
23 private TermComboElement<DefinedTerm> combo_statusType;
24
25
26 public OccurrenceStatusElement(CdmFormFactory formFactory, AbstractFormSection section,
27 OccurrenceStatus entity, SelectionListener removeListener, Color backgroundColor, int style) {
28 super(formFactory, section, entity, removeListener, backgroundColor, style);
29
30
31 }
32
33 @Override
34 public void setEntity(OccurrenceStatus entity) {
35 this.entity = entity;
36 if (combo_statusType != null){
37 DefinedTerm statusType = HibernateProxyHelper.deproxy(entity.getType());
38 combo_statusType.setSelection(statusType);
39
40 }
41
42 }
43
44 @Override
45 public void createControls(ICdmFormElement element, int style) {
46 combo_statusType = formFactory.createDefinedTermComboElement(TermType.OccurrenceStatusType, element, "Type", null, style);
47 if (entity != null){
48 setEntity(entity);
49 }
50
51 }
52
53 @Override
54 public void handleEvent(Object eventSource) {
55 if(eventSource == combo_statusType){
56 entity.setType(combo_statusType.getSelection());
57 }
58
59 }
60
61
62 }