Index: tmp/org.txm.progression.core/src/org/txm/progression/core/functions/Progression.java
===================================================================
--- tmp/org.txm.progression.core/src/org/txm/progression/core/functions/Progression.java	(revision 2530)
+++ tmp/org.txm.progression.core/src/org/txm/progression/core/functions/Progression.java	(revision 2531)
@@ -80,10 +80,10 @@
 	public static final String DENSITY_CHART_TYPE = "density"; //$NON-NLS-1$
 	
 	/** The Xmin corpus. */
-	protected int XminCorpus;
+	protected int xMinCorpus;
 	
 	/** The Xmax corpus. */
-	protected int XmaxCorpus;
+	protected int xMaxCorpus;
 	
 	/** The writer. */
 	private BufferedWriter writer;
@@ -97,7 +97,7 @@
 	/** The structurenames. */
 	protected String[] structureNames;
 	
-	/** graph boundaries. */
+	/** chart boundaries. */
 	protected int maxY;
 	
 	/** The max x. */
@@ -400,14 +400,14 @@
 	public boolean stepQueries(List<QueryResult> queryResults) throws CqiClientException {
 		if (queryResults.size() != queries.size()) return false;
 		
-		maxX = getCorpus().getSize();
+		this.maxX = this.getCorpus().getSize();
 		int npositions = 0;
 		for (int iQuery = 0; iQuery < queries.size(); iQuery++) {
 			QueryResult result = queryResults.get(iQuery);
 			
 			int nLines = result.getNMatch();
-			if (maxY < nLines) {
-				maxY = nLines;
+			if (this.maxY < nLines) {
+				this.maxY = nLines;
 			}
 			
 			List<Match> matches = null;
@@ -421,7 +421,7 @@
 			int[] positions = new int[matches.size()];
 			// System.out.println("nb positions "+matches.size());
 			// if (matches.size() > 0)
-			allPositions.add(positions);
+			this.allPositions.add(positions);
 			int i = 0;
 			for (Match m : matches) {
 				positions[i++] = m.getStart();
@@ -437,7 +437,7 @@
 	 * @throws CqiClientException the cqi client exception
 	 */
 	public boolean stepQueries() throws CqiClientException {
-		maxX = getCorpus().getSize();
+		this.maxX = this.getCorpus().getSize();
 		int npositions = 0;
 		
 		for (int iQuery = 0; iQuery < queries.size(); iQuery++) {
@@ -570,24 +570,24 @@
 	 * @throws CqiClientException the cqi client exception
 	 */
 	public boolean stepFinalize() throws CqiClientException {
-		if (getCorpus() instanceof Subcorpus) {
+		if (this.getCorpus() instanceof Subcorpus) {
 			List<Match> matches = ((Subcorpus) getCorpus()).getMatches();
 			if (matches.size() == 0) {
 				System.out.println(ProgressionCoreMessages.errorColonSubcorpusWithSize0);
 				return false;
 			}
 			
-			XminCorpus = matches.get(0).getStart();
-			XmaxCorpus = matches.get(matches.size() - 1).getEnd();
+			xMinCorpus = matches.get(0).getStart();
+			xMaxCorpus = matches.get(matches.size() - 1).getEnd();
 		}
 		else {
-			XminCorpus = 0;
-			XmaxCorpus = getCorpus().getSize();
+			xMinCorpus = 0;
+			xMaxCorpus = getCorpus().getSize();
 		}
 		// System.out.println("min: "+XminCorpus+ "max: "+XmaxCorpus);
 		
 		if (bande <= 0) {
-			bande = ((XmaxCorpus - XminCorpus) / 100) * bandeMultiplier;
+			bande = ((xMaxCorpus - xMinCorpus) / 100) * bandeMultiplier;
 			if (bande == 0) {
 				bande = 1.0f;
 			}
@@ -746,14 +746,14 @@
 	 * @return the xminCorpus
 	 */
 	public int getXminCorpus() {
-		return XminCorpus;
+		return xMinCorpus;
 	}
 	
 	/**
 	 * @return the xmaxCorpus
 	 */
 	public int getXmaxCorpus() {
-		return XmaxCorpus;
+		return xMaxCorpus;
 	}
 	
 	
Index: tmp/org.txm.progression.core/src/org/txm/progression/core/chartsengine/jfreechart/JFCProgressionCumulativeChartCreator.java
===================================================================
--- tmp/org.txm.progression.core/src/org/txm/progression/core/chartsengine/jfreechart/JFCProgressionCumulativeChartCreator.java	(revision 2530)
+++ tmp/org.txm.progression.core/src/org/txm/progression/core/chartsengine/jfreechart/JFCProgressionCumulativeChartCreator.java	(revision 2531)
@@ -25,6 +25,7 @@
 import org.txm.progression.core.functions.Progression;
 import org.txm.progression.core.messages.ProgressionCoreMessages;
 import org.txm.progression.core.preferences.ProgressionPreferences;
+import org.txm.searchengine.cqp.clientExceptions.CqiClientException;
 import org.txm.searchengine.cqp.corpus.query.CQLQuery;
 
 /**
@@ -34,12 +35,12 @@
  *
  */
 public class JFCProgressionCumulativeChartCreator extends JFCChartCreator implements ProgressionChartCreator {
-
-
+	
+	
 	@Override
 	public JFreeChart createChart(ChartResult result) {
-
 		
+		
 		Progression progression = (Progression) result;
 		
 		// parameters
@@ -47,167 +48,188 @@
 		
 		
 		JFreeChart chart = null;
-
+		
 		// Creates the empty dataset
 		XYSeriesCollection dataset = new XYSeriesCollection();
 		// Y axis label
 		String yAxisLabel;
-
 		
+		
 		// Cumulative
-		if(cumulative)	{
-
+		if (cumulative) {
+			
 			// Create the chart
 			yAxisLabel = ProgressionCoreMessages.occurrences;
-			chart = this.getChartsEngine().createXYStepChart(dataset, Utils.createProgressionChartTitle(progression, cumulative),
-					ProgressionCoreMessages.bind(ProgressionCoreMessages.tEqualsP0, progression.getXmaxCorpus()), yAxisLabel, true, true, true, true, true);
-
-
+			try {
+				chart = this.getChartsEngine().createXYStepChart(dataset, Utils.createProgressionChartTitle(progression, cumulative),
+						ProgressionCoreMessages.bind(ProgressionCoreMessages.tEqualsP0, progression.getCorpus().getSize()), yAxisLabel, true, true, true, true, true);
+			}
+			catch (CqiClientException e) {
+				// TODO Auto-generated catch block
+				e.printStackTrace();
+			}
+			
+			
 			// Custom renderer
 			chart.getXYPlot().setRenderer(new ProgressionItemSelectionRenderer());
-
+			
 		}
 		// FIXME : Density, to implement when textometry R package will store the result in the Progression class
 		// FIXME: put that in a new ChartCreator dedicated to the density progression chart
-		else	{
-
+		else {
+			
 			// FIXME : density not yet implemented
 			System.err.println("JFCProgressionCumulativeChartCreator.createChart(): density mode not yet implemented.");
-
-//			for(int i = 0; i < progression.getAllpositions().size(); i++) {
-//				int[] liste = positions.get(i);
-//				Query query = queries.get(i);
-//				XYSeries series = new XYSeries(query.toString() + " " + liste.length);
-//
-//				for(int j = 0; j <  liste.length; j++) {
-//
-//					// FIXME : tests y
-//					// y <- c( c(0), y , c(y[[length(x)]]) ) // R code
-//					// FIXME : random Y value
-//					double y = progression.getAllpositions().get(i)[j] * Math.random();
-//	//				double y = progression.getAllpositions().get(i)[j];
-//					series.add(liste[j], y);
-//				}
-//				dataset.addSeries(series);
-//			}
-//
-//			// Create the chart
-//			yAxisLabel =  ProgressionCoreMessages.ChartsEngine_PROGRESSION_Y_AXIS_NOT_CUMULATIVE_LABEL;
-//			chart = this.getChartsEngine().createXYLineChart(dataset, Utils.createProgressionChartTitle(progression, cumulative),
-//					ProgressionCoreMessages.bind(ProgressionCoreMessages.tEqualsP0, progression.getXmaxCorpus()), yAxisLabel,
-//					true, true, true, false, true, false, true, null);
+			
+			// for(int i = 0; i < progression.getAllpositions().size(); i++) {
+			// int[] liste = positions.get(i);
+			// Query query = queries.get(i);
+			// XYSeries series = new XYSeries(query.toString() + " " + liste.length);
+			//
+			// for(int j = 0; j < liste.length; j++) {
+			//
+			// // FIXME : tests y
+			// // y <- c( c(0), y , c(y[[length(x)]]) ) // R code
+			// // FIXME : random Y value
+			// double y = progression.getAllpositions().get(i)[j] * Math.random();
+			// // double y = progression.getAllpositions().get(i)[j];
+			// series.add(liste[j], y);
+			// }
+			// dataset.addSeries(series);
+			// }
+			//
+			// // Create the chart
+			// yAxisLabel = ProgressionCoreMessages.ChartsEngine_PROGRESSION_Y_AXIS_NOT_CUMULATIVE_LABEL;
+			// chart = this.getChartsEngine().createXYLineChart(dataset, Utils.createProgressionChartTitle(progression, cumulative),
+			// ProgressionCoreMessages.bind(ProgressionCoreMessages.tEqualsP0, progression.getXmaxCorpus()), yAxisLabel,
+			// true, true, true, false, true, false, true, null);
 		}
-
-
-
-        ((IRendererWithItemSelection) chart.getXYPlot().getRenderer()).getItemsSelector().setResult(progression);
-
 		
+		
+		
+		((IRendererWithItemSelection) chart.getXYPlot().getRenderer()).getItemsSelector().setResult(progression);
+		
+		
 		return chart;
 		
 	}
-
-
+	
+	
 	@Override
 	public void updateChart(ChartResult result) {
-
+		
 		Progression progression = (Progression) result;
 		JFreeChart chart = (JFreeChart) result.getChart();
-
+		
 		// freeze rendering while computing
 		chart.setNotify(false);
 		
 		
 		// Fill the data set from the result
 		// FIXME: SJ: the tests on queries is not sufficient, it does not work when we switch from R chart to JFC chart because the queries didn't change
-		//if(progression.hasParameterChanged(TXMPreferences.QUERIES))	{
-			
-			XYSeriesCollection dataset = (XYSeriesCollection) chart.getXYPlot().getDataset();
-			dataset.removeAllSeries();
-			
-			List<int[]> positions = progression.getAllPositions();
-			List<CQLQuery> queries = progression.getQueries();
-			for(int i = 0; i < positions.size(); i++) {
-				int[] list = positions.get(i);
-				CQLQuery query = queries.get(i);
-				XYSeries series = new XYSeries(query.toString() + " " + list.length);
-				int c = 1;
-				for(int j = 0; j < list.length; j++) {
-					// add a first point to draw a vertical line
-					if(j == 0)	{
-						series.add(list[j], 0);
-					}
-					series.add(list[j], c++);
+		// if(progression.hasParameterChanged(TXMPreferences.QUERIES)) {
+		
+		XYSeriesCollection dataset = (XYSeriesCollection) chart.getXYPlot().getDataset();
+		dataset.removeAllSeries();
+		
+		List<int[]> positions = progression.getAllPositions();
+		List<CQLQuery> queries = progression.getQueries();
+		for (int i = 0; i < positions.size(); i++) {
+			int[] list = positions.get(i);
+			CQLQuery query = queries.get(i);
+			XYSeries series = new XYSeries(query.toString() + " " + list.length);
+			int c = 1;
+			for (int j = 0; j < list.length; j++) {
+				// add a first point to draw a vertical line
+				if (j == 0) {
+					series.add(list[j], 0);
 				}
-	
-				// add a dummy point to draw horizontal line between last point and max X corpus
-				series.add(progression.getXmaxCorpus(), --c);
-				dataset.addSeries(series);
+				series.add(list[j], c++);
 			}
 			
-			// Custom domain axis for ticks drawing options
-			chart.getXYPlot().setDomainAxis(new ExtendedNumberAxis((NumberAxis) chart.getXYPlot().getDomainAxis(), true, true, progression.getXminCorpus(), progression.getXmaxCorpus()));
-
-			// Custom range axis for ticks drawing options
-			chart.getXYPlot().setRangeAxis(new ExtendedNumberAxis((NumberAxis) chart.getXYPlot().getRangeAxis(), false, true, 0, progression.getMaxY()));
-
-			// Match the X-axis origin value to the min x corpus (for subcorpus case)
-			chart.getXYPlot().getDomainAxis().setLowerBound(progression.getXminCorpus());
-		//}
+			// add a dummy point to draw horizontal line between last point and max X corpus
+			series.add(progression.getXmaxCorpus(), --c);
+			dataset.addSeries(series);
+		}
 		
+		// Custom domain axis for ticks drawing options
+		chart.getXYPlot().setDomainAxis(new ExtendedNumberAxis((NumberAxis) chart.getXYPlot().getDomainAxis(), true, true, progression.getXminCorpus(), progression.getXmaxCorpus()));
 		
+		// Custom range axis for ticks drawing options
+		chart.getXYPlot().setRangeAxis(new ExtendedNumberAxis((NumberAxis) chart.getXYPlot().getRangeAxis(), false, true, 0, progression.getMaxY()));
 		
+		
+		// chart.getXYPlot().getDomainAxis().setRange(progression.getXminCorpus(), progression.getXmaxCorpus());
+		// System.out.println("JFCProgressionCumulativeChartCreator.updateChart()" + progression.getXminCorpus());
+		
+		// // Match the X-axis origin value to the min x corpus (for sub-corpus case)
+		// chart.getXYPlot().getDomainAxis().setLowerBound(progression.getXminCorpus());
+		//
+		// // Match the X-axis max value to the max x corpus (for sub-corpus case)
+		// chart.getXYPlot().getDomainAxis().setUpperBound(progression.getXmaxCorpus());
+		
+		
+		((NumberAxis) chart.getXYPlot().getDomainAxis()).setAutoRangeIncludesZero(false);
+		
+		
+		
+		
+		
+		// }
+		
+		
+		
 		// removes all existing domain marker
 		chart.getXYPlot().clearDomainMarkers();
 		
 		// Add the limit markers
-		BasicStroke dashedStroke = new BasicStroke(0.5f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND, 1f, new float[] {2f}, 0f);
+		BasicStroke dashedStroke = new BasicStroke(0.5f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND, 1f, new float[] { 2f }, 0f);
 		Marker marker = new ValueMarker(progression.getXminCorpus());
-        marker.setPaint(Color.gray);
-        marker.setStroke(dashedStroke);
-        chart.getXYPlot().addDomainMarker(marker);
+		marker.setPaint(Color.gray);
+		marker.setStroke(dashedStroke);
+		chart.getXYPlot().addDomainMarker(marker);
 		marker = new ValueMarker(progression.getXmaxCorpus());
-        marker.setPaint(Color.gray);
-        marker.setStroke(dashedStroke);
-        chart.getXYPlot().addDomainMarker(marker);
-
-
-//        // FIXME : limit with annotations rather than markers (marker height is dynamically adapted to the real chart height.
-        // Annotation have a fixed height)
-//        XYLineAnnotation annotation = new XYLineAnnotation(0, 0, 0, dataset.getRangeUpperBound(true), dashedStroke, Color.gray);
-//        chart.getXYPlot().addAnnotation(annotation, true);
-
+		marker.setPaint(Color.gray);
+		marker.setStroke(dashedStroke);
+		chart.getXYPlot().addDomainMarker(marker);
+		
+		
+		// // FIXME : limit with annotations rather than markers (marker height is dynamically adapted to the real chart height.
+		// Annotation have a fixed height)
+		// XYLineAnnotation annotation = new XYLineAnnotation(0, 0, 0, dataset.getRangeUpperBound(true), dashedStroke, Color.gray);
+		// chart.getXYPlot().addAnnotation(annotation, true);
+		
 		// Add the part markers
-        String previousPartName = ""; //$NON-NLS-1$
-		if(progression.getStructuralUnit() != null && progression.getStructurePositions().length > 0)	{
-			for(int i = 0; i < progression.getStructurePositions().length; i++) {
-				if(progression.getStructurePositions()[i] != 0)	{
+		String previousPartName = ""; //$NON-NLS-1$
+		if (progression.getStructuralUnit() != null && progression.getStructurePositions().length > 0) {
+			for (int i = 0; i < progression.getStructurePositions().length; i++) {
+				if (progression.getStructurePositions()[i] != 0) {
 					
 					String currentPartName = progression.getStructureNames()[i];
 					
-					if(progression.isRepeatingValues() || !currentPartName.equals(previousPartName))	{
-					
+					if (progression.isRepeatingValues() || !currentPartName.equals(previousPartName)) {
+						
 						marker = new ValueMarker(progression.getStructurePositions()[i]);
-				        marker.setPaint(Color.black);
-				        marker.setLabel(progression.getStructureNames()[i]);
-				        marker.setLabelAnchor(RectangleAnchor.TOP_RIGHT);
-				        marker.setLabelTextAnchor(TextAnchor.HALF_ASCENT_LEFT);
-	
-	
-				        // FIXME: test of rotated annotations rather than using marker label. The problem with this is that the position of annotation is not adjusted when zooming/dezooming.
-				        // FIXME: the best approach is to redefine the drawing method of
-	////			        double start = marker.getStartValue();
-	////			        double end = TempIntervalMarker.getEndValue();
-	////			        double middle = (end - start)/2;
-	//			        XYTextAnnotation updateLabel = new XYTextAnnotation("Update", progression.getStructurePositions()[i], 0);
-	//			        updateLabel.setFont(new Font("Sans Serif", Font.BOLD, 10));
-	//			        updateLabel.setRotationAnchor(TextAnchor.BASELINE_CENTER);
-	//			        updateLabel.setTextAnchor(TextAnchor.BASELINE_CENTER);
-	//			        updateLabel.setRotationAngle(3.14 / 2);
-	//			        updateLabel.setPaint(Color.black);
-	//			        chart.getXYPlot().addAnnotation(updateLabel);
-	
-				        chart.getXYPlot().addDomainMarker(marker);
+						marker.setPaint(Color.black);
+						marker.setLabel(progression.getStructureNames()[i]);
+						marker.setLabelAnchor(RectangleAnchor.TOP_RIGHT);
+						marker.setLabelTextAnchor(TextAnchor.HALF_ASCENT_LEFT);
+						
+						
+						// FIXME: test of rotated annotations rather than using marker label. The problem with this is that the position of annotation is not adjusted when zooming/dezooming.
+						// FIXME: the best approach is to redefine the drawing method of
+						//// double start = marker.getStartValue();
+						//// double end = TempIntervalMarker.getEndValue();
+						//// double middle = (end - start)/2;
+						// XYTextAnnotation updateLabel = new XYTextAnnotation("Update", progression.getStructurePositions()[i], 0);
+						// updateLabel.setFont(new Font("Sans Serif", Font.BOLD, 10));
+						// updateLabel.setRotationAnchor(TextAnchor.BASELINE_CENTER);
+						// updateLabel.setTextAnchor(TextAnchor.BASELINE_CENTER);
+						// updateLabel.setRotationAngle(3.14 / 2);
+						// updateLabel.setPaint(Color.black);
+						// chart.getXYPlot().addAnnotation(updateLabel);
+						
+						chart.getXYPlot().addDomainMarker(marker);
 					}
 					
 					previousPartName = currentPartName;
@@ -220,36 +242,36 @@
 		super.updateChart(result);
 		
 	}
-
+	
 	@Override
 	public ArrayList<Integer> getSelectedPointPositions(Object chart) {
-
-		MultipleItemsSelector selector = (MultipleItemsSelector) ((IRendererWithItemSelection)((JFreeChart) chart).getXYPlot().getRenderer()).getItemsSelector();
-		ArrayList<Integer> pointPositionsInCorpora = new ArrayList<Integer>();
-
-
+		
+		MultipleItemsSelector selector = (MultipleItemsSelector) ((IRendererWithItemSelection) ((JFreeChart) chart).getXYPlot().getRenderer()).getItemsSelector();
+		ArrayList<Integer> pointPositionsInCorpora = new ArrayList<>();
+		
+		
 		// FIXME: returns all the point positions
 		XYDataset dataset = ((JFreeChart) chart).getXYPlot().getDataset();
-		for(int i = 0; i < selector.getSelectedSeries().length; i++) {
+		for (int i = 0; i < selector.getSelectedSeries().length; i++) {
 			int selectedSeries = selector.getSelectedSeries()[i];
-			int[] selectedItemsInSeries = selector.getSelectedItems(selectedSeries) ;
-			for(int j = 0; j < selectedItemsInSeries.length; j++) {
+			int[] selectedItemsInSeries = selector.getSelectedItems(selectedSeries);
+			for (int j = 0; j < selectedItemsInSeries.length; j++) {
 				// if it's the dummy last chart point, get the previous point position instead of ther last one
-				if(selectedItemsInSeries[j] == dataset.getItemCount(selectedSeries) - 1)	{
+				if (selectedItemsInSeries[j] == dataset.getItemCount(selectedSeries) - 1) {
 					pointPositionsInCorpora.add((int) (dataset.getXValue(selectedSeries, selectedItemsInSeries[j] - 1)));
 				}
-				else	{
+				else {
 					pointPositionsInCorpora.add((int) (dataset.getXValue(selectedSeries, selectedItemsInSeries[j])));
 				}
 			}
 			
 		}
-
+		
 		// put the last selected point at the end of the list
-		if(selector.getLastSelectedSeries() != -1 && selector.getLastSelectedItem() != -1)	{
+		if (selector.getLastSelectedSeries() != -1 && selector.getLastSelectedItem() != -1) {
 			int item = selector.getLastSelectedItem();
 			// if it's the dummy last chart point, get the previous point position instead of ther last one
-			if(item == dataset.getItemCount(selector.getLastSelectedSeries()) - 1)	{
+			if (item == dataset.getItemCount(selector.getLastSelectedSeries()) - 1) {
 				item--;
 			}
 			
@@ -259,26 +281,26 @@
 		}
 		return pointPositionsInCorpora;
 	}
-
+	
 	@Override
 	public ArrayList<Integer> getSelectedPointNumbers(Object chart) {
-
-		MultipleItemsSelector selector = (MultipleItemsSelector) ((IRendererWithItemSelection)((JFreeChart) chart).getXYPlot().getRenderer()).getItemsSelector();
-		ArrayList<Integer> pointNumbers = new ArrayList<Integer>();
+		
+		MultipleItemsSelector selector = (MultipleItemsSelector) ((IRendererWithItemSelection) ((JFreeChart) chart).getXYPlot().getRenderer()).getItemsSelector();
+		ArrayList<Integer> pointNumbers = new ArrayList<>();
 		XYDataset dataset = ((JFreeChart) chart).getXYPlot().getDataset();
 		
-		for(int i = 0; i < selector.getSelectedSeriesCount(); i++) {
+		for (int i = 0; i < selector.getSelectedSeriesCount(); i++) {
 			int series = selector.getSelectedSeries()[i];
 			int[] items = selector.getSelectedItems(series);
-			int lastDummyItem = dataset.getItemCount(series) - 1; 
-			for(int j = 0; j < items.length; j++) {
+			int lastDummyItem = dataset.getItemCount(series) - 1;
+			for (int j = 0; j < items.length; j++) {
 				int item = items[j];
 				// manage the first dummy point
-				if(item == 0)	{
+				if (item == 0) {
 					item++;
 				}
 				// manage the last dummy point
-				else if(item == lastDummyItem)	 {
+				else if (item == lastDummyItem) {
 					item--;
 				}
 				
@@ -289,53 +311,53 @@
 		return pointNumbers;
 	}
 	
-
 	
+	
 	@Override
 	public ArrayList<ArrayList<Integer>> getAllPointPositionsBySeries(Object chart) {
-
-		ArrayList<ArrayList<Integer>> pointPositionsBySeries = new ArrayList<ArrayList<Integer>>();
 		
+		ArrayList<ArrayList<Integer>> pointPositionsBySeries = new ArrayList<>();
+		
 		XYDataset dataset = ((JFreeChart) chart).getXYPlot().getDataset();
-
-		for(int i = 0; i < dataset.getSeriesCount(); i++) {
-			ArrayList<Integer> pointPositionsInCorpora = new ArrayList<Integer>();
-			for(int j = 0; j < dataset.getItemCount(i) - 1; j++) { // -1 to skip the last dummy point of the step chart
+		
+		for (int i = 0; i < dataset.getSeriesCount(); i++) {
+			ArrayList<Integer> pointPositionsInCorpora = new ArrayList<>();
+			for (int j = 0; j < dataset.getItemCount(i) - 1; j++) { // -1 to skip the last dummy point of the step chart
 				pointPositionsInCorpora.add((int) dataset.getXValue(i, j));
 			}
 			pointPositionsBySeries.add(pointPositionsInCorpora);
 		}
-
+		
 		return pointPositionsBySeries;
 	}
-
 	
 	
+	
 	@Override
 	public ArrayList<Integer> getSelectedSeries(Object chart) {
-		ArrayList<Integer> selectedSeries = new ArrayList<Integer>();
-		MultipleItemsSelector selector = (MultipleItemsSelector) ((IRendererWithItemSelection)((JFreeChart) chart).getXYPlot().getRenderer()).getItemsSelector();
+		ArrayList<Integer> selectedSeries = new ArrayList<>();
+		MultipleItemsSelector selector = (MultipleItemsSelector) ((IRendererWithItemSelection) ((JFreeChart) chart).getXYPlot().getRenderer()).getItemsSelector();
 		Integer[] multipleSelectedSeries = selector.getSelectedSeries();
-		for(int i = 0; i < multipleSelectedSeries.length; i++) {
+		for (int i = 0; i < multipleSelectedSeries.length; i++) {
 			selectedSeries.add(multipleSelectedSeries[i]);
 		}
 		return selectedSeries;
 	}
-
-
+	
+	
 	@Override
 	public int getLastSelectedSeries(Object chart) {
-		return ((MultipleItemsSelector) ((IRendererWithItemSelection)((JFreeChart) chart).getXYPlot().getRenderer()).getItemsSelector()).getLastSelectedSeries();
+		return ((MultipleItemsSelector) ((IRendererWithItemSelection) ((JFreeChart) chart).getXYPlot().getRenderer()).getItemsSelector()).getLastSelectedSeries();
 	}
-
 	
 	
+	
 	@Override
 	public Class getResultDataClass() {
 		return Progression.class;
 	}
-
-
 	
-
-}
\ No newline at end of file
+	
+	
+	
+}
Index: tmp/org.txm.progression.core/src/org/txm/progression/core/chartsengine/r/RProgressionBaseChartCreator.java
===================================================================
--- tmp/org.txm.progression.core/src/org/txm/progression/core/chartsengine/r/RProgressionBaseChartCreator.java	(revision 2530)
+++ tmp/org.txm.progression.core/src/org/txm/progression/core/chartsengine/r/RProgressionBaseChartCreator.java	(revision 2531)
@@ -27,18 +27,19 @@
  *
  */
 public class RProgressionBaseChartCreator extends RChartCreator implements ProgressionChartCreator {
-
-
-
+	
+	
+	
 	/**
 	 * Creates a progression chart file.
+	 * 
 	 * @param result
 	 * @param file
 	 * @param cumulative
 	 * @return
 	 */
 	public File createChartFile(ChartResult result, File file, boolean cumulative) {
-
+		
 		try {
 			
 			Progression progression = (Progression) result;
@@ -53,7 +54,7 @@
 			
 			List<int[]> allPositions = progression.getAllPositions();
 			String listString = "list("; //$NON-NLS-1$
-			for(int i = 0; i < allPositions.size(); i++) {
+			for (int i = 0; i < allPositions.size(); i++) {
 				int[] positions = allPositions.get(i);
 				// System.out.println("add vector "+i);
 				rw.eval("rm(x" + i + ")"); //$NON-NLS-1$ //$NON-NLS-2$
@@ -64,83 +65,85 @@
 			// System.out.println("create positions");
 			rw.eval("rm(positions)"); //$NON-NLS-1$
 			rw.eval("positions <- " + listString); //$NON-NLS-1$
-
+			
 			rw.eval("rm(structurepositions)"); //$NON-NLS-1$
 			rw.addVectorToWorkspace("structurepositions", progression.getStructurePositions()); //$NON-NLS-1$
 			rw.eval("rm(structurenames)"); //$NON-NLS-1$
 			// if (structurenames != null) structurenames = new
 			// String[structurepositions.length];
-			for(int i = 0; i < progression.getStructureNames().length; i++) { // Fix empty attribute values
-				if("".equals(progression.getStructureNames()[i]) || progression.getStructureNames()[i] == null) {  //$NON-NLS-1$
+			for (int i = 0; i < progression.getStructureNames().length; i++) { // Fix empty attribute values
+				if ("".equals(progression.getStructureNames()[i]) || progression.getStructureNames()[i] == null) {  //$NON-NLS-1$
 					progression.getStructureNames()[i] = "--"; //$NON-NLS-1$
 				}
 			}
 			rw.addVectorToWorkspace("structurenames", progression.getStructureNames()); //$NON-NLS-1$
 			// System.out.println("create list positions");
 			// rw.getConnection().assign("positions",Rpositions);
-
+			
 			this.getChartsEngine().setColors(renderingColorMode, progression.getQueries().size());
 			
-//			if(monochrome) {
-//				rw.addVectorToWorkspace("colors", DefaultTheme.monocolors); //$NON-NLS-1$
-//			}
-//			else {
-//				if(progression.getQueries().size() <= 5) {
-//					// System.out.println("uses colors5");
-//					
-//					
-//					rw.addVectorToWorkspace("colors", this.getChartsEngine().getTheme().getColorPaletteAsHexFor(5));
-//					
-//					
-//					//rw.addVectorToWorkspace("colors", DefaultTheme.colors5); //$NON-NLS-1$
-//				}
-//				else if(progression.getQueries().size() <= 10) {
-//					// System.out.println("uses colors10");
-//					rw.addVectorToWorkspace("colors", DefaultTheme.colors10); //$NON-NLS-1$
-//				}
-//				else {
-//					// System.out.println("uses colors16");
-//					rw.addVectorToWorkspace("colors", DefaultTheme.colors); //$NON-NLS-1$
-//				}
-//			}
-
+			// if(monochrome) {
+			// rw.addVectorToWorkspace("colors", DefaultTheme.monocolors); //$NON-NLS-1$
+			// }
+			// else {
+			// if(progression.getQueries().size() <= 5) {
+			// // System.out.println("uses colors5");
+			//
+			//
+			// rw.addVectorToWorkspace("colors", this.getChartsEngine().getTheme().getColorPaletteAsHexFor(5));
+			//
+			//
+			// //rw.addVectorToWorkspace("colors", DefaultTheme.colors5); //$NON-NLS-1$
+			// }
+			// else if(progression.getQueries().size() <= 10) {
+			// // System.out.println("uses colors10");
+			// rw.addVectorToWorkspace("colors", DefaultTheme.colors10); //$NON-NLS-1$
+			// }
+			// else {
+			// // System.out.println("uses colors16");
+			// rw.addVectorToWorkspace("colors", DefaultTheme.colors); //$NON-NLS-1$
+			// }
+			// }
+			
 			// System.out.println("create styles vector");
 			rw.eval("rm(styles)"); //$NON-NLS-1$
-			if(!progression.isMultipleLineStrokes()) {
+			if (!progression.isMultipleLineStrokes()) {
 				rw.addVectorToWorkspace("styles", DefaultTheme.monostyles); //$NON-NLS-1$
 			}
 			else {
 				rw.addVectorToWorkspace("styles", DefaultTheme.styles); //$NON-NLS-1$
 			}
-
+			
 			// System.out.println("create styles vector");
 			rw.eval("rm(widths)"); //$NON-NLS-1$
 			rw.addVectorToWorkspace("widths", DefaultTheme.monoWidths); //$NON-NLS-1$
-
+			
 			// System.out.println("create names vector");
 			String[] queriesstring = new String[progression.getQueries().size()];
-			for(int i = 0; i < progression.getQueries().size(); i++) {
+			for (int i = 0; i < progression.getQueries().size(); i++) {
 				queriesstring[i] = progression.getQueries().get(i).getQueryString();
 			}
 			rw.eval("rm(names)"); //$NON-NLS-1$
 			rw.addVectorToWorkspace("names", queriesstring); //$NON-NLS-1$
-
+			
 			String name = progression.getCorpus().getName();
-
+			
 			// System.out.println("BANDE="+bande);
 			
-			String cmd = "progression(positions, names, colors, styles, widths, \"" + name + "\"," + progression.getXminCorpus() + "," + progression.getXmaxCorpus() + ",\"" + cumulative + "\",structurepositions,structurenames, \"\", " + progression.getBande() + ");\n"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$ //$NON-NLS-7$
+			String cmd = "progression(positions, names, colors, styles, widths, \"" + name + "\"," + progression.getXminCorpus() + "," + progression.getXmaxCorpus() + ",\"" + cumulative //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
+					+ "\",structurepositions,structurenames, \"\", " + progression.getBande() + ");\n";  //$NON-NLS-1$ //$NON-NLS-2$
 			
 			this.getChartsEngine().plot(file, cmd, result, StringEscapeUtils.escapeJava(Utils.createProgressionChartTitle(progression, cumulative)), null);
-
-			RWorkspace.getRWorkspaceInstance().eval(Progression.prefixR + Progression.norep + " <- list(positions=positions, names=names, xmin=" + progression.getXminCorpus() + ",xmax=" + progression.getXmaxCorpus() + ", structpositions=structurepositions, structnames=structurenames)"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+			
+			RWorkspace.getRWorkspaceInstance().eval(Progression.prefixR + Progression.norep + " <- list(positions=positions, names=names, xmin=" + progression.getXminCorpus() + ",xmax=" + progression //$NON-NLS-1$ //$NON-NLS-2$
+					.getXmaxCorpus() + ", structpositions=structurepositions, structnames=structurenames)");  //$NON-NLS-1$
 			Progression.norep++;
 		}
-		catch(RWorkspaceException e) {
+		catch (RWorkspaceException e) {
 			// TODO Auto-generated catch block
 			org.txm.utils.logger.Log.printStackTrace(e);
 		}
-
+		
 		return file;
 	}
 	
@@ -149,42 +152,42 @@
 	public ArrayList<Integer> getSelectedPointPositions(Object chart) {
 		// FIXME: not implemented
 		Log.severe(this.getClass() + ".getProgressionChartSelectedPointPositions(): Not yet implemented."); //$NON-NLS-1$
-		return new ArrayList<Integer>(0);
+		return new ArrayList<>(0);
 	}
-
-
-
+	
+	
+	
 	@Override
 	public ArrayList<Integer> getSelectedSeries(Object chart) {
 		Log.severe(this.getClass() + ".getProgressionChartSelectedSeries(): Not yet implemented."); //$NON-NLS-1$
-		return new ArrayList<Integer>(0);
+		return new ArrayList<>(0);
 	}
-
-
+	
+	
 	@Override
 	public ArrayList<Integer> getSelectedPointNumbers(Object chart) {
 		Log.severe(this.getClass() + ".getProgressionChartSelectedPointNumber(): Not yet implemented."); //$NON-NLS-1$
-		return new ArrayList<Integer>(0);
+		return new ArrayList<>(0);
 	}
-
-
+	
+	
 	@Override
 	public int getLastSelectedSeries(Object chart) {
 		Log.severe(this.getClass() + ".getProgressionChartLastSelectedSeries(): Not yet implemented."); //$NON-NLS-1$
 		return -1;
 	}
-
-
+	
+	
 	@Override
 	public Class getResultDataClass() {
 		return Progression.class;
 	}
-
+	
 	@Override
 	public ArrayList<ArrayList<Integer>> getAllPointPositionsBySeries(Object chart) {
 		Log.severe(this.getClass() + ".getAllPointPositionsBySeries(): Not yet implemented."); //$NON-NLS-1$
 		return null;
 	}
-
-
+	
+	
 }
Index: tmp/org.txm.progression.core/src/org/txm/progression/core/chartsengine/base/Utils.java
===================================================================
--- tmp/org.txm.progression.core/src/org/txm/progression/core/chartsengine/base/Utils.java	(revision 2530)
+++ tmp/org.txm.progression.core/src/org/txm/progression/core/chartsengine/base/Utils.java	(revision 2531)
@@ -6,54 +6,56 @@
 
 /**
  * Progression chart utility class.
+ * 
  * @author sjacquot
  *
  */
 public abstract class Utils {
-
+	
 	public Utils() {
 		// TODO Auto-generated constructor stub
 	}
-
-
+	
+	
 	/**
 	 * Creates a string title, shared by charts engine implementations, for the progression chart from the specified result.
+	 * 
 	 * @param the progression result
 	 * @param doCumulative
 	 * @return the titles string
 	 */
-	public static String createProgressionChartTitle(Progression progression, boolean doCumulative)	{
-
+	public static String createProgressionChartTitle(Progression progression, boolean doCumulative) {
+		
 		String title = ProgressionCoreMessages.progressionOf;
-
+		
 		// Put queries in title
-		for(int i = 0; i < progression.getQueries().size(); i++) {
-			title +=  progression.getQueries().get(i).getQueryString();
-			if(i < progression.getQueries().size() - 1)	{
+		for (int i = 0; i < progression.getQueries().size(); i++) {
+			title += progression.getQueries().get(i).getQueryString();
+			if (i < progression.getQueries().size() - 1) {
 				title += ", "; //$NON-NLS-1$
 			}
 		}
-
-
-		title += " " + NLS.bind(ProgressionCoreMessages.inP0, progression.getCorpus().getName());
-
-		if(!doCumulative)	{
+		
+		
+		title += " " + NLS.bind(ProgressionCoreMessages.inP0, progression.getCorpus().getName()); //$NON-NLS-1$
+		
+		if (!doCumulative) {
 			title += " " + ProgressionCoreMessages.density; //$NON-NLS-1$
 		}
-
+		
 		if (progression.getStructuralUnit() != null) {
-			title += "\n(" + ProgressionCoreMessages.structureColon + progression.getStructuralUnit().getName();
+			title += "\n(" + ProgressionCoreMessages.structureColon + progression.getStructuralUnit().getName(); //$NON-NLS-1$
 			if (progression.getStructuralUnitProperty() != null) {
 				title += ProgressionCoreMessages.propertyColon + progression.getStructuralUnitProperty().getName();
-				if (progression.getPropertyRegex() != null)	{
+				if (progression.getPropertyRegex() != null) {
 					title += ProgressionCoreMessages.filteringREGEXColon + progression.getPropertyRegex();
 				}
 			}
-			title += ")";
+			title += ")"; //$NON-NLS-1$
 		}
-
+		
 		return title;
 	}
 	
-
-}
\ No newline at end of file
+	
+}
