Index: TXM/trunk/bundles/org.txm.chartsengine.rcp/src/org/txm/chartsengine/rcp/swt/AdvancedChartEditorToolBar.java
===================================================================
--- TXM/trunk/bundles/org.txm.chartsengine.rcp/src/org/txm/chartsengine/rcp/swt/AdvancedChartEditorToolBar.java	(revision 3729)
+++ TXM/trunk/bundles/org.txm.chartsengine.rcp/src/org/txm/chartsengine/rcp/swt/AdvancedChartEditorToolBar.java	(revision 3730)
@@ -118,23 +118,26 @@
 		}
 
 		
-		// Font selection
+		// Logical user-friendly font selection
 		final Font currentFont = ChartsEngine.createFont(chartEditor.getResult().getFont());
 
-		 // FIXME: SJ: may be better here to get the fonts from SWT rather than from Java, see java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment().getAllFonts();
 		final Combo fontCombo = new Combo(this, SWT.READ_ONLY);
-		String fonts[] = GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames();
+
+		// transpose logical font name to user-friendly name
+		String fonts[] = new String[] {"Arial", "Courier", "Times"}; // SansSerif,Monospaced,Serif
+		
 		fontCombo.setItems(fonts);
 		
 		this.addControl(fontCombo);
-		
+
 		int currentFontIndex = 0;
-		for (int i = 0; i < fonts.length; i++) {
-			if (fonts[i].equals(currentFont.getName())) {
-				currentFontIndex = i;
-				break;
-			}
+		if(currentFont.getName().equals("Monospaced")) {
+			currentFontIndex = 1;
 		}
+		else if(currentFont.getName().equals("Times")) {
+			currentFontIndex = 2;
+		}
+
 		fontCombo.select(currentFontIndex);
 
 
@@ -244,6 +247,28 @@
 		}
 		
 		
+
+		// Advanced font selection
+		final Combo advancedFontCombo = new Combo(this, SWT.READ_ONLY);
+		if (TBXPreferences.getInstance().getBoolean(TBXPreferences.EXPERT_USER)) {
+			
+			String advancedFonts[] = GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames();
+
+			advancedFontCombo.setItems(advancedFonts);
+			this.addControl(advancedFontCombo);
+
+			int currentAllFontIndex = 0;
+			for (int i = 0; i < advancedFonts.length; i++) {
+				if (advancedFonts[i].equals(currentFont.getName())) {
+					currentAllFontIndex = i;
+					break;
+				}
+			}
+			
+			advancedFontCombo.select(currentAllFontIndex);
+
+		}
+		
 					
 		
 		// Listeners
@@ -270,8 +295,27 @@
 				// end of FIXME
 				
 				// Font 
-				else if (e.getSource() == fontCombo || e.getSource() == fontSizeCombo || e.getSource() == fontStyleCombo) {
-					getEditorPart().getResult().setFont("1|" + fontCombo.getItem(fontCombo.getSelectionIndex()) + "|" + fontSizeCombo.getItem(fontSizeCombo.getSelectionIndex()) + "|" + fontStyleCombo.getSelectionIndex()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				else if (e.getSource() == fontCombo || e.getSource() == fontSizeCombo || e.getSource() == fontStyleCombo || e.getSource() == advancedFontCombo) {
+					
+					String fontName;
+					if(e.getSource() == advancedFontCombo) {
+						fontName = advancedFontCombo.getItem(advancedFontCombo.getSelectionIndex());
+					}
+					// transpose user-friendly name to logical font name
+					else {
+						if(fontCombo.getSelectionIndex() == 0) {
+							fontName = "SansSerif";
+						}
+						else if(fontCombo.getSelectionIndex() == 1) {
+							fontName = "Monospaced";
+						}
+						else {
+							fontName = "Serif";
+						}
+					}
+					
+					getEditorPart().getResult().setFont("1|" + fontName + "|" + fontSizeCombo.getItem(fontSizeCombo.getSelectionIndex()) + "|" + fontStyleCombo.getSelectionIndex()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+					
 				}
 				// Chart type / chart creators
 				else if (e.getSource() == chartTypeCombo) {
@@ -293,7 +337,8 @@
 						|| e.getSource() == renderingModeCombo
 						|| e.getSource() == fontSizeCombo
 						|| e.getSource() == fontStyleCombo
-						|| e.getSource() == chartTypeCombo) {
+						|| e.getSource() == chartTypeCombo
+						|| e.getSource() == advancedFontCombo) {
 					// updates or creates chart
 					getEditorPart().compute(update);
 					getEditorPart().setFocus();
@@ -331,6 +376,7 @@
 //		if (chartTypeCombo.isVisible()) {
 			chartTypeCombo.addSelectionListener(listener);
 	//	}
+		advancedFontCombo.addSelectionListener(listener);
 	}
 	
 	
Index: TXM/trunk/bundles/org.txm.chartsengine.rcp/src/org/txm/chartsengine/rcp/preferences/ChartsEnginePreferencePage.java
===================================================================
--- TXM/trunk/bundles/org.txm.chartsengine.rcp/src/org/txm/chartsengine/rcp/preferences/ChartsEnginePreferencePage.java	(revision 3729)
+++ TXM/trunk/bundles/org.txm.chartsengine.rcp/src/org/txm/chartsengine/rcp/preferences/ChartsEnginePreferencePage.java	(revision 3730)
@@ -1,22 +1,20 @@
 package org.txm.chartsengine.rcp.preferences;
 
-import java.util.ArrayList;
 import java.util.Map;
-import java.util.TreeSet;
 
-import org.eclipse.core.runtime.preferences.InstanceScope;
 import org.eclipse.jface.preference.ColorFieldEditor;
 import org.eclipse.jface.preference.ComboFieldEditor;
 import org.eclipse.jface.preference.FontFieldEditor;
-import org.eclipse.jface.preference.ListEditor;
+import org.eclipse.jface.resource.JFaceResources;
 import org.eclipse.jface.util.PropertyChangeEvent;
+import org.eclipse.swt.graphics.Font;
 import org.eclipse.ui.IWorkbench;
 import org.txm.chartsengine.core.ChartsEngine;
 import org.txm.chartsengine.core.ChartsEnginesManager;
 import org.txm.chartsengine.core.preferences.ChartsEnginePreferences;
 import org.txm.chartsengine.rcp.SWTChartsComponentsProvider;
 import org.txm.chartsengine.rcp.messages.ChartsUIMessages;
-import org.txm.core.preferences.TXMPreferences;
+import org.txm.core.messages.TXMCoreMessages;
 import org.txm.rcp.preferences.TXMPreferencePage;
 import org.txm.rcp.preferences.TXMPreferenceStore;
 import org.txm.utils.logger.Log;
@@ -108,16 +106,29 @@
 		
 		// Monochrome color
 		this.addField(new ColorFieldEditor(ChartsEnginePreferences.MONOCHROME_COLOR, ChartsUIMessages.monochromeRenderingColor, this.getFieldEditorParent()));
+
 		
-		FontFieldEditor font = new FontFieldEditor(ChartsEnginePreferences.FONT, "Font", "Specificities / Spécificités / Специфичность", this.getFieldEditorParent()); //$NON-NLS-1$ //$NON-NLS-2$
-		this.addField(font);
-		// FIXME: SJ: preview area tests
-		// font.fillIntoGrid(this.getFieldEditorParent(), 4);
-		// ((Text)font.getPreviewControl()).setLayoutData(new GridData(GridData.FILL_BOTH));
-		// System.out.println("ChartsEnginePreferencePage.createFieldEditors() " + font.getPreviewControl());
-		
-		
+//		FontFieldEditor font = new FontFieldEditor(ChartsEnginePreferences.FONT, "Font", "Specificities / Spécificités / Специфичность", this.getFieldEditorParent()); //$NON-NLS-2$
+//		//FontFieldEditor font = new FontFieldEditor(ChartsEnginePreferences.FONT, "Font", "Specificities / Spécificités / Специфичность / 仕様 / 特別說明 / विशिष्टता", this.getFieldEditorParent()); //$NON-NLS-2$
+//		this.addField(font);
+//		// FIXME: SJ: preview area tests
+//		 //font.fillIntoGrid(this.getFieldEditorParent(), 4);
+//		// ((Text)font.getPreviewControl()).setLayoutData(new GridData(GridData.FILL_BOTH));
+//		// System.out.println("ChartsEnginePreferencePage.createFieldEditors() " + font.getPreviewControl());
+
+		// transpose logical font name to user-friendly name
+		String logicalFonts[][] = new String[3][2];
+		logicalFonts[0][0] = "Arial";
+		logicalFonts[0][1] = "1|SansSerif|14|0"; //$NON-NLS-1$
+		logicalFonts[1][0] = "Courier";
+		logicalFonts[1][1] = "1|Monospaced|14|0"; //$NON-NLS-1$
+		logicalFonts[2][0] = "Times";
+		logicalFonts[2][1] = "1|Serif|14|0"; //$NON-NLS-1$
+		ComboFieldEditor fontComboField = new ComboFieldEditor(ChartsEnginePreferences.FONT, TXMCoreMessages.common_defaultFont, logicalFonts, this.getFieldEditorParent());
+		this.addField(fontComboField);
+
 	}
+
 	
 	/**
 	 * Creates the export format combo box according the specified charts engine.
Index: TXM/trunk/bundles/org.txm.libs.jfreechart/build.properties
===================================================================
--- TXM/trunk/bundles/org.txm.libs.jfreechart/build.properties	(revision 3729)
+++ TXM/trunk/bundles/org.txm.libs.jfreechart/build.properties	(revision 3730)
@@ -2,5 +2,5 @@
                about.html,\
                about_files/,\
                .,\
-               lib/jfreechart-1.5.0.jar,\
-               OSGI-INF/
+               OSGI-INF/,\
+               lib/jfreechart-1.5.4.jar
Index: TXM/trunk/bundles/org.txm.libs.jfreechart/about.html
===================================================================
--- TXM/trunk/bundles/org.txm.libs.jfreechart/about.html	(revision 3729)
+++ TXM/trunk/bundles/org.txm.libs.jfreechart/about.html	(revision 3730)
@@ -1,15 +1,15 @@
 JFreeChart
 ==========
 
-Version 1.5.0, 5 November 2017.
+Version 2.0.0, not yet released.
 
 [![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.jfree/jfreechart/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.jfree/jfreechart)
 
 Overview
 --------
-JFreeChart is a comprehensive free chart library for the Java(tm) platform that 
-can be used on the client-side (JavaFX and Swing) or the server side (with
-export to multiple formats including SVG, PNG and PDF).
+JFreeChart is a comprehensive free chart library for the Java&#8482; platform that 
+can be used on the client-side (JavaFX and Swing) or the server side, with
+export to multiple formats including SVG, PNG and PDF.
 
 ![JFreeChart sample](http://jfree.org/jfreechart/images/coffee_prices.png)
 
@@ -17,37 +17,51 @@
 
 http://www.jfree.org/jfreechart
 
-JFreeChart requires JDK 1.6.0 or later.  If JavaFX support is required, you
-need to also include the JFreeChart-FX extensions:
+JFreeChart requires JDK 11 or later.  For Java 8 support, check the `v1.5.x` branch.
 
-https://github.com/jfree/jfreechart-fx
-
 The library is licensed under the terms of the GNU Lesser General Public 
 License (LGPL) version 2.1 or later.
 
 
-Using JFreeChart
-----------------
+JavaFX
+------
+JFreeChart can be used with JavaFX via the `JFreeChart-FX` extensions:
+
+https://github.com/jfree/jfreechart-fx
+
+Demos
+-----
+A small set of demo applications can be found in the following projects here
+at GitHub:
+
+* [JFree-Demos](https://github.com/jfree/jfree-demos "JFree-Demos Project Page at GitHub")
+* [JFree-FXDemos](https://github.com/jfree/jfree-fxdemos "JFree-FXDemos Project Page at GitHub")
+
+A more comprehensive set of demos, plus the JFreeChart Developer Guide, is a reward at most
+tiers of the [JFree sponsorship](https://github.com/sponsors/jfree) program.  Thanks for supporting the JFree projects!
+
+For Developers
+--------------
+
+### Using JFreeChart
 To use JFreeChart in your projects, add the following dependency to your build tool:
 
     <dependency>
         <groupId>org.jfree</groupId>
         <artifactId>jfreechart</artifactId>
-        <version>1.5.0</version>
+        <version>1.5.3</version>
     </dependency>
 
 
-Building JFreeChart
--------------------
+### Building JFreeChart
 You can build JFreeChart using Maven by issuing the following command from the root directory of the project:
 
     mvn clean install
 
-The build requires JDK 1.6.0 or later.
+The build requires JDK 11 or later.
 
 
-Migration from JFreeChart 1.0.x
--------------------------------
+### Migration
 When migrating from JFreeChart 1.0.x to JFreeChart 1.5.0, please be aware of the following API changes:
 
 * all the classes from JCommon that are used by JFreeChart have integrated within the JFreeChart jar file within a different package than before (you will need to change your imports);
@@ -60,18 +74,36 @@
 Please refer to [Issue 66](https://github.com/jfree/jfreechart/issues/66) for additional info.
 
 
-Demos
------
-A small set of demo applications can be found in the following projects here
-at GitHub:
-
-* [JFree-Demos](https://github.com/jfree/jfree-demos "JFree-Demos Project Page at GitHub")
-* [JFree-FXDemos](https://github.com/jfree/jfree-fxdemos "JFree-FXDemos Project Page at GitHub")
-
-
 History
 -------
 
+##### Version 2.0 (not yet released)
+- use `ThreadLocal` for calendars in time series datasets ([#171](https://github.com/jfree/jfreechart/pull/171));
+- added `valueVisible` flag to `MeterPlot` ([#231](https://github.com/jfree/jfreechart/pull/231));
+- modify buffer in `ChartPanel` to handle high DPI displays ([#170](https://github.com/jfree/jfreechart/issues/170));
+- add options to control pan vs zoom in `ChartPanel` ([#172](https://github.com/jfree/jfreechart/pull/172));
+- observe series visibility flags in `ClusteredXYBarRenderer` ([#89](https://github.com/jfree/jfreechart/pull/89));
+- observe axis visibility flag in `PeriodAxis` ([#198](https://github.com/jfree/jfreechart/issues/198));
+- fix for exception on extreme zoom on `NumberAxis` (bug #64);
+- fix tick label font for `LogAxis` with number format override ([#98](https://github.com/jfree/jfreechart/issues/98));
+- remove alpha channel from copy-to-clipboard (fixes bug #182);
+- apply rendering hints to overlays - fixes bug #187;
+- modify `TextTitle` to throw `IllegalArgumentException` rather than `NullPointerException` ([#205](https://github.com/jfree/jfreechart/issues/205));
+- fix bugs on crosshair labels ([#189](https://github.com/jfree/jfreechart/pull/189), [#194](https://github.com/jfree/jfreechart/pull/194));
+- removed `ObjectUtils` class ([#163](https://github.com/jfree/jfreechart/pull/163));
+- removed unused `URLUtilities` class ([#162](https://github.com/jfree/jfreechart/pull/162))
+- fixed `LayeredBarRenderer` (bugs [#169](https://github.com/jfree/jfreechart/issues/169) and [#175](https://github.com/jfree/jfreechart/issues/175));
+- minor fix for `DefaultPieDataset` (bugs [#212](https://github.com/jfree/jfreechart/issues/212))
+- fix `isJFreeSVGAvailable()` method (bugs [#207](https://github.com/jfree/jfreechart/issues/207))
+- add new methods to access maps for datasets, renderers and axes in plots ([#201](https://github.com/jfree/jfreechart/issues/201));
+- update French translations (bug #186);
+- fix "Save_as" entries in localisation files (bug #184);
+- add flags for visibility of outliers in `BoxAndWhiskerRenderer` ([#79](https://github.com/jfree/jfreechart/pull/79));
+- added generics;
+- `DefaultIntervalCategoryDataset` no longer allows null keys in constructor (this
+  is a consequence of introducing generics);
+- update required JDK to version 11.
+
 ##### Version 1.5.0 (5 November 2017)
 - all JavaFX classes moved to a separate project;
 - added cleaner method to create histograms in `ChartFactory`;
Index: TXM/trunk/bundles/org.txm.libs.jfreechart/.classpath
===================================================================
--- TXM/trunk/bundles/org.txm.libs.jfreechart/.classpath	(revision 3729)
+++ TXM/trunk/bundles/org.txm.libs.jfreechart/.classpath	(revision 3730)
@@ -1,11 +1,15 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry exported="true" kind="lib" path="lib/jfreechart-1.5.0.jar">
-		<attributes>
-			<attribute name="javadoc_location" value="jar:platform:/resource/org.txm.libs.jfreechart/doc/jfreechart-1.5.0-javadoc.jar!/"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER">
+		<attributes>
+			<attribute name="module" value="true"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry exported="true" kind="lib" path="lib/jfreechart-1.5.4.jar">
+		<attributes>
+			<attribute name="javadoc_location" value="jar:platform:/resource/org.txm.libs.jfreechart/doc/jfreechart-1.5.0-javadoc.jar!/"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
Index: TXM/trunk/bundles/org.txm.libs.jfreechart/META-INF/MANIFEST.MF
===================================================================
--- TXM/trunk/bundles/org.txm.libs.jfreechart/META-INF/MANIFEST.MF	(revision 3729)
+++ TXM/trunk/bundles/org.txm.libs.jfreechart/META-INF/MANIFEST.MF	(revision 3730)
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: JFreeChart
 Bundle-SymbolicName: org.txm.libs.jfreechart
-Bundle-Version: 1.5.0
+Bundle-Version: 1.5.4
 Export-Package: org.jfree.chart,
  org.jfree.chart.annotations,
  org.jfree.chart.axis,
@@ -18,11 +18,11 @@
  org.jfree.chart.panel,
  org.jfree.chart.plot,
  org.jfree.chart.plot.dial,
+ org.jfree.chart.plot.flow,
  org.jfree.chart.renderer,
  org.jfree.chart.renderer.category,
  org.jfree.chart.renderer.xy,
- org.jfree.chart.resources,
- org.jfree.chart.servlet,
+  org.jfree.chart.servlet,
  org.jfree.chart.text,
  org.jfree.chart.title,
  org.jfree.chart.ui,
@@ -30,6 +30,7 @@
  org.jfree.chart.util,
  org.jfree.data,
  org.jfree.data.category,
+ org.jfree.data.flow,
  org.jfree.data.function,
  org.jfree.data.gantt,
  org.jfree.data.general,
@@ -46,5 +47,5 @@
 Bundle-RequiredExecutionEnvironment: JavaSE-16
 Bundle-Vendor: www.jfree.org
 Bundle-ClassPath: .,
- lib/jfreechart-1.5.0.jar
+ lib/jfreechart-1.5.4.jar
 Automatic-Module-Name: org.txm.libs.jfreechart
Index: TXM/trunk/bundles/org.txm.libs.jfreechart/lib/jfreechart-1.5.0.jar
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: TXM/trunk/bundles/org.txm.libs.jfreechart/lib/jfreechart-1.5.4.jar
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: TXM/trunk/bundles/org.txm.libs.jfreechart/lib/jfreechart-1.5.4.jar
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Index: TXM/trunk/bundles/org.txm.core/src/java/org/txm/core/results/TXMResult.java
===================================================================
--- TXM/trunk/bundles/org.txm.core/src/java/org/txm/core/results/TXMResult.java	(revision 3729)
+++ TXM/trunk/bundles/org.txm.core/src/java/org/txm/core/results/TXMResult.java	(revision 3730)
@@ -2392,6 +2392,9 @@
 			}
 
 			if (!skipComputing) {
+				
+				// Debug
+				Log.finest("+++ TXMResult.compute(): " + this.getClass().getSimpleName() + ": computing result of type " + this.getClass() + "...");
 
 				// Computing requirements test
 				if (!this.canCompute()) {
@@ -2429,10 +2432,6 @@
 					this.computing = false;
 					return false;
 				}
-				else {
-					// Debug
-					Log.finest("+++ TXMResult.compute(): " + this.getClass().getSimpleName() + ": computing result of type " + this.getClass() + "...");
-				}
 			}
 			else {
 				mainSubMonitor.setWorkRemaining(1);
Index: TXM/trunk/bundles/org.txm.core/src/java/org/txm/core/messages/TXMCoreMessages.java
===================================================================
--- TXM/trunk/bundles/org.txm.core/src/java/org/txm/core/messages/TXMCoreMessages.java	(revision 3729)
+++ TXM/trunk/bundles/org.txm.core/src/java/org/txm/core/messages/TXMCoreMessages.java	(revision 3730)
@@ -27,6 +27,8 @@
 	
 	public static String common_cols;
 	
+	public static String common_defaultFont;
+	
 	public static String common_delete;
 	
 	public static String common_description;
Index: TXM/trunk/bundles/org.txm.core/src/java/org/txm/core/messages/messages_fr.properties
===================================================================
--- TXM/trunk/bundles/org.txm.core/src/java/org/txm/core/messages/messages_fr.properties	(revision 3729)
+++ TXM/trunk/bundles/org.txm.core/src/java/org/txm/core/messages/messages_fr.properties	(revision 3730)
@@ -22,6 +22,7 @@
 common_noResults=Aucun résultat.
 common_numberOfLines=Nombre de lignes
 common_ok=OK
+common_defaultFont=Police par défaut
 common_P0ItemsForP1Occurrences={0} items pour {1} occurrences.
 common_P0Occurrences={0} occurrences.
 common_P0Positions=Nombre d'occurrences \: [{0}].
Index: TXM/trunk/bundles/org.txm.core/src/java/org/txm/core/messages/messages.properties
===================================================================
--- TXM/trunk/bundles/org.txm.core/src/java/org/txm/core/messages/messages.properties	(revision 3729)
+++ TXM/trunk/bundles/org.txm.core/src/java/org/txm/core/messages/messages.properties	(revision 3730)
@@ -22,6 +22,7 @@
 common_noResults=No results.
 common_numberOfLines=Number of lines
 common_ok=OK
+common_defaultFont=Default font
 common_P0ItemsForP1Occurrences={0} item for {1} occurrences.
 common_P0Occurrences={0} occurrences.
 common_P0Positions=Number of occurrences\: [{0}].
Index: TXM/trunk/bundles/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/themes/highcharts/defaulttheme/renderers/ItemSelectionXYBarRenderer.java
===================================================================
--- TXM/trunk/bundles/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/themes/highcharts/defaulttheme/renderers/ItemSelectionXYBarRenderer.java	(revision 3729)
+++ TXM/trunk/bundles/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/themes/highcharts/defaulttheme/renderers/ItemSelectionXYBarRenderer.java	(revision 3730)
@@ -4,8 +4,10 @@
 import java.awt.Paint;
 import java.awt.Shape;
 import java.text.DecimalFormat;
+import java.text.NumberFormat;
 
 import org.jfree.chart.LegendItem;
+import org.jfree.chart.axis.NumberAxis;
 import org.jfree.chart.axis.SymbolAxis;
 import org.jfree.chart.labels.XYSeriesLabelGenerator;
 import org.jfree.chart.labels.XYToolTipGenerator;
@@ -45,6 +47,7 @@
 		
 		// Tooltips
 		this.initToolTipGenerator(this);
+		
 	}
 	
 	
Index: TXM/trunk/bundles/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/themes/highcharts/defaulttheme/HighchartsDefaultTheme.java
===================================================================
--- TXM/trunk/bundles/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/themes/highcharts/defaulttheme/HighchartsDefaultTheme.java	(revision 3729)
+++ TXM/trunk/bundles/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/themes/highcharts/defaulttheme/HighchartsDefaultTheme.java	(revision 3730)
@@ -6,11 +6,16 @@
 import java.awt.Shape;
 import java.awt.Stroke;
 import java.awt.geom.Ellipse2D;
+import java.text.DecimalFormat;
+import java.text.DecimalFormatSymbols;
+import java.text.NumberFormat;
 import java.util.ArrayList;
 import java.util.HashMap;
+import java.util.Locale;
 
 import org.jfree.chart.JFreeChart;
 import org.jfree.chart.axis.CategoryLabelPositions;
+import org.jfree.chart.axis.NumberAxis;
 import org.jfree.chart.axis.SymbolAxis;
 import org.jfree.chart.block.BlockBorder;
 import org.jfree.chart.plot.CategoryPlot;
@@ -283,6 +288,19 @@
 			plot.getRangeAxis().setTickMarkOutsideLength(5);
 			plot.getRangeAxis().setTickLabelFont(regularFont.deriveFont(Font.BOLD));
 			
+
+			// SJ: to fix a bug with unbreakable space thousand separator that is displayed as a white square glyph with some fonts
+			NumberAxis range = (NumberAxis) plot.getRangeAxis();
+			DecimalFormat formatter = (DecimalFormat) DecimalFormat.getInstance();
+			DecimalFormatSymbols symbols = formatter.getDecimalFormatSymbols();
+			
+			if((int)symbols.getGroupingSeparator() == 8239) { //unbreakable space char code
+				symbols.setGroupingSeparator(' ');
+				formatter.setDecimalFormatSymbols(symbols);
+				range.setNumberFormatOverride(formatter);
+			}
+
+			
 			plot.getDomainAxis().setAxisLinePaint(Color.decode("#C0D0E0"));
 			plot.getDomainAxis().setTickMarkPaint(Color.decode("#C0D0E0"));
 			plot.getDomainAxis().setTickMarkOutsideLength(5);
@@ -453,6 +471,7 @@
 				// Used for item selection mouse over
 				renderer.setDefaultOutlinePaint(Color.WHITE);
 				
+				
 			}
 			
 			
Index: TXM/trunk/bundles/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/themes/base/JFCTheme.java
===================================================================
--- TXM/trunk/bundles/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/themes/base/JFCTheme.java	(revision 3729)
+++ TXM/trunk/bundles/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/themes/base/JFCTheme.java	(revision 3730)
@@ -143,6 +143,8 @@
 		
 		Font baseFont = ChartsEngine.createFont(result.getFont());
 		
+	//	System.err.println("JFCTheme.createFonts(): Font = " + baseFont);
+		
 		// Titles
 		this.setExtraLargeFont(baseFont.deriveFont(baseFont.getStyle(), baseFont.getSize() + 5));
 		
Index: TXM/trunk/bundles/org.txm.chartsengine.core/src/org/txm/chartsengine/core/preferences/ChartsEnginePreferences.java
===================================================================
--- TXM/trunk/bundles/org.txm.chartsengine.core/src/org/txm/chartsengine/core/preferences/ChartsEnginePreferences.java	(revision 3729)
+++ TXM/trunk/bundles/org.txm.chartsengine.core/src/org/txm/chartsengine/core/preferences/ChartsEnginePreferences.java	(revision 3730)
@@ -126,15 +126,19 @@
 		preferences.put(MONOCHROME_COLOR, "0,220,20"); //$NON-NLS-1$
 		preferences.putBoolean(MULTIPLE_LINE_STROKES, false);
 		
+		//FIXME: SJ: old version
 		// Check the target OS and set the default font using encoded String in JFace StringConverter format (?|Font name|size|style|?|?|...)
-		String defaultFont;
-		if (OSDetector.isFamilyUnix()) {
-			defaultFont = "1|Lucida Sans|11.0|1|GTK|1|"; //$NON-NLS-1$
-		}
-		else {
-			defaultFont = "1|Lucida Sans Unicode|11.0|1|WINDOWS|1|-16|0|0|0|400|0|0|0|0|3|2|1|34|Lucida Sans Unicode;"; //$NON-NLS-1$
-		}
+//		String defaultFont;
+//		if (OSDetector.isFamilyUnix()) {
+//			defaultFont = "1|Lucida Sans|11.0|1|GTK|1|"; //$NON-NLS-1$
+//		}
+//		else {
+//			defaultFont = "1|Lucida Sans Unicode|11.0|1|WINDOWS|1|-16|0|0|0|400|0|0|0|0|3|2|1|34|Lucida Sans Unicode;"; //$NON-NLS-1$
+//		}
 		
+		String defaultFont = "1|SansSerif|14|0"; 
+		
+		
 		preferences.put(FONT, defaultFont);
 	}
 	
Index: TXM/trunk/bundles/org.txm.chartsengine.core/src/org/txm/chartsengine/core/results/ChartResult.java
===================================================================
--- TXM/trunk/bundles/org.txm.chartsengine.core/src/org/txm/chartsengine/core/results/ChartResult.java	(revision 3729)
+++ TXM/trunk/bundles/org.txm.chartsengine.core/src/org/txm/chartsengine/core/results/ChartResult.java	(revision 3730)
@@ -484,26 +484,22 @@
 	 * @param chartType the chartType to set
 	 */
 	public void setChartType(String chartType) {
-		if (!this.chartType.equals(chartType)) {
-			// TODO find a better way to switch chart creators. this way previous chart is lost.
-			setChart(null); // the chart must be redrawn from scratch
-		}
+		setChart(null); // the chart must be redrawn from scratch
 		this.chartType = chartType;
+		this.setDirty();
+		this.chartDirty = true;
 		
-		// FIXME: SJ: need to validate this MD: this seems no more necessary since the chart object is reset just before
-		HashMap<String, Object> last = this.getLastParametersFromHistory();
-		if (last != null) {
-			this.getLastParametersFromHistory().put(ChartsEnginePreferences.CHART_TYPE, "__undef___"); //$NON-NLS-1$
-		}
-		
-		
 		// this.getLastParametersFromHistory().put(ChartsEnginePreferences.CHART_TYPE, "[Default]");
 		
+		// update the chart type of last cycle parameters so hasRenderingParameterChanged() returns true
+//		HashMap<String, Object> last = this.getLastParametersFromHistory();
+//		if (last != null) {
+//			this.getLastParametersFromHistory().put(ChartsEnginePreferences.CHART_TYPE, "__undef___"); //$NON-NLS-1$
+//		}
+
+		// clear all last rendering parameters to force the chart full recreation 
+		this.clearLastRenderingParameters();
 		
-		
-		// clear all last parameters to force a full recomputing
-		// this.clearLastRenderingParameters();
-		// this.clearLastRenderingParameters();
 	}
 	
 	/**
