Index: TXM/trunk/org.txm.rcp/src/main/java/org/txm/rcp/editors/TXMEditorToolBar.java
===================================================================
--- TXM/trunk/org.txm.rcp/src/main/java/org/txm/rcp/editors/TXMEditorToolBar.java	(revision 3567)
+++ TXM/trunk/org.txm.rcp/src/main/java/org/txm/rcp/editors/TXMEditorToolBar.java	(revision 3568)
@@ -154,7 +154,7 @@
 	 * 
 	 * @param combo
 	 */
-	public void addControl(final Combo combo) {
+	public void addCombo(final Combo combo) {
 		final ToolItem itemSeparator = new ToolItem(this, SWT.SEPARATOR);
 		combo.pack();
 		itemSeparator.setWidth(combo.getBounds().width);
@@ -168,7 +168,6 @@
 			}
 		};
 
-		
 		combo.addListener(SWT.RESIZE, listener);
 		combo.addListener(SWT.Modify, listener);
 	}
Index: TXM/trunk/org.txm.links.rcp/src/org/txm/links/rcp/handlers/SendSelectionToQueryable.java
===================================================================
--- TXM/trunk/org.txm.links.rcp/src/org/txm/links/rcp/handlers/SendSelectionToQueryable.java	(revision 3567)
+++ TXM/trunk/org.txm.links.rcp/src/org/txm/links/rcp/handlers/SendSelectionToQueryable.java	(revision 3568)
@@ -45,8 +45,12 @@
  * 
  */
 // FIXME: SJ: improvements:
-// - create an interface as SeletionSendableAsQueries with method createQueries() or buildQueries() or getQueries()
-// - instead of subclassing this class, Editors can implement SeletionSendableAsQueries interface and the method
+// solution 1 - create an interface as SelectionSendableAsQueries with method createQueries() or buildQueries() or getQueries()
+// - instead of subclassing this class, Editors can implement SeletionSendableAsQueries interface and the method?
+// solution 2 - create a unique interface as SelectionSendable with 1 method as createTargetParameters() that directly returns a map of parameters
+// eg. {TXMPreferences.QUERY, "[word=faire]"}
+
+
 public abstract class SendSelectionToQueryable extends BaseAbstractHandler {
 	
 	/**
@@ -94,7 +98,7 @@
 		ISelection selection = HandlerUtil.getCurrentSelection(event);
 		
 		if (selection != null && !selection.isEmpty()) {
-			
+
 			String query = this.createQuery(event, selection);
 			String queries = this.createQueries(event, selection);
 			Integer index = this.getIndexResult(event, selection);
@@ -108,7 +112,7 @@
 			// create a local result node in the project node, store in some parameters and call the linked command
 			String id = event.getCommand().getId();
 			TXMResult result = this.getResultParent(event, id);
-			// FIXME: we can't put the class name here since we does not know the target class
+			// FIXME: SJ: we can't put the class name in the result node path here since we does not know the target class
 			String resultParametersNodePath = result.getProject().getParametersNodeRootPath() + TXMResult.createUUID() + "_link";  //$NON-NLS-1$
 
 			TXMPreferences.put(resultParametersNodePath, TXMPreferences.PARENT_PARAMETERS_NODE_PATH, result.getParametersNodePath());
Index: TXM/trunk/org.txm.progression.rcp/src/org/txm/progression/rcp/handlers/ComputeProgression.java
===================================================================
--- TXM/trunk/org.txm.progression.rcp/src/org/txm/progression/rcp/handlers/ComputeProgression.java	(revision 3567)
+++ TXM/trunk/org.txm.progression.rcp/src/org/txm/progression/rcp/handlers/ComputeProgression.java	(revision 3568)
@@ -57,8 +57,8 @@
 
 		Progression progression = null;
 		
-		// From link: creating from parameter node
-		//FIXME: SJ: all "Send to" commands have a different node path schema since we do not know the target class in the source handler (the class string is replaced with "_link")  
+		// From link/"send to command": creating from a prebuilt parameter node path
+		//FIXME: SJ: all "Send to" commands have a different node path schema than normal result creation since we do not know the target class in the source handler (the class string is replaced with "_link")  
 		String parametersNodePath = event.getParameter(TXMPreferences.RESULT_PARAMETERS_NODE_PATH);
 		if (parametersNodePath != null && !parametersNodePath.isEmpty()) {
 			progression = new Progression(parametersNodePath);
Index: TXM/trunk/org.txm.concordance.rcp/src/org/txm/concordance/rcp/handlers/ComputeConcordance.java
===================================================================
--- TXM/trunk/org.txm.concordance.rcp/src/org/txm/concordance/rcp/handlers/ComputeConcordance.java	(revision 3567)
+++ TXM/trunk/org.txm.concordance.rcp/src/org/txm/concordance/rcp/handlers/ComputeConcordance.java	(revision 3568)
@@ -58,7 +58,8 @@
 		
 		Concordance concordance = null;
 		
-		// From link: creating from parameter node
+		// From link/"send to command": creating from a prebuilt parameter node path
+		//FIXME: SJ: all "Send to" commands have a different node path schema than normal result creation since we do not know the target class in the source handler (the class string is replaced with "_link")  
 		String parametersNodePath = event.getParameter(TXMPreferences.RESULT_PARAMETERS_NODE_PATH);
 		if (parametersNodePath != null && !parametersNodePath.isEmpty()) {
 			if ("none".equals(parametersNodePath)) {
Index: TXM/trunk/org.txm.chartsengine.rcp/src/org/txm/chartsengine/rcp/swt/AdvancedChartEditorToolBar.java
===================================================================
--- TXM/trunk/org.txm.chartsengine.rcp/src/org/txm/chartsengine/rcp/swt/AdvancedChartEditorToolBar.java	(revision 3567)
+++ TXM/trunk/org.txm.chartsengine.rcp/src/org/txm/chartsengine/rcp/swt/AdvancedChartEditorToolBar.java	(revision 3568)
@@ -5,11 +5,9 @@
 import java.util.ArrayList;
 
 import org.apache.commons.lang.StringUtils;
-import org.eclipse.jface.resource.StringConverter;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.events.SelectionEvent;
 import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.FontData;
 import org.eclipse.swt.widgets.Combo;
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.ToolItem;
@@ -38,16 +36,9 @@
 public class AdvancedChartEditorToolBar extends ChartEditorToolBar {
 	
 	public final static String ID = "AdvancedChartEditorToolBar";
-	private ToolItem showTitleButton;
-	private ToolItem showLegendButton;
-	private ToolItem showGridButton;
-	private Combo renderingModeCombo;
-	private Combo fontCombo;
-	private Combo fontSizeCombo;
-	private Combo chartTypeCombo;
-	private Font currentFont;
-	private Combo fontStyleCombo;
+
 	
+
 	/**
 	 * Creates a new chart editor tool bar dedicated to advanced parameters.
 	 * @param parent
@@ -55,91 +46,87 @@
 	 */
 	public AdvancedChartEditorToolBar(ChartEditor<? extends ChartResult> chartEditor, Composite parent, GLComposite subWidgetsComposite, int style) {
 		super(chartEditor, parent, subWidgetsComposite, style, AdvancedChartEditorToolBar.ID);
+
 		
+		// Show/hide chart title button
+		final ToolItem showTitleButton = new ToolItem(this, SWT.CHECK);
+		// showTitleButton.setText(SWTComponentsProviderMessages.showhideTitle);
+		showTitleButton.setImage(IImageKeys.getImage(getClass(), "icons/show_title.png")); //$NON-NLS-1$
+		showTitleButton.setDisabledImage(IImageKeys.getImage(getClass(), "icons/show_title_disabled.png")); //$NON-NLS-1$
+		showTitleButton.setToolTipText(ChartsUIMessages.showhideTitle);
+
 		if (!chartEditor.getResult().isEmptyPreference(ChartsEnginePreferences.SHOW_TITLE)) {
-			showTitleButton = new ToolItem(this, SWT.CHECK);
-			// showTitleButton.setText(SWTComponentsProviderMessages.showhideTitle);
-			showTitleButton.setImage(IImageKeys.getImage(getClass(), "icons/show_title.png")); //$NON-NLS-1$
-			showTitleButton.setDisabledImage(IImageKeys.getImage(getClass(), "icons/show_title_disabled.png")); //$NON-NLS-1$
-			showTitleButton.setToolTipText(ChartsUIMessages.showhideTitle);
-			
 			showTitleButton.setSelection(chartEditor.getResult().isTitleVisible());
 		}
-		//		// disable if not managed by the command
-		//		else {
-		//			showTitleButton.setEnabled(false);
-		//		}
+		// disable if not managed by the command
+		else {
+			showTitleButton.setEnabled(false);
+		}
 		
+		
+		// Show/hide chart legend button
+		final ToolItem showLegendButton = new ToolItem(this, SWT.CHECK);
+		// showLegendButton.setText(SWTComponentsProviderMessages.showhideLegend);
+		showLegendButton.setImage(IImageKeys.getImage(getClass(), "icons/show_legend.png")); //$NON-NLS-1$
+		showLegendButton.setDisabledImage(IImageKeys.getImage(getClass(), "icons/show_legend_disabled.png")); //$NON-NLS-1$
+		showLegendButton.setToolTipText(ChartsUIMessages.showhideLegend);
+
 		if (!chartEditor.getResult().isEmptyPreference(ChartsEnginePreferences.SHOW_LEGEND)) {
-			showLegendButton = new ToolItem(this, SWT.CHECK);
-			// showLegendButton.setText(SWTComponentsProviderMessages.showhideLegend);
-			showLegendButton.setImage(IImageKeys.getImage(getClass(), "icons/show_legend.png")); //$NON-NLS-1$
-			showLegendButton.setDisabledImage(IImageKeys.getImage(getClass(), "icons/show_legend_disabled.png")); //$NON-NLS-1$
-			showLegendButton.setToolTipText(ChartsUIMessages.showhideLegend);
-			
 			showLegendButton.setSelection(chartEditor.getResult().isLegendVisible());
 		}
-		//		// disable if not managed by the command
-		//		else {
-		//			showLegendButton.setEnabled(false);
-		//		}
+		// disable if not managed by the command
+		else {
+			showLegendButton.setEnabled(false);
+		}
 		
+		
+		// Show/hide chart background grid button
+		final ToolItem showGridButton = new ToolItem(this, SWT.CHECK);
+		// showGridButton.setText(SWTComponentsProviderMessages.showhideGrid);
+		showGridButton.setImage(IImageKeys.getImage(getClass(), "icons/show_grid.png")); //$NON-NLS-1$
+		showGridButton.setDisabledImage(IImageKeys.getImage(getClass(), "icons/show_grid_disabled.png")); //$NON-NLS-1$
+		showGridButton.setToolTipText(ChartsUIMessages.showhideGrid);
+
 		if (!chartEditor.getResult().isEmptyPreference(ChartsEnginePreferences.SHOW_GRID)) {
-			showGridButton = new ToolItem(this, SWT.CHECK);
-			// showGridButton.setText(SWTComponentsProviderMessages.showhideGrid);
-			showGridButton.setImage(IImageKeys.getImage(getClass(), "icons/show_grid.png")); //$NON-NLS-1$
-			showGridButton.setDisabledImage(IImageKeys.getImage(getClass(), "icons/show_grid_disabled.png")); //$NON-NLS-1$
-			showGridButton.setToolTipText(ChartsUIMessages.showhideGrid);
-			
 			showGridButton.setSelection(chartEditor.getResult().isGridVisible());
 		}
-		//		// disable if not managed by the command
-		//		else {
-		//			showGridButton.setEnabled(false);
-		//		}
+		// disable if not managed by the command
+		else {
+			showGridButton.setEnabled(false);
+		}
+
+
+		// Rendering colors mode selection
+		new ToolItem(this, SWT.SEPARATOR);
+		final Combo renderingModeCombo = new Combo(this, SWT.READ_ONLY);
+		String colorsModes[] = new String[] { ChartsUIMessages.colors,
+				ChartsUIMessages.grayscale,
+				ChartsUIMessages.blackAndWhite,
+				ChartsUIMessages.monochrome
+		};
+		renderingModeCombo.setItems(colorsModes);
 		
+		this.addCombo(renderingModeCombo);
 		
 		if (!chartEditor.getResult().isEmptyPreference(ChartsEnginePreferences.RENDERING_COLORS_MODE)) {
-			// Rendering colors mode selection
-			new ToolItem(this, SWT.SEPARATOR);
-			renderingModeCombo = new Combo(this, SWT.READ_ONLY);
-			String colorsModes[] = new String[] { ChartsUIMessages.colors,
-					ChartsUIMessages.grayscale,
-					ChartsUIMessages.blackAndWhite,
-					ChartsUIMessages.monochrome
-			};
-			renderingModeCombo.setItems(colorsModes);
-			
-//			ToolItem renderingComboItem = new ToolItem(this, SWT.SEPARATOR);
-//			renderingComboItem.setControl(renderingModeCombo);
-//			renderingModeCombo.pack();
-//			renderingComboItem.setWidth(renderingModeCombo.getBounds().width);
-			
-			this.addControl(renderingModeCombo);
-			
 			renderingModeCombo.select(chartEditor.getResult().getRenderingColorsMode());
 		}
-		//		// disable if not managed
-		//		else {
-		//			renderingModeCombo.setEnabled(false);
-		//		}
+		// disable if not managed
+		else {
+			renderingModeCombo.setEnabled(false);
+		}
+
 		
-		
 		// Font selection
-		currentFont = ChartsEngine.createFont(chartEditor.getResult().getFont());
+		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();
-		fontCombo = new Combo(this, SWT.READ_ONLY);
+		final Combo fontCombo = new Combo(this, SWT.READ_ONLY);
 		String fonts[] = GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames();
 		fontCombo.setItems(fonts);
 		
-//		ToolItem fontsComboItem = new ToolItem(this, SWT.SEPARATOR);
-//		fontsComboItem.setControl(fontCombo);
-//		fontCombo.pack();
-//		fontsComboItem.setWidth(fontCombo.getBounds().width);
+		this.addCombo(fontCombo);
 		
-		this.addControl(fontCombo);
-		
 		int currentFontIndex = 0;
 		for (int i = 0; i < fonts.length; i++) {
 			if (fonts[i].equals(currentFont.getName())) {
@@ -148,9 +135,10 @@
 			}
 		}
 		fontCombo.select(currentFontIndex);
-		
+
+
 		// Font size
-		fontSizeCombo = new Combo(this, SWT.READ_ONLY);
+		final Combo fontSizeCombo = new Combo(this, SWT.READ_ONLY);
 		String fontSizes[] = new String[30];
 		int currentFontSizeIndex = 0;
 		for (int i = 0; i < fontSizes.length; i++) {
@@ -162,20 +150,14 @@
 		}
 		fontSizeCombo.setItems(fontSizes);
 		
-//		ToolItem fontSizeComboItem = new ToolItem(this, SWT.SEPARATOR);
-//		fontSizeComboItem.setControl(fontSizeCombo);
-//		fontSizeCombo.pack();
-//		fontSizeComboItem.setWidth(fontSizeCombo.getBounds().width);
+		this.addCombo(fontSizeCombo);
 		
-		this.addControl(fontSizeCombo);
-		
 		fontSizeCombo.select(currentFontSizeIndex);
 		
-		
+
 		// Font style
-		fontStyleCombo = new Combo(this, SWT.READ_ONLY);
+		final Combo fontStyleCombo = new Combo(this, SWT.READ_ONLY);
 
-		
 		//FIXME: SJ: the styles list should be builded from the available styles of the current selected font.
 		// Here are some tests to try to get the available styles
 		
@@ -204,19 +186,14 @@
 		int currentFontStyleIndex = currentFont.getStyle();
 		fontStyleCombo.setItems(fontStyles);
 		
-//		ToolItem fontStyleComboItem = new ToolItem(this, SWT.SEPARATOR);
-//		fontStyleComboItem.setControl(fontStyleCombo);
-//		fontStyleCombo.pack();
-//		fontStyleComboItem.setWidth(fontStyleCombo.getBounds().width);
+		this.addCombo(fontStyleCombo);
 		
-		this.addControl(fontStyleCombo);
-		
 		fontStyleCombo.select(currentFontStyleIndex);
 		
 		
-		
+		// FIXME: SJ: this Combo may not be created if is not in expert mode. At this moment, it's created and hidden
 		// Chart types from installed chart creators in all installed charts engines
-		chartTypeCombo = new Combo(this, SWT.READ_ONLY);
+		final Combo chartTypeCombo = new Combo(this, SWT.READ_ONLY);
 		if (TBXPreferences.getInstance().getBoolean(TBXPreferences.EXPERT_USER)) {
 			
 			ArrayList<String> chartsEngineNames = new ArrayList<>();
@@ -251,15 +228,9 @@
 			}
 			chartTypeCombo.setItems(chartTypes);
 			
-//			ToolItem chartTypeComboItem = new ToolItem(this, SWT.SEPARATOR);
-//			chartTypeComboItem.setControl(chartTypeCombo);
-//			chartTypeCombo.pack();
-//			chartTypeComboItem.setWidth(chartTypeCombo.getBounds().width);
+			this.addCombo(chartTypeCombo);
 			
-
-			this.addControl(chartTypeCombo);
 			
-			
 			chartTypeCombo.select(currentChartCreatorIndex);
 			
 			
@@ -267,6 +238,9 @@
 				chartTypeCombo.setVisible(false);
 			}
 		}
+		else  {
+			chartTypeCombo.setVisible(false);
+		}
 		
 		
 		// Listeners
@@ -332,14 +306,27 @@
 				
 			}
 		};
-		if (showTitleButton != null) showTitleButton.addSelectionListener(listener);
-		if (showLegendButton != null) showLegendButton.addSelectionListener(listener);
-		if (showGridButton != null) showGridButton.addSelectionListener(listener);
-		if (renderingModeCombo != null) renderingModeCombo.addSelectionListener(listener);
-		if (fontCombo != null) fontCombo.addSelectionListener(listener);
-		if (fontSizeCombo != null) fontSizeCombo.addSelectionListener(listener);
-		if (fontStyleCombo != null) fontStyleCombo.addSelectionListener(listener);
-		if (chartTypeCombo != null) chartTypeCombo.addSelectionListener(listener);
+		
+		
+		// Add listener
+		if (showTitleButton.isEnabled()) {
+			showTitleButton.addSelectionListener(listener);
+		}
+		if (showLegendButton != null) {
+			showLegendButton.addSelectionListener(listener);
+		}
+		if (showGridButton != null) {
+			showGridButton.addSelectionListener(listener);
+		}
+		if (renderingModeCombo != null) {
+			renderingModeCombo.addSelectionListener(listener);
+		}
+		fontCombo.addSelectionListener(listener);
+		fontSizeCombo.addSelectionListener(listener);
+		fontStyleCombo.addSelectionListener(listener);
+		if (chartTypeCombo.isVisible()) {
+			chartTypeCombo.addSelectionListener(listener);
+		}
 	}
 	
 	
Index: TXM/trunk/org.txm.cooccurrence.chartsengine/META-INF/MANIFEST.MF
===================================================================
--- TXM/trunk/org.txm.cooccurrence.chartsengine/META-INF/MANIFEST.MF	(revision 3567)
+++ TXM/trunk/org.txm.cooccurrence.chartsengine/META-INF/MANIFEST.MF	(revision 3568)
@@ -1,7 +1,7 @@
 Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Cooccurrence Graphs
-Bundle-SymbolicName: org.txm.cooccurrence.chartsengine;singleton:=true
+Bundle-SymbolicName: org.txm.dev.cooccurrence.chartsengine;singleton:=true
 Bundle-Version: 1.0.0.qualifier
 Bundle-Vendor: Textometrie.org
 Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Index: TXM/trunk/org.txm.cooccurrence.chartsengine/.project
===================================================================
--- TXM/trunk/org.txm.cooccurrence.chartsengine/.project	(revision 3567)
+++ TXM/trunk/org.txm.cooccurrence.chartsengine/.project	(revision 3568)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <projectDescription>
-	<name>org.txm.cooccurrence.chartsengine</name>
+	<name>org.txm.dev.cooccurrence.chartsengine</name>
 	<comment></comment>
 	<projects>
 	</projects>
Index: TXM/trunk/org.txm.index.rcp/src/org/txm/index/rcp/handlers/ComputeIndex.java
===================================================================
--- TXM/trunk/org.txm.index.rcp/src/org/txm/index/rcp/handlers/ComputeIndex.java	(revision 3567)
+++ TXM/trunk/org.txm.index.rcp/src/org/txm/index/rcp/handlers/ComputeIndex.java	(revision 3568)
@@ -56,7 +56,8 @@
 		
 		Index index = null;
 		
-		// From link: creating from parameters node
+		// From link/"send to command": creating from a prebuilt parameter node path
+		//FIXME: SJ: all "Send to" commands have a different node path schema than normal result creation since we do not know the target class in the source handler (the class string is replaced with "_link")  
 		String parametersNodePath = event.getParameter(TXMPreferences.RESULT_PARAMETERS_NODE_PATH);
 		if (parametersNodePath != null && !parametersNodePath.isEmpty()) {
 			index = new Index(parametersNodePath);
