From 9f69b92da434543eeffcbb979798a442a46b9520 Mon Sep 17 00:00:00 2001 From: Patric Plitzner Date: Tue, 28 Apr 2015 12:59:05 +0000 Subject: [PATCH] - implemented geo scope detail section (#4592) --- .gitattributes | 1 + .../taxeditor/ui/element/CdmFormFactory.java | 7 ++ .../occurrence/GeoScopeDetailSection.java | 103 ++++++++++++++++++ 3 files changed, 111 insertions(+) create mode 100644 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/GeoScopeDetailSection.java diff --git a/.gitattributes b/.gitattributes index 31c2a8e4d..c5987994c 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1663,6 +1663,7 @@ eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occ eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/GatheringEventDetailElement.java -text eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/GatheringEventDetailSection.java -text eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/GatheringEventWizardPage.java -text +eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/GeoScopeDetailSection.java -text eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/IDerivedUnitFacadeDetailSection.java -text eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/NamedAreaDetailElement.java -text eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/OriginalLabelDataSection.java -text 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 651c98c7c..ffcf7a4f1 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 @@ -222,6 +222,7 @@ import eu.etaxonomy.taxeditor.ui.section.occurrence.FieldUnitGeneralDetailElemen import eu.etaxonomy.taxeditor.ui.section.occurrence.FieldUnitGeneralDetailSection; import eu.etaxonomy.taxeditor.ui.section.occurrence.GatheringEventDetailElement; import eu.etaxonomy.taxeditor.ui.section.occurrence.GatheringEventDetailSection; +import eu.etaxonomy.taxeditor.ui.section.occurrence.GeoScopeDetailSection; import eu.etaxonomy.taxeditor.ui.section.occurrence.NamedAreaDetailElement; import eu.etaxonomy.taxeditor.ui.section.occurrence.OriginalLabelDataSection; import eu.etaxonomy.taxeditor.ui.section.occurrence.SourceCollectionDetailSection; @@ -2326,6 +2327,12 @@ public class CdmFormFactory extends FormToolkit { return section; } + public GeoScopeDetailSection createGeoScopeDetailSection(ConversationHolder conversation, ICdmFormElement parentElement, int style){ + GeoScopeDetailSection section = new GeoScopeDetailSection(this, conversation, parentElement, style); + addAndAdaptSection(parentElement, section); + return section; + } + public IdentifierDetailSection createIdentifierDetailSection(ConversationHolder conversation, ICdmFormElement parentElement, int style){ IdentifierDetailSection section = new IdentifierDetailSection(this, conversation, parentElement, style); addAndAdaptSection(parentElement, section); diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/GeoScopeDetailSection.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/GeoScopeDetailSection.java new file mode 100644 index 000000000..8ce8454a5 --- /dev/null +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/GeoScopeDetailSection.java @@ -0,0 +1,103 @@ +// $Id$ +/** +* Copyright (C) 2007 EDIT +* 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. +*/ + +package eu.etaxonomy.taxeditor.ui.section.occurrence; + +import java.util.Collection; + +import eu.etaxonomy.cdm.api.conversation.ConversationHolder; +import eu.etaxonomy.cdm.model.location.NamedArea; +import eu.etaxonomy.cdm.model.taxon.Classification; +import eu.etaxonomy.taxeditor.ui.dialog.selection.NamedAreaSelectionDialog; +import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory; +import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement; +import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection; + +/** + *

+ * CollectingAreasDetailSection class. + *

+ * + * @author n.hoffmann + * @created Oct 14, 2010 + * @version 1.0 + */ +public class GeoScopeDetailSection extends AbstractEntityCollectionSection { + + /** + *

Constructor for CollectingAreasDetailSection.

+ * + * @param formFactory a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory} object. + * @param conversation a {@link eu.etaxonomy.cdm.api.conversation.ConversationHolder} object. + * @param parentElement a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement} object. + * @param style a int. + */ + public GeoScopeDetailSection(CdmFormFactory formFactory, + ConversationHolder conversation, ICdmFormElement parentElement, int style) { + super(formFactory, conversation, parentElement, "Geo Scopes", style); + } + + /* (non-Javadoc) + * @see eu.etaxonomy.taxeditor.section.AbstractEntityCollectionSection#getCollection(java.lang.Object) + */ + /** {@inheritDoc} */ + @Override + public Collection getCollection(Classification entity) { + return entity.getGeoScopes(); + } + + /* (non-Javadoc) + * @see eu.etaxonomy.taxeditor.section.AbstractEntityCollectionSection#createNewElement() + */ + /** {@inheritDoc} */ + @Override + public NamedArea createNewElement() { + NamedArea selection = NamedAreaSelectionDialog.select(getLayoutComposite().getShell(), getConversationHolder(), null); + + return selection; + } + + /* (non-Javadoc) + * @see eu.etaxonomy.taxeditor.section.AbstractEntityCollectionSection#addElement(eu.etaxonomy.cdm.model.common.IVersionableEntity) + */ + /** {@inheritDoc} */ + @Override + public void addElement(NamedArea element) { + getEntity().addGeoScope(element); + } + + /* (non-Javadoc) + * @see eu.etaxonomy.taxeditor.section.AbstractEntityCollectionSection#removeElement(eu.etaxonomy.cdm.model.common.IVersionableEntity) + */ + /** {@inheritDoc} */ + @Override + public void removeElement(NamedArea element) { + getEntity().removeGeoScope(element); + } + + /* (non-Javadoc) + * @see eu.etaxonomy.taxeditor.section.AbstractEntityCollectionSection#getEmptyString() + */ + /** {@inheritDoc} */ + @Override + public String getEmptyString() { + return "No geo scopes yet."; + } + + /* (non-Javadoc) + * @see eu.etaxonomy.taxeditor.section.AbstractEntityCollectionSection#getTooltipString() + */ + /** {@inheritDoc} */ + @Override + protected String getTooltipString() { + return "Add a geo scope"; + } + +} -- 2.34.1