From 407ef987ccbc33fe73fb665da93f99b1f344e1ae Mon Sep 17 00:00:00 2001 From: Georgetta Igna <igna@fortiss.org> Date: Thu, 21 May 2015 16:25:28 +0000 Subject: [PATCH] Yellow; disabled Delete when trying to delete the background of the editor. refs 2202 --- .../kernel/ui/internal/actions/DeleteAction.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/actions/DeleteAction.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/actions/DeleteAction.java index 7ba124929..c2db7a4e3 100644 --- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/actions/DeleteAction.java +++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/actions/DeleteAction.java @@ -52,7 +52,7 @@ import org.fortiss.tooling.kernel.ui.service.IModelEditorBindingService; * @author hoelzl * @author $Author$ * @version $Rev$ - * @ConQAT.Rating YELLOW Hash: 77B414F02AC48706566ABE2730A3AABB + * @ConQAT.Rating YELLOW Hash: 321312CCB8B9B8E9973A26EEB4C895EF */ public class DeleteAction extends EObjectActionBase<EObject> { @@ -110,6 +110,15 @@ public class DeleteAction extends EObjectActionBase<EObject> { /** Compute if one given target can be deleted. */ private boolean canDelete(EObject target) { + + IWorkbenchPart activePart = + getWorkbench().getActiveWorkbenchWindow().getActivePage().getActivePart(); + if(activePart instanceof ExtendableMultiPageEditor) { + EObject editedObject = ((ExtendableMultiPageEditor)activePart).getEditedObject(); + if(editedObject.equals(target)) + return false; + } + if(!IPersistencyService.INSTANCE.isTopLevelElement(target)) { // use composition services for deletion return(IElementCompositorService.INSTANCE.canDecompose(target) || IConnectionCompositorService.INSTANCE -- GitLab