diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/BMotionOutlinePage.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/BMotionOutlinePage.java
index 95e0d306393c0f4527b06c27aebbb0558aba86d1..45d130b5408148388e43dc89e422d7d1f7b8fbd2 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/BMotionOutlinePage.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/BMotionOutlinePage.java
@@ -68,12 +68,12 @@ public class BMotionOutlinePage extends ContentOutlinePage {
 	}
 
 	protected void hookOutlineViewer() {
-		// getSelectionSynchronizer().addViewer(getViewer());
+		this.viewPart.getSelectionSynchronizer().addViewer(getViewer());
 	}
 
 	protected void unhookOutlineViewer() {
 		GraphicalViewer graphicalViewer = viewPart.getGraphicalViewer();
-		// getSelectionSynchronizer().removeViewer(getViewer());
+		this.viewPart.getSelectionSynchronizer().removeViewer(getViewer());
 		if (graphicalViewer != null) {
 			if (graphicalViewer.getControl() != null
 					&& !graphicalViewer.getControl().isDisposed())
@@ -89,7 +89,7 @@ public class BMotionOutlinePage extends ContentOutlinePage {
 			initializeOverview(parent);
 			graphicalViewer.getControl().addDisposeListener(disposeListener);
 			configureOutlineViewer();
-			// hookOutlineViewer();
+			hookOutlineViewer();
 			initializeOutlineViewer();
 			createMenu();
 		}
diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/VisualizationViewPart.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/VisualizationViewPart.java
index 7c3ba5599e1293733ce2938b6f055b71ef427ac1..879e9b45851041f3dd22bbabc131930c8438ba37 100644
--- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/VisualizationViewPart.java
+++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/VisualizationViewPart.java
@@ -11,6 +11,7 @@ import org.eclipse.gef.editparts.ScalableRootEditPart;
 import org.eclipse.gef.rulers.RulerProvider;
 import org.eclipse.gef.ui.actions.ActionRegistry;
 import org.eclipse.gef.ui.parts.ScrollingGraphicalViewer;
+import org.eclipse.gef.ui.parts.SelectionSynchronizer;
 import org.eclipse.gef.ui.rulers.RulerComposite;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.widgets.Composite;
@@ -46,21 +47,23 @@ public class VisualizationViewPart extends PageBookView {
 
 	private ActionRegistry actionRegistry;
 
-	private Composite x;
+	private Composite container;
+
+	private BMotionSelectionSynchronizer selectionSynchronizer;
 
 	@Override
 	public Object getAdapter(@SuppressWarnings("rawtypes") Class type) {
 
-		// System.out.println("Try to get adapter: " + type);
-
 		// // Adapter for zoom manager
 		// if (type == ZoomManager.class)
 		// return ((ScalableRootEditPart) getGraphicalViewer()
 		// .getRootEditPart()).getZoomManager();
+
+		// Adapter for content outline page
 		if (type == IContentOutlinePage.class) {
 			return new BMotionOutlinePage(this);
 		}
-		//
+
 		// Adapter for property page
 		if (type == IPropertySheetPage.class) {
 			BMotionPropertyPage page = new BMotionPropertyPage(
@@ -76,10 +79,16 @@ public class VisualizationViewPart extends PageBookView {
 
 	}
 
+	public SelectionSynchronizer getSelectionSynchronizer() {
+		if (selectionSynchronizer == null)
+			selectionSynchronizer = new BMotionSelectionSynchronizer();
+		return selectionSynchronizer;
+	}
+
 	// Workaround for prevent recursive activiation of part
 	@Override
 	public void setFocus() {
-		x.setFocus();
+		container.setFocus();
 		super.setFocus();
 	}
 
@@ -108,21 +117,9 @@ public class VisualizationViewPart extends PageBookView {
 		return page;
 	}
 
-	@Override
-	protected void partVisible(IWorkbenchPart part) {
-		// TODO Auto-generated method stub
-		super.partVisible(part);
-	}
-
-	@Override
-	public void partActivated(IWorkbenchPart part) {
-		// System.out.println(this + " : ACTIVATE: " + part);
-		super.partActivated(part);
-	}
-
 	@Override
 	public void createPartControl(Composite parent) {
-		this.x = parent;
+		this.container = parent;
 		super.createPartControl(parent);
 	}
 
@@ -198,8 +195,6 @@ public class VisualizationViewPart extends PageBookView {
 		@Override
 		public void createControl(Composite parent) {
 			container = new RulerComposite(parent, SWT.NONE);
-			// container = new Composite(parent, SWT.NONE);
-			// container.setLayout(new FillLayout());
 			graphicalViewer = new ScrollingGraphicalViewer();
 			graphicalViewer.createControl(container);
 			configureGraphicalViewer();
@@ -209,7 +204,7 @@ public class VisualizationViewPart extends PageBookView {
 		}
 
 		protected void hookGraphicalViewer() {
-			// getSelectionSynchronizer().addViewer(getGraphicalViewer());
+			getSelectionSynchronizer().addViewer(getGraphicalViewer());
 			getSite().setSelectionProvider(getGraphicalViewer());
 		}