diff --git a/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/base/ui/editpart/NodeEditPartBase.java b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/base/ui/editpart/NodeEditPartBase.java
index c3860d9c46bac984563c6dc23491df692018f6ba..f5225604c352b3fec7d0c7366d6901240d9962c0 100644
--- a/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/base/ui/editpart/NodeEditPartBase.java
+++ b/org.fortiss.tooling.base.ui/trunk/src/org/fortiss/tooling/base/ui/editpart/NodeEditPartBase.java
@@ -25,13 +25,16 @@ import org.eclipse.draw2d.Label;
 import org.eclipse.draw2d.PositionConstants;
 import org.eclipse.draw2d.XYLayout;
 import org.eclipse.draw2d.geometry.Rectangle;
+import org.eclipse.gef.EditPolicy;
 import org.eclipse.gef.Request;
 import org.eclipse.gef.RequestConstants;
 import org.eclipse.swt.graphics.Color;
 import org.fortiss.tooling.base.model.layout.ILayoutedModelElement;
+import org.fortiss.tooling.base.ui.editpart.policy.RemoveEditPolicy;
 import org.fortiss.tooling.base.ui.layout.constants.RecommendedLayoutConstants;
 import org.fortiss.tooling.base.ui.layout.util.LayoutDataUtils;
 import org.fortiss.tooling.kernel.model.INamedCommentedElement;
+import org.fortiss.tooling.kernel.ui.services.IEditorService;
 import org.fortiss.tooling.kernel.ui.services.IModelElementService;
 
 /**
@@ -128,30 +131,14 @@ public abstract class NodeEditPartBase<T extends ILayoutedModelElement & INamedC
 	 */
 	@Override
 	protected void createEditPolicies() {
-		// TODO (FH): add remove policy
-		// installEditPolicy(EditPolicy.COMPONENT_ROLE, new RemoveEditPolicy());
+		installEditPolicy(EditPolicy.COMPONENT_ROLE, new RemoveEditPolicy());
 	}
 
 	/** {@inheritDoc} */
 	@Override
 	public void performRequest(Request req) {
 		if (req.getType() == RequestConstants.REQ_OPEN) {
-
-			// TODO (FH): add double-click open editor support
-			// ModelContext context = ModelContextManager.getInstance()
-			// .getContext(modelElement);
-			// CCTSEditorInput editorInput = new CCTSEditorInput(modelElement,
-			// context);
-			// try {
-			// PlatformUI.getWorkbench().getActiveWorkbenchWindow()
-			// .getActivePage()
-			// .openEditor(editorInput, CCTSBindingEditor.ID);
-			// } catch (PartInitException e) {
-			// LoggingUtils
-			// .error(CCTSModelBaseActivator.getDefault(),
-			// "Could not open editor with ID "
-			// + CCTSBindingEditor.ID, e);
-			// }
+			IEditorService.INSTANCE.openInEditor(modelElement);
 		}
 		super.performRequest(req);
 	}
diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/views/EObjectDragSourceListener.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/views/EObjectDragSourceListener.java
index e2a92d54bb3561501223b9581b0ad6b480587e4f..38bb3293b3629416a1e99477f10cc518304ae756 100644
--- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/views/EObjectDragSourceListener.java
+++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/views/EObjectDragSourceListener.java
@@ -30,7 +30,6 @@ import org.eclipse.swt.dnd.DragSourceEvent;
  * @version $Rev: 18709 $
  * @ConQAT.Rating RED Hash: 249A02E8613055D236661A34D74A461C
  */
-// TODO (FH): move to UI
 public class EObjectDragSourceListener extends DragSourceAdapter {
 
 	/** Library tree viewer */
diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/util/DragAndDropUtils.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/util/DragAndDropUtils.java
index 728669869f33a17fdaf1d32b1e78ce75bfce94ea..bb752da4f4d9d44982c8727b1a03c289e54a953a 100644
--- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/util/DragAndDropUtils.java
+++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/util/DragAndDropUtils.java
@@ -29,20 +29,19 @@ import org.fortiss.tooling.kernel.services.IPrototypeService.Prototype;
  * @version $Rev$
  * @ConQAT.Rating RED Hash: 7ABCFF777BE5B8EA5A7F4F65D264072E
  */
-// TODO (FH): move to UI
 public final class DragAndDropUtils {
 
 	/** Extracts the EObject contained in the given drop object. */
 	public static EObject extractDroppedEObject(Object data) {
 		if (data instanceof IStructuredSelection
 				&& !((IStructuredSelection) data).isEmpty()) {
-			Object result = ((IStructuredSelection) data).getFirstElement();
-			if (result instanceof Prototype) {
-				return ((Prototype) result).getPrototypeCopy();
-			}
-			if (result instanceof EObject) {
-				return (EObject) result;
-			}
+			data = ((IStructuredSelection) data).getFirstElement();
+		}
+		if (data instanceof Prototype) {
+			return ((Prototype) data).getPrototypeCopy();
+		}
+		if (data instanceof EObject) {
+			return (EObject) data;
 		}
 		return null;
 	}