import org.eclipse.ui.IEditorPart;
import org.eclipse.ui.IViewPart;
import org.eclipse.ui.IViewReference;
+import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.handlers.HandlerUtil;
import org.eclipse.ui.texteditor.IDocumentProvider;
import org.eclipse.ui.IWorkbenchPage;
import eu.etaxonomy.cdm.api.service.IReferenceService;
import eu.etaxonomy.cdm.api.service.ITaxonService;
import eu.etaxonomy.cdm.api.service.IUserService;
+import eu.etaxonomy.cdm.api.service.config.NameDeletionConfigurator;
import eu.etaxonomy.cdm.model.agent.TeamOrPersonBase;
import eu.etaxonomy.cdm.model.common.Group;
import eu.etaxonomy.cdm.model.common.User;
import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
import eu.etaxonomy.taxeditor.store.CdmStore;
+
/**
* @author n.hoffmann
* @created Mar 11, 2011
IStructuredSelection structuredSelection = (IStructuredSelection) selection;
IEntityPersistenceService persistenceService = (IEntityPersistenceService) input;
+ IViewPart part = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage()
+ .findView("eu.etaxonomy.taxeditor.bulkeditor.view.referencingobjects");
+ if (part != null){
+ ((ReferencingObjectsView)part).dispose();
+ }
for(Object object : structuredSelection.toList()){
result = service.delete((User) object);
} else if (object instanceof TaxonNameBase){
INameService service = controller.getNameService();
- service.load(((TaxonNameBase) object).getUuid());
- result = service.delete((TaxonNameBase)object);
+ TaxonNameBase name = service.load(((TaxonNameBase) object).getUuid());
+ NameDeletionConfigurator config = new NameDeletionConfigurator();
+
+ result = service.delete(name, config);
} else if (object instanceof TaxonBase){
ITaxonService service = controller.getTaxonService();
service.load(((TaxonBase) object).getUuid());
} catch (Exception e){
MessagingUtils.messageDialog("Exception occured. Could not delete", getClass(), e.getMessage(), null);
}
- if (result.isError() || !result.getExceptions().isEmpty()){
+ if (result.isError() || result.isAbort()|| !result.getExceptions().isEmpty()){
if (!result.getExceptions().isEmpty()) {
MessagingUtils.messageDialog("Could not delete", getClass(), result.getExceptions().get(0).getMessage(), null);
}else{
}
if (result.isOk() && result.getExceptions().isEmpty()){
((BulkEditor) editor).removeAnnotatedLine(annotation);
+
}
+ if (part != null){
+ ((ReferencingObjectsView)part).refresh();
+ }
+ part = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage()
+ .findView("eu.etaxonomy.taxeditor.editor.view.descriptive");
+ if (part != null){
+ //((DescriptiveViewPart)part).dispose();
+ }
}
}
}else{