Index: tmp/org.txm.rcp/plugin.xml
===================================================================
--- tmp/org.txm.rcp/plugin.xml	(revision 1098)
+++ tmp/org.txm.rcp/plugin.xml	(revision 1099)
@@ -2116,52 +2116,6 @@
             </command>
 
       </menuContribution>
-      <menuContribution
-            locationURI="popup:org.txm.rcp.views.BasesView">
-         <separator
-               name="org.txm.rcp.separator1">
-         </separator>
-         <command
-               commandId="org.txm.rcp.handlers.results.DeleteObject"
-               icon="icons/functions/Delete.png"
-               label="%command.label.65"
-               style="push"
-               tooltip="%command.tooltip.33">
-            <visibleWhen
-                  checkEnabled="false">
-               <or>
-                  <reference
-                        definitionId="OnePartitionSelected">
-                  </reference>
-                  <reference
-                        definitionId="OneSubCorpusSelected">
-                  </reference>
-                  <reference
-                        definitionId="OneBaseSelected">
-                  </reference>
-                  <reference
-                        definitionId="OneIndexSelected">
-                  </reference>
-                  <reference
-                        definitionId="OneLexiconSelected">
-                  </reference>
-                  <reference
-                        definitionId="OneConcordanceSelected">
-                  </reference>
-                  <reference
-                        definitionId="OneCASelected">
-                  </reference>
-                  <reference
-                        definitionId="OneSpecificitiesResultSelected">
-                  </reference>
-                  <reference
-                        definitionId="OneMainCorpusSelected">
-                  </reference>
-               </or>
-            </visibleWhen>
-         </command>
-        
-      </menuContribution>
 
       <menuContribution
             locationURI="popup:org.txm.rcp.editors.SVGGraphicEditor">
@@ -2541,46 +2495,11 @@
          name="%extension.name.3"
          point="org.eclipse.ui.commands">
       <command
-            defaultHandler="org.txm.rcp.commands.workspace.AddProject"
-            id="org.txm.rcp.commands.workspace.AddProject"
-            name="%command.name.11">
-      </command>
-      <command
-            defaultHandler="org.txm.rcp.commands.workspace.RemoveProject"
-            id="org.txm.rcp.commands.workspace.RemoveProject"
-            name="%command.name.12">
-      </command>
-      <command
-            defaultHandler="org.txm.rcp.commands.workspace.LoadBinaryCorpus"
-            id="org.txm.rcp.commands.workspace.LoadBinaryCorpus"
-            name="%command.name.13">
-      </command>
-      <command
             defaultHandler="org.txm.rcp.commands.workspace.LoadBinaryCorporaDirectory"
             id="org.txm.rcp.commands.workspace.LoadBinaryCorporaDirectory"
             name="%command.name.5">
       </command>
       <command
-            defaultHandler="org.txm.rcp.commands.workspace.RemoveBase"
-            id="org.txm.rcp.commands.workspace.RemoveBase"
-            name="%command.name.14">
-      </command>
-      <command
-            defaultHandler="org.txm.rcp.commands.workspace.AddText"
-            id="org.txm.rcp.commands.workspace.AddText"
-            name="%command.name.15">
-      </command>
-      <command
-            defaultHandler="org.txm.rcp.commands.workspace.RemoveText"
-            id="org.txm.rcp.commands.workspace.RemoveText"
-            name="%command.name.16">
-      </command>
-      <command
-            defaultHandler="org.txm.rcp.commands.workspace.BuildCorpus"
-            id="org.txm.rcp.commands.workspace"
-            name="%command.name.17">
-      </command>
-      <command
             defaultHandler="org.txm.rcp.commands.queryview.Copy"
             id="org.txm.rcp.commands.queryview.Copy"
             name="%command.name.55">
@@ -2598,7 +2517,7 @@
       <command
             defaultHandler="org.txm.rcp.handlers.results.CloneTXMResult"
             id="CloneTXMResult"
-            name="%command.name.7">
+            name="Clone">
       </command>
       <command
             defaultHandler="org.txm.rcp.views.debug.RefreshDebugView"
Index: tmp/org.txm.searchengine.cqp.core/src/org/txm/searchengine/cqp/corpus/query/CQLQuery.java
===================================================================
--- tmp/org.txm.searchengine.cqp.core/src/org/txm/searchengine/cqp/corpus/query/CQLQuery.java	(revision 1098)
+++ tmp/org.txm.searchengine.cqp.core/src/org/txm/searchengine/cqp/corpus/query/CQLQuery.java	(revision 1099)
@@ -368,9 +368,12 @@
 	
 	@Override
 	public boolean equals(Object obj) {
+		if (obj == null) return false;
 		if (!(obj instanceof CQLQuery)) {
 			return false;
 		}
+		if (this.queryString == null) return false;
+		
 		return this.queryString.equals(((CQLQuery) obj).queryString);
 	}
 
Index: tmp/org.txm.searchengine.cqp.core/src/org/txm/searchengine/cqp/corpus/Subcorpus.java
===================================================================
--- tmp/org.txm.searchengine.cqp.core/src/org/txm/searchengine/cqp/corpus/Subcorpus.java	(revision 1098)
+++ tmp/org.txm.searchengine.cqp.core/src/org/txm/searchengine/cqp/corpus/Subcorpus.java	(revision 1099)
@@ -498,7 +498,7 @@
 	@Override
 	public boolean saveParameters() throws Exception {
 		if (pQuery != null) {
-			this.setParameter(TBXPreferences.QUERY, pQuery.getQueryString());
+			this.saveParameter(TBXPreferences.QUERY, pQuery.getQueryString());
 		}
 		return true;
 	}
Index: tmp/org.txm.searchengine.cqp.core/src/org/txm/searchengine/cqp/corpus/Part.java
===================================================================
--- tmp/org.txm.searchengine.cqp.core/src/org/txm/searchengine/cqp/corpus/Part.java	(revision 1098)
+++ tmp/org.txm.searchengine.cqp.core/src/org/txm/searchengine/cqp/corpus/Part.java	(revision 1099)
@@ -29,12 +29,7 @@
 
 import java.io.File;
 
-import org.txm.core.results.Parameter;
-import org.txm.core.results.TXMParameters;
-import org.txm.core.results.TXMResult;
 import org.txm.searchengine.cqp.clientExceptions.CqiClientException;
-import org.txm.searchengine.cqp.corpus.query.CQLQuery;
-import org.w3c.dom.Element;
 
 /**
  * A Part is related to the {@link Partition} and is a CQP this.
@@ -43,11 +38,6 @@
  */
 public class Part extends Subcorpus {
 
-	@Parameter(key="subcorpus_uuid")
-	String pSubCorpusUUID;
-	
-	Subcorpus subcorpus; // la part fait référence à un sous-corpus
-
 	/** The number of texts composing this part. */
 	private int nTexts = -1;
 
@@ -57,7 +47,6 @@
 		this.setVisible(false);
 		this.persistable = true;
 		this.userPersistable = false;
-		this.subcorpus = (Subcorpus) TXMResult.getResult(pSubCorpusUUID);
 	}
 	
 	public Part(String uuid) {
@@ -66,7 +55,6 @@
 		this.setVisible(false);
 		this.persistable = true;
 		this.userPersistable = false;
-		this.subcorpus = (Subcorpus) TXMResult.getResult(pSubCorpusUUID);
 	}
 	
 	public Partition getParent() {
@@ -101,8 +89,4 @@
 	public String getResultype() {
 		return "Part";
 	}
-
-	public Subcorpus getSubCorpus() {
-		return subcorpus;
-	}
 }
Index: tmp/org.txm.core/src/java/org/txm/objects/Page.java
===================================================================
--- tmp/org.txm.core/src/java/org/txm/objects/Page.java	(revision 1098)
+++ tmp/org.txm.core/src/java/org/txm/objects/Page.java	(revision 1099)
@@ -65,6 +65,7 @@
 		this.edition = edition;
 		this.name = name;
 		this.firstWordId = wordid;
+		this.htmlfile = new File(edition.getHtmlDir(), name+".html");
 	}
 	
 	/**
Index: tmp/org.txm.core/src/java/org/txm/objects/Edition.java
===================================================================
--- tmp/org.txm.core/src/java/org/txm/objects/Edition.java	(revision 1098)
+++ tmp/org.txm.core/src/java/org/txm/objects/Edition.java	(revision 1099)
@@ -63,6 +63,7 @@
 
 	@Parameter(key=TBXPreferences.NAMES)
 	ArrayList<String> pPageNames = new ArrayList<String>();
+	
 	@Parameter(key="pages_wordids")
 	ArrayList<String> pPageFirstWordIds = new ArrayList<String>();
 
@@ -356,6 +357,12 @@
 		if (wordids != null && wordids.length() > 0) {
 			pPageFirstWordIds = new ArrayList<>(Arrays.asList(wordids.split("\t")));
 		}
+		
+		pages.clear();
+		for (int i = 0 ; i < pPageNames.size() && i < pPageFirstWordIds.size() ; i++) {
+			pages.add(new Page(this, pPageNames.get(i), pPageFirstWordIds.get(i)));
+		}
+		
 		return true;
 	}
 
Index: tmp/org.txm.core/src/java/org/txm/objects/Project.java
===================================================================
--- tmp/org.txm.core/src/java/org/txm/objects/Project.java	(revision 1098)
+++ tmp/org.txm.core/src/java/org/txm/objects/Project.java	(revision 1099)
@@ -78,7 +78,7 @@
 	private HashMap<String, Alignement> links = new HashMap<String, Alignement>();
 
 	@Parameter(key=TBXPreferences.DEFAULT_EDITION)
-	private String pDefaultEditionName = null;
+	private String pDefaultEditionName;
 
 	/** The encoding. */
 	@Parameter(key=TBXPreferences.ENCODING)
Index: tmp/org.txm.groovy.core/src/java/org/txm/groovy/core/GSERunner.java
===================================================================
--- tmp/org.txm.groovy.core/src/java/org/txm/groovy/core/GSERunner.java	(revision 1098)
+++ tmp/org.txm.groovy.core/src/java/org/txm/groovy/core/GSERunner.java	(revision 1099)
@@ -57,7 +57,7 @@
 		// check if script root dir was changed
 		if (defaultScriptRootDir.equals(scriptRootDir) && defaultGSE != null) {
 			try {
-				defaultGSE.getGroovyClassLoader().addURL(new URL("file://"+script.getParent()));
+				defaultGSE.getGroovyClassLoader().addURL(script.getParentFile().toURI().toURL());
 			} catch (MalformedURLException e) {
 				// TODO Auto-generated catch block
 				e.printStackTrace();
@@ -161,10 +161,26 @@
 	 * @param clazz
 	 * @param args
 	 * @return
+	 * @throws MalformedURLException 
 	 * @throws ResourceException
 	 * @throws ScriptException
 	 */
 	@SuppressWarnings("rawtypes")
+	public Object run(File script, Binding binding) throws MalformedURLException, ResourceException, ScriptException {
+		return super.run(script.toURI().toURL().toString(), binding);
+	}
+	
+	/**
+	 * 
+	 * Simplify the call a Groovy script within a Groovy script and allow to send named and typed arguments
+	 * 
+	 * @param clazz
+	 * @param args
+	 * @return
+	 * @throws ResourceException
+	 * @throws ScriptException
+	 */
+	@SuppressWarnings("rawtypes")
 	public Object run(Class clazz, Map args) throws ResourceException, ScriptException {
 		return run(clazz.getCanonicalName().replace(".", "/")+".groovy", new Binding(args));
 	}
Index: tmp/org.txm.groovy.core/src/java/org/txm/groovy/core/GroovyScriptedImportEngine.java
===================================================================
--- tmp/org.txm.groovy.core/src/java/org/txm/groovy/core/GroovyScriptedImportEngine.java	(revision 1098)
+++ tmp/org.txm.groovy.core/src/java/org/txm/groovy/core/GroovyScriptedImportEngine.java	(revision 1099)
@@ -86,7 +86,7 @@
 
 			ExecTimer.start();
 			Log.info("Start of Groovy import script" + mainScript.getAbsolutePath()); //$NON-NLS-1$
-			gse.run(mainScript.getAbsolutePath(), binding); // run the groovy import script
+			gse.run(mainScript.toURI().toURL().toString(), binding); // run the groovy import script
 			System.out.println("\nEnd of Groovy import script: "+ExecTimer.stop()); //$NON-NLS-1$
 			monitor.worked(90);
 
