ref #8260 Complete refactoring of expansion state saving
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / ui / section / occurrence / DerivedUnitBaseDetailElement.java
index 4cca3d1f8d05e77db84beef3749e35a145f427cf..0003781481d09751aeb8e4ece64c439002a60257 100644 (file)
@@ -1,4 +1,3 @@
-// $Id$
 /**
  * Copyright (C) 2007 EDIT
  * European Distributed Institute of Taxonomy
 
 package eu.etaxonomy.taxeditor.ui.section.occurrence;
 
-import org.eclipse.ui.forms.widgets.ExpandableComposite;
-
 import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
 import eu.etaxonomy.cdm.api.facade.MethodNotSupportedByDerivedUnitTypeException;
-import eu.etaxonomy.cdm.model.common.DefinedTerm;
-import eu.etaxonomy.cdm.model.common.TermType;
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;
+import eu.etaxonomy.cdm.model.name.TaxonName;
 import eu.etaxonomy.cdm.model.occurrence.PreservationMethod;
+import eu.etaxonomy.cdm.model.term.DefinedTerm;
+import eu.etaxonomy.cdm.model.term.TermType;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.store.CdmStore;
+import eu.etaxonomy.taxeditor.store.StoreUtil;
 import eu.etaxonomy.taxeditor.ui.combo.TermComboElement;
 import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
 import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
 import eu.etaxonomy.taxeditor.ui.element.LayoutConstants;
 import eu.etaxonomy.taxeditor.ui.element.OriginalLabelDataElement;
 import eu.etaxonomy.taxeditor.ui.element.TextWithLabelElement;
-import eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailElement;
 import eu.etaxonomy.taxeditor.ui.selection.EntitySelectionElement;
 
 /**
@@ -39,7 +36,7 @@ import eu.etaxonomy.taxeditor.ui.selection.EntitySelectionElement;
  * @version 1.0
  */
 public class DerivedUnitBaseDetailElement extends
-               AbstractCdmDetailElement<DerivedUnitFacade> {
+               AbstractSpecimenOrObservationDetailElement {
 
        private TextWithLabelElement text_derivedUnitDefinitions;
 
@@ -47,7 +44,7 @@ public class DerivedUnitBaseDetailElement extends
 
        private TextWithLabelElement text_catalogNumber;
 
-       private EntitySelectionElement<TaxonNameBase> selection_storedUnder;
+       private EntitySelectionElement<TaxonName> selection_storedUnder;
 
        private TextWithLabelElement text_exsicatum;
 
@@ -59,6 +56,8 @@ public class DerivedUnitBaseDetailElement extends
 
     private OriginalLabelDataElement textOriginalLabel;
 
+
+
        /**
         * <p>
         * Constructor for DerivedUnitBaseDetailElement.
@@ -96,7 +95,8 @@ public class DerivedUnitBaseDetailElement extends
                        // we ignore this
             MessagingUtils.info(e.getMessage());
                }
-        selection_storedUnder = formFactory.createSelectionElement(TaxonNameBase.class, getConversationHolder(), formElement, "Stored Under", entity.getStoredUnder(), EntitySelectionElement.ALL, style);
+        selection_storedUnder = formFactory.createSelectionElement(TaxonName.class, //getConversationHolder(),
+                formElement, "Stored Under", entity.getStoredUnder(), EntitySelectionElement.ALL, style);
 
                try {
             text_exsicatum = formFactory.createTextWithLabelElement(formElement, "Exsiccatum", entity.getExsiccatum(), style);
@@ -116,15 +116,19 @@ public class DerivedUnitBaseDetailElement extends
                textOriginalLabel = formFactory.createOriginalLabelDataElement(formElement);
                textOriginalLabel.setEntity(getEntity());
 
-        section_source = formFactory.createSourceCollectionDetailSection(getConversationHolder(), formElement, ExpandableComposite.TWISTIE);
+               super.createControls(formElement, entity, style);
+
+        section_source = formFactory.createSourceCollectionDetailSection(getConversationHolder(), formElement, StoreUtil.getSectionStyle(SourceCollectionDetailSection.class, entity.getClass().getCanonicalName()));
                section_source.setLayoutData(LayoutConstants.FILL_HORIZONTALLY(2, 1));
                section_source.setEntity(entity);
 
+
        }
 
     /** {@inheritDoc} */
     @Override
     public void handleEvent(Object eventSource) {
+       super.handleEvent(eventSource);
         if (eventSource == text_derivedUnitDefinitions) {
             getEntity().addDerivedUnitDefinition(text_derivedUnitDefinitions.getText(), CdmStore.getDefaultLanguage());
         } else if (eventSource == text_barcode) {