diff --git a/visualization/plugins/org.eclipse.pde.visualization.dependency/.classpath b/visualization/plugins/org.eclipse.pde.visualization.dependency/.classpath
index 890f69d..8eee333 100644
--- a/visualization/plugins/org.eclipse.pde.visualization.dependency/.classpath
+++ b/visualization/plugins/org.eclipse.pde.visualization.dependency/.classpath
@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" path="src"/>
-	<classpathentry exported="true" kind="lib" path="Graph_1.0.0.jar"/>
 	<classpathentry exported="true" kind="lib" path="org.eclipse.draw2d_3.2.2.200703221218.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.eclipse.mylar.zest.core_0.4.0.jar"/>
 	<classpathentry exported="true" kind="lib" path="org.eclipse.mylar.zest.layouts_0.3.1.jar"/>
 	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.4">
 		<accessrules>
diff --git a/visualization/plugins/org.eclipse.pde.visualization.dependency/Graph_1.0.0.jar b/visualization/plugins/org.eclipse.pde.visualization.dependency/Graph_1.0.0.jar
deleted file mode 100644
index a87041e..0000000
--- a/visualization/plugins/org.eclipse.pde.visualization.dependency/Graph_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/visualization/plugins/org.eclipse.pde.visualization.dependency/META-INF/MANIFEST.MF b/visualization/plugins/org.eclipse.pde.visualization.dependency/META-INF/MANIFEST.MF
index 4621b44..389e683 100644
--- a/visualization/plugins/org.eclipse.pde.visualization.dependency/META-INF/MANIFEST.MF
+++ b/visualization/plugins/org.eclipse.pde.visualization.dependency/META-INF/MANIFEST.MF
@@ -10,7 +10,7 @@
  org.eclipse.ui.forms
 Eclipse-LazyStart: true
 Bundle-ClassPath: .,
- Graph_1.0.0.jar,
  org.eclipse.draw2d_3.2.2.200703221218.jar,
+ org.eclipse.mylar.zest.core_0.4.0.jar,
  org.eclipse.mylar.zest.layouts_0.3.1.jar
 Bundle-RequiredExecutionEnvironment: J2SE-1.4
diff --git a/visualization/plugins/org.eclipse.pde.visualization.dependency/build.properties b/visualization/plugins/org.eclipse.pde.visualization.dependency/build.properties
index bcf7c79..b28d10a 100644
--- a/visualization/plugins/org.eclipse.pde.visualization.dependency/build.properties
+++ b/visualization/plugins/org.eclipse.pde.visualization.dependency/build.properties
@@ -1,8 +1,8 @@
 bin.includes = META-INF/,\
                plugin.xml,\
                .,\
-               Graph_1.0.0.jar,\
                org.eclipse.draw2d_3.2.2.200703221218.jar,\
+               org.eclipse.mylar.zest.core_0.4.0.jar,\
                org.eclipse.mylar.zest.layouts_0.3.1.jar
 src.includes = src/,\
                plugin.xml,\
diff --git a/visualization/plugins/org.eclipse.pde.visualization.dependency/org.eclipse.mylar.zest.core_0.4.0.jar b/visualization/plugins/org.eclipse.pde.visualization.dependency/org.eclipse.mylar.zest.core_0.4.0.jar
new file mode 100644
index 0000000..81ac56f
--- /dev/null
+++ b/visualization/plugins/org.eclipse.pde.visualization.dependency/org.eclipse.mylar.zest.core_0.4.0.jar
Binary files differ
diff --git a/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/AbstractVisualizationLabelProvider.java b/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/AbstractVisualizationLabelProvider.java
index 866a4d2..a1f9361 100644
--- a/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/AbstractVisualizationLabelProvider.java
+++ b/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/AbstractVisualizationLabelProvider.java
@@ -16,10 +16,10 @@
 import org.eclipse.draw2d.IFigure;
 import org.eclipse.jface.viewers.ILabelProviderListener;
 import org.eclipse.mylar.zest.core.ZestStyles;
-import org.eclipse.mylar.zest.core.viewer.EntityConnectionData;
-import org.eclipse.mylar.zest.core.viewer.IConnectionStyleProvider;
-import org.eclipse.mylar.zest.core.viewer.IEntityStyleProvider;
-import org.eclipse.mylar.zest.core.viewer.StaticGraphViewer;
+import org.eclipse.mylar.zest.core.viewers.EntityConnectionData;
+import org.eclipse.mylar.zest.core.viewers.GraphViewer;
+import org.eclipse.mylar.zest.core.viewers.IConnectionStyleProvider;
+import org.eclipse.mylar.zest.core.viewers.IEntityStyleProvider;
 import org.eclipse.osgi.service.resolver.BundleDescription;
 import org.eclipse.swt.graphics.Color;
 import org.eclipse.swt.graphics.Image;
@@ -66,14 +66,14 @@
 	private HashSet interestingDependencies = new HashSet();
 	private Color disabledColor = null;
 	protected BundleDescription pinnedNode = null;
-	private StaticGraphViewer viewer;
+	private GraphViewer viewer;
 
 	/**
 	 * Create a new Abstract Visualization Label Provider
 	 * 
 	 * @param viewer
 	 */
-	public AbstractVisualizationLabelProvider(StaticGraphViewer viewer) {
+	public AbstractVisualizationLabelProvider(GraphViewer viewer) {
 		this.viewer = viewer;
 	}
 
diff --git a/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/GraphContentProvider.java b/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/GraphContentProvider.java
index e9b2d95..c8948cd 100644
--- a/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/GraphContentProvider.java
+++ b/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/GraphContentProvider.java
@@ -11,7 +11,7 @@
 package org.eclipse.pde.visualization.dependency.views;
 
 import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.mylar.zest.core.viewer.IGraphEntityContentProvider;
+import org.eclipse.mylar.zest.core.viewers.IGraphEntityContentProvider;
 import org.eclipse.osgi.service.resolver.BundleDescription;
 
 /**
diff --git a/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/HighlightDependencyLableProvider.java b/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/HighlightDependencyLableProvider.java
index 0925395..0a4db52 100644
--- a/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/HighlightDependencyLableProvider.java
+++ b/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/HighlightDependencyLableProvider.java
@@ -12,8 +12,8 @@
 
 import java.util.HashSet;
 
-import org.eclipse.mylar.zest.core.viewer.EntityConnectionData;
-import org.eclipse.mylar.zest.core.viewer.StaticGraphViewer;
+import org.eclipse.mylar.zest.core.viewers.EntityConnectionData;
+import org.eclipse.mylar.zest.core.viewers.GraphViewer;
 import org.eclipse.osgi.service.resolver.BundleDescription;
 
 /**
@@ -23,7 +23,7 @@
  */
 class HighlightDependencyLableProvider extends AbstractVisualizationLabelProvider {
 
-	public HighlightDependencyLableProvider(StaticGraphViewer viewer) {
+	public HighlightDependencyLableProvider(GraphViewer viewer) {
 		super(viewer);
 	}
 
diff --git a/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/PathDependencyAnalysis.java b/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/PathDependencyAnalysis.java
index 009c193..e4468ac 100644
--- a/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/PathDependencyAnalysis.java
+++ b/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/PathDependencyAnalysis.java
@@ -13,8 +13,8 @@
 import java.util.Arrays;
 import java.util.HashSet;
 
-import org.eclipse.mylar.zest.core.viewer.EntityConnectionData;
-import org.eclipse.mylar.zest.core.viewer.StaticGraphViewer;
+import org.eclipse.mylar.zest.core.viewers.EntityConnectionData;
+import org.eclipse.mylar.zest.core.viewers.GraphViewer;
 import org.eclipse.osgi.service.resolver.BundleDescription;
 
 /**
@@ -24,7 +24,7 @@
  */
 public class PathDependencyAnalysis extends AbstractVisualizationLabelProvider {
 
-	public PathDependencyAnalysis(StaticGraphViewer viewer) {
+	public PathDependencyAnalysis(GraphViewer viewer) {
 		super(viewer);
 	}
 
diff --git a/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/PluginVisualizationView.java b/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/PluginVisualizationView.java
index 14e5cf7..aa13551 100644
--- a/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/PluginVisualizationView.java
+++ b/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/PluginVisualizationView.java
@@ -24,11 +24,11 @@
 import org.eclipse.jface.viewers.StructuredSelection;
 import org.eclipse.jface.window.Window;
 import org.eclipse.mylar.zest.core.ZestStyles;
-import org.eclipse.mylar.zest.core.viewer.AbstractZoomableViewer;
-import org.eclipse.mylar.zest.core.viewer.IGraphEntityContentProvider;
-import org.eclipse.mylar.zest.core.viewer.IZoomableWorkbenchPart;
-import org.eclipse.mylar.zest.core.viewer.StaticGraphViewer;
-import org.eclipse.mylar.zest.core.viewer.ZoomContributionViewItem;
+import org.eclipse.mylar.zest.core.viewers.AbstractZoomableViewer;
+import org.eclipse.mylar.zest.core.viewers.GraphViewer;
+import org.eclipse.mylar.zest.core.viewers.IGraphEntityContentProvider;
+import org.eclipse.mylar.zest.core.viewers.IZoomableWorkbenchPart;
+import org.eclipse.mylar.zest.core.viewers.ZoomContributionViewItem;
 import org.eclipse.mylar.zest.layouts.LayoutAlgorithm;
 import org.eclipse.mylar.zest.layouts.LayoutStyles;
 import org.eclipse.mylar.zest.layouts.algorithms.CompositeLayoutAlgorithm;
@@ -63,7 +63,7 @@
 
 	private FormToolkit toolKit = null;
 	private Form form = null;
-	private StaticGraphViewer viewer;
+	private GraphViewer viewer;
 	private Action focusDialogAction;
 	private Action focusAction;
 	private Action pinAction;
diff --git a/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/ShortestPathDependencyAnalysis.java b/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/ShortestPathDependencyAnalysis.java
index 09316f1..3dccaa5 100644
--- a/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/ShortestPathDependencyAnalysis.java
+++ b/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/ShortestPathDependencyAnalysis.java
@@ -13,8 +13,8 @@
 import java.util.Arrays;
 import java.util.HashSet;
 
-import org.eclipse.mylar.zest.core.viewer.EntityConnectionData;
-import org.eclipse.mylar.zest.core.viewer.StaticGraphViewer;
+import org.eclipse.mylar.zest.core.viewers.EntityConnectionData;
+import org.eclipse.mylar.zest.core.viewers.GraphViewer;
 import org.eclipse.osgi.service.resolver.BundleDescription;
 
 /**
@@ -23,7 +23,7 @@
  */
 public class ShortestPathDependencyAnalysis extends AbstractVisualizationLabelProvider {
 
-	public ShortestPathDependencyAnalysis(StaticGraphViewer viewer) {
+	public ShortestPathDependencyAnalysis(GraphViewer viewer) {
 		super(viewer);
 	}
 
diff --git a/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/SmartPathDependencyAnalysis.java b/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/SmartPathDependencyAnalysis.java
index 34e176e..eb9f18a 100644
--- a/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/SmartPathDependencyAnalysis.java
+++ b/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/SmartPathDependencyAnalysis.java
@@ -13,8 +13,8 @@
 import java.util.Arrays;
 import java.util.HashSet;
 
-import org.eclipse.mylar.zest.core.viewer.EntityConnectionData;
-import org.eclipse.mylar.zest.core.viewer.StaticGraphViewer;
+import org.eclipse.mylar.zest.core.viewers.EntityConnectionData;
+import org.eclipse.mylar.zest.core.viewers.GraphViewer;
 import org.eclipse.osgi.service.resolver.BundleDescription;
 
 /**
@@ -34,7 +34,7 @@
 	 * @param viewer
 	 *            The GraphViewer
 	 */
-	public SmartPathDependencyAnalysis(StaticGraphViewer viewer) {
+	public SmartPathDependencyAnalysis(GraphViewer viewer) {
 		super(viewer);
 	}
 
diff --git a/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/VisualizationForm.java b/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/VisualizationForm.java
index 96a5a67..8ead460 100644
--- a/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/VisualizationForm.java
+++ b/visualization/plugins/org.eclipse.pde.visualization.dependency/src/org/eclipse/pde/visualization/dependency/views/VisualizationForm.java
@@ -10,7 +10,7 @@
  ******************************************************************************/
 package org.eclipse.pde.visualization.dependency.views;
 
-import org.eclipse.mylar.zest.core.viewer.StaticGraphViewer;
+import org.eclipse.mylar.zest.core.viewers.GraphViewer;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.custom.SashForm;
 import org.eclipse.swt.events.SelectionAdapter;
@@ -65,7 +65,7 @@
 	 */
 	private Form form;
 	private FormToolkit toolkit;
-	private StaticGraphViewer viewer;
+	private GraphViewer viewer;
 	private PluginVisualizationView view;
 
 	/*
@@ -120,7 +120,7 @@
 		section.setLayout(new FillLayout());
 		Composite composite = this.toolkit.createComposite(section, SWT.NONE);
 		composite.setLayout(new FillLayout());
-		viewer = new StaticGraphViewer(composite, SWT.BORDER);
+		viewer = new GraphViewer(composite, SWT.BORDER);
 		section.setClient(composite);
 	}
 
@@ -245,7 +245,7 @@
 	 * 
 	 * @return
 	 */
-	public StaticGraphViewer getGraphViewer() {
+	public GraphViewer getGraphViewer() {
 		return viewer;
 	}
 
