X-Git-Url: https://dev.e-taxonomy.eu/gitweb/taxeditor.git/blobdiff_plain/1e9cbe7ad33ce715c1ece46e87d7c5b01a10b1bf..e3240965ccd65c0d123d05e13d04e7820fe01f85:/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/DeterminationEventDetailElement.java diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/DeterminationEventDetailElement.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/DeterminationEventDetailElement.java index 73be3ccee..b834ca8cf 100644 --- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/DeterminationEventDetailElement.java +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/DeterminationEventDetailElement.java @@ -1,9 +1,8 @@ -// $Id$ /** * Copyright (C) 2007 EDIT - * European Distributed Institute of Taxonomy + * European Distributed Institute of Taxonomy * http://www.e-taxonomy.eu - * + * * The contents of this file are subject to the Mozilla Public License Version 1.1 * See LICENSE.TXT at the top of this package for the full license terms. */ @@ -13,20 +12,22 @@ package eu.etaxonomy.taxeditor.ui.section.occurrence; import org.eclipse.swt.events.SelectionListener; 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.occurrence.DeterminationEvent; import eu.etaxonomy.cdm.model.taxon.TaxonBase; -import eu.etaxonomy.taxeditor.ui.campanula.compatibility.ICdmFormElement; import eu.etaxonomy.taxeditor.ui.combo.TermComboElement; import eu.etaxonomy.taxeditor.ui.element.AbstractFormSection; import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory; import eu.etaxonomy.taxeditor.ui.element.CheckboxElement; +import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement; import eu.etaxonomy.taxeditor.ui.selection.EntitySelectionElement; /** *

* DeterminationEventDetailElement class. *

- * + * * @author n.hoffmann * @created Oct 13, 2010 * @version 1.0 @@ -37,6 +38,7 @@ public class DeterminationEventDetailElement extends private TermComboElement combo_determinationModifier; private CheckboxElement checkbox_preferredFlag; private EntitySelectionElement selection_taxonBase; + private EntitySelectionElement selectionTaxonNameBase; // private TODO a set of references @@ -44,7 +46,7 @@ public class DeterminationEventDetailElement extends *

* Constructor for DeterminationEventDetailElement. *

- * + * * @param formFactory * a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory} * object. @@ -67,7 +69,7 @@ public class DeterminationEventDetailElement extends /* * (non-Javadoc) - * + * * @see * eu.etaxonomy.taxeditor.section.AbstractEntityCollectionElement#setEntity * (eu.etaxonomy.cdm.model.common.IVersionableEntity) @@ -78,12 +80,13 @@ public class DeterminationEventDetailElement extends this.entity = entity; combo_determinationModifier.setSelection(entity.getModifier()); selection_taxonBase.setEntity(entity.getTaxon()); + selectionTaxonNameBase.setEntity(entity.getTaxonName()); super.setEntity(entity); } /* * (non-Javadoc) - * + * * @see * eu.etaxonomy.taxeditor.section.AbstractEntityCollectionElement#createControls * (eu.etaxonomy.taxeditor.forms.ICdmFormElement, int) @@ -91,27 +94,31 @@ public class DeterminationEventDetailElement extends /** {@inheritDoc} */ @Override public void createControls(ICdmFormElement element, int style) { + selectionTaxonNameBase = formFactory + .createSelectionElement(TaxonNameBase.class, + getConversationHolder(), element, "Taxon Name", null, + EntitySelectionElement.NOTHING, style); selection_taxonBase = formFactory .createSelectionElement(TaxonBase.class, getConversationHolder(), element, "Taxon", null, EntitySelectionElement.NOTHING, style); - + // TODO set of references super.createControls(element, style); - + element_timePeriod.setLabel("Determined When"); selection_agent.setLabel("Determined by"); - - - combo_determinationModifier = formFactory.createTermComboElement(DefinedTerm.class, + + + combo_determinationModifier = formFactory.createDefinedTermComboElement(TermType.DeterminationModifier, element, "Modifier", null, style); } /* * (non-Javadoc) - * + * * @see * eu.etaxonomy.taxeditor.section.AbstractEntityCollectionElement#handleEvent * (java.lang.Object) @@ -123,8 +130,19 @@ public class DeterminationEventDetailElement extends getEntity().setModifier(combo_determinationModifier.getSelection()); } else if (eventSource == checkbox_preferredFlag) { getEntity().setPreferredFlag(checkbox_preferredFlag.getSelection()); + } else if (eventSource == selectionTaxonNameBase) { + getEntity().setTaxonName(selectionTaxonNameBase.getSelection()); + //empty taxon field if name does not belong the taxon + TaxonBase taxonBase = selection_taxonBase.getEntity(); + if(taxonBase!=null && taxonBase.getName()!=null + && !taxonBase.getName().equals(selectionTaxonNameBase.getSelection())){ + selection_taxonBase.setEntity(null); + } } else if (eventSource == selection_taxonBase) { - getEntity().setTaxon(selection_taxonBase.getSelection()); + TaxonBase taxon = selection_taxonBase.getSelection(); + getEntity().setTaxon(taxon); + getEntity().setTaxonName(taxon.getName()); + selectionTaxonNameBase.setEntity(taxon.getName()); } // else if(eventSource == TODO set of references){ //