eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/DefinedTermDragListener.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/DefinedTermDropAdapter.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/DefinedTermEditor.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/DefinedTermMenuFactory.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/TermBasePropertyTester.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/TermContentProvider.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/TermLabelProvider.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/handler/CreateTermVocabularyHandler.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/handler/DeleteTermBaseHandler.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/handler/OpenDefinedTermEditorHandler.java -text
-eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/handler/OpenDefinedTermMenu.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/AbstractDefinedTermEditorInput.java -text
-eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/DefinedTermEditorInputFactory.java -text
-eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/ExtensionTypeEditorInput.java -text
-eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/FeatureEditorInput.java -text
-eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/MarkerTypeEditorInput.java -text
-eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/ModifierEditorInput.java -text
-eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/NamedAreaEditorInput.java -text
-eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/NamedAreaLevelEditorInput.java -text
-eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/StateEditorInput.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/input/TermEditorInput.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/operation/CreateDefinedTermOperation.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/operation/CreateTermVocabularyOperation.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/operation/DeleteTermBaseOperation.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/combo/TermComboElement.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/LoginDialog.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/UriDialog.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/AbstractFilteredCdmEnumSelectionDialog.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/AbstractFilteredCdmResourceSelectionDialog.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/AgentSelectionDialog.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/ClassificationSelectionDialog.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/NameSelectionDialog.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/NamedAreaSelectionDialog.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/NomenclaturalAuthorTeamSelectionDialog.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/OriginalSourceTypeSelectionDialog.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/PersonSelectionDialog.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/PolytomousKeySelectionDialog.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/ReferenceSelectionDialog.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/SelectionDialogFactory.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/SpecimenOrObservationTypeSelectionDialog.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/TaxonBaseSelectionDialog.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/TaxonNodeSelectionDialog.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/TeamSelectionDialog.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/CdmPropertyChangeEvent.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/CheckboxElement.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/DateDetailSection.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/GatheringEventUnitElement.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/ICdmFormElement.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/IEnableableFormElement.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/IEntityElement.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/LabelElement.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/LanguageStringWithLabelElement.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/LayoutConstants.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/MinMaxTextSection.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/MultilanguageTextElement.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/NumberWithLabelElement.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/PartialElement.java -text
id="eu.etaxonomy.taxeditor.application.perspective.polytomous"\r
name="Polytomous Key">\r
</perspective>\r
- <perspective\r
+ <!-- FIXME:3.3MC -->\r
+ <!--perspective\r
class="eu.etaxonomy.taxeditor.perspective.Uses"\r
id="eu.etaxonomy.taxeditor.application.perspective.uses"\r
name="Uses">\r
- </perspective>\r
+ </perspective-->\r
\r
</extension>\r
<!--extension\r
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
+import eu.etaxonomy.cdm.api.service.IOccurrenceService;
+import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
import eu.etaxonomy.cdm.model.common.CdmBase;
import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
+import eu.etaxonomy.taxeditor.store.CdmStore;
/**
* A list-based editor, where each line in the editor's document is associated with a domain object.
*/
public LineAnnotation createAnnotatedLineNewObject(Object key, String titleCache) {
+
+
// Create new object
Object entity = ((AnnotatedLineDocumentProvider) getDocumentProvider()).
getEntityCreator(getEditorInput()).createEntity(key, titleCache);
-
+ // checks if the creator also saves the entity (in a different conversation), in which case
+ // we need to bind back this editors conversation
+ // we also need to reload the entity because the conversation used to
+ // to create / save the entity may have been closed
+ if(entity != null && ((AnnotatedLineDocumentProvider) getDocumentProvider()).getEntityCreator(getEditorInput()).savesEntity()) {
+ getConversationHolder().bind();
+ Object object = CdmStore.getService(IOccurrenceService.class).load(((CdmBase)entity).getUuid());
+ entity = HibernateProxyHelper.deproxy(object);
+ }
+
+ if(entity == null) {
+ return null;
+ }
LineAnnotation annotation = createAnnotatedLine(entity);
if (annotation != null) {
annotation.markAsNew(true);
}
+
return annotation;
}
+ @Override
+ public boolean isDirty() {
+ return super.isDirty();
+ }
+
/**
* Creates an annotated line at the end of the document. The annotation contains the entity.
*
* @return a {@link java.util.Map} object.
*/
Map<Object, String> getKeyLabelPairs();
+
+ /**
+ * Return a flag indicating whether this creator also saves the entities
+ *
+ * @return true or false
+ */
+ boolean savesEntity();
+
+
}
Object key = ((Event)event.getTrigger()).data;
if (key != null) {
-
-
- String text = ((Event)event.getTrigger()).text;
- InputDialog dialog = new InputDialog(HandlerUtil.getActiveShell(event), "Create " + text, "Enter new " + text, "", null);
- if (dialog.open() != Window.CANCEL) {
- ((AnnotatedLineEditor) editor).createAnnotatedLineNewObject(key, dialog.getValue());
- }
+
+ ((AnnotatedLineEditor) editor).createAnnotatedLineNewObject(key, "Untitled");
} else {
((AnnotatedLineEditor) editor).createAnnotatedLineNewObject();
import org.eclipse.ui.actions.CompoundContributionItem;
import org.eclipse.ui.handlers.IHandlerService;
+import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
import eu.etaxonomy.taxeditor.annotatedlineeditor.IEntityCreator;
import eu.etaxonomy.taxeditor.bulkeditor.BulkEditorUtil;
import eu.etaxonomy.taxeditor.bulkeditor.IBulkEditorConstants;
}
}
});
+
+ //FIXME:3.3MC Need corresponding Details Viewer section for FieldUnit
+ if(key == SpecimenOrObservationType.FieldUnit){
+ menuItem.setEnabled(false);
+ }
}
/**
import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.handlers.HandlerUtil;
-import eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase;
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
import eu.etaxonomy.taxeditor.bulkeditor.BulkEditor;
import eu.etaxonomy.taxeditor.bulkeditor.BulkEditorUtil;
import eu.etaxonomy.taxeditor.bulkeditor.derivedunit.operation.AddDerivedUnitFacadeMediaOperation;
if(selection instanceof IStructuredSelection){
Object element = ((IStructuredSelection) selection).getFirstElement();
- if(element instanceof DerivedUnitBase){
+ if(element instanceof DerivedUnit){
try{
- AbstractPostOperation operation = new AddDerivedUnitFacadeMediaOperation(event.getCommand().getName(), BulkEditorUtil.getUndoContext(), (DerivedUnitBase) element, getMode(), postOperationEnabled);
+ AbstractPostOperation operation = new AddDerivedUnitFacadeMediaOperation(event.getCommand().getName(), BulkEditorUtil.getUndoContext(), (DerivedUnit) element, getMode(), postOperationEnabled);
BulkEditorUtil.executeOperation(operation);
} catch (NotDefinedException e) {
BulkEditorUtil.warn(getClass(), "Command name not set.");
import eu.etaxonomy.cdm.api.facade.DerivedUnitFacadeNotSupportedException;
import eu.etaxonomy.cdm.model.description.DescriptionBase;
import eu.etaxonomy.cdm.model.description.SpecimenDescription;
-import eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase;
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
import eu.etaxonomy.taxeditor.bulkeditor.BulkEditorUtil;
import eu.etaxonomy.taxeditor.operation.AbstractPostOperation;
import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
public static final int DERIVED_UNIT_MEDIA = 0;
public static final int FIELD_OBJECT_MEDIA = 1;
- private DerivedUnitBase derivedUnit;
+ private DerivedUnit derivedUnit;
private int mode;
/**
* @param undoContext
* @param postOperationEnabled
*/
- public AddDerivedUnitFacadeMediaOperation(String label, IUndoContext undoContext, DerivedUnitBase derivedUnit,
+ public AddDerivedUnitFacadeMediaOperation(String label, IUndoContext undoContext, DerivedUnit derivedUnit,
int mode, IPostOperationEnabled postOperationEnabled) {
super(label, undoContext, postOperationEnabled);
result.put(Person.class, "Author");
return result;
}
+
+ @Override
+ public boolean savesEntity() {
+ // TODO Auto-generated method stub
+ return false;
+ }
}
return result;
}
+ @Override
+ public boolean savesEntity() {
+ // TODO Auto-generated method stub
+ return false;
+ }
+
}
}
return result;
}
+
+ @Override
+ public boolean savesEntity() {
+ // TODO Auto-generated method stub
+ return false;
+ }
}
package eu.etaxonomy.taxeditor.bulkeditor.input.entitycreator;
+import java.util.Comparator;
import java.util.HashMap;
import java.util.Map;
+import java.util.TreeMap;
import org.apache.log4j.Logger;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.jface.wizard.WizardDialog;
-import eu.etaxonomy.cdm.model.molecular.DnaSample;
import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
-import eu.etaxonomy.cdm.model.occurrence.FieldObservation;
-import eu.etaxonomy.cdm.model.occurrence.Fossil;
-import eu.etaxonomy.cdm.model.occurrence.LivingBeing;
-import eu.etaxonomy.cdm.model.occurrence.Observation;
-import eu.etaxonomy.cdm.model.occurrence.Specimen;
import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
+import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
import eu.etaxonomy.taxeditor.annotatedlineeditor.IEntityCreator;
+import eu.etaxonomy.taxeditor.bulkeditor.BulkEditorUtil;
+import eu.etaxonomy.taxeditor.newWizard.NewDerivedUnitBaseWizard;
/**
* <p>
/** {@inheritDoc} */
@Override
public SpecimenOrObservationBase createEntity(String text) {
- return createEntity(Specimen.class, text);
+
+ return createEntity(DerivedUnit.class, text);
}
/** {@inheritDoc} */
@Override
public SpecimenOrObservationBase createEntity(Object key, String text) {
+
SpecimenOrObservationBase specimenOrObservation = null;
+ NewDerivedUnitBaseWizard wizard = new NewDerivedUnitBaseWizard((SpecimenOrObservationType)key);
+ wizard.init(null, null);
+ if(wizard.getEntity() != null) {
+ WizardDialog dialog = new WizardDialog(BulkEditorUtil.getShell(), wizard);
+ int status = dialog.open();
- if (FieldObservation.class.equals((key))) {
- specimenOrObservation = FieldObservation.NewInstance();
- } else if (DerivedUnit.class.equals((key))) {
- specimenOrObservation = DerivedUnit.NewInstance();
- } else if (LivingBeing.class.equals((key))) {
- specimenOrObservation = LivingBeing.NewInstance();
- } else if (Observation.class.equals((key))) {
- specimenOrObservation = Observation.NewInstance();
- } else if (Specimen.class.equals((key))) {
- specimenOrObservation = Specimen.NewInstance();
- } else if (DnaSample.class.equals((key))) {
- specimenOrObservation = DnaSample.NewInstance();
- } else if (Fossil.class.equals((key))) {
- specimenOrObservation = Fossil.NewInstance();
- }
-
- if (specimenOrObservation != null) {
- specimenOrObservation.setTitleCache(text, true);
- }
+ if (status == IStatus.OK) {
+ specimenOrObservation = wizard.getEntity();
+ }
+ }
return specimenOrObservation;
}
*/
@Override
public Map<Object, String> getKeyLabelPairs() {
- Map<Object, String> result = new HashMap<Object, String>();
-
- result.put(Specimen.class, "Specimen");
- result.put(Observation.class, "Observation");
- result.put(LivingBeing.class, "Living Being");
- result.put(Fossil.class, "Fossil");
- result.put(DerivedUnit.class, "Derived Unit");
-
- // Omitted at the moment see #2266
- // result.put(DnaSample.class, "Dna Sample");
+ Comparator<Object> comparator = new Comparator<Object>() {
+ public int compare(Object o1, Object o2) {
+ String key1 = ((SpecimenOrObservationType)o1).getKey();
+ String key2 = ((SpecimenOrObservationType)o2).getKey();
+ return key1.compareTo(key2);
+ }
+ };
+ Map<Object, String> result = new TreeMap<Object, String>(comparator);
- // Omitted see #2266
- // result.put(FieldObservation.class, "Field Observation");
- // result.put(Observation.class, "Observation");
+ for(SpecimenOrObservationType sooType : SpecimenOrObservationType.values()) {
+ result.put(sooType, sooType.getMessage());
+ }
return result;
}
+
+ @Override
+ public boolean savesEntity() {
+ // TODO Auto-generated method stub
+ return true;
+ }
+
+
}
}
return result;
}
+
+ @Override
+ public boolean savesEntity() {
+ // TODO Auto-generated method stub
+ return false;
+ }
}
return result;
}
+ @Override
+ public boolean savesEntity() {
+ // TODO Auto-generated method stub
+ return false;
+ }
+
}
<classpathentry exported="true" kind="lib" path="lib/batik-util-1.7.jar"/>
<classpathentry exported="true" kind="lib" path="lib/batik-xml-1.7.jar"/>
<classpathentry exported="true" kind="lib" path="lib/c3p0-0.9.2.jar"/>
- <classpathentry exported="true" kind="lib" path="lib/cdmlib-commons-3.2.3-SNAPSHOT-sources.jar"/>
- <classpathentry exported="true" kind="lib" path="lib/cdmlib-commons-3.2.3-SNAPSHOT.jar"/>
- <classpathentry exported="true" kind="lib" path="lib/cdmlib-ext-3.2.3-SNAPSHOT-sources.jar"/>
- <classpathentry exported="true" kind="lib" path="lib/cdmlib-ext-3.2.3-SNAPSHOT.jar"/>
- <classpathentry exported="true" kind="lib" path="lib/cdmlib-io-3.2.3-SNAPSHOT-sources.jar"/>
- <classpathentry exported="true" kind="lib" path="lib/cdmlib-io-3.2.3-SNAPSHOT.jar"/>
- <classpathentry exported="true" kind="lib" path="lib/cdmlib-model-3.2.3-SNAPSHOT-sources.jar"/>
- <classpathentry exported="true" kind="lib" path="lib/cdmlib-model-3.2.3-SNAPSHOT.jar"/>
- <classpathentry exported="true" kind="lib" path="lib/cdmlib-persistence-3.2.3-SNAPSHOT-sources.jar"/>
- <classpathentry exported="true" kind="lib" path="lib/cdmlib-persistence-3.2.3-SNAPSHOT.jar"/>
- <classpathentry exported="true" kind="lib" path="lib/cdmlib-print-3.2.3-SNAPSHOT-sources.jar"/>
- <classpathentry exported="true" kind="lib" path="lib/cdmlib-print-3.2.3-SNAPSHOT.jar"/>
- <classpathentry exported="true" kind="lib" path="lib/cdmlib-remote-3.2.3-SNAPSHOT-sources.jar"/>
- <classpathentry exported="true" kind="lib" path="lib/cdmlib-remote-3.2.3-SNAPSHOT.jar"/>
- <classpathentry exported="true" kind="lib" path="lib/cdmlib-services-3.2.3-SNAPSHOT-sources.jar"/>
- <classpathentry exported="true" kind="lib" path="lib/cdmlib-services-3.2.3-SNAPSHOT.jar"/>
<classpathentry exported="true" kind="lib" path="lib/cglib-nodep-2.2.2.jar"/>
<classpathentry exported="true" kind="lib" path="lib/com.springsource.org.aopalliance-1.0.0.jar"/>
<classpathentry exported="true" kind="lib" path="lib/com.springsource.org.apache.commons.logging-1.1.1.jar"/>
<classpathentry exported="true" kind="lib" path="lib/google-api-translate-java-0.92.jar"/>
<classpathentry exported="true" kind="lib" path="lib/odfdom-0.8.jar"/>
<classpathentry exported="true" kind="lib" path="lib/h2mig_pagestore_addon.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/cdmlib-commons-3.3.0-SNAPSHOT-sources.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/cdmlib-commons-3.3.0-SNAPSHOT.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/cdmlib-ext-3.3.0-SNAPSHOT-sources.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/cdmlib-ext-3.3.0-SNAPSHOT.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/cdmlib-io-3.3.0-SNAPSHOT-sources.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/cdmlib-io-3.3.0-SNAPSHOT.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/cdmlib-model-3.3.0-SNAPSHOT-sources.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/cdmlib-model-3.3.0-SNAPSHOT.jar" sourcepath="lib/cdmlib-model-3.3.0-SNAPSHOT-sources.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/cdmlib-persistence-3.3.0-SNAPSHOT-sources.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/cdmlib-persistence-3.3.0-SNAPSHOT.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/cdmlib-print-3.3.0-SNAPSHOT-sources.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/cdmlib-print-3.3.0-SNAPSHOT.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/cdmlib-remote-3.3.0-SNAPSHOT-sources.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/cdmlib-remote-3.3.0-SNAPSHOT.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/cdmlib-services-3.3.0-SNAPSHOT-sources.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/cdmlib-services-3.3.0-SNAPSHOT.jar"/>
<classpathentry kind="output" path="target/classes"/>
</classpath>
lib/batik-util-1.7.jar,
lib/batik-xml-1.7.jar,
lib/c3p0-0.9.2.jar,
- lib/cdmlib-commons-3.2.3-SNAPSHOT-sources.jar,
- lib/cdmlib-commons-3.2.3-SNAPSHOT.jar,
- lib/cdmlib-ext-3.2.3-SNAPSHOT-sources.jar,
- lib/cdmlib-ext-3.2.3-SNAPSHOT.jar,
- lib/cdmlib-io-3.2.3-SNAPSHOT-sources.jar,
- lib/cdmlib-io-3.2.3-SNAPSHOT.jar,
- lib/cdmlib-model-3.2.3-SNAPSHOT-sources.jar,
- lib/cdmlib-model-3.2.3-SNAPSHOT.jar,
- lib/cdmlib-persistence-3.2.3-SNAPSHOT-sources.jar,
- lib/cdmlib-persistence-3.2.3-SNAPSHOT.jar,
- lib/cdmlib-print-3.2.3-SNAPSHOT-sources.jar,
- lib/cdmlib-print-3.2.3-SNAPSHOT.jar,
- lib/cdmlib-remote-3.2.3-SNAPSHOT-sources.jar,
- lib/cdmlib-remote-3.2.3-SNAPSHOT.jar,
- lib/cdmlib-services-3.2.3-SNAPSHOT-sources.jar,
- lib/cdmlib-services-3.2.3-SNAPSHOT.jar,
lib/cglib-nodep-2.2.2.jar,
lib/com.springsource.org.aopalliance-1.0.0.jar,
lib/com.springsource.org.apache.commons.logging-1.1.1.jar,
lib/yjp-controller-api-redist-9.0.8.jar,
lib/google-api-translate-java-0.92.jar,
lib/odfdom-0.8.jar,
- lib/h2mig_pagestore_addon.jar
+ lib/h2mig_pagestore_addon.jar,
+ lib/cdmlib-commons-3.3.0-SNAPSHOT-sources.jar,
+ lib/cdmlib-commons-3.3.0-SNAPSHOT.jar,
+ lib/cdmlib-ext-3.3.0-SNAPSHOT-sources.jar,
+ lib/cdmlib-ext-3.3.0-SNAPSHOT.jar,
+ lib/cdmlib-io-3.3.0-SNAPSHOT-sources.jar,
+ lib/cdmlib-io-3.3.0-SNAPSHOT.jar,
+ lib/cdmlib-model-3.3.0-SNAPSHOT-sources.jar,
+ lib/cdmlib-model-3.3.0-SNAPSHOT.jar,
+ lib/cdmlib-persistence-3.3.0-SNAPSHOT-sources.jar,
+ lib/cdmlib-persistence-3.3.0-SNAPSHOT.jar,
+ lib/cdmlib-print-3.3.0-SNAPSHOT-sources.jar,
+ lib/cdmlib-print-3.3.0-SNAPSHOT.jar,
+ lib/cdmlib-remote-3.3.0-SNAPSHOT-sources.jar,
+ lib/cdmlib-remote-3.3.0-SNAPSHOT.jar,
+ lib/cdmlib-services-3.3.0-SNAPSHOT-sources.jar,
+ lib/cdmlib-services-3.3.0-SNAPSHOT.jar
lib/batik-util-1.7.jar,\\r
lib/batik-xml-1.7.jar,\\r
lib/c3p0-0.9.2.jar,\\r
- lib/cdmlib-commons-3.2.3-SNAPSHOT-sources.jar,\\r
- lib/cdmlib-commons-3.2.3-SNAPSHOT.jar,\\r
- lib/cdmlib-ext-3.2.3-SNAPSHOT-sources.jar,\\r
- lib/cdmlib-ext-3.2.3-SNAPSHOT.jar,\\r
- lib/cdmlib-io-3.2.3-SNAPSHOT-sources.jar,\\r
- lib/cdmlib-io-3.2.3-SNAPSHOT.jar,\\r
- lib/cdmlib-model-3.2.3-SNAPSHOT-sources.jar,\\r
- lib/cdmlib-model-3.2.3-SNAPSHOT.jar,\\r
- lib/cdmlib-persistence-3.2.3-SNAPSHOT-sources.jar,\\r
- lib/cdmlib-persistence-3.2.3-SNAPSHOT.jar,\\r
- lib/cdmlib-print-3.2.3-SNAPSHOT-sources.jar,\\r
- lib/cdmlib-print-3.2.3-SNAPSHOT.jar,\\r
- lib/cdmlib-remote-3.2.3-SNAPSHOT-sources.jar,\\r
- lib/cdmlib-remote-3.2.3-SNAPSHOT.jar,\\r
- lib/cdmlib-services-3.2.3-SNAPSHOT-sources.jar,\\r
- lib/cdmlib-services-3.2.3-SNAPSHOT.jar,\\r
lib/cglib-nodep-2.2.2.jar,\\r
lib/com.springsource.org.aopalliance-1.0.0.jar,\\r
lib/com.springsource.org.apache.commons.logging-1.1.1.jar,\\r
lib/yjp-controller-api-redist-9.0.8.jar,\\r
lib/google-api-translate-java-0.92.jar,\\r
lib/odfdom-0.8.jar,\\r
- lib/h2mig_pagestore_addon.jar\r
+ lib/h2mig_pagestore_addon.jar,\\r
+ lib/cdmlib-commons-3.3.0-SNAPSHOT-sources.jar,\\r
+ lib/cdmlib-commons-3.3.0-SNAPSHOT.jar,\\r
+ lib/cdmlib-ext-3.3.0-SNAPSHOT-sources.jar,\\r
+ lib/cdmlib-ext-3.3.0-SNAPSHOT.jar,\\r
+ lib/cdmlib-io-3.3.0-SNAPSHOT-sources.jar,\\r
+ lib/cdmlib-io-3.3.0-SNAPSHOT.jar,\\r
+ lib/cdmlib-model-3.3.0-SNAPSHOT-sources.jar,\\r
+ lib/cdmlib-model-3.3.0-SNAPSHOT.jar,\\r
+ lib/cdmlib-persistence-3.3.0-SNAPSHOT-sources.jar,\\r
+ lib/cdmlib-persistence-3.3.0-SNAPSHOT.jar,\\r
+ lib/cdmlib-print-3.3.0-SNAPSHOT-sources.jar,\\r
+ lib/cdmlib-print-3.3.0-SNAPSHOT.jar,\\r
+ lib/cdmlib-remote-3.3.0-SNAPSHOT-sources.jar,\\r
+ lib/cdmlib-remote-3.3.0-SNAPSHOT.jar,\\r
+ lib/cdmlib-services-3.3.0-SNAPSHOT-sources.jar,\\r
+ lib/cdmlib-services-3.3.0-SNAPSHOT.jar\r
\r
ITreeNode parentNode = CdmStore.getService(IClassificationService.class).getTreeNodeByUuid(parentNodeUuid);
Taxon newTaxon = Taxon.NewInstance(name, parentNode.getReference());
- TaxonNode newTaxonNode = parentNode.addChildTaxon(newTaxon, parentNode.getReference(), parentNode.getMicroReference(), null);
+ TaxonNode newTaxonNode = parentNode.addChildTaxon(newTaxon, parentNode.getReference(), parentNode.getMicroReference());
// add the new taxon to the editors persistence context
UUID newTaxonNodeUuid = CdmStore.getService(ITaxonNodeService.class).save(newTaxonNode);
import eu.etaxonomy.cdm.api.service.IFeatureTreeService;\r
import eu.etaxonomy.cdm.api.service.ITermService;\r
import eu.etaxonomy.cdm.api.service.IVocabularyService;\r
+import eu.etaxonomy.cdm.model.common.DefinedTerm;\r
import eu.etaxonomy.cdm.model.common.MarkerType;\r
import eu.etaxonomy.cdm.model.common.TermVocabulary;\r
import eu.etaxonomy.cdm.model.description.Feature;\r
import eu.etaxonomy.cdm.model.description.FeatureNode;\r
import eu.etaxonomy.cdm.model.description.FeatureTree;\r
-import eu.etaxonomy.cdm.model.description.Modifier;\r
import eu.etaxonomy.cdm.model.description.State;\r
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;\r
import eu.etaxonomy.taxeditor.model.ContextListenerAdapter;\r
import eu.etaxonomy.taxeditor.store.CdmStore;\r
import eu.etaxonomy.taxeditor.store.StoreUtil;\r
\r
\r
private void createHumanGroupVocabulary(IProgressMonitor monitor,ConversationHolder conversation) {\r
- TermVocabulary<Modifier> humanGroupVocabulary = (TermVocabulary<Modifier>) CdmStore.getService(IVocabularyService.class).find(UsageTermCollection.uuidHumanGroupVocabulary);\r
+ TermVocabulary<DefinedTerm> humanGroupVocabulary = (TermVocabulary<DefinedTerm>) CdmStore.getService(IVocabularyService.class).find(UsageTermCollection.uuidHumanGroupVocabulary);\r
if (humanGroupVocabulary == null){\r
monitor.subTask("create human group vocabulary");\r
URI termSourceUri = null;\r
try {\r
- termSourceUri = new URI("eu.etaxonomy.cdm.model.description.Modifier");\r
+ termSourceUri = new URI("eu.etaxonomy.cdm.model.description.DefinedTerm");\r
} catch (URISyntaxException e) {\r
e.printStackTrace();\r
}\r
- humanGroupVocabulary = TermVocabulary.NewInstance(UsageTermCollection.humanGroupLabel, UsageTermCollection.humanGroupLabel, null, termSourceUri);\r
+ \r
+ //FIXME:3.3MC----\r
+ //humanGroupVocabulary = TermVocabulary.NewInstance(UsageTermCollection.humanGroupLabel, UsageTermCollection.humanGroupLabel, null, termSourceUri);\r
+ humanGroupVocabulary = null;\r
humanGroupVocabulary.setUuid(UsageTermCollection.uuidHumanGroupVocabulary);\r
- Modifier newDummyModifier = Modifier.NewInstance(UsageTermCollection.notAvailableLabel, UsageTermCollection.notAvailableLabel, null);\r
+ //FIXME:3.3MC----\r
+ \r
+ //FIXME:3.3MC----\r
+ //DefinedTerm newDummyModifier = DefinedTerm.NewInstance(UsageTermCollection.notAvailableLabel, UsageTermCollection.notAvailableLabel, null);\r
+ DefinedTerm newDummyModifier = null;\r
newDummyModifier.setUuid(UsageTermCollection.uuidHumanGroupDummy);\r
- Modifier newSubDummyModifier = Modifier.NewInstance(UsageTermCollection.notAvailableLabel, UsageTermCollection.notAvailableLabel, null);\r
+ //FIXME:3.3MC----\r
+ \r
+ //FIXME:3.3MC----\r
+ //DefinedTerm newSubDummyModifier = DefinedTerm.NewInstance(UsageTermCollection.notAvailableLabel, UsageTermCollection.notAvailableLabel, null);\r
+ DefinedTerm newSubDummyModifier = null;\r
newSubDummyModifier.setUuid(UsageTermCollection.uuidEthnicGroupDummy);\r
+ //FIXME:3.3MC----\r
+ \r
newDummyModifier.addIncludes(newSubDummyModifier);\r
humanGroupVocabulary.addTerm(newDummyModifier);\r
CdmStore.getService(IVocabularyService.class).saveOrUpdate(humanGroupVocabulary);\r
\r
\r
private void createPlantVocabulary(IProgressMonitor monitor, ConversationHolder conversation) {\r
- TermVocabulary<Modifier> plantPartVocabulary = (TermVocabulary<Modifier>) CdmStore.getService(IVocabularyService.class).find(UsageTermCollection.uuidPlantPartVocabulary);\r
+ TermVocabulary<DefinedTerm> plantPartVocabulary = (TermVocabulary<DefinedTerm>) CdmStore.getService(IVocabularyService.class).find(UsageTermCollection.uuidPlantPartVocabulary);\r
if (plantPartVocabulary == null){\r
monitor.subTask("create plant part vocabulary");\r
URI termSourceUri = null;\r
try {\r
- termSourceUri = new URI("eu.etaxonomy.cdm.model.description.Modifier");\r
+ termSourceUri = new URI("eu.etaxonomy.cdm.model.description.DefinedTerm");\r
} catch (URISyntaxException e) {\r
e.printStackTrace();\r
}\r
- plantPartVocabulary = TermVocabulary.NewInstance(UsageTermCollection.plantPartLabel, UsageTermCollection.plantPartLabel, null, termSourceUri);\r
+ //FIXME:3.3MC----\r
+ //plantPartVocabulary = TermVocabulary.NewInstance(UsageTermCollection.plantPartLabel, UsageTermCollection.plantPartLabel, null, termSourceUri);\r
+ plantPartVocabulary = null;\r
plantPartVocabulary.setUuid(UsageTermCollection.uuidPlantPartVocabulary);\r
- Modifier newDummyModifier = Modifier.NewInstance(UsageTermCollection.notAvailableLabel, UsageTermCollection.notAvailableLabel, null);\r
+ //FIXME:3.3MC----\r
+ \r
+ //FIXME:3.3MC----\r
+ //DefinedTerm newDummyModifier = DefinedTerm.NewInstance(UsageTermCollection.notAvailableLabel, UsageTermCollection.notAvailableLabel, null);\r
+ DefinedTerm newDummyModifier = null;\r
newDummyModifier.setUuid(UsageTermCollection.uuidPlantPartDummy);\r
plantPartVocabulary.addTerm(newDummyModifier);\r
+ //FIXME:3.3MC----\r
+ \r
CdmStore.getService(IVocabularyService.class).saveOrUpdate(plantPartVocabulary);\r
conversation.commit(true);\r
}\r
\r
\r
private void createCountryVocabulary(IProgressMonitor monitor, ConversationHolder conversation) {\r
- TermVocabulary<Modifier> countryVocabulary = (TermVocabulary<Modifier>) CdmStore.getService(IVocabularyService.class).find(UsageTermCollection.uuidCountryVocabulary);\r
+ TermVocabulary<DefinedTerm> countryVocabulary = (TermVocabulary<DefinedTerm>) CdmStore.getService(IVocabularyService.class).find(UsageTermCollection.uuidCountryVocabulary);\r
if (countryVocabulary == null){\r
monitor.subTask("create country vocabulary");\r
URI termSourceUri = null;\r
try {\r
- termSourceUri = new URI("eu.etaxonomy.cdm.model.description.Modifier");\r
+ termSourceUri = new URI("eu.etaxonomy.cdm.model.description.DefinedTerm");\r
} catch (URISyntaxException e) {\r
e.printStackTrace();\r
}\r
- countryVocabulary = TermVocabulary.NewInstance(UsageTermCollection.countryLabel, UsageTermCollection.countryLabel, null, termSourceUri);\r
+ //FIXME:3.3MC----\r
+ //countryVocabulary = TermVocabulary.NewInstance(UsageTermCollection.countryLabel, UsageTermCollection.countryLabel, null, termSourceUri);\r
+ countryVocabulary = null;\r
countryVocabulary.setUuid(UsageTermCollection.uuidCountryVocabulary);\r
- Modifier newDummyModifier = Modifier.NewInstance(UsageTermCollection.notAvailableLabel, UsageTermCollection.notAvailableLabel, null);\r
+ //FIXME:3.3MC----\r
+ \r
+ //FIXME:3.3MC----\r
+ //DefinedTerm newDummyModifier = DefinedTerm.NewInstance(UsageTermCollection.notAvailableLabel, UsageTermCollection.notAvailableLabel, null);\r
+ DefinedTerm newDummyModifier = null;\r
newDummyModifier.setUuid(UsageTermCollection.uuidCountryDummy);\r
+ //FIXME:3.3MC----\r
countryVocabulary.addTerm(newDummyModifier);\r
CdmStore.getService(IVocabularyService.class).saveOrUpdate(countryVocabulary);\r
conversation.commit(true);\r
} catch (URISyntaxException e) {\r
e.printStackTrace();\r
}\r
- stateVocabulary = TermVocabulary.NewInstance(UsageTermCollection.useCategoryVocabularyLabel, UsageTermCollection.useCategoryVocabularyLabel, null, termSourceUri);\r
+ //FIXME:3.3MC----\r
+ //stateVocabulary = TermVocabulary.NewInstance(UsageTermCollection.useCategoryVocabularyLabel, UsageTermCollection.useCategoryVocabularyLabel, null, termSourceUri);\r
+ stateVocabulary = null;\r
stateVocabulary.setUuid(UsageTermCollection.uuidUseCategoryVocabulary);\r
+ //FIXME:3.3MC----\r
State newDummyState = State.NewInstance(UsageTermCollection.notAvailableLabel, UsageTermCollection.notAvailableLabel, null);\r
newDummyState.setUuid(UsageTermCollection.uuidUseCategoryDummy);\r
State newDummySubCat = State.NewInstance(UsageTermCollection.notAvailableLabel, UsageTermCollection.notAvailableLabel, null);\r
EditorStateManager stateManager = new EditorStateManager();
CdmStore.getContextManager().addContextListener(stateManager);
- UseObjectManager useManager = new UseObjectManager();
- CdmStore.getContextManager().addContextListener(useManager);
+ //FIXME:3.3MC----
+ //UseObjectManager useManager = new UseObjectManager();
+ //CdmStore.getContextManager().addContextListener(useManager);
+ //FIXME:3.3MC----
plugin = this;
logger.trace("Plugin started: " + this.getBundle().getSymbolicName());
monitor.worked(20);
synonym.setSec(null);
- newNode = parentNode.addChildTaxon(newTaxon, null, null, null);
+ newNode = parentNode.addChildTaxon(newTaxon, null, null);
if(synonymsInHomotypicalGroup != null){
Taxon taxon = newNode.getTaxon();
import eu.etaxonomy.cdm.model.description.DescriptionElementBase;
import eu.etaxonomy.cdm.model.description.SpecimenDescription;
import eu.etaxonomy.cdm.model.media.Media;
-import eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase;
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
import eu.etaxonomy.cdm.model.taxon.Taxon;
import eu.etaxonomy.taxeditor.editor.EditorUtil;
import eu.etaxonomy.taxeditor.editor.TaxonEditorInput;
return getImages((DescriptionBase) parentElement).toArray();
}
}
- else if (parentElement instanceof DerivedUnitBase){
+ else if (parentElement instanceof DerivedUnit){
try {
- DerivedUnitFacade facade = DerivedUnitFacade.NewInstance((DerivedUnitBase) parentElement);
+ DerivedUnitFacade facade = DerivedUnitFacade.NewInstance((DerivedUnit) parentElement);
// TODO at the moment we always create image galleries because the facade is like so.
// this should definitely change and we want to use normal getters and setters here
import org.eclipse.core.commands.ExecutionEvent;
import org.eclipse.core.commands.ExecutionException;
import org.eclipse.core.commands.common.NotDefinedException;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.ui.IEditorInput;
import org.eclipse.ui.IEditorPart;
import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.handlers.HandlerUtil;
-import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
-import eu.etaxonomy.cdm.api.facade.DerivedUnitFacadeNotSupportedException;
-import eu.etaxonomy.cdm.model.description.Feature;
-import eu.etaxonomy.cdm.model.description.SpecimenDescription;
-import eu.etaxonomy.cdm.model.description.TextData;
-import eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase;
import eu.etaxonomy.cdm.model.taxon.Taxon;
-import eu.etaxonomy.taxeditor.bulkeditor.BulkEditor;
-import eu.etaxonomy.taxeditor.bulkeditor.input.OccurrenceEditorInput;
import eu.etaxonomy.taxeditor.editor.EditorUtil;
import eu.etaxonomy.taxeditor.editor.TaxonEditorInput;
import eu.etaxonomy.taxeditor.editor.view.descriptive.operation.CreateTaxonDescriptionOperation;
import org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.IStyledLabelProvider;\r
import org.eclipse.jface.viewers.StyledString;\r
\r
+import eu.etaxonomy.cdm.model.common.DefinedTerm;\r
import eu.etaxonomy.cdm.model.common.Language;\r
import eu.etaxonomy.cdm.model.common.LanguageString;\r
import eu.etaxonomy.cdm.model.description.CategoricalData;\r
import eu.etaxonomy.cdm.model.description.DescriptionBase;\r
-import eu.etaxonomy.cdm.model.description.Modifier;\r
import eu.etaxonomy.cdm.model.description.StateData;\r
import eu.etaxonomy.cdm.model.description.TextData;\r
import eu.etaxonomy.taxeditor.model.FeatureNodeContainer;\r
}\r
}\r
else if (element instanceof CategoricalData) {\r
- if (!((CategoricalData) element).getStates().isEmpty()) {\r
+ if (!((CategoricalData) element).getStateData().isEmpty()) {\r
boolean isUseCategoryAbsent = true;\r
- for (StateData statedata : ((CategoricalData) element).getStates()) {\r
+ for (StateData statedata : ((CategoricalData) element).getStateData()) {\r
if(statedata.getState() != null && statedata.getModifyingText().get(CdmStore.getDefaultLanguage()) !=null && statedata.getModifyingText().get(CdmStore.getDefaultLanguage()).getText().equals(UsageTermCollection.useCategoryVocabularyLabel)) {\r
text = text + statedata.getState().getTitleCache() + ";";\r
isUseCategoryAbsent = false;\r
}\r
\r
boolean isUseSubCategoryAbsent = true;\r
- for (StateData statedata : ((CategoricalData) element).getStates()) {\r
+ for (StateData statedata : ((CategoricalData) element).getStateData()) {\r
if(statedata.getState() != null && statedata.getModifyingText().get(CdmStore.getDefaultLanguage()) !=null && statedata.getModifyingText().get(CdmStore.getDefaultLanguage()).getText().equals(UsageTermCollection.useSubCategoryVocabularyLabel)) {\r
text = text + statedata.getState().getTitleCache() + ";";\r
isUseSubCategoryAbsent = false;\r
text = text + UsageTermCollection.notAvailableLabel + ";" + UsageTermCollection.notAvailableLabel + ";";\r
}\r
if (!((CategoricalData) element).getModifiers().isEmpty()) {\r
- for (Modifier modifier: ((CategoricalData) element).getModifiers()){\r
+ for (DefinedTerm modifier: ((CategoricalData) element).getModifiers()){\r
modifier.getPartOf();\r
modifier.getVocabulary();\r
}\r
\r
boolean isPlantPartAbsent = true;\r
- for (Modifier modifier: ((CategoricalData) element).getModifiers()){\r
+ for (DefinedTerm modifier: ((CategoricalData) element).getModifiers()){\r
if(GetVocabularyType(modifier, UsageTermCollection.plantPartLabel)) {\r
text = text + modifier.getTitleCache()+ ";";\r
isPlantPartAbsent = false;\r
}\r
\r
boolean isHumanGroupAbsent = true;\r
- for (Modifier modifier: ((CategoricalData) element).getModifiers()){\r
+ for (DefinedTerm modifier: ((CategoricalData) element).getModifiers()){\r
if(GetVocabularyType(modifier, UsageTermCollection.humanGroupLabel)) {\r
text = text + modifier.getTitleCache()+ ";";\r
isHumanGroupAbsent = false;\r
}\r
\r
boolean isEthnicGroupAbsent = true;\r
- for (Modifier modifier: ((CategoricalData) element).getModifiers()){\r
+ for (DefinedTerm modifier: ((CategoricalData) element).getModifiers()){\r
if(GetVocabularyType(modifier, UsageTermCollection.ethnicGroupLabel)) {\r
text = text + modifier.getTitleCache()+ ";";\r
isEthnicGroupAbsent = false;\r
}\r
\r
boolean isCountryAbsent = true;\r
- for (Modifier modifier: ((CategoricalData) element).getModifiers()){\r
+ for (DefinedTerm modifier: ((CategoricalData) element).getModifiers()){\r
if(GetVocabularyType(modifier, UsageTermCollection.countryLabel)) {\r
text = text + modifier.getTitleCache()+ ";";\r
isCountryAbsent = false;\r
* @param vocabularyExpected\r
* @return\r
*/\r
- private boolean GetVocabularyType(Modifier term, String vocabularyExpected) {\r
+ private boolean GetVocabularyType(DefinedTerm term, String vocabularyExpected) {\r
if ((term.getPartOf() != null) && (term.getPartOf().getTitleCache().equals(vocabularyExpected))) {\r
return true;\r
}\r
newParentTaxon = Taxon.NewInstance(null, null);
tree = Classification.NewInstance(null);
- oldParentTaxonNode = tree.addChildTaxon(oldParentTaxon, null, null, null);
- newParentTaxonNode = tree.addChildTaxon(newParentTaxon, null, null, null);
+ oldParentTaxonNode = tree.addChildTaxon(oldParentTaxon, null, null);
+ newParentTaxonNode = tree.addChildTaxon(newParentTaxon, null, null);
- taxonNode = oldParentTaxonNode.addChildTaxon(taxon, null, null, null);
+ taxonNode = oldParentTaxonNode.addChildTaxon(taxon, null, null);
operation = null;//new MoveTaxonOperation("Move Taxon To Different Parent", undoContext, taxonNode, newParentTaxonNode, postOperation);
}
The <strong>"Enter credentials for embedded H2 database"</strong> pop-up box will open.
</li>
<li>Enter a Database name (for example the name of a user or a taxonomic group).</li>
- <li>Select <strong>ICBN</strong> or <strong>ICZN</strong> as appropriate.</li>
+ <li>Select <strong>ICNAFP</strong> or <strong>ICZN</strong> as appropriate.</li>
<li>Click <strong>Finish</strong>.</li>
<p><img src="../img/2_10f.jpg" alt="" /></p>
</ol>
<p>The new Datasource will appear in the Datasource panel: <p><img src="../img/2_10g.jpg" alt="" /></p></p>
<p>The process to create new datasources can be repeated as many times as desired.</p>
-
\ No newline at end of file
+
<li><strong>Matching:</strong> Experimental feature, not yet fully functional.</li>
<li><strong>Taxonomic:</strong> Name Relationships Type: for example "misspelling for", "basionym for".</li>
<li><strong>Name Type Designation Status:</strong> for example "monotypy", "present designation"</li>
- <li><strong>Nomenclatural Code:</strong> ICBN or ICZN.</li>
+ <li><strong>Nomenclatural Code:</strong> ICNAFP or ICZN.</li>
<li><strong>Nomenclatural Status Type:</strong> for example "invalid", "conserved".</li>
<li><strong>Ranks:</strong> for example "cultivar", "tribe".</li>
<li><strong>Specimen Type Designation Status:</strong> for example "epitype", "holotype".</li>
try {
for (TaxonNode taxonNode : taxonNodes){
TaxonNode newTaxonNode = newParentTreeNode.addChildNode(taxonNode,
- newParentTreeNode.getReference(), newParentTreeNode.getMicroReference(),
- taxonNode.getSynonymToBeUsed());
+ newParentTreeNode.getReference(), newParentTreeNode.getMicroReference());
taxonNodes.add(newTaxonNode);
monitor.worked(2);
}
// add the taxon
bind();
monitor.worked(20);
- childTaxonNode = parentNode.addChildTaxon(newTaxon, parentNode.getReference(), parentNode.getMicroReference(), null);
+ childTaxonNode = parentNode.addChildTaxon(newTaxon, parentNode.getReference(), parentNode.getMicroReference());
monitor.worked(40);
</visibleWhen>
</command>
</menu>
- <menu
- id="eu.etaxonomy.taxeditor.store.definedTermEditorMenu"
- label="Term Editor">
- <command
- commandId="eu.etaxonomy.taxeditor.store.openDefinedTermEditor"
- label="Named Area"
- style="push">
- <parameter
- name="eu.etaxonomy.taxeditor.store.openDefinedTermEditor.parameter"
- value="eu.etaxonomy.cdm.model.location.NamedArea">
- </parameter>
- </command>
- <command
- commandId="eu.etaxonomy.taxeditor.store.openDefinedTermEditor"
- label="Named Area Level"
- style="push">
- <parameter
- name="eu.etaxonomy.taxeditor.store.openDefinedTermEditor.parameter"
- value="eu.etaxonomy.cdm.model.location.NamedAreaLevel">
- </parameter>
- </command>
- <separator
- name="eu.etaxonomy.taxeditor.store.definedTermEditorMenu.separator2"
- visible="true">
- </separator>
- <command
- commandId="eu.etaxonomy.taxeditor.store.openDefinedTermEditor"
- label="Extension Type"
- style="push">
- <parameter
- name="eu.etaxonomy.taxeditor.store.openDefinedTermEditor.parameter"
- value="eu.etaxonomy.cdm.model.common.ExtensionType">
- </parameter>
- </command>
- <command
- commandId="eu.etaxonomy.taxeditor.store.openDefinedTermEditor"
- label="Marker Type"
- style="push">
- <parameter
- name="eu.etaxonomy.taxeditor.store.openDefinedTermEditor.parameter"
- value="eu.etaxonomy.cdm.model.common.MarkerType">
- </parameter>
- </command>
- <command
- commandId="eu.etaxonomy.taxeditor.store.openDefinedTermEditor"
- label="State"
- style="push">
- <parameter
- name="eu.etaxonomy.taxeditor.store.openDefinedTermEditor.parameter"
- value="eu.etaxonomy.cdm.model.description.State">
- </parameter>
- </command>
- <separator
- name="eu.etaxonomy.taxeditor.store.definedTermEditorMenu.separator3"
- visible="true">
- </separator>
- <command
- commandId="eu.etaxonomy.taxeditor.store.openDefinedTermEditor"
- label="Feature"
- style="push">
- <parameter
- name="eu.etaxonomy.taxeditor.store.openDefinedTermEditor.parameter"
- value="eu.etaxonomy.cdm.model.description.Feature">
- </parameter>
- </command>
- <command
- commandId="eu.etaxonomy.taxeditor.store.openDefinedTermEditor"
- label="Modifier"
- style="push">
- <parameter
- name="eu.etaxonomy.taxeditor.store.openDefinedTermEditor.parameter"
- value="eu.etaxonomy.cdm.model.description.Modifier">
- </parameter>
- </command>
- </menu>
+ </menuContribution>
+ <menuContribution
+ class="eu.etaxonomy.taxeditor.editor.definedterm.DefinedTermMenuFactory"
+ locationURI="menu:org.eclipse.ui.main.menu.window?before=eu.etaxonomy.taxeditor.application.windowMenu.last">
</menuContribution>
<menuContribution
locationURI="menu:org.eclipse.ui.main.menu.file?after=eu.etaxonomy.taxeditor.application.filemenu.io">
name="inputType"
optional="true">
</commandParameter>
+ <commandParameter
+ id="eu.etaxonomy.taxeditor.store.openDefinedTermEditor.termTypeUuid"
+ name="inputType"
+ optional="true">
+ </commandParameter>
</command>
</extension>
<extension
import eu.etaxonomy.cdm.api.service.IVocabularyService;\r
import eu.etaxonomy.cdm.model.common.CdmBase;\r
import eu.etaxonomy.cdm.model.common.DefinedTermBase;\r
+import eu.etaxonomy.cdm.model.common.TermType;\r
import eu.etaxonomy.cdm.model.common.TermVocabulary;\r
import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;\r
import eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput;\r
+import eu.etaxonomy.taxeditor.editor.definedterm.input.TermEditorInput;\r
import eu.etaxonomy.taxeditor.model.IDirtyMarkableSelectionProvider;\r
import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;\r
import eu.etaxonomy.taxeditor.store.CdmStore;\r
protected ConversationHolder conversation;\r
private ISelectionService selectionService;\r
private boolean dirty;\r
- Set<TermVocabulary<? extends DefinedTermBase>> inMemoryVocabularies = new HashSet<TermVocabulary<? extends DefinedTermBase>>();\r
+\r
+\r
\r
private int dndOperations = DND.DROP_COPY | DND.DROP_MOVE;\r
/**\r
Transfer[] transfers = new Transfer[] { TermTransfer.getInstance() };\r
viewer.addDragSupport(dndOperations, transfers, new DefinedTermDragListener(viewer));\r
viewer.addDropSupport(dndOperations, transfers, new DefinedTermDropAdapter(this));\r
-\r
- \r
- initialiseVocabularies(); \r
- viewer.setInput(inMemoryVocabularies);\r
+ \r
+ getDefinedTermEditorInput().initialiseVocabularies();\r
+ viewer.setInput(getDefinedTermEditorInput().getVocabularies());\r
\r
getSite().setSelectionProvider(viewer);\r
\r
}\r
\r
\r
- protected void initialiseVocabularies() {\r
- inMemoryVocabularies.clear();\r
- //List<TermVocabulary> vocabularies = CdmStore.getService(IVocabularyService.class).list(null, null, null, null, null);\r
\r
-// for (TermVocabulary vocabulary : vocabularies){\r
-// if(vocabulary.getTerms().isEmpty()){\r
-// inMemoryVocabularies.add(vocabulary);\r
-// }\r
-// }\r
-\r
- \r
- List<TermVocabulary<? extends DefinedTermBase>> termVocabularies = CdmStore.getService(IVocabularyService.class).listByTermClass(getDefinedTermEditorInput().getTermClass(), true, true, null, null, null, null);\r
- \r
- \r
- inMemoryVocabularies.addAll(termVocabularies);\r
- }\r
\r
/**\r
* \r
*/\r
- public AbstractDefinedTermEditorInput getDefinedTermEditorInput() {\r
- return (AbstractDefinedTermEditorInput) getEditorInput();\r
+ public TermEditorInput getDefinedTermEditorInput() {\r
+ return (TermEditorInput) getEditorInput();\r
}\r
\r
/* (non-Javadoc)\r
*/\r
@Override\r
public boolean postOperation(CdmBase objectAffectedByOperation) {\r
-\r
- if(objectAffectedByOperation instanceof DefinedTermBase){\r
- viewer.refresh();\r
- } else if (objectAffectedByOperation instanceof TermVocabulary){\r
-// if (inMemoryVocabularies.contains(objectAffectedByOperation)){\r
-// inMemoryVocabularies.remove((TermVocabulary) objectAffectedByOperation);\r
-// }else{\r
-// inMemoryVocabularies.add((TermVocabulary) objectAffectedByOperation);\r
-// DetailsViewPart view = (DetailsViewPart) StoreUtil.getView(DetailsViewPart.ID, true);\r
-// view.setFocus();\r
-// }\r
\r
-// viewer.setInput(inMemoryVocabularies);\r
- viewer.refresh();\r
- \r
- }\r
- \r
\r
+ viewer.refresh(); \r
\r
if(objectAffectedByOperation != null){\r
viewer.setSelection(new StructuredSelection(objectAffectedByOperation));\r
public void doSave(IProgressMonitor monitor) {\r
getConversationHolder().commit();\r
setDirty(false);\r
- initialiseVocabularies();\r
+ getDefinedTermEditorInput().initialiseVocabularies();\r
}\r
\r
\r
return viewer;\r
}\r
\r
- /**\r
- * @return \r
- * \r
- */\r
- public Set<TermVocabulary<? extends DefinedTermBase>> getInMemoryVocabularies() {\r
- return inMemoryVocabularies;\r
- }\r
+\r
\r
}
\ No newline at end of file
--- /dev/null
+// $Id$
+/**
+* Copyright (C) 2009 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.editor.definedterm;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.EnumSet;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import org.eclipse.jface.action.IContributionItem;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.action.Separator;
+import org.eclipse.swt.SWT;
+import org.eclipse.ui.menus.CommandContributionItem;
+import org.eclipse.ui.menus.CommandContributionItemParameter;
+import org.eclipse.ui.menus.ExtensionContributionFactory;
+import org.eclipse.ui.menus.IContributionRoot;
+import org.eclipse.ui.services.IServiceLocator;
+
+import eu.etaxonomy.cdm.model.common.TermType;
+
+/**
+ * Menu factory used in the store plugin xml to dynamically generate menu (sub-menu) contribution items
+ * for term types which when clicked open the defined term editor for the chosen term type
+ *
+ * @author c.mathew
+ * @date 18 Jul 2013
+ *
+ */
+
+public class DefinedTermMenuFactory extends ExtensionContributionFactory {
+
+ @Override
+ public void createContributionItems(IServiceLocator serviceLocator,
+ IContributionRoot additions) {
+
+ MenuManager dtMenuManager =
+ new MenuManager("Term Editor","eu.etaxonomy.taxeditor.store.definedTermEditorMenu");
+
+ dtMenuManager.setVisible(true);
+
+ additions.addContributionItem(dtMenuManager, null);
+ List<TermType> ttList = new ArrayList<TermType>(EnumSet.allOf(TermType.class));
+ Collections.sort(ttList,new SortByTermTypeMessage());
+ for (TermType tt : ttList)
+ {
+ // if term type has a parent, do not add it
+ // it will be added in the recursive call
+ if(tt.getKindOf() == null) {
+ IContributionItem ici = addChildTermsToMenuManager(tt, serviceLocator);
+ if(ici != null) {
+ dtMenuManager.add(ici);
+ }
+ }
+ }
+ }
+
+ private IContributionItem addChildTermsToMenuManager(TermType termType, IServiceLocator serviceLocator) {
+
+ Set<TermType> children = termType.getGeneralizationOf();
+ // term type has no children, so create menu item
+ if(children.isEmpty()) {
+ return createMenuItem(termType, serviceLocator);
+ }
+ // term type has children, so create sub menu
+ MenuManager dtMenuManager =
+ new MenuManager(termType.getMessage(),"eu.etaxonomy.taxeditor.store." + termType.getKey() + "Menu");
+ dtMenuManager.setVisible(true);
+ dtMenuManager.add(createDefaultMenuItem(termType, serviceLocator));
+
+ Separator sep = new Separator();
+ dtMenuManager.add(sep);
+ // add child items to the sub menu
+ for(TermType tt : children) {
+ IContributionItem item = addChildTermsToMenuManager(tt,serviceLocator);
+ if(item != null) {
+ dtMenuManager.add(item);
+ }
+ }
+ return dtMenuManager;
+
+ }
+
+ private CommandContributionItem createMenuItem(TermType termType, IServiceLocator serviceLocator) {
+
+ Map<String, String> params = new HashMap<String, String>();
+ params.put("eu.etaxonomy.taxeditor.store.openDefinedTermEditor.termTypeUuid",
+ termType.getUuid().toString());
+
+ CommandContributionItemParameter p = new CommandContributionItemParameter(
+ serviceLocator,
+ "",
+ "eu.etaxonomy.taxeditor.store.openDefinedTermEditor",
+ params,
+ null,
+ null,
+ null,
+ termType.getMessage(),
+ "",
+ "",
+ SWT.PUSH,
+ "",
+ true);
+
+ CommandContributionItem item = new CommandContributionItem(p);
+ return item;
+
+ }
+
+ private CommandContributionItem createDefaultMenuItem(TermType termType, IServiceLocator serviceLocator) {
+
+ Map<String, String> params = new HashMap<String, String>();
+ params.put("eu.etaxonomy.taxeditor.store.openDefinedTermEditor.termTypeUuid",
+ termType.getUuid().toString());
+
+ CommandContributionItemParameter p = new CommandContributionItemParameter(
+ serviceLocator,
+ "",
+ "eu.etaxonomy.taxeditor.store.openDefinedTermEditor",
+ params,
+ null,
+ null,
+ null,
+ "Other " + termType.getMessage() + "s",
+ "",
+ "",
+ SWT.PUSH,
+ "",
+ true);
+
+
+
+ CommandContributionItem item = new CommandContributionItem(p);
+ return item;
+
+ }
+
+ private class SortByTermTypeMessage implements Comparator<TermType> {
+ public int compare(TermType t1, TermType t2) {
+ return t1.getMessage().compareTo(t2.getMessage());
+ }
+ }
+
+
+}
import org.eclipse.jface.viewers.ITreeContentProvider;\r
import org.eclipse.jface.viewers.Viewer;\r
\r
+import eu.etaxonomy.cdm.model.common.DefinedTerm;\r
import eu.etaxonomy.cdm.model.common.DefinedTermBase;\r
+import eu.etaxonomy.cdm.model.common.TermBase;\r
import eu.etaxonomy.cdm.model.common.TermVocabulary;\r
import eu.etaxonomy.taxeditor.store.CdmStore;\r
\r
\r
Collection<TermVocabulary> inputElements = (Collection<TermVocabulary>) inputElement;\r
return inputElements.toArray();\r
- //return null;\r
+\r
}\r
\r
/* (non-Javadoc)\r
@Override\r
public Object[] getChildren(Object parentElement) {\r
\r
- if(parentElement instanceof TermVocabulary){\r
- return getTopLevelElements((TermVocabulary) parentElement);\r
+ if(parentElement instanceof TermVocabulary){ \r
+ return getTopLevelElements((TermVocabulary)parentElement);\r
} else if (parentElement instanceof DefinedTermBase) {\r
return ((DefinedTermBase) parentElement).getIncludes().toArray();\r
}\r
for (DefinedTermBase term : terms){\r
if (term.getPartOf() == null){\r
topLevelTerms.add(term);\r
- }\r
- \r
- }\r
- \r
+ } \r
+ } \r
return topLevelTerms.toArray();\r
}\r
\r
*/\r
@Override\r
public Object getParent(Object element) {\r
- \r
+\r
if(element instanceof DefinedTermBase){\r
- \r
- DefinedTermBase definedTerm = (DefinedTermBase)element;\r
- if (definedTerm.getPartOf() == null) {\r
- return definedTerm.getVocabulary();\r
+ DefinedTermBase definedTermBase = (DefinedTermBase)element;\r
+ if (definedTermBase.getPartOf() == null) {\r
+ return definedTermBase.getVocabulary();\r
} else {\r
- return definedTerm.getPartOf();\r
- }\r
- } \r
+ return definedTermBase.getPartOf();\r
+ } \r
+ }\r
return null;\r
+\r
}\r
\r
/* (non-Javadoc)\r
* @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object)\r
*/\r
@Override\r
- public boolean hasChildren(Object element) {\r
- \r
- if (getChildren(element) != null){\r
- \r
+ public boolean hasChildren(Object element) { \r
+ if (getChildren(element) != null){ \r
return getChildren(element).length > 0;\r
}\r
return false;\r
package eu.etaxonomy.taxeditor.editor.definedterm;\r
\r
import org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.IStyledLabelProvider;\r
+import org.eclipse.jface.viewers.StyledString.Styler;\r
import org.eclipse.jface.viewers.LabelProvider;\r
+import org.eclipse.jface.viewers.StyledCellLabelProvider;\r
import org.eclipse.jface.viewers.StyledString;\r
+import org.eclipse.jface.viewers.ViewerCell;\r
+import org.eclipse.swt.SWT;\r
+import org.eclipse.swt.custom.StyleRange;\r
+import org.eclipse.swt.graphics.Color;\r
+import org.eclipse.swt.graphics.TextStyle;\r
+import org.eclipse.swt.widgets.Display;\r
\r
+import eu.etaxonomy.cdm.model.common.DefinedTermBase;\r
import eu.etaxonomy.cdm.model.common.TermBase;\r
import eu.etaxonomy.cdm.model.common.TermVocabulary;\r
+import eu.etaxonomy.cdm.model.description.PolytomousKeyNode;\r
\r
/**\r
* @author l.morris\r
* @date 9 Dec 2011\r
*\r
*/\r
-public class TermLabelProvider extends LabelProvider implements\r
- IStyledLabelProvider {\r
+public class TermLabelProvider extends StyledCellLabelProvider {\r
\r
+ private static Color vocColor = Display.getCurrent().getSystemColor(\r
+ SWT.COLOR_BLUE);\r
+ private Styler vocStyler;\r
/* (non-Javadoc)\r
* @see org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.IStyledLabelProvider#getStyledText(java.lang.Object)\r
*/\r
+ \r
+ /*\r
+ * (non-Javadoc)\r
+ * \r
+ * @see\r
+ * org.eclipse.jface.viewers.StyledCellLabelProvider#update(org.eclipse.\r
+ * jface.viewers.ViewerCell)\r
+ */\r
@Override\r
+ public void update(ViewerCell cell) {\r
+ Object element = cell.getElement();\r
+ int columnIndex = cell.getColumnIndex();\r
+\r
+ String text = getText(element); \r
+ cell.setText(text);\r
+ \r
+ if (element instanceof TermVocabulary) { \r
+ StyledString styledString = new StyledString(text, getVocabularyStyler());\r
+ StyleRange[] styleRanges;\r
+ styleRanges = styledString.getStyleRanges();\r
+ cell.setStyleRanges(styleRanges);\r
+ } \r
+ super.update(cell);\r
+ }\r
+ \r
public StyledString getStyledText(Object element) {\r
\r
+ if(element instanceof TermVocabulary){\r
+ new StyledString(getText(element), getVocabularyStyler());\r
+ }\r
return new StyledString(getText(element), StyledString.QUALIFIER_STYLER);\r
}\r
\r
/* (non-Javadoc)\r
* @see org.eclipse.jface.viewers.LabelProvider#getText(java.lang.Object)\r
*/\r
- @Override\r
+ \r
public String getText(Object element) {\r
\r
if (element instanceof TermBase){\r
- return ((TermBase)element).getLabel();\r
+ return ((TermBase)element).getTitleCache();\r
} \r
- return super.getText(element);\r
+ //FIXME : must throw an exception here\r
+ return element.toString();\r
+ }\r
+ \r
+ private Styler getVocabularyStyler() {\r
+ if (vocStyler == null) {\r
+ vocStyler = new Styler() {\r
+ @Override\r
+ public void applyStyles(TextStyle textStyle) {\r
+ textStyle.foreground = vocColor;\r
+ }\r
+ };\r
+ }\r
+ return vocStyler;\r
}\r
\r
}\r
import org.eclipse.core.commands.ExecutionException;\r
import org.eclipse.core.commands.IHandler;\r
import org.eclipse.core.commands.common.NotDefinedException;\r
+import org.eclipse.core.commands.operations.IUndoContext;\r
import org.eclipse.jface.viewers.IStructuredSelection;\r
import org.eclipse.ui.handlers.HandlerUtil;\r
\r
+import eu.etaxonomy.cdm.model.common.DefinedTerm;\r
import eu.etaxonomy.cdm.model.common.TermBase;\r
+import eu.etaxonomy.cdm.model.common.TermVocabulary;\r
import eu.etaxonomy.taxeditor.editor.definedterm.DefinedTermEditor;\r
import eu.etaxonomy.taxeditor.editor.definedterm.operation.CreateDefinedTermOperation;\r
import eu.etaxonomy.taxeditor.operation.AbstractPostOperation;\r
IPostOperationEnabled editor = (IPostOperationEnabled) HandlerUtil\r
.getActiveEditor(event);\r
\r
- IStructuredSelection selection = (IStructuredSelection) HandlerUtil\r
- .getCurrentSelection(event);\r
+ if (editor instanceof DefinedTermEditor){\r
+ DefinedTermEditor dfe = (DefinedTermEditor) editor;\r
+ IStructuredSelection selection = (IStructuredSelection) HandlerUtil\r
+ .getCurrentSelection(event);\r
+ if (selection.getFirstElement() instanceof TermBase) {\r
+ try {\r
+ String label = event.getCommand().getName();\r
+ IUndoContext undoContext = StoreUtil.getUndoContext();\r
\r
- TermBase selectedElement = (TermBase) selection.getFirstElement();\r
+ TermBase termBase = (TermBase) selection.getFirstElement();\r
\r
- try {\r
- AbstractPostOperation operation = new CreateDefinedTermOperation(\r
- event.getCommand().getName(), StoreUtil.getUndoContext(),\r
- selectedElement, editor);\r
- StoreUtil.executeOperation(operation);\r
+ AbstractPostOperation operation = \r
+ new CreateDefinedTermOperation(label, \r
+ undoContext, \r
+ termBase, \r
+ dfe.getDefinedTermEditorInput(),\r
+ editor);\r
+ StoreUtil.executeOperation(operation);\r
\r
- } catch (NotDefinedException e) {\r
- StoreUtil.error(getClass(), e);\r
+ } catch (NotDefinedException e) {\r
+ StoreUtil.error(getClass(), e);\r
+ }\r
+ }\r
}\r
\r
return null;\r
}\r
\r
-}\r
+ }\r
import org.eclipse.core.commands.ExecutionException;\r
import org.eclipse.core.commands.IHandler;\r
import org.eclipse.core.commands.common.NotDefinedException;\r
+import org.eclipse.core.commands.operations.IUndoContext;\r
import org.eclipse.jface.viewers.IStructuredSelection;\r
import org.eclipse.ui.handlers.HandlerUtil;\r
\r
-import eu.etaxonomy.cdm.model.common.TermBase;\r
+import eu.etaxonomy.cdm.model.common.TermType;\r
+import eu.etaxonomy.cdm.model.common.TermVocabulary;\r
import eu.etaxonomy.taxeditor.editor.definedterm.DefinedTermEditor;\r
-import eu.etaxonomy.taxeditor.editor.definedterm.operation.CreateDefinedTermOperation;\r
import eu.etaxonomy.taxeditor.editor.definedterm.operation.CreateTermVocabularyOperation;\r
import eu.etaxonomy.taxeditor.operation.AbstractPostOperation;\r
import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;\r
IPostOperationEnabled editor = (IPostOperationEnabled) HandlerUtil\r
.getActiveEditor(event);\r
\r
- if (! (editor instanceof DefinedTermEditor)){\r
- return null;\r
- }\r
- \r
- try {\r
- AbstractPostOperation operation = new CreateTermVocabularyOperation(\r
- event.getCommand().getName(), StoreUtil.getUndoContext(), (DefinedTermEditor) editor);\r
- StoreUtil.executeOperation(operation);\r
-\r
- } catch (NotDefinedException e) {\r
- StoreUtil.error(getClass(), e);\r
- }\r
+ if (editor instanceof DefinedTermEditor){\r
+ DefinedTermEditor dfe = (DefinedTermEditor) editor;\r
+\r
+ try {\r
+ String label = event.getCommand().getName();\r
+ IUndoContext undoContext = StoreUtil.getUndoContext();\r
\r
+ AbstractPostOperation operation = \r
+ new CreateTermVocabularyOperation(label, \r
+ undoContext, \r
+ dfe.getDefinedTermEditorInput(), \r
+ (DefinedTermEditor) editor);\r
+ StoreUtil.executeOperation(operation);\r
+\r
+ } catch (NotDefinedException e) {\r
+ StoreUtil.error(getClass(), e);\r
+ } \r
+ }\r
return null;\r
}\r
-\r
}\r
import org.eclipse.core.commands.ExecutionEvent;\r
import org.eclipse.core.commands.ExecutionException;\r
import org.eclipse.core.commands.common.NotDefinedException;\r
+import org.eclipse.core.commands.operations.IUndoContext;\r
import org.eclipse.jface.viewers.IStructuredSelection;\r
import org.eclipse.ui.handlers.HandlerUtil;\r
\r
+import eu.etaxonomy.cdm.model.common.DefinedTerm;\r
import eu.etaxonomy.cdm.model.common.DefinedTermBase;\r
import eu.etaxonomy.cdm.model.common.TermBase;\r
import eu.etaxonomy.cdm.model.common.TermVocabulary;\r
DefinedTermEditor editor = (DefinedTermEditor) HandlerUtil\r
.getActiveEditor(event);\r
\r
- IStructuredSelection selection = (IStructuredSelection) HandlerUtil\r
- .getCurrentSelection(event);\r
+ if (editor instanceof DefinedTermEditor){\r
+ DefinedTermEditor dfe = (DefinedTermEditor) editor;\r
+ try {\r
+ String label = event.getCommand().getName();\r
+ IUndoContext undoContext = StoreUtil.getUndoContext();\r
\r
- Iterator<TermBase> selectionIterator = selection.iterator();\r
+ IStructuredSelection selection = (IStructuredSelection) HandlerUtil\r
+ .getCurrentSelection(event);\r
\r
- while (selectionIterator.hasNext()){\r
- \r
- TermBase term = selectionIterator.next();\r
- \r
- try {\r
- AbstractPostOperation operation = new DeleteTermBaseOperation(\r
- event.getCommand().getName(), StoreUtil.getUndoContext(),\r
- term, editor);\r
- StoreUtil.executeOperation(operation);\r
- \r
+ Iterator<TermBase> selectionIterator = selection.iterator();\r
+\r
+ while (selectionIterator.hasNext()){\r
+\r
+ TermBase term = selectionIterator.next();\r
+\r
+\r
+ AbstractPostOperation operation = \r
+ new DeleteTermBaseOperation(label, \r
+ undoContext,\r
+ term,\r
+ dfe.getDefinedTermEditorInput(), \r
+ editor);\r
+ StoreUtil.executeOperation(operation);\r
+\r
+ } \r
} catch (NotDefinedException e) {\r
StoreUtil.error(getClass(), e);\r
}\r
}\r
-\r
return null;\r
}\r
\r
package eu.etaxonomy.taxeditor.editor.definedterm.handler;\r
+import java.util.UUID;\r
+\r
import org.eclipse.core.commands.AbstractHandler;\r
import org.eclipse.core.commands.ExecutionEvent;\r
import org.eclipse.core.commands.ExecutionException;\r
import org.eclipse.core.commands.IHandler;\r
-import org.eclipse.core.commands.IParameter;\r
-import org.eclipse.core.commands.common.NotDefinedException;\r
import org.eclipse.ui.IWorkbenchPage;\r
import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.handlers.HandlerUtil;\r
-import org.eclipse.ui.handlers.ShowViewHandler;\r
\r
-import eu.etaxonomy.cdm.model.common.DefinedTermBase;\r
-import eu.etaxonomy.cdm.model.location.NamedArea;\r
+import eu.etaxonomy.cdm.model.common.TermType;\r
import eu.etaxonomy.taxeditor.editor.definedterm.DefinedTermEditor;\r
-import eu.etaxonomy.taxeditor.editor.definedterm.input.DefinedTermEditorInputFactory;\r
+import eu.etaxonomy.taxeditor.editor.definedterm.input.TermEditorInput;\r
import eu.etaxonomy.taxeditor.store.StoreUtil;\r
\r
// $Id$\r
* @date 8 Dec 2011\r
*\r
*/\r
-public class OpenDefinedTermEditorHandler extends AbstractHandler implements\r
- IHandler {\r
+public class OpenDefinedTermEditorHandler extends AbstractHandler implements IHandler {\r
\r
/* (non-Javadoc)\r
* @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)\r
*/\r
@Override\r
public Object execute(ExecutionEvent event) throws ExecutionException {\r
- \r
+\r
+ String termTypeUuid = event.getParameter("eu.etaxonomy.taxeditor.store.openDefinedTermEditor.termTypeUuid");\r
+ IWorkbenchPage activePage = StoreUtil.getActivePage();\r
try {\r
- String parameter = event.getParameter("eu.etaxonomy.taxeditor.store.openDefinedTermEditor.parameter");\r
- Class<? extends DefinedTermBase> clazz = (Class<? extends DefinedTermBase>) Class.forName(parameter);\r
- \r
- IWorkbenchPage activePage = StoreUtil.getActivePage();\r
- try {\r
- activePage.openEditor(DefinedTermEditorInputFactory.NewInstance(clazz), DefinedTermEditor.ID);\r
- } catch (PartInitException e) {\r
- StoreUtil.error(getClass(), e);\r
- }\r
- } catch (ClassNotFoundException e) {\r
+ activePage.openEditor(new TermEditorInput(TermType.getByUuid(UUID.fromString(termTypeUuid))), DefinedTermEditor.ID);\r
+ } catch (PartInitException e) {\r
StoreUtil.error(getClass(), e);\r
}\r
+\r
return null;\r
}\r
\r
+++ /dev/null
-// $Id$\r
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.definedterm.handler;\r
-\r
-import java.util.HashMap;\r
-import java.util.Map;\r
-\r
-import org.eclipse.jface.action.IContributionItem;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.ui.PlatformUI;\r
-import org.eclipse.ui.actions.CompoundContributionItem;\r
-import org.eclipse.ui.menus.CommandContributionItem;\r
-import org.eclipse.ui.menus.CommandContributionItemParameter;\r
-\r
-/**\r
- * @author l.morris\r
- * @date 4 Jan 2012\r
- *\r
- */\r
-public class OpenDefinedTermMenu extends CompoundContributionItem {\r
-\r
- /**\r
- * \r
- */\r
- public OpenDefinedTermMenu() {\r
- // TODO Auto-generated constructor stub\r
- }\r
-\r
- /**\r
- * @param id\r
- */\r
- public OpenDefinedTermMenu(String id) {\r
- super(id);\r
- // TODO Auto-generated constructor stub\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see org.eclipse.ui.actions.CompoundContributionItem#getContributionItems()\r
- */\r
- @Override\r
- protected IContributionItem[] getContributionItems() {\r
- // TODO Auto-generated method stub\r
- return null;\r
- }\r
- \r
- /**\r
- * @param key\r
- * @param object\r
- * @return\r
- */\r
- private IContributionItem createContributionItem(String label,\r
- String inputType) {\r
- CommandContributionItemParameter parameter = new CommandContributionItemParameter(\r
- PlatformUI.getWorkbench().getActiveWorkbenchWindow(), null,\r
- "eu.etaxonomy.taxeditor.store.definedterm.menu.open", SWT.NONE);\r
-\r
- parameter.label = label;\r
-\r
- Map parameters = new HashMap();\r
- parameters.put("eu.etaxonomy.taxeditor.store.definedterm.menu.open", inputType);\r
- parameter.parameters = parameters;\r
-\r
- return new CommandContributionItem(parameter);\r
- }\r
-\r
-}\r
/**\r
* @return\r
*/\r
- public abstract List<String> getTermClasses();\r
- \r
- public abstract T createTermInstance();\r
- \r
- public Class<? extends DefinedTermBase> getTermClass() {\r
- \r
- return createTermInstance().getClass();\r
- }\r
+ public abstract List<String> getTermClasses(); \r
\r
+ \r
}
\ No newline at end of file
+++ /dev/null
-// $Id$\r
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.definedterm.input;\r
-\r
-import org.eclipse.ui.IEditorInput;\r
-\r
-import eu.etaxonomy.cdm.model.common.DefinedTermBase;\r
-import eu.etaxonomy.cdm.model.common.ExtensionType;\r
-import eu.etaxonomy.cdm.model.common.MarkerType;\r
-import eu.etaxonomy.cdm.model.description.Feature;\r
-import eu.etaxonomy.cdm.model.description.Modifier;\r
-import eu.etaxonomy.cdm.model.description.State;\r
-import eu.etaxonomy.cdm.model.location.NamedArea;\r
-import eu.etaxonomy.cdm.model.location.NamedAreaLevel;\r
-\r
-/**\r
- * @author l.morris\r
- * @date 3 Jan 2012\r
- *\r
- */\r
-public class DefinedTermEditorInputFactory {\r
-\r
-// public static final String NamedArea = "eu.etaxonomy.taxeditor.editor.namedArea";\r
-\r
- /**\r
- * @param clazz\r
- * @return\r
- */\r
- public static IEditorInput NewInstance(Class<? extends DefinedTermBase> clazz) {\r
- if(clazz == NamedArea.class){\r
- return new NamedAreaEditorInput();\r
- } \r
- if (clazz == NamedAreaLevel.class){\r
- return new NamedAreaLevelEditorInput();\r
- }\r
- if (clazz == ExtensionType.class){\r
- return new ExtensionTypeEditorInput();\r
- }\r
- if (clazz == MarkerType.class){\r
- return new MarkerTypeEditorInput();\r
- }\r
- if (clazz == Feature.class){\r
- return new FeatureEditorInput();\r
- }\r
- if (clazz == State.class){\r
- return new StateEditorInput();\r
- }\r
- if (clazz == Modifier.class){\r
- return new ModifierEditorInput();\r
- }\r
- \r
- return null;\r
- }\r
-\r
-}\r
+++ /dev/null
-// $Id$\r
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.definedterm.input;\r
-\r
-import java.util.Arrays;\r
-import java.util.List;\r
-\r
-import eu.etaxonomy.cdm.model.common.ExtensionType;\r
-\r
-/**\r
- * @author l.morris\r
- * @date 6 Jan 2012\r
- *\r
- */\r
-public class ExtensionTypeEditorInput extends AbstractDefinedTermEditorInput<ExtensionType> {\r
- \r
- private List<String> termClasses = Arrays.asList(new String[]{\r
- ExtensionType.class.getName()\r
- });\r
-\r
- /* (non-Javadoc)\r
- * @see org.eclipse.ui.IEditorInput#getName()\r
- */\r
- @Override\r
- public String getName() {\r
- return "Extension Type";\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#getTermClasses()\r
- */\r
- @Override\r
- public List<String> getTermClasses() {\r
- return termClasses;\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#createTermInstance()\r
- */\r
- @Override\r
- public ExtensionType createTermInstance() {\r
- return ExtensionType.NewInstance();\r
- }\r
-\r
-}\r
+++ /dev/null
-// $Id$\r
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.definedterm.input;\r
-\r
-import java.util.Arrays;\r
-import java.util.List;\r
-\r
-import eu.etaxonomy.cdm.model.description.Feature;\r
-/**\r
- * @author l.morris\r
- * @date 11 Jan 2012\r
- *\r
- */\r
-public class FeatureEditorInput extends AbstractDefinedTermEditorInput<Feature> {\r
-\r
- private List<String> termClasses = Arrays.asList(new String[]{\r
- Feature.class.getName()\r
- });\r
- /* (non-Javadoc)\r
- * @see org.eclipse.ui.IEditorInput#getName()\r
- */\r
- @Override\r
- public String getName() {\r
- return "Feature";\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#getTermClasses()\r
- */\r
- @Override\r
- public List<String> getTermClasses() {\r
- return termClasses;\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#createTermInstance()\r
- */\r
- @Override\r
- public Feature createTermInstance() {\r
- return Feature.NewInstance();\r
- }\r
-\r
-}\r
+++ /dev/null
-// $Id$\r
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.definedterm.input;\r
-\r
-import java.util.Arrays;\r
-import java.util.List;\r
-\r
-import eu.etaxonomy.cdm.model.common.MarkerType;\r
-\r
-/**\r
- * @author l.morris\r
- * @date 6 Jan 2012\r
- *\r
- */\r
-public class MarkerTypeEditorInput extends AbstractDefinedTermEditorInput<MarkerType> {\r
- \r
- private List<String> termClasses = Arrays.asList(new String[]{\r
- MarkerType.class.getName()\r
- });\r
-\r
- /* (non-Javadoc)\r
- * @see org.eclipse.ui.IEditorInput#getName()\r
- */\r
- @Override\r
- public String getName() {\r
- return "Marker Type";\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#getTermClasses()\r
- */\r
- @Override\r
- public List<String> getTermClasses() {\r
- return termClasses;\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#createTermInstance()\r
- */\r
- @Override\r
- public MarkerType createTermInstance() {\r
- return new MarkerType();\r
- }\r
- \r
- \r
-\r
-}\r
+++ /dev/null
-// $Id$
-/**
-* Copyright (C) 2009 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.editor.definedterm.input;
-
-import java.util.Arrays;
-import java.util.List;
-
-import eu.etaxonomy.cdm.model.description.Modifier;
-
-
-/**
- * @author n.hoffmann
- * @date Jan 24, 2012
- *
- */
-public class ModifierEditorInput extends AbstractDefinedTermEditorInput<Modifier> {
-
- private List<String> termClasses = Arrays.asList(new String[]{
- Modifier.class.getName()
- });
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IEditorInput#getName()
- */
- @Override
- public String getName() {
- return "Modifier";
- }
-
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#getTermClasses()
- */
- @Override
- public List<String> getTermClasses() {
- return termClasses;
- }
-
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#createTermInstance()
- */
- @Override
- public Modifier createTermInstance() {
- return Modifier.NewInstance();
- }
-
-}
\ No newline at end of file
+++ /dev/null
-// $Id$\r
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.definedterm.input;\r
-\r
-import java.util.Arrays;\r
-import java.util.List;\r
-\r
-import eu.etaxonomy.cdm.model.location.Continent;\r
-import eu.etaxonomy.cdm.model.location.NamedArea;\r
-import eu.etaxonomy.cdm.model.location.TdwgArea;\r
-import eu.etaxonomy.cdm.model.location.WaterbodyOrCountry;\r
-\r
-/**\r
- * @author l.morris\r
- * @date 8 Dec 2011\r
- *\r
- */\r
-public class NamedAreaEditorInput extends AbstractDefinedTermEditorInput<NamedArea> {\r
-\r
- private List<String> termClasses = Arrays.asList(new String[]{\r
- NamedArea.class.getName(), \r
- TdwgArea.class.getName(),\r
- WaterbodyOrCountry.class.getName(),\r
- Continent.class.getName()\r
- });\r
- \r
- /* (non-Javadoc)\r
- * @see org.eclipse.ui.IEditorInput#getName()\r
- */\r
- @Override\r
- public String getName() {\r
- return "Named Area";\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#getTermClasses()\r
- */\r
- @Override\r
- public List<String> getTermClasses() {\r
- return termClasses;\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#createTermInstance()\r
- */\r
- @Override\r
- public NamedArea createTermInstance() {\r
- return NamedArea.NewInstance();\r
- }\r
-}\r
+++ /dev/null
-// $Id$\r
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.definedterm.input;\r
-\r
-import java.util.Arrays;\r
-import java.util.List;\r
-\r
-import eu.etaxonomy.cdm.model.location.NamedAreaLevel;\r
-\r
-/**\r
- * @author l.morris\r
- * @date 4 Jan 2012\r
- *\r
- */\r
-public class NamedAreaLevelEditorInput extends AbstractDefinedTermEditorInput<NamedAreaLevel> {\r
-\r
- \r
- private List<String> termClasses = Arrays.asList(new String[]{\r
- NamedAreaLevel.class.getName()\r
- });\r
- \r
- /* (non-Javadoc)\r
- * @see org.eclipse.ui.IEditorInput#getName()\r
- */\r
- @Override\r
- public String getName() {\r
- return "Named Area Level";\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#getTermClasses()\r
- */\r
- @Override\r
- public List<String> getTermClasses() {\r
- return termClasses;\r
- }\r
-\r
- /* (non-Javadoc)\r
- * @see eu.etaxonomy.taxeditor.editor.definedterm.AbstractDefinedTermEditorInput#createTermInstance()\r
- */\r
- @Override\r
- public NamedAreaLevel createTermInstance() {\r
- return NamedAreaLevel.NewInstance();\r
- }\r
-\r
-}\r
+++ /dev/null
-// $Id$
-/**
-* Copyright (C) 2009 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.editor.definedterm.input;
-
-import java.util.Arrays;
-import java.util.List;
-
-import eu.etaxonomy.cdm.model.description.State;
-
-/**
- * @author n.hoffmann
- * @date Jan 24, 2012
- *
- */
-public class StateEditorInput extends AbstractDefinedTermEditorInput<State> {
-
- private List<String> termClasses = Arrays.asList(new String[]{
- State.class.getName()
- });
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IEditorInput#getName()
- */
- @Override
- public String getName() {
- return "State";
- }
-
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#getTermClasses()
- */
- @Override
- public List<String> getTermClasses() {
- return termClasses;
- }
-
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#createTermInstance()
- */
- @Override
- public State createTermInstance() {
- return State.NewInstance();
- }
-
-}
--- /dev/null
+// $Id$
+/**
+* Copyright (C) 2009 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.editor.definedterm.input;
+
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import eu.etaxonomy.cdm.api.service.IVocabularyService;
+import eu.etaxonomy.cdm.model.common.DefinedTerm;
+import eu.etaxonomy.cdm.model.common.DefinedTermBase;
+import eu.etaxonomy.cdm.model.common.TermType;
+import eu.etaxonomy.cdm.model.common.TermVocabulary;
+import eu.etaxonomy.taxeditor.store.CdmStore;
+
+
+
+/**
+ * @author n.hoffmann
+ * @date Jan 24, 2012
+ *
+ */
+public class TermEditorInput extends AbstractDefinedTermEditorInput<DefinedTerm> {
+
+ private TermType termType;
+ private Set<TermVocabulary<DefinedTermBase>> vocabularies;
+ private List<String> termClasses = Arrays.asList(new String[]{
+ DefinedTerm.class.getName()
+ });
+
+ public TermEditorInput(TermType termType) {
+ this.termType = termType;
+ vocabularies = new HashSet<TermVocabulary<DefinedTermBase>>();
+ initialiseVocabularies();
+ }
+ /* (non-Javadoc)
+ * @see org.eclipse.ui.IEditorInput#getName()
+ */
+ @Override
+ public String getName() {
+ return termType.getMessage();
+ }
+
+ /* (non-Javadoc)
+ * @see eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput#getTermClasses()
+ */
+ @Override
+ public List<String> getTermClasses() {
+ return termClasses;
+ }
+
+ public TermType getTermType() {
+ return termType;
+ }
+
+ public void initialiseVocabularies() {
+ if(vocabularies != null) {
+ vocabularies.clear();
+ }
+ List<TermVocabulary<DefinedTermBase>> vocs = CdmStore.getService(IVocabularyService.class).findByTermType(termType);
+ vocabularies.addAll(vocs);
+ }
+
+ public Set<TermVocabulary<DefinedTermBase>> getVocabularies() {
+ return vocabularies;
+ }
+
+}
\ No newline at end of file
import org.eclipse.core.runtime.IAdaptable;\r
import org.eclipse.core.runtime.IProgressMonitor;\r
import org.eclipse.core.runtime.IStatus;\r
-import org.eclipse.ui.IEditorInput;\r
+import org.eclipse.core.runtime.Status;\r
\r
import eu.etaxonomy.cdm.model.common.DefinedTermBase;\r
import eu.etaxonomy.cdm.model.common.TermBase;\r
import eu.etaxonomy.cdm.model.common.TermVocabulary;\r
-import eu.etaxonomy.cdm.model.location.NamedArea;\r
-import eu.etaxonomy.taxeditor.editor.definedterm.DefinedTermEditor;\r
-import eu.etaxonomy.taxeditor.editor.definedterm.input.AbstractDefinedTermEditorInput;\r
-import eu.etaxonomy.taxeditor.editor.definedterm.input.NamedAreaEditorInput;\r
+import eu.etaxonomy.taxeditor.editor.definedterm.input.TermEditorInput;\r
import eu.etaxonomy.taxeditor.operation.AbstractPostOperation;\r
import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;\r
+import eu.etaxonomy.taxeditor.store.StoreUtil;\r
\r
/**\r
* @author l.morris\r
\r
\r
private TermBase parentTermBase;\r
- private AbstractDefinedTermEditorInput editorInput; \r
+ private TermEditorInput definedTermInput;\r
\r
/**\r
* @param label\r
* @param postOperationEnabled\r
*/\r
public CreateDefinedTermOperation(String label,\r
- IUndoContext undoContext, TermBase termBase, IPostOperationEnabled postOperationEnabled) {\r
+ IUndoContext undoContext, \r
+ TermBase termBase,\r
+ TermEditorInput definedTermInput,\r
+ IPostOperationEnabled postOperationEnabled) {\r
super(label, undoContext, postOperationEnabled);\r
this.parentTermBase = termBase;\r
- editorInput = ((DefinedTermEditor)postOperationEnabled).getDefinedTermEditorInput();\r
+ this.definedTermInput = definedTermInput;\r
}\r
\r
/* (non-Javadoc)\r
public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
throws ExecutionException {\r
\r
- DefinedTermBase newTerm = editorInput.createTermInstance(); \r
- \r
- newTerm.setLabel("Untitled");\r
+ DefinedTermBase newTerm = definedTermInput.getTermType().getEmptyDefinedTermBase();\r
+ if (newTerm == null) {\r
+ IStatus status = \r
+ new Status(IStatus.CANCEL, \r
+ StoreUtil.getPluginId(), \r
+ "Creation of term corresponding to type '" + definedTermInput.getTermType().getMessage() + "' is not yet supported");\r
+ StoreUtil.warningDialog("Cannot create term", newTerm, status);\r
+ return status;\r
+ }\r
\r
if (parentTermBase instanceof TermVocabulary){\r
TermVocabulary vocabulary = (TermVocabulary) parentTermBase;\r
vocabulary.addTerm(newTerm);\r
} else if (parentTermBase instanceof DefinedTermBase) {\r
- DefinedTermBase parent = (DefinedTermBase) parentTermBase;\r
- parent.addIncludes(newTerm);\r
+ DefinedTermBase parent = (DefinedTermBase) parentTermBase; \r
+ parent.addIncludes(newTerm); \r
TermVocabulary vocabulary = parent.getVocabulary();\r
vocabulary.addTerm(newTerm);\r
}\r
*/\r
package eu.etaxonomy.taxeditor.editor.definedterm.operation;\r
\r
+import java.net.URI;\r
+\r
import org.eclipse.core.commands.ExecutionException;\r
import org.eclipse.core.commands.operations.IUndoContext;\r
import org.eclipse.core.runtime.IAdaptable;\r
import org.eclipse.core.runtime.IStatus;\r
\r
import eu.etaxonomy.cdm.api.service.IVocabularyService;\r
+import eu.etaxonomy.cdm.model.common.DefinedTerm;\r
import eu.etaxonomy.cdm.model.common.OrderedTermVocabulary;\r
+import eu.etaxonomy.cdm.model.common.TermType;\r
import eu.etaxonomy.cdm.model.common.TermVocabulary;\r
import eu.etaxonomy.taxeditor.editor.definedterm.DefinedTermEditor;\r
+import eu.etaxonomy.taxeditor.editor.definedterm.input.TermEditorInput;\r
import eu.etaxonomy.taxeditor.operation.AbstractPostOperation;\r
+import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;\r
import eu.etaxonomy.taxeditor.store.CdmStore;\r
\r
/**\r
*/\r
public class CreateTermVocabularyOperation extends AbstractPostOperation {\r
\r
- private DefinedTermEditor definedTermEditor;\r
-\r
+ private TermEditorInput definedEditorInput;\r
+ \r
/**\r
* @param label\r
* @param undoContext\r
* @param postOperationEnabled\r
*/\r
public CreateTermVocabularyOperation(String label,\r
- IUndoContext undoContext, DefinedTermEditor definedTermEditor) {\r
- super(label, undoContext, definedTermEditor);\r
- this.definedTermEditor = definedTermEditor;\r
+ IUndoContext undoContext, \r
+ TermEditorInput definedEditorInput, \r
+ IPostOperationEnabled postOperationEnabled) {\r
+ super(label, undoContext, postOperationEnabled);\r
+ this.definedEditorInput = definedEditorInput;\r
}\r
\r
/* (non-Javadoc)\r
@Override\r
public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
throws ExecutionException {\r
-\r
- TermVocabulary termVocabulary = OrderedTermVocabulary.NewInstance(null, "Untitled", null, null);\r
+ \r
+ TermVocabulary termVocabulary = \r
+ TermVocabulary.NewInstance(definedEditorInput.getTermType(),\r
+ null, \r
+ "Untitled", \r
+ null, \r
+ null); \r
+ \r
CdmStore.getService(IVocabularyService.class).save(termVocabulary);\r
- definedTermEditor.getInMemoryVocabularies().add(termVocabulary);\r
+ definedEditorInput.getVocabularies().add(termVocabulary);\r
\r
return postExecute(termVocabulary);\r
}\r
\r
import eu.etaxonomy.cdm.api.service.ITermService;\r
import eu.etaxonomy.cdm.api.service.IVocabularyService;\r
+import eu.etaxonomy.cdm.model.common.DefinedTerm;\r
import eu.etaxonomy.cdm.model.common.DefinedTermBase;\r
import eu.etaxonomy.cdm.model.common.TermBase;\r
import eu.etaxonomy.cdm.model.common.TermVocabulary;\r
import eu.etaxonomy.taxeditor.editor.definedterm.DefinedTermEditor;\r
+import eu.etaxonomy.taxeditor.editor.definedterm.input.TermEditorInput;\r
import eu.etaxonomy.taxeditor.operation.AbstractPostOperation;\r
+import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;\r
import eu.etaxonomy.taxeditor.store.CdmStore;\r
import eu.etaxonomy.taxeditor.store.StoreUtil;\r
\r
*/\r
public class DeleteTermBaseOperation extends AbstractPostOperation {\r
\r
+ private TermEditorInput definedEditorInput;\r
private TermBase termBase;\r
private DefinedTermEditor definedTermEditor;\r
/**\r
* @param undoContext\r
* @param postOperationEnabled\r
*/\r
- public DeleteTermBaseOperation(String label, IUndoContext undoContext, TermBase termBase,\r
- DefinedTermEditor definedTermEditor) {\r
- super(label, undoContext, definedTermEditor);\r
+ public DeleteTermBaseOperation(String label, \r
+ IUndoContext undoContext, \r
+ TermBase termBase,\r
+ TermEditorInput definedEditorInput,\r
+ IPostOperationEnabled postOperationEnabled) {\r
+ super(label, undoContext, postOperationEnabled);\r
this.termBase = termBase;\r
- this.definedTermEditor = definedTermEditor;\r
+ this.definedEditorInput = definedEditorInput; \r
}\r
\r
/* (non-Javadoc)\r
\r
\r
if (termBase instanceof TermVocabulary) {\r
+ if (((TermVocabulary)termBase).getCreatedBy() == null) {\r
+ IStatus status = new Status(IStatus.CANCEL, StoreUtil.getPluginId(), "This is a CDM system vocabulary");\r
+ StoreUtil.warningDialog("Cannot delete vocabulary", termBase, status);\r
+ return status;\r
+ }\r
\r
if (!((TermVocabulary)termBase).getTerms().isEmpty()) {\r
IStatus status = new Status(IStatus.CANCEL, StoreUtil.getPluginId(), "Delete all terms from this vocaulary before deleting the vocabulary.");\r
StoreUtil.warningDialog("Vocabulary not empty", termBase, status);\r
return status;\r
- }\r
- definedTermEditor.getInMemoryVocabularies().remove(termBase); \r
+ } \r
+\r
+ definedEditorInput.getVocabularies().remove((TermVocabulary)termBase); \r
CdmStore.getService(IVocabularyService.class).delete((TermVocabulary)termBase);\r
\r
+ \r
} else if (termBase instanceof DefinedTermBase) {\r
\r
\r
DefinedTermBase definedTermBase = (DefinedTermBase) termBase;\r
+ \r
+ if (((DefinedTermBase)termBase).getCreatedBy() == null) {\r
+ IStatus status = new Status(IStatus.CANCEL, StoreUtil.getPluginId(), "This is a CDM system defined term");\r
+ StoreUtil.warningDialog("Cannot delete defined term", termBase, status);\r
+ return status;\r
+ }\r
if(!definedTermBase.getIncludes().isEmpty()){\r
IStatus status = new Status(IStatus.CANCEL, StoreUtil.getPluginId(), "This term includes other terms. Please delete the included terms before deleting this term."); \r
StoreUtil.warningDialog("Term has included terms", termBase, status);\r
return status;\r
} \r
\r
+\r
DefinedTermBase partOf = definedTermBase.getPartOf();\r
if(partOf != null){\r
partOf.removeIncludes(definedTermBase);\r
import eu.etaxonomy.cdm.api.service.DefaultQuantitativeDescriptionBuilder;
import eu.etaxonomy.cdm.api.service.DescriptionBuilder;
import eu.etaxonomy.cdm.common.CdmUtils;
-import eu.etaxonomy.cdm.model.common.DescriptionElementSource;
+import eu.etaxonomy.cdm.model.description.DescriptionElementSource;
import eu.etaxonomy.cdm.model.common.IIdentifiableEntity;
import eu.etaxonomy.cdm.model.common.ISourceable;
import eu.etaxonomy.cdm.model.common.IdentifiableEntity;
* @return
*/
private static boolean isSupported(NomenclaturalCode code) {
- if (code.equals(NomenclaturalCode.ICBN) || code.equals(NomenclaturalCode.ICZN)) {
+ if (code.equals(NomenclaturalCode.ICNAFP ) || code.equals(NomenclaturalCode.ICZN)) {
return true;
} else {
return false;
if (code.equals(NomenclaturalCode.ICNB)) {
return "International Code of Nomenclature of Bacteria (ICNB)";
}
- if (code.equals(NomenclaturalCode.ICBN)) {
- return "International Code of Botanical Nomenclature (ICBN)";
+ if (code.equals(NomenclaturalCode.ICNAFP )) {
+ return "International Code of Botanical Nomenclature (ICNAFP )";
}
if (code.equals(NomenclaturalCode.ICNCP)) {
return "International Code of Cultivated Plants (ICNCP)";
* @return a {@link eu.etaxonomy.cdm.model.name.NomenclaturalCode} object.
*/
public static NomenclaturalCode getDefaultCode() {
- return NomenclaturalCode.ICBN;
+ return NomenclaturalCode.ICNAFP ;
}
}
import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
import eu.etaxonomy.cdm.api.facade.DerivedUnitFacadeNotSupportedException;
import eu.etaxonomy.cdm.api.service.IOccurrenceService;
-import eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase;
-import eu.etaxonomy.cdm.model.occurrence.Specimen;
+import eu.etaxonomy.cdm.model.common.OriginalSourceType;
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
+import eu.etaxonomy.cdm.model.occurrence.FieldUnit;
+import eu.etaxonomy.cdm.model.occurrence.MediaSpecimen;
+import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
+import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
import eu.etaxonomy.taxeditor.store.CdmStore;
+import eu.etaxonomy.taxeditor.ui.dialog.selection.OriginalSourceTypeSelectionDialog;
+import eu.etaxonomy.taxeditor.ui.dialog.selection.SpecimenOrObservationTypeSelectionDialog;
import eu.etaxonomy.taxeditor.ui.section.occurrence.DerivedUnitBaseWizardPage;
import eu.etaxonomy.taxeditor.ui.section.occurrence.FieldObservationWizardPage;
import eu.etaxonomy.taxeditor.ui.section.occurrence.GatheringEventWizardPage;
* @created Jun 16, 2010
* @version 1.0
*/
-public class NewDerivedUnitBaseWizard extends AbstractNewEntityWizard<DerivedUnitBase> {
+public class NewDerivedUnitBaseWizard extends AbstractNewEntityWizard<DerivedUnit> {
+ private SpecimenOrObservationType specOrObsType = null;
+ public NewDerivedUnitBaseWizard() {
+ super();
+ }
+
+ public NewDerivedUnitBaseWizard(SpecimenOrObservationType specOrObsType) {
+ super();
+ this.specOrObsType = specOrObsType;
+ }
/** {@inheritDoc} */
@Override
public void addPages() {
addPage(new GatheringEventWizardPage(formFactory, getConversationHolder(), getFacade()));
addPage(new FieldObservationWizardPage(formFactory, getConversationHolder(), getFacade()));
addPage(new DerivedUnitBaseWizardPage(formFactory, getConversationHolder(), getFacade()));
+
}
/**
*/
private DerivedUnitFacade getFacade() {
try {
- return DerivedUnitFacade.NewInstance(getEntity(), PreferencesUtil.getDerivedUnitConfigurator());
+ if(getEntity() != null) {
+ return DerivedUnitFacade.NewInstance(getEntity(), PreferencesUtil.getDerivedUnitConfigurator());
+ }
} catch (DerivedUnitFacadeNotSupportedException e) {
// w should never get here
throw new IllegalStateException();
}
+ return null;
}
/* (non-Javadoc)
*/
/** {@inheritDoc} */
@Override
- protected DerivedUnitBase createNewEntity() {
- // TODO we do want to create different derivates of DerivedUnitBase but go with specimen for testing
- // at the moment
- // FIXME add wizard page that handles the selection of derived unit type
- return Specimen.NewInstance();
+ protected DerivedUnit createNewEntity() {
+ if(specOrObsType == null) {
+ return DerivedUnit.NewInstance(SpecimenOrObservationType.PreservedSpecimen);
+ } else {
+ if(SpecimenOrObservationType.Media.equals(specOrObsType) ||
+ ((((SpecimenOrObservationType)specOrObsType).getKindOf() != null) &&
+ ((SpecimenOrObservationType)specOrObsType).getKindOf().equals(SpecimenOrObservationType.Media))) {
+ return MediaSpecimen.NewInstance(SpecimenOrObservationType.Media);
+ } else {
+ return DerivedUnit.NewInstance((SpecimenOrObservationType)specOrObsType);
+ }
+ }
}
/* (non-Javadoc)
package eu.etaxonomy.taxeditor.newWizard;
import eu.etaxonomy.cdm.api.service.IOccurrenceService;
-import eu.etaxonomy.cdm.model.occurrence.FieldObservation;
+import eu.etaxonomy.cdm.model.occurrence.FieldUnit;
import eu.etaxonomy.taxeditor.store.CdmStore;
/**
* @created Jun 17, 2010
* @version 1.0
*/
-public class NewFieldObservationWizard extends AbstractNewEntityWizard<FieldObservation> {
+public class NewFieldObservationWizard extends AbstractNewEntityWizard<FieldUnit> {
/* (non-Javadoc)
* @see eu.etaxonomy.taxeditor.editor.newWizard.AbstractNewEntityWizard#createNewEntity()
*/
/** {@inheritDoc} */
@Override
- protected FieldObservation createNewEntity() {
+ protected FieldUnit createNewEntity() {
return null;
}
@Override
protected NonViralName createNewEntity() {
NomenclaturalCode code = PreferencesUtil.getPreferredNomenclaturalCode();
- if(code.equals(NomenclaturalCode.ICBN)){
+ if(code.equals(NomenclaturalCode.ICNAFP )){
return BotanicalName.NewInstance(null);
}else if(code.equals(NomenclaturalCode.ICZN)){
return ZoologicalName.NewInstance(null);
ITreeNode parent = getParentTreeNode();
Taxon taxon = taxonNodePage.getTaxon();
try{
- TaxonNode taxonNode = parent.addChildTaxon(taxon, parent.getReference(), parent.getMicroReference(), null);
+ TaxonNode taxonNode = parent.addChildTaxon(taxon, parent.getReference(), parent.getMicroReference());
generatedTaxonNodeUuid = CdmStore.getService(ITaxonNodeService.class).saveOrUpdate(taxonNode);
}catch(IllegalArgumentException e){
StoreUtil.warningDialog("Taxon already exists in classfication", getClass(), e.getMessage());
package eu.etaxonomy.taxeditor.preference;
import eu.etaxonomy.cdm.model.common.IDefinedTerm;
-import eu.etaxonomy.cdm.model.occurrence.FieldObservation;
/**
* <p>IPreferenceKeys interface.</p>
import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
import eu.etaxonomy.cdm.model.common.ICdmBase;
import eu.etaxonomy.cdm.model.common.IDefinedTerm;
+import eu.etaxonomy.cdm.model.common.ISimpleTerm;
import eu.etaxonomy.cdm.model.common.Language;
import eu.etaxonomy.cdm.model.common.MarkerType;
import eu.etaxonomy.cdm.model.common.TermBase;
}
return key;
}
+
+ /**
+ * Construct a unique key using the CdmBase object's uuid
+ *
+ * @param cdmBase
+ * @return
+ */
+ public static String getPreferenceKey(ISimpleTerm simpleTerm) {
+ simpleTerm = (ISimpleTerm) HibernateProxyHelper.deproxy(simpleTerm);
+ String key = simpleTerm.getClass().getName().concat(".")
+ .concat(simpleTerm.getUuid().toString());
+ if (key.contains("javassist")) {
+ StoreUtil.warn(PreferencesUtil.class,
+ "Trying to persist a preference based on a proxy class.");
+ }
+ return key;
+ }
+
+
/**
* Construct a unique key using the CdmBase object's uuid
package eu.etaxonomy.taxeditor.preference.menu;
-import eu.etaxonomy.cdm.model.description.Stage;
+import eu.etaxonomy.cdm.model.common.DefinedTerm;
+
/**
* <p>StageMenuPreferences class.</p>
* @created Jun 25, 2010
* @version 1.0
*/
-public class StageMenuPreferences extends AbstractMenuPreferences<Stage> {
+public class StageMenuPreferences extends AbstractMenuPreferences<DefinedTerm> {
/**
* <p>Constructor for StageMenuPreferences.</p>
*/
/** {@inheritDoc} */
@Override
- protected Class<Stage> getTermClass() {
- return Stage.class;
+ protected Class<DefinedTerm> getTermClass() {
+ return DefinedTerm.class;
}
}
import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;
import eu.etaxonomy.cdm.model.name.NameRelationship;
import eu.etaxonomy.cdm.model.name.TaxonNameBase;
-import eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase;
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
import eu.etaxonomy.cdm.model.reference.Reference;
import eu.etaxonomy.cdm.model.taxon.TaxonBase;
// by default we do not show field observations. This may be configured via preferences
boolean showFieldObservations = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.BULK_EDITOR_OCCURRENCE_SHOW_FIELD_OBSERVATIONS);
if(! showFieldObservations){
- configurator.setClazz(DerivedUnitBase.class);
+ configurator.setClazz(DerivedUnit.class);
}
if(checkLargeResult(CdmStore.getService(IOccurrenceService.class).countByTitle(configurator))){
return CdmStore.getService(IOccurrenceService.class).findByTitle(configurator).getRecords();
import org.eclipse.swt.widgets.Label;
import eu.etaxonomy.cdm.model.common.IDefinedTerm;
+import eu.etaxonomy.cdm.model.common.IEnumTerm;
+import eu.etaxonomy.cdm.model.common.OriginalSourceType;
import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
+import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
import eu.etaxonomy.cdm.model.reference.ReferenceType;
import eu.etaxonomy.taxeditor.preference.Resources;
import eu.etaxonomy.taxeditor.store.StoreUtil;
* @created Mar 16, 2010
* @version 1.0
*/
-public class EnumComboElement<T extends IDefinedTerm> extends
+public class EnumComboElement<T extends IEnumTerm> extends
AbstractCdmFormElement implements SelectionListener,
IEnableableFormElement, ISelectable {
return ReferenceType.class;
}
+ },
+ new CdmEnumDataHolder<SpecimenOrObservationType>(){
+
+ @Override
+ public String getName() {
+ return "Specimen / Observation Type";
+ }
+
+ @Override
+ public Collection<SpecimenOrObservationType> getElements() {
+ return Arrays.asList(SpecimenOrObservationType.values());
+ }
+
+ @Override
+ public Class<SpecimenOrObservationType> getClazz() {
+ return SpecimenOrObservationType.class;
+ }
+
+ },
+ new CdmEnumDataHolder<OriginalSourceType>(){
+
+ @Override
+ public String getName() {
+ return "Original Source Type";
+ }
+
+ @Override
+ public Collection<OriginalSourceType> getElements() {
+ return Arrays.asList(OriginalSourceType.values());
+ }
+
+ @Override
+ public Class<OriginalSourceType> getClazz() {
+ return OriginalSourceType.class;
+ }
+
}
+
};
private static final int DEFAULT_VISIBLE_ITEMS = 10;
private String getDefaultLabelString() {
if(enumType.equals(ReferenceType.class)){
return "Reference Type";
- }else if (enumType.equals(NomenclaturalCode.class)){
+ } else if (enumType.equals(NomenclaturalCode.class)){
return "Nomenclatural Code";
+ } else if(enumType.equals(OriginalSourceType.class)) {
+ return "Orig. Source Type";
+ } else if(enumType.equals(SpecimenOrObservationType.class)) {
+ return "Spec./Obs. Type";
}
return "No Label";
}
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Listener;
+import eu.etaxonomy.cdm.model.common.DefinedTerm;
import eu.etaxonomy.cdm.model.common.DefinedTermBase;
+import eu.etaxonomy.cdm.model.common.TermType;
import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
import eu.etaxonomy.taxeditor.preference.Resources;
import eu.etaxonomy.taxeditor.store.CdmStore;
private List<T> customPreferredTerms;
+ /**
+ * <p>
+ * Constructor for AbstractTermComboElement.
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param style
+ * a int.
+ * @param formFactory
+ * a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory}
+ * object.
+ * @param labelString
+ * a {@link java.lang.String} object.
+ * @param selection
+ * a T object.
+ * @param visibleItems
+ * a int.
+ * @param <T>
+ * a T object.
+ */
+ public TermComboElement(CdmFormFactory formFactory,
+ ICdmFormElement parentElement, TermType termType, String labelString, T selection,
+ int style) {
+ super(formFactory, parentElement);
+
+ this.termClass = (Class<T>) DefinedTerm.class;
+
+ if (labelString != null) {
+ label = formFactory.createLabel(getLayoutComposite(), labelString);
+ addControl(label);
+ }
+
+ // create combo
+ combo = new Combo(getLayoutComposite(), SWT.BORDER | SWT.READ_ONLY);
+ addControl(combo);
+ combo.setLayoutData(LayoutConstants.FILL_HORIZONTALLY());
+ combo.setVisibleItemCount(DEFAULT_VISIBLE_ITEMS);
+
+ populateTerms(filterDefinedTermByTermType(getPreferredTerms(), termType));
+
+ combo.addSelectionListener(this);
+ combo.addDisposeListener(this);
+ PreferencesUtil.getPreferenceStore().addPropertyChangeListener(this);
+
+ if (selection != null) {
+ setSelection(selection);
+ }
+ }
/**
* <p>
customPreferredTerms = terms;
populateTerms(customPreferredTerms);
}
+
+ private List<T> filterDefinedTermByTermType(List<T> terms, TermType termType) {
+ List<T> definedTerms = new ArrayList<T>();
+ for(T term : terms){
+ if(term.getTermType().equals(termType)) {
+ definedTerms.add(term);
+ }
+ }
+ return definedTerms;
+ }
}
--- /dev/null
+//$Id$
+
+package eu.etaxonomy.taxeditor.ui.dialog.selection;
+
+import java.lang.reflect.Field;
+import java.text.Collator;
+import java.util.Comparator;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+import java.util.UUID;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.OperationCanceledException;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.jface.dialogs.IDialogSettings;
+import org.eclipse.jface.viewers.ILabelProvider;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.jface.window.Window;
+import org.eclipse.jface.wizard.WizardDialog;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Link;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.ui.IMemento;
+import org.eclipse.ui.dialogs.FilteredItemsSelectionDialog;
+
+import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
+import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
+import eu.etaxonomy.cdm.model.common.CdmBase;
+import eu.etaxonomy.cdm.model.common.ICdmBase;
+import eu.etaxonomy.cdm.model.common.IEnumTerm;
+import eu.etaxonomy.cdm.model.common.IIdentifiableEntity;
+import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
+import eu.etaxonomy.taxeditor.newWizard.AbstractNewEntityWizard;
+import eu.etaxonomy.taxeditor.store.StoreUtil;
+import eu.etaxonomy.taxeditor.store.internal.TaxeditorStorePlugin;
+
+/**
+* <p>Abstract AbstractFilteredCdmEnumSelectionDialog class.</p>
+*
+* @author c.mathew
+* @created 18.07.2013
+* @version 1.0
+*/
+public abstract class AbstractFilteredCdmEnumSelectionDialog<T extends IEnumTerm> extends
+ FilteredItemsSelectionDialog implements IConversationEnabled {
+
+ private ConversationHolder conversation;
+
+ protected List<T> model;
+ private String settings;
+
+
+
+ /**
+ * <p>Constructor for AbstractFilteredCdmResourceSelectionDialog.</p>
+ *
+ * @param shell a {@link org.eclipse.swt.widgets.Shell} object.
+ * @param conversation
+ * @param title a {@link java.lang.String} object.
+ * @param multi a boolean.
+ * @param settings a {@link java.lang.String} object.
+ * @param cdmEnum a T object.
+ * @param <T> a T object.
+ */
+ protected AbstractFilteredCdmEnumSelectionDialog(Shell shell,
+ ConversationHolder conversation,
+ String title,
+ boolean multi,
+ String settings,
+ T cdmEnum) {
+ super(shell, multi);
+ setTitle(title);
+ setMessage("Use * for wildcard, or ? to see all entries");
+ this.settings = settings;
+
+ this.conversation = conversation;
+
+ init();
+
+ initModel();
+
+ String objectTitle = getTitle(cdmEnum);
+ if (objectTitle != null) {
+ setInitialPattern(objectTitle);
+ }
+
+ setListLabelProvider(createListLabelProvider());
+ setDetailsLabelProvider(createDetailsLabelProvider());
+
+ setSelectionHistory(new ResourceSelectionHistory());
+ }
+
+ /**
+ * By default, we are returning the standard list label provider
+ *
+ * Override in subclasses if you want different behavior
+ *
+ * @return
+ */
+ protected ILabelProvider createDetailsLabelProvider() {
+ return createListLabelProvider();
+ }
+
+ /**
+ *
+ * @return
+ */
+ protected ILabelProvider createListLabelProvider() {
+ return new FilteredCdmResourceLabelProvider();
+ }
+
+ /**
+ * Override in subclasses.
+ * Will run before initModel()
+ */
+ protected void init() {
+
+ }
+
+ /**
+ * <p>getSelectionFromDialog</p>
+ *
+ * @param dialog a {@link eu.etaxonomy.taxeditor.ui.dialog.selection.AbstractFilteredCdmResourceSelectionDialog} object.
+ * @param <TYPE> a TYPE object.
+ * @return a TYPE object.
+ */
+ protected static <TYPE extends IEnumTerm> TYPE getSelectionFromDialog(AbstractFilteredCdmEnumSelectionDialog<TYPE> dialog) {
+
+ int result = dialog.open();
+
+ if (result == Window.CANCEL) {
+ return null;
+ }
+
+ return dialog.getSelectedEnumTerm();
+ }
+
+
+ /**
+ * <p>getTitle</p>
+ *
+ * @param cdmObject a T object.
+ * @return a {@link java.lang.String} object.
+ */
+ protected String getTitle(T cdmEnum) {
+ return cdmEnum.getMessage();
+ }
+
+
+ /** {@inheritDoc} */
+ @Override
+ public void refresh() {
+ initModel();
+ super.refresh();
+ }
+
+ /**
+ * <p>initModel</p>
+ */
+ abstract protected void initModel();
+
+ /* (non-Javadoc)
+ * @see org.eclipse.ui.dialogs.FilteredItemsSelectionDialog#createFilter()
+ */
+ /** {@inheritDoc} */
+ @Override
+ protected ItemsFilter createFilter() {
+ return new ItemsFilter() {
+
+ /**
+ * Always returns false to enforce refiltering even if the pattern is equal
+ */
+ @Override
+ public boolean equalsFilter(ItemsFilter filter) {
+ return false;
+ }
+
+ @Override
+ public boolean isConsistentItem(Object item) {
+ return false;
+ }
+
+ @Override
+ public boolean matchItem(Object item) {
+ String text = null;
+ if(item instanceof IEnumTerm){
+ text = ((IEnumTerm) item).getMessage();
+ }else if(item instanceof String){
+ text = (String) item;
+ }
+ return text != null ? matches(text) : false;
+ }
+
+ };
+ }
+
+
+ /**
+ * Set the filter input to the Agent's title cache
+ *
+ * @param cdmObject a T object.
+ */
+ protected void setPattern(T cdmObject) {
+ // FilteredSelection does some very tricky caching to make sure it
+ // runs with high performance.
+ // This works for most use cases, but we want to change the model while the dialog is open
+ // and all the clever caching prevents the content provider from knowing that the model has changed
+ // I am aware, that this is a hack, but the FilteredSelectionDialog API does not offer a convenient
+ // way to solve the problem.
+ try {
+ Field lastCompletedFilter = this.getClass().getSuperclass().getSuperclass().getDeclaredField("lastCompletedFilter");
+ lastCompletedFilter.setAccessible(true);
+ lastCompletedFilter.set(this, null);
+ } catch (SecurityException e) {
+ StoreUtil.error(getClass(), e);
+ } catch (NoSuchFieldException e) {
+ StoreUtil.error(getClass(), e);
+ } catch (IllegalArgumentException e) {
+ StoreUtil.error(getClass(), e);
+ } catch (IllegalAccessException e) {
+ StoreUtil.error(getClass(), e);
+ }
+
+ // this also is not the nicest way to do it.
+ // I am still amazed, that FilteredSelectionDialog does not offer any methods to change its data
+ // once it was opened. Am I doing it wrong?
+ String pattern = getTitle(cdmObject);
+ ((Text) getPatternControl()).setText(pattern);
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.ui.dialogs.FilteredItemsSelectionDialog#fillContentProvider(org.eclipse.ui.dialogs.FilteredItemsSelectionDialog.AbstractContentProvider, org.eclipse.ui.dialogs.FilteredItemsSelectionDialog.ItemsFilter, org.eclipse.core.runtime.IProgressMonitor)
+ */
+ /** {@inheritDoc} */
+ @Override
+ protected void fillContentProvider(AbstractContentProvider contentProvider,
+ ItemsFilter itemsFilter, IProgressMonitor progressMonitor)
+ throws CoreException {
+ try {
+ if(model != null){
+ progressMonitor.beginTask("Looking for entities", model.size());
+ for(T element : model){
+ contentProvider.add(element, itemsFilter);
+ if (progressMonitor.isCanceled()) {
+ throw new OperationCanceledException();
+ }
+ progressMonitor.worked(1);
+ }
+ }else{
+ StoreUtil.warn(getClass(), "Model for Filtered Selection is null:" + this.getClass().getSimpleName());
+ }
+ }
+ finally {
+ progressMonitor.done();
+ }
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.ui.dialogs.FilteredItemsSelectionDialog#getDialogSettings()
+ */
+ /** {@inheritDoc} */
+ @Override
+ protected IDialogSettings getDialogSettings() {
+ IDialogSettings settings = TaxeditorStorePlugin.getDefault().getDialogSettings().getSection(getSettings());
+
+ if (settings == null) {
+ settings = TaxeditorStorePlugin.getDefault().getDialogSettings().addNewSection(getSettings());
+ }
+ return settings;
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.ui.dialogs.FilteredItemsSelectionDialog#getElementName(java.lang.Object)
+ */
+ /** {@inheritDoc} */
+ @Override
+ public String getElementName(Object item) {
+ return ((IEnumTerm) item).getMessage();
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.ui.dialogs.FilteredItemsSelectionDialog#getItemsComparator()
+ */
+ /** {@inheritDoc} */
+ @Override
+ protected Comparator getItemsComparator() {
+ return new Comparator<IEnumTerm>() {
+ public int compare(IEnumTerm entity1,
+ IEnumTerm entity2) {
+ Collator collator = Collator.getInstance();
+ return collator.compare(entity1.getMessage(), entity2.getMessage());
+ }
+ };
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.ui.dialogs.FilteredItemsSelectionDialog#validateItem(java.lang.Object)
+ */
+ /** {@inheritDoc} */
+ @Override
+ protected IStatus validateItem(Object item) {
+ return Status.OK_STATUS;
+ }
+
+ /**
+ * <p>getSelectedUuidAndTitleCache</p>
+ *
+ * @return a {@link eu.etaxonomy.cdm.model.common.UuidAndTitleCache} object.
+ */
+ protected T getSelectedEnumTerm() {
+ Object[] result = getResult();
+ return result[0] == null ? null : (T) result[0];
+ }
+
+ /**
+ * <p>Getter for the field <code>settings</code>.</p>
+ *
+ * @return a {@link java.lang.String} object.
+ */
+ public String getSettings() {
+ if(settings == null){
+ throw new IllegalStateException("No SETTINGS set.");
+ }
+ return settings;
+ }
+
+ /**
+ *
+ * @author n.hoffmann
+ * @created Oct 19, 2009
+ * @version 1.0
+ */
+ private class ResourceSelectionHistory extends SelectionHistory {
+ /*
+ * @see org.eclipse.ui.dialogs.FilteredItemsSelectionDialog.SelectionHistory#restoreItemFromMemento(org.eclipse.ui.IMemento)
+ */
+ protected Object restoreItemFromMemento(IMemento element) {
+ return element.getString("resource"); //$NON-NLS-1$
+ }
+ /*
+ * @see org.eclipse.ui.dialogs.FilteredItemsSelectionDialog.SelectionHistory#storeItemToMemento(java.lang.Object,
+ * org.eclipse.ui.IMemento)
+ */
+ protected void storeItemToMemento(Object item, IMemento element) {
+ element.putString("resource", item.toString()); //$NON-NLS-1$
+ }
+ }
+
+ /**
+ * <p>getNewWizardLinkText</p>
+ *
+ * @return a {@link java.lang.String} object.
+ */
+ protected abstract String getNewWizardLinkText();
+
+ /**
+ * <p>getNewEntityWizard</p>
+ * @param parameter
+ * @return a {@link eu.etaxonomy.taxeditor.newWizard.AbstractNewEntityWizard} object.
+ */
+ protected abstract AbstractNewEntityWizard getNewEntityWizard(String parameter);
+
+ public class FilteredCdmResourceLabelProvider extends LabelProvider {
+ public String getText(Object element) {
+ if (element == null) {
+ return null;
+ }
+ return ((IEnumTerm) element).getMessage();
+ }
+ };
+
+ /* (non-Javadoc)
+ * @see org.eclipse.ui.dialogs.FilteredItemsSelectionDialog#createExtendedContentArea(org.eclipse.swt.widgets.Composite)
+ */
+ /** {@inheritDoc} */
+ @Override
+ protected Control createExtendedContentArea(Composite parent) {
+ if(getNewWizardLinkText() != null){
+ Link link = new Link(parent, SWT.NONE);
+ link.setText(getNewWizardLinkText());
+ link.addSelectionListener(getNewWizardLinkSelectionListener());
+ return link;
+ }
+ return null;
+ }
+
+ protected SelectionListener getNewWizardLinkSelectionListener(){
+ return new SelectionAdapter() {
+
+ /* (non-Javadoc)
+ * @see org.eclipse.swt.events.SelectionAdapter#widgetSelected(org.eclipse.swt.events.SelectionEvent)
+ */
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+
+ AbstractNewEntityWizard wizard = getNewEntityWizard(e.text);
+ wizard.init(null, null);
+ WizardDialog dialog = new WizardDialog(getShell(), wizard);
+ int status = dialog.open();
+
+ if (status == IStatus.OK) {
+
+ T entity = (T) wizard.getEntity();
+
+ refresh();
+ setPattern(entity);
+ getConversationHolder().bind();
+ }
+ }
+ };
+ }
+
+ /**
+ * <p>getConversationHolder</p>
+ *
+ * @return a {@link eu.etaxonomy.cdm.api.conversation.ConversationHolder} object.
+ */
+ public ConversationHolder getConversationHolder() {
+ return conversation;
+ }
+
+ /** {@inheritDoc} */
+ public void update(CdmDataChangeMap changeEvents) {}
+
+}
*/
@Override
public void widgetSelected(SelectionEvent e) {
-
+
AbstractNewEntityWizard wizard = getNewEntityWizard(e.text);
+
wizard.init(null, null);
- WizardDialog dialog = new WizardDialog(getShell(), wizard);
- int status = dialog.open();
-
- if (status == IStatus.OK) {
-
- T entity = (T) wizard.getEntity();
-
-// addObjectToModel(teamOrPerson);
- refresh();
- setPattern(entity);
- getConversationHolder().bind();
+ if(wizard.getEntity() != null) {
+ WizardDialog dialog = new WizardDialog(getShell(), wizard);
+ int status = dialog.open();
+
+ if (status == IStatus.OK) {
+
+ T entity = (T) wizard.getEntity();
+ refresh();
+ setPattern(entity);
+ getConversationHolder().bind();
+ }
}
}
};
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
import eu.etaxonomy.cdm.api.service.IOccurrenceService;
import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
-import eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase;
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
import eu.etaxonomy.taxeditor.newWizard.AbstractNewEntityWizard;
import eu.etaxonomy.taxeditor.newWizard.NewDerivedUnitBaseWizard;
* @version 1.0
*/
public class DerivedUnitSelectionDialog extends
- AbstractFilteredCdmResourceSelectionDialog<DerivedUnitBase> {
+ AbstractFilteredCdmResourceSelectionDialog<DerivedUnit> {
/**
* <p>select</p>
* @param unit a {@link eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase} object.
* @return a {@link eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase} object.
*/
- public static DerivedUnitBase select(Shell shell, ConversationHolder conversation, DerivedUnitBase unit){
+ public static DerivedUnit select(Shell shell, ConversationHolder conversation, DerivedUnit unit){
DerivedUnitSelectionDialog dialog = new DerivedUnitSelectionDialog(shell, conversation,
"Choose Unit", false, DerivedUnitSelectionDialog.class.getCanonicalName(), unit);
return getSelectionFromDialog(dialog);
* @param cdmObject a {@link eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase} object.
*/
protected DerivedUnitSelectionDialog(Shell shell, ConversationHolder conversation, String title,
- boolean multi, String settings, DerivedUnitBase cdmObject) {
+ boolean multi, String settings, DerivedUnit cdmObject) {
super(shell, conversation, title, multi, settings, cdmObject);
}
/** {@inheritDoc} */
@Override
- protected DerivedUnitBase getPersistentObject(UUID uuid) {
+ protected DerivedUnit getPersistentObject(UUID uuid) {
Object object = CdmStore.getService(IOccurrenceService.class).load(uuid);
SpecimenOrObservationBase specimenObservationBase = (SpecimenOrObservationBase) HibernateProxyHelper.deproxy(object);
- if(specimenObservationBase instanceof DerivedUnitBase){
- return (DerivedUnitBase) specimenObservationBase;
+ if(specimenObservationBase instanceof DerivedUnit){
+ return (DerivedUnit) specimenObservationBase;
}
StoreUtil.error(this.getClass(), "Selected unit is not a derived unit", null);
return null;
/** {@inheritDoc} */
@Override
protected void initModel() {
- model = CdmStore.getService(IOccurrenceService.class).getDerivedUnitBaseUuidAndTitleCache();
+ model = CdmStore.getService(IOccurrenceService.class).getDerivedUnitUuidAndTitleCache();
}
/** {@inheritDoc} */
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
import eu.etaxonomy.cdm.api.service.IOccurrenceService;
import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
-import eu.etaxonomy.cdm.model.occurrence.FieldObservation;
+import eu.etaxonomy.cdm.model.occurrence.FieldUnit;
import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
import eu.etaxonomy.taxeditor.newWizard.AbstractNewEntityWizard;
import eu.etaxonomy.taxeditor.newWizard.NewFieldObservationWizard;
* @version 1.0
*/
public class FieldObservationSelectionDialog extends
- AbstractFilteredCdmResourceSelectionDialog<FieldObservation> {
+ AbstractFilteredCdmResourceSelectionDialog<FieldUnit> {
/**
* <p>select</p>
*
* @param shell a {@link org.eclipse.swt.widgets.Shell} object.
* @param conversation a {@link eu.etaxonomy.cdm.api.conversation.ConversationHolder} object.
- * @param observation a {@link eu.etaxonomy.cdm.model.occurrence.FieldObservation} object.
- * @return a {@link eu.etaxonomy.cdm.model.occurrence.FieldObservation} object.
+ * @param observation a {@link eu.etaxonomy.cdm.model.occurrence.FieldUnit} object.
+ * @return a {@link eu.etaxonomy.cdm.model.occurrence.FieldUnit} object.
*/
- public static FieldObservation select(Shell shell, ConversationHolder conversation, FieldObservation observation){
+ public static FieldUnit select(Shell shell, ConversationHolder conversation, FieldUnit observation){
FieldObservationSelectionDialog dialog = new FieldObservationSelectionDialog(shell, conversation,
"Choose Derived Unit", false, FieldObservationSelectionDialog.class.getCanonicalName(), observation);
return getSelectionFromDialog(dialog);
*/
protected FieldObservationSelectionDialog(Shell shell, ConversationHolder conversation,
String title, boolean multi, String settings,
- FieldObservation cdmObject) {
+ FieldUnit cdmObject) {
super(shell, conversation, title, multi, settings, cdmObject);
}
*/
/** {@inheritDoc} */
@Override
- protected FieldObservation getPersistentObject(UUID uuid) {
+ protected FieldUnit getPersistentObject(UUID uuid) {
Object object = CdmStore.getService(IOccurrenceService.class).load(uuid);
SpecimenOrObservationBase specimenObservationBase = (SpecimenOrObservationBase) HibernateProxyHelper.deproxy(object);
- if(specimenObservationBase instanceof FieldObservation){
- return (FieldObservation) specimenObservationBase;
+ if(specimenObservationBase instanceof FieldUnit){
+ return (FieldUnit) specimenObservationBase;
}
StoreUtil.error(this.getClass(), "Selected object is not a field observation", null);
return null;
/** {@inheritDoc} */
@Override
protected void initModel() {
- model = CdmStore.getService(IOccurrenceService.class).getFieldObservationUuidAndTitleCache();
+ model = CdmStore.getService(IOccurrenceService.class).getFieldUnitUuidAndTitleCache();
}
/** {@inheritDoc} */
--- /dev/null
+// $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.dialog.selection;
+
+import java.util.ArrayList;
+import java.util.EnumSet;
+
+import org.eclipse.swt.widgets.Shell;
+
+import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
+import eu.etaxonomy.cdm.model.common.OriginalSourceType;
+import eu.etaxonomy.taxeditor.newWizard.AbstractNewEntityWizard;
+
+/**
+ * <p>OriginalSourceTypeSelectionDialog class.</p>
+ *
+ * @author c.mathew
+ * @created 18.07.2013
+ * @version 1.0
+ */
+public class OriginalSourceTypeSelectionDialog extends
+ AbstractFilteredCdmEnumSelectionDialog<OriginalSourceType> {
+
+ /**
+ * <p>select</p>
+ *
+ * @param shell a {@link org.eclipse.swt.widgets.Shell} object.
+ * @param conversation a {@link eu.etaxonomy.cdm.api.conversation.ConversationHolder} object.
+ * @return a {@link eu.etaxonomy.cdm.model.common.OriginalSourceType} object.
+ */
+ public static OriginalSourceType select(Shell shell, ConversationHolder conversation){
+ OriginalSourceTypeSelectionDialog dialog =
+ new OriginalSourceTypeSelectionDialog(shell,
+ conversation,
+ "Choose Original Source Type",
+ false,
+ OriginalSourceTypeSelectionDialog.class.getCanonicalName());
+ return getSelectionFromDialog(dialog);
+ }
+
+ /**
+ * <p>Constructor for FilteredDerivedUnitSelectionDialog.</p>
+ *
+ * @param shell a {@link org.eclipse.swt.widgets.Shell} object.
+ * @param conversation a {@link eu.etaxonomy.cdm.api.conversation.ConversationHolder} object.
+ * @param title a {@link java.lang.String} object.
+ * @param multi a boolean.
+ * @param settings a {@link java.lang.String} object.
+ */
+ protected OriginalSourceTypeSelectionDialog(Shell shell,
+ ConversationHolder conversation,
+ String title,
+ boolean multi,
+ String settings) {
+ super(shell, conversation, title, multi, settings, OriginalSourceType.PrimaryTaxonomicSource);
+ }
+
+
+ /** {@inheritDoc} */
+ @Override
+ protected void initModel() {
+ model = new ArrayList<OriginalSourceType>();
+ model.addAll(EnumSet.allOf(OriginalSourceType.class));
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ protected AbstractNewEntityWizard getNewEntityWizard(String parameter) {
+ return null;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ protected String getNewWizardLinkText() {
+ return null;
+ }
+}
import eu.etaxonomy.cdm.model.location.NamedArea;
import eu.etaxonomy.cdm.model.name.TaxonNameBase;
import eu.etaxonomy.cdm.model.occurrence.Collection;
-import eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase;
-import eu.etaxonomy.cdm.model.occurrence.FieldObservation;
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
+import eu.etaxonomy.cdm.model.occurrence.FieldUnit;
import eu.etaxonomy.cdm.model.reference.Reference;
import eu.etaxonomy.cdm.model.taxon.Classification;
import eu.etaxonomy.cdm.model.taxon.Synonym;
"This functionality is not implemented yet.");
return null;
}
- if(clazz.equals(DerivedUnitBase.class)){
- return (T) DerivedUnitSelectionDialog.select(shell, conversation, (DerivedUnitBase) curentSelection);
+ if(clazz.equals(DerivedUnit.class)){
+ return (T) DerivedUnitSelectionDialog.select(shell, conversation, (DerivedUnit) curentSelection);
}
- if(clazz.equals(FieldObservation.class)){
- return (T) FieldObservationSelectionDialog.select(shell, conversation, (FieldObservation) curentSelection);
+ if(clazz.equals(FieldUnit.class)){
+ return (T) FieldObservationSelectionDialog.select(shell, conversation, (FieldUnit) curentSelection);
}
if(clazz.equals(NamedArea.class)){
return (T) NamedAreaSelectionDialog.select(shell, conversation, (NamedArea) curentSelection);
--- /dev/null
+//$Id$
+
+package eu.etaxonomy.taxeditor.ui.dialog.selection;
+
+import java.util.ArrayList;
+import java.util.EnumSet;
+
+import org.eclipse.swt.widgets.Shell;
+
+import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
+import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
+import eu.etaxonomy.taxeditor.newWizard.AbstractNewEntityWizard;
+
+/**
+* <p>OriginalSourceTypeSelectionDialog class.</p>
+*
+* @author c.mathew
+* @created 18.07.2013
+* @version 1.0
+*/
+public class SpecimenOrObservationTypeSelectionDialog extends
+ AbstractFilteredCdmEnumSelectionDialog<SpecimenOrObservationType> {
+
+ /**
+ * <p>select</p>
+ *
+ * @param shell a {@link org.eclipse.swt.widgets.Shell} object.
+ * @param conversation a {@link eu.etaxonomy.cdm.api.conversation.ConversationHolder} object.
+ * @return a {@link eu.etaxonomy.cdm.model.common.OriginalSourceType} object.
+ */
+ public static SpecimenOrObservationType select(Shell shell, ConversationHolder conversation){
+ SpecimenOrObservationTypeSelectionDialog dialog =
+ new SpecimenOrObservationTypeSelectionDialog(shell,
+ conversation,
+ "Choose Specimen / Observation Type",
+ false,
+ SpecimenOrObservationTypeSelectionDialog.class.getCanonicalName());
+ return getSelectionFromDialog(dialog);
+ }
+
+ /**
+ * <p>Constructor for FilteredDerivedUnitSelectionDialog.</p>
+ *
+ * @param shell a {@link org.eclipse.swt.widgets.Shell} object.
+ * @param conversation a {@link eu.etaxonomy.cdm.api.conversation.ConversationHolder} object.
+ * @param title a {@link java.lang.String} object.
+ * @param multi a boolean.
+ * @param settings a {@link java.lang.String} object.
+ */
+ protected SpecimenOrObservationTypeSelectionDialog(Shell shell,
+ ConversationHolder conversation,
+ String title,
+ boolean multi,
+ String settings) {
+ super(shell, conversation, title, multi, settings, SpecimenOrObservationType.Unknown);
+ }
+
+
+ /** {@inheritDoc} */
+ @Override
+ protected void initModel() {
+ model = new ArrayList<SpecimenOrObservationType>();
+ model.addAll(EnumSet.allOf(SpecimenOrObservationType.class));
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ protected AbstractNewEntityWizard getNewEntityWizard(String parameter) {
+ return null;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ protected String getNewWizardLinkText() {
+ return null;
+ }
+}
/**
- *
+ *
*/
package eu.etaxonomy.taxeditor.ui.element;
import org.springframework.security.core.GrantedAuthority;
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
+import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
import eu.etaxonomy.cdm.model.agent.Person;
import eu.etaxonomy.cdm.model.agent.Team;
import eu.etaxonomy.cdm.model.common.Annotation;
import eu.etaxonomy.cdm.model.common.CdmBase;
import eu.etaxonomy.cdm.model.common.Credit;
+import eu.etaxonomy.cdm.model.common.DefinedTerm;
import eu.etaxonomy.cdm.model.common.DefinedTermBase;
-import eu.etaxonomy.cdm.model.common.DescriptionElementSource;
+import eu.etaxonomy.cdm.model.description.DescriptionElementSource;
import eu.etaxonomy.cdm.model.common.Extension;
import eu.etaxonomy.cdm.model.common.GrantedAuthorityImpl;
import eu.etaxonomy.cdm.model.common.Group;
import eu.etaxonomy.cdm.model.common.ICdmBase;
import eu.etaxonomy.cdm.model.common.IDefinedTerm;
+import eu.etaxonomy.cdm.model.common.IEnumTerm;
import eu.etaxonomy.cdm.model.common.IdentifiableSource;
import eu.etaxonomy.cdm.model.common.Language;
import eu.etaxonomy.cdm.model.common.LanguageString;
import eu.etaxonomy.cdm.model.common.Marker;
+import eu.etaxonomy.cdm.model.common.TermType;
import eu.etaxonomy.cdm.model.common.TimePeriod;
import eu.etaxonomy.cdm.model.common.User;
import eu.etaxonomy.cdm.model.common.VersionableEntity;
import eu.etaxonomy.cdm.model.description.Feature;
import eu.etaxonomy.cdm.model.description.IndividualsAssociation;
import eu.etaxonomy.cdm.model.description.KeyStatement;
-import eu.etaxonomy.cdm.model.description.Modifier;
import eu.etaxonomy.cdm.model.description.QuantitativeData;
-import eu.etaxonomy.cdm.model.description.Scope;
import eu.etaxonomy.cdm.model.description.StateData;
import eu.etaxonomy.cdm.model.description.StatisticalMeasurementValue;
import eu.etaxonomy.cdm.model.description.TaxonInteraction;
import eu.etaxonomy.cdm.model.name.SpecimenTypeDesignation;
import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
import eu.etaxonomy.cdm.model.occurrence.DeterminationEvent;
-import eu.etaxonomy.cdm.model.occurrence.Specimen;
+import eu.etaxonomy.cdm.model.occurrence.GatheringEvent;
import eu.etaxonomy.cdm.model.reference.Reference;
import eu.etaxonomy.cdm.model.taxon.Taxon;
import eu.etaxonomy.cdm.model.taxon.TaxonNode;
import eu.etaxonomy.taxeditor.model.AbstractUtility;
import eu.etaxonomy.taxeditor.ui.combo.EnumComboElement;
import eu.etaxonomy.taxeditor.ui.combo.TermComboElement;
+import eu.etaxonomy.taxeditor.ui.element.MinMaxTextSection.UnitType;
import eu.etaxonomy.taxeditor.ui.openurl.IOpenUrlEnabled;
import eu.etaxonomy.taxeditor.ui.openurl.OpenUrlSelectorElement;
import eu.etaxonomy.taxeditor.ui.password.EditPasswordElement;
* <p>
* CdmFormFactory class.
* </p>
- *
+ *
* @author n.hoffmann
* @created Feb 24, 2010
* @version 1.0
*/
public class CdmFormFactory extends FormToolkit {
- private BoldFontHolder2 boldFontHolder2;
- private MouseListener selectionMouseHandler;
- private FocusListener selectionFocusHandler;
+ private BoldFontHolder2 boldFontHolder2;
+ private MouseListener selectionMouseHandler;
+ private FocusListener selectionFocusHandler;
private final Set<SelectionListener> selectionListenerList = new HashSet<SelectionListener>();
- private final List<IPropertyChangeListener> propertyChangeListeners = new ArrayList<IPropertyChangeListener>();
-
- private final int orientation = Window.getDefaultOrientation();
- private ISelectionProvider selectionProvider;
-
- /** Constant <code>EMPTY_SELECTION</code> */
- public static ISelection EMPTY_SELECTION = new ISelection() {
- @Override
- public boolean isEmpty() {
- return true;
- }
- };
-
- /**
- *
- * @author n.hoffmann
- * @date Jan 25, 2010
- *
- */
- private class SelectionMouseHandler extends MouseAdapter {
- @Override
- public void mouseDown(MouseEvent e) {
- notifySelectionListeners(e);
- }
- }
-
- /**
- *
- * @author n.hoffmann
- * @date Jan 25, 2010
- *
- */
- private class SelectionFocusHandler extends FocusAdapter {
- @Override
- public void focusGained(FocusEvent e) {
- notifySelectionListeners(e);
- }
- }
-
- private void notifySelectionListeners(TypedEvent e) {
- Event event = new Event();
- event.widget = e.widget;
- SelectionEvent selectionEvent = new SelectionEvent(event);
+ private final List<IPropertyChangeListener> propertyChangeListeners = new ArrayList<IPropertyChangeListener>();
+
+ private final int orientation = Window.getDefaultOrientation();
+ private ISelectionProvider selectionProvider;
+
+ /** Constant <code>EMPTY_SELECTION</code> */
+ public static ISelection EMPTY_SELECTION = new ISelection() {
+ @Override
+ public boolean isEmpty() {
+ return true;
+ }
+ };
+
+ /**
+ *
+ * @author n.hoffmann
+ * @date Jan 25, 2010
+ *
+ */
+ private class SelectionMouseHandler extends MouseAdapter {
+ @Override
+ public void mouseDown(MouseEvent e) {
+ notifySelectionListeners(e);
+ }
+ }
+
+ /**
+ *
+ * @author n.hoffmann
+ * @date Jan 25, 2010
+ *
+ */
+ private class SelectionFocusHandler extends FocusAdapter {
+ @Override
+ public void focusGained(FocusEvent e) {
+ notifySelectionListeners(e);
+ }
+ }
+
+ private void notifySelectionListeners(TypedEvent e) {
+ Event event = new Event();
+ event.widget = e.widget;
+ SelectionEvent selectionEvent = new SelectionEvent(event);
for (SelectionListener listener : selectionListenerList) {
listener.widgetSelected(selectionEvent);
- }
- }
+ }
+ }
+
+ /**
+ * <p>
+ * Constructor for CdmFormFactory.
+ * </p>
+ *
+ * @param display
+ * a {@link org.eclipse.swt.widgets.Display} object.
+ * @param selectionProvider
+ * a {@link org.eclipse.jface.viewers.ISelectionProvider} object.
+ */
+ public CdmFormFactory(Display display, ISelectionProvider selectionProvider) {
+ super(display);
+ this.selectionProvider = selectionProvider;
+ init();
+ }
+
+ /**
+ * <p>
+ * Constructor for CdmFormFactory.
+ * </p>
+ *
+ * @param display
+ * a {@link org.eclipse.swt.widgets.Display} object.
+ */
+ public CdmFormFactory(Display display) {
+ super(display);
+ init();
+ }
- /**
- * <p>
- * Constructor for CdmFormFactory.
- * </p>
- *
- * @param display
- * a {@link org.eclipse.swt.widgets.Display} object.
- * @param selectionProvider
- * a {@link org.eclipse.jface.viewers.ISelectionProvider} object.
- */
- public CdmFormFactory(Display display, ISelectionProvider selectionProvider) {
- super(display);
- this.selectionProvider = selectionProvider;
- init();
- }
-
- /**
- * <p>
- * Constructor for CdmFormFactory.
- * </p>
- *
- * @param display
- * a {@link org.eclipse.swt.widgets.Display} object.
- */
- public CdmFormFactory(Display display) {
- super(display);
- init();
- }
-
- /**
- *
+ /**
+ *
+ */
+ private void init() {
+ boldFontHolder2 = new BoldFontHolder2();
+ selectionMouseHandler = new SelectionMouseHandler();
+ selectionFocusHandler = new SelectionFocusHandler();
+ }
+
+ /**
+ * Creates an instance initialized with the correct selectionProvider
+ *
+ * Make sure to remove the instance when the entityComposite disposes via
+ * destroySelectionArbitrator(..)
+ *
+ * @param entityElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.IEntityElement}
+ * object.
+ * @return a {@link eu.etaxonomy.taxeditor.ui.element.SelectionArbitrator}
+ * object.
*/
- private void init() {
- boldFontHolder2 = new BoldFontHolder2();
- selectionMouseHandler = new SelectionMouseHandler();
- selectionFocusHandler = new SelectionFocusHandler();
- }
-
- /**
- * Creates an instance initialized with the correct selectionProvider
- *
- * Make sure to remove the instance when the entityComposite disposes via
- * destroySelectionArbitrator(..)
- *
- * @param entityElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.IEntityElement}
- * object.
- * @return a {@link eu.etaxonomy.taxeditor.ui.element.SelectionArbitrator}
- * object.
- */
public SelectionArbitrator createSelectionArbitrator(IEntityElement entityElement) {
SelectionArbitrator selectionArbitrator = new SelectionArbitrator(entityElement);
- selectionArbitrator.addSelectionProvider(selectionProvider);
- selectionProvider.addSelectionChangedListener(selectionArbitrator);
- addSelectionListener(selectionArbitrator);
- return selectionArbitrator;
- }
-
- /**
- * <p>
- * destroySelectionArbitrator
- * </p>
- *
- * @param selectionArbitrator
+ selectionArbitrator.addSelectionProvider(selectionProvider);
+ selectionProvider.addSelectionChangedListener(selectionArbitrator);
+ addSelectionListener(selectionArbitrator);
+ return selectionArbitrator;
+ }
+
+ /**
+ * <p>
+ * destroySelectionArbitrator
+ * </p>
+ *
+ * @param selectionArbitrator
* a
* {@link eu.etaxonomy.taxeditor.ui.element.SelectionArbitrator}
- * object.
- */
+ * object.
+ */
public void destroySelectionArbitrator(SelectionArbitrator selectionArbitrator) {
- removeSelectionListener(selectionArbitrator);
- if (selectionProvider != null) {
+ removeSelectionListener(selectionArbitrator);
+ if (selectionProvider != null) {
selectionProvider.removeSelectionChangedListener(selectionArbitrator);
- } else {
+ } else {
AbstractUtility.error(this.getClass(),
"Tried to destroy a selection listener from this factories listeners but was null", null);
- }
- }
-
- /** {@inheritDoc} */
- @Override
- public void adapt(Composite composite) {
- composite.addMouseListener(selectionMouseHandler);
- super.adapt(composite);
- }
-
- /**
- * <p>
+ }
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public void adapt(Composite composite) {
+ composite.addMouseListener(selectionMouseHandler);
+ super.adapt(composite);
+ }
+
+ /**
+ * <p>
* Adapts the {@link AbstractCdmFormElement}:<br>
* - sets the {@link IPropertyChangeListener}s handled by this class
- * </p>
- *
- * @param formElement
- * a
- * {@link eu.etaxonomy.taxeditor.ui.element.AbstractCdmFormElement}
- * object.
- */
- public void adapt(AbstractCdmFormElement formElement) {
- formElement.setPropertyChangeListeners(propertyChangeListeners);
- }
-
- /** {@inheritDoc} */
- @Override
- public void adapt(Control control, boolean trackFocus, boolean trackKeyboard) {
- if (trackFocus) {
- control.addFocusListener(selectionFocusHandler);
- }
- super.adapt(control, trackFocus, trackKeyboard);
- }
-
- /**
- * <p>
- * destroyElement
- * </p>
- *
- * @param formElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- */
- public void destroyElement(ICdmFormElement formElement) {
- // return if element was not initialized
- if (formElement == null) {
- return;
- }
- // destroy selection arbitrator, if any
- if (formElement instanceof ISelectableElement) {
+ * </p>
+ *
+ * @param formElement
+ * a
+ * {@link eu.etaxonomy.taxeditor.ui.element.AbstractCdmFormElement}
+ * object.
+ */
+ public void adapt(AbstractCdmFormElement formElement) {
+ formElement.setPropertyChangeListeners(propertyChangeListeners);
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public void adapt(Control control, boolean trackFocus, boolean trackKeyboard) {
+ if (trackFocus) {
+ control.addFocusListener(selectionFocusHandler);
+ }
+ super.adapt(control, trackFocus, trackKeyboard);
+ }
+
+ /**
+ * <p>
+ * destroyElement
+ * </p>
+ *
+ * @param formElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ */
+ public void destroyElement(ICdmFormElement formElement) {
+ // return if element was not initialized
+ if (formElement == null) {
+ return;
+ }
+ // destroy selection arbitrator, if any
+ if (formElement instanceof ISelectableElement) {
destroySelectionArbitrator(((ISelectableElement) formElement).getSelectionArbitrator());
- }
- // remove this element form its parents list of elements
- // ICdmFormElement parentElement = formElement.getParentElement();
- // if(parentElement != null){
- // parentElement.removeElement(formElement);
- // }
- // call destroy on child elements recursively
- for (ICdmFormElement childElement : formElement.getElements()) {
- destroyElement(childElement);
- }
- // dispose of the controls
- for (Control control : formElement.getControls()) {
- // we added the layoutComposite of the parental element as the
- // layout composite to this formElement
- // but we do not want to destroy it.
- if (control.equals(formElement.getLayoutComposite())) {
- continue;
- } else {
- control.dispose();
- control = null;
- }
- }
- }
-
- /**
- * <p>
- * createEmptyCell
- * </p>
- *
- * @param parent
- * a {@link org.eclipse.swt.widgets.Composite} object.
- * @return a {@link org.eclipse.swt.widgets.Label} object.
- */
- public Label createEmptyCell(Composite parent) {
- return this.createLabel(parent, null);
- }
-
- /**
- * <p>
- * createMultilineTextWithLabel
- * </p>
- *
- * @param labelString
- * a {@link java.lang.String} object.
- * @param textHeight
- * a int.
- * @param style
- * a int.
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @return a {@link eu.etaxonomy.taxeditor.ui.element.TextWithLabelElement}
- * object.
- */
+ }
+ // remove this element form its parents list of elements
+ // ICdmFormElement parentElement = formElement.getParentElement();
+ // if(parentElement != null){
+ // parentElement.removeElement(formElement);
+ // }
+ // call destroy on child elements recursively
+ for (ICdmFormElement childElement : formElement.getElements()) {
+ destroyElement(childElement);
+ }
+ // dispose of the controls
+ for (Control control : formElement.getControls()) {
+ // we added the layoutComposite of the parental element as the
+ // layout composite to this formElement
+ // but we do not want to destroy it.
+ if (control.equals(formElement.getLayoutComposite())) {
+ continue;
+ } else {
+ control.dispose();
+ control = null;
+ }
+ }
+ }
+
+ /**
+ * <p>
+ * createEmptyCell
+ * </p>
+ *
+ * @param parent
+ * a {@link org.eclipse.swt.widgets.Composite} object.
+ * @return a {@link org.eclipse.swt.widgets.Label} object.
+ */
+ public Label createEmptyCell(Composite parent) {
+ return this.createLabel(parent, null);
+ }
+
+ /**
+ * <p>
+ * createMultilineTextWithLabel
+ * </p>
+ *
+ * @param labelString
+ * a {@link java.lang.String} object.
+ * @param textHeight
+ * a int.
+ * @param style
+ * a int.
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @return a {@link eu.etaxonomy.taxeditor.ui.element.TextWithLabelElement}
+ * object.
+ */
public TextWithLabelElement createMultilineTextWithLabel(ICdmFormElement parentElement, String labelString,
int textHeight, int style) {
TextWithLabelElement element = new TextWithLabelElement(this, parentElement, labelString, "", textHeight, style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * createMultiLanguageTextElement
- * </p>
- *
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param labelString
- * a {@link java.lang.String} object.
- * @param multilanguageText
- * a {@link java.util.Map} object.
- * @param textHeight
- * a int.
- * @param style
- * a int.
- * @return a
- * {@link eu.etaxonomy.taxeditor.ui.element.MultilanguageTextElement}
- * object.
- */
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * <p>
+ * createMultiLanguageTextElement
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param labelString
+ * a {@link java.lang.String} object.
+ * @param multilanguageText
+ * a {@link java.util.Map} object.
+ * @param textHeight
+ * a int.
+ * @param style
+ * a int.
+ * @return a
+ * {@link eu.etaxonomy.taxeditor.ui.element.MultilanguageTextElement}
+ * object.
+ */
public MultilanguageTextElement createMultiLanguageTextElement(ICdmFormElement parentElement, String labelString,
Map<Language, LanguageString> multilanguageText, int textHeight, int style) {
MultilanguageTextElement element = new MultilanguageTextElement(this, parentElement, labelString,
multilanguageText, textHeight, style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
public KeyStatementElement createKeyStatementElement(ICdmFormElement parentElement, String labelString,
- KeyStatement keyStatement, int textHeight, int style) {
+ KeyStatement keyStatement, int textHeight, int style) {
KeyStatementElement element = new KeyStatementElement(this, parentElement, labelString, keyStatement,
textHeight, style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * createTextWithLabelElement
- * </p>
- *
- * @param labelString
- * a {@link java.lang.String} object.
- * @param initialText
- * a {@link java.lang.String} object.
- * @param style
- * a int.
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @return a {@link eu.etaxonomy.taxeditor.ui.element.TextWithLabelElement}
- * object.
- */
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * <p>
+ * createTextWithLabelElement
+ * </p>
+ *
+ * @param labelString
+ * a {@link java.lang.String} object.
+ * @param initialText
+ * a {@link java.lang.String} object.
+ * @param style
+ * a int.
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @return a {@link eu.etaxonomy.taxeditor.ui.element.TextWithLabelElement}
+ * object.
+ */
public TextWithLabelElement createTextWithLabelElement(ICdmFormElement parentElement, String labelString,
- String initialText, int style) {
+ String initialText, int style) {
TextWithLabelElement element = new TextWithLabelElement(this, parentElement, labelString, initialText, null,
style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
public UriWithLabelElement createUriWithLabelElement(ICdmFormElement parentElement, String labelString,
URI initialUri, int style) {
UriWithLabelElement element = new UriWithLabelElement(this, parentElement, labelString, initialUri, null, style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * @param element
- * @param string
- * @param uri
- * @param style
- * @return
- */
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * @param element
+ * @param string
+ * @param uri
+ * @param style
+ * @return
+ */
public OpenUrlSelectorElement createOpenUrlSelectorElement(ICdmFormElement parentElement, String labelString,
- IOpenUrlEnabled openUrlEnabled, int style) {
+ IOpenUrlEnabled openUrlEnabled, int style) {
OpenUrlSelectorElement element = new OpenUrlSelectorElement(this, parentElement, labelString, openUrlEnabled,
style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- *
- * @param parentElement
- * @param labelString
- * @param conversationEnabled
- * @param user
- * @param style
- * @return
- */
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ *
+ * @param parentElement
+ * @param labelString
+ * @param conversationEnabled
+ * @param user
+ * @param style
+ * @return
+ */
public EditPasswordElement createEditPasswordElement(ICdmFormElement parentElement, String labelString,
- ConversationHolder conversation, User user, int style) {
+ ConversationHolder conversation, User user, int style) {
EditPasswordElement element = new EditPasswordElement(this, parentElement, labelString, user, conversation);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * createIntegerTextWithLabelElement
- * </p>
- *
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param labelString
- * a {@link java.lang.String} object.
- * @param initialInteger
- * a {@link java.lang.Integer} object.
- * @param style
- * a int.
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * <p>
+ * createIntegerTextWithLabelElement
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param labelString
+ * a {@link java.lang.String} object.
+ * @param initialInteger
+ * a {@link java.lang.Integer} object.
+ * @param style
+ * a int.
* @return a
* {@link eu.etaxonomy.taxeditor.ui.element.NumberWithLabelElement}
- * object.
- */
- public NumberWithLabelElement createIntegerTextWithLabelElement(ICdmFormElement parentElement, String labelString,
- Integer initialInteger, int style) {
- NumberWithLabelElement element = new NumberWithLabelElement(this, parentElement, labelString, initialInteger,
- style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * createFloatTextWithLabelElement
- * </p>
- *
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param labelString
- * a {@link java.lang.String} object.
- * @param initialFloat
- * a float.
- * @param style
- * a int.
- * @return a
- * {@link eu.etaxonomy.taxeditor.ui.element.NumberWithLabelElement}
- * object.
- */
- public NumberWithLabelElement createFloatTextWithLabelElement(ICdmFormElement parentElement, String labelString,
- float initialFloat, int style) {
- NumberWithLabelElement element = new NumberWithLabelElement(this, parentElement, labelString, initialFloat,
- style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * createLanguageStringWithLabelElement
- * </p>
- *
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param labelString
- * a {@link java.lang.String} object.
- * @param languageString
- * a {@link eu.etaxonomy.cdm.model.common.LanguageString} object.
- * @param style
- * a int.
- * @return a
- * {@link eu.etaxonomy.taxeditor.ui.element.LanguageStringWithLabelElement}
- * object.
- */
+ * object.
+ */
+ public NumberWithLabelElement createNumberTextWithLabelElement(
+ ICdmFormElement parentElement, String labelString,
+ Number initialNumber, int style) {
+ NumberWithLabelElement element = new NumberWithLabelElement(this,
+ parentElement, labelString, initialNumber, style);
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+
+ /**
+ * <p>
+ * createLanguageStringWithLabelElement
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param labelString
+ * a {@link java.lang.String} object.
+ * @param languageString
+ * a {@link eu.etaxonomy.cdm.model.common.LanguageString} object.
+ * @param style
+ * a int.
+ * @return a
+ * {@link eu.etaxonomy.taxeditor.ui.element.LanguageStringWithLabelElement}
+ * object.
+ */
public LanguageStringWithLabelElement createLanguageStringWithLabelElement(ICdmFormElement parentElement,
String labelString, LanguageString languageString, int style) {
LanguageStringWithLabelElement element = new LanguageStringWithLabelElement(this, parentElement, labelString,
languageString, style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * createLanguageStringWithLabelElement
- * </p>
- *
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param labelString
- * a {@link java.lang.String} object.
- * @param languageString
- * a {@link eu.etaxonomy.cdm.model.common.LanguageString} object.
- * @param height
- * a int.
- * @param style
- * a int.
- * @return a
- * {@link eu.etaxonomy.taxeditor.ui.element.LanguageStringWithLabelElement}
- * object.
- */
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * <p>
+ * createLanguageStringWithLabelElement
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param labelString
+ * a {@link java.lang.String} object.
+ * @param languageString
+ * a {@link eu.etaxonomy.cdm.model.common.LanguageString} object.
+ * @param height
+ * a int.
+ * @param style
+ * a int.
+ * @return a
+ * {@link eu.etaxonomy.taxeditor.ui.element.LanguageStringWithLabelElement}
+ * object.
+ */
public LanguageStringWithLabelElement createLanguageStringWithLabelElement(ICdmFormElement parentElement,
String labelString, LanguageString languageString, int height, int style) {
LanguageStringWithLabelElement element = new LanguageStringWithLabelElement(this, parentElement, labelString,
languageString, height, style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * createTextElement
- * </p>
- *
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param initialText
- * a {@link java.lang.String} object.
- * @param style
- * a int.
- * @return a {@link eu.etaxonomy.taxeditor.ui.element.TextWithLabelElement}
- * object.
- */
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * <p>
+ * createTextElement
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param initialText
+ * a {@link java.lang.String} object.
+ * @param style
+ * a int.
+ * @return a {@link eu.etaxonomy.taxeditor.ui.element.TextWithLabelElement}
+ * object.
+ */
public TextWithLabelElement createTextElement(ICdmFormElement parentElement, String initialText, int style) {
TextWithLabelElement element = new TextWithLabelElement(this, parentElement, null, initialText, null, style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * createKeyValueViewerElement
- * </p>
- *
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param keyHeading
- * a {@link java.lang.String} object.
- * @param valueHeading
- * a {@link java.lang.String} object.
- * @param map
- * a {@link java.util.Map} object.
- * @return a {@link eu.etaxonomy.taxeditor.ui.element.KeyValueViewerElement}
- * object.
- */
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * <p>
+ * createKeyValueViewerElement
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param keyHeading
+ * a {@link java.lang.String} object.
+ * @param valueHeading
+ * a {@link java.lang.String} object.
+ * @param map
+ * a {@link java.util.Map} object.
+ * @return a {@link eu.etaxonomy.taxeditor.ui.element.KeyValueViewerElement}
+ * object.
+ */
public KeyValueViewerElement createKeyValueViewerElement(ICdmFormElement parentElement, String keyHeading,
- String valueHeading, Map<Object, Object> map) {
+ String valueHeading, Map<Object, Object> map) {
KeyValueViewerElement element = new KeyValueViewerElement(this, parentElement, keyHeading, valueHeading, map);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * createTermComboElement
- * </p>
- *
- * @param termComboType
- * a
- * {@link eu.eu.etaxonomy.taxeditor.ui.element.CdmFormFactory.TermComboType}
- * object.
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param labelString
- * a {@link java.lang.String} object.
- * @param selection
- * a {@link eu.etaxonomy.cdm.model.common.DefinedTermBase}
- * object.
- * @param style
- * a int.
- * @return a {@link eu.etaxonomy.taxeditor.ui.combo.TermComboElement}
- * object.
- */
-
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * <p>
+ * createTermComboElement
+ * </p>
+ *
+ * @param termComboType
+ * a
+ * {@link eu.eu.etaxonomy.taxeditor.ui.element.CdmFormFactory.TermComboType}
+ * object.
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param labelString
+ * a {@link java.lang.String} object.
+ * @param selection
+ * a {@link eu.etaxonomy.cdm.model.common.DefinedTermBase}
+ * object.
+ * @param style
+ * a int.
+ * @return a {@link eu.etaxonomy.taxeditor.ui.combo.TermComboElement}
+ * object.
+ */
+
public <T extends DefinedTermBase> TermComboElement<T> createTermComboElement(Class<T> termComboType,
ICdmFormElement parentElement, String labelString, T selection, int style) {
TermComboElement<T> element = new TermComboElement<T>(this, parentElement, termComboType, labelString,
selection, style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * createEnumComboElement
- * </p>
- *
- * @param enumComboType
- * a
- * {@link eu.eu.etaxonomy.taxeditor.ui.element.CdmFormFactory.EnumComboType}
- * object.
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param style
- * a int.
- * @return a {@link eu.etaxonomy.taxeditor.ui.term.AbstractEnumComboElement}
- * object.
- */
- public <T extends IDefinedTerm> EnumComboElement<T> createEnumComboElement(Class<T> enumComboType,
- ICdmFormElement parentElement, int style) {
- EnumComboElement<T> element = new EnumComboElement<T>(this, parentElement, enumComboType, style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * createBrowserElement
- * </p>
- *
- * @param imageUri
- * a {@link java.net.URI} object.
- * @param style
- * a int.
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * <p>
+ * createTermComboElement
+ * </p>
+ *
+ * @param termComboType
+ * a
+ * {@link eu.eu.etaxonomy.taxeditor.ui.element.CdmFormFactory.TermComboType}
+ * object.
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param labelString
+ * a {@link java.lang.String} object.
+ * @param selection
+ * a {@link eu.etaxonomy.cdm.model.common.DefinedTermBase}
+ * object.
+ * @param style
+ * a int.
+ * @return a {@link eu.etaxonomy.taxeditor.ui.combo.TermComboElement}
+ * object.
+ */
+
+ public <T extends DefinedTermBase> TermComboElement<T> createDefinedTermComboElement(
+ TermType termType,
+ ICdmFormElement parentElement,
+ String labelString,
+ T selection,
+ int style) {
+ TermComboElement<T> element = new TermComboElement<T>(this, parentElement, termType, labelString, selection, style);
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * <p>
+ * createEnumComboElement
+ * </p>
+ *
+ * @param enumComboType
+ * a
+ * {@link eu.eu.etaxonomy.taxeditor.ui.element.CdmFormFactory.EnumComboType}
+ * object.
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param style
+ * a int.
+ * @return a {@link eu.etaxonomy.taxeditor.ui.term.AbstractEnumComboElement}
+ * object.
+ */
+ public <T extends IEnumTerm> EnumComboElement<T> createEnumComboElement(
+ Class<T> enumComboType, ICdmFormElement parentElement,
+ int style) {
+ EnumComboElement<T> element = new EnumComboElement<T>(this, parentElement, enumComboType, style);
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * <p>
+ * createBrowserElement
+ * </p>
+ *
+ * @param imageUri
+ * a {@link java.net.URI} object.
+ * @param style
+ * a int.
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
* @return a {@link eu.etaxonomy.taxeditor.ui.element.BrowserElement}
* object.
- */
+ */
public BrowserElement createBrowserElement(ICdmFormElement parentElement, URI imageUri, int style) {
BrowserElement element = new BrowserElement(this, parentElement, imageUri, style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * createImageElement
- * </p>
- *
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param imageUri
- * a {@link java.net.URI} object.
- * @param style
- * a int.
- * @return a {@link eu.etaxonomy.taxeditor.ui.element.ImageElement} object.
- */
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * <p>
+ * createImageElement
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param imageUri
+ * a {@link java.net.URI} object.
+ * @param style
+ * a int.
+ * @return a {@link eu.etaxonomy.taxeditor.ui.element.ImageElement} object.
+ */
public ImageElement createImageElement(ICdmFormElement parentElement, URI imageUri, int style) {
ImageElement element = new ImageElement(this, parentElement, imageUri, style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * createTextActionElement
- * </p>
- *
- * @param labelString
- * a {@link java.lang.String} object.
- * @param initialText
- * a {@link java.lang.String} object.
- * @param style
- * a int.
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param buttonLabel
- * a {@link java.lang.String} object.
- * @return a {@link eu.etaxonomy.taxeditor.ui.element.TextActionElement}
- * object.
- */
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * <p>
+ * createTextActionElement
+ * </p>
+ *
+ * @param labelString
+ * a {@link java.lang.String} object.
+ * @param initialText
+ * a {@link java.lang.String} object.
+ * @param style
+ * a int.
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param buttonLabel
+ * a {@link java.lang.String} object.
+ * @return a {@link eu.etaxonomy.taxeditor.ui.element.TextActionElement}
+ * object.
+ */
public TextActionElement createTextActionElement(ICdmFormElement parentElement, String labelString,
- String buttonLabel, String initialText, int style) {
+ String buttonLabel, String initialText, int style) {
TextActionElement element = new TextActionElement(this, parentElement, labelString, buttonLabel, initialText,
style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * createCheckbox
- * </p>
- *
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param label
- * a {@link java.lang.String} object.
- * @param initialState
- * a boolean.
- * @param style
- * a int.
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * <p>
+ * createCheckbox
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param label
+ * a {@link java.lang.String} object.
+ * @param initialState
+ * a boolean.
+ * @param style
+ * a int.
* @return a {@link eu.etaxonomy.taxeditor.ui.element.CheckboxElement}
* object.
- */
+ */
public CheckboxElement createCheckbox(ICdmFormElement parentElement, String label, boolean initialState, int style) {
CheckboxElement element = new CheckboxElement(this, parentElement, label, initialState, style | orientation);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * Creates a section as a part of the form.
- *
- * @return the section widget
- * @param section
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * Creates a section as a part of the form.
+ *
+ * @return the section widget
+ * @param section
* a
* {@link eu.etaxonomy.taxeditor.ui.element.AbstractFormSection}
- * object.
- */
- public Section adapt(AbstractFormSection section) {
- section.setMenu(section.getLayoutComposite().getMenu());
- adapt(section, true, true);
+ * object.
+ */
+ public Section adapt(AbstractFormSection section) {
+ section.setMenu(section.getLayoutComposite().getMenu());
+ adapt(section, true, true);
- // handle focus and property change events for cdm use
- section.addFocusListener(selectionFocusHandler);
- section.setPropertyChangeListeners(propertyChangeListeners);
+ // handle focus and property change events for cdm use
+ section.addFocusListener(selectionFocusHandler);
+ section.setPropertyChangeListeners(propertyChangeListeners);
- if (section.getToggle() != null) {
+ if (section.getToggle() != null) {
section.getToggle().setHoverDecorationColor(getColors().getColor(IFormColors.TB_TOGGLE_HOVER));
section.getToggle().setDecorationColor(getColors().getColor(IFormColors.TB_TOGGLE));
- }
+ }
section.setFont(boldFontHolder2.getBoldFont(section.getLayoutComposite().getFont()));
if ((section.getStyle() & ExpandableComposite.TITLE_BAR) != 0
|| (section.getStyle() & ExpandableComposite.SHORT_TITLE_BAR) != 0) {
- getColors().initializeSectionToolBarColors();
+ getColors().initializeSectionToolBarColors();
section.setTitleBarBackground(getColors().getColor(IFormColors.TB_BG));
section.setTitleBarBorderColor(getColors().getColor(IFormColors.TB_BORDER));
- }
- // call setTitleBarForeground regardless as it also sets the label color
+ }
+ // call setTitleBarForeground regardless as it also sets the label color
section.setTitleBarForeground(getColors().getColor(IFormColors.TB_TOGGLE));
- return section;
- }
+ return section;
+ }
- private class BoldFontHolder2 {
- private Font normalFont;
+ private class BoldFontHolder2 {
+ private Font normalFont;
- private Font boldFont;
+ private Font boldFont;
- public BoldFontHolder2() {
- }
+ public BoldFontHolder2() {
+ }
- public Font getBoldFont(Font font) {
- createBoldFont(font);
- return boldFont;
- }
+ public Font getBoldFont(Font font) {
+ createBoldFont(font);
+ return boldFont;
+ }
- private void createBoldFont(Font font) {
- if (normalFont == null || !normalFont.equals(font)) {
- normalFont = font;
- dispose();
- }
- if (boldFont == null) {
+ private void createBoldFont(Font font) {
+ if (normalFont == null || !normalFont.equals(font)) {
+ normalFont = font;
+ dispose();
+ }
+ if (boldFont == null) {
boldFont = FormFonts.getInstance().getBoldFont(getColors().getDisplay(), normalFont);
- }
- }
+ }
+ }
- public void dispose() {
- if (boldFont != null) {
+ public void dispose() {
+ if (boldFont != null) {
FormFonts.getInstance().markFinished(boldFont, getColors().getDisplay());
- boldFont = null;
- }
- }
- }
-
- /**
- * <p>
- * createToggleableTextField
- * </p>
- *
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param labelString
- * a {@link java.lang.String} object.
- * @param initialText
- * a {@link java.lang.String} object.
- * @param initialState
- * a boolean.
- * @param style
- * a int.
- * @return a {@link eu.etaxonomy.taxeditor.ui.element.ToggleableTextElement}
- * object.
- */
+ boldFont = null;
+ }
+ }
+ }
+
+ /**
+ * <p>
+ * createToggleableTextField
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param labelString
+ * a {@link java.lang.String} object.
+ * @param initialText
+ * a {@link java.lang.String} object.
+ * @param initialState
+ * a boolean.
+ * @param style
+ * a int.
+ * @return a {@link eu.etaxonomy.taxeditor.ui.element.ToggleableTextElement}
+ * object.
+ */
public ToggleableTextElement createToggleableTextField(ICdmFormElement parentElement, String labelString,
- String initialText, boolean initialState, int style) {
+ String initialText, boolean initialState, int style) {
ToggleableTextElement element = new ToggleableTextElement(this, parentElement, labelString, initialText,
initialState, style | orientation);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * createTimePeriodElement
- * </p>
- *
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param labelString
- * a {@link java.lang.String} object.
- * @param timePeriod
- * a {@link eu.etaxonomy.cdm.model.common.TimePeriod} object.
- * @param style
- * a int.
- * @return a {@link eu.etaxonomy.taxeditor.ui.element.TimePeriodElement}
- * object.
- */
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * <p>
+ * createTimePeriodElement
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param labelString
+ * a {@link java.lang.String} object.
+ * @param timePeriod
+ * a {@link eu.etaxonomy.cdm.model.common.TimePeriod} object.
+ * @param style
+ * a int.
+ * @return a {@link eu.etaxonomy.taxeditor.ui.element.TimePeriodElement}
+ * object.
+ */
public TimePeriodElement createTimePeriodElement(ICdmFormElement parentElement, String labelString,
- TimePeriod timePeriod, int style) {
+ TimePeriod timePeriod, int style) {
TimePeriodElement element = new TimePeriodElement(this, parentElement, labelString, timePeriod, style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * createPointElement
- * </p>
- *
- * @param style
- * a int.
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param point
- * a {@link eu.etaxonomy.cdm.model.location.Point} object.
- * @return a {@link eu.etaxonomy.taxeditor.ui.element.PointElement} object.
- */
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * <p>
+ * createGatheringEventUnitElement
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param labelString
+ * a {@link java.lang.String} object.
+ * @param timePeriod
+ * a {@link eu.etaxonomy.cdm.model.common.GatheringEvent} object.
+ * @param style
+ * a int.
+ * @return a {@link eu.etaxonomy.taxeditor.ui.element.GatheringEventUnitElement}
+ * object.
+ */
+ public GatheringEventUnitElement createGatheringEventUnitElement(
+ ICdmFormElement parentElement,
+ String labelString,
+ DerivedUnitFacade gatheringEvent,
+ MinMaxTextSection.UnitType unitType,
+ int style) {
+ GatheringEventUnitElement element = new GatheringEventUnitElement(this,
+ parentElement,
+ labelString,
+ gatheringEvent,
+ unitType,
+ style);
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * <p>
+ * createPointElement
+ * </p>
+ *
+ * @param style
+ * a int.
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param point
+ * a {@link eu.etaxonomy.cdm.model.location.Point} object.
+ * @return a {@link eu.etaxonomy.taxeditor.ui.element.PointElement} object.
+ */
public PointElement createPointElement(ICdmFormElement parentElement, Point point, int style) {
PointElement element = new PointElement(this, parentElement, point, style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * createDateDetailSection
- * </p>
- *
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param style
- * a int.
- * @return a {@link eu.etaxonomy.taxeditor.ui.element.DateDetailSection}
- * object.
- */
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * <p>
+ * createDateDetailSection
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param style
+ * a int.
+ * @return a {@link eu.etaxonomy.taxeditor.ui.element.DateDetailSection}
+ * object.
+ */
public DateDetailSection createDateDetailSection(ICdmFormElement parentElement, int style) {
DateDetailSection section = new DateDetailSection(this, parentElement, style);
- parentElement.addElement(section);
- adapt(section);
- return section;
- }
-
- /**
- * <p>
- * createPartialElement
- * </p>
- *
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param labelString
- * a {@link java.lang.String} object.
- * @param partial
- * a {@link org.joda.time.Partial} object.
- * @param style
- * a int.
+ parentElement.addElement(section);
+ adapt(section);
+ return section;
+ }
+
+ /**
+ * <p>
+ * createDateDetailSection
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param style
+ * a int.
+ * @return a {@link eu.etaxonomy.taxeditor.ui.element.MinMaxTextSection}
+ * object.
+ */
+ public MinMaxTextSection createMinMaxTextSection(ICdmFormElement parentElement, UnitType unitType, int style) {
+ MinMaxTextSection section = new MinMaxTextSection(this, parentElement, unitType, style);
+ parentElement.addElement(section);
+ adapt(section);
+ return section;
+ }
+
+ /**
+ * <p>
+ * createPartialElement
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param labelString
+ * a {@link java.lang.String} object.
+ * @param partial
+ * a {@link org.joda.time.Partial} object.
+ * @param style
+ * a int.
* @return a {@link eu.etaxonomy.taxeditor.ui.element.PartialElement}
* object.
- */
+ */
public PartialElement createPartialElement(ICdmFormElement parentElement, String labelString, Partial partial,
int style) {
PartialElement element = new PartialElement(this, parentElement, labelString, style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * addSelectionListener
- * </p>
- *
- * @param listener
- * a {@link org.eclipse.swt.events.SelectionListener} object.
- */
- public void addSelectionListener(SelectionListener listener) {
- selectionListenerList.add(listener);
- }
-
- /**
- * <p>
- * removeSelectionListener
- * </p>
- *
- * @param listener
- * a {@link org.eclipse.swt.events.SelectionListener} object.
- */
- public void removeSelectionListener(SelectionListener listener) {
- if (listener == null) {
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * <p>
+ * addSelectionListener
+ * </p>
+ *
+ * @param listener
+ * a {@link org.eclipse.swt.events.SelectionListener} object.
+ */
+ public void addSelectionListener(SelectionListener listener) {
+ selectionListenerList.add(listener);
+ }
+
+ /**
+ * <p>
+ * removeSelectionListener
+ * </p>
+ *
+ * @param listener
+ * a {@link org.eclipse.swt.events.SelectionListener} object.
+ */
+ public void removeSelectionListener(SelectionListener listener) {
+ if (listener == null) {
AbstractUtility.error(this.getClass(),
"Tried to remove a selection listener from this factories listeners but was null", null);
- } else {
- selectionListenerList.remove(listener);
- }
- }
-
- /**
- * <p>
- * addPropertyChangeListener
- * </p>
- *
- * @param listener
- * a {@link org.eclipse.jface.util.IPropertyChangeListener}
- * object.
- */
- public void addPropertyChangeListener(IPropertyChangeListener listener) {
- if (propertyChangeListeners.contains(listener)) {
- return;
- }
- propertyChangeListeners.add(0, listener);
- }
-
- /**
- * <p>
- * removePropertyChangeListener
- * </p>
- *
- * @param listener
- * a {@link org.eclipse.jface.util.IPropertyChangeListener}
- * object.
- */
- public void removePropertyChangeListener(IPropertyChangeListener listener) {
- propertyChangeListeners.remove(listener);
- }
-
- /**
- * <p>
- * createHorizontalSeparator
- * </p>
- *
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param style
- * a int.
- * @return a {@link org.eclipse.swt.widgets.Label} object.
- */
+ } else {
+ selectionListenerList.remove(listener);
+ }
+ }
+
+ /**
+ * <p>
+ * addPropertyChangeListener
+ * </p>
+ *
+ * @param listener
+ * a {@link org.eclipse.jface.util.IPropertyChangeListener}
+ * object.
+ */
+ public void addPropertyChangeListener(IPropertyChangeListener listener) {
+ if(propertyChangeListeners.contains(listener)){
+ return;
+ }
+ propertyChangeListeners.add(0, listener);
+ }
+
+ /**
+ * <p>
+ * removePropertyChangeListener
+ * </p>
+ *
+ * @param listener
+ * a {@link org.eclipse.jface.util.IPropertyChangeListener}
+ * object.
+ */
+ public void removePropertyChangeListener(IPropertyChangeListener listener) {
+ propertyChangeListeners.remove(listener);
+ }
+
+ /**
+ * <p>
+ * createHorizontalSeparator
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param style
+ * a int.
+ * @return a {@link org.eclipse.swt.widgets.Label} object.
+ */
public Label createHorizontalSeparator(ICdmFormElement parentElement, int style) {
Label separator = this.createSeparator(parentElement.getLayoutComposite(), SWT.HORIZONTAL | style);
- separator.setLayoutData(LayoutConstants.FILL_HORIZONTALLY());
- return separator;
- }
-
- /**
- * <p>
- * createVersionElement
- * </p>
- *
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param entity
- * a {@link eu.etaxonomy.cdm.model.common.VersionableEntity}
- * object.
- * @param style
- * a int.
- * @return a
- * {@link eu.etaxonomy.taxeditor.ui.section.supplemental.VersionElement}
- * object.
- */
+ separator.setLayoutData(LayoutConstants.FILL_HORIZONTALLY());
+ return separator;
+ }
+
+ /**
+ * <p>
+ * createVersionElement
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param entity
+ * a {@link eu.etaxonomy.cdm.model.common.VersionableEntity}
+ * object.
+ * @param style
+ * a int.
+ * @return a
+ * {@link eu.etaxonomy.taxeditor.ui.section.supplemental.VersionElement}
+ * object.
+ */
public VersionElement createVersionElement(ICdmFormElement parentElement, VersionableEntity entity, int style) {
VersionElement element = new VersionElement(this, parentElement, entity, style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * @param cdmBaseSection
- * @param object
- * @param style
- * @return
- */
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * @param cdmBaseSection
+ * @param object
+ * @param style
+ * @return
+ */
public CdmBaseElement createCdmBaseElement(ICdmFormElement parentElement, CdmBase entity, int style) {
CdmBaseElement element = new CdmBaseElement(this, parentElement, entity, style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * createVersionSection
- * </p>
- *
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param style
- * a int.
- * @return a
- * {@link eu.etaxonomy.taxeditor.ui.section.supplemental.VersionSection}
- * object.
- */
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+
+ /**
+ * <p>
+ * createVersionSection
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param style
+ * a int.
+ * @return a
+ * {@link eu.etaxonomy.taxeditor.ui.section.supplemental.VersionSection}
+ * object.
+ */
public VersionSection createVersionSection(ICdmFormElement parentElement, int style) {
- VersionSection section = new VersionSection(this, parentElement, style);
- parentElement.addElement(section);
- adapt(section);
- return section;
- }
-
- /**
- * @param parent
- * @param i
- * @return
- */
- public CdmBaseSection createCdmBaseSection(ICdmFormElement parentElement, int style) {
- CdmBaseSection section = new CdmBaseSection(this, parentElement, style);
- parentElement.addElement(section);
- adapt(section);
- return section;
- }
-
- /**
- * <p>
- * createEmptyElement
- * </p>
- *
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @return a {@link eu.etaxonomy.taxeditor.ui.section.EmptyElement} object.
- */
- public EmptyElement createEmptyElement(ICdmFormElement parentElement) {
+ VersionSection section = new VersionSection(this, parentElement, style);
+ parentElement.addElement(section);
+ adapt(section);
+ return section;
+ }
+
+ /**
+ * @param parent
+ * @param i
+ * @return
+ */
+ public CdmBaseSection createCdmBaseSection(ICdmFormElement parentElement, int style) {
+ CdmBaseSection section = new CdmBaseSection(this, parentElement, style);
+ parentElement.addElement(section);
+ adapt(section);
+ return section;
+ }
+
+ /**
+ * <p>
+ * createEmptyElement
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @return a {@link eu.etaxonomy.taxeditor.ui.section.EmptyElement} object.
+ */
+ public EmptyElement createEmptyElement(ICdmFormElement parentElement) {
EmptyElement element = new EmptyElement(this, parentElement, null, SWT.NULL);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * createHeadlineSection
- * </p>
- *
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @return a
- * {@link eu.etaxonomy.taxeditor.ui.section.supplemental.HeadlineSection}
- * object.
- */
- public HeadlineSection createHeadlineSection(ICdmFormElement parentElement) {
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * <p>
+ * createHeadlineSection
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @return a
+ * {@link eu.etaxonomy.taxeditor.ui.section.supplemental.HeadlineSection}
+ * object.
+ */
+ public HeadlineSection createHeadlineSection(ICdmFormElement parentElement) {
HeadlineSection section = new HeadlineSection(this, parentElement, SWT.NULL);
- parentElement.addElement(section);
- adapt(section);
- return section;
- }
-
- /**
- * <p>
- * createParsingMessageElement
- * </p>
- *
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param parserProblem
- * a {@link eu.etaxonomy.cdm.strategy.parser.ParserProblem}
- * object.
- * @param style
- * a int.
- * @return a
- * {@link eu.etaxonomy.taxeditor.ui.section.taxon.ParsingMessageElement}
- * object.
- */
+ parentElement.addElement(section);
+ adapt(section);
+ return section;
+ }
+
+ /**
+ * <p>
+ * createParsingMessageElement
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param parserProblem
+ * a {@link eu.etaxonomy.cdm.strategy.parser.ParserProblem}
+ * object.
+ * @param style
+ * a int.
+ * @return a
+ * {@link eu.etaxonomy.taxeditor.ui.section.taxon.ParsingMessageElement}
+ * object.
+ */
public ParsingMessageElement createParsingMessageElement(ICdmFormElement parentElement,
ParserProblem parserProblem, int style) {
ParsingMessageElement element = new ParsingMessageElement(this, parentElement, parserProblem, style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
public AbstractFormSection createDefinedTermDetailSection(Class definedTermClass, ConversationHolder conversation,
ICdmFormElement parentElement, ISelectionProvider selectionProvider, int style) {
AbstractFormSection section = new DefinedTermDetailSection(this, definedTermClass, conversation, parentElement,
selectionProvider, style);
-
- parentElement.addElement(section);
- adapt(section);
- return section;
-
- }
-
- /**
- * @param definedTermClass
- * @param formElement
- * @param style
- * @return
- */
+
+ parentElement.addElement(section);
+ adapt(section);
+ return section;
+
+ }
+
+ /**
+ * @param definedTermClass
+ * @param formElement
+ * @param style
+ * @return
+ */
public AbstractCdmDetailElement createDefinedTermDetailElement(Class definedTermClass, AbstractCdmDetailSection parentElement, int style) {
- AbstractCdmDetailElement element = null;
-
- if (NamedArea.class.isAssignableFrom(definedTermClass)) {
- element = new eu.etaxonomy.taxeditor.ui.section.vocabulary.NamedAreaDetailElement(this, parentElement);
+ AbstractCdmDetailElement element = null;
+
+ if (NamedArea.class.isAssignableFrom(definedTermClass)){
+ element = new eu.etaxonomy.taxeditor.ui.section.vocabulary.NamedAreaDetailElement(this, parentElement);
} else {
- element = new DefinedTermDetailElement(this, parentElement);
- }
-
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
+ element = new DefinedTermDetailElement(this, parentElement);
+ }
+
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
//--------DetailSections---------
GeneralDetailSection section = new GeneralDetailSection(this, conversation, parentElement, selectionProvider, style);
addAndAdaptSection(parentElement, section);
return section;
- }
-
+ }
+
public GatheringEventDetailSection createGatheringSection(ConversationHolder conversation, ICdmFormElement parentElement, ISelectionProvider selectionProvider, int style){
GatheringEventDetailSection section = new GatheringEventDetailSection(this, conversation, parentElement, selectionProvider, style);
addAndAdaptSection(parentElement, section);
FieldObservationDetailSection section = new FieldObservationDetailSection(this, conversation, parentElement, selectionProvider, style);
addAndAdaptSection(parentElement, section);
return section;
- }
+ }
private void addAndAdaptSection(ICdmFormElement parentElement, AbstractFormSection<?> section) {
- parentElement.addElement(section);
- adapt(section);
- }
+ parentElement.addElement(section);
+ adapt(section);
+ }
//--------DetailElements------------
addAndAdaptElement(parentElement, element);
return element;
}
-
-
+
+
public GeneralDetailElement createGeneralDetailElement(ICdmFormElement parentElement){
GeneralDetailElement element = new GeneralDetailElement(this, parentElement);
addAndAdaptElement(parentElement, element);
GatheringEventDetailElement element = new GatheringEventDetailElement(this, parentElement);
addAndAdaptElement(parentElement, element);
return element;
- }
+ }
public FieldObservationDetailElement createFieldObservationDetailElement(ICdmFormElement parentElement) {
FieldObservationDetailElement element = new FieldObservationDetailElement(this, parentElement);
addAndAdaptElement(parentElement, element);
return element;
- }
+ }
public DerivedUnitBaseDetailElement createDerivedUnitBaseDetailElement(ICdmFormElement parentElement) {
DerivedUnitBaseDetailElement element = new DerivedUnitBaseDetailElement(this, parentElement);
addAndAdaptElement(parentElement, element);
- return element;
- }
+ return element;
+ }
public DeterminationDetailElement createDeterminationDetailElement(ICdmFormElement parentElement) {
DeterminationDetailElement element = new DeterminationDetailElement(this, parentElement);
addAndAdaptElement(parentElement, element);
return element;
- }
+ }
- /**
- * @param parentElement
+ /**
+ * @param parentElement
* @param element
- */
+ */
private void addAndAdaptElement(ICdmFormElement parentElement, AbstractCdmDetailElement<?> element) {
adapt(element);
parentElement.addElement(element);
GroupsByUserDetailSection section = new GroupsByUserDetailSection(this, conversation, parentElement, style);
addAndAdaptSection(parentElement, section);
return section;
- }
+ }
public TaxonomicScopeSection createTaxonomicScopeSection(ConversationHolder conversation, ICdmFormElement parentElement, int style){
TaxonomicScopeSection section = new TaxonomicScopeSection(this, conversation, parentElement, style);
addAndAdaptSection(parentElement, section);
- return section;
- }
-
- /**
- * <p>
- * createEntityCollectionElement
- * </p>
- *
- * @param removeListener
- * a {@link org.eclipse.swt.events.SelectionListener} object.
- * @param style
- * a int.
- * @param parentElement
+ return section;
+ }
+
+ /**
+ * <p>
+ * createEntityCollectionElement
+ * </p>
+ *
+ * @param removeListener
+ * a {@link org.eclipse.swt.events.SelectionListener} object.
+ * @param style
+ * a int.
+ * @param parentElement
* a
* {@link eu.etaxonomy.taxeditor.ui.element.AbstractFormSection}
- * object.
- * @param versionableEntity
- * a {@link eu.etaxonomy.cdm.model.common.IVersionableEntity}
- * object.
- * @param backgroundColor
- * a {@link org.eclipse.swt.graphics.Color} object.
- * @return a
- * {@link eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionElement}
- * object.
- */
+ * object.
+ * @param versionableEntity
+ * a {@link eu.etaxonomy.cdm.model.common.IVersionableEntity}
+ * object.
+ * @param backgroundColor
+ * a {@link org.eclipse.swt.graphics.Color} object.
+ * @return a
+ * {@link eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionElement}
+ * object.
+ */
public AbstractEntityCollectionElement createEntityCollectionElement(AbstractFormSection parentElement,
Object versionableEntity, SelectionListener removeListener, Color backgroundColor, int style) {
- AbstractEntityCollectionElement element = null;
+ AbstractEntityCollectionElement element = null;
- Object entity = HibernateProxyHelper.deproxy(versionableEntity);
+ Object entity = HibernateProxyHelper.deproxy(versionableEntity);
- if (entity instanceof Annotation) {
+ if (entity instanceof Annotation) {
element = new AnnotationElement(this, parentElement, (Annotation) entity, removeListener, style);
- } else if (entity instanceof Person) {
+ } else if (entity instanceof Person) {
element = new TeamMemberElement(this, parentElement, (Person) entity, removeListener, style);
- } else if (entity instanceof Credit) {
+ } else if (entity instanceof Credit) {
element = new CreditElement(this, parentElement, (Credit) entity, removeListener, style);
- } else if (entity instanceof Extension) {
+ } else if (entity instanceof Extension) {
element = new ExtensionElement(this, parentElement, (Extension) entity, removeListener, style);
- } else if (entity instanceof Marker) {
+ } else if (entity instanceof Marker) {
element = new MarkerElement(this, parentElement, (Marker) entity, removeListener, style);
- } else if (entity instanceof Media) {
+ } else if (entity instanceof Media) {
element = new MediaElement(this, parentElement, (Media) entity, removeListener, style);
- } else if (entity instanceof MediaRepresentation) {
+ } else if (entity instanceof MediaRepresentation) {
element = new MediaRepresentationElement(this, parentElement, (MediaRepresentation) entity, removeListener,
style);
- } else if (entity instanceof ImageFile) {
+ } else if (entity instanceof ImageFile) {
element = new ImageFileElement(this, parentElement, (ImageFile) entity, removeListener, style);
- } else if (entity instanceof MediaRepresentationPart) {
+ } else if (entity instanceof MediaRepresentationPart){
element = new MediaRepresentationPartElement(this, parentElement, (MediaRepresentationPart) entity,
removeListener, style);
- } else if (entity instanceof NomenclaturalStatus) {
+ } else if (entity instanceof NomenclaturalStatus) {
element = new NomenclaturalStatusElement(this, parentElement, (NomenclaturalStatus) entity, removeListener,
style);
- } else if (entity instanceof Rights) {
+ } else if (entity instanceof Rights) {
element = new RightsElement(this, parentElement, (Rights) entity, removeListener, style);
} else if (entity instanceof DescriptionElementSource) {
element = new DescriptionElementSourceElement(this, parentElement, (DescriptionElementSource) entity,
- removeListener, style);
- } else if (entity instanceof IdentifiableSource) {
+ removeListener, style);
+ } else if (entity instanceof IdentifiableSource) {
element = new IdentifiableSourceElement(this, parentElement, (IdentifiableSource) entity, removeListener,
style);
- } else if (entity instanceof Scope) {
- element = new ScopeElement(this, parentElement, (Scope) entity, removeListener, style);
- } else if (entity instanceof Modifier) {
- element = new ModifierElement(this, parentElement, (Modifier) entity, removeListener, style);
- } else if (entity instanceof Reference) {
+ } else if (entity instanceof DefinedTerm) {
+ switch(((DefinedTerm)entity).getTermType()) {
+ case Scope:
+ element = new ScopeElement(this,
+ parentElement,
+ (DefinedTerm) entity,
+ removeListener,
+ style);
+ break;
+ case Modifier:
+ element = new ModifierElement(this,
+ parentElement,
+ (DefinedTerm) entity,
+ removeListener,
+ style);
+ break;
+ default:
+ //FIXME : Actually we should through an exception here
+ element = null;
+ break;
+
+ }
+ } else if (entity instanceof Reference) {
element = new DescriptionSourceElement(this, parentElement, (Reference) entity, removeListener, style);
- } else if (entity instanceof NameTypeDesignation) {
+ } else if (entity instanceof NameTypeDesignation) {
element = new NameTypeDesignationElement(this, parentElement, (NameTypeDesignation) entity, removeListener,
style);
- } else if (entity instanceof NameRelationship) {
+ } else if (entity instanceof NameRelationship) {
element = new NameRelationshipDetailElement(this, parentElement, (NameRelationship) entity, removeListener,
style);
- } else if (entity instanceof SpecimenTypeDesignation) {
+ } else if (entity instanceof SpecimenTypeDesignation) {
element = new SpecimenTypeDesignationElement(this, parentElement, (SpecimenTypeDesignation) entity,
removeListener, style);
- } else if (entity instanceof StateData) {
+ } else if (entity instanceof StateData) {
element = new StateDataElement(this, parentElement, (StateData) entity, removeListener, style);
- } else if (entity instanceof StatisticalMeasurementValue) {
+ } else if (entity instanceof StatisticalMeasurementValue) {
element = new StatisticalMeasurementValueElement(this, parentElement, (StatisticalMeasurementValue) entity,
- removeListener, style);
- } else if (entity instanceof DerivedUnit) {
- element = new DerivedUnitElement(this, parentElement, (DerivedUnit) entity, removeListener, style);
- } else if (entity instanceof NamedArea) {
+ removeListener, style);
+ } else if (entity instanceof DerivedUnit) {
+ switch(((DerivedUnit)entity).getRecordBasis()) {
+ case LivingSpecimen:
+ case PreservedSpecimen:
+ case OtherSpecimen:
+ element = new SpecimenCollectionDetailElement(this,
+ parentElement,
+ (DerivedUnit) entity,
+ removeListener,
+ style);
+ break;
+ default:
+ element = new DerivedUnitElement(this,
+ parentElement,
+ (DerivedUnit) entity,
+ removeListener,
+ style);
+ }
+
+ } else if (entity instanceof NamedArea) {
element = new NamedAreaDetailElement(this, parentElement, (NamedArea) entity, removeListener, style);
- } else if (entity instanceof DeterminationEvent) {
+ } else if (entity instanceof DeterminationEvent) {
element = new DeterminationEventDetailElement(this, parentElement, (DeterminationEvent) entity,
removeListener, style);
- } else if (entity instanceof Specimen) {
- element = new SpecimenCollectionDetailElement(this, parentElement, (Specimen) entity, removeListener, style);
- } else if (entity instanceof User) {
+ } else if (entity instanceof User) {
element = new MemberDetailElement(this, parentElement, (User) entity, removeListener, style);
- } else if (entity instanceof GrantedAuthority) {
+ } else if (entity instanceof GrantedAuthority) {
element = new GrantedAuthorityCollectionElement(this, parentElement, (GrantedAuthorityImpl) entity,
removeListener, style);
- } else if (entity instanceof Group) {
+ } else if (entity instanceof Group) {
element = new GroupsByUserDetailElement(this, parentElement, (Group) entity, removeListener, style);
- } else if (entity instanceof Taxon) {
+ } else if (entity instanceof Taxon) {
element = new TaxonDetailElement(this, parentElement, (Taxon) entity, removeListener, style);
- } else if (entity instanceof DescriptionElementBase) {
- // this is the special case for protologs, maybe we can do this
- // differently when API improves
- DescriptionElementBase descriptionElement = (DescriptionElementBase) entity;
- if (descriptionElement.getFeature().equals(Feature.PROTOLOGUE())) {
+ } else if (entity instanceof DescriptionElementBase) {
+ // this is the special case for protologs, maybe we can do this
+ // differently when API improves
+ DescriptionElementBase descriptionElement = (DescriptionElementBase) entity;
+ if (descriptionElement.getFeature().equals(Feature.PROTOLOGUE())) {
element = new ProtologueElement(this, parentElement, descriptionElement, removeListener, style);
- }
- }
+ }
+ }
- if (element == null) {
+ if (element == null) {
AbstractUtility.errorDialog("No element for entity", this,
"Could not generate element for entity. Looks like the case is not handled already. Check implementation. Entity: "
- + entity, null);
- }
+ + entity, null);
- else if (backgroundColor != null && !backgroundColor.isDisposed()) {
- element.setPersistentBackground(backgroundColor);
- }
+ }
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /**
- * <p>
- * Creates a selection element for the given type T.
- * </p>
- * <p>
- * <strong>Selection elements not handled by this method:</strong>
- * <ul>
+ else if (backgroundColor != null && !backgroundColor.isDisposed()) {
+ element.setPersistentBackground(backgroundColor);
+ }
+
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ /**
+ * <p>
+ * Creates a selection element for the given type T.
+ * </p>
+ * <p>
+ * <strong>Selection elements not handled by this method:</strong>
+ * <ul>
* <li>{@link TaxonNodeSelectionElement} see
* {@link #createTaxonNodeSelectionElement(ConversationHolder, ICdmFormElement, String, TaxonNode, int, int)}
* </li>
* <li>{@link NomenclaturalAuthorTeamSelectionElement} see
* {@link #createNomenclaturalAuthorTeamSelectionElement(ConversationHolder, ICdmFormElement, String, Team, int, int)}
* </li>
- * </ul>
- * </p>
- *
- * @param clazz
+ * </ul>
+ * </p>
+ *
+ * @param clazz
* a {@link Class} object of the type that you want the selection
* element to handle
- * @param parentElement
+ * @param parentElement
* a {@link ICdmFormElement} object.
- * @param labelString
- * a {@link String} object.
- * @param selectionType
- * @param selection
- * a {@link ICdmBase} object.
- * @param style
- * a int.
- * @param conversation
- * a {@link ConversationHolder} object.
+ * @param labelString
+ * a {@link String} object.
+ * @param selectionType
+ * @param selection
+ * a {@link ICdmBase} object.
+ * @param style
+ * a int.
+ * @param conversation
+ * a {@link ConversationHolder} object.
* @return a {@link EntitySelectionElement} object.
- */
+ */
public <T extends ICdmBase> EntitySelectionElement<T> createSelectionElement(Class<T> clazz,
ConversationHolder conversation, ICdmFormElement parentElement, String labelString, T selection, int mode,
int style) {
EntitySelectionElement<T> element = new EntitySelectionElement<T>(this, conversation, parentElement, clazz,
labelString, selection, mode, style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
public TaxonNodeSelectionElement createTaxonNodeSelectionElement(ConversationHolder conversation,
ICdmFormElement parentElement, String labelString, TaxonNode selection, int mode, int style) {
TaxonNodeSelectionElement element = new TaxonNodeSelectionElement(this, conversation, parentElement,
labelString, selection, mode, style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- public NomenclaturalAuthorTeamSelectionElement createNomenclaturalAuthorTeamSelectionElement(
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+ public NomenclaturalAuthorTeamSelectionElement createNomenclaturalAuthorTeamSelectionElement(
ConversationHolder conversation, ICdmFormElement parentElement, String labelString, Team selection,
int mode, int style) {
NomenclaturalAuthorTeamSelectionElement element = new NomenclaturalAuthorTeamSelectionElement(this,
conversation, parentElement, labelString, selection, mode, style);
- adapt(element);
- parentElement.addElement(element);
- return element;
- }
-
- /** {@inheritDoc} */
- public LabelElement createLabel(ICdmFormElement parentElement, String text) {
- LabelElement labelElement = new LabelElement(this, parentElement, text);
- adapt(labelElement);
- parentElement.addElement(labelElement);
- return labelElement;
- }
-
- /**
- * <p>
- * Getter for the field <code>selectionProvider</code>.
- * </p>
- *
- * @return a {@link org.eclipse.jface.viewers.ISelectionProvider} object.
- */
- public ISelectionProvider getSelectionProvider() {
- return selectionProvider;
- }
-
- /**
- * <p>
- * createDetailedDescriptionDetailElement
- * </p>
- *
- * @param parentElement
- * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
- * object.
- * @param entity
- * a
- * {@link eu.etaxonomy.cdm.model.description.DescriptionElementBase}
- * object.
- * @param style
- * a int.
- * @return a
- * {@link eu.etaxonomy.taxeditor.ui.section.description.detail.AbstractDetailedDescriptionDetailElement}
- * object.
- */
- public AbstractDetailedDescriptionDetailElement createDetailedDescriptionDetailElement(
+ adapt(element);
+ parentElement.addElement(element);
+ return element;
+ }
+
+
+ /** {@inheritDoc} */
+ public LabelElement createLabel(ICdmFormElement parentElement, String text) {
+ LabelElement labelElement = new LabelElement(this, parentElement, text);
+ adapt(labelElement);
+ parentElement.addElement(labelElement);
+ return labelElement;
+ }
+
+ /**
+ * <p>
+ * Getter for the field <code>selectionProvider</code>.
+ * </p>
+ *
+ * @return a {@link org.eclipse.jface.viewers.ISelectionProvider} object.
+ */
+ public ISelectionProvider getSelectionProvider() {
+ return selectionProvider;
+ }
+
+ /**
+ * <p>
+ * createDetailedDescriptionDetailElement
+ * </p>
+ *
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param entity
+ * a
+ * {@link eu.etaxonomy.cdm.model.description.DescriptionElementBase}
+ * object.
+ * @param style
+ * a int.
+ * @return a
+ * {@link eu.etaxonomy.taxeditor.ui.section.description.detail.AbstractDetailedDescriptionDetailElement}
+ * object.
+ */
+ public AbstractDetailedDescriptionDetailElement createDetailedDescriptionDetailElement(
ICdmFormElement parentElement, DescriptionElementBase entity, int style) {
- AbstractDetailedDescriptionDetailElement detailedDescriptionElement = null;
+ AbstractDetailedDescriptionDetailElement detailedDescriptionElement = null;
- if (entity instanceof CategoricalData) {
+ if (entity instanceof CategoricalData) {
detailedDescriptionElement = new CategoricalDataDetailElement(this, parentElement,
(CategoricalData) entity, style);
- } else if (entity instanceof CommonTaxonName) {
+ } else if (entity instanceof CommonTaxonName) {
detailedDescriptionElement = new CommonNameDetailElement(this, parentElement, (CommonTaxonName) entity,
style);
- } else if (entity instanceof Distribution) {
+ } else if (entity instanceof Distribution) {
detailedDescriptionElement = new DistributionDetailElement(this, parentElement, (Distribution) entity,
style);
- } else if (entity instanceof IndividualsAssociation) {
+ } else if (entity instanceof IndividualsAssociation) {
detailedDescriptionElement = new IndividualsAssociationDetailElement(this, parentElement,
(IndividualsAssociation) entity, style);
- } else if (entity instanceof QuantitativeData) {
+ } else if (entity instanceof QuantitativeData) {
detailedDescriptionElement = new QuantitativeDataDetailElement(this, parentElement,
(QuantitativeData) entity, style);
- } else if (entity instanceof TaxonInteraction) {
+ } else if (entity instanceof TaxonInteraction) {
detailedDescriptionElement = new TaxonInteractionDetailElement(this, parentElement,
(TaxonInteraction) entity, style);
- } else if (entity instanceof TextData) {
+ } else if (entity instanceof TextData) {
detailedDescriptionElement = new TextDataDetailElement(this, parentElement, (TextData) entity, style);
- } else {
+ } else {
throw new IllegalStateException("There is no interface for the given description element");
- }
- adapt(detailedDescriptionElement);
- parentElement.addElement(detailedDescriptionElement);
- return detailedDescriptionElement;
-
- }
-
- /**
- * Creates a styled text as a part of the form.
- *
- * @param parent
- * the text parent
- * @param value
- * the text initial value
- * @param style
- * the text style
- * @return the text widget
- */
- public StyledText createStyledText(Composite parent, String value, int style) {
+ }
+ adapt(detailedDescriptionElement);
+ parentElement.addElement(detailedDescriptionElement);
+ return detailedDescriptionElement;
+
+ }
+
+ /**
+ * Creates a styled text as a part of the form.
+ *
+ * @param parent
+ * the text parent
+ * @param value
+ * the text initial value
+ * @param style
+ * the text style
+ * @return the text widget
+ */
+ public StyledText createStyledText(Composite parent, String value, int style) {
StyledText text = new StyledText(parent, getBorderStyle() | style | getOrientation());
if (value != null) {
- text.setText(value);
+ text.setText(value);
}
- text.setForeground(getColors().getForeground());
- text.setBackground(getColors().getBackground());
- // text.addFocusListener(visibilityHandler);
- return text;
- }
+ text.setForeground(getColors().getForeground());
+ text.setBackground(getColors().getBackground());
+ // text.addFocusListener(visibilityHandler);
+ return text;
+ }
+
+
+
+
+
}
import eu.etaxonomy.cdm.common.CdmUtils;
import eu.etaxonomy.cdm.model.common.TimePeriod;
+import eu.etaxonomy.cdm.strategy.parser.TimePeriodParser;
/**
* <p>
getEntity().setEnd(end);
} else if (eventSource == text_parseText) {
cursorPosition = ((Text) text_parseText.getMainControl())
- .getCaretPosition();
- setEntityInternally(TimePeriod.parseString(text_parseText.getText()));
+ .getCaretPosition();
+ setEntityInternally(TimePeriodParser.parseString(text_parseText.getText()));
} else if (eventSource == text_freeText) {
getEntity().setFreeText(text_freeText.getText());
}
--- /dev/null
+// $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.element;
+
+import org.eclipse.jface.util.PropertyChangeEvent;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.ui.forms.widgets.Section;
+
+import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
+import eu.etaxonomy.cdm.model.common.TimePeriod;
+import eu.etaxonomy.cdm.model.occurrence.GatheringEvent;
+
+/**
+ * <p>
+ * GatheringEventUnitElement class.
+ * </p>
+ *
+ * @author c.mathew
+ * @created 23 Jul. 2013
+ * @version 1.0
+ */
+public class GatheringEventUnitElement extends AbstractCdmFormElement implements ISelectable {
+
+ private final Label label;
+ private final MinMaxTextSection section_minMaxText;
+
+ /**
+ * <p>
+ * Constructor for TimePeriodElement.
+ * </p>
+ *
+ * @param style
+ * a int.
+ * @param formFactory
+ * a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory}
+ * object.
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param labelString
+ * a {@link java.lang.String} object.
+ * @param timePeriod
+ * a {@link eu.etaxonomy.cdm.model.common.TimePeriod} object.
+ */
+ public GatheringEventUnitElement(CdmFormFactory formFactory,
+ ICdmFormElement parentElement,
+ String labelString,
+ DerivedUnitFacade gatheringEvent,
+ MinMaxTextSection.UnitType unitType,
+ final int style) {
+ super(formFactory, parentElement);
+
+ label = formFactory.createLabel(getLayoutComposite(), labelString);
+ addControl(label);
+
+ section_minMaxText = formFactory.createMinMaxTextSection(this,
+ unitType,
+ Section.TWISTIE);
+
+ addControl(section_minMaxText);
+
+ section_minMaxText.setEntity(gatheringEvent);
+
+ formFactory.addPropertyChangeListener(this);
+ }
+
+
+ /** {@inheritDoc} */
+ @Override
+ public void propertyChange(PropertyChangeEvent event) {
+ if (event == null) {
+ return;
+ }
+ Object eventSource = event.getSource();
+
+ if (getElements().contains(eventSource)) {
+ handleEvent(eventSource);
+ }
+ }
+
+ private void handleEvent(Object eventSource) {
+ if (eventSource == section_minMaxText) {
+ firePropertyChangeEvent(new CdmPropertyChangeEvent(this, null));
+ }
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public void setBackground(Color color) {
+ label.setBackground(color);
+ section_minMaxText.setBackground(color);
+ }
+
+ @Override
+ public void setSelected(boolean selected) {
+ setBackground(selected ? SELECTED : getPersistentBackground());
+ }
+
+ public void setLabel(String string) {
+ label.setText(string);
+ }
+}
+
--- /dev/null
+// $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.element;
+
+import org.eclipse.jface.util.PropertyChangeEvent;
+import org.eclipse.swt.layout.RowLayout;
+
+import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
+import eu.etaxonomy.cdm.common.CdmUtils;
+import eu.etaxonomy.cdm.model.common.TimePeriod;
+import eu.etaxonomy.cdm.model.occurrence.GatheringEvent;
+
+/**
+ * <p>
+ * MinMaxTextSection class.
+ * </p>
+ *
+ * @author c.mathew
+ * @created 23 Jul 2013
+ * @version 1.0
+ */
+public class MinMaxTextSection extends AbstractFormSection<DerivedUnitFacade> {
+
+ private final TextWithLabelElement text_freeText;
+ private final NumberWithLabelElement text_minVal;
+ private final NumberWithLabelElement text_maxVal;
+ private int cursorPosition;
+
+ // unit types handled by this section
+ public enum UnitType {
+ ELEVATION,
+ DIST_TO_GROUND,
+ DIST_TO_WATER
+ }
+
+ private UnitType unitType = UnitType.ELEVATION;
+
+ /**
+ * <p>
+ * Constructor for DateDetailSection.
+ * </p>
+ *
+ * @param formFactory
+ * a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory}
+ * object.
+ * @param parentElement
+ * a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement}
+ * object.
+ * @param style
+ * a int.
+ */
+ protected MinMaxTextSection(CdmFormFactory formFactory,
+ ICdmFormElement parentElement, UnitType unitType, int style) {
+ super(formFactory, parentElement, style);
+ this.unitType = unitType;
+ getLayoutComposite().setLayout(LayoutConstants.LAYOUT(2, false));
+
+ text_minVal = formFactory.createNumberTextWithLabelElement(this,
+ "Min : ", getMinimum(), style);
+
+ text_maxVal = formFactory.createNumberTextWithLabelElement(this,
+ "Max : ", getMaximum(), style);
+
+ text_freeText = formFactory.createTextWithLabelElement(this,
+ "Freetext : ", getFreetext(), style);
+
+ formFactory.addPropertyChangeListener(this);
+ }
+
+ /**
+ * <p>
+ * Setter for the field <code>timePeriod</code>.
+ * </p>
+ *
+ * @param timePeriod
+ * a {@link eu.etaxonomy.cdm.model.common.TimePeriod} object.
+ */
+ @Override
+ public void setEntity(DerivedUnitFacade gatheringEvent) {
+ super.setEntity(gatheringEvent);
+ updateValues();
+ }
+
+ private void updateValues() {
+ if(getEntity() != null) {
+ switch(unitType) {
+ case ELEVATION:
+ if(getEntity().getAbsoluteElevation() != null) {
+ text_minVal.setNumber(getEntity().getAbsoluteElevation());
+ }
+ if(getEntity().getAbsoluteElevationMaximum() != null) {
+ text_maxVal.setNumber(getEntity().getAbsoluteElevation());
+ }
+ if(getEntity().getAbsoluteElevationText() != null) {
+ text_freeText.setText(getEntity().getAbsoluteElevationText());
+ }
+ break;
+ case DIST_TO_GROUND:
+ if(getEntity().getDistanceToGround() != null) {
+ text_minVal.setNumber(getEntity().getDistanceToGround());
+ }
+ if(getEntity().getDistanceToGroundMax() != null) {
+ text_maxVal.setNumber(getEntity().getDistanceToGroundMax());
+ }
+ if(getEntity().getDistanceToGroundText() != null) {
+ text_freeText.setText(getEntity().getDistanceToGroundText());
+ }
+ break;
+ case DIST_TO_WATER:
+ if(getEntity().getDistanceToWaterSurface() != null) {
+ text_minVal.setNumber(getEntity().getDistanceToWaterSurface());
+ }
+ if(getEntity().getDistanceToWaterSurfaceMax() != null) {
+ text_maxVal.setNumber(getEntity().getDistanceToWaterSurfaceMax());
+ }
+ if(getEntity().getDistanceToWaterSurfaceText() != null) {
+ text_freeText.setText(getEntity().getDistanceToWaterSurfaceText());
+ }
+ break;
+ default:
+ break;
+ }
+
+ }
+ }
+ /** {@inheritDoc} */
+ @Override
+ public void propertyChange(PropertyChangeEvent event) {
+ if (event == null) {
+ return;
+ }
+ Object eventSource = event.getSource();
+
+ if (getElements().contains(eventSource)) {
+ if (event instanceof CdmPropertyChangeEvent) {
+ if (((CdmPropertyChangeEvent) event).hasException()) {
+ handleException((CdmPropertyChangeEvent) event);
+ return;
+ }
+ }
+ handleEvent(eventSource);
+ }
+ }
+
+ /**
+ * @param event
+ */
+ private void handleException(CdmPropertyChangeEvent event) {
+ firePropertyChangeEvent(new CdmPropertyChangeEvent(this,
+ event.getException()));
+ }
+
+ private void handleEvent(Object eventSource) {
+ if (eventSource == text_minVal) {
+ updateMinimum();
+ } else if (eventSource == text_maxVal) {
+ updateMaximum();
+ } else if (eventSource == text_freeText) {
+ updateFreetext();
+ }
+ firePropertyChangeEvent(new CdmPropertyChangeEvent(this, null));
+ }
+
+
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see eu.etaxonomy.taxeditor.forms.AbstractFormSection#dispose()
+ */
+ /** {@inheritDoc} */
+ @Override
+ public void dispose() {
+ formFactory.removePropertyChangeListener(this);
+ super.dispose();
+ }
+
+ private void updateMinimum() {
+ switch(unitType) {
+ case ELEVATION:
+ getEntity().setAbsoluteElevation(text_minVal.getInteger());
+ break;
+ case DIST_TO_GROUND:
+ getEntity().setDistanceToGround(text_minVal.getDouble());
+ break;
+ case DIST_TO_WATER:
+ getEntity().setDistanceToWaterSurface(text_minVal.getDouble());
+ break;
+ }
+ }
+
+ private Number getMinimum() {
+ if(getEntity() == null) {
+ return null;
+ }
+ switch(unitType) {
+ case ELEVATION:
+ return getEntity().getAbsoluteElevation();
+ case DIST_TO_GROUND:
+ return getEntity().getDistanceToGround();
+ case DIST_TO_WATER:
+ return getEntity().getDistanceToWaterSurface();
+ }
+ return null;
+ }
+
+ private void updateMaximum() {
+ switch(unitType) {
+ case ELEVATION:
+ getEntity().setAbsoluteElevationMax(text_maxVal.getInteger());
+ break;
+ case DIST_TO_GROUND:
+ getEntity().setDistanceToGroundMax(text_maxVal.getDouble());
+ break;
+ case DIST_TO_WATER:
+ getEntity().setDistanceToWaterSurfaceMax(text_maxVal.getDouble());
+ break;
+ }
+ }
+
+ private Number getMaximum() {
+ if(getEntity() == null) {
+ return null;
+ }
+ switch(unitType) {
+ case ELEVATION:
+ return getEntity().getAbsoluteElevationMaximum();
+ case DIST_TO_GROUND:
+ return getEntity().getDistanceToGroundMax();
+ case DIST_TO_WATER:
+ return getEntity().getDistanceToWaterSurfaceMax();
+ }
+ return null;
+ }
+
+ private void updateFreetext() {
+ switch(unitType) {
+ case ELEVATION:
+ getEntity().setAbsoluteElevationText(text_freeText.getText());
+ break;
+ case DIST_TO_GROUND:
+ getEntity().setDistanceToGroundText(text_freeText.getText());
+ break;
+ case DIST_TO_WATER:
+ getEntity().setDistanceToWaterSurfaceText(text_freeText.getText());
+ break;
+ }
+ }
+
+ private String getFreetext() {
+ if(getEntity() == null) {
+ return null;
+ }
+ switch(unitType) {
+ case ELEVATION:
+ return getEntity().getAbsoluteElevationText();
+ case DIST_TO_GROUND:
+ return getEntity().getDistanceToGroundText();
+ case DIST_TO_WATER:
+ return getEntity().getDistanceToWaterSurfaceText();
+ }
+ return null;
+ }
+
+}
+
* @param toolkit a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory} object.
* @param parentElement a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement} object.
* @param labelString a {@link java.lang.String} object.
- * @param initialInteger a {@link java.lang.Integer} object.
+ * @param initialNumber a {@link java.lang.Number} object.
* @param style a int.
*/
public NumberWithLabelElement(CdmFormFactory toolkit,
ICdmFormElement parentElement, String labelString,
- Integer initialInteger, int style) {
+ Number initialNumber, int style) {
super(toolkit, parentElement, labelString, null, null, style);
- setInteger(initialInteger);
+ setNumber(initialNumber);
}
- /**
- * <p>Constructor for NumberWithLabelElement.</p>
- *
- * @param toolkit a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory} object.
- * @param parentElement a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement} object.
- * @param labelString a {@link java.lang.String} object.
- * @param initialFloat a {@link java.lang.Float} object.
- * @param style a int.
- */
- public NumberWithLabelElement(CdmFormFactory toolkit,
- ICdmFormElement parentElement, String labelString,
- Float initialFloat, int style) {
- super(toolkit, parentElement, labelString, null, null, style);
- setFloat(initialFloat);
- }
/**
- * <p>setInteger</p>
+ * <p>setNumber</p>
*
- * @param number a {@link java.lang.Integer} object.
+ * @param number a {@link java.lang.Number} object.
*/
- public void setInteger(Integer number) {
- super.setText(getStringRepresentation(number));
- }
-
- /**
- * <p>setFloat</p>
- *
- * @param number a {@link java.lang.Float} object.
- */
- public void setFloat(Float number) {
+ public void setNumber(Number number) {
super.setText(getStringRepresentation(number));
}
return new Float(text);
}
+ /**
+ * <p>getDouble</p>
+ *
+ * @return a {@link java.lang.Float} object.
+ */
+ public Double getDouble(){
+ String text = super.getText();
+ return new Double(text);
+ }
+
private String getStringRepresentation(Object number){
if(number != null){
return number.toString();
label = formFactory.createLabel(getLayoutComposite(), labelString);
addControl(label);
- number_year = formFactory.createIntegerTextWithLabelElement(this, "Year", null, style);
+ number_year = formFactory.createNumberTextWithLabelElement(this, "Year", null, style);
number_year.setLimits(4, -9999, 9999);
- number_month = formFactory.createIntegerTextWithLabelElement(this, "Month", null, style);
+ number_month = formFactory.createNumberTextWithLabelElement(this, "Month", null, style);
number_month.setLimits(2, 1, 12);
- number_day = formFactory.createIntegerTextWithLabelElement(this, "Day", null, style);
+ number_day = formFactory.createNumberTextWithLabelElement(this, "Day", null, style);
number_day.setLimits(2, 1, 31);
this.partial = partial;
if(partial != null){
- number_day.setInteger(TimePeriod.getPartialValue(partial, TimePeriod.DAY_TYPE));
- number_month.setInteger(TimePeriod.getPartialValue(partial, TimePeriod.MONTH_TYPE));
- number_year.setInteger(TimePeriod.getPartialValue(partial, TimePeriod.YEAR_TYPE));
+ number_day.setNumber(TimePeriod.getPartialValue(partial, TimePeriod.DAY_TYPE));
+ number_month.setNumber(TimePeriod.getPartialValue(partial, TimePeriod.MONTH_TYPE));
+ number_year.setNumber(TimePeriod.getPartialValue(partial, TimePeriod.YEAR_TYPE));
}
}
text_longitudeParsed = formFactory.createTextWithLabelElement(
formElement, "", null, style);
text_longitudeParsed.setEnabled(false);
- number_errorRadius = formFactory.createIntegerTextWithLabelElement(
+ number_errorRadius = formFactory.createNumberTextWithLabelElement(
formElement, "Error Radius (m)", null, style);
combo_referenceSystem = formFactory
.createTermComboElement(ReferenceSystem.class,
text_latitudeParsed.setText(latitude);
text_longitude.setText(longitude);
text_longitudeParsed.setText(longitude);
- number_errorRadius.setInteger(point.getErrorRadius());
+ number_errorRadius.setNumber(point.getErrorRadius());
combo_referenceSystem.setSelection(point.getReferenceSystem());
}
}
import org.eclipse.swt.events.SelectionListener;
-import eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase;
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
import eu.etaxonomy.taxeditor.ui.element.AbstractFormSection;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
public class DerivedUnitElement extends
AbstractEntityCollectionElement<SpecimenOrObservationBase> {
- private EntitySelectionElement<DerivedUnitBase> selection_derivedUnit;
+ private EntitySelectionElement<DerivedUnit> selection_derivedUnit;
/**
* <p>
@Override
public void createControls(ICdmFormElement element, int style) {
selection_derivedUnit = formFactory.createSelectionElement(
- DerivedUnitBase.class, getConversationHolder(), element,
+ DerivedUnit.class, getConversationHolder(), element,
"Specimen", null, EntitySelectionElement.SELECTABLE | EntitySelectionElement.EDITABLE,
style);
}
package eu.etaxonomy.taxeditor.ui.section.description;
+import java.util.ArrayList;
import java.util.Collection;
+import java.util.List;
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
import eu.etaxonomy.cdm.model.description.TaxonDescription;
-import eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase;
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
import eu.etaxonomy.taxeditor.ui.dialog.selection.DerivedUnitSelectionDialog;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
@Override
public Collection<SpecimenOrObservationBase> getCollection(
TaxonDescription entity) {
- return entity.getDescribedSpecimenOrObservations();
+ //FIXME:This class is not really an entity collection section, and should be moved
+ // to a single entity section, but one with the possibility of launching a wizard
+ List<SpecimenOrObservationBase> collection = new ArrayList<SpecimenOrObservationBase>();
+ if(entity.getDescribedSpecimenOrObservation() != null) {
+ collection.add(entity.getDescribedSpecimenOrObservation());
+ }
+ return collection;
}
/** {@inheritDoc} */
@Override
public SpecimenOrObservationBase createNewElement() {
- DerivedUnitBase selection = DerivedUnitSelectionDialog.select(getShell(), getConversationHolder(), null);
+ DerivedUnit selection = DerivedUnitSelectionDialog.select(getShell(), getConversationHolder(), null);
return selection;
}
/** {@inheritDoc} */
@Override
public void addElement(SpecimenOrObservationBase element) {
- getEntity().addDescribedSpecimenOrObservation(element);
+ getEntity().setDescribedSpecimenOrObservation(element);
}
/** {@inheritDoc} */
@Override
public void removeElement(SpecimenOrObservationBase element) {
- getEntity().removeDescribedSpecimenOrObservation(element);
+ getEntity().setDescribedSpecimenOrObservation(null);
}
/** {@inheritDoc} */
}
else if(eventSource == selection_featureTree){
FeatureTree featureTree = selection_featureTree.getSelection();
- getEntity().setDescriptiveSystem(featureTree.getDistinctFeatures());
+ //FIXME:3.3MC----
+ //getEntity().setDescriptiveSystem(featureTree.getDistinctFeatures());
+ //FIXME:3.3MC----
}
}
}
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionListener;
-import eu.etaxonomy.cdm.model.common.DescriptionElementSource;
+import eu.etaxonomy.cdm.model.description.DescriptionElementSource;
import eu.etaxonomy.cdm.model.name.TaxonNameBase;
import eu.etaxonomy.taxeditor.ui.element.AbstractFormSection;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
text_referenceDetail.setText(entity.getCitationMicroReference());
text_originaleNameString.setText(entity.getOriginalNameString());
selection_name.setEntity(entity.getNameUsedInSource());
+ combo_origsourcetype.setSelection(entity.getType());
}
/** {@inheritDoc} */
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
-import eu.etaxonomy.cdm.model.common.DescriptionElementSource;
+import eu.etaxonomy.cdm.model.common.IdentifiableSource;
+import eu.etaxonomy.cdm.model.common.OriginalSourceType;
+import eu.etaxonomy.cdm.model.description.DescriptionElementSource;
import eu.etaxonomy.cdm.model.description.DescriptionElementBase;
+import eu.etaxonomy.taxeditor.ui.dialog.selection.OriginalSourceTypeSelectionDialog;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection;
/** {@inheritDoc} */
@Override
public DescriptionElementSource createNewElement() {
- return DescriptionElementSource.NewInstance();
+ return DescriptionElementSource.NewInstance(OriginalSourceType.PrimaryTaxonomicSource);
}
/** {@inheritDoc} */
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
import eu.etaxonomy.cdm.model.common.IdentifiableSource;
+import eu.etaxonomy.cdm.model.common.OriginalSourceType;
import eu.etaxonomy.cdm.model.description.DescriptionBase;
+import eu.etaxonomy.taxeditor.ui.dialog.selection.OriginalSourceTypeSelectionDialog;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection;
/** {@inheritDoc} */
@Override
public IdentifiableSource createNewElement() {
- return IdentifiableSource.NewInstance();
+ OriginalSourceType ost = OriginalSourceTypeSelectionDialog.select(getShell(), getConversationHolder());
+ if(ost != null) {
+ return IdentifiableSource.NewInstance(ost);
+ } else {
+ return null;
+ }
}
/** {@inheritDoc} */
import org.eclipse.swt.events.SelectionListener;
-import eu.etaxonomy.cdm.model.description.Modifier;
+
+import eu.etaxonomy.cdm.model.common.DefinedTerm;
import eu.etaxonomy.taxeditor.ui.combo.TermComboElement;
import eu.etaxonomy.taxeditor.ui.element.AbstractFormSection;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
* @created Sep 15, 2010
* @version 1.0
*/
-public class ModifierElement extends AbstractEntityCollectionElement<Modifier> {
+public class ModifierElement extends AbstractEntityCollectionElement<DefinedTerm> {
- private TermComboElement<Modifier> combo_modifier;
+ private TermComboElement<DefinedTerm> combo_modifier;
/**
* <p>Constructor for ModifierElement.</p>
* @param style a int.
*/
public ModifierElement(CdmFormFactory formFactory,
- AbstractFormSection section, Modifier entity,
+ AbstractFormSection section, DefinedTerm entity,
SelectionListener removeListener, int style) {
super(formFactory, section, entity, removeListener, null, style);
}
/** {@inheritDoc} */
@Override
- public void setEntity(Modifier entity) {
+ public void setEntity(DefinedTerm entity) {
this.entity = entity;
combo_modifier.setSelection(entity);
}
/** {@inheritDoc} */
@Override
public void createControls(ICdmFormElement element, int style) {
- combo_modifier = formFactory.createTermComboElement(Modifier.class, element, "Modifier", getEntity(), style);
+ combo_modifier = formFactory.createTermComboElement(DefinedTerm.class, element, "Modifier", getEntity(), style);
}
/** {@inheritDoc} */
import java.util.Collection;
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
+import eu.etaxonomy.cdm.model.common.DefinedTerm;
+import eu.etaxonomy.cdm.model.common.TermType;
import eu.etaxonomy.cdm.model.description.IModifiable;
-import eu.etaxonomy.cdm.model.description.Modifier;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection;
* @created Sep 15, 2010
* @version 1.0
*/
-public class ModifierSection extends AbstractEntityCollectionSection<IModifiable, Modifier> {
+public class ModifierSection extends AbstractEntityCollectionSection<IModifiable, DefinedTerm> {
/**
* <p>Constructor for ModifierSection.</p>
/** {@inheritDoc} */
@Override
- public Collection<Modifier> getCollection(IModifiable entity) {
+ public Collection<DefinedTerm> getCollection(IModifiable entity) {
return entity.getModifiers();
}
/** {@inheritDoc} */
@Override
- public Modifier createNewElement() {
- return Modifier.NewInstance();
+ public DefinedTerm createNewElement() {
+ return DefinedTerm.NewInstance(TermType.Modifier,"","Untitled","");
}
/** {@inheritDoc} */
@Override
- public void addElement(Modifier element) {
+ public void addElement(DefinedTerm element) {
getEntity().addModifier(element);
}
/** {@inheritDoc} */
@Override
- public void removeElement(Modifier element) {
+ public void removeElement(DefinedTerm element) {
getEntity().removeModifier(element);
}
import org.eclipse.swt.events.SelectionListener;
-import eu.etaxonomy.cdm.model.description.Scope;
+import eu.etaxonomy.cdm.model.common.DefinedTerm;
import eu.etaxonomy.taxeditor.ui.combo.TermComboElement;
import eu.etaxonomy.taxeditor.ui.element.AbstractFormSection;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
* @created Mar 18, 2010
* @version 1.0
*/
-public class ScopeElement extends AbstractEntityCollectionElement<Scope> {
+public class ScopeElement extends AbstractEntityCollectionElement<DefinedTerm> {
- private TermComboElement<Scope> combo_scope;
+ private TermComboElement<DefinedTerm> combo_scope;
/**
* <p>Constructor for ScopeElement.</p>
* @param style a int.
*/
public ScopeElement(CdmFormFactory cdmFormFactory,
- AbstractFormSection section, Scope element,
+ AbstractFormSection section, DefinedTerm element,
SelectionListener removeListener, int style) {
super(cdmFormFactory, section, element, removeListener, null, style);
}
/** {@inheritDoc} */
@Override
- public void setEntity(Scope entity) {
+ public void setEntity(DefinedTerm entity) {
this.entity = entity;
combo_scope.setSelection(entity);
}
/** {@inheritDoc} */
@Override
public void createControls(ICdmFormElement element, int style) {
- combo_scope = formFactory.createTermComboElement(Scope.class, element, "Scope", null, style);
+ combo_scope = formFactory.createTermComboElement(DefinedTerm.class, element, "Scope", null, style);
}
/** {@inheritDoc} */
import java.util.Collection;
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
-import eu.etaxonomy.cdm.model.description.Scope;
+import eu.etaxonomy.cdm.model.common.DefinedTerm;
+import eu.etaxonomy.cdm.model.common.TermType;
import eu.etaxonomy.cdm.model.description.TaxonDescription;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
* @created Mar 18, 2010
* @version 1.0
*/
-public class ScopeSection extends AbstractEntityCollectionSection<TaxonDescription, Scope> {
+public class ScopeSection extends AbstractEntityCollectionSection<TaxonDescription, DefinedTerm> {
/**
* <p>Constructor for ScopeSection.</p>
/** {@inheritDoc} */
@Override
- public void addElement(Scope element) {
+ public void addElement(DefinedTerm element) {
getEntity().addScope(element);
}
/** {@inheritDoc} */
@Override
- public Scope createNewElement() {
- return Scope.NewInstance();
+ public DefinedTerm createNewElement() {
+ return DefinedTerm.NewInstance(TermType.Scope,"","Untitled","");
}
/** {@inheritDoc} */
@Override
- public Collection<Scope> getCollection(TaxonDescription entity) {
+ public Collection<DefinedTerm> getCollection(TaxonDescription entity) {
return entity.getScopes();
}
/** {@inheritDoc} */
@Override
- public void removeElement(Scope element) {
+ public void removeElement(DefinedTerm element) {
getEntity().removeScope(element);
}
}
/** {@inheritDoc} */
@Override
public Collection<StateData> getCollection(CategoricalData entity) {
- return entity.getStates();
+ return entity.getStateData();
}
/** {@inheritDoc} */
/** {@inheritDoc} */
@Override
public void addElement(StateData element) {
- getEntity().addState(element);
+ getEntity().addStateData(element);
}
/** {@inheritDoc} */
@Override
public void removeElement(StateData element) {
- getEntity().removeState(element);
+ getEntity().removeStateData(element);
}
/** {@inheritDoc} */
@Override
public void setEntity(StatisticalMeasurementValue entity) {
this.entity = entity;
- number_value.setFloat(entity.getValue());
+ number_value.setNumber(entity.getValue());
combo_type.setSelection(entity.getType());
section_modifiers.setEntity(entity);
}
/** {@inheritDoc} */
@Override
public void createControls(ICdmFormElement element, int style) {
- number_value = formFactory.createFloatTextWithLabelElement(element, "Value", 0, style);
+ number_value = formFactory.createNumberTextWithLabelElement(element, "Value", 0, style);
combo_type = formFactory.createTermComboElement(StatisticalMeasure.class, element, "Statistical Measure", null, style);
section_modifiers = formFactory.createModifierSection(getConversationHolder(), element, ExpandableComposite.TWISTIE);
section_modifiers.setLayoutData(LayoutConstants.FILL_HORIZONTALLY(2, 1));
import eu.etaxonomy.cdm.model.common.Language;
import eu.etaxonomy.cdm.model.common.LanguageString;
import eu.etaxonomy.cdm.model.description.IndividualsAssociation;
-import eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase;
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
import eu.etaxonomy.taxeditor.store.CdmStore;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
AbstractDetailedDescriptionDetailElement<IndividualsAssociation> {
private TextWithLabelElement text_description;
- private EntitySelectionElement<DerivedUnitBase> selection_derivedUnit;
+ private EntitySelectionElement<DerivedUnit> selection_derivedUnit;
/**
* <p>
protected void createControls(ICdmFormElement formElement,
IndividualsAssociation entity, int style) {
selection_derivedUnit = formFactory
- .createSelectionElement(DerivedUnitBase.class,
+ .createSelectionElement(DerivedUnit.class,
getConversationHolder(), formElement, "Unit",
- CdmBase.deproxy(entity.getAssociatedSpecimenOrObservation(),DerivedUnitBase.class),
+ CdmBase.deproxy(entity.getAssociatedSpecimenOrObservation(),DerivedUnit.class),
EntitySelectionElement.ALL, style);
text_description = formFactory.createMultilineTextWithLabel(
PolytomousKeyNode entity, int style) {
if (!entity.isLeaf()) {
NumberWithLabelElement number_nodeNumber = formFactory
- .createIntegerTextWithLabelElement(formElement,
+ .createNumberTextWithLabelElement(formElement,
"Node Number", entity.getNodeNumber(), style);
number_nodeNumber.setEnabled(false);
}
import java.util.Collection;
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
+import eu.etaxonomy.cdm.model.common.DefinedTerm;
+import eu.etaxonomy.cdm.model.common.TermType;
import eu.etaxonomy.cdm.model.description.PolytomousKey;
-import eu.etaxonomy.cdm.model.description.Scope;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection;
* @author n.hoffmann
*
*/
-public class ScopeRestrictionSection extends AbstractEntityCollectionSection<PolytomousKey, Scope> {
+public class ScopeRestrictionSection extends AbstractEntityCollectionSection<PolytomousKey, DefinedTerm> {
public ScopeRestrictionSection(CdmFormFactory formFactory,
ConversationHolder conversation, ICdmFormElement parentElement, int style) {
}
@Override
- public Collection<Scope> getCollection(PolytomousKey entity) {
+ public Collection<DefinedTerm> getCollection(PolytomousKey entity) {
return entity.getScopeRestrictions();
}
@Override
- public Scope createNewElement() {
- return Scope.NewInstance();
+ public DefinedTerm createNewElement() {
+ return DefinedTerm.NewInstance(TermType.Scope,"","Untitled","");
+
}
@Override
- public void addElement(Scope element) {
+ public void addElement(DefinedTerm element) {
getEntity().addScopeRestriction(element);
}
@Override
- public void removeElement(Scope element) {
+ public void removeElement(DefinedTerm element) {
getEntity().removeScopeRestriction(element);
}
public void createControls(ICdmFormElement formElement, int style) {
super.createControls(formElement, style);
- text_height = formFactory.createIntegerTextWithLabelElement(formElement, "Height", null, style);
+ text_height = formFactory.createNumberTextWithLabelElement(formElement, "Height", null, style);
text_height.setEnabled(false);
- text_width = formFactory.createIntegerTextWithLabelElement(formElement, "Width", null, style);
+ text_width = formFactory.createNumberTextWithLabelElement(formElement, "Width", null, style);
text_width.setEnabled(false);
element_image = formFactory.createImageElement(formElement, null, style);
element_keyValue = formFactory.createKeyValueViewerElement(formElement, "Key", "Value", null);
@Override
public void setEntity(ImageFile entity) {
super.setEntity(entity);
- text_height.setInteger(entity.getHeight());
- text_width.setInteger(entity.getWidth());
+ text_height.setNumber(entity.getHeight());
+ text_width.setNumber(entity.getWidth());
try {
loadImage(entity.getUri(), false);
} catch (Exception e) {
// But then, I don't think we will handle such large files in the near future
getEntity().setSize((int) imageInfo.getLength());
- text_height.setInteger(imageInfo.getHeight());
+ text_height.setNumber(imageInfo.getHeight());
getEntity().setHeight(imageInfo.getHeight());
- text_width.setInteger(imageInfo.getWidth());
+ text_width.setNumber(imageInfo.getWidth());
getEntity().setWidth(imageInfo.getWidth());
}
protected void handleException(Exception e) {
super.handleException(e);
element_image.unloadImage(postRunnable);
- text_height.setInteger(0);
- text_width.setInteger(0);
+ text_height.setNumber(0);
+ text_width.setNumber(0);
element_image.loadImage(new Runnable(){
public void run() {
@Override
public void createControls(ICdmFormElement element, int style) {
text_uri = formFactory.createTextWithLabelElement(element, "URI", null, style);
- text_size = formFactory.createIntegerTextWithLabelElement(element, "Size", null, style);
+ text_size = formFactory.createNumberTextWithLabelElement(element, "Size", null, style);
text_size.setEnabled(false);
element_messages = formFactory.createLabel(element, "");
NomenclaturalCode code = nonViralName.getNomenclaturalCode();
if (code != null){
switch(nonViralName.getNomenclaturalCode()){
- case ICBN:
+ case ICNAFP :
createBotanicalNameParts(formElement, nonViralName, style);
break;
case ICZN:
private void createZoologicalNameParts(ICdmFormElement formElement, NonViralName nonViralName, int style){
ZoologicalName zoologicalName = (ZoologicalName) nonViralName;
text_breed = formFactory.createTextWithLabelElement(formElement, "Breed", zoologicalName.getBreed(), style);
- text_publicationYear = formFactory.createIntegerTextWithLabelElement(formElement, "Publication Year", zoologicalName.getPublicationYear(), style);
- text_originalPublicationYear = formFactory.createIntegerTextWithLabelElement(formElement, "Orig. Publication Year", zoologicalName.getOriginalPublicationYear(), style);
+ text_publicationYear = formFactory.createNumberTextWithLabelElement(formElement, "Publication Year", zoologicalName.getPublicationYear(), style);
+ text_originalPublicationYear = formFactory.createNumberTextWithLabelElement(formElement, "Orig. Publication Year", zoologicalName.getOriginalPublicationYear(), style);
}
private void createGenusOrUninomialControls(ICdmFormElement element, NonViralName nonViralName, int style){
import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
import eu.etaxonomy.cdm.model.name.SpecimenTypeDesignation;
import eu.etaxonomy.cdm.model.name.SpecimenTypeDesignationStatus;
-import eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase;
-import eu.etaxonomy.cdm.model.occurrence.Specimen;
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
+import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
import eu.etaxonomy.taxeditor.ui.combo.TermComboElement;
import eu.etaxonomy.taxeditor.ui.element.AbstractFormSection;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
AbstractTypeDesignationElement<SpecimenTypeDesignation> {
private TermComboElement<SpecimenTypeDesignationStatus> combo_typeStatus;
- private EntitySelectionElement<DerivedUnitBase> selection_typeSpecimen;
+ private EntitySelectionElement<DerivedUnit> selection_typeSpecimen;
private TextWithLabelElement text_specimenTypeText;
/**
@Override
public void createControls(ICdmFormElement formElement, int style) {
selection_typeSpecimen = formFactory
- .createSelectionElement(DerivedUnitBase.class,
+ .createSelectionElement(DerivedUnit.class,
getConversationHolder(), formElement, "Specimen", null,
EntitySelectionElement.ALL, style);
combo_typeStatus = formFactory
else if (eventSource == text_specimenTypeText) {
// TODO this is a simple workaround to enter type specimen as text
// strings
- if (getEntity().getTypeSpecimen() == null) {
- Specimen typeSpecimen = Specimen.NewInstance();
+ if (getEntity().getTypeSpecimen() == null) {
+ DerivedUnit typeSpecimen = DerivedUnit.NewInstance(SpecimenOrObservationType.PreservedSpecimen);
getEntity().setTypeSpecimen(typeSpecimen);
}
getEntity().getTypeSpecimen().setTitleCache(
// $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.
*/
import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
import eu.etaxonomy.cdm.api.facade.MethodNotSupportedByDerivedUnitTypeException;
+import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
import eu.etaxonomy.cdm.model.name.TaxonNameBase;
import eu.etaxonomy.cdm.model.occurrence.PreservationMethod;
+import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
import eu.etaxonomy.taxeditor.model.AbstractUtility;
import eu.etaxonomy.taxeditor.store.CdmStore;
+import eu.etaxonomy.taxeditor.ui.combo.EnumComboElement;
import eu.etaxonomy.taxeditor.ui.combo.TermComboElement;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
* <p>
* DerivedUnitBaseDetailElement class.
* </p>
- *
+ *
* @author n.hoffmann
* @created Jun 24, 2010
* @version 1.0
private EntitySelectionElement<TaxonNameBase> selection_storedUnder;
private TextWithLabelElement text_exsicatum;
-
+
+
private TermComboElement<PreservationMethod> combo_preservationMethod;
private SpecimenCollectionDetailSection section_duplicates;
* <p>
* Constructor for DerivedUnitBaseDetailElement.
* </p>
- *
+ *
* @param formFactory
* a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory}
* object.
/** {@inheritDoc} */
@Override
protected void createControls(ICdmFormElement formElement, DerivedUnitFacade entity, int style) {
- // Disable for now
- // text_derivedUnitDefinitions =
- // formFactory.createTextWithLabelElement(formElement,
- // "Specimen Definition",
- // facade.getDerivedUnitDefinition(CdmStore.getDefaultLanguage()),
- // style);
+ // Disable for now
+ // text_derivedUnitDefinitions =
+ // formFactory.createTextWithLabelElement(formElement,
+ // "Specimen Definition",
+ // facade.getDerivedUnitDefinition(CdmStore.getDefaultLanguage()),
+ // style);
text_barcode = formFactory.createTextWithLabelElement(formElement, "Barcode", entity.getBarcode(), style);
text_catalogNumber = formFactory.createTextWithLabelElement(formElement, "Catalog Number", entity.getCatalogNumber(), style);
- try {
+
+ try {
combo_preservationMethod = formFactory.createTermComboElement(PreservationMethod.class, formElement, "Preservation Method", entity.getPreservationMethod(), style);
- } catch (MethodNotSupportedByDerivedUnitTypeException e) {
- // we ignore this
+ } catch (MethodNotSupportedByDerivedUnitTypeException e) {
+ // we ignore this
AbstractUtility.info(e.getMessage());
- }
+ }
selection_storedUnder = formFactory.createSelectionElement(TaxonNameBase.class, getConversationHolder(), formElement, "Stored Under", entity.getStoredUnder(), EntitySelectionElement.ALL, style);
- try {
+ try {
text_exsicatum = formFactory.createTextWithLabelElement(formElement, "Exsiccatum", entity.getExsiccatum(), style);
- } catch (MethodNotSupportedByDerivedUnitTypeException e) {
- // we ignore this
+ } catch (MethodNotSupportedByDerivedUnitTypeException e) {
+ // we ignore this
AbstractUtility.info(e.getMessage());
- }
+ }
- section_duplicates = formFactory.createSpecimenCollectionDetailSection(getConversationHolder(), formElement, ExpandableComposite.TWISTIE);
- section_duplicates.setLayoutData(LayoutConstants.FILL_HORIZONTALLY(2, 1));
- section_duplicates.setEntity(entity);
+// section_duplicates = (SpecimenCollectionDetailSection) formFactory
+// .createEntityDetailSection(
+// EntityDetailType.SPECIMEN_COLLECTION,
+// getConversationHolder(), formElement, Section.TWISTIE);
+// section_duplicates
+// .setLayoutData(LayoutConstants.FILL_HORIZONTALLY(2, 1));
+// section_duplicates.setEntity(entity);
section_source = formFactory.createSourceCollectionDetailSection(getConversationHolder(), formElement, ExpandableComposite.TWISTIE);
- section_source.setLayoutData(LayoutConstants.FILL_HORIZONTALLY(2, 1));
- section_source.setEntity(entity);
- }
+ section_source.setLayoutData(LayoutConstants.FILL_HORIZONTALLY(2, 1));
+ section_source.setEntity(entity);
+ }
/** {@inheritDoc} */
@Override
import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
import eu.etaxonomy.cdm.api.facade.DerivedUnitFacadeConfigurator;
import eu.etaxonomy.cdm.api.facade.DerivedUnitFacadeNotSupportedException;
-import eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase;
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
import eu.etaxonomy.taxeditor.model.AbstractUtility;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
* @created Jun 17, 2010
* @version 1.0
*/
-public class DerivedUnitFacadeDetailElement extends AbstractCdmDetailElement<DerivedUnitBase> {
+public class DerivedUnitFacadeDetailElement extends AbstractCdmDetailElement<DerivedUnit> {
private DerivedUnitFacade facade;
/** {@inheritDoc} */
@Override
- public void setEntity(DerivedUnitBase entity) {
+ public void setEntity(DerivedUnit entity) {
super.setEntity(entity);
try {
facade = DerivedUnitFacade.NewInstance(entity, configurator);
/** {@inheritDoc} */
@Override
- public DerivedUnitBase getEntity() {
+ public DerivedUnit getEntity() {
throw new IllegalArgumentException("Should not be called");
}
/** {@inheritDoc} */
@Override
protected void createControls(ICdmFormElement formElement,
- DerivedUnitBase entity, int style) {
+ DerivedUnit entity, int style) {
section_general = formFactory.createGeneralDetailSection(getConversationHolder(), formElement, null, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
section_general.setLayoutData(LayoutConstants.FILL_HORIZONTALLY(2, 1));
import org.eclipse.jface.viewers.ISelectionProvider;
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
-import eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase;
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
import eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailElement;
* @created Jun 17, 2010
* @version 1.0
*/
-public class DerivedUnitFacadeDetailSection extends AbstractCdmDetailSection<DerivedUnitBase> {
+public class DerivedUnitFacadeDetailSection extends AbstractCdmDetailSection<DerivedUnit> {
/**
* <p>Constructor for DerivedUnitFacadeDetailSection.</p>
* @see eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailSection#createCdmDetailElement(eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailSection, int)
*/
@Override
- protected AbstractCdmDetailElement<DerivedUnitBase> createCdmDetailElement(AbstractCdmDetailSection<DerivedUnitBase> parentElement, int style) {
+ protected AbstractCdmDetailElement<DerivedUnit> createCdmDetailElement(AbstractCdmDetailSection<DerivedUnit> parentElement, int style) {
return formFactory.createDerivedUnitFacadeDetailElement(parentElement);
}
}
import org.eclipse.swt.events.SelectionListener;
+
+import eu.etaxonomy.cdm.model.common.DefinedTerm;
import eu.etaxonomy.cdm.model.occurrence.DeterminationEvent;
-import eu.etaxonomy.cdm.model.occurrence.DeterminationModifier;
import eu.etaxonomy.cdm.model.taxon.TaxonBase;
import eu.etaxonomy.taxeditor.ui.combo.TermComboElement;
import eu.etaxonomy.taxeditor.ui.element.AbstractFormSection;
public class DeterminationEventDetailElement extends
AbstractEventDetailElement<DeterminationEvent> {
- private TermComboElement<DeterminationModifier> combo_determinationModifier;
+ private TermComboElement<DefinedTerm> combo_determinationModifier;
private CheckboxElement checkbox_preferredFlag;
private EntitySelectionElement<TaxonBase> selection_taxonBase;
selection_agent.setLabel("Determined by");
- combo_determinationModifier = formFactory.createTermComboElement(DeterminationModifier.class,
+ combo_determinationModifier = formFactory.createTermComboElement(DefinedTerm.class,
element, "Modifier", null, style);
}
package eu.etaxonomy.taxeditor.ui.section.occurrence;
import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
-import eu.etaxonomy.cdm.model.description.Sex;
-import eu.etaxonomy.cdm.model.description.Stage;
+import eu.etaxonomy.cdm.model.common.DefinedTerm;
+import eu.etaxonomy.cdm.model.common.TermType;
import eu.etaxonomy.taxeditor.store.CdmStore;
import eu.etaxonomy.taxeditor.ui.combo.TermComboElement;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
private NumberWithLabelElement number_individualCount;
- private TermComboElement<Sex> combo_sex;
+ private TermComboElement<DefinedTerm> combo_sex;
- private TermComboElement<Stage> combo_lifeStage;
+ private TermComboElement<DefinedTerm> combo_lifeStage;
/**
* <p>Constructor for FieldObservationDetailElement.</p>
// text_fieldObjectDefinition = formFactory.createTextWithLabelElement(formElement, "Field Object Definition", entity.getFieldObjectDefinition(CdmStore.getDefaultLanguage()), style);
text_fieldNotes = formFactory.createTextWithLabelElement(formElement, "Field Notes", entity.getFieldNotes(), style);
- number_individualCount = formFactory.createIntegerTextWithLabelElement(formElement, "Individual Count", entity.getIndividualCount(), style);
- combo_lifeStage = formFactory.createTermComboElement(Stage.class, formElement, "Life Stage", entity.getLifeStage(), style);
- combo_sex = formFactory.createTermComboElement(Sex.class, formElement, "Sex", entity.getSex(), style);
+ number_individualCount = formFactory.createNumberTextWithLabelElement(formElement, "Individual Count", entity.getIndividualCount(), style);
+ //FIXME:3.3MC----
+ // Need to make sure that the hard coded terms in DefinedTerm have a term type (currently null)
+ //combo_lifeStage = formFactory.createDefinedTermComboElement(TermType.Stage, formElement, "Life Stage", entity.getLifeStage(), style);
+ //combo_sex = formFactory.createDefinedTermComboElement(TermType.Sex, formElement, "Sex", entity.getSex(),style);
+ //FIXME:3.3MC----
}
/** {@inheritDoc} */
import eu.etaxonomy.taxeditor.model.AbstractUtility;
import eu.etaxonomy.taxeditor.preference.Resources;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
+import eu.etaxonomy.taxeditor.ui.element.GatheringEventUnitElement;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
import eu.etaxonomy.taxeditor.ui.element.LayoutConstants;
+import eu.etaxonomy.taxeditor.ui.element.MinMaxTextSection;
import eu.etaxonomy.taxeditor.ui.element.NumberWithLabelElement;
import eu.etaxonomy.taxeditor.ui.element.TextWithLabelElement;
import eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailElement;
public class GatheringEventDetailElement extends
AbstractCdmDetailElement<DerivedUnitFacade> {
- private NumberWithLabelElement number_absoluteElevationError;
+ private GatheringEventUnitElement element_elevation;
- private NumberWithLabelElement number_absoluteElevationMinimum;
-
- private NumberWithLabelElement number_absoluteElevationMaximum;
+ private GatheringEventUnitElement element_distToGround;
+
+ private GatheringEventUnitElement element_distToWater;
+
+ private MinMaxTextSection section_minMaxText;
private TextWithLabelElement text_collectingMethod;
- private NumberWithLabelElement number_distanceToGround;
-
- private NumberWithLabelElement number_distanceToWaterSurface;
-
private TextWithLabelElement text_gatheringEventDescription;
private CollectingAreasDetailSection section_collectingAreas;
super(formFactory, formElement);
}
- /** {@inheritDoc} */
- @Override
- protected void createControls(ICdmFormElement formElement, DerivedUnitFacade entity, int style) {
- // collectingArea
- number_absoluteElevationError = formFactory.createIntegerTextWithLabelElement(formElement, "Elevation Error", entity.getAbsoluteElevationError(), style);
- number_absoluteElevationMinimum = formFactory.createIntegerTextWithLabelElement(formElement, "Elevation Minimum (m)", entity.getAbsoluteElevationMinimum(), style);
- number_absoluteElevationMaximum = formFactory.createIntegerTextWithLabelElement(formElement, "Elevation Maximum (m)", entity.getAbsoluteElevationMaximum(), style);
+ /** {@inheritDoc} */
+ @Override
+ protected void createControls(ICdmFormElement formElement, DerivedUnitFacade entity, int style) {
+
+
+ // collectingArea
+
text_collectingMethod = formFactory.createTextWithLabelElement(formElement, "Collecting Method", entity.getCollectingMethod(), style);
- number_distanceToGround = formFactory.createIntegerTextWithLabelElement(formElement, "Distance To Ground (m)", entity.getDistanceToGround(), style);
- number_distanceToWaterSurface = formFactory.createIntegerTextWithLabelElement(formElement, "Distance To Water Surface (m)", entity.getDistanceToWaterSurface(), style);
- // exactLocation
- text_gatheringEventDescription = formFactory.createTextWithLabelElement(formElement, "Gathering Event Description", entity.getGatheringEventDescription(), style);
+ // exactLocation
+ text_gatheringEventDescription = formFactory.createTextWithLabelElement(formElement, "Gathering Event Description", entity.getGatheringEventDescription(), style);
+ element_elevation = formFactory.createGatheringEventUnitElement(
+ formElement, "Elevation : ", entity, MinMaxTextSection.UnitType.ELEVATION, style);
+
+
+ element_distToGround = formFactory.createGatheringEventUnitElement(
+ formElement, "Dist. To Ground : ", entity, MinMaxTextSection.UnitType.DIST_TO_GROUND, style);
+
+ element_distToWater = formFactory.createGatheringEventUnitElement(
+ formElement, "Dist. To Water : ", entity, MinMaxTextSection.UnitType.DIST_TO_WATER, style);
+
section_collectingAreas = formFactory.createCollectingAreasDetailSection(getConversationHolder(), formElement, ExpandableComposite.TWISTIE);
section_collectingAreas.setLayoutData(LayoutConstants.FILL_HORIZONTALLY(2, 1));
- section_collectingAreas.setEntity(entity);
- }
+ section_collectingAreas.setEntity(entity);
+
+ }
/** {@inheritDoc} */
@Override
public void handleEvent(Object eventSource) {
- if (eventSource == number_absoluteElevationError) {
- getEntity().setAbsoluteElevationError(
- number_absoluteElevationError.getInteger());
- } else if (eventSource == number_absoluteElevationMinimum) {
- try {
- getEntity().setAbsoluteElevationRange(
- number_absoluteElevationMinimum.getInteger(),
- number_absoluteElevationMaximum.getInteger());
- number_absoluteElevationMinimum
- .setBackground(getColor(Resources.COLOR_COMPOSITE_BACKGROUND));
- } catch (IllegalArgumentException e) {
- number_absoluteElevationMinimum
- .setBackground(getColor(Resources.COLOR_PARSE_ERROR));
- AbstractUtility.warn(getClass(), e.getLocalizedMessage());
- }
- } else if (eventSource == number_absoluteElevationMaximum) {
- try {
- getEntity().setAbsoluteElevationRange(
- number_absoluteElevationMinimum.getInteger(),
- number_absoluteElevationMaximum.getInteger());
- number_absoluteElevationMaximum
- .setBackground(getColor(Resources.COLOR_COMPOSITE_BACKGROUND));
- } catch (IllegalArgumentException e) {
- number_absoluteElevationMaximum
- .setBackground(getColor(Resources.COLOR_PARSE_ERROR));
- AbstractUtility.warn(getClass(), e.getLocalizedMessage());
- }
- } else if (eventSource == text_collectingMethod) {
+ if (eventSource == text_collectingMethod) {
getEntity().setCollectingMethod(text_collectingMethod.getText());
- } else if (eventSource == number_distanceToGround) {
- getEntity().setDistanceToGround(
- number_distanceToGround.getInteger());
- } else if (eventSource == number_distanceToWaterSurface) {
- getEntity().setDistanceToWaterSurface(
- number_distanceToWaterSurface.getInteger());
} else if (eventSource == text_gatheringEventDescription) {
getEntity().setGatheringEventDescription(
text_gatheringEventDescription.getText());
import eu.etaxonomy.cdm.model.common.LanguageString;
import eu.etaxonomy.cdm.model.location.NamedArea;
import eu.etaxonomy.cdm.model.occurrence.Collection;
+import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
+import eu.etaxonomy.taxeditor.ui.combo.EnumComboElement;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
+import eu.etaxonomy.taxeditor.ui.element.GatheringEventUnitElement;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
import eu.etaxonomy.taxeditor.ui.element.LanguageStringWithLabelElement;
import eu.etaxonomy.taxeditor.ui.element.NumberWithLabelElement;
import eu.etaxonomy.taxeditor.ui.element.ToggleableTextElement;
import eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailElement;
import eu.etaxonomy.taxeditor.ui.selection.EntitySelectionElement;
+import eu.etaxonomy.taxeditor.ui.element.MinMaxTextSection;
/**
* @author n.hoffmann
AbstractCdmDetailElement<DerivedUnitFacade> {
private ToggleableTextElement toggleableText_titleCache;
-
+ private EnumComboElement<SpecimenOrObservationType> combo_specorobstype;
private EntitySelectionElement<NamedArea> selection_country;
private LanguageStringWithLabelElement languageText_locality;
private PointElement element_point;
private TextWithLabelElement text_collectingNumber;
private EntitySelectionElement<Collection> selection_collection;
private TextWithLabelElement text_accessionNumber;
+
/**
* @param formFactory
toggleableText_titleCache = formFactory.createToggleableTextField(
formElement, "Title Cache", entity.getTitleCache(),
entity.isProtectedTitleCache(), style);
-
+ combo_specorobstype = formFactory
+ .createEnumComboElement(SpecimenOrObservationType.class,
+ formElement, style);
+ combo_specorobstype.setSelection(entity.getType());
selection_country = formFactory.createSelectionElement(NamedArea.class, getConversationHolder(),
formElement, "Country",
entity.getCountry(), EntitySelectionElement.NOTHING, style);
entity.getLocality(), style);
element_point = formFactory.createPointElement(formElement,
entity.getExactLocation(), style);
- number_elevation = formFactory.createIntegerTextWithLabelElement(
- formElement, "Absolute Elevation (m)",
- entity.getAbsoluteElevation(), style);
element_date = formFactory.createTimePeriodElement(formElement, "Date",
entity.getGatheringPeriod(), style);
selection_collector = formFactory
getEntity().setCollection(selection_collection.getSelection());
} else if (eventSource == text_accessionNumber) {
getEntity().setAccessionNumber(text_accessionNumber.getText());
+ } else if (eventSource == combo_specorobstype) {
+ getEntity().setType(combo_specorobstype.getSelection());
}
if (eventSource != toggleableText_titleCache) {
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
import eu.etaxonomy.cdm.model.common.IdentifiableSource;
+import eu.etaxonomy.cdm.model.common.OriginalSourceType;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection;
/** {@inheritDoc} */
@Override
public IdentifiableSource createNewElement() {
- return IdentifiableSource.NewInstance();
+ return IdentifiableSource.NewInstance(OriginalSourceType.PrimaryTaxonomicSource);
}
/* (non-Javadoc)
import org.eclipse.swt.events.SelectionListener;
-import eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase;
-import eu.etaxonomy.cdm.model.occurrence.Specimen;
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
import eu.etaxonomy.taxeditor.ui.element.AbstractFormSection;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
* @version 1.0
*/
public class SpecimenCollectionDetailElement extends
- AbstractEntityCollectionElement<Specimen> {
+ AbstractEntityCollectionElement<DerivedUnit> {
- private EntitySelectionElement<DerivedUnitBase> selection_derivedUnit;
+ private EntitySelectionElement<DerivedUnit> selection_derivedUnit;
/**
* <p>
* a int.
*/
public SpecimenCollectionDetailElement(CdmFormFactory formFactory,
- AbstractFormSection section, Specimen entity,
+ AbstractFormSection section, DerivedUnit entity,
SelectionListener removeListener, int style) {
super(formFactory, section, entity, removeListener, null, style);
}
*/
/** {@inheritDoc} */
@Override
- public void setEntity(Specimen entity) {
+ public void setEntity(DerivedUnit entity) {
this.entity = entity;
selection_derivedUnit.setEntity(entity);
}
@Override
public void createControls(ICdmFormElement element, int style) {
selection_derivedUnit = formFactory
- .createSelectionElement(DerivedUnitBase.class,
+ .createSelectionElement(DerivedUnit.class,
getConversationHolder(), element, "Derived Unit", null,
EntitySelectionElement.EDITABLE | EntitySelectionElement.SELECTABLE, style);
}
@Override
public void handleEvent(Object eventSource) {
if (eventSource == selection_derivedUnit) {
- this.setEntity((Specimen) selection_derivedUnit.getSelection());
+ this.setEntity((DerivedUnit) selection_derivedUnit.getSelection());
}
}
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
-import eu.etaxonomy.cdm.model.occurrence.Specimen;
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
+import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection;
* @version 1.0
*/
public class SpecimenCollectionDetailSection extends
- AbstractEntityCollectionSection<DerivedUnitFacade, Specimen> {
+ AbstractEntityCollectionSection<DerivedUnitFacade, DerivedUnit> {
/**
* <p>Constructor for SpecimenCollectionDetailSection.</p>
*/
/** {@inheritDoc} */
@Override
- public Collection<Specimen> getCollection(DerivedUnitFacade entity) {
+ public Collection<DerivedUnit> getCollection(DerivedUnitFacade entity) {
return entity.getDuplicates();
}
*/
/** {@inheritDoc} */
@Override
- public Specimen createNewElement() {
- return Specimen.NewInstance();
+ public DerivedUnit createNewElement() {
+ return DerivedUnit.NewInstance(SpecimenOrObservationType.PreservedSpecimen);
}
/* (non-Javadoc)
*/
/** {@inheritDoc} */
@Override
- public void addElement(Specimen element) {
+ public void addElement(DerivedUnit element) {
getEntity().addDuplicate(element);
}
*/
/** {@inheritDoc} */
@Override
- public void removeElement(Specimen element) {
+ public void removeElement(DerivedUnit element) {
getEntity().removeDuplicate(element);
}
import org.eclipse.swt.events.SelectionListener;
import eu.etaxonomy.cdm.model.common.OriginalSourceBase;
+import eu.etaxonomy.cdm.model.common.OriginalSourceType;
+import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
+import eu.etaxonomy.taxeditor.ui.combo.EnumComboElement;
import eu.etaxonomy.taxeditor.ui.element.AbstractFormSection;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
* @version 1.0
*/
public abstract class AbstractOriginalSourceElement<T extends OriginalSourceBase> extends AbstractReferencedEntityElement<T> {
+ protected EnumComboElement<OriginalSourceType> combo_origsourcetype;
protected TextWithLabelElement text_idInSource;
protected TextWithLabelElement text_idNamespace;
/** {@inheritDoc} */
@Override
public void createControls(ICdmFormElement formElement, int style) {
+ combo_origsourcetype = formFactory
+ .createEnumComboElement(OriginalSourceType.class,
+ formElement, style);
text_idInSource = formFactory.createTextWithLabelElement(formElement, "Id In Source", null, style);
text_idNamespace = formFactory.createTextWithLabelElement(formElement, "ID Namespace", null, style);
super.createControls(formElement, style);
import org.eclipse.swt.events.SelectionListener;
import eu.etaxonomy.cdm.model.common.IdentifiableSource;
+import eu.etaxonomy.cdm.model.common.OriginalSourceType;
import eu.etaxonomy.taxeditor.ui.element.AbstractFormSection;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
selection_reference.setEntity(entity.getCitation());
text_referenceDetail.setText(entity.getCitationMicroReference());
+ combo_origsourcetype.setSelection(entity.getType());
if(hasOriginalNameString()) text_originaleNameString.setText(entity.getOriginalNameString());
}
}
else if(eventSource == text_originaleNameString){
getEntity().setOriginalNameString(text_originaleNameString.getText());
+ } else if(eventSource == combo_origsourcetype){
+ getEntity().setType(combo_origsourcetype.getSelection());
}
}
}
import eu.etaxonomy.cdm.model.agent.AgentBase;
import eu.etaxonomy.cdm.model.media.Rights;
-import eu.etaxonomy.cdm.model.media.RightsTerm;
+import eu.etaxonomy.cdm.model.media.RightsType;
import eu.etaxonomy.taxeditor.ui.combo.TermComboElement;
import eu.etaxonomy.taxeditor.ui.element.AbstractFormSection;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
*/
public class RightsElement extends AbstractEntityCollectionElement<Rights> {
- private TermComboElement<RightsTerm> combo_rightsType;
+ private TermComboElement<RightsType> combo_rightsType;
private EntitySelectionElement<AgentBase> selection_agent;
private TextWithLabelElement text;
@Override
public void createControls(ICdmFormElement element, int style) {
combo_rightsType = formFactory.createTermComboElement(
- RightsTerm.class, this, "Rights Type", null, style);
+ RightsType.class, this, "Rights Type", null, style);
selection_agent = formFactory.createSelectionElement(
AgentBase.class, getConversationHolder(), this, "Agent",
null, EntitySelectionElement.ALL, style);
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
import eu.etaxonomy.cdm.model.common.IIdentifiableEntity;
import eu.etaxonomy.cdm.model.common.IdentifiableSource;
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
+import eu.etaxonomy.taxeditor.ui.dialog.selection.DerivedUnitSelectionDialog;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection;
+import eu.etaxonomy.cdm.model.common.OriginalSourceType;
+
+import eu.etaxonomy.taxeditor.ui.dialog.selection.OriginalSourceTypeSelectionDialog;;
/**
* <p>SourceSection class.</p>
/** {@inheritDoc} */
@Override
public IdentifiableSource createNewElement() {
- return IdentifiableSource.NewInstance();
+ return IdentifiableSource.NewInstance(OriginalSourceType.PrimaryTaxonomicSource);
}
/** {@inheritDoc} */
import org.apache.log4j.Logger;\r
import org.eclipse.swt.events.SelectionEvent;\r
import org.eclipse.swt.events.SelectionListener;\r
+\r
+import eu.etaxonomy.cdm.model.common.DefinedTerm;\r
import eu.etaxonomy.cdm.model.common.Language;\r
import eu.etaxonomy.cdm.model.common.LanguageString;\r
import eu.etaxonomy.cdm.model.common.Marker;\r
import eu.etaxonomy.cdm.model.description.CategoricalData;\r
-import eu.etaxonomy.cdm.model.description.Modifier;\r
import eu.etaxonomy.cdm.model.description.State;\r
import eu.etaxonomy.cdm.model.description.StateData;\r
import eu.etaxonomy.taxeditor.editor.UsageTermCollection;\r
\r
private TermComboElement<State> combo_UseCategory;\r
private TermComboElement<State> combo_UseSubCategory;\r
- private TermComboElement<Modifier> combo_PlantPart;\r
- private TermComboElement<Modifier> combo_Country;\r
- private TermComboElement<Modifier> combo_HumanGroup;\r
- private TermComboElement<Modifier> combo_EthnicGroup;\r
+ private TermComboElement<DefinedTerm> combo_PlantPart;\r
+ private TermComboElement<DefinedTerm> combo_Country;\r
+ private TermComboElement<DefinedTerm> combo_HumanGroup;\r
+ private TermComboElement<DefinedTerm> combo_EthnicGroup;\r
\r
public UseRecordDetailElement(CdmFormFactory formFactory,\r
ICdmFormElement formElement) {\r
combo_UseCategory = formFactory.createTermComboElement(State.class, this, UsageTermCollection.useCategoryVocabularyLabel, null, style);\r
combo_UseCategory.addSelectionListener(this);\r
combo_UseSubCategory = formFactory.createTermComboElement(State.class, this, UsageTermCollection.useSubCategoryVocabularyLabel, null, style);\r
- combo_PlantPart = formFactory.createTermComboElement(Modifier.class, this, UsageTermCollection.plantPartLabel, null, style);\r
- combo_HumanGroup = formFactory.createTermComboElement(Modifier.class, this, UsageTermCollection.humanGroupLabel, null, style);\r
+ combo_PlantPart = formFactory.createTermComboElement(DefinedTerm.class, this, UsageTermCollection.plantPartLabel, null, style);\r
+ combo_HumanGroup = formFactory.createTermComboElement(DefinedTerm.class, this, UsageTermCollection.humanGroupLabel, null, style);\r
combo_HumanGroup.addSelectionListener(this);\r
- combo_EthnicGroup = formFactory.createTermComboElement(Modifier.class, this, UsageTermCollection.ethnicGroupLabel, null, style);\r
- combo_Country = formFactory.createTermComboElement(Modifier.class, this, UsageTermCollection.countryLabel, null, style);\r
+ combo_EthnicGroup = formFactory.createTermComboElement(DefinedTerm.class, this, UsageTermCollection.ethnicGroupLabel, null, style);\r
+ combo_Country = formFactory.createTermComboElement(DefinedTerm.class, this, UsageTermCollection.countryLabel, null, style);\r
\r
\r
List<State> termsUseCategory = setUseCategoryComboTerms(TermStore.getTerms(State.class, null, false));\r
combo_UseSubCategory.setEnabled(false);\r
}\r
\r
- List<Modifier> plantPartsToAdd = setModifierComboTerms(TermStore.getTerms(Modifier.class, null, false), UsageTermCollection.plantPartLabel);\r
+ List<DefinedTerm> plantPartsToAdd = setModifierComboTerms(TermStore.getTerms(DefinedTerm.class, null, false), UsageTermCollection.plantPartLabel);\r
combo_PlantPart.setTerms(plantPartsToAdd);\r
combo_PlantPart.setSelection(modifierSelection(UsageTermCollection.plantPartLabel));\r
\r
- List<Modifier> countriesToAdd = setModifierComboTerms(TermStore.getTerms(Modifier.class, null, false), UsageTermCollection.countryLabel);\r
+ List<DefinedTerm> countriesToAdd = setModifierComboTerms(TermStore.getTerms(DefinedTerm.class, null, false), UsageTermCollection.countryLabel);\r
combo_Country.setTerms(countriesToAdd);\r
combo_Country.setSelection(modifierSelection(UsageTermCollection.countryLabel));\r
\r
- List<Modifier> humanGroupToAdd = setModifierComboTerms(TermStore.getTerms(Modifier.class, null, false), UsageTermCollection.humanGroupLabel);\r
+ List<DefinedTerm> humanGroupToAdd = setModifierComboTerms(TermStore.getTerms(DefinedTerm.class, null, false), UsageTermCollection.humanGroupLabel);\r
combo_HumanGroup.setTerms(humanGroupToAdd);\r
combo_HumanGroup.setSelection(modifierSelection(UsageTermCollection.humanGroupLabel));\r
\r
- List<Modifier> ethnicGroupToAdd = setEthnicGroupComboTerms(TermStore.getTerms(Modifier.class, null, false), combo_HumanGroup.getSelection());\r
+ List<DefinedTerm> ethnicGroupToAdd = setEthnicGroupComboTerms(TermStore.getTerms(DefinedTerm.class, null, false), combo_HumanGroup.getSelection());\r
if (ethnicGroupToAdd != null) {\r
combo_EthnicGroup.setTerms(ethnicGroupToAdd);\r
combo_EthnicGroup.setSelection(modifierSelection(UsageTermCollection.ethnicGroupLabel));\r
* @param comboCategory\r
* @return\r
*/\r
- private Modifier modifierSelection(String comboCategory) {\r
+ private DefinedTerm modifierSelection(String comboCategory) {\r
if(!getEntity().getModifiers().isEmpty()) {\r
- for (Modifier modifier : getEntity().getModifiers()) {\r
+ for (DefinedTerm modifier : getEntity().getModifiers()) {\r
if(GetVocabularyType(modifier, comboCategory)) {\r
return modifier;\r
}\r
* @return\r
*/\r
private State stateSelection(String comboCategory) {\r
- if (!getEntity().getStates().isEmpty()) {\r
- for (StateData statedata : getEntity().getStates()) {\r
+ if (!getEntity().getStateData().isEmpty()) {\r
+ for (StateData statedata : getEntity().getStateData()) {\r
if (statedata.getModifyingText().get(CdmStore.getDefaultLanguage()) != null) {\r
String testString = statedata.getModifyingText().get(CdmStore.getDefaultLanguage()).getText();\r
if(testString.equals(comboCategory)) {\r
* @param modType\r
* @return\r
*/\r
- private List<Modifier> setModifierComboTerms(List<Modifier> listOfTerms, String modType) {\r
- List<Modifier> termsToAdd = new ArrayList<Modifier>();\r
- for (Modifier term : listOfTerms) {\r
+ private List<DefinedTerm> setModifierComboTerms(List<DefinedTerm> listOfTerms, String modType) {\r
+ List<DefinedTerm> termsToAdd = new ArrayList<DefinedTerm>();\r
+ for (DefinedTerm term : listOfTerms) {\r
\r
if ((term.getPartOf() != null) && (term.getPartOf().getTitleCache().equals(modType))) {\r
termsToAdd.add(term);\r
\r
}\r
}\r
- else if (!getEntity().getStates().isEmpty()) {\r
- for (StateData stateData : getEntity().getStates()) {\r
+ else if (!getEntity().getStateData().isEmpty()) {\r
+ for (StateData stateData : getEntity().getStateData()) {\r
if (stateData.getModifyingText().get(CdmStore.getDefaultLanguage()) != null) {\r
if ((stateData.getState() != null) && (stateData.getModifyingText().get(CdmStore.getDefaultLanguage()).getText() == UsageTermCollection.useCategoryVocabularyLabel)) {\r
for (State term : listOfTerms) {\r
* @param selectedHumangroup\r
* @return\r
*/\r
- private List<Modifier> setEthnicGroupComboTerms(List<Modifier> listOfTerms,\r
- Modifier selectedHumangroup) {\r
- List<Modifier> termsToAdd = new ArrayList<Modifier>();\r
+ private List<DefinedTerm> setEthnicGroupComboTerms(List<DefinedTerm> listOfTerms,\r
+ DefinedTerm selectedHumangroup) {\r
+ List<DefinedTerm> termsToAdd = new ArrayList<DefinedTerm>();\r
if (combo_HumanGroup.getSelection() != null) {\r
- for (Modifier term : listOfTerms) {\r
+ for (DefinedTerm term : listOfTerms) {\r
\r
if ((term.getPartOf() != null) && (term.getPartOf().getTitleCache().equals(selectedHumangroup.getTitleCache()))) {\r
termsToAdd.add(term);\r
}\r
}\r
else if (!getEntity().getModifiers().isEmpty()) {\r
- for (Modifier modifier : getEntity().getModifiers()) {\r
+ for (DefinedTerm modifier : getEntity().getModifiers()) {\r
if (modifier.getMarkers() != null) {\r
for (Marker marker : modifier.getMarkers()) {\r
if(marker.getMarkerType().getTitleCache().equals(UsageTermCollection.humanGroupLabel)) {\r
- for (Modifier term : listOfTerms) {\r
+ for (DefinedTerm term : listOfTerms) {\r
if ((term.getPartOf() != null) && (term.getPartOf().getTitleCache().equals(modifier.getTitleCache()))) {\r
termsToAdd.add(modifier);\r
} else if ((term.getVocabulary() != null) && (term.getVocabulary().getTitleCache().equals(modifier.getTitleCache()))) {\r
if (combo_UseCategory.getSelection() != null) {\r
boolean isChanged = false;\r
boolean isUseCategoryChanged = false;\r
- if (!getEntity().getStates().isEmpty()) {\r
- for (StateData useCategoryStateDataCheck : getEntity().getStates()) {\r
+ if (!getEntity().getStateData().isEmpty()) {\r
+ for (StateData useCategoryStateDataCheck : getEntity().getStateData()) {\r
Map<Language, LanguageString> modText = useCategoryStateDataCheck.getModifyingText();\r
if(modText.get(CdmStore.getDefaultLanguage()) != null && modText.get(CdmStore.getDefaultLanguage()).getText().equals(UsageTermCollection.useCategoryVocabularyLabel)) {\r
if(!useCategoryStateDataCheck.getState().getTitleCache().equals(combo_UseCategory.getSelection().getTitleCache())) {\r
\r
}\r
}\r
- ListIterator<StateData> itrExistingStates = getEntity().getStates().listIterator();\r
+ ListIterator<StateData> itrExistingStates = getEntity().getStateData().listIterator();\r
while(itrExistingStates.hasNext()) {\r
StateData existingStateData = itrExistingStates.next();\r
Map<Language, LanguageString> modifyingText = existingStateData\r
.NewInstance(combo_UseCategory.getSelection());\r
stateData.setState(combo_UseCategory.getSelection());\r
stateData.putModifyingText(CdmStore.getDefaultLanguage(), UsageTermCollection.useCategoryVocabularyLabel);\r
- getEntity().addState(stateData);\r
+ getEntity().addStateData(stateData);\r
}\r
\r
combo_UseSubCategory.setEnabled(true);\r
\r
}\r
else {\r
- if (!getEntity().getStates().isEmpty()) {\r
- Iterator<StateData> itr = getEntity().getStates().iterator();\r
+ if (!getEntity().getStateData().isEmpty()) {\r
+ Iterator<StateData> itr = getEntity().getStateData().iterator();\r
while(itr.hasNext()) {\r
StateData stateToRemove = itr.next();\r
itr.remove();\r
if (eventSource == combo_UseSubCategory) {\r
if (combo_UseSubCategory.getSelection() != null) {\r
boolean isChanged = false;\r
- if (!getEntity().getStates().isEmpty()) {\r
- ListIterator<StateData> itrExistingStates = getEntity().getStates().listIterator();\r
+ if (!getEntity().getStateData().isEmpty()) {\r
+ ListIterator<StateData> itrExistingStates = getEntity().getStateData().listIterator();\r
while(itrExistingStates.hasNext()) {\r
StateData existingStateData = itrExistingStates.next();\r
Map<Language, LanguageString> modifyingText = existingStateData\r
.NewInstance(combo_UseSubCategory.getSelection());\r
stateData.setState(combo_UseSubCategory.getSelection());\r
stateData.putModifyingText(CdmStore.getDefaultLanguage(), UsageTermCollection.useSubCategoryVocabularyLabel);\r
- getEntity().addState(stateData);\r
+ getEntity().addStateData(stateData);\r
}\r
\r
} else {\r
- if (!getEntity().getStates().isEmpty()) {\r
- Iterator<StateData> itrStateData = getEntity().getStates().iterator();\r
+ if (!getEntity().getStateData().isEmpty()) {\r
+ Iterator<StateData> itrStateData = getEntity().getStateData().iterator();\r
while(itrStateData.hasNext()) {\r
StateData existingStateData = itrStateData.next();\r
Map<Language, LanguageString> modifyingText = existingStateData\r
}\r
if (eventSource == combo_PlantPart) {\r
if (combo_PlantPart.getSelection() != null) {\r
- Iterator<Modifier> itrExistingModifiers = getEntity().getModifiers().iterator();\r
+ Iterator<DefinedTerm> itrExistingModifiers = getEntity().getModifiers().iterator();\r
while (itrExistingModifiers.hasNext()) {\r
- Modifier modifier = itrExistingModifiers.next();\r
+ DefinedTerm modifier = itrExistingModifiers.next();\r
if(GetVocabularyType(modifier, UsageTermCollection.plantPartLabel)) {\r
itrExistingModifiers.remove();\r
}\r
\r
} \r
- Modifier plantPart = combo_PlantPart.getSelection();\r
+ DefinedTerm plantPart = combo_PlantPart.getSelection();\r
getEntity().addModifier(plantPart);\r
} else {\r
- Set<Modifier> modifiers = getEntity().getModifiers();\r
+ Set<DefinedTerm> modifiers = getEntity().getModifiers();\r
if(!modifiers.isEmpty()) {\r
- Iterator<Modifier> itr = modifiers.iterator();\r
+ Iterator<DefinedTerm> itr = modifiers.iterator();\r
while (itr.hasNext()) {\r
- Modifier currentMod = itr.next();\r
+ DefinedTerm currentMod = itr.next();\r
if(GetVocabularyType(currentMod, UsageTermCollection.plantPartLabel)) {\r
itr.remove();\r
}\r
}\r
if (eventSource == combo_Country) {\r
if (combo_Country.getSelection() != null) {\r
- Iterator<Modifier> itrExistingModifiers = getEntity().getModifiers().iterator();\r
+ Iterator<DefinedTerm> itrExistingModifiers = getEntity().getModifiers().iterator();\r
while (itrExistingModifiers.hasNext()) {\r
- Modifier modifier = itrExistingModifiers.next();\r
+ DefinedTerm modifier = itrExistingModifiers.next();\r
if(GetVocabularyType(modifier, UsageTermCollection.countryLabel)) {\r
itrExistingModifiers.remove();\r
}\r
\r
}\r
- Modifier country = combo_Country.getSelection();\r
+ DefinedTerm country = combo_Country.getSelection();\r
getEntity().addModifier(country);\r
} else {\r
- Set<Modifier> modifiers = getEntity().getModifiers();\r
+ Set<DefinedTerm> modifiers = getEntity().getModifiers();\r
if(!modifiers.isEmpty()) {\r
- Iterator<Modifier> itr = modifiers.iterator();\r
+ Iterator<DefinedTerm> itr = modifiers.iterator();\r
while (itr.hasNext()) {\r
- Modifier currentMod = itr.next();\r
+ DefinedTerm currentMod = itr.next();\r
if(GetVocabularyType(currentMod, UsageTermCollection.countryLabel)) {\r
itr.remove();\r
}\r
if (eventSource == combo_HumanGroup) {\r
if (combo_HumanGroup.getSelection() != null) {\r
boolean isHumanGroupChanged = true;\r
- for (Modifier modToCheck: getEntity().getModifiers()) {\r
+ for (DefinedTerm modToCheck: getEntity().getModifiers()) {\r
if(modToCheck.equals(combo_HumanGroup.getSelection()) && (GetVocabularyType(modToCheck, UsageTermCollection.humanGroupLabel))) {\r
isHumanGroupChanged = false;\r
}\r
\r
\r
}\r
- Iterator<Modifier> itrExistingModifiers = getEntity().getModifiers().iterator();\r
+ Iterator<DefinedTerm> itrExistingModifiers = getEntity().getModifiers().iterator();\r
while (itrExistingModifiers.hasNext()) {\r
- Modifier modifier = itrExistingModifiers.next();\r
+ DefinedTerm modifier = itrExistingModifiers.next();\r
if((GetVocabularyType(modifier, UsageTermCollection.humanGroupLabel) || GetVocabularyType(modifier, UsageTermCollection.ethnicGroupLabel)) && isHumanGroupChanged) {\r
itrExistingModifiers.remove();\r
}\r
\r
} \r
if(isHumanGroupChanged){\r
- Modifier humanGroup = combo_HumanGroup.getSelection();\r
+ DefinedTerm humanGroup = combo_HumanGroup.getSelection();\r
getEntity().addModifier(humanGroup);\r
}\r
combo_EthnicGroup.setEnabled(true);\r
} else {\r
- Set<Modifier> modifiers = getEntity().getModifiers();\r
+ Set<DefinedTerm> modifiers = getEntity().getModifiers();\r
if(!modifiers.isEmpty()) {\r
- Iterator<Modifier> itr = modifiers.iterator();\r
+ Iterator<DefinedTerm> itr = modifiers.iterator();\r
while (itr.hasNext()) {\r
- Modifier currentMod = itr.next();\r
+ DefinedTerm currentMod = itr.next();\r
if(GetVocabularyType(currentMod, UsageTermCollection.humanGroupLabel) || GetVocabularyType(currentMod, UsageTermCollection.ethnicGroupLabel)) {\r
itr.remove();\r
}\r
}\r
}\r
- List<Modifier> emptyListToResetComboBox = new ArrayList<Modifier>();\r
- Modifier emptyMod = Modifier.NewInstance();\r
+ List<DefinedTerm> emptyListToResetComboBox = new ArrayList<DefinedTerm>();\r
+ //FIXME:3.3MC----\r
+ //DefinedTerm emptyMod = DefinedTerm.NewInstance();\r
+ DefinedTerm emptyMod = null;\r
+ //FIXME:3.3MC----\r
+ \r
+ \r
emptyListToResetComboBox.add(emptyMod);\r
combo_EthnicGroup.setTerms(emptyListToResetComboBox);\r
combo_EthnicGroup.setEnabled(false);\r
}\r
if (eventSource == combo_EthnicGroup) {\r
if (combo_EthnicGroup.getSelection() != null) {\r
- Iterator<Modifier> itrExistingModifiers = getEntity().getModifiers().iterator();\r
+ Iterator<DefinedTerm> itrExistingModifiers = getEntity().getModifiers().iterator();\r
while (itrExistingModifiers.hasNext()) {\r
- Modifier modifier = itrExistingModifiers.next();\r
+ DefinedTerm modifier = itrExistingModifiers.next();\r
if(GetVocabularyType(modifier, combo_HumanGroup.getSelection().getTitleCache())) {\r
itrExistingModifiers.remove();\r
}\r
\r
} \r
- Modifier ethnicGroup = combo_EthnicGroup.getSelection();\r
+ DefinedTerm ethnicGroup = combo_EthnicGroup.getSelection();\r
getEntity().addModifier(ethnicGroup);\r
} else {\r
- Set<Modifier> modifiers = getEntity().getModifiers();\r
+ Set<DefinedTerm> modifiers = getEntity().getModifiers();\r
if(!modifiers.isEmpty()) {\r
\r
- Iterator<Modifier> itr = modifiers.iterator();\r
+ Iterator<DefinedTerm> itr = modifiers.iterator();\r
while (itr.hasNext()) {\r
- Modifier currentMod = itr.next();\r
+ DefinedTerm currentMod = itr.next();\r
if(GetVocabularyType(currentMod, UsageTermCollection.ethnicGroupLabel)) {\r
itr.remove();\r
}\r
* @param vocabularyExpected\r
* @return\r
*/\r
- private boolean GetVocabularyType(Modifier term, String vocabularyExpected) {\r
+ private boolean GetVocabularyType(DefinedTerm term, String vocabularyExpected) {\r
if ((term.getPartOf() != null) && (term.getPartOf().getTitleCache().equals(vocabularyExpected))) {\r
return true;\r
}\r
if (selectedUseCategory != null) {\r
combo_UseSubCategory.setTerms(setUseCategoryComboTerms(TermStore.getTerms(State.class, null, false),selectedUseCategory));\r
\r
- if (!getEntity().getStates().isEmpty()) {\r
- Iterator<StateData> itrExistingState = getEntity().getStates().iterator();\r
+ if (!getEntity().getStateData().isEmpty()) {\r
+ Iterator<StateData> itrExistingState = getEntity().getStateData().iterator();\r
while(itrExistingState.hasNext()) {\r
StateData existingStateData = (StateData) itrExistingState.next();\r
Map<Language, LanguageString> modifyingText = existingStateData.getModifyingText();\r
}\r
for (Object object: combo_HumanGroup.getControls()) {\r
if (object == eventSource) {\r
- Modifier selectedHumanGroup = combo_HumanGroup.getSelection();\r
+ DefinedTerm selectedHumanGroup = combo_HumanGroup.getSelection();\r
if (selectedHumanGroup != null) {\r
- combo_EthnicGroup.setTerms(setEthnicGroupComboTerms(TermStore.getTerms(Modifier.class, null, false), selectedHumanGroup));\r
+ combo_EthnicGroup.setTerms(setEthnicGroupComboTerms(TermStore.getTerms(DefinedTerm.class, null, false), selectedHumanGroup));\r
if (!getEntity().getModifiers().isEmpty()) {\r
- Iterator<Modifier> iterModifiers = getEntity().getModifiers().iterator();\r
+ Iterator<DefinedTerm> iterModifiers = getEntity().getModifiers().iterator();\r
while (iterModifiers.hasNext()) {\r
- Modifier existingModifier = iterModifiers.next();\r
+ DefinedTerm existingModifier = iterModifiers.next();\r
if(GetVocabularyType(existingModifier, UsageTermCollection.ethnicGroupLabel)) {\r
combo_EthnicGroup.setSelection(modifierSelection(UsageTermCollection.ethnicGroupLabel));\r
}\r
import eu.etaxonomy.cdm.model.common.User;
import eu.etaxonomy.cdm.model.name.NonViralName;
import eu.etaxonomy.cdm.model.occurrence.Collection;
-import eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase;
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
import eu.etaxonomy.cdm.model.reference.Reference;
import eu.etaxonomy.taxeditor.model.TextHelper;
import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
addPage(new NonViralNameWizardPage(formFactory,
selectionElement.getConversationHolder(),
(NonViralName) entity));
- } else if (entity instanceof DerivedUnitBase) {
+ } else if (entity instanceof DerivedUnit) {
DerivedUnitFacade facade;
try {
facade = DerivedUnitFacade.NewInstance(
- (DerivedUnitBase) entity,
+ (DerivedUnit) entity,
PreferencesUtil.getDerivedUnitConfigurator());
} catch (DerivedUnitFacadeNotSupportedException e) {
// we should never get here
private void createControls(Composite parent, int style) {
- label = formFactory.createLabel(getLayoutComposite(), labelString,
+ label = formFactory.createLabel(getLayoutComposite(), labelString + " : ",
SWT.NULL);
addControl(label);
@Override
public String getLabel() {
if (label != null) {
- return label.getText();
+ return label.getText() + " : ";
}
return null;
}
import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
import eu.etaxonomy.cdm.api.facade.DerivedUnitFacadeNotSupportedException;
import eu.etaxonomy.cdm.model.description.PolytomousKeyNode;
-import eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase;
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
import eu.etaxonomy.cdm.model.taxon.TaxonBase;
import eu.etaxonomy.taxeditor.model.IElementHasDetails;
import eu.etaxonomy.taxeditor.model.PolytomousKeyRelationship;
.setTaxonBase((TaxonBase) input);
return true;
}
- if ((input instanceof DerivedUnitBase)
+ if ((input instanceof DerivedUnit)
&& (formSection instanceof IDerivedUnitFacadeDetailSection)) {
try {
- input = DerivedUnitFacade.NewInstance((DerivedUnitBase) input,
+ input = DerivedUnitFacade.NewInstance((DerivedUnit) input,
PreferencesUtil.getDerivedUnitConfigurator());
} catch (DerivedUnitFacadeNotSupportedException e) {
StoreUtil.error(getClass(), e);
+
// $Id$
/**
* Copyright (C) 2011 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.
*/
import eu.etaxonomy.cdm.model.description.PolytomousKeyNode;
import eu.etaxonomy.cdm.model.media.Media;
import eu.etaxonomy.cdm.model.name.NonViralName;
-import eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase;
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
import eu.etaxonomy.cdm.model.reference.Reference;
import eu.etaxonomy.cdm.model.taxon.TaxonBase;
import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;
+
import eu.etaxonomy.taxeditor.editor.UsageTermCollection;
import eu.etaxonomy.taxeditor.model.AbstractUtility;
import eu.etaxonomy.taxeditor.model.FeatureNodeContainer;
import eu.etaxonomy.taxeditor.view.AbstractCdmViewPart;
/**
- *
+ *
* The DetailsViewer handles the content of the details view (
* {@link DetailsViewPart}).<br>
* Depending on the type of the selected element the section of the details view
*/
public class DetailsViewer extends AbstractCdmDataViewer {
- private ISelection selection;
-
- /**
- * <p>
- * Constructor for DetailsViewer.
- * </p>
- *
- * @param parent
- * a {@link org.eclipse.swt.widgets.Composite} object.
- * @param viewPart
- * a {@link eu.etaxonomy.taxeditor.view.AbstractCdmViewPart}
- * object.
- */
- public DetailsViewer(Composite parent, AbstractCdmViewPart viewPart) {
- super(parent, viewPart);
- }
-
- // START HACK TO MAKE THE DERIVED UNIT FACADE WORK
- // since we are getting implementations of DerivedUnitBase from the bulk
- // editor
- // and not derived unit facade objects,
-
- /*
- * (non-Javadoc)
- *
- * @see
- * eu.etaxonomy.taxeditor.editor.view.AbstractCdmDataViewer#setInput(java
- * .lang.Object)
- */
- @Override
- public void setInput(Object input) {
- if (input instanceof DerivedUnitBase) {
- try {
- input = DerivedUnitFacade.NewInstance((DerivedUnitBase) input,
- PreferencesUtil.getDerivedUnitConfigurator());
- } catch (DerivedUnitFacadeNotSupportedException e) {
+ private ISelection selection;
+
+ /**
+ * <p>
+ * Constructor for DetailsViewer.
+ * </p>
+ *
+ * @param parent
+ * a {@link org.eclipse.swt.widgets.Composite} object.
+ * @param viewPart
+ * a {@link eu.etaxonomy.taxeditor.view.AbstractCdmViewPart}
+ * object.
+ */
+ public DetailsViewer(Composite parent, AbstractCdmViewPart viewPart) {
+ super(parent, viewPart);
+ }
+
+ // START HACK TO MAKE THE DERIVED UNIT FACADE WORK
+ // since we are getting implementations of DerivedUnitBase from the bulk
+ // editor
+ // and not derived unit facade objects,
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * eu.etaxonomy.taxeditor.editor.view.AbstractCdmDataViewer#setInput(java
+ * .lang.Object)
+ */
+ @Override
+ public void setInput(Object input) {
+ if (input instanceof DerivedUnit) {
+ try {
+ input = DerivedUnitFacade.NewInstance((DerivedUnit) input,
+ PreferencesUtil.getDerivedUnitConfigurator());
+ } catch (DerivedUnitFacadeNotSupportedException e) {
AbstractUtility.error(getClass(), e);
- }
- }
- super.setInput(input);
- }
-
- @Override
- protected void markViewPartDirty() {
- if (getInput() instanceof DerivedUnitFacade) {
+ }
+ }
+ super.setInput(input);
+ }
+
+ @Override
+ protected void markViewPartDirty() {
+ if (getInput() instanceof DerivedUnitFacade) {
getViewPart().changed(((DerivedUnitFacade) getInput()).innerDerivedUnit());
- }
-
- super.markViewPartDirty();
- }
-
- // END HACK TO MAKE THE DERIVED UNIT FACADE WORK
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.viewers.Viewer#refresh()
- */
- /** {@inheritDoc} */
- @Override
- protected void showParts() {
- // FIXME (CM) : Need to clean out this code.
- // Too much type checking to decide which detail view to display.
- // Need to build in a mechanism where navigators / editors are 'aware'
- // of the corresponding detail viewer.
+ }
+
+ super.markViewPartDirty();
+ }
+
+ // END HACK TO MAKE THE DERIVED UNIT FACADE WORK
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.jface.viewers.Viewer#refresh()
+ */
+ /** {@inheritDoc} */
+ @Override
+ protected void showParts() {
+ // FIXME (CM) : Need to clean out this code.
+ // Too much type checking to decide which detail view to display.
+ // Need to build in a mechanism where navigators / editors are 'aware'
+ // of the corresponding detail viewer.
Object input = getInput();
if (input instanceof TaxonBase) {
- createTaxonSections(rootElement);
+ createTaxonSections(rootElement);
} else if (input instanceof NonViralName) {
- createNameSections(rootElement);
+ createNameSections(rootElement);
} else if (input instanceof Reference) {
- createReferenceSections(rootElement);
+ createReferenceSections(rootElement);
} else if (input instanceof Team) {
- createTeamDetailSection(rootElement);
+ createTeamDetailSection(rootElement);
} else if (input instanceof Person) {
- createPersonDetailSection(rootElement);
+ createPersonDetailSection(rootElement);
} else if (input instanceof TeamOrPersonBase) {
- createTeamOrPersonBaseDetailSection(rootElement);
+ createTeamOrPersonBaseDetailSection(rootElement);
} else if (input instanceof DescriptionBase) {
Set<Marker> descriptionMarkers = ((DescriptionBase) input).getMarkers();
MarkerType useMarkertype = (MarkerType) CdmStore.getService(ITermService.class).find(
UsageTermCollection.uuidUseMarkerType);
- Boolean isUseDescription = false;
- for (Marker marker : descriptionMarkers) {
- if (marker.getMarkerType().equals(useMarkertype)) {
- isUseDescription = true;
- }
- }
+ Boolean isUseDescription = false;
+ for (Marker marker : descriptionMarkers) {
+ if (marker.getMarkerType().equals(useMarkertype)) {
+ isUseDescription = true;
+ }
+ }
if (((DescriptionBase) input).isImageGallery()) {
- createImageGallerySection(rootElement);
+ createImageGallerySection(rootElement);
- } else if (isUseDescription) {
- createUseDescriptionSection(rootElement);
- } else {
- createDescriptionSection(rootElement);
+ } else if (isUseDescription) {
+ createUseDescriptionSection(rootElement);
+ } else {
+ createDescriptionSection(rootElement);
- }
+ }
} else if (input instanceof DescriptionElementBase) {
Set<Marker> descriptionMarkers = ((DescriptionElementBase) input).getInDescription().getMarkers();
MarkerType useMarkertype = (MarkerType) CdmStore.getService(ITermService.class).find(
UsageTermCollection.uuidUseMarkerType);
- Boolean isUseDescription = false;
- for (Marker marker : descriptionMarkers) {
- if (marker.getMarkerType().equals(useMarkertype)) {
- isUseDescription = true;
- }
- }
-
+ Boolean isUseDescription = false;
+ for (Marker marker : descriptionMarkers) {
+ if (marker.getMarkerType().equals(useMarkertype)) {
+ isUseDescription = true;
+ }
+ }
+
if (isUseDescription == true && input instanceof CategoricalData) {
- createUseRecordSection(rootElement);
+ createUseRecordSection(rootElement);
} else {
- createDescriptionElementSection(rootElement);
- }
+ createDescriptionElementSection(rootElement);
+ }
} else if (input instanceof Media) {
- createMediaElementSection(rootElement);
+ createMediaElementSection(rootElement);
} else if (input instanceof DerivedUnitFacade) {
- createDerivedUnitBaseElementSection(rootElement);
+ createDerivedUnitBaseElementSection(rootElement);
} else if (input instanceof FeatureNodeContainer) {
- createFeatureDistributionSection(rootElement);
+ createFeatureDistributionSection(rootElement);
} else if (input instanceof PolytomousKey) {
- // createPolytomousKeySection(rootElement);
+ //createPolytomousKeySection(rootElement);
} else if ((input instanceof PolytomousKeyNode) || (input instanceof PolytomousKeyRelationship)) {
- createPolytomousKeyNodeSection(rootElement);
+ createPolytomousKeyNodeSection(rootElement);
} else if (input instanceof User) {
- createUserSection(rootElement);
+ createUserSection(rootElement);
} else if (input instanceof Group) {
- createGroupSection(rootElement);
+ createGroupSection(rootElement);
} else if (input instanceof TaxonRelationship) {
- createTaxonRelationshipSection(rootElement);
+ createTaxonRelationshipSection(rootElement);
} else if (input instanceof TermVocabulary) {
- createTermVocabularySection(rootElement);
+ createTermVocabularySection(rootElement);
} else if (input instanceof DefinedTermBase) {
- createDefinedTermSection(rootElement);
- } else {
- destroySections();
- }
- layout();
- }
-
- /**
- * @param rootElement
- */
- private void createGroupSection(RootElement parent) {
- destroySections();
+ createDefinedTermSection(rootElement);
+ } else {
+ destroySections();
+ }
+ layout();
+ }
+
+
+ /**
+ * @param rootElement
+ */
+ private void createGroupSection(RootElement parent) {
+ destroySections();
GroupDetailSection groupDetailSection = formFactory.createGroupDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE| ExpandableComposite.EXPANDED);
MemberDetailSection memberDetailSection = formFactory.createMemberDetailSection(getConversationHolder(), parent, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
GrantedAuthorityDetailSection grantedAuthorityDetailSection = formFactory.createGrantedAuthorityDetailSection(getConversationHolder(), parent,ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
- addPart(groupDetailSection);
- addPart(memberDetailSection);
- addPart(grantedAuthorityDetailSection);
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jface.viewers.Viewer#getSelection()
- */
- /** {@inheritDoc} */
- @Override
- public ISelection getSelection() {
- return selection;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see
- * org.eclipse.jface.viewers.Viewer#setSelection(org.eclipse.jface.viewers
- * .ISelection, boolean)
- */
- /** {@inheritDoc} */
- @Override
- public void setSelection(ISelection selection, boolean reveal) {
- this.selection = selection;
+ addPart(groupDetailSection);
+ addPart(memberDetailSection);
+ addPart(grantedAuthorityDetailSection);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.jface.viewers.Viewer#getSelection()
+ */
+ /** {@inheritDoc} */
+ @Override
+ public ISelection getSelection() {
+ return selection;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.jface.viewers.Viewer#setSelection(org.eclipse.jface.viewers
+ * .ISelection, boolean)
+ */
+ /** {@inheritDoc} */
+ @Override
+ public void setSelection(ISelection selection, boolean reveal) {
+ this.selection = selection;
SelectionChangedEvent selectionChangedEvent = new SelectionChangedEvent(this, selection);
- fireSelectionChanged(selectionChangedEvent);
- }
+ fireSelectionChanged(selectionChangedEvent);
+ }
- /**
- * createTaxonSections(RootElement parent)
+ /**
+ * createTaxonSections(RootElement parent)
*
- * @param parent
- */
- private void createTaxonSections(RootElement parent) {
- destroySections();
+ * @param parent
+ */
+ private void createTaxonSections(RootElement parent) {
+ destroySections();
TaxonBaseDetailSection taxonBaseDetailSection = formFactory.createTaxonBaseDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
NonViralNameDetailSection nonViralNameSection = formFactory.createNonViralNameDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE
| ExpandableComposite.EXPANDED);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
NomenclaturalReferenceDetailSection referenceDetailSection = formFactory.createNomenclaturalReferenceDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
NomenclaturalStatusSection nomenclaturalStatusSection = formFactory.createNomenclaturalStatusSection(getConversationHolder(), parent,ExpandableComposite.TWISTIE);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
ProtologueSection protologSection = formFactory.createProtologueSection(getConversationHolder(), parent, ExpandableComposite.TWISTIE);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
TypeDesignationSection typeDesignationSection = formFactory.createTypeDesignationSection(getConversationHolder(), parent, ExpandableComposite.TWISTIE);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
NameRelationshipDetailSection nameRelationshipSection = formFactory.createNameRelationshipDetailSection(getConversationHolder(), parent, ExpandableComposite.TWISTIE);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
ParsingMessagesSection parsingMessagesSection = formFactory.createParsingMessagesSection(getConversationHolder(), parent, this, ExpandableComposite.EXPANDED);
- addPart(taxonBaseDetailSection);
- addPart(nonViralNameSection);
- addPart(nomenclaturalStatusSection);
- addPart(protologSection);
- addPart(referenceDetailSection);
- addPart(typeDesignationSection);
- addPart(nameRelationshipSection);
- addPart(parsingMessagesSection);
- }
-
- /**
- * createNameSections
+ addPart(taxonBaseDetailSection);
+ addPart(nonViralNameSection);
+ addPart(nomenclaturalStatusSection);
+ addPart(protologSection);
+ addPart(referenceDetailSection);
+ addPart(typeDesignationSection);
+ addPart(nameRelationshipSection);
+ addPart(parsingMessagesSection);
+ }
+
+ /**
+ * createNameSections
*
- * @param parent
- */
- private void createNameSections(RootElement parent) {
- destroySections();
+ * @param parent
+ */
+ private void createNameSections(RootElement parent) {
+ destroySections();
NonViralNameDetailSection nonViralNameSection = formFactory.createNonViralNameDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
NomenclaturalReferenceDetailSection referenceDetailSection = formFactory.createNomenclaturalReferenceDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
NomenclaturalStatusSection nomenclaturalStatusSection = formFactory.createNomenclaturalStatusSection(getConversationHolder(), parent, ExpandableComposite.TWISTIE);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
ProtologueSection protologSection = formFactory.createProtologueSection(getConversationHolder(), parent, ExpandableComposite.TWISTIE);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
TypeDesignationSection typeDesignationSection = formFactory.createTypeDesignationSection(getConversationHolder(), parent, ExpandableComposite.TWISTIE);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
NameRelationshipDetailSection nameRelationshipSection = formFactory.createNameRelationshipDetailSection(getConversationHolder(), parent, ExpandableComposite.TWISTIE);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
- addPart(nonViralNameSection);
- addPart(nomenclaturalStatusSection);
- addPart(protologSection);
- addPart(referenceDetailSection);
- addPart(typeDesignationSection);
- addPart(nameRelationshipSection);
- }
+ addPart(nonViralNameSection);
+ addPart(nomenclaturalStatusSection);
+ addPart(protologSection);
+ addPart(referenceDetailSection);
+ addPart(typeDesignationSection);
+ addPart(nameRelationshipSection);
+ }
- /**
- * createReferenceSections
+ /**
+ * createReferenceSections
*
- * @param parent
- */
- private void createReferenceSections(RootElement parent) {
- destroySections();
+ * @param parent
+ */
+ private void createReferenceSections(RootElement parent) {
+ destroySections();
ReferenceDetailSection referenceDetailSection = formFactory.createReferenceDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
- addPart(referenceDetailSection);
- }
+ addPart(referenceDetailSection);
+ }
- /**
- * createTeamOrPersonBaseDetailSection
+ /**
+ * createTeamOrPersonBaseDetailSection
*
- * @param parent
- */
- private void createTeamOrPersonBaseDetailSection(RootElement parent) {
- destroySections();
+ * @param parent
+ */
+ private void createTeamOrPersonBaseDetailSection(RootElement parent) {
+ destroySections();
TeamOrPersonBaseDetailSection teamOrPersonBaseDetailSection = formFactory.createTeamOrPersonBaseDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
- addPart(teamOrPersonBaseDetailSection);
- }
+ addPart(teamOrPersonBaseDetailSection);
+ }
- /**
- * createTeamDetailSection
+ /**
+ * createTeamDetailSection
*
- * @param parent
- */
- private void createTeamDetailSection(RootElement parent) {
- destroySections();
+ * @param parent
+ */
+ private void createTeamDetailSection(RootElement parent) {
+ destroySections();
TeamDetailSection teamDetailSection = formFactory.createTeamDetailSection(getConversationHolder(), parent, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
- addPart(teamDetailSection);
- }
-
- /**
- * createPersonDetailSection
+ addPart(teamDetailSection);
+ }
+
+ /**
+ * createPersonDetailSection
*
- * @param parent
- */
- private void createPersonDetailSection(RootElement parent) {
- destroySections();
+ * @param parent
+ */
+ private void createPersonDetailSection(RootElement parent) {
+ destroySections();
PersonDetailSection personDetailSection = formFactory.createPersonDetailSection(getConversationHolder(), parent, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
- addPart(personDetailSection);
- }
+ addPart(personDetailSection);
+ }
- /**
- * createDescriptionElementSection
+ /**
+ * createDescriptionElementSection
*
- * @param parent
- */
- private void createDescriptionElementSection(RootElement parent) {
- destroySections();
+ * @param parent
+ */
+ private void createDescriptionElementSection(RootElement parent) {
+ destroySections();
DescriptionElementDetailSection descriptionElementDetailSection = formFactory.createDescriptionElementDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
DescriptionElementSourceSection descriptionElementSourceSection = formFactory.createDescriptionElementSourceSection(getConversationHolder(), parent, ExpandableComposite.TWISTIE);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
DescriptionElementMediaSection descriptionElementMediaSection = formFactory.createDescriptionElementMediaSection(getConversationHolder(), parent, ExpandableComposite.TWISTIE);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
- addPart(descriptionElementDetailSection);
- addPart(descriptionElementSourceSection);
- addPart(descriptionElementMediaSection);
- }
+ addPart(descriptionElementDetailSection);
+ addPart(descriptionElementSourceSection);
+ addPart(descriptionElementMediaSection);
+ }
- /**
- * createDescriptionSection
+ /**
+ * createDescriptionSection
*
- * @param parent
- */
- private void createDescriptionSection(RootElement parent) {
- destroySections();
+ * @param parent
+ */
+ private void createDescriptionSection(RootElement parent) {
+ destroySections();
DescriptionDetailSection descriptionDetailSection = formFactory.createDescriptionDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
NaturalLanguageSection naturalLanguageSection = formFactory.createNaturalLanguageSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
DescribedSpecimenSection describedSpecimenSection = formFactory.createDescribedSpecimenSection(getConversationHolder(), parent, ExpandableComposite.TWISTIE);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
- DescriptionSourceSection descriptionSourceSection = formFactory.createDescriptionSourceSection(getConversationHolder(), parent, ExpandableComposite.TWISTIE);
-
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+// DescriptionSourceSection descriptionSourceSection = (DescriptionSourceSection) formFactory
+// .createEntityDetailSection(EntityDetailType.DESCRIPTIONSOURCE,
+// getConversationHolder(), parent, Section.TWISTIE);
+//
+// formFactory.createHorizontalSeparator(parent, SWT.BORDER);
ScopeSection scopeSection = formFactory.createScopeSection(getConversationHolder(), parent, ExpandableComposite.TWISTIE);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
-
- addPart(descriptionDetailSection);
- addPart(naturalLanguageSection);
- addPart(describedSpecimenSection);
- addPart(descriptionSourceSection);
- addPart(scopeSection);
- }
-
- /**
- * Creates the use Description section
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+
+ addPart(descriptionDetailSection);
+ addPart(naturalLanguageSection);
+ addPart(describedSpecimenSection);
+// addPart(descriptionSourceSection);
+ addPart(scopeSection);
+ }
+
+ /**
+ * Creates the use Description section
*
- * @param parent
- */
- private void createUseDescriptionSection(RootElement parent) {
- destroySections();
+ * @param parent
+ */
+ private void createUseDescriptionSection(RootElement parent) {
+ destroySections();
DescriptionDetailSection descriptionDetailSection = formFactory.createDescriptionDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
DescriptionSourceSection descriptionSourceSection = formFactory.createDescriptionSourceSection(getConversationHolder(), parent, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
- addPart(descriptionDetailSection);
- addPart(descriptionSourceSection);
+ addPart(descriptionDetailSection);
+ addPart(descriptionSourceSection);
+
+ }
- }
- /**
- * @param rootElement
- */
- private void createImageGallerySection(RootElement parent) {
- destroySections();
+ /**
+ * @param rootElement
+ */
+ private void createImageGallerySection(RootElement parent) {
+ destroySections();
DescriptionDetailSection descriptionDetailSection = formFactory.createDescriptionDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
- addPart(descriptionDetailSection);
- }
-
- /**
- * createMediaElementSection
+ addPart(descriptionDetailSection);
+ }
+
+ /**
+ * createMediaElementSection
*
- * @param parent
- */
+ * @param parent
+ */
- private void createMediaElementSection(RootElement parent) {
- destroySections();
+ private void createMediaElementSection(RootElement parent) {
+ destroySections();
MediaDetailsSection mediaDetailSection = formFactory.createMediaDetailsSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
- addPart(mediaDetailSection);
- }
+ addPart(mediaDetailSection);
+ }
- /**
- * createDerivedUnitBaseElementSection
+ /**
+ * createDerivedUnitBaseElementSection
*
- * @param parent
- */
- private void createDerivedUnitBaseElementSection(RootElement parent) {
- destroySections();
+ * @param parent
+ */
+ private void createDerivedUnitBaseElementSection(RootElement parent) {
+ destroySections();
GeneralDetailSection generalDetailSection = formFactory.createGeneralDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
GatheringEventDetailSection gatheringEventDetailSection = formFactory.createGatheringEventDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
FieldObservationDetailSection fieldObservationDetailSection = formFactory.createFieldObservationDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
DerivedUnitBaseDetailSection derivedUnitBaseDetailSection = formFactory.createDerivedUnitBaseDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
DeterminationDetailSection determinationDetailSection = formFactory.createDeterminationDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE);
- addPart(generalDetailSection);
- addPart(gatheringEventDetailSection);
- addPart(fieldObservationDetailSection);
- addPart(derivedUnitBaseDetailSection);
- addPart(determinationDetailSection);
- }
+ addPart(generalDetailSection);
+ addPart(gatheringEventDetailSection);
+ addPart(fieldObservationDetailSection);
+ addPart(derivedUnitBaseDetailSection);
+ addPart(determinationDetailSection);
- /**
- * @param rootElement
- */
- private void createFeatureDistributionSection(RootElement parent) {
- destroySections();
+ }
+
+ /**
+ * @param rootElement
+ */
+ private void createFeatureDistributionSection(RootElement parent) {
+ destroySections();
FeatureDistributionDetailSection featureDistributionSection = formFactory.createFeatureDistributionDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
- addPart(featureDistributionSection);
- }
+ addPart(featureDistributionSection);
+ }
- /**
- * createPolytomousKeyNodeSection
+ /**
+ * createPolytomousKeyNodeSection
*
- * @param parent
- */
- private void createPolytomousKeyNodeSection(RootElement parent) {
- destroySections();
+ * @param parent
+ */
+ private void createPolytomousKeyNodeSection(RootElement parent) {
+ destroySections();
PolytomousKeyDetailSection polytomousKeyDetailSection = formFactory.createPolytomousKeyDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE | ExpandableComposite.COMPACT);
-
+
formFactory.createHorizontalSeparator(parent, SWT.BORDER);
-
+
PolytomousKeyNodeDetailSection polytomousKeyNodeDetailSection = formFactory.createPolytomousKeyNodeDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
formFactory.createHorizontalSeparator(parent, SWT.BORDER);
TaxonomicScopeSection taxonomicScopeSection = formFactory.createTaxonomicScopeSection(getConversationHolder(), parent, ExpandableComposite.TWISTIE | ExpandableComposite.COMPACT);
- addPart(polytomousKeyDetailSection);
- addPart(polytomousKeyNodeDetailSection);
- addPart(taxonomicScopeSection);
-
- }
+ addPart(polytomousKeyDetailSection);
+ addPart(polytomousKeyNodeDetailSection);
+ addPart(taxonomicScopeSection);
- /**
- * create the UseRecordSection
+ }
+
+ /**
+ * create the UseRecordSection
*
- * @param parent
- */
- private void createUseRecordSection(RootElement parent) {
- destroySections();
+ * @param parent
+ */
+ private void createUseRecordSection(RootElement parent) {
+ destroySections();
UseRecordDetailSection descriptionUseRecordSection = formFactory.createUseRecordDetailSection(getConversationHolder(), parent, this,ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
- formFactory.createHorizontalSeparator(parent, SWT.BORDER);
-
- addPart(descriptionUseRecordSection);
+ formFactory.createHorizontalSeparator(parent, SWT.BORDER);
+
+ addPart(descriptionUseRecordSection);
+
+
+ }
- }
-
- /**
- * createUserSection
+ /**
+ * createUserSection
*
- * @param parent
- */
- private void createUserSection(RootElement parent) {
- destroySections();
+ * @param parent
+ */
+ private void createUserSection(RootElement parent) {
+ destroySections();
UserDetailSection userDetailSection = formFactory.createUserDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
GroupsByUserDetailSection groupByUserDetailSection = formFactory.createGroupsByUserDetailSection(getConversationHolder(), parent, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
- addPart(userDetailSection);
- addPart(groupByUserDetailSection);
- }
+ addPart(userDetailSection);
+ addPart(groupByUserDetailSection);
+ }
- /**
- * createTaxonRelationshipSection
+ /**
+ * createTaxonRelationshipSection
*
- * @param parent
- */
- private void createTaxonRelationshipSection(RootElement parent) {
- destroySections();
+ * @param parent
+ */
+ private void createTaxonRelationshipSection(RootElement parent) {
+ destroySections();
TaxonRelationshipDetailSection taxonRelationshipDetailSection = formFactory.createTaxonRelationshipDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
ReferencedEntityDetailSection referencedEntityBaseDetailSection = formFactory.createReferencedEntityDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
- addPart(taxonRelationshipDetailSection);
- addPart(referencedEntityBaseDetailSection);
- }
+ addPart(taxonRelationshipDetailSection);
+ addPart(referencedEntityBaseDetailSection);
+ }
- /**
- * @param rootElement
- */
- private void createTermVocabularySection(RootElement parent) {
- destroySections();
+ /**
+ * @param rootElement
+ */
+ private void createTermVocabularySection(RootElement parent) {
+ destroySections();
TermVocabularyDetailSection termVocabularyDetailSection = formFactory.createTermVocabularyDetailSection(getConversationHolder(), parent, this, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
- addPart(termVocabularyDetailSection);
- }
+ addPart(termVocabularyDetailSection);
+ }
- /**
- * createDefinedTermSection
+ /**
+ * createDefinedTermSection
*
- * @param parent
- */
- private void createDefinedTermSection(RootElement parent) {
- destroySections();
+ * @param parent
+ */
+ private void createDefinedTermSection(RootElement parent) {
+ destroySections();
AbstractFormSection definedTermDetailSection = formFactory.createDefinedTermDetailSection(getInput().getClass(), getConversationHolder(), parent, this, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED);
- addPart(definedTermDetailSection);
- }
+ addPart(definedTermDetailSection);
+ }
private void createFODetailsView(RootElement parent) {
destroySections();
<REPRESENTATION ID="963" CREATED="2009-01-28 17:07:04.0" UUID="3c05a6f5-8799-4d36-85ee-135f01bee90c" TEXT="TDWG Level 2" ABBREVIATEDLABEL="" LABEL="TDWG Level 2" LANGUAGE_ID="406"/>\r
<REPRESENTATION ID="964" CREATED="2009-01-28 17:07:04.0" UUID="010f5578-5a9e-4d9c-94fe-2302a9e14dfd" TEXT=" "TDWG Level 1" ABBREVIATEDLABEL="" LABEL="TDWG Level 1" LANGUAGE_ID="406"/>\r
<REPRESENTATION ID="965" CREATED="2009-01-28 17:07:04.0" UUID="1db3d6d4-a65b-4ee8-b5dd-0b1e9539de5b" TEXT="eu.etaxonomy.cdm.model.name.NomenclaturalCode" LABEL="NomenclaturalCode" LANGUAGE_ID="406"/>\r
- <REPRESENTATION ID="966" CREATED="2009-01-28 17:07:04.0" UUID="4ba9790d-8749-48ec-89ce-3d104e3673a8" TEXT="ICBN" ABBREVIATEDLABEL="" LABEL="International Code of Botanical Nomenclature" LANGUAGE_ID="406"/>\r
+ <REPRESENTATION ID="966" CREATED="2009-01-28 17:07:04.0" UUID="4ba9790d-8749-48ec-89ce-3d104e3673a8" TEXT="ICNAFP" ABBREVIATEDLABEL="" LABEL="International Code of Botanical Nomenclature" LANGUAGE_ID="406"/>\r
<REPRESENTATION ID="967" CREATED="2009-01-28 17:07:04.0" UUID="42222d02-7af4-4eb9-87bb-020fe08ee1b8" TEXT="ICVCN" ABBREVIATEDLABEL="" LABEL="International Code of Virus Classification and Nomenclature" LANGUAGE_ID="406"/>\r
<REPRESENTATION ID="968" CREATED="2009-01-28 17:07:04.0" UUID="8c5d79e3-3ff6-4781-a298-71ea07fe7a85" TEXT="ICZN" ABBREVIATEDLABEL="" LABEL="International Code of Zoological Nomenclature" LANGUAGE_ID="406"/>\r
<REPRESENTATION ID="969" CREATED="2009-01-28 17:07:04.0" UUID="068331bf-a9da-4182-96b7-b9f7e8aa0238" TEXT="ICNCP" ABBREVIATEDLABEL="" LABEL="International Code of Nomenclature for Cultivated Plants" LANGUAGE_ID="406"/>\r
<REPRESENTATION ID="963" CREATED="2009-01-28 17:07:04.0" UUID="3c05a6f5-8799-4d36-85ee-135f01bee90c" TEXT="TDWG Level 2" ABBREVIATEDLABEL="" LABEL="TDWG Level 2" LANGUAGE_ID="406"/>\r
<REPRESENTATION ID="964" CREATED="2009-01-28 17:07:04.0" UUID="010f5578-5a9e-4d9c-94fe-2302a9e14dfd" TEXT=" "TDWG Level 1" ABBREVIATEDLABEL="" LABEL="TDWG Level 1" LANGUAGE_ID="406"/>\r
<REPRESENTATION ID="965" CREATED="2009-01-28 17:07:04.0" UUID="1db3d6d4-a65b-4ee8-b5dd-0b1e9539de5b" TEXT="eu.etaxonomy.cdm.model.name.NomenclaturalCode" LABEL="NomenclaturalCode" LANGUAGE_ID="406"/>\r
- <REPRESENTATION ID="966" CREATED="2009-01-28 17:07:04.0" UUID="4ba9790d-8749-48ec-89ce-3d104e3673a8" TEXT="ICBN" ABBREVIATEDLABEL="" LABEL="International Code of Botanical Nomenclature" LANGUAGE_ID="406"/>\r
+ <REPRESENTATION ID="966" CREATED="2009-01-28 17:07:04.0" UUID="4ba9790d-8749-48ec-89ce-3d104e3673a8" TEXT="ICNAFP" ABBREVIATEDLABEL="" LABEL="International Code of Botanical Nomenclature" LANGUAGE_ID="406"/>\r
<REPRESENTATION ID="967" CREATED="2009-01-28 17:07:04.0" UUID="42222d02-7af4-4eb9-87bb-020fe08ee1b8" TEXT="ICVCN" ABBREVIATEDLABEL="" LABEL="International Code of Virus Classification and Nomenclature" LANGUAGE_ID="406"/>\r
<REPRESENTATION ID="968" CREATED="2009-01-28 17:07:04.0" UUID="8c5d79e3-3ff6-4781-a298-71ea07fe7a85" TEXT="ICZN" ABBREVIATEDLABEL="" LABEL="International Code of Zoological Nomenclature" LANGUAGE_ID="406"/>\r
<REPRESENTATION ID="969" CREATED="2009-01-28 17:07:04.0" UUID="068331bf-a9da-4182-96b7-b9f7e8aa0238" TEXT="ICNCP" ABBREVIATEDLABEL="" LABEL="International Code of Nomenclature for Cultivated Plants" LANGUAGE_ID="406"/>\r
<properties>
<java.codelevel>1.6</java.codelevel>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
- <cdmlib.version>3.2.3-SNAPSHOT</cdmlib.version>
+ <cdmlib.version>3.3.0-SNAPSHOT</cdmlib.version>
<!-- TODO can we use project.version ????? -->
<tycho.version>0.14.0</tycho.version>
<taxeditor.version>3.2.3-SNAPSHOT</taxeditor.version>