Index: tmp/org.txm.cooccurrence.chartsengine/src/org/txm/cooccurrence/chartsengine/CooccurrenceGSChartCreator.java
===================================================================
--- tmp/org.txm.cooccurrence.chartsengine/src/org/txm/cooccurrence/chartsengine/CooccurrenceGSChartCreator.java	(revision 1841)
+++ tmp/org.txm.cooccurrence.chartsengine/src/org/txm/cooccurrence/chartsengine/CooccurrenceGSChartCreator.java	(revision 1842)
@@ -21,6 +21,7 @@
  * @author sjacquot
  *
  */
+// FIXME: tests for cooccurrence chart
 public class CooccurrenceGSChartCreator extends GSChartCreator {
 
 	/**
@@ -30,12 +31,123 @@
 		// TODO Auto-generated constructor stub
 	}
 
-	/* (non-Javadoc)
-	 * @see org.txm.chartsengine.core.ChartCreator#createChart(org.txm.chartsengine.core.results.ChartResult)
-	 */
 	@Override
 	public Object createChart(ChartResult result) {
+//
+//		   String styleSheet =
+//	                "node {" +
+//	                "	fill-mode: dyn-plain;" + 
+//	                "   fill-color: grey;" +
+//	                "	size-mode: dyn-size;" + 
+//	            	"	size: 5px;" + 
+////	                "   size: 30px, 30px;" +
+////	                "   text-size: 12px;" +
+////	                "   shape: freeplane;" +
+////	      //          "   size-mode: fit;" +
+////	                "   fill-mode: none;" +
+////	                "   stroke-mode: plain;" +
+//	                "}" +
+//	                "edge {" +
+//	                "   shape: cubic-curve;" +
+//
+//
+//
+////	                "   stroke-mode: plain;" +
+//	                
+//	                "}" +
+//	                /*"node.marked {" +
+//	                "   fill-color: red;" +
+//	                "}" +*/
+//	                
+//	                "node.titre {" +
+//	                "   size: 55px, 45px;" +
+//	                "   fill-color: blue;" +
+//	                "   text-color: red;" +
+//	                "   shape: diamond;" +
+//	                "}" +
+//
+//	                "node.axe {" +
+//	                "   fill-color: blue;" +
+//	                "   text-color: blue;" +
+//	                "   shape: box;" +
+//	                "}" +
+//	                /*
+//	                "node.mot {" +
+//	                "   fill-color: green;" +
+//	                "   text-color: green;" +
+//	                "}" +*/
+//	                "node.auteur {" +
+//	                "   fill-color: red;" +
+//	                "   text-color: gray;" +
+//	                "   shape: diamond;" +
+//	                "}";
+//		
+		
+		Cooccurrence cooccurrence = (Cooccurrence) result.getParent();
+		//Graph graph = (Graph) result.getChart();
+		
+		Graph graph = new SingleGraph(cooccurrence.getSimpleName());
+//		graph.addAttribute("ui.stylesheet", styleSheet);
 
+		
+//		graph.clear();
+//		graph.clearSinks();
+//	  	
+//		Generator gen = new DorogovtsevMendesGenerator();
+//    	gen.addSink(graph);
+//    	gen.begin();
+//    	for(int i=0; i<500; i++) {
+//    	    gen.nextEvents();
+//    	}
+//    	gen.end();
+
+		//graph.addAttribute("ui.stylesheet", styleSheet);
+		//System.setProperty("org.graphstream.ui.renderer", "org.graphstream.ui.j2dviewer.J2DGraphRenderer"); // Pour les fonctionnalités avancées des CSS
+
+//		int maxSize = 20;
+//		
+//		// add query node
+//		Node rootNode = graph.addNode(cooccurrence.getQuery().getQueryString());
+//		rootNode.addAttribute("ui.size", 5);
+//		rootNode.addAttribute("ui.color", Color.RED);
+//		
+//		// add cooccurrents nodes
+//		for (int i = 0; i < cooccurrence.getLines().size(); i++) {
+//			
+//			Node n2 = graph.addNode(cooccurrence.getLines().get(i).occ);
+//			n2.addAttribute("ui.size", cooccurrence.getLines().get(i).freq / 5);
+//			
+//			graph.addEdge(String.valueOf(i), rootNode, n2);
+//
+//		}
+//		
+////		graph.addNode("A");
+////		graph.addNode("B");
+////		graph.addNode("C");
+////		graph.addEdge("AB", "A", "B");
+////		graph.addEdge("BC", "B", "C");
+////		graph.addEdge("CA", "C", "A");
+//
+//		// set text labels
+//        for (Node n : graph) {
+//        	n.setAttribute("ui.label", n.getId());
+//        }
+	
+
+		// FIXME: tests (opening a Frame with the graph but be careful, closing the Frame closes the entire RCP app)
+    	//graph.display();
+		
+		return graph;
+	}
+	
+	@Override
+	public void updateChart(ChartResult result) {
+	
+		Cooccurrence cooccurrence = (Cooccurrence) result.getParent();
+		Graph graph = (Graph) result.getChart();
+		
+		graph.clear();
+		
 		   String styleSheet =
 	                "node {" +
 	                "	fill-mode: dyn-plain;" + 
@@ -85,27 +197,8 @@
 	                "}";
 		
 		
-		Cooccurrence cooccurrence = (Cooccurrence) result.getParent();
-		//Graph graph = (Graph) result.getChart();
+		   graph.addAttribute("ui.stylesheet", styleSheet);
 		
-		Graph graph = new SingleGraph(cooccurrence.getSimpleName());
-		graph.addAttribute("ui.stylesheet", styleSheet);
-
-		
-//		graph.clear();
-//		graph.clearSinks();
-//	  	
-//		Generator gen = new DorogovtsevMendesGenerator();
-//    	gen.addSink(graph);
-//    	gen.begin();
-//    	for(int i=0; i<500; i++) {
-//    	    gen.nextEvents();
-//    	}
-//    	gen.end();
-
-		//graph.addAttribute("ui.stylesheet", styleSheet);
-		//System.setProperty("org.graphstream.ui.renderer", "org.graphstream.ui.j2dviewer.J2DGraphRenderer"); // Pour les fonctionnalités avancées des CSS
-
 		int maxSize = 20;
 		
 		// add query node
@@ -134,12 +227,9 @@
         for (Node n : graph) {
         	n.setAttribute("ui.label", n.getId());
         }
-	
 
-		// FIXME: tests (opening a Frame with the graph but be careful, closing the Frame closes the entire RCP app)
-    	//graph.display();
 		
-		return graph;
+		super.updateChart(result);
 	}
 
 	/* (non-Javadoc)
Index: tmp/org.txm.chartsengine.jfreechart.rcp/src/org/txm/chartsengine/jfreechart/rcp/swt/JFCComposite.java
===================================================================
--- tmp/org.txm.chartsengine.jfreechart.rcp/src/org/txm/chartsengine/jfreechart/rcp/swt/JFCComposite.java	(revision 1841)
+++ tmp/org.txm.chartsengine.jfreechart.rcp/src/org/txm/chartsengine/jfreechart/rcp/swt/JFCComposite.java	(revision 1842)
@@ -108,12 +108,9 @@
 	}
 
 
-	/**
-	 * Gets the chart.
-	 * @return the chart
-	 */
+	@Override
 	public JFreeChart getChart()	{
-		return ((ChartPanel) this.chartComponent).getChart();
+		return (JFreeChart) super.getChart();
 	}
 
 
Index: tmp/org.txm.chartsengine.graphstream.rcp/src/org/txm/chartsengine/graphstream/rcp/swt/GSComposite.java
===================================================================
--- tmp/org.txm.chartsengine.graphstream.rcp/src/org/txm/chartsengine/graphstream/rcp/swt/GSComposite.java	(revision 1841)
+++ tmp/org.txm.chartsengine.graphstream.rcp/src/org/txm/chartsengine/graphstream/rcp/swt/GSComposite.java	(revision 1842)
@@ -77,11 +77,6 @@
 	}
 
 	@Override
-	public Object getChart() {
-		return ((GSChartComponent) this.chartComponent).getViewer().getGraphicGraph();
-	}
-
-	@Override
 	protected IChartComponent _createChartComponent() {
 			
 			//System.setProperty("org.graphstream.ui.renderer", "org.graphstream.ui.j2dviewer.J2DGraphRenderer"); // Pour les fonctionnalités avancées des CSS
Index: tmp/org.txm.chartsengine.raster.rcp/src/org/txm/chartsengine/raster/rcp/swt/RasterComposite.java
===================================================================
--- tmp/org.txm.chartsengine.raster.rcp/src/org/txm/chartsengine/raster/rcp/swt/RasterComposite.java	(revision 1841)
+++ tmp/org.txm.chartsengine.raster.rcp/src/org/txm/chartsengine/raster/rcp/swt/RasterComposite.java	(revision 1842)
@@ -167,11 +167,6 @@
 	}
 
 
-	@Override
-	public Object getChart() {
-		return this.file;
-	}
-
 	
 	@Override
 	public EventCallBackHandler getMouseCallBackHandler() {
Index: tmp/org.txm.chartsengine.svgbatik.rcp/src/org/txm/chartsengine/svgbatik/rcp/swt/SVGChartComposite.java
===================================================================
--- tmp/org.txm.chartsengine.svgbatik.rcp/src/org/txm/chartsengine/svgbatik/rcp/swt/SVGChartComposite.java	(revision 1841)
+++ tmp/org.txm.chartsengine.svgbatik.rcp/src/org/txm/chartsengine/svgbatik/rcp/swt/SVGChartComposite.java	(revision 1842)
@@ -21,7 +21,6 @@
 import org.txm.chartsengine.core.ChartsEngine;
 import org.txm.chartsengine.rcp.IChartComponent;
 import org.txm.chartsengine.rcp.editors.ChartEditor;
-import org.txm.chartsengine.rcp.editors.ChartEditorInput;
 import org.txm.chartsengine.rcp.swt.SwingChartComposite;
 import org.txm.chartsengine.svgbatik.rcp.swing.SVGCanvas;
 import org.txm.core.messages.TXMCoreMessages;
@@ -45,7 +44,7 @@
 
 	
 	/**
-	 * The loaded SVG file.
+	 * The chart SVG file.
 	 */
 	protected File file;
 	
@@ -124,15 +123,10 @@
 	}
 
 	
-	@Override
-	public Object getChart() {
-		return this.file;
-	}
 
-
 	@Override
 	public void clearChartItemsSelection() {
-		System.err.println("SVGComposite.clearChartItemsSelection(): not implemented.");
+		Log.severe("SVGChartComposite.clearChartItemsSelection(): not implemented.");
 	}
 
 
Index: tmp/org.txm.chartsengine.rcp/src/org/txm/chartsengine/rcp/swt/ChartComposite.java
===================================================================
--- tmp/org.txm.chartsengine.rcp/src/org/txm/chartsengine/rcp/swt/ChartComposite.java	(revision 1841)
+++ tmp/org.txm.chartsengine.rcp/src/org/txm/chartsengine/rcp/swt/ChartComposite.java	(revision 1842)
@@ -253,15 +253,25 @@
 	 * Gets the chart object.
 	 * @return
 	 */
-	public abstract Object getChart();
+	public Object getChart()	{
+		return this.getChartResult().getChart();
+	};
 
 	
 	/**
+	 * Gets the linked result.
+	 * @return
+	 */
+	public ChartResult getChartResult()	{
+		return this.chartEditor.getResult();
+	}
+	
+	/**
 	 * Gets the charts engine of the linked result.
 	 * @return
 	 */
 	public ChartsEngine getChartsEngine()	{
-		return this.chartEditor.getChartsEngine();
+		return this.getChartResult().getChartsEngine();
 	}
 	
 	/**
