Index: tmp/org.txm.chartsengine.rcp/src/org/txm/chartsengine/rcp/preferences/ChartsEnginePreferencePage.java
===================================================================
--- tmp/org.txm.chartsengine.rcp/src/org/txm/chartsengine/rcp/preferences/ChartsEnginePreferencePage.java	(revision 1692)
+++ tmp/org.txm.chartsengine.rcp/src/org/txm/chartsengine/rcp/preferences/ChartsEnginePreferencePage.java	(revision 1693)
@@ -74,9 +74,9 @@
 		this.addField(this.chartsEngineComboField);
 
 		
-		// export formats
+		// current engine supported export formats
 		ArrayList<String> supportedExportFormats = new ArrayList<String>();
-		supportedExportFormats.addAll(ChartsEngine.getCurrent().getSupportedOutputFileFormats());
+		supportedExportFormats.addAll(((ChartsEngine) Toolbox.getEngineManager(EngineType.CHARTS).getCurrentEngine()).getSupportedOutputFileFormats());
 		
 		// Sort the set
 		TreeSet<String> formatsSet = new TreeSet <String>(supportedExportFormats);
@@ -97,7 +97,7 @@
 		// Monochrome color
 		this.addField(new ColorFieldEditor(ChartsEnginePreferences.MONOCHROME_COLOR, SWTComponentsProviderMessages.monochromeRenderingColor, this.getFieldEditorParent()));
 		
-		FontFieldEditor font = new FontFieldEditor(ChartsEnginePreferences.FONT, "Font", "Specificities / Spécificités / Специфичность", 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: preview area tests
 		//font.fillIntoGrid(this.getFieldEditorParent(), 4);
@@ -112,8 +112,11 @@
 	public void propertyChange(PropertyChangeEvent event) {
 		super.propertyChange(event);
 
-		// Store the property changed state for not recreating a new ChartsEngin if the property hasn't been changed  
-		this.hasChanged = true;
+		// Store the property changed state for not recreating a new ChartsEngine if the property hasn't been changed
+		// NOTE: SJ: warning, event.getProperty() seems bugged and does not return the correct property name but the string "field_value_editor"
+		if(event.getSource() == this.chartsEngineComboField && !event.getNewValue().equals(event.getOldValue()))	{
+			this.hasChanged = true;
+		}
 	}
 	
 
@@ -127,41 +130,31 @@
 	@Override
 	public boolean performOk() {
 			
-			super.performOk();
+		super.performOk();
 
-			// Do nothing if the property has not been changed
-			if(this.hasChanged) {
-				
-				Log.info(SWTComponentsProviderMessages.recreatingChartsEngineAndSWTChartComponentsProvider);
+		
+		// Set the new monochrome color for all charts engine theme
+		for(int i = 0; i < ChartsEngine.getChartsEngines().size(); i++) {
+			ChartsEngine.getChartsEngines().get(i).getTheme().setMonochromeColor(ChartsEnginePreferences.getInstance().getString(ChartsEnginePreferences.MONOCHROME_COLOR));
+		}
+		
 
-				Toolbox.getEngineManager(EngineType.CHARTS).setCurrentEngine(this.getPreferenceStore().getString(ChartsEnginePreferences.CURRENT_NAME));
-				
-				// Sets the new current charts SWT component provider according to the new current charts engine
-				SWTChartsComponentsProvider.setCurrrentComponentsProvider((ChartsEngine) Toolbox.getEngineManager(EngineType.CHARTS).getCurrentEngine());
-				
-				// Set the first charts engine supported export file format as default charts export file format
-				ChartsEnginePreferences.getInstance().put(ChartsEnginePreferences.DEFAULT_EXPORT_FORMAT, ChartsEngine.getCurrent().getSupportedOutputFileFormats().get(0));
-				
-				
-				// Set the new monochrome color for all charts engine theme
-				for(int i = 0; i < ChartsEngine.getChartsEngines().size(); i++) {
-					ChartsEngine.getChartsEngines().get(i).getTheme().setMonochromeColor(ChartsEnginePreferences.getInstance().getString(ChartsEnginePreferences.MONOCHROME_COLOR));
-				}
-				
-				// FIXME: doesn't work, works only when we quit the page and go back to it
-				// Refreshes the page to recreate the default export format combo box 
-//				PlatformUI.getWorkbench().getPreferenceManager().
-//				find("org.txm.rcp.preferences.TXMMainPreferencePage/org.txm.rcp.preferences.AdvancePreferencePage/ChartsEnginePreferencePage").createPage(); //$NON-NLS-1$
-				
-				//FIXME: old code
-				// Refresh the User\Export preference page to update "Default charts export file format" combo box
-//				PlatformUI.getWorkbench().getPreferenceManager().
-//					find("org.txm.rcp.preferences.TXMMainPreferencePage/" + UserPreferencePage.ID + "/" + ExportPreferencePage.ID).createPage(); //$NON-NLS-1$ //$NON-NLS-2$
-			}
+		// Only if the current engine has changed
+		if(this.hasChanged) {
+			
+			Log.info(SWTComponentsProviderMessages.recreatingChartsEngineAndSWTChartComponentsProvider);
 
-//			// FIXME: useless ?
-//			Explorer.refresh();
+			Toolbox.getEngineManager(EngineType.CHARTS).setCurrentEngine(this.getPreferenceStore().getString(ChartsEnginePreferences.CURRENT_NAME));
 			
+			// Sets the new current charts SWT component provider according to the new current charts engine
+			SWTChartsComponentsProvider.setCurrrentComponentsProvider((ChartsEngine) Toolbox.getEngineManager(EngineType.CHARTS).getCurrentEngine());
+			
+			// Reset the default export format to the new charts engine first supported export file format
+			ChartsEnginePreferences.getInstance().put(ChartsEnginePreferences.DEFAULT_EXPORT_FORMAT, ChartsEngine.getCurrent().getSupportedOutputFileFormats().get(0));
+			
+			
+		}
+
 		return true;
 	}
 }
\ No newline at end of file
