import eu.etaxonomy.cdm.model.name.TaxonNameBase;
import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
import eu.etaxonomy.cdm.model.reference.Reference;
-import eu.etaxonomy.cdm.model.taxon.Taxon;
+import eu.etaxonomy.cdm.model.taxon.TaxonBase;
import eu.etaxonomy.taxeditor.bulkeditor.IBulkEditorConstants;
public enum BulkEditorInputType {
return GROUP;
} else if (User.class.isAssignableFrom(clazz)) {
return USER;
- } else if (Taxon.class.isAssignableFrom(clazz)){
+ } else if (TaxonBase.class.isAssignableFrom(clazz)){
return TAXON;
} else if (Media.class.isAssignableFrom(clazz)){
return MEDIA;
Bundle-Localization: OSGI-INF/l10n/plugin
Export-Package: eu.etaxonomy.taxeditor.editor,
eu.etaxonomy.taxeditor.editor.handler,
+ eu.etaxonomy.taxeditor.editor.handler.defaultHandler,
eu.etaxonomy.taxeditor.editor.internal,
eu.etaxonomy.taxeditor.editor.key.polytomous,
eu.etaxonomy.taxeditor.editor.name,
import eu.etaxonomy.taxeditor.store.CdmStore;
-public class DefaultOpenTaxonEditorForTaxonHandler extends DefaultOpenHandlerBase<TaxonBase> {
+public class DefaultOpenTaxonEditorForTaxonBaseHandler extends DefaultOpenHandlerBase<TaxonBase> {
@Override
protected TaxonBase getEntity(UUID uuid) {
try {
EditorUtil.openTaxonBase(entity.getUuid());
} catch (PartInitException e) {
- MessagingUtils.error(DefaultOpenTaxonEditorForTaxonHandler.class, "Could not open taxon editor for taxon/synonym "+entity, e);
+ MessagingUtils.error(DefaultOpenTaxonEditorForTaxonBaseHandler.class, "Could not open taxon editor for taxon/synonym "+entity, e);
}
}
package eu.etaxonomy.taxeditor.editor.name.handler;
+import java.util.Set;
+
import org.eclipse.jface.viewers.IStructuredSelection;
import eu.etaxonomy.cdm.model.common.CdmBase;
}
private boolean isOrphaned(Object selectedElement) {
- return selectedElement instanceof Taxon && ((Taxon) selectedElement).isOrphaned();
+ if(selectedElement instanceof Taxon){
+ return ((Taxon) selectedElement).isOrphaned();
+ }
+ else if(selectedElement instanceof Synonym){
+ Set<Taxon> acceptedTaxa = ((Synonym) selectedElement).getAcceptedTaxa();
+ for (Taxon taxon : acceptedTaxa) {
+ if(!taxon.isOrphaned()){
+ return false;
+ }
+ }
+ }
+ return false;
}
}
</activeWhen>
</handler>
<handler
- class="eu.etaxonomy.taxeditor.editor.handler.defaultHandler.DefaultOpenTaxonEditorForTaxonHandler"
+ class="eu.etaxonomy.taxeditor.editor.handler.defaultHandler.DefaultOpenTaxonEditorForTaxonBaseHandler"
commandId="eu.etaxonomy.taxeditor.editor.openTaxonEditorForTaxon">
<activeWhen>
<and>