From d924f5c603e1bbc57535c11ecb5e68dba31fd1fb Mon Sep 17 00:00:00 2001 From: Patric Plitzner
+ * Constructor for CollectingAreasDetailElement. + *
+ * + * @param formFactory + * a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory} + * object. + * @param section + * a + * {@link eu.etaxonomy.taxeditor.ui.element.AbstractFormSection} + * object. + * @param entity + * a {@link eu.etaxonomy.cdm.model.location.NamedArea} object. + * @param removeListener + * a {@link org.eclipse.swt.events.SelectionListener} object. + * @param style + * a int. + */ + public NamedAreaFieldController(CdmFormFactory formFactory, AbstractFormSection section, NamedArea entity, SelectionListener removeListener, int style) { + super(formFactory, section, entity, removeListener, null, style); + } + + /* + * (non-Javadoc) + * + * @see + * eu.etaxonomy.taxeditor.section.AbstractEntityCollectionElement#setEntity + * (java.lang.Object) + */ + /** {@inheritDoc} */ + @Override + public void setEntity(NamedArea entity) { + selection_namedArea.setEntity(entity); + } + + /* + * (non-Javadoc) + * + * @see + * eu.etaxonomy.taxeditor.section.AbstractEntityCollectionElement#createControls + * (eu.etaxonomy.taxeditor.forms.ICdmFormElement, int) + */ + /** {@inheritDoc} */ + @Override + public void createControls(ICdmFormElement formElement, int style) { + selection_namedArea = new EntitySelectionFieldController@@ -71,9 +75,9 @@ public class GatheringEventDetailsElementController extends AbstractCdmDetailEle number_distanceToGround = new NumberFieldController(gatheringEventDetailsElement.getText_DistanceToGround(), formFactory, this, (Integer)null); number_distanceToWaterSurface = new NumberFieldController(gatheringEventDetailsElement.getText_DistanceToWaterSurface(), formFactory, this, (Integer)null); text_gatheringEventDescription = new TextFieldController(gatheringEventDetailsElement.getText_GatheringEventDescription(), formFactory, this, null, null); -// section_collectingAreas = formFactory.createCollectingAreasDetailSection(getConversationHolder(), formElement, ExpandableComposite.TWISTIE); -// section_collectingAreas.setLayoutData(LayoutConstants.FILL_HORIZONTALLY(2, 1)); -// section_collectingAreas.setEntity(entity); + section_collectingAreas = formFactory.createCollectingAreasDetailSection(getConversationHolder(), formElement, ExpandableComposite.TWISTIE); + section_collectingAreas.setLayoutData(LayoutConstants.FILL_HORIZONTALLY(2, 1)); + section_collectingAreas.setEntity(entity); } /** {@inheritDoc} */ diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/CdmFormFactory.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/CdmFormFactory.java index c13ae678d..4c0325e84 100644 --- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/CdmFormFactory.java +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/CdmFormFactory.java @@ -95,6 +95,7 @@ import eu.etaxonomy.cdm.model.taxon.Taxon; import eu.etaxonomy.cdm.model.taxon.TaxonNode; import eu.etaxonomy.cdm.strategy.parser.ParserProblem; import eu.etaxonomy.taxeditor.model.AbstractUtility; +import eu.etaxonomy.taxeditor.ui.campanula.basicFields.NamedAreaFieldController; import eu.etaxonomy.taxeditor.ui.campanula.compatibility.ICdmFormElement; import eu.etaxonomy.taxeditor.ui.campanula.detailViews.fieldObservation.FieldObservationDetailsElement; import eu.etaxonomy.taxeditor.ui.campanula.detailViews.fieldObservation.FieldObservationDetailsElementController; @@ -2131,6 +2132,13 @@ public class CdmFormFactory extends FormToolkit { return element; } + public void createNamedAreaFieldController(AbstractFormSection parentElement, NamedArea namedArea, SelectionListener removeListener){ +// Object entity = HibernateProxyHelper.deproxy(versionableEntity); TODO deproxy necessary?? + NamedAreaFieldController element = new NamedAreaFieldController(this, parentElement, namedArea, removeListener, SWT.NONE); + adapt(element); + parentElement.addElement(element); + } + /** *
* Creates a selection element for the given type T. diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/CollectingAreasDetailSection.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/CollectingAreasDetailSection.java index 969a01032..aa30aea54 100644 --- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/CollectingAreasDetailSection.java +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/CollectingAreasDetailSection.java @@ -12,6 +12,9 @@ package eu.etaxonomy.taxeditor.ui.section.occurrence; import java.util.Collection; +import org.eclipse.swt.events.SelectionListener; +import org.eclipse.swt.graphics.Color; + import eu.etaxonomy.cdm.api.conversation.ConversationHolder; import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade; import eu.etaxonomy.cdm.model.location.NamedArea; @@ -100,4 +103,12 @@ public class CollectingAreasDetailSection extends AbstractEntityCollectionSectio return "Add a collecting area"; } + /* (non-Javadoc) + * @see eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection#createElementComposite(java.lang.Object, org.eclipse.swt.events.SelectionListener, org.eclipse.swt.graphics.Color) + */ + @Override + protected void createElementComposite(NamedArea element, SelectionListener removeListener, Color backgroundColor) { + formFactory.createNamedAreaFieldController(this, element, removeListener); + } + } -- 2.34.1