BugĀ 514634 Spring cleaning

Projects & packages name normalization
Adding Execution folder & refactoring some gui project

Amend: adding Copyright in build.properties
Amend: adding newWizardShortcut for Examples in Modeling & Editing
perspective

Change-Id: I20ae04ac446bac31f9611e90b408e9c606676d71
Signed-off-by: Arnault Lapitre <arnault.lapitre@cea.fr>
diff --git a/gui/org.eclipse.efm.ui.views/.classpath b/gui/org.eclipse.efm.editing.ui/.classpath
similarity index 100%
rename from gui/org.eclipse.efm.ui.views/.classpath
rename to gui/org.eclipse.efm.editing.ui/.classpath
diff --git a/gui/org.eclipse.efm.editing.ui/.gitignore b/gui/org.eclipse.efm.editing.ui/.gitignore
new file mode 100644
index 0000000..a1d9a41
--- /dev/null
+++ b/gui/org.eclipse.efm.editing.ui/.gitignore
@@ -0,0 +1,2 @@
+/bin/
+/target/**
diff --git a/gui/org.eclipse.efm.ui.views/.project b/gui/org.eclipse.efm.editing.ui/.project
similarity index 93%
copy from gui/org.eclipse.efm.ui.views/.project
copy to gui/org.eclipse.efm.editing.ui/.project
index de9c404..7190a86 100644
--- a/gui/org.eclipse.efm.ui.views/.project
+++ b/gui/org.eclipse.efm.editing.ui/.project
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>

 <projectDescription>

-	<name>org.eclipse.efm.ui.views</name>

+	<name>org.eclipse.efm.editing.ui</name>

 	<comment></comment>

 	<projects>

 	</projects>

diff --git a/gui/org.eclipse.efm.ui.views/.settings/org.eclipse.jdt.core.prefs b/gui/org.eclipse.efm.editing.ui/.settings/org.eclipse.jdt.core.prefs
similarity index 100%
rename from gui/org.eclipse.efm.ui.views/.settings/org.eclipse.jdt.core.prefs
rename to gui/org.eclipse.efm.editing.ui/.settings/org.eclipse.jdt.core.prefs
diff --git a/gui/org.eclipse.efm.editing.ui/META-INF/MANIFEST.MF b/gui/org.eclipse.efm.editing.ui/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..e0a9877
--- /dev/null
+++ b/gui/org.eclipse.efm.editing.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,11 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.efm.editing.ui;singleton:=true
+Bundle-Version: 0.0.1.qualifier
+Bundle-Activator: org.eclipse.efm.editing.ui.Activator
+Bundle-Vendor: %pluginVendor
+Require-Bundle: org.eclipse.ui,

+ org.eclipse.core.runtime
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Bundle-ActivationPolicy: lazy
diff --git a/gui/org.eclipse.efm.ui.views/about.html b/gui/org.eclipse.efm.editing.ui/about.html
similarity index 100%
rename from gui/org.eclipse.efm.ui.views/about.html
rename to gui/org.eclipse.efm.editing.ui/about.html
diff --git a/gui/org.eclipse.efm.editing.ui/build.properties b/gui/org.eclipse.efm.editing.ui/build.properties
new file mode 100644
index 0000000..21da636
--- /dev/null
+++ b/gui/org.eclipse.efm.editing.ui/build.properties
@@ -0,0 +1,17 @@
+###############################################################################

+# Copyright (c) 2017 CEA LIST.

+#

+# All rights reserved. This program and the accompanying materials

+# are made available under the terms of the Eclipse Public License v1.0

+# which accompanies this distribution, and is available at

+# http://www.eclipse.org/legal/epl-v10.html

+#

+# Contributors:

+#  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr

+#   - Initial API and Implementation

+###############################################################################

+source.. = src/

+output.. = bin/

+bin.includes = META-INF/,\

+               .,\

+               plugin.xml

diff --git a/gui/org.eclipse.efm.editing.ui/plugin.xml b/gui/org.eclipse.efm.editing.ui/plugin.xml
new file mode 100644
index 0000000..2124034
--- /dev/null
+++ b/gui/org.eclipse.efm.editing.ui/plugin.xml
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<?eclipse version="3.4"?>

+<plugin>

+   <extension

+         point="org.eclipse.ui.perspectives">

+      <perspective

+            class="org.eclipse.efm.editing.ui.PerspectiveEditing"

+            fixed="true"

+            icon="platform:/plugin/org.eclipse.efm.ui/resources/icons/diversity_icon.png"

+            id="org.eclipse.efm.editing.ui.perspectiveEditing"

+            name="EFM-Editing">

+      </perspective>

+   </extension>

+   <extension

+         point="org.eclipse.ui.perspectiveExtensions">

+      <perspectiveExtension

+            targetID="org.eclipse.efm.editing.ui.perspectiveEditing">

+         <view

+               closeable="true"

+               id="org.eclipse.ui.navigator.ProjectExplorer"

+               minimized="false"

+               moveable="true"

+               ratio="0.2"

+               relationship="left"

+               relative="org.eclipse.ui.editorss"

+               showTitle="true"

+               standalone="false"

+               visible="true">

+         </view>

+         <view

+               closeable="true"

+               id="org.eclipse.ui.views.ContentOutline"

+               minimized="false"

+               moveable="true"

+               ratio="0.6"

+               relationship="bottom"

+               relative="org.eclipse.ui.navigator.ProjectExplorer"

+               showTitle="true"

+               standalone="false"

+               visible="true">

+         </view>

+         <view

+               closeable="true"

+               id="org.eclipse.ui.views.PropertySheet"

+               minimized="false"

+               moveable="true"

+               ratio="0.6"

+               relationship="bottom"

+               relative="org.eclipse.ui.editorss"

+               showTitle="true"

+               standalone="false"

+               visible="true">

+         </view>

+         <view

+               closeable="true"

+               id="org.eclipse.ui.console.ConsoleView"

+               minimized="false"

+               moveable="true"

+               relationship="stack"

+               relative="org.eclipse.ui.views.PropertySheet"

+               showTitle="true"

+               standalone="false"

+               visible="true">

+         </view>

+         <actionSet

+               id="org.eclipse.debug.ui.launchActionSet">

+         </actionSet>

+         <newWizardShortcut

+               id="org.eclipse.efm.modeling.ui.newproject.examples.xlia.CoffeeMachine">

+         </newWizardShortcut>

+         <newWizardShortcut

+               id="org.eclipse.efm.modeling.ui.newproject.examples.xlia.ComplexDog">

+         </newWizardShortcut>

+         <newWizardShortcut

+               id="org.eclipse.efm.modeling.ui.newproject.examples.xlia.CoffeeMachine">

+         </newWizardShortcut>

+         <newWizardShortcut

+               id="org.eclipse.efm.modeling.ui.newproject.examples.xlia.WaterSystem">

+         </newWizardShortcut>

+         <perspectiveShortcut

+               id="org.eclipse.efm.execution.ui.perspectiveExecution">

+         </perspectiveShortcut>

+      </perspectiveExtension>

+   </extension>

+   <extension

+         point="org.eclipse.ui.preferencePages">

+      <page

+            category="org.eclipse.efm.ui.preferences.mainPreferencePage"

+            class="org.eclipse.efm.editing.internal.ui.preferences.XtextRootPreferencePage"

+            id="org.eclipse.efm.editing.ui.preferences.mainXtextPreferencePage"

+            name="Xtext Editors">

+      </page>

+   </extension>

+

+</plugin>

diff --git a/gui/org.eclipse.efm.ui.preferences_root/pom.xml b/gui/org.eclipse.efm.editing.ui/pom.xml
similarity index 70%
copy from gui/org.eclipse.efm.ui.preferences_root/pom.xml
copy to gui/org.eclipse.efm.editing.ui/pom.xml
index a4be8ea..4eaf4f3 100644
--- a/gui/org.eclipse.efm.ui.preferences_root/pom.xml
+++ b/gui/org.eclipse.efm.editing.ui/pom.xml
@@ -7,8 +7,8 @@
 		<artifactId>org.eclipse.efm.modeling.gui</artifactId>
 		<version>0.0.1-SNAPSHOT</version>
 	</parent>
-	<artifactId>org.eclipse.efm.ui.preferences_root</artifactId>
+	<artifactId>org.eclipse.efm.editing.ui</artifactId>
 	<packaging>eclipse-plugin</packaging>
-	<name>org.eclipse.efm.ui.preferences_root</name>
-	<description>This plug-in contains the XXXXXXXXX.</description>
+	<name>org.eclipse.efm.editing.ui</name>
+	<description>This plug-in contains the textual editing UI components (perspective, ...).</description>
 </project>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.ui.preferences.xtext_root/src/org/eclipse/efm/ui/runsession/preferences/xtext_root/XtextRootPreferencePage.java b/gui/org.eclipse.efm.editing.ui/src/org/eclipse/efm/editing/internal/ui/preferences/XtextRootPreferencePage.java
similarity index 93%
rename from gui/org.eclipse.efm.ui.preferences.xtext_root/src/org/eclipse/efm/ui/runsession/preferences/xtext_root/XtextRootPreferencePage.java
rename to gui/org.eclipse.efm.editing.ui/src/org/eclipse/efm/editing/internal/ui/preferences/XtextRootPreferencePage.java
index 0492459..c387962 100644
--- a/gui/org.eclipse.efm.ui.preferences.xtext_root/src/org/eclipse/efm/ui/runsession/preferences/xtext_root/XtextRootPreferencePage.java
+++ b/gui/org.eclipse.efm.editing.ui/src/org/eclipse/efm/editing/internal/ui/preferences/XtextRootPreferencePage.java
@@ -7,8 +7,8 @@
  *

  * Contributors:

  *     Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.runsession.preferences.xtext_root;

+ *******************************************************************************/
+package org.eclipse.efm.editing.internal.ui.preferences;

 

 

 import org.eclipse.jface.preference.FieldEditorPreferencePage;

diff --git a/gui/org.eclipse.efm.editing.ui/src/org/eclipse/efm/editing/ui/Activator.java b/gui/org.eclipse.efm.editing.ui/src/org/eclipse/efm/editing/ui/Activator.java
new file mode 100644
index 0000000..a618875
--- /dev/null
+++ b/gui/org.eclipse.efm.editing.ui/src/org/eclipse/efm/editing/ui/Activator.java
@@ -0,0 +1,62 @@
+/*******************************************************************************

+ * Copyright (c) 2017 CEA LIST.

+ *

+ * All rights reserved. This program and the accompanying materials

+ * are made available under the terms of the Eclipse Public License v1.0

+ * which accompanies this distribution, and is available at

+ * http://www.eclipse.org/legal/epl-v10.html

+ *

+ * Contributors:

+ *  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr

+ *   - Initial API and Implementation

+ *******************************************************************************/

+package org.eclipse.efm.editing.ui;

+

+import org.eclipse.ui.plugin.AbstractUIPlugin;

+import org.osgi.framework.BundleContext;

+

+/**

+ * The activator class controls the plug-in life cycle

+ */

+public class Activator extends AbstractUIPlugin {

+

+	// The plug-in ID

+	public static final String PLUGIN_ID = "org.eclipse.efm.editing.ui"; //$NON-NLS-1$

+

+	// The shared instance

+	private static Activator plugin;

+	

+	/**

+	 * The constructor

+	 */

+	public Activator() {

+	}

+

+	/*

+	 * (non-Javadoc)

+	 * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)

+	 */

+	public void start(BundleContext context) throws Exception {

+		super.start(context);

+		plugin = this;

+	}

+

+	/*

+	 * (non-Javadoc)

+	 * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)

+	 */

+	public void stop(BundleContext context) throws Exception {

+		plugin = null;

+		super.stop(context);

+	}

+

+	/**

+	 * Returns the shared instance

+	 *

+	 * @return the shared instance

+	 */

+	public static Activator getDefault() {

+		return plugin;

+	}

+

+}

diff --git a/gui/org.eclipse.efm.ui/src/org/eclipse/efm/ui/PerspectiveSymbexWorkflow.java b/gui/org.eclipse.efm.editing.ui/src/org/eclipse/efm/editing/ui/PerspectiveEditing.java
similarity index 87%
rename from gui/org.eclipse.efm.ui/src/org/eclipse/efm/ui/PerspectiveSymbexWorkflow.java
rename to gui/org.eclipse.efm.editing.ui/src/org/eclipse/efm/editing/ui/PerspectiveEditing.java
index 8a778b5..931a9b4 100644
--- a/gui/org.eclipse.efm.ui/src/org/eclipse/efm/ui/PerspectiveSymbexWorkflow.java
+++ b/gui/org.eclipse.efm.editing.ui/src/org/eclipse/efm/editing/ui/PerspectiveEditing.java
@@ -1,26 +1,26 @@
-/*******************************************************************************
- * Copyright (c) 2017 CEA LIST.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr
- *   - Initial API and Implementation
- *******************************************************************************/
-package org.eclipse.efm.ui;
-
-import org.eclipse.ui.IPageLayout;
-import org.eclipse.ui.IPerspectiveFactory;
-
-public class PerspectiveSymbexWorkflow implements IPerspectiveFactory {
-
-	@Override
-	public void createInitialLayout(IPageLayout layout) {
-		// TODO Auto-generated method stub
-
-	}
-
-}
+/*******************************************************************************

+ * Copyright (c) 2017 CEA LIST.

+ *

+ * All rights reserved. This program and the accompanying materials

+ * are made available under the terms of the Eclipse Public License v1.0

+ * which accompanies this distribution, and is available at

+ * http://www.eclipse.org/legal/epl-v10.html

+ *

+ * Contributors:

+ *  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr

+ *   - Initial API and Implementation

+ *******************************************************************************/

+package org.eclipse.efm.editing.ui;

+

+import org.eclipse.ui.IPageLayout;

+import org.eclipse.ui.IPerspectiveFactory;

+

+public class PerspectiveEditing implements IPerspectiveFactory {

+

+	@Override

+	public void createInitialLayout(IPageLayout layout) {

+		// TODO Auto-generated method stub

+

+	}

+

+}

diff --git a/gui/org.eclipse.efm.ui.newproject.examples/.classpath b/gui/org.eclipse.efm.modeling.ui.newproject.examples/.classpath
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/.classpath
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/.classpath
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/.gitignore b/gui/org.eclipse.efm.modeling.ui.newproject.examples/.gitignore
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/.gitignore
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/.gitignore
diff --git a/gui/org.eclipse.efm.ui.newproject.templates/.project b/gui/org.eclipse.efm.modeling.ui.newproject.examples/.project
similarity index 92%
copy from gui/org.eclipse.efm.ui.newproject.templates/.project
copy to gui/org.eclipse.efm.modeling.ui.newproject.examples/.project
index 5269167..392645a 100644
--- a/gui/org.eclipse.efm.ui.newproject.templates/.project
+++ b/gui/org.eclipse.efm.modeling.ui.newproject.examples/.project
@@ -1,34 +1,34 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.efm.ui.newproject.templates</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.m2e.core.maven2Builder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.m2e.core.maven2Nature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?>

+<projectDescription>

+	<name>org.eclipse.efm.modeling.ui.newproject.examples</name>

+	<comment></comment>

+	<projects>

+	</projects>

+	<buildSpec>

+		<buildCommand>

+			<name>org.eclipse.jdt.core.javabuilder</name>

+			<arguments>

+			</arguments>

+		</buildCommand>

+		<buildCommand>

+			<name>org.eclipse.pde.ManifestBuilder</name>

+			<arguments>

+			</arguments>

+		</buildCommand>

+		<buildCommand>

+			<name>org.eclipse.pde.SchemaBuilder</name>

+			<arguments>

+			</arguments>

+		</buildCommand>

+		<buildCommand>

+			<name>org.eclipse.m2e.core.maven2Builder</name>

+			<arguments>

+			</arguments>

+		</buildCommand>

+	</buildSpec>

+	<natures>

+		<nature>org.eclipse.m2e.core.maven2Nature</nature>

+		<nature>org.eclipse.pde.PluginNature</nature>

+		<nature>org.eclipse.jdt.core.javanature</nature>

+	</natures>

+</projectDescription>

diff --git a/gui/org.eclipse.efm.ui.newproject.examples/.settings/org.eclipse.core.resources.prefs b/gui/org.eclipse.efm.modeling.ui.newproject.examples/.settings/org.eclipse.core.resources.prefs
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/.settings/org.eclipse.core.resources.prefs
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/.settings/org.eclipse.core.resources.prefs
diff --git a/gui/org.eclipse.efm.modeling.ui.newproject.examples/.settings/org.eclipse.jdt.core.prefs b/gui/org.eclipse.efm.modeling.ui.newproject.examples/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..a698e59
--- /dev/null
+++ b/gui/org.eclipse.efm.modeling.ui.newproject.examples/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,12 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/.settings/org.eclipse.m2e.core.prefs b/gui/org.eclipse.efm.modeling.ui.newproject.examples/.settings/org.eclipse.m2e.core.prefs
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/.settings/org.eclipse.m2e.core.prefs
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/.settings/org.eclipse.m2e.core.prefs
diff --git a/gui/org.eclipse.efm.modeling.ui.newproject.examples/META-INF/MANIFEST.MF b/gui/org.eclipse.efm.modeling.ui.newproject.examples/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..37f3af0
--- /dev/null
+++ b/gui/org.eclipse.efm.modeling.ui.newproject.examples/META-INF/MANIFEST.MF
@@ -0,0 +1,11 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: EFM Examples Wizard
+Bundle-SymbolicName: org.eclipse.efm.modeling.ui.newproject.examples;singleton:=true
+Bundle-Version: 0.0.1.qualifier
+Bundle-Vendor: CEA - LIST
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Bundle-ActivationPolicy: lazy
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.emf.common.ui,
+ org.eclipse.efm.ui
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/about.html b/gui/org.eclipse.efm.modeling.ui.newproject.examples/about.html
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/about.html
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/about.html
diff --git a/gui/org.eclipse.efm.modeling.ui.newproject.examples/build.properties b/gui/org.eclipse.efm.modeling.ui.newproject.examples/build.properties
new file mode 100644
index 0000000..2e631b7
--- /dev/null
+++ b/gui/org.eclipse.efm.modeling.ui.newproject.examples/build.properties
@@ -0,0 +1,18 @@
+###############################################################################
+# Copyright (c) 2017 CEA LIST.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+#  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr
+#   - Initial API and Implementation
+###############################################################################
+source.. = src/
+output.. = target/classes/
+bin.includes = plugin.xml,\
+               META-INF/,\
+               .,\
+               examples/
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/examples/CoffeeMachineXLIAExample.zip b/gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/CoffeeMachineXLIAExample.zip
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/examples/CoffeeMachineXLIAExample.zip
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/CoffeeMachineXLIAExample.zip
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/examples/ComplexDogPapyrusExample.zip b/gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/ComplexDogPapyrusExample.zip
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/examples/ComplexDogPapyrusExample.zip
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/ComplexDogPapyrusExample.zip
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/examples/ComplexDogXLIAExample.zip b/gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/ComplexDogXLIAExample.zip
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/examples/ComplexDogXLIAExample.zip
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/ComplexDogXLIAExample.zip
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/examples/MostBasicXLIAExample.zip b/gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/MostBasicXLIAExample.zip
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/examples/MostBasicXLIAExample.zip
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/MostBasicXLIAExample.zip
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/examples/SimpleDogXLIAExample.zip b/gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/SimpleDogXLIAExample.zip
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/examples/SimpleDogXLIAExample.zip
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/SimpleDogXLIAExample.zip
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/examples/SimplifiedPhoneXPapyrusExample.zip b/gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/SimplifiedPhoneXPapyrusExample.zip
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/examples/SimplifiedPhoneXPapyrusExample.zip
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/SimplifiedPhoneXPapyrusExample.zip
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/examples/WaterSystemPapyrusExample.zip b/gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/WaterSystemPapyrusExample.zip
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/examples/WaterSystemPapyrusExample.zip
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/WaterSystemPapyrusExample.zip
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/examples/WaterSystemXLIAExample.zip b/gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/WaterSystemXLIAExample.zip
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/examples/WaterSystemXLIAExample.zip
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/WaterSystemXLIAExample.zip
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/examples/unused/CoffeeMachineExample_old.zip b/gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/unused/CoffeeMachineExample_old.zip
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/examples/unused/CoffeeMachineExample_old.zip
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/unused/CoffeeMachineExample_old.zip
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/examples/unused/WaterSystemExample_dpkted.zip b/gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/unused/WaterSystemExample_dpkted.zip
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/examples/unused/WaterSystemExample_dpkted.zip
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/unused/WaterSystemExample_dpkted.zip
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/examples/unused/WaterSystemExample_old.zip b/gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/unused/WaterSystemExample_old.zip
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/examples/unused/WaterSystemExample_old.zip
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/unused/WaterSystemExample_old.zip
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/examples/unused/heatingcooling.zip b/gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/unused/heatingcooling.zip
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/examples/unused/heatingcooling.zip
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/unused/heatingcooling.zip
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/examples/unused/new_file.xlia b/gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/unused/new_file.xlia
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/examples/unused/new_file.xlia
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/unused/new_file.xlia
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/examples/unused/org.eclipse.diversity.example.thermostat.zip b/gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/unused/org.eclipse.diversity.example.thermostat.zip
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/examples/unused/org.eclipse.diversity.example.thermostat.zip
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/unused/org.eclipse.diversity.example.thermostat.zip
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/examples/unused/wiper/basic_wiper.zip b/gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/unused/wiper/basic_wiper.zip
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/examples/unused/wiper/basic_wiper.zip
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/unused/wiper/basic_wiper.zip
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/examples/unused/wiper/premium_wiper.zip b/gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/unused/wiper/premium_wiper.zip
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/examples/unused/wiper/premium_wiper.zip
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/examples/unused/wiper/premium_wiper.zip
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/plugin.xml b/gui/org.eclipse.efm.modeling.ui.newproject.examples/plugin.xml
similarity index 65%
rename from gui/org.eclipse.efm.ui.newproject.examples/plugin.xml
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/plugin.xml
index 11d8353..bb7fbbb 100644
--- a/gui/org.eclipse.efm.ui.newproject.examples/plugin.xml
+++ b/gui/org.eclipse.efm.modeling.ui.newproject.examples/plugin.xml
@@ -6,15 +6,15 @@
          name="EFM Examples"
          point="org.eclipse.ui.newWizards">
       <category
-            id="org.eclipse.efm.ui.newproject.examples.EX"
+            id="org.eclipse.efm.modeling.ui.newproject.examples"
             name="EFM Examples"
             parentCategory="org.eclipse.ui.Examples">
       </category>
       <wizard
-            category="org.eclipse.ui.Examples/org.eclipse.efm.ui.newproject.examples.EX"
+            category="org.eclipse.ui.Examples/org.eclipse.efm.modeling.ui.newproject.examples"
             class="org.eclipse.emf.common.ui.wizard.ExampleInstallerWizard"
-            icon="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"
-            id="org.eclipse.efm.ui.newproject.examples.CoffeeMachineXLIAExample"
+            icon="platform:/plugin/org.eclipse.efm.ui/resources/icons/diversity_icon.png"
+            id="org.eclipse.efm.modeling.ui.newproject.examples.xlia.CoffeeMachine"
             name="XLIA Coffee Machine Example"
             project="true">
          <description>
@@ -22,10 +22,10 @@
          </description>
       </wizard>
       <wizard
-            category="org.eclipse.ui.Examples/org.eclipse.efm.ui.newproject.examples.EX"
+            category="org.eclipse.ui.Examples/org.eclipse.efm.modeling.ui.newproject.examples"
             class="org.eclipse.emf.common.ui.wizard.ExampleInstallerWizard"
-            icon="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"
-            id="org.eclipse.efm.ui.newproject.examples.WaterSystemXLIAExample"
+            icon="platform:/plugin/org.eclipse.efm.ui/resources/icons/diversity_icon.png"
+            id="org.eclipse.efm.modeling.ui.newproject.examples.xlia.WaterSystem"
             name="XLIA Water System Example"
             project="true">
          <description>
@@ -33,10 +33,10 @@
          </description>
       </wizard>
       <wizard
-            category="org.eclipse.ui.Examples/org.eclipse.efm.ui.newproject.examples.EX"
+            category="org.eclipse.ui.Examples/org.eclipse.efm.modeling.ui.newproject.examples"
             class="org.eclipse.emf.common.ui.wizard.ExampleInstallerWizard"
-            icon="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"
-            id="org.eclipse.efm.ui.newproject.examples.WaterSystemPapyrusExample"
+            icon="platform:/plugin/org.eclipse.efm.ui/resources/icons/diversity_icon.png"
+            id="org.eclipse.efm.modeling.ui.newproject.examples.papyrus.WaterSystem"
             name="Papyrus Water System Example"
             project="true">
          <description>
@@ -44,10 +44,10 @@
          </description>
       </wizard>
       <wizard
-            category="org.eclipse.ui.Examples/org.eclipse.efm.ui.newproject.examples.EX"
+            category="org.eclipse.ui.Examples/org.eclipse.efm.modeling.ui.newproject.examples"
             class="org.eclipse.emf.common.ui.wizard.ExampleInstallerWizard"
-            icon="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"
-            id="org.eclipse.efm.ui.newproject.examples.ComplexDogPapyrusExample"
+            icon="platform:/plugin/org.eclipse.efm.ui/resources/icons/diversity_icon.png"
+            id="org.eclipse.efm.modeling.ui.newproject.examples.papyrus.ComplexDog"
             name="Papyrus Complex Dog Example"
             project="true">
          <description>
@@ -55,10 +55,10 @@
          </description>
       </wizard>
       <wizard
-            category="org.eclipse.ui.Examples/org.eclipse.efm.ui.newproject.examples.EX"
+            category="org.eclipse.ui.Examples/org.eclipse.efm.modeling.ui.newproject.examples"
             class="org.eclipse.emf.common.ui.wizard.ExampleInstallerWizard"
-            icon="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"
-            id="org.eclipse.efm.ui.newproject.examples.ComplexDogXLIAExample"
+            icon="platform:/plugin/org.eclipse.efm.ui/resources/icons/diversity_icon.png"
+            id="org.eclipse.efm.modeling.ui.newproject.examples.xlia.ComplexDog"
             name="XLIA Complex Dog Example"
             project="true">
          <description>
@@ -66,10 +66,10 @@
          </description>
       </wizard>
       <wizard
-            category="org.eclipse.ui.Examples/org.eclipse.efm.ui.newproject.examples.EX"
+            category="org.eclipse.ui.Examples/org.eclipse.efm.modeling.ui.newproject.examples"
             class="org.eclipse.emf.common.ui.wizard.ExampleInstallerWizard"
-            icon="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"
-            id="org.eclipse.efm.ui.newproject.examples.SimpleDogXLIAExample"
+            icon="platform:/plugin/org.eclipse.efm.ui/resources/icons/diversity_icon.png"
+            id="org.eclipse.efm.modeling.ui.newproject.examples.xlia.SimpleDog"
             name="XLIA Simple Dog Example"
             project="true">
          <description>
@@ -77,10 +77,10 @@
          </description>
       </wizard>
       <wizard
-            category="org.eclipse.ui.Examples/org.eclipse.efm.ui.newproject.examples.EX"
+            category="org.eclipse.ui.Examples/org.eclipse.efm.modeling.ui.newproject.examples"
             class="org.eclipse.emf.common.ui.wizard.ExampleInstallerWizard"
-            icon="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"
-            id="org.eclipse.efm.ui.newproject.examples.SimplifiedPhoneXPapyrusExample"
+            icon="platform:/plugin/org.eclipse.efm.ui/resources/icons/diversity_icon.png"
+            id="org.eclipse.efm.modeling.ui.newproject.examples.papyrus.SimplifiedPhoneX"
             name="Papyrus Simplified PhoneX Example"
             project="true">
          <description>
@@ -94,8 +94,8 @@
          point="org.eclipse.emf.common.ui.examples">
       <example
             id="CoffeeMachineXLIAExample"
-            pageImage="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"
-            wizardID="org.eclipse.efm.ui.newproject.examples.CoffeeMachineXLIAExample">
+            pageImage="platform:/plugin/org.eclipse.efm.ui/resources/icons/diversity_icon.png"
+            wizardID="org.eclipse.efm.modeling.ui.newproject.examples.xlia.CoffeeMachine">
          <projectDescriptor
                contentURI="examples/CoffeeMachineXLIAExample.zip"
                description="A specification of a coffee machine model written in XLIA (text)."
@@ -104,8 +104,8 @@
       </example>
       <example
             id="WaterSystemXLIAExample"
-            pageImage="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"
-            wizardID="org.eclipse.efm.ui.newproject.examples.WaterSystemXLIAExample">
+            pageImage="platform:/plugin/org.eclipse.efm.ui/resources/icons/diversity_icon.png"
+            wizardID="org.eclipse.efm.modeling.ui.newproject.examples.xlia.WaterSystem">
          <projectDescriptor
                contentURI="examples/WaterSystemXLIAExample.zip"
                description="A specification of a water pump model written in XLIA (text)."
@@ -114,8 +114,8 @@
       </example>
       <example
             id="WaterSystemPapyrusExample"
-            pageImage="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"
-            wizardID="org.eclipse.efm.ui.newproject.examples.WaterSystemPapyrusExample">
+            pageImage="platform:/plugin/org.eclipse.efm.ui/resources/icons/diversity_icon.png"
+            wizardID="org.eclipse.efm.modeling.ui.newproject.examples.papyrus.WaterSystem">
          <projectDescriptor
                contentURI="examples/WaterSystemPapyrusExample.zip"
                description="A specification of a water pump model specified using the Papyrus graphical tool."
@@ -124,8 +124,8 @@
       </example>
       <example
             id="ComplexDogPapyrusExample"
-            pageImage="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"
-            wizardID="org.eclipse.efm.ui.newproject.examples.ComplexDogPapyrusExample">
+            pageImage="platform:/plugin/org.eclipse.efm.ui/resources/icons/diversity_icon.png"
+            wizardID="org.eclipse.efm.modeling.ui.newproject.examples.papyrus.ComplexDog">
          <projectDescriptor
                contentURI="examples/ComplexDogPapyrusExample.zip"
                description="A specification of a robotic pet model specified using the Papyrus graphical tool."
@@ -134,8 +134,8 @@
       </example>
       <example
             id="ComplexDogXLIAExample"
-            pageImage="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"
-            wizardID="org.eclipse.efm.ui.newproject.examples.ComplexDogXLIAExample">
+            pageImage="platform:/plugin/org.eclipse.efm.ui/resources/icons/diversity_icon.png"
+            wizardID="org.eclipse.efm.modeling.ui.newproject.examples.xlia.ComplexDog">
          <projectDescriptor
                contentURI="examples/ComplexDogXLIAExample.zip"
                description="A specification of a robotic pet model written in XLIA (text)."
@@ -144,8 +144,8 @@
       </example>
       <example
             id="SimpleDogXLIAExample"
-            pageImage="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"
-            wizardID="org.eclipse.efm.ui.newproject.examples.SimpleDogXLIAExample">
+            pageImage="platform:/plugin/org.eclipse.efm.ui/resources/icons/diversity_icon.png"
+            wizardID="org.eclipse.efm.modeling.ui.newproject.examples.xlia.SimpleDog">
          <projectDescriptor
                contentURI="examples/SimpleDogXLIAExample.zip"
                description="A specification of a robotic pet model written in XLIA (text)."
@@ -154,8 +154,8 @@
       </example>
       <example
             id="SimplifiedPhoneXPapyrusExample"
-            pageImage="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"
-            wizardID="org.eclipse.efm.ui.newproject.examples.SimplifiedPhoneXPapyrusExample">
+            pageImage="platform:/plugin/org.eclipse.efm.ui/resources/icons/diversity_icon.png"
+            wizardID="org.eclipse.efm.modeling.ui.newproject.examples.papyrus.SimplifiedPhoneX">
          <projectDescriptor
                contentURI="examples/SimplifiedPhoneXPapyrusExample.zip"
                description="A specification of a telecommunication system model specified using the Papyrus graphical tool."
diff --git a/gui/org.eclipse.efm.ui.preferences_root/pom.xml b/gui/org.eclipse.efm.modeling.ui.newproject.examples/pom.xml
similarity index 79%
copy from gui/org.eclipse.efm.ui.preferences_root/pom.xml
copy to gui/org.eclipse.efm.modeling.ui.newproject.examples/pom.xml
index a4be8ea..db3e1a1 100644
--- a/gui/org.eclipse.efm.ui.preferences_root/pom.xml
+++ b/gui/org.eclipse.efm.modeling.ui.newproject.examples/pom.xml
@@ -7,8 +7,8 @@
 		<artifactId>org.eclipse.efm.modeling.gui</artifactId>
 		<version>0.0.1-SNAPSHOT</version>
 	</parent>
-	<artifactId>org.eclipse.efm.ui.preferences_root</artifactId>
+	<artifactId>org.eclipse.efm.modeling.ui.newproject.examples</artifactId>
 	<packaging>eclipse-plugin</packaging>
-	<name>org.eclipse.efm.ui.preferences_root</name>
+	<name>org.eclipse.efm.modeling.ui.newproject.examples</name>
 	<description>This plug-in contains the XXXXXXXXX.</description>
 </project>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/src/.gitkeep b/gui/org.eclipse.efm.modeling.ui.newproject.examples/src/.gitkeep
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.examples/src/.gitkeep
rename to gui/org.eclipse.efm.modeling.ui.newproject.examples/src/.gitkeep
diff --git a/gui/org.eclipse.efm.ui.newproject.templates/.classpath b/gui/org.eclipse.efm.modeling.ui.newproject.templates/.classpath
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.templates/.classpath
rename to gui/org.eclipse.efm.modeling.ui.newproject.templates/.classpath
diff --git a/gui/org.eclipse.efm.ui.newproject.templates/.gitignore b/gui/org.eclipse.efm.modeling.ui.newproject.templates/.gitignore
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.templates/.gitignore
rename to gui/org.eclipse.efm.modeling.ui.newproject.templates/.gitignore
diff --git a/gui/org.eclipse.efm.ui.newproject.templates/.project b/gui/org.eclipse.efm.modeling.ui.newproject.templates/.project
similarity index 92%
copy from gui/org.eclipse.efm.ui.newproject.templates/.project
copy to gui/org.eclipse.efm.modeling.ui.newproject.templates/.project
index 5269167..78a2ee9 100644
--- a/gui/org.eclipse.efm.ui.newproject.templates/.project
+++ b/gui/org.eclipse.efm.modeling.ui.newproject.templates/.project
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <projectDescription>
-	<name>org.eclipse.efm.ui.newproject.templates</name>
+	<name>org.eclipse.efm.modeling.ui.newproject.templates</name>
 	<comment></comment>
 	<projects>
 	</projects>
diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/.settings/org.eclipse.core.resources.prefs b/gui/org.eclipse.efm.modeling.ui.newproject.templates/.settings/org.eclipse.core.resources.prefs
similarity index 99%
rename from gui/org.eclipse.efm.papyrus.views.property.concretesyntax/.settings/org.eclipse.core.resources.prefs
rename to gui/org.eclipse.efm.modeling.ui.newproject.templates/.settings/org.eclipse.core.resources.prefs
index 99f26c0..4824b80 100644
--- a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/.settings/org.eclipse.core.resources.prefs
+++ b/gui/org.eclipse.efm.modeling.ui.newproject.templates/.settings/org.eclipse.core.resources.prefs
@@ -1,2 +1,2 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
+eclipse.preferences.version=1

+encoding/<project>=UTF-8

diff --git a/gui/org.eclipse.efm.modeling.ui.newproject.templates/.settings/org.eclipse.jdt.core.prefs b/gui/org.eclipse.efm.modeling.ui.newproject.templates/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..a698e59
--- /dev/null
+++ b/gui/org.eclipse.efm.modeling.ui.newproject.templates/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,12 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/gui/org.eclipse.efm.modeling.ui.newproject.templates/META-INF/MANIFEST.MF b/gui/org.eclipse.efm.modeling.ui.newproject.templates/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..21e6532
--- /dev/null
+++ b/gui/org.eclipse.efm.modeling.ui.newproject.templates/META-INF/MANIFEST.MF
@@ -0,0 +1,14 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: EFM Templates Wizard
+Bundle-SymbolicName: org.eclipse.efm.modeling.ui.newproject.templates;singleton:=true
+Bundle-Version: 0.0.1.qualifier
+Bundle-Vendor: CEA - LIST
+Require-Bundle: org.eclipse.papyrus.uml.tools,
+ org.eclipse.uml2.common,
+ org.eclipse.uml2.uml,
+ org.eclipse.papyrus.uml.diagram.common;bundle-version="2.0.0",
+ org.eclipse.efm.ui
+Export-Package: org.eclipse.efm.modeling.ui.newproject.templates
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Bundle-ActivationPolicy: lazy
diff --git a/gui/org.eclipse.efm.ui.newproject.templates/about.html b/gui/org.eclipse.efm.modeling.ui.newproject.templates/about.html
similarity index 100%
rename from gui/org.eclipse.efm.ui.newproject.templates/about.html
rename to gui/org.eclipse.efm.modeling.ui.newproject.templates/about.html
diff --git a/gui/org.eclipse.efm.modeling.ui.newproject.templates/build.properties b/gui/org.eclipse.efm.modeling.ui.newproject.templates/build.properties
new file mode 100644
index 0000000..252bde3
--- /dev/null
+++ b/gui/org.eclipse.efm.modeling.ui.newproject.templates/build.properties
@@ -0,0 +1,17 @@
+###############################################################################
+# Copyright (c) 2017 CEA LIST.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+#  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr
+#   - Initial API and Implementation
+###############################################################################
+source.. = src/
+output.. = target/classes/
+bin.includes = plugin.xml,\
+			   META-INF/,\
+               .
diff --git a/gui/org.eclipse.efm.modeling.ui.newproject.templates/plugin.xml b/gui/org.eclipse.efm.modeling.ui.newproject.templates/plugin.xml
new file mode 100644
index 0000000..9e4ed24
--- /dev/null
+++ b/gui/org.eclipse.efm.modeling.ui.newproject.templates/plugin.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+	
+     <extension point="org.eclipse.papyrus.infra.ui.papyrusDiagram">
+     	<!-- "id" is an important key that should be matched by viewpoint category 
+     	see org.eclipse.efm.modeling.diagram.statemachine/resources/configuration/statemachine.configuration
+     	see org.eclipse.efm.modeling.diagram.internalblock/resources/configuration/internalblock.configuration-->
+     	
+     	<!-- "label" appears under DSML in the first page of the New Papyrus Project wizard -->
+	     <diagramCategory
+	     		id="FormalML"
+	            class="org.eclipse.efm.modeling.ui.newproject.templates.FormalModelCreationCommand"
+	            icon="platform:/plugin/org.eclipse.efm.ui/resources/icons/diversity_icon.png"
+	            label="Eclipse Formal Modeling Language"
+	            description="EFM diagram category">
+	     </diagramCategory>
+    </extension>
+    
+    
+
+</plugin>
diff --git a/gui/org.eclipse.efm.ui.preferences.runconfigurations/pom.xml b/gui/org.eclipse.efm.modeling.ui.newproject.templates/pom.xml
similarity index 81%
rename from gui/org.eclipse.efm.ui.preferences.runconfigurations/pom.xml
rename to gui/org.eclipse.efm.modeling.ui.newproject.templates/pom.xml
index 39d9620..5111f6c 100644
--- a/gui/org.eclipse.efm.ui.preferences.runconfigurations/pom.xml
+++ b/gui/org.eclipse.efm.modeling.ui.newproject.templates/pom.xml
@@ -7,8 +7,8 @@
 		<artifactId>org.eclipse.efm.modeling.gui</artifactId>
 		<version>0.0.1-SNAPSHOT</version>
 	</parent>
-	<artifactId>org.eclipse.efm.ui.preferences.runconfigurations</artifactId>
+	<artifactId>org.eclipse.efm.modeling.ui.newproject.templates</artifactId>
 	<packaging>eclipse-plugin</packaging>
-	<name>org.eclipse.efm.ui.preferences.runconfigurations</name>
+	<name>org.eclipse.efm.modeling.ui.newproject.templates</name>
 	<description>This plug-in contains the XXXXXXXXX.</description>
 </project>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.ui.newproject.templates/src/org/eclipse/efm/ui/newproject/templates/EFMModelCreationCommand.java b/gui/org.eclipse.efm.modeling.ui.newproject.templates/src/org/eclipse/efm/modeling/ui/newproject/templates/FormalModelCreationCommand.java
similarity index 84%
rename from gui/org.eclipse.efm.ui.newproject.templates/src/org/eclipse/efm/ui/newproject/templates/EFMModelCreationCommand.java
rename to gui/org.eclipse.efm.modeling.ui.newproject.templates/src/org/eclipse/efm/modeling/ui/newproject/templates/FormalModelCreationCommand.java
index e8ebd95..6365fc8 100644
--- a/gui/org.eclipse.efm.ui.newproject.templates/src/org/eclipse/efm/ui/newproject/templates/EFMModelCreationCommand.java
+++ b/gui/org.eclipse.efm.modeling.ui.newproject.templates/src/org/eclipse/efm/modeling/ui/newproject/templates/FormalModelCreationCommand.java
@@ -8,11 +8,11 @@
  * Contributors:
  *     Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - Initial API and implementation
  *******************************************************************************/
-package org.eclipse.efm.ui.newproject.templates;
+package org.eclipse.efm.modeling.ui.newproject.templates;
 
+import org.eclipse.efm.ui.utils.ImageResources;
 import org.eclipse.emf.common.util.URI;
 import org.eclipse.emf.ecore.EObject;
-import org.eclipse.efm.ui.resources.UIfmlResources;
 import org.eclipse.papyrus.uml.diagram.common.commands.ModelCreationCommandBase;
 import org.eclipse.papyrus.uml.tools.utils.PackageUtil;
 import org.eclipse.uml2.uml.Package;
@@ -20,7 +20,7 @@
 import org.eclipse.uml2.uml.UMLFactory;
 
 
-public class EFMModelCreationCommand extends ModelCreationCommandBase {
+public class FormalModelCreationCommand extends ModelCreationCommandBase {
 
 	/**
 	 * @see org.eclipse.papyrus.infra.core.extension.commands.ModelCreationCommandBase#createRootElement()
@@ -39,7 +39,7 @@
 	protected void initializeModel(EObject owner) {
 		super.initializeModel(owner);
 		Package packageOwner = (Package) owner;
-		Profile fmlProfile = (Profile) PackageUtil.loadPackage(URI.createURI(UIfmlResources.FML_PROFILE_PATH), owner.eResource().getResourceSet());
+		Profile fmlProfile = (Profile) PackageUtil.loadPackage(URI.createURI(ImageResources.FML_PROFILE_PATH), owner.eResource().getResourceSet());
 		if (fmlProfile != null) {
 			PackageUtil.applyProfile(packageOwner, fmlProfile, true);
 		}
diff --git a/gui/org.eclipse.efm.papyrus.views.common/.classpath b/gui/org.eclipse.efm.modeling.ui.newproject/.classpath
similarity index 100%
copy from gui/org.eclipse.efm.papyrus.views.common/.classpath
copy to gui/org.eclipse.efm.modeling.ui.newproject/.classpath
diff --git a/gui/org.eclipse.efm.papyrus.views.common/.gitignore b/gui/org.eclipse.efm.modeling.ui.newproject/.gitignore
similarity index 100%
copy from gui/org.eclipse.efm.papyrus.views.common/.gitignore
copy to gui/org.eclipse.efm.modeling.ui.newproject/.gitignore
diff --git a/gui/org.eclipse.efm.ui.newproject.templates/.project b/gui/org.eclipse.efm.modeling.ui.newproject/.project
similarity index 93%
rename from gui/org.eclipse.efm.ui.newproject.templates/.project
rename to gui/org.eclipse.efm.modeling.ui.newproject/.project
index 5269167..7f593d6 100644
--- a/gui/org.eclipse.efm.ui.newproject.templates/.project
+++ b/gui/org.eclipse.efm.modeling.ui.newproject/.project
@@ -1,34 +1,34 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.efm.ui.newproject.templates</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.m2e.core.maven2Builder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.m2e.core.maven2Nature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?>

+<projectDescription>

+	<name>org.eclipse.efm.modeling.ui.newproject</name>

+	<comment></comment>

+	<projects>

+	</projects>

+	<buildSpec>

+		<buildCommand>

+			<name>org.eclipse.jdt.core.javabuilder</name>

+			<arguments>

+			</arguments>

+		</buildCommand>

+		<buildCommand>

+			<name>org.eclipse.pde.ManifestBuilder</name>

+			<arguments>

+			</arguments>

+		</buildCommand>

+		<buildCommand>

+			<name>org.eclipse.pde.SchemaBuilder</name>

+			<arguments>

+			</arguments>

+		</buildCommand>

+		<buildCommand>

+			<name>org.eclipse.m2e.core.maven2Builder</name>

+			<arguments>

+			</arguments>

+		</buildCommand>

+	</buildSpec>

+	<natures>

+		<nature>org.eclipse.m2e.core.maven2Nature</nature>

+		<nature>org.eclipse.pde.PluginNature</nature>

+		<nature>org.eclipse.jdt.core.javanature</nature>

+	</natures>

+</projectDescription>

diff --git a/gui/org.eclipse.efm.papyrus.views.common/.settings/org.eclipse.core.resources.prefs b/gui/org.eclipse.efm.modeling.ui.newproject/.settings/org.eclipse.core.resources.prefs
similarity index 100%
copy from gui/org.eclipse.efm.papyrus.views.common/.settings/org.eclipse.core.resources.prefs
copy to gui/org.eclipse.efm.modeling.ui.newproject/.settings/org.eclipse.core.resources.prefs
diff --git a/gui/org.eclipse.efm.modeling.ui.newproject/.settings/org.eclipse.jdt.core.prefs b/gui/org.eclipse.efm.modeling.ui.newproject/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..a698e59
--- /dev/null
+++ b/gui/org.eclipse.efm.modeling.ui.newproject/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,12 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/gui/org.eclipse.efm.papyrus.views.common/.settings/org.eclipse.m2e.core.prefs b/gui/org.eclipse.efm.modeling.ui.newproject/.settings/org.eclipse.m2e.core.prefs
similarity index 100%
copy from gui/org.eclipse.efm.papyrus.views.common/.settings/org.eclipse.m2e.core.prefs
copy to gui/org.eclipse.efm.modeling.ui.newproject/.settings/org.eclipse.m2e.core.prefs
diff --git a/gui/org.eclipse.efm.ui.newproject.standalone/META-INF/MANIFEST.MF b/gui/org.eclipse.efm.modeling.ui.newproject/META-INF/MANIFEST.MF
similarity index 86%
rename from gui/org.eclipse.efm.ui.newproject.standalone/META-INF/MANIFEST.MF
rename to gui/org.eclipse.efm.modeling.ui.newproject/META-INF/MANIFEST.MF
index 7c80044..6393bd5 100644
--- a/gui/org.eclipse.efm.ui.newproject.standalone/META-INF/MANIFEST.MF
+++ b/gui/org.eclipse.efm.modeling.ui.newproject/META-INF/MANIFEST.MF
@@ -1,7 +1,7 @@
 Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: EFM New Project Wizard
-Bundle-SymbolicName: org.eclipse.efm.ui.newproject.standalone;singleton:=true
+Bundle-SymbolicName: org.eclipse.efm.modeling.ui.newproject;singleton:=true
 Bundle-Version: 0.0.1.qualifier
 Bundle-Vendor: CEA - LIST
 Require-Bundle: org.eclipse.ui,
@@ -9,7 +9,8 @@
  org.eclipse.core.resources,
  org.eclipse.ui.ide,
  org.eclipse.emf.common.ui;bundle-version="2.10.0",
- org.eclipse.emf.edit;bundle-version="2.12.0"
+ org.eclipse.emf.edit;bundle-version="2.12.0",
+ org.eclipse.efm.ui
 Bundle-RequiredExecutionEnvironment: JavaSE-1.8
 Bundle-ActivationPolicy: lazy
 Import-Package: org.eclipse.emf.common,
diff --git a/gui/org.eclipse.efm.runconfiguration/about.html b/gui/org.eclipse.efm.modeling.ui.newproject/about.html
similarity index 100%
rename from gui/org.eclipse.efm.runconfiguration/about.html
rename to gui/org.eclipse.efm.modeling.ui.newproject/about.html
diff --git a/gui/org.eclipse.efm.modeling.ui.newproject/build.properties b/gui/org.eclipse.efm.modeling.ui.newproject/build.properties
new file mode 100644
index 0000000..57ef5a8
--- /dev/null
+++ b/gui/org.eclipse.efm.modeling.ui.newproject/build.properties
@@ -0,0 +1,17 @@
+###############################################################################
+# Copyright (c) 2017 CEA LIST.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+#  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr
+#   - Initial API and Implementation
+###############################################################################
+source.. = src/
+output.. = target/classes/
+bin.includes = plugin.xml,\
+               META-INF/,\
+               .
diff --git a/gui/org.eclipse.efm.modeling.ui.newproject/plugin.xml b/gui/org.eclipse.efm.modeling.ui.newproject/plugin.xml
new file mode 100644
index 0000000..92aa2d5
--- /dev/null
+++ b/gui/org.eclipse.efm.modeling.ui.newproject/plugin.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+
+   <extension
+         name="EFM Projects"
+         point="org.eclipse.ui.newWizards">
+      <wizard
+            category="org.eclipse.efm.ui.category.newproject"
+            class="org.eclipse.efm.modeling.ui.newproject.WizardNewFormalModelProject"
+            icon="platform:/plugin/org.eclipse.efm.ui/resources/icons/diversity_icon.png"
+            id="org.eclipse.efm.modeling.ui.newproject.wizard"
+            name="EFM Project">
+      </wizard>
+   </extension>
+
+</plugin>
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/pom.xml b/gui/org.eclipse.efm.modeling.ui.newproject/pom.xml
similarity index 82%
rename from gui/org.eclipse.efm.ui.newproject.examples/pom.xml
rename to gui/org.eclipse.efm.modeling.ui.newproject/pom.xml
index 2fd8eb5..453f02e 100644
--- a/gui/org.eclipse.efm.ui.newproject.examples/pom.xml
+++ b/gui/org.eclipse.efm.modeling.ui.newproject/pom.xml
@@ -7,8 +7,8 @@
 		<artifactId>org.eclipse.efm.modeling.gui</artifactId>
 		<version>0.0.1-SNAPSHOT</version>
 	</parent>
-	<artifactId>org.eclipse.efm.ui.newproject.examples</artifactId>
+	<artifactId>org.eclipse.efm.modeling.ui.newproject</artifactId>
 	<packaging>eclipse-plugin</packaging>
-	<name>org.eclipse.efm.ui.newproject.examples</name>
+	<name>org.eclipse.efm.modeling.ui.newproject</name>
 	<description>This plug-in contains the XXXXXXXXX.</description>
 </project>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.ui.newproject.standalone/src/org/eclipse/efm/ui/newproject/standalone/WizardNewEFMmodelCreationPage.java b/gui/org.eclipse.efm.modeling.ui.newproject/src/org/eclipse/efm/modeling/ui/newproject/WizardNewFormalModelCreationPage.java
similarity index 92%
rename from gui/org.eclipse.efm.ui.newproject.standalone/src/org/eclipse/efm/ui/newproject/standalone/WizardNewEFMmodelCreationPage.java
rename to gui/org.eclipse.efm.modeling.ui.newproject/src/org/eclipse/efm/modeling/ui/newproject/WizardNewFormalModelCreationPage.java
index 9191fd7..d4d6c02 100644
--- a/gui/org.eclipse.efm.ui.newproject.standalone/src/org/eclipse/efm/ui/newproject/standalone/WizardNewEFMmodelCreationPage.java
+++ b/gui/org.eclipse.efm.modeling.ui.newproject/src/org/eclipse/efm/modeling/ui/newproject/WizardNewFormalModelCreationPage.java
@@ -7,8 +7,8 @@
  *

  * Contributors:

  *     Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.newproject.standalone;

+ *******************************************************************************/
+package org.eclipse.efm.modeling.ui.newproject;

 

 import org.eclipse.jface.wizard.WizardPage;

 import org.eclipse.swt.SWT;

@@ -20,13 +20,13 @@
 import org.eclipse.swt.widgets.Label;

 import org.eclipse.swt.widgets.Text;

 

-public class WizardNewEFMmodelCreationPage extends WizardPage {

+public class WizardNewFormalModelCreationPage extends WizardPage {

         private Text model_file_name;

         private Text root_node_name;

         private Composite container;

 

-        public WizardNewEFMmodelCreationPage() {

-        	super("WizardNewEFMmodelCreationPage");

+        public WizardNewFormalModelCreationPage() {

+        	super("WizardNewFormalModelCreationPage");

             setTitle("Model Creation");

             setDescription("Please enter a name for the model file and for the model's root node.");

         }

diff --git a/gui/org.eclipse.efm.ui.newproject.standalone/src/org/eclipse/efm/ui/newproject/standalone/NewEFMprojectWizard.java b/gui/org.eclipse.efm.modeling.ui.newproject/src/org/eclipse/efm/modeling/ui/newproject/WizardNewFormalModelProject.java
similarity index 92%
rename from gui/org.eclipse.efm.ui.newproject.standalone/src/org/eclipse/efm/ui/newproject/standalone/NewEFMprojectWizard.java
rename to gui/org.eclipse.efm.modeling.ui.newproject/src/org/eclipse/efm/modeling/ui/newproject/WizardNewFormalModelProject.java
index febd2b3..df26684 100644
--- a/gui/org.eclipse.efm.ui.newproject.standalone/src/org/eclipse/efm/ui/newproject/standalone/NewEFMprojectWizard.java
+++ b/gui/org.eclipse.efm.modeling.ui.newproject/src/org/eclipse/efm/modeling/ui/newproject/WizardNewFormalModelProject.java
@@ -8,7 +8,7 @@
  * Contributors:
  *     Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - Initial API and implementation
  *******************************************************************************/
-package org.eclipse.efm.ui.newproject.standalone;
+package org.eclipse.efm.modeling.ui.newproject;
 
 import java.io.IOException;
 
@@ -16,9 +16,7 @@
 import org.eclipse.core.resources.IProjectDescription;
 import org.eclipse.core.resources.ResourcesPlugin;
 import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
 import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Status;
 import org.eclipse.emf.common.util.URI;
 import org.eclipse.emf.ecore.EObject;
 import org.eclipse.emf.transaction.RecordingCommand;
@@ -41,16 +39,16 @@
 
 
 
-public class NewEFMprojectWizard extends BasicNewProjectResourceWizard implements INewWizard {
+public class WizardNewFormalModelProject extends BasicNewProjectResourceWizard implements INewWizard {
 
 	private String WIZARD_NAME = "From Scratch EFM Project Wizard";
 	private String WIZARD_DESC = "This wizard creates a new Eclipse Formal Modeling Project.";
 	
     private WizardNewProjectCreationPage project_page;
-    private WizardNewEFMmodelCreationPage model_page;
+    private WizardNewFormalModelCreationPage model_page;
 
-	public NewEFMprojectWizard() {
-		setWindowTitle("EFM New Project");
+	public WizardNewFormalModelProject() {
+		setWindowTitle("Eclipse Formal Modeling New Project");
 	}
 
 
@@ -60,7 +58,7 @@
 		project_page.setDescription(WIZARD_DESC + "\nPlease enter a project name.");
         addPage(project_page);
         
-        model_page = new WizardNewEFMmodelCreationPage();
+        model_page = new WizardNewFormalModelCreationPage();
         addPage(model_page);
 	}
 	
diff --git a/gui/org.eclipse.efm.papyrus.views.common/.classpath b/gui/org.eclipse.efm.modeling.ui.views.common/.classpath
similarity index 100%
rename from gui/org.eclipse.efm.papyrus.views.common/.classpath
rename to gui/org.eclipse.efm.modeling.ui.views.common/.classpath
diff --git a/gui/org.eclipse.efm.papyrus.views.common/.gitignore b/gui/org.eclipse.efm.modeling.ui.views.common/.gitignore
similarity index 100%
rename from gui/org.eclipse.efm.papyrus.views.common/.gitignore
rename to gui/org.eclipse.efm.modeling.ui.views.common/.gitignore
diff --git a/gui/org.eclipse.efm.ui.newproject.templates/.project b/gui/org.eclipse.efm.modeling.ui.views.common/.project
similarity index 93%
copy from gui/org.eclipse.efm.ui.newproject.templates/.project
copy to gui/org.eclipse.efm.modeling.ui.views.common/.project
index 5269167..988ba5e 100644
--- a/gui/org.eclipse.efm.ui.newproject.templates/.project
+++ b/gui/org.eclipse.efm.modeling.ui.views.common/.project
@@ -1,34 +1,34 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.efm.ui.newproject.templates</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.m2e.core.maven2Builder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.m2e.core.maven2Nature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?>

+<projectDescription>

+	<name>org.eclipse.efm.modeling.ui.views.common</name>

+	<comment></comment>

+	<projects>

+	</projects>

+	<buildSpec>

+		<buildCommand>

+			<name>org.eclipse.jdt.core.javabuilder</name>

+			<arguments>

+			</arguments>

+		</buildCommand>

+		<buildCommand>

+			<name>org.eclipse.pde.ManifestBuilder</name>

+			<arguments>

+			</arguments>

+		</buildCommand>

+		<buildCommand>

+			<name>org.eclipse.pde.SchemaBuilder</name>

+			<arguments>

+			</arguments>

+		</buildCommand>

+		<buildCommand>

+			<name>org.eclipse.m2e.core.maven2Builder</name>

+			<arguments>

+			</arguments>

+		</buildCommand>

+	</buildSpec>

+	<natures>

+		<nature>org.eclipse.m2e.core.maven2Nature</nature>

+		<nature>org.eclipse.pde.PluginNature</nature>

+		<nature>org.eclipse.jdt.core.javanature</nature>

+	</natures>

+</projectDescription>

diff --git a/gui/org.eclipse.efm.papyrus.views.common/.settings/org.eclipse.core.resources.prefs b/gui/org.eclipse.efm.modeling.ui.views.common/.settings/org.eclipse.core.resources.prefs
similarity index 100%
rename from gui/org.eclipse.efm.papyrus.views.common/.settings/org.eclipse.core.resources.prefs
rename to gui/org.eclipse.efm.modeling.ui.views.common/.settings/org.eclipse.core.resources.prefs
diff --git a/gui/org.eclipse.efm.papyrus.views.common/.settings/org.eclipse.jdt.core.prefs b/gui/org.eclipse.efm.modeling.ui.views.common/.settings/org.eclipse.jdt.core.prefs
similarity index 100%
rename from gui/org.eclipse.efm.papyrus.views.common/.settings/org.eclipse.jdt.core.prefs
rename to gui/org.eclipse.efm.modeling.ui.views.common/.settings/org.eclipse.jdt.core.prefs
diff --git a/gui/org.eclipse.efm.papyrus.views.common/.settings/org.eclipse.m2e.core.prefs b/gui/org.eclipse.efm.modeling.ui.views.common/.settings/org.eclipse.m2e.core.prefs
similarity index 100%
rename from gui/org.eclipse.efm.papyrus.views.common/.settings/org.eclipse.m2e.core.prefs
rename to gui/org.eclipse.efm.modeling.ui.views.common/.settings/org.eclipse.m2e.core.prefs
diff --git a/gui/org.eclipse.efm.papyrus.views.common/META-INF/MANIFEST.MF b/gui/org.eclipse.efm.modeling.ui.views.common/META-INF/MANIFEST.MF
similarity index 66%
rename from gui/org.eclipse.efm.papyrus.views.common/META-INF/MANIFEST.MF
rename to gui/org.eclipse.efm.modeling.ui.views.common/META-INF/MANIFEST.MF
index d8ffe43..4d7b7ca 100644
--- a/gui/org.eclipse.efm.papyrus.views.common/META-INF/MANIFEST.MF
+++ b/gui/org.eclipse.efm.modeling.ui.views.common/META-INF/MANIFEST.MF
@@ -1,10 +1,10 @@
 Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Common
-Bundle-SymbolicName: org.eclipse.efm.papyrus.views.common;singleton:=true
+Bundle-SymbolicName: org.eclipse.efm.modeling.ui.views.common;singleton:=true
 Bundle-Version: 0.0.1.qualifier
 Bundle-RequiredExecutionEnvironment: JavaSE-1.8
 Require-Bundle: org.eclipse.papyrus.infra.newchild,
  org.eclipse.papyrus.infra.properties,
  org.eclipse.efm.formalml;bundle-version="[0.0.1,1.0.0)",
- org.eclipse.efm.papyrus.service.types;bundle-version="[0.0.1,1.0.0)"
+ org.eclipse.efm.formalml.service.types;bundle-version="[0.0.1,1.0.0)"
diff --git a/gui/org.eclipse.efm.modeling.ui.views.common/build.properties b/gui/org.eclipse.efm.modeling.ui.views.common/build.properties
new file mode 100644
index 0000000..5f84f22
--- /dev/null
+++ b/gui/org.eclipse.efm.modeling.ui.views.common/build.properties
@@ -0,0 +1,17 @@
+###############################################################################

+# Copyright (c) 2017 CEA LIST.

+#

+# All rights reserved. This program and the accompanying materials

+# are made available under the terms of the Eclipse Public License v1.0

+# which accompanies this distribution, and is available at

+# http://www.eclipse.org/legal/epl-v10.html

+#

+# Contributors:

+#  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr

+#   - Initial API and Implementation

+###############################################################################

+source.. = src/

+output.. = target/classes/

+bin.includes = META-INF/,\

+               .,\

+               plugin.xml

diff --git a/gui/org.eclipse.efm.modeling.ui.views.common/plugin.xml b/gui/org.eclipse.efm.modeling.ui.views.common/plugin.xml
new file mode 100644
index 0000000..b60f62a
--- /dev/null
+++ b/gui/org.eclipse.efm.modeling.ui.views.common/plugin.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<?eclipse version="3.4"?>

+<plugin>

+

+</plugin>

diff --git a/gui/org.eclipse.efm.ui.preferences_root/pom.xml b/gui/org.eclipse.efm.modeling.ui.views.common/pom.xml
similarity index 81%
rename from gui/org.eclipse.efm.ui.preferences_root/pom.xml
rename to gui/org.eclipse.efm.modeling.ui.views.common/pom.xml
index a4be8ea..8978c3d 100644
--- a/gui/org.eclipse.efm.ui.preferences_root/pom.xml
+++ b/gui/org.eclipse.efm.modeling.ui.views.common/pom.xml
@@ -7,8 +7,8 @@
 		<artifactId>org.eclipse.efm.modeling.gui</artifactId>
 		<version>0.0.1-SNAPSHOT</version>
 	</parent>
-	<artifactId>org.eclipse.efm.ui.preferences_root</artifactId>
+	<artifactId>org.eclipse.efm.modeling.ui.views.common</artifactId>
 	<packaging>eclipse-plugin</packaging>
-	<name>org.eclipse.efm.ui.preferences_root</name>
+	<name>org.eclipse.efm.modeling.ui.views.common</name>
 	<description>This plug-in contains the XXXXXXXXX.</description>
 </project>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/src/.gitignore b/gui/org.eclipse.efm.modeling.ui.views.common/src/.gitignore
similarity index 100%
rename from gui/org.eclipse.efm.papyrus.views.common/src/.gitignore
rename to gui/org.eclipse.efm.modeling.ui.views.common/src/.gitignore
diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/.classpath b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/.classpath
similarity index 100%
rename from gui/org.eclipse.efm.papyrus.views.property.concretesyntax/.classpath
rename to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/.classpath
diff --git a/gui/org.eclipse.efm.papyrus.views.common/.gitignore b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/.gitignore
similarity index 100%
copy from gui/org.eclipse.efm.papyrus.views.common/.gitignore
copy to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/.gitignore
diff --git a/gui/org.eclipse.efm.ui.newproject.templates/.project b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/.project
similarity index 91%
copy from gui/org.eclipse.efm.ui.newproject.templates/.project
copy to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/.project
index 5269167..42e1d75 100644
--- a/gui/org.eclipse.efm.ui.newproject.templates/.project
+++ b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/.project
@@ -1,34 +1,34 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.efm.ui.newproject.templates</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.m2e.core.maven2Builder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.m2e.core.maven2Nature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?>

+<projectDescription>

+	<name>org.eclipse.efm.modeling.ui.views.property.tab.xlia</name>

+	<comment></comment>

+	<projects>

+	</projects>

+	<buildSpec>

+		<buildCommand>

+			<name>org.eclipse.jdt.core.javabuilder</name>

+			<arguments>

+			</arguments>

+		</buildCommand>

+		<buildCommand>

+			<name>org.eclipse.pde.ManifestBuilder</name>

+			<arguments>

+			</arguments>

+		</buildCommand>

+		<buildCommand>

+			<name>org.eclipse.pde.SchemaBuilder</name>

+			<arguments>

+			</arguments>

+		</buildCommand>

+		<buildCommand>

+			<name>org.eclipse.m2e.core.maven2Builder</name>

+			<arguments>

+			</arguments>

+		</buildCommand>

+	</buildSpec>

+	<natures>

+		<nature>org.eclipse.m2e.core.maven2Nature</nature>

+		<nature>org.eclipse.pde.PluginNature</nature>

+		<nature>org.eclipse.jdt.core.javanature</nature>

+	</natures>

+</projectDescription>

diff --git a/gui/org.eclipse.efm.papyrus.views.common/.settings/org.eclipse.core.resources.prefs b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/.settings/org.eclipse.core.resources.prefs
similarity index 100%
copy from gui/org.eclipse.efm.papyrus.views.common/.settings/org.eclipse.core.resources.prefs
copy to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/.settings/org.eclipse.core.resources.prefs
diff --git a/gui/org.eclipse.efm.papyrus.views.common/.settings/org.eclipse.jdt.core.prefs b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/.settings/org.eclipse.jdt.core.prefs
similarity index 100%
copy from gui/org.eclipse.efm.papyrus.views.common/.settings/org.eclipse.jdt.core.prefs
copy to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/.settings/org.eclipse.jdt.core.prefs
diff --git a/gui/org.eclipse.efm.papyrus.views.common/.settings/org.eclipse.m2e.core.prefs b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/.settings/org.eclipse.m2e.core.prefs
similarity index 100%
copy from gui/org.eclipse.efm.papyrus.views.common/.settings/org.eclipse.m2e.core.prefs
copy to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/.settings/org.eclipse.m2e.core.prefs
diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/META-INF/MANIFEST.MF b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/META-INF/MANIFEST.MF
similarity index 80%
rename from gui/org.eclipse.efm.papyrus.views.property.concretesyntax/META-INF/MANIFEST.MF
rename to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/META-INF/MANIFEST.MF
index 91b256d..04f9b97 100644
--- a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/META-INF/MANIFEST.MF
+++ b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/META-INF/MANIFEST.MF
@@ -1,6 +1,6 @@
 Manifest-Version: 1.0

 Export-Package: org.eclipse.efm.papyrus.view.property.concretesyntax.sheet

-Bundle-SymbolicName: org.eclipse.efm.papyrus.views.property.concretesyntax;singleton:=true

+Bundle-SymbolicName: org.eclipse.efm.modeling.ui.views.property.tab.xlia;singleton:=true

 Bundle-Version: 0.0.1.qualifier

 Bundle-Name: Diversity XLIA  XText Properties (Incubation)

 Require-Bundle: org.eclipse.papyrus.uml.xtext.integration.ui;bundle-version="1.1.3",

@@ -11,9 +11,9 @@
  org.eclipse.papyrus.infra.emf;bundle-version="1.1.3",

  org.eclipse.papyrus.infra.core.log,

  org.eclipse.efm.formalml.xtext.ui;bundle-version="[0.0.1,1.0.0)",

- org.eclipse.efm.formalml.concretesyntax.m2t;bundle-version="[0.0.1,1.0.0)",

+ org.eclipse.efm.modeling.codegen.xlia;bundle-version="[0.0.1,1.0.0)",

  org.eclipse.efm.formalml;bundle-version="[0.0.1,1.0.0)",

- org.eclipse.efm.ui.resources;bundle-version="0.0.1"

+ org.eclipse.efm.ui;bundle-version="0.0.1"

 Bundle-ActivationPolicy: lazy

 Bundle-Activator: org.eclipse.efm.papyrus.view.property.concretesyntax.ActivatorXLIAProperties

 Bundle-ManifestVersion: 2

diff --git a/gui/org.eclipse.efm.runconfiguration/about.html b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/about.html
similarity index 100%
copy from gui/org.eclipse.efm.runconfiguration/about.html
copy to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/about.html
diff --git a/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/build.properties b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/build.properties
new file mode 100644
index 0000000..5f84f22
--- /dev/null
+++ b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/build.properties
@@ -0,0 +1,17 @@
+###############################################################################

+# Copyright (c) 2017 CEA LIST.

+#

+# All rights reserved. This program and the accompanying materials

+# are made available under the terms of the Eclipse Public License v1.0

+# which accompanies this distribution, and is available at

+# http://www.eclipse.org/legal/epl-v10.html

+#

+# Contributors:

+#  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr

+#   - Initial API and Implementation

+###############################################################################

+source.. = src/

+output.. = target/classes/

+bin.includes = META-INF/,\

+               .,\

+               plugin.xml

diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/plugin.xml b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/plugin.xml
similarity index 92%
rename from gui/org.eclipse.efm.papyrus.views.property.concretesyntax/plugin.xml
rename to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/plugin.xml
index f698f3c..ec903e8 100644
--- a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/plugin.xml
+++ b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/plugin.xml
@@ -28,9 +28,9 @@
                afterTab="uml"

                category="org.eclipse.papyrus"

                id="fml_editing"

-               image="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"

+               image="platform:/plugin/org.eclipse.efm.ui/resources/icons/diversity_icon.png"

                indented="true"

-               label="FormalML">

+               label="xLIA">

          </propertyTab>

       </propertyTabs>

    </extension>
diff --git a/gui/org.eclipse.efm.ui.newproject.templates/pom.xml b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/pom.xml
similarity index 79%
rename from gui/org.eclipse.efm.ui.newproject.templates/pom.xml
rename to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/pom.xml
index 313d536..82d4a0e 100644
--- a/gui/org.eclipse.efm.ui.newproject.templates/pom.xml
+++ b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/pom.xml
@@ -7,8 +7,8 @@
 		<artifactId>org.eclipse.efm.modeling.gui</artifactId>
 		<version>0.0.1-SNAPSHOT</version>
 	</parent>
-	<artifactId>org.eclipse.efm.ui.newproject.templates</artifactId>
+	<artifactId>org.eclipse.efm.modeling.ui.views.property.tab.xlia</artifactId>
 	<packaging>eclipse-plugin</packaging>
-	<name>org.eclipse.efm.ui.newproject.templates</name>
+	<name>org.eclipse.efm.modeling.ui.views.property.tab.xlia</name>
 	<description>This plug-in contains the XXXXXXXXX.</description>
 </project>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/ActivatorXLIAProperties.java b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/ActivatorXLIAProperties.java
similarity index 100%
rename from gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/ActivatorXLIAProperties.java
rename to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/ActivatorXLIAProperties.java
diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/UndoRedoStack.java b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/UndoRedoStack.java
similarity index 96%
rename from gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/UndoRedoStack.java
rename to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/UndoRedoStack.java
index 3db7433..466ab0e 100644
--- a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/UndoRedoStack.java
+++ b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/UndoRedoStack.java
@@ -1,5 +1,5 @@
 /*****************************************************************************
- * Copyright (c) 2014 CEA LIST.
+ * Copyright (c) 2014, 2016 CEA LIST.
  *
  *    
  * All rights reserved. This program and the accompanying materials
diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/command/AbstractUpdateCommand.java b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/command/AbstractUpdateCommand.java
similarity index 100%
rename from gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/command/AbstractUpdateCommand.java
rename to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/command/AbstractUpdateCommand.java
diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/command/UpdateOperationCommand.java b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/command/UpdateOperationCommand.java
similarity index 97%
rename from gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/command/UpdateOperationCommand.java
rename to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/command/UpdateOperationCommand.java
index facb50a..8186e02 100644
--- a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/command/UpdateOperationCommand.java
+++ b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/command/UpdateOperationCommand.java
@@ -8,7 +8,7 @@
 *****************************************************************************/
 package org.eclipse.efm.papyrus.view.property.concretesyntax.internal.command;
 
-import org.eclipse.efm.formalml.util.StereotypeUtil;
+import org.eclipse.efm.modeling.formalml.helpers.StereotypeUtil;
 import org.eclipse.uml2.uml.Behavior;
 import org.eclipse.uml2.uml.OpaqueBehavior;
 import org.eclipse.uml2.uml.Operation;
diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/command/UpdateTransitionCommand.java b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/command/UpdateTransitionCommand.java
similarity index 98%
rename from gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/command/UpdateTransitionCommand.java
rename to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/command/UpdateTransitionCommand.java
index d240bbf..ac7b54e 100644
--- a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/command/UpdateTransitionCommand.java
+++ b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/command/UpdateTransitionCommand.java
@@ -8,8 +8,8 @@
 *****************************************************************************/
 package org.eclipse.efm.papyrus.view.property.concretesyntax.internal.command;
 
-import org.eclipse.efm.formalml.TimedTransition;
-import org.eclipse.efm.formalml.util.StereotypeUtil;
+import org.eclipse.efm.modeling.formalml.TimedTransition;
+import org.eclipse.efm.modeling.formalml.helpers.StereotypeUtil;
 import org.eclipse.uml2.common.util.UML2Util;
 import org.eclipse.uml2.uml.Behavior;
 import org.eclipse.uml2.uml.Constraint;
diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/command/UpdateTransitionTransactionalCommand.java b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/command/UpdateTransitionTransactionalCommand.java
similarity index 100%
rename from gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/command/UpdateTransitionTransactionalCommand.java
rename to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/command/UpdateTransitionTransactionalCommand.java
diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/job/ExecuteCommandJob.java b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/job/ExecuteCommandJob.java
similarity index 100%
rename from gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/job/ExecuteCommandJob.java
rename to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/internal/job/ExecuteCommandJob.java
diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/EditingPropertyCodeGenerator.java b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/EditingPropertyCodeGenerator.java
similarity index 97%
rename from gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/EditingPropertyCodeGenerator.java
rename to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/EditingPropertyCodeGenerator.java
index 635bd7c..8e73af5 100644
--- a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/EditingPropertyCodeGenerator.java
+++ b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/EditingPropertyCodeGenerator.java
@@ -10,10 +10,10 @@
 
 import java.io.StringWriter;
 
-import org.eclipse.efm.formalml.TimedTransition;
-import org.eclipse.efm.formalml.concretesyntax.m2t.factory.MainCodeGenerator;
-import org.eclipse.efm.formalml.concretesyntax.m2t.util.PrettyPrintWriter;
-import org.eclipse.efm.formalml.util.StereotypeUtil;
+import org.eclipse.efm.modeling.codegen.xlia.core.MainCodeGenerator;
+import org.eclipse.efm.modeling.codegen.xlia.util.PrettyPrintWriter;
+import org.eclipse.efm.modeling.formalml.TimedTransition;
+import org.eclipse.efm.modeling.formalml.helpers.StereotypeUtil;
 import org.eclipse.emf.ecore.EObject;
 import org.eclipse.uml2.uml.Activity;
 import org.eclipse.uml2.uml.Behavior;
diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/EditingPropertySection.java b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/EditingPropertySection.java
similarity index 95%
rename from gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/EditingPropertySection.java
rename to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/EditingPropertySection.java
index 44a7778..11f8852 100644
--- a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/EditingPropertySection.java
+++ b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/EditingPropertySection.java
@@ -1,5 +1,5 @@
 /*****************************************************************************
-* Copyright (c) 2012 CEA LIST.
+* Copyright (c) 2012, 2017 CEA LIST.
 *
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
@@ -13,26 +13,21 @@
 
 package org.eclipse.efm.papyrus.view.property.concretesyntax.sheet;
 
-import org.eclipse.core.runtime.FileLocator;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
 import org.eclipse.core.runtime.jobs.Job;
 import org.eclipse.efm.formalml.xtext.ui.internal.XtextActivator;
-import org.eclipse.efm.papyrus.view.property.concretesyntax.ActivatorXLIAProperties;
 import org.eclipse.efm.papyrus.view.property.concretesyntax.internal.command.UpdateOperationCommand;
 import org.eclipse.efm.papyrus.view.property.concretesyntax.internal.command.UpdateTransitionCommand;
 import org.eclipse.efm.papyrus.view.property.concretesyntax.internal.job.ExecuteCommandJob;
 import org.eclipse.efm.papyrus.view.property.concretesyntax.sheet.tooling.StyledTextWithUndoRedo;
 import org.eclipse.efm.papyrus.view.property.concretesyntax.sheet.tooling.UndoStyledTextManager;
 import org.eclipse.efm.papyrus.view.property.concretesyntax.sheet.tooling.listeners.EditorFocusListener;
-import org.eclipse.efm.ui.resources.UIfmlResources;
+import org.eclipse.efm.ui.utils.ImageResources;
 import org.eclipse.emf.ecore.EObject;
 import org.eclipse.emf.transaction.TransactionalEditingDomain;
 import org.eclipse.gmf.runtime.diagram.ui.properties.sections.AbstractModelerPropertySection;
 import org.eclipse.jface.action.Action;
 import org.eclipse.jface.action.ActionContributionItem;
 import org.eclipse.jface.layout.GridDataFactory;
-import org.eclipse.jface.resource.ImageDescriptor;
 import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
 import org.eclipse.papyrus.uml.xtext.integration.StyledTextXtextAdapter;
 import org.eclipse.papyrus.uml.xtext.integration.core.ContextElementAdapter;
@@ -296,7 +291,7 @@
 
 		fRevertAction.setToolTipText("Reset edited element text");
 		
-		fRevertAction.setImageDescriptor(UIfmlResources.getImageDescriptor(UIfmlResources.IMAGE__REVERT_ICON));
+		fRevertAction.setImageDescriptor(ImageResources.getImageDescriptor(ImageResources.IMAGE__REVERT_ICON));
 
 
 		ActionContributionItem aci = new ActionContributionItem(fRevertAction);
@@ -324,7 +319,7 @@
 
 		fCommitAction.setToolTipText(COMMIT_ACTION_DEFAULT_DESCRIPTION);
 
-		fCommitAction.setImageDescriptor(UIfmlResources.getImageDescriptor(UIfmlResources.IMAGE__PUSH_ICON));
+		fCommitAction.setImageDescriptor(ImageResources.getImageDescriptor(ImageResources.IMAGE__PUSH_ICON));
 
 
 		ActionContributionItem aci = new ActionContributionItem(fCommitAction);
diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/EditingPropertySectionFilter.java b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/EditingPropertySectionFilter.java
similarity index 98%
rename from gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/EditingPropertySectionFilter.java
rename to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/EditingPropertySectionFilter.java
index 2d52fe1..6a410c5 100644
--- a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/EditingPropertySectionFilter.java
+++ b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/EditingPropertySectionFilter.java
@@ -1,5 +1,5 @@
 /*****************************************************************************

- * Copyright (c) 2014 CEA LIST.

+ * Copyright (c) 2014, 2016 CEA LIST.

  *

  *

  * All rights reserved. This program and the accompanying materials

@@ -9,7 +9,7 @@
  *

  * Contributors:

  *

- *****************************************************************************/

+ *****************************************************************************/
 package org.eclipse.efm.papyrus.view.property.concretesyntax.sheet;

 

 import org.eclipse.emf.ecore.resource.Resource;

diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/tooling/StyledTextWithUndoRedo.java b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/tooling/StyledTextWithUndoRedo.java
similarity index 97%
rename from gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/tooling/StyledTextWithUndoRedo.java
rename to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/tooling/StyledTextWithUndoRedo.java
index 32e81a0..7ee0ee3 100644
--- a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/tooling/StyledTextWithUndoRedo.java
+++ b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/tooling/StyledTextWithUndoRedo.java
@@ -1,5 +1,5 @@
 /*****************************************************************************

- * Copyright (c) 2015 CEA LIST and others.

+ * Copyright (c) 2015, 2016 CEA LIST and others.

  *

  * All rights reserved. This program and the accompanying materials

  * are made available under the terms of the Eclipse Public License v1.0

@@ -9,7 +9,7 @@
  * Contributors:

  *   Jļæ½rļæ½mie Tatibouet (CEA LIST)

  *

- *****************************************************************************/

+ *****************************************************************************/
 

 package org.eclipse.efm.papyrus.view.property.concretesyntax.sheet.tooling;

 

diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/tooling/UndoStyledTextManager.java b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/tooling/UndoStyledTextManager.java
similarity index 98%
rename from gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/tooling/UndoStyledTextManager.java
rename to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/tooling/UndoStyledTextManager.java
index 4b06023..7c58a26 100644
--- a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/tooling/UndoStyledTextManager.java
+++ b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/tooling/UndoStyledTextManager.java
@@ -1,5 +1,5 @@
 /*****************************************************************************
-* Copyright (c) 2012 CEA LIST.
+* Copyright (c) 2012, 2016 CEA LIST.
 *
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/tooling/listeners/EditorFocusListener.java b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/tooling/listeners/EditorFocusListener.java
similarity index 97%
rename from gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/tooling/listeners/EditorFocusListener.java
rename to gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/tooling/listeners/EditorFocusListener.java
index afeb5af..829a938 100644
--- a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/tooling/listeners/EditorFocusListener.java
+++ b/gui/org.eclipse.efm.modeling.ui.views.property.tab.xlia/src/org/eclipse/efm/papyrus/view/property/concretesyntax/sheet/tooling/listeners/EditorFocusListener.java
@@ -1,5 +1,5 @@
 /*****************************************************************************

- * Copyright (c) 2015 CEA LIST and others.

+ * Copyright (c) 2015, 2016 CEA LIST and others.

  *

  * All rights reserved. This program and the accompanying materials

  * are made available under the terms of the Eclipse Public License v1.0

@@ -10,7 +10,7 @@
  *   CEA LIST - Initial API and implementation

  *   Jļæ½rļæ½mie Tatibouet (CEA LIST)

  *

- *****************************************************************************/

+ *****************************************************************************/
 

 package org.eclipse.efm.papyrus.view.property.concretesyntax.sheet.tooling.listeners;

 

diff --git a/gui/org.eclipse.efm.ui.views/.classpath b/gui/org.eclipse.efm.modeling.ui/.classpath
similarity index 100%
copy from gui/org.eclipse.efm.ui.views/.classpath
copy to gui/org.eclipse.efm.modeling.ui/.classpath
diff --git a/gui/org.eclipse.efm.modeling.ui/.gitignore b/gui/org.eclipse.efm.modeling.ui/.gitignore
new file mode 100644
index 0000000..a1d9a41
--- /dev/null
+++ b/gui/org.eclipse.efm.modeling.ui/.gitignore
@@ -0,0 +1,2 @@
+/bin/
+/target/**
diff --git a/gui/org.eclipse.efm.ui.views/.project b/gui/org.eclipse.efm.modeling.ui/.project
similarity index 93%
rename from gui/org.eclipse.efm.ui.views/.project
rename to gui/org.eclipse.efm.modeling.ui/.project
index de9c404..8165a9e 100644
--- a/gui/org.eclipse.efm.ui.views/.project
+++ b/gui/org.eclipse.efm.modeling.ui/.project
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>

 <projectDescription>

-	<name>org.eclipse.efm.ui.views</name>

+	<name>org.eclipse.efm.modeling.ui</name>

 	<comment></comment>

 	<projects>

 	</projects>

diff --git a/gui/org.eclipse.efm.ui.views/.settings/org.eclipse.jdt.core.prefs b/gui/org.eclipse.efm.modeling.ui/.settings/org.eclipse.jdt.core.prefs
similarity index 100%
copy from gui/org.eclipse.efm.ui.views/.settings/org.eclipse.jdt.core.prefs
copy to gui/org.eclipse.efm.modeling.ui/.settings/org.eclipse.jdt.core.prefs
diff --git a/gui/org.eclipse.efm.modeling.ui/META-INF/MANIFEST.MF b/gui/org.eclipse.efm.modeling.ui/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..4c788a6
--- /dev/null
+++ b/gui/org.eclipse.efm.modeling.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,11 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.efm.modeling.ui;singleton:=true
+Bundle-Version: 0.0.1.qualifier
+Bundle-Activator: org.eclipse.efm.modeling.ui.Activator
+Bundle-Vendor: %pluginVendor
+Require-Bundle: org.eclipse.ui,

+ org.eclipse.core.runtime
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Bundle-ActivationPolicy: lazy
diff --git a/gui/org.eclipse.efm.ui.views/about.html b/gui/org.eclipse.efm.modeling.ui/about.html
similarity index 100%
copy from gui/org.eclipse.efm.ui.views/about.html
copy to gui/org.eclipse.efm.modeling.ui/about.html
diff --git a/gui/org.eclipse.efm.modeling.ui/build.properties b/gui/org.eclipse.efm.modeling.ui/build.properties
new file mode 100644
index 0000000..21da636
--- /dev/null
+++ b/gui/org.eclipse.efm.modeling.ui/build.properties
@@ -0,0 +1,17 @@
+###############################################################################

+# Copyright (c) 2017 CEA LIST.

+#

+# All rights reserved. This program and the accompanying materials

+# are made available under the terms of the Eclipse Public License v1.0

+# which accompanies this distribution, and is available at

+# http://www.eclipse.org/legal/epl-v10.html

+#

+# Contributors:

+#  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr

+#   - Initial API and Implementation

+###############################################################################

+source.. = src/

+output.. = bin/

+bin.includes = META-INF/,\

+               .,\

+               plugin.xml

diff --git a/gui/org.eclipse.efm.modeling.ui/plugin.xml b/gui/org.eclipse.efm.modeling.ui/plugin.xml
new file mode 100644
index 0000000..a79a99a
--- /dev/null
+++ b/gui/org.eclipse.efm.modeling.ui/plugin.xml
@@ -0,0 +1,104 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<?eclipse version="3.4"?>

+<plugin>

+   <extension

+         point="org.eclipse.ui.perspectives">

+      <perspective

+            class="org.eclipse.efm.modeling.ui.PerspectiveModeling"

+            fixed="true"

+            icon="platform:/plugin/org.eclipse.efm.ui/resources/icons/diversity_icon.png"

+            id="org.eclipse.efm.modeling.ui.perspectiveModeling"

+            name="EFM-Modeling">

+      </perspective>

+   </extension>

+   <extension

+         point="org.eclipse.ui.perspectiveExtensions">

+      <perspectiveExtension

+            targetID="org.eclipse.efm.modeling.ui.perspectiveModeling">

+         <view

+               closeable="true"

+               id="org.eclipse.papyrus.views.modelexplorer.modelexplorer"

+               minimized="false"

+               moveable="true"

+               ratio="0.2"

+               relationship="left"

+               relative="org.eclipse.ui.editorss"

+               showTitle="true"

+               standalone="false"

+               visible="true">

+         </view>

+         <view

+               closeable="true"

+               id="org.eclipse.ui.navigator.ProjectExplorer"

+               minimized="false"

+               moveable="true"

+               ratio="0.6"

+               relationship="bottom"

+               relative="org.eclipse.papyrus.views.modelexplorer.modelexplorer"

+               showTitle="true"

+               standalone="false"

+               visible="true">

+         </view>

+         <view

+               closeable="true"

+               id="org.eclipse.ui.views.ContentOutline"

+               minimized="false"

+               moveable="true"

+               ratio="0.6"

+               relationship="stack"

+               relative="org.eclipse.ui.navigator.ProjectExplorer"

+               showTitle="true"

+               standalone="false"

+               visible="true">

+         </view>

+         <view

+               closeable="true"

+               id="org.eclipse.ui.views.PropertySheet"

+               minimized="false"

+               moveable="true"

+               ratio="0.6"

+               relationship="bottom"

+               relative="org.eclipse.ui.editorss"

+               showTitle="true"

+               standalone="false"

+               visible="true">

+         </view>

+         <view

+               closeable="true"

+               id="org.eclipse.ui.console.ConsoleView"

+               minimized="false"

+               moveable="true"

+               relationship="stack"

+               relative="org.eclipse.ui.views.PropertySheet"

+               showTitle="true"

+               standalone="false"

+               visible="true">

+         </view>

+         <actionSet

+               id="org.eclipse.debug.ui.launchActionSet">

+         </actionSet>

+         <newWizardShortcut

+               id="org.eclipse.efm.modeling.ui.newproject.wizard">

+         </newWizardShortcut>

+         <newWizardShortcut

+               id="org.eclipse.efm.modeling.ui.newproject.examples.papyrus.ComplexDog">

+         </newWizardShortcut>

+         <newWizardShortcut

+               id="org.eclipse.efm.modeling.ui.newproject.examples.papyrus.SimplifiedPhoneX">

+         </newWizardShortcut>

+         <newWizardShortcut

+               id="org.eclipse.efm.modeling.ui.newproject.examples.papyrus.WaterSystem">

+         </newWizardShortcut>

+         <newWizardShortcut

+               id="org.eclipse.efm.modeling.ui.newproject.examples.papyrus.WaterSystem">

+         </newWizardShortcut>

+         <perspectiveShortcut

+               id="org.eclipse.efm.execution.ui.perspectiveExecution">

+         </perspectiveShortcut>

+         <perspectiveShortcut

+               id="org.eclipse.papyrus.infra.core.perspective">

+         </perspectiveShortcut>

+      </perspectiveExtension>

+   </extension>

+

+</plugin>

diff --git a/gui/org.eclipse.efm.ui.preferences_root/pom.xml b/gui/org.eclipse.efm.modeling.ui/pom.xml
similarity index 71%
copy from gui/org.eclipse.efm.ui.preferences_root/pom.xml
copy to gui/org.eclipse.efm.modeling.ui/pom.xml
index a4be8ea..5c4c961 100644
--- a/gui/org.eclipse.efm.ui.preferences_root/pom.xml
+++ b/gui/org.eclipse.efm.modeling.ui/pom.xml
@@ -7,8 +7,8 @@
 		<artifactId>org.eclipse.efm.modeling.gui</artifactId>
 		<version>0.0.1-SNAPSHOT</version>
 	</parent>
-	<artifactId>org.eclipse.efm.ui.preferences_root</artifactId>
+	<artifactId>org.eclipse.efm.modeling.ui</artifactId>
 	<packaging>eclipse-plugin</packaging>
-	<name>org.eclipse.efm.ui.preferences_root</name>
-	<description>This plug-in contains the XXXXXXXXX.</description>
+	<name>org.eclipse.efm.modeling.ui</name>
+	<description>This plug-in contains the Modeling UI components (perspective, ...).</description>
 </project>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.modeling.ui/src/org/eclipse/efm/modeling/ui/Activator.java b/gui/org.eclipse.efm.modeling.ui/src/org/eclipse/efm/modeling/ui/Activator.java
new file mode 100644
index 0000000..58fd919
--- /dev/null
+++ b/gui/org.eclipse.efm.modeling.ui/src/org/eclipse/efm/modeling/ui/Activator.java
@@ -0,0 +1,62 @@
+/*******************************************************************************

+ * Copyright (c) 2017 CEA LIST.

+ *

+ * All rights reserved. This program and the accompanying materials

+ * are made available under the terms of the Eclipse Public License v1.0

+ * which accompanies this distribution, and is available at

+ * http://www.eclipse.org/legal/epl-v10.html

+ *

+ * Contributors:

+ *  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr

+ *   - Initial API and Implementation

+ *******************************************************************************/

+package org.eclipse.efm.modeling.ui;

+

+import org.eclipse.ui.plugin.AbstractUIPlugin;

+import org.osgi.framework.BundleContext;

+

+/**

+ * The activator class controls the plug-in life cycle

+ */

+public class Activator extends AbstractUIPlugin {

+

+	// The plug-in ID

+	public static final String PLUGIN_ID = "org.eclipse.efm.modeling.ui"; //$NON-NLS-1$

+

+	// The shared instance

+	private static Activator plugin;

+	

+	/**

+	 * The constructor

+	 */

+	public Activator() {

+	}

+

+	/*

+	 * (non-Javadoc)

+	 * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)

+	 */

+	public void start(BundleContext context) throws Exception {

+		super.start(context);

+		plugin = this;

+	}

+

+	/*

+	 * (non-Javadoc)

+	 * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)

+	 */

+	public void stop(BundleContext context) throws Exception {

+		plugin = null;

+		super.stop(context);

+	}

+

+	/**

+	 * Returns the shared instance

+	 *

+	 * @return the shared instance

+	 */

+	public static Activator getDefault() {

+		return plugin;

+	}

+

+}

diff --git a/gui/org.eclipse.efm.ui/src/org/eclipse/efm/ui/PerspectiveModeling.java b/gui/org.eclipse.efm.modeling.ui/src/org/eclipse/efm/modeling/ui/PerspectiveModeling.java
similarity index 95%
rename from gui/org.eclipse.efm.ui/src/org/eclipse/efm/ui/PerspectiveModeling.java
rename to gui/org.eclipse.efm.modeling.ui/src/org/eclipse/efm/modeling/ui/PerspectiveModeling.java
index 7b2aca0..35de441 100644
--- a/gui/org.eclipse.efm.ui/src/org/eclipse/efm/ui/PerspectiveModeling.java
+++ b/gui/org.eclipse.efm.modeling.ui/src/org/eclipse/efm/modeling/ui/PerspectiveModeling.java
@@ -10,7 +10,7 @@
  *  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr
  *   - Initial API and Implementation
  *******************************************************************************/
-package org.eclipse.efm.ui;
+package org.eclipse.efm.modeling.ui;
 
 import org.eclipse.ui.IPageLayout;
 import org.eclipse.ui.IPerspectiveFactory;
diff --git a/gui/org.eclipse.efm.papyrus.views.common/.project b/gui/org.eclipse.efm.papyrus.views.common/.project
deleted file mode 100644
index 4a604bf..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/.project
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<projectDescription>

-	<name>org.eclipse.efm.papyrus.views.common</name>

-	<comment></comment>

-	<projects>

-	</projects>

-	<buildSpec>

-		<buildCommand>

-			<name>org.eclipse.jdt.core.javabuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.ManifestBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.SchemaBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.m2e.core.maven2Builder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-	</buildSpec>

-	<natures>

-		<nature>org.eclipse.m2e.core.maven2Nature</nature>

-		<nature>org.eclipse.pde.PluginNature</nature>

-		<nature>org.eclipse.jdt.core.javanature</nature>

-	</natures>

-</projectDescription>

diff --git a/gui/org.eclipse.efm.papyrus.views.common/build.properties b/gui/org.eclipse.efm.papyrus.views.common/build.properties
deleted file mode 100644
index f6172ba..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/build.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-source.. = src/

-output.. = target/classes/

-bin.includes = META-INF/,\

-               .,\

-               plugin.xml

diff --git a/gui/org.eclipse.efm.papyrus.views.common/plugin.xml b/gui/org.eclipse.efm.papyrus.views.common/plugin.xml
deleted file mode 100644
index 45f747b..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/plugin.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<?eclipse version="3.4"?>

-<plugin>

-   <extension

-         point="org.eclipse.papyrus.infra.newchild">

-      <menuCreationModel

-            model="resources/newchildmenu/newChildMenu.xmi">

-      </menuCreationModel>

-   </extension>

-   <extension

-         point="org.eclipse.papyrus.infra.properties.contexts">

-           <context contextModel="resources/properties/FormalML.ctx"></context>                  

-   </extension>

-

-</plugin>

diff --git a/gui/org.eclipse.efm.papyrus.views.common/pom.xml b/gui/org.eclipse.efm.papyrus.views.common/pom.xml
deleted file mode 100644
index 6d63e7c..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/pom.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<parent>
-		<groupId>org.eclipse.efm</groupId>
-		<artifactId>org.eclipse.efm.modeling.gui</artifactId>
-		<version>0.0.1-SNAPSHOT</version>
-	</parent>
-	<artifactId>org.eclipse.efm.papyrus.views.common</artifactId>
-	<packaging>eclipse-plugin</packaging>
-	<name>org.eclipse.efm.papyrus.views.common</name>
-	<description>This plug-in contains the XXXXXXXXX.</description>
-</project>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/newchildmenu/newChildMenu.xmi b/gui/org.eclipse.efm.papyrus.views.common/resources/newchildmenu/newChildMenu.xmi
deleted file mode 100644
index e9d97c5..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/newchildmenu/newChildMenu.xmi
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>

-<ElementCreationMenuModel:Folder

-    xmi:version="2.0"

-    xmlns:xmi="http://www.omg.org/XMI"

-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

-    xmlns:ElementCreationMenuModel="http://www.eclipse.org/papyrus/infra/newchild/elementcreationmenumodel"

-    label="FormalML">

-  <menu xsi:type="ElementCreationMenuModel:CreationMenu"

-      label="Configuration"

-      icon=""

-      elementTypeIdRef="org.eclipse.efm.fml.Configuration"/>

-  <menu xsi:type="ElementCreationMenuModel:CreationMenu"

-      label="Clock"

-      elementTypeIdRef="org.eclipse.efm.fml.Clock"/>

-</ElementCreationMenuModel:Folder>

diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/FormalML.ctx b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/FormalML.ctx
deleted file mode 100644
index bdfbd34..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/FormalML.ctx
+++ /dev/null
@@ -1,244 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>

-<contexts:Context xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:constraints="http://www.eclipse.org/papyrus/constraints/0.9" xmlns:contexts="http://www.eclipse.org/papyrus/properties/contexts/0.9" xmi:id="_ZuqLoO94EeaWHe1FUDLuKA" name="fml">

-  <dependencies href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_69QJkKDJEeSZxfCXzZz3-w"/>

-  <tabs xmi:id="_dSEoAO94EeaWHe1FUDLuKA" label="fml" id="fml" priority="100">

-    <sections xmi:id="_dSFPEO94EeaWHe1FUDLuKA" name="Single ReceiveSignalEvent" sectionFile="ui/SingleReceiveSignalEvent.xwt">

-      <widget href="ui/SingleReceiveSignalEvent.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSFPEe94EeaWHe1FUDLuKA" name="Multiple ReceiveSignalEvent" sectionFile="ui/MultipleReceiveSignalEvent.xwt">

-      <widget href="ui/MultipleReceiveSignalEvent.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSF2IO94EeaWHe1FUDLuKA" name="Single ReceiveEvent" sectionFile="ui/SingleReceiveEvent.xwt">

-      <widget href="ui/SingleReceiveEvent.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSF2Ie94EeaWHe1FUDLuKA" name="Multiple ReceiveEvent" sectionFile="ui/MultipleReceiveEvent.xwt">

-      <widget href="ui/MultipleReceiveEvent.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSGdMO94EeaWHe1FUDLuKA" name="Single ReceiveAnyEvent" sectionFile="ui/SingleReceiveAnyEvent.xwt">

-      <widget href="ui/SingleReceiveAnyEvent.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSGdMe94EeaWHe1FUDLuKA" name="Multiple ReceiveAnyEvent" sectionFile="ui/MultipleReceiveAnyEvent.xwt">

-      <widget href="ui/MultipleReceiveAnyEvent.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSHEQO94EeaWHe1FUDLuKA" name="Single Part" sectionFile="ui/SinglePart.xwt">

-      <widget href="ui/SinglePart.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSHrUO94EeaWHe1FUDLuKA" name="Multiple Part" sectionFile="ui/MultiplePart.xwt">

-      <widget href="ui/MultiplePart.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSHrUe94EeaWHe1FUDLuKA" name="Single TimedTransition" sectionFile="ui/SingleTimedTransition.xwt">

-      <widget href="ui/SingleTimedTransition.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSISYO94EeaWHe1FUDLuKA" name="Multiple TimedTransition" sectionFile="ui/MultipleTimedTransition.xwt">

-      <widget href="ui/MultipleTimedTransition.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSJggO94EeaWHe1FUDLuKA" name="Single Buffer" sectionFile="ui/SingleBuffer.xwt">

-      <widget href="ui/SingleBuffer.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSKHkO94EeaWHe1FUDLuKA" name="Multiple Buffer" sectionFile="ui/MultipleBuffer.xwt">

-      <widget href="ui/MultipleBuffer.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSKHke94EeaWHe1FUDLuKA" name="Single Block" sectionFile="ui/SingleBlock.xwt">

-      <widget href="ui/SingleBlock.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSKuoO94EeaWHe1FUDLuKA" name="Multiple Block" sectionFile="ui/MultipleBlock.xwt">

-      <widget href="ui/MultipleBlock.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSLVsO94EeaWHe1FUDLuKA" name="Single FormalBlock" sectionFile="ui/SingleFormalBlock.xwt">

-      <widget href="ui/SingleFormalBlock.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSLVse94EeaWHe1FUDLuKA" name="Multiple FormalBlock" sectionFile="ui/MultipleFormalBlock.xwt">

-      <widget href="ui/MultipleFormalBlock.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSLVsu94EeaWHe1FUDLuKA" name="Single Clock" sectionFile="ui/SingleClock.xwt">

-      <widget href="ui/SingleClock.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSL8wO94EeaWHe1FUDLuKA" name="Multiple Clock" sectionFile="ui/MultipleClock.xwt">

-      <widget href="ui/MultipleClock.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSMj0O94EeaWHe1FUDLuKA" name="Single Configuration" sectionFile="ui/SingleConfiguration.xwt">

-      <widget href="ui/SingleConfiguration.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSMj0e94EeaWHe1FUDLuKA" name="Multiple Configuration" sectionFile="ui/MultipleConfiguration.xwt">

-      <widget href="ui/MultipleConfiguration.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSNK4O94EeaWHe1FUDLuKA" name="Single DirectedPort" sectionFile="ui/SingleDirectedPort.xwt">

-      <widget href="ui/SingleDirectedPort.xwt#/"/>

-    </sections>

-    <sections xmi:id="_dSNK4e94EeaWHe1FUDLuKA" name="Multiple DirectedPort" sectionFile="ui/MultipleDirectedPort.xwt">

-      <widget href="ui/MultipleDirectedPort.xwt#/"/>

-    </sections>

-  </tabs>

-  <views xmi:id="_ZuqLoe94EeaWHe1FUDLuKA" name="Single ReceiveSignalEvent" sections="_dSFPEO94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_Zuqyxu94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_ZuqLou94EeaWHe1FUDLuKA" name="isSingleReceiveSignalEvent">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_ZuqLo-94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::ReceiveSignalEvent"/>

-    </constraints>

-  </views>

-  <views xmi:id="_ZuqLpO94EeaWHe1FUDLuKA" elementMultiplicity="-1" name="Multiple ReceiveSignalEvent" sections="_dSFPEe94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_Zuqyxu94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_ZuqLpe94EeaWHe1FUDLuKA" name="isMultipleReceiveSignalEvent">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_ZuqLpu94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::ReceiveSignalEvent"/>

-    </constraints>

-  </views>

-  <views xmi:id="_ZuqLp-94EeaWHe1FUDLuKA" name="Single ReceiveEvent" sections="_dSF2IO94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_ZuqyzO94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_ZuqLqO94EeaWHe1FUDLuKA" name="isSingleReceiveEvent">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_ZuqLqe94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::ReceiveEvent"/>

-    </constraints>

-  </views>

-  <views xmi:id="_ZuqLqu94EeaWHe1FUDLuKA" elementMultiplicity="-1" name="Multiple ReceiveEvent" sections="_dSF2Ie94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_ZuqyzO94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_ZuqLq-94EeaWHe1FUDLuKA" name="isMultipleReceiveEvent">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_ZuqLrO94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::ReceiveEvent"/>

-    </constraints>

-  </views>

-  <views xmi:id="_ZuqLre94EeaWHe1FUDLuKA" name="Single ReceiveAnyEvent" sections="_dSGdMO94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_Zuqyy-94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_ZuqLru94EeaWHe1FUDLuKA" name="isSingleReceiveAnyEvent">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_ZuqLr-94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::ReceiveAnyEvent"/>

-    </constraints>

-  </views>

-  <views xmi:id="_ZuqLsO94EeaWHe1FUDLuKA" elementMultiplicity="-1" name="Multiple ReceiveAnyEvent" sections="_dSGdMe94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_Zuqyy-94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_ZuqLse94EeaWHe1FUDLuKA" name="isMultipleReceiveAnyEvent">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_ZuqLsu94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::ReceiveAnyEvent"/>

-    </constraints>

-  </views>

-  <views xmi:id="_ZuqLs-94EeaWHe1FUDLuKA" name="Single Part" sections="_dSHEQO94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_Zuqy0u94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_ZuqLtO94EeaWHe1FUDLuKA" name="isSinglePart">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_ZuqLte94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::Part"/>

-    </constraints>

-  </views>

-  <views xmi:id="_ZuqLtu94EeaWHe1FUDLuKA" elementMultiplicity="-1" name="Multiple Part" sections="_dSHrUO94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_Zuqy0u94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_ZuqLt-94EeaWHe1FUDLuKA" name="isMultiplePart">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_ZuqLuO94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::Part"/>

-    </constraints>

-  </views>

-  <views xmi:id="_ZuqLue94EeaWHe1FUDLuKA" name="Single TimedTransition" sections="_dSHrUe94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_Zuqyx-94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_ZuqLuu94EeaWHe1FUDLuKA" name="isSingleTimedTransition">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_ZuqLu-94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::TimedTransition"/>

-    </constraints>

-  </views>

-  <views xmi:id="_ZuqLvO94EeaWHe1FUDLuKA" elementMultiplicity="-1" name="Multiple TimedTransition" sections="_dSISYO94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_Zuqyx-94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_ZuqLve94EeaWHe1FUDLuKA" name="isMultipleTimedTransition">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_ZuqLvu94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::TimedTransition"/>

-    </constraints>

-  </views>

-  <views xmi:id="_ZuqLv-94EeaWHe1FUDLuKA" name="Single Buffer" sections="_dSJggO94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_ZuqyxO94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_ZuqLwO94EeaWHe1FUDLuKA" name="isSingleBuffer">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_ZuqLwe94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::Buffer"/>

-    </constraints>

-  </views>

-  <views xmi:id="_ZuqLwu94EeaWHe1FUDLuKA" elementMultiplicity="-1" name="Multiple Buffer" sections="_dSKHkO94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_ZuqyxO94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_ZuqLw-94EeaWHe1FUDLuKA" name="isMultipleBuffer">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_ZuqLxO94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::Buffer"/>

-    </constraints>

-  </views>

-  <views xmi:id="_ZuqLxe94EeaWHe1FUDLuKA" name="Single Block" sections="_dSKHke94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_Zuqyye94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_ZuqLxu94EeaWHe1FUDLuKA" name="isSingleBlock">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_ZuqLx-94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::Block"/>

-    </constraints>

-  </views>

-  <views xmi:id="_ZuqLyO94EeaWHe1FUDLuKA" elementMultiplicity="-1" name="Multiple Block" sections="_dSKuoO94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_Zuqyye94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_ZuqLye94EeaWHe1FUDLuKA" name="isMultipleBlock">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_ZuqLyu94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::Block"/>

-    </constraints>

-  </views>

-  <views xmi:id="_ZuqLy-94EeaWHe1FUDLuKA" name="Single FormalBlock" sections="_dSLVsO94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_Zuqy0O94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_ZuqLzO94EeaWHe1FUDLuKA" name="isSingleFormalBlock">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_ZuqLze94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::FormalBlock"/>

-    </constraints>

-  </views>

-  <views xmi:id="_ZuqLzu94EeaWHe1FUDLuKA" elementMultiplicity="-1" name="Multiple FormalBlock" sections="_dSLVse94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_Zuqy0O94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_ZuqLz-94EeaWHe1FUDLuKA" name="isMultipleFormalBlock">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_ZuqysO94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::FormalBlock"/>

-    </constraints>

-  </views>

-  <views xmi:id="_Zuqyse94EeaWHe1FUDLuKA" name="Single Clock" sections="_dSLVsu94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_Zuqyyu94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_Zuqysu94EeaWHe1FUDLuKA" name="isSingleClock">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_Zuqys-94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::Clock"/>

-    </constraints>

-  </views>

-  <views xmi:id="_ZuqytO94EeaWHe1FUDLuKA" elementMultiplicity="-1" name="Multiple Clock" sections="_dSL8wO94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_Zuqyyu94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_Zuqyte94EeaWHe1FUDLuKA" name="isMultipleClock">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_Zuqytu94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::Clock"/>

-    </constraints>

-  </views>

-  <views xmi:id="_Zuqyt-94EeaWHe1FUDLuKA" name="Single Configuration" sections="_dSMj0O94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_Zuqy1O94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_ZuqyuO94EeaWHe1FUDLuKA" name="isSingleConfiguration">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_Zuqyue94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::Configuration"/>

-    </constraints>

-  </views>

-  <views xmi:id="_Zuqyuu94EeaWHe1FUDLuKA" elementMultiplicity="-1" name="Multiple Configuration" sections="_dSMj0e94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_Zuqy1O94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_Zuqyu-94EeaWHe1FUDLuKA" name="isMultipleConfiguration">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_ZuqyvO94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::Configuration"/>

-    </constraints>

-  </views>

-  <views xmi:id="_Zuqyve94EeaWHe1FUDLuKA" name="Single DirectedPort" sections="_dSNK4O94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_Zuqyzu94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_Zuqyvu94EeaWHe1FUDLuKA" name="isSingleDirectedPort">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_Zuqyv-94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::DirectedPort"/>

-    </constraints>

-  </views>

-  <views xmi:id="_ZuqywO94EeaWHe1FUDLuKA" elementMultiplicity="-1" name="Multiple DirectedPort" sections="_dSNK4e94EeaWHe1FUDLuKA" automaticContext="true" datacontexts="_Zuqyzu94EeaWHe1FUDLuKA">

-    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_Zuqywe94EeaWHe1FUDLuKA" name="isMultipleDirectedPort">

-      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>

-      <properties xsi:type="constraints:ValueProperty" xmi:id="_Zuqywu94EeaWHe1FUDLuKA" name="stereotypeName" value="fml::DirectedPort"/>

-    </constraints>

-  </views>

-  <dataContexts xmi:id="_Zuqyw-94EeaWHe1FUDLuKA" name="fml">

-    <elements xmi:id="_ZuqyxO94EeaWHe1FUDLuKA" name="Buffer">

-      <properties xmi:id="_Zuqyxe94EeaWHe1FUDLuKA" name="kind" type="Enumeration"/>

-      <supertypes href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_690yG6DJEeSZxfCXzZz3-w"/>

-    </elements>

-    <elements xmi:id="_Zuqyxu94EeaWHe1FUDLuKA" name="ReceiveSignalEvent"/>

-    <elements xmi:id="_Zuqyx-94EeaWHe1FUDLuKA" name="TimedTransition">

-      <properties xmi:id="_ZuqyyO94EeaWHe1FUDLuKA" name="tguard" type="Reference"/>

-      <supertypes href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_690yiKDJEeSZxfCXzZz3-w"/>

-    </elements>

-    <elements xmi:id="_Zuqyye94EeaWHe1FUDLuKA" name="Block" supertypes="_Zuqy0O94EeaWHe1FUDLuKA"/>

-    <elements xmi:id="_Zuqyyu94EeaWHe1FUDLuKA" name="Clock">

-      <supertypes href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_690yG6DJEeSZxfCXzZz3-w"/>

-    </elements>

-    <elements xmi:id="_Zuqyy-94EeaWHe1FUDLuKA" name="ReceiveAnyEvent">

-      <supertypes href="#_ZuqyzO94EeaWHe1FUDLuKA"/>

-      <supertypes href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_690z1aDJEeSZxfCXzZz3-w"/>

-    </elements>

-    <elements xmi:id="_ZuqyzO94EeaWHe1FUDLuKA" name="ReceiveEvent">

-      <properties xmi:id="_Zuqyze94EeaWHe1FUDLuKA" name="parameters" type="Reference" multiplicity="-1"/>

-    </elements>

-    <elements xmi:id="_Zuqyzu94EeaWHe1FUDLuKA" name="DirectedPort">

-      <properties xmi:id="_Zuqyz-94EeaWHe1FUDLuKA" name="direction" type="Enumeration"/>

-      <supertypes href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_690ylaDJEeSZxfCXzZz3-w"/>

-    </elements>

-    <elements xmi:id="_Zuqy0O94EeaWHe1FUDLuKA" name="FormalBlock">

-      <properties xmi:id="_Zuqy0e94EeaWHe1FUDLuKA" name="routingBehavior" type="Reference"/>

-      <supertypes href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_690yXqDJEeSZxfCXzZz3-w"/>

-    </elements>

-    <elements xmi:id="_Zuqy0u94EeaWHe1FUDLuKA" name="Part">

-      <properties xmi:id="_Zuqy0-94EeaWHe1FUDLuKA" name="instance" type="Reference" multiplicity="-1"/>

-      <supertypes href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_690yG6DJEeSZxfCXzZz3-w"/>

-    </elements>

-    <elements xmi:id="_Zuqy1O94EeaWHe1FUDLuKA" name="Configuration" supertypes="_Zuqy0O94EeaWHe1FUDLuKA">

-      <properties xmi:id="_Zuqy1e94EeaWHe1FUDLuKA" name="env" type="Reference" multiplicity="-1"/>

-      <properties xmi:id="_Zuqy1u94EeaWHe1FUDLuKA" name="timed" type="Boolean"/>

-      <properties xmi:id="_Zuqy1-94EeaWHe1FUDLuKA" name="input_enabled" type="Boolean"/>

-    </elements>

-    <modelElementFactory href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@modelElementFactories.2"/>

-  </dataContexts>

-</contexts:Context>

diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleBlock.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleBlock.xwt
deleted file mode 100644
index 926c075..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleBlock.xwt
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleBuffer.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleBuffer.xwt
deleted file mode 100644
index 926c075..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleBuffer.xwt
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleClock.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleClock.xwt
deleted file mode 100644
index 926c075..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleClock.xwt
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleConfiguration.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleConfiguration.xwt
deleted file mode 100644
index 926c075..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleConfiguration.xwt
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleDirectedPort.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleDirectedPort.xwt
deleted file mode 100644
index 926c075..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleDirectedPort.xwt
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleFormalBlock.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleFormalBlock.xwt
deleted file mode 100644
index 926c075..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleFormalBlock.xwt
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultiplePart.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultiplePart.xwt
deleted file mode 100644
index 926c075..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultiplePart.xwt
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleReceiveAnyEvent.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleReceiveAnyEvent.xwt
deleted file mode 100644
index 926c075..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleReceiveAnyEvent.xwt
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleReceiveEvent.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleReceiveEvent.xwt
deleted file mode 100644
index 926c075..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleReceiveEvent.xwt
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleReceiveSignalEvent.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleReceiveSignalEvent.xwt
deleted file mode 100644
index 926c075..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleReceiveSignalEvent.xwt
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleTimedTransition.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleTimedTransition.xwt
deleted file mode 100644
index 926c075..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/MultipleTimedTransition.xwt
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleBlock.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleBlock.xwt
deleted file mode 100644
index ebd3b64..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleBlock.xwt
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-	<Composite>

-		<Composite.layout>

-			<ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>

-		</Composite.layout>

-		<ppe:ReferenceDialog input="{Binding}"

-			property="fml:FormalBlock:routingBehavior"></ppe:ReferenceDialog>

-	</Composite>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleBuffer.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleBuffer.xwt
deleted file mode 100644
index 3f3d9ac..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleBuffer.xwt
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-	<Composite>

-		<Composite.layout>

-			<ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>

-		</Composite.layout>

-		<ppe:EnumCombo input="{Binding}" property="fml:Buffer:kind"></ppe:EnumCombo>

-	</Composite>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleClock.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleClock.xwt
deleted file mode 100644
index 926c075..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleClock.xwt
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleConfiguration.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleConfiguration.xwt
deleted file mode 100644
index 5a6cfeb..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleConfiguration.xwt
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-	<Composite>

-		<Composite.layout>

-			<ppel:PropertiesLayout numColumns="2"></ppel:PropertiesLayout>

-		</Composite.layout>

-		<ppe:BooleanRadio input="{Binding}" property="fml:Configuration:timed"></ppe:BooleanRadio>

-		<ppe:BooleanRadio input="{Binding}"

-			property="fml:Configuration:input_enabled"></ppe:BooleanRadio>

-	</Composite>

-	<Composite>

-		<Composite.layout>

-			<ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>

-		</Composite.layout>

-		<ppe:ReferenceDialog input="{Binding}"

-			property="fml:FormalBlock:routingBehavior"></ppe:ReferenceDialog>

-	</Composite>

-	<Composite>

-		<Composite.layout>

-			<ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>

-		</Composite.layout>

-		<ppe:MultiReference input="{Binding}" property="fml:Configuration:env"></ppe:MultiReference>

-	</Composite>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleDirectedPort.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleDirectedPort.xwt
deleted file mode 100644
index 5e94c8a..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleDirectedPort.xwt
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-	<Composite>

-		<Composite.layout>

-			<ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>

-		</Composite.layout>

-		<ppe:EnumCombo input="{Binding}" property="fml:DirectedPort:direction"></ppe:EnumCombo>

-	</Composite>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleFormalBlock.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleFormalBlock.xwt
deleted file mode 100644
index ebd3b64..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleFormalBlock.xwt
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-	<Composite>

-		<Composite.layout>

-			<ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>

-		</Composite.layout>

-		<ppe:ReferenceDialog input="{Binding}"

-			property="fml:FormalBlock:routingBehavior"></ppe:ReferenceDialog>

-	</Composite>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SinglePart.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SinglePart.xwt
deleted file mode 100644
index 56aa6f6..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SinglePart.xwt
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-	<Composite>

-		<Composite.layout>

-			<ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>

-		</Composite.layout>

-		<ppe:MultiReference input="{Binding}" property="fml:Part:instance"></ppe:MultiReference>

-	</Composite>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleReceiveAnyEvent.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleReceiveAnyEvent.xwt
deleted file mode 100644
index a44a168..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleReceiveAnyEvent.xwt
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-	<Composite>

-		<Composite.layout>

-			<ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>

-		</Composite.layout>

-		<ppe:MultiReference input="{Binding}"

-			property="fml:ReceiveEvent:parameters"></ppe:MultiReference>

-	</Composite>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleReceiveEvent.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleReceiveEvent.xwt
deleted file mode 100644
index a44a168..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleReceiveEvent.xwt
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-	<Composite>

-		<Composite.layout>

-			<ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>

-		</Composite.layout>

-		<ppe:MultiReference input="{Binding}"

-			property="fml:ReceiveEvent:parameters"></ppe:MultiReference>

-	</Composite>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleReceiveSignalEvent.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleReceiveSignalEvent.xwt
deleted file mode 100644
index 926c075..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleReceiveSignalEvent.xwt
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleTimedTransition.xwt b/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleTimedTransition.xwt
deleted file mode 100644
index 46278a1..0000000
--- a/gui/org.eclipse.efm.papyrus.views.common/resources/properties/ui/SingleTimedTransition.xwt
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<Composite xmlns="http://www.eclipse.org/xwt/presentation"

-	xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"

-	xmlns:j="clr-namespace:java.lang"

-	xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"

-	xmlns:x="http://www.eclipse.org/xwt">

-	<Composite.layout>

-		<ppel:PropertiesLayout></ppel:PropertiesLayout>

-	</Composite.layout>

-	<Composite>

-		<Composite.layout>

-			<ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>

-		</Composite.layout>

-		<ppe:ReferenceDialog input="{Binding}"

-			property="fml:TimedTransition:tguard"></ppe:ReferenceDialog>

-	</Composite>

-</Composite>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/.gitignore b/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/.gitignore
deleted file mode 100644
index bbdfc34..0000000
--- a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/bin/
-*.md.html
diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/.project b/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/.project
deleted file mode 100644
index 5456027..0000000
--- a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/.project
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<projectDescription>

-	<name>org.eclipse.efm.papyrus.views.property.concretesyntax</name>

-	<comment></comment>

-	<projects>

-	</projects>

-	<buildSpec>

-		<buildCommand>

-			<name>org.eclipse.jdt.core.javabuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.ManifestBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.SchemaBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.m2e.core.maven2Builder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-	</buildSpec>

-	<natures>

-		<nature>org.eclipse.m2e.core.maven2Nature</nature>

-		<nature>org.eclipse.pde.PluginNature</nature>

-		<nature>org.eclipse.jdt.core.javanature</nature>

-	</natures>

-</projectDescription>

diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/.settings/org.eclipse.jdt.core.prefs b/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 295926d..0000000
--- a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,7 +0,0 @@
-eclipse.preferences.version=1

-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled

-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8

-org.eclipse.jdt.core.compiler.compliance=1.8

-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error

-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error

-org.eclipse.jdt.core.compiler.source=1.8

diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/.settings/org.eclipse.m2e.core.prefs b/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/.settings/org.eclipse.m2e.core.prefs
deleted file mode 100644
index f897a7f..0000000
--- a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/.settings/org.eclipse.m2e.core.prefs
+++ /dev/null
@@ -1,4 +0,0 @@
-activeProfiles=
-eclipse.preferences.version=1
-resolveWorkspaceProjects=true
-version=1
diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/about.html b/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/about.html
deleted file mode 100644
index d35d5ae..0000000
--- a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/about.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>June 5, 2007</p>	
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise 
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available 
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is 
-being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content.  Check the Redistributor's license that was 
-provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
-</html>
diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/build.properties b/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/build.properties
deleted file mode 100644
index f6172ba..0000000
--- a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/build.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-source.. = src/

-output.. = target/classes/

-bin.includes = META-INF/,\

-               .,\

-               plugin.xml

diff --git a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/pom.xml b/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/pom.xml
deleted file mode 100644
index 7138dcd..0000000
--- a/gui/org.eclipse.efm.papyrus.views.property.concretesyntax/pom.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<parent>
-		<groupId>org.eclipse.efm</groupId>
-		<artifactId>org.eclipse.efm.modeling.gui</artifactId>
-		<version>0.0.1-SNAPSHOT</version>
-	</parent>
-	<artifactId>org.eclipse.efm.papyrus.views.property.concretesyntax</artifactId>
-	<packaging>eclipse-plugin</packaging>
-	<name>org.eclipse.efm.papyrus.views.property.concretesyntax</name>
-	<description>This plug-in contains the XXXXXXXXX.</description>
-</project>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.runconfiguration/.classpath b/gui/org.eclipse.efm.runconfiguration/.classpath
deleted file mode 100644
index b862a29..0000000
--- a/gui/org.eclipse.efm.runconfiguration/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<classpath>

-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>

-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>

-	<classpathentry kind="src" path="src"/>

-	<classpathentry kind="output" path="bin"/>

-</classpath>

diff --git a/gui/org.eclipse.efm.runconfiguration/.gitignore b/gui/org.eclipse.efm.runconfiguration/.gitignore
deleted file mode 100644
index bbdfc34..0000000
--- a/gui/org.eclipse.efm.runconfiguration/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/bin/
-*.md.html
diff --git a/gui/org.eclipse.efm.runconfiguration/.project b/gui/org.eclipse.efm.runconfiguration/.project
deleted file mode 100644
index 2df6e4c..0000000
--- a/gui/org.eclipse.efm.runconfiguration/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<projectDescription>

-	<name>org.eclipse.efm.runconfiguration</name>

-	<comment></comment>

-	<projects>

-	</projects>

-	<buildSpec>

-		<buildCommand>

-			<name>org.eclipse.jdt.core.javabuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.ManifestBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.SchemaBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-	</buildSpec>

-	<natures>

-		<nature>org.eclipse.pde.PluginNature</nature>

-		<nature>org.eclipse.jdt.core.javanature</nature>

-	</natures>

-</projectDescription>

diff --git a/gui/org.eclipse.efm.runconfiguration/.settings/org.eclipse.jdt.core.prefs b/gui/org.eclipse.efm.runconfiguration/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 295926d..0000000
--- a/gui/org.eclipse.efm.runconfiguration/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,7 +0,0 @@
-eclipse.preferences.version=1

-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled

-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8

-org.eclipse.jdt.core.compiler.compliance=1.8

-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error

-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error

-org.eclipse.jdt.core.compiler.source=1.8

diff --git a/gui/org.eclipse.efm.runconfiguration/META-INF/MANIFEST.MF b/gui/org.eclipse.efm.runconfiguration/META-INF/MANIFEST.MF
deleted file mode 100644
index 3d51a27..0000000
--- a/gui/org.eclipse.efm.runconfiguration/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,39 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.efm.runconfiguration;singleton:=true
-Bundle-Version: 0.0.1.qualifier
-Bundle-ClassPath: .
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Bundle-Activator: org.eclipse.efm.core.workflow.Activator
-Require-Bundle: org.eclipse.ui,
- org.eclipse.core.runtime,
- org.eclipse.emf.ecore;visibility:=reexport,
- org.eclipse.debug.core,
- org.eclipse.jdt.launching,
- org.eclipse.jdt.debug,
- org.eclipse.jdt.debug.ui,
- org.eclipse.ui.workbench,
- org.eclipse.ui.ide,
- org.eclipse.ui.navigator,
- org.eclipse.pde.ui,
- org.eclipse.ui.forms,
- org.eclipse.core.externaltools,
- org.eclipse.swt,
- org.eclipse.debug.ui,
- org.eclipse.core.variables,
- org.eclipse.core.filesystem,
- org.eclipse.jface,
- org.eclipse.ui.console,
- org.eclipse.core.expressions,
- org.eclipse.ui.views,
- org.eclipse.jface.text,
- org.eclipse.ui.views.properties.tabbed,
- org.eclipse.core.resources,
- org.eclipse.efm.ui.resources,
- org.eclipse.efm.ui.views,
- org.eclipse.efm.core.workflow
-Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Export-Package: org.eclipse.efm.runconfiguration
-Bundle-ActivationPolicy: lazy
diff --git a/gui/org.eclipse.efm.runconfiguration/build.properties b/gui/org.eclipse.efm.runconfiguration/build.properties
deleted file mode 100644
index db652eb..0000000
--- a/gui/org.eclipse.efm.runconfiguration/build.properties
+++ /dev/null
@@ -1,6 +0,0 @@
-source.. = src/

-output.. = bin/

-bin.includes = plugin.xml,\

-               META-INF/,\

-               .,\

-               plugin.properties

diff --git a/gui/org.eclipse.efm.runconfiguration/plugin.properties b/gui/org.eclipse.efm.runconfiguration/plugin.properties
deleted file mode 100644
index 61a7565..0000000
--- a/gui/org.eclipse.efm.runconfiguration/plugin.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-# Copyright (c) 2016 CEA LIST.

-# 

-# All rights reserved. This program and the accompanying materials

-# are made available under the terms of the Eclipse Public License v1.0

-# which accompanies this distribution, and is available at

-# http://www.eclipse.org/legal/epl-v10.html

-# 

-# Contributors:

-#  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr

-#   - Initial API and Implementation

-

-pluginName = Workflow Model

-providerName = www.example.org

diff --git a/gui/org.eclipse.efm.runconfiguration/plugin.xml b/gui/org.eclipse.efm.runconfiguration/plugin.xml
deleted file mode 100644
index 4068b7d..0000000
--- a/gui/org.eclipse.efm.runconfiguration/plugin.xml
+++ /dev/null
@@ -1,338 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<?eclipse version="3.4"?>

-<plugin>

-

-   <extension

-         point="org.eclipse.debug.core.launchModes">

-      <launchMode

-            label="Run"

-            mode="run">

-      </launchMode>

-      <launchMode

-            label="Debug"

-            mode="debug">

-      </launchMode>

-   </extension>

-   <extension

-         point="org.eclipse.debug.core.launchDelegates">

-      <launchDelegate

-            delegate="org.eclipse.efm.runconfiguration.LaunchDelegate"

-            id="org.eclipse.efm.runconfiguration.launchDelegate"

-            modes="sew"

-            type="org.eclipse.jdt.launching.localJavaApplication">

-      </launchDelegate>

-   </extension>

-   <extension

-         point="org.eclipse.debug.core.launchConfigurationTypes">

-      <launchConfigurationType

-            delegate="org.eclipse.efm.runconfiguration.LaunchDelegate"

-            id="org.eclipse.efm.runconfiguration.launchConfigurationType"

-            modes="run,debug"

-            name="Symbolic Execution Workflow">

-      </launchConfigurationType>

-   </extension>

-   <extension

-         point="org.eclipse.debug.ui.launchConfigurationTabGroups">

-      <launchConfigurationTabGroup

-            class="org.eclipse.efm.runconfiguration.LaunchConfigurationTabGroup"

-            id="org.eclipse.efm.runconfiguration.launchConfigurationTabGroup.diversityApplication"

-            helpContextId="org.eclipse.efm.runconfiguration.efm_runconf_tabgroup"

-            type="org.eclipse.efm.runconfiguration.launchConfigurationType">

-      </launchConfigurationTabGroup>

-   </extension>

-   <extension

-         point="org.eclipse.debug.ui.launchConfigurationTypeImages">

-      <launchConfigurationTypeImage

-            configTypeID="org.eclipse.efm.runconfiguration.launchConfigurationType"

-            icon="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"

-            id="org.eclipse.efm.runconfiguration.launchConfigurationTypeImage">

-      </launchConfigurationTypeImage>

-   </extension>

-   <extension

-         point="org.eclipse.core.expressions.definitions">

-      <definition

-            id="org.eclipse.efm.runconfiguration.definition.isEnabledMenuSEW">

-         <or>

-            <with

-                  variable="activeEditorId">

-               <equals

-                     value="org.eclipse.diversity.ide.xtext.favm.FAVM">

-               </equals>

-            </with>

-            <with

-                  variable="selection">

-               <count

-                     value="1">

-               </count>

-               <iterate

-                     operator="and">

-                  <instanceof

-                        value="org.eclipse.core.resources.IFile">

-                  </instanceof>

-                  <or>

-                     <test

-                           property="org.eclipse.core.resources.extension"

-                           value="sew">

-                     </test>

-                     <test

-                           property="org.eclipse.core.resources.extension"

-                           value="favm">

-                     </test>

-                     <test

-                           property="org.eclipse.core.resources.extension"

-                           value="gv">

-                     </test>

-                  </or>

-               </iterate>

-            </with>

-         </or>

-      </definition>

-      <definition

-            id="org.eclipse.efm.runconfiguration.definition.isEnabledCommandRunSEW">

-         <or>

-            <with

-                  variable="activeEditorId">

-               <equals

-                     value="org.eclipse.diversity.ide.xtext.favm.FAVM">

-               </equals>

-            </with>

-            <with

-                  variable="selection">

-               <count

-                     value="1">

-               </count>

-               <iterate

-                     operator="and">

-                  <instanceof

-                        value="org.eclipse.core.resources.IFile">

-                  </instanceof>

-                  <or>

-                     <test

-                           property="org.eclipse.core.resources.extension"

-                           value="sew">

-                     </test>

-                     <test

-                           property="org.eclipse.core.resources.extension"

-                           value="favm">

-                     </test>

-                  </or>

-               </iterate>

-            </with>

-         </or>

-      </definition>

-      <definition

-            id="org.eclipse.efm.runconfiguration.definition.isEnabledCommandGraphViz">

-         <or>

-            <with

-                  variable="selection">

-               <count

-                     value="1">

-               </count>

-               <iterate

-                     operator="and">

-                  <instanceof

-                        value="org.eclipse.core.resources.IFile">

-                  </instanceof>

-                  <test

-                        property="org.eclipse.core.resources.extension"

-                        value="gv">

-                  </test>

-               </iterate>

-            </with>

-         </or>

-      </definition>

-   </extension>

-   <extension

-         point="org.eclipse.ui.commands">

-      <category

-            description="Run Symbolic Execution Workflow"

-            id="org.eclipse.efm.runconfiguration.commands.category.runSEW"

-            name="Run SEW">

-      </category>

-      <command

-            categoryId="org.eclipse.efm.runconfiguration.commands.category.runSEW"

-            description="Run Symbolic Execution Workflow"

-            id="org.eclipse.efm.runconfiguration.command.runSEW"

-            name="Run SEW">

-      </command>

-   </extension>

-   <extension

-         point="org.eclipse.ui.handlers">

-      <handler

-            class="org.eclipse.efm.runconfiguration.handlers.RunSewHandler"

-            commandId="org.eclipse.efm.runconfiguration.command.runSEW">

-         <enabledWhen>

-            <reference

-                  definitionId="org.eclipse.efm.runconfiguration.definition.isEnabledCommandRunSEW">

-            </reference>

-         </enabledWhen>

-      </handler>

-   </extension>

-   <extension

-         point="org.eclipse.ui.commands">

-      <category

-            id="org.eclipse.efm.runconfiguration.commands.category.graphviz"

-            name="GraphViz">

-      </category>

-      <command

-            categoryId="org.eclipse.efm.runconfiguration.commands.category.graphviz"

-            description="Graph Visualization Tool"

-            id="org.eclipse.efm.runconfiguration.command.graphviz"

-            name="GraphViz">

-      </command>

-   </extension>

-   <extension

-         point="org.eclipse.ui.handlers">

-      <handler

-            class="org.eclipse.efm.runconfiguration.handlers.GraphVizHandler"

-            commandId="org.eclipse.efm.runconfiguration.command.graphviz">

-         <enabledWhen>

-            <reference

-                  definitionId="org.eclipse.efm.runconfiguration.definition.isEnabledCommandGraphViz">

-            </reference>

-         </enabledWhen>

-      </handler>

-   </extension>

-   <extension

-         point="org.eclipse.ui.bindings">

-      <key

-            commandId="org.eclipse.efm.runconfiguration.command.graphviz"

-            contextId="org.eclipse.ui.contexts.window"

-            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"

-            sequence="M1+7">

-      </key>

-   </extension>

-   <extension

-         point="org.eclipse.ui.menus">

-      <menuContribution

-            locationURI="menu:org.eclipse.ui.main.menu?after=additions">

-         <menu

-               id="org.eclipse.efm.runconfiguration.menu.main"

-               label="SEW"

-               mnemonic="S"

-               tooltip="Symbolic Execution Workflow">

-            <command

-                  commandId="org.eclipse.efm.runconfiguration.command.runSEW"

-                  icon="platform:/plugin/org.eclipse.efm.ui.resources/icons/run_exc.gif"

-                  id="org.eclipse.efm.runconfiguration.menu.runSEW"

-                  label="Run Symbolic Execution Workflow"

-                  mnemonic="S">

-            </command>

-            <command

-                  commandId="org.eclipse.efm.runconfiguration.command.graphviz"

-                  icon="platform:/plugin/org.eclipse.efm.ui.resources/icons/graph.ico"

-                  id="org.eclipse.efm.runconfiguration.menu.graphviz"

-                  mnemonic="V">

-            </command>

-         </menu>

-      </menuContribution>

-      <menuContribution

-            allPopups="true"

-            locationURI="popup:org.eclipse.ui.popup.any?after=additions">

-         <menu

-               icon="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"

-               id="org.eclipse.efm.runconfiguration.menu.popup.sew"

-               label="Symbolic Execution Workflow">

-            <visibleWhen

-                  checkEnabled="false">

-               <reference

-                     definitionId="org.eclipse.efm.runconfiguration.definition.isEnabledMenuSEW">

-               </reference>

-            </visibleWhen>

-            <command

-                  commandId="org.eclipse.efm.runconfiguration.command.runSEW"

-                  icon="platform:/plugin/org.eclipse.efm.ui.resources/icons/run_exc.gif"

-                  id="org.eclipse.efm.runconfiguration.menu.runSEW"

-                  mnemonic="S">

-            </command>

-            <command

-                  commandId="org.eclipse.efm.runconfiguration.command.graphviz"

-                  icon="platform:/plugin/org.eclipse.efm.ui.resources/icons/graph.ico"

-                  id="org.eclipse.efm.runconfiguration.menu.graphviz"

-                  mnemonic="V">

-            </command>

-         </menu>

-      </menuContribution>

-   </extension>

-   <extension

-         point="org.eclipse.ui.commands">

-      <category

-            description="Symbolic Execution Workflow Tools"

-            id="org.eclipse.efm.runconfiguration.category.tools"

-            name="SEW Tools">

-      </category>

-      <command

-            categoryId="org.eclipse.efm.runconfiguration.category.tools"

-            defaultHandler="org.eclipse.efm.runconfiguration.handlers.RunSewToolsHandler"

-            id="org.eclipse.efm.runconfiguration.command.tools"

-            name="SEW Tools">

-         <commandParameter

-               id="org.eclipse.efm.runconfiguration.commandParameter.message"

-               name="Message"

-               optional="true">

-         </commandParameter>

-      </command>

-   </extension>

-   <extension

-         point="org.eclipse.ui.menus">

-      <menuContribution

-            allPopups="false"

-            locationURI="toolbar:org.eclipse.ui.main.toolbar?after=additions">

-         <toolbar

-               id="org.eclipse.efm.runconfiguration.toolbar.tools"

-               label="SEW Tools">

-            <command

-                  commandId="org.eclipse.efm.runconfiguration.command.tools"

-                  icon="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"

-                  id="org.eclipse.efm.runconfiguration.dropdowncommand.tools"

-                  style="pulldown"

-                  tooltip="Symbolic Execution Workflow Tools">

-            </command>

-         </toolbar>

-      </menuContribution>

-      <menuContribution

-            allPopups="false"

-            locationURI="menu:org.eclipse.efm.runconfiguration.dropdowncommand.tools">

-            <command

-                  commandId="org.eclipse.efm.runconfiguration.command.runSEW"

-                  icon="platform:/plugin/org.eclipse.efm.ui.resources/icons/run_exc.gif"

-                  id="org.eclipse.efm.runconfiguration.toolbars.runSEW"

-                  tooltip="run Symbolic Execution Workflow">

-            </command>

-            <command

-                  commandId="org.eclipse.efm.runconfiguration.command.graphviz"

-                  icon="platform:/plugin/org.eclipse.efm.ui.resources/icons/graph.ico"

-                  id="org.eclipse.efm.runconfiguration.menu.graphviz"

-                  mnemonic="V"

-                  tooltip="Graph Visualization">

-            </command>

-      </menuContribution>

-   </extension>

-   <extension

-         point="org.eclipse.ui.views">

-      <category

-            id="org.eclipse.efm.runconfiguration.sewView"

-            name="Symbolic Execution Workflow">

-      </category>

-      <view

-            category="org.eclipse.efm.runconfiguration.sewView"

-            class="org.eclipse.efm.runconfiguration.ui.views.SymbolicExecutionView"

-            icon="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"

-            id="org.eclipse.efm.runconfiguration.ui.views.SymbolicExecutionView"

-            name="SEW Console">

-      </view>

-   </extension>

-   <extension

-         point="org.eclipse.ui.perspectiveExtensions">

-      <perspectiveExtension

-            targetID="org.eclipse.jdt.ui.JavaPerspective">

-         <view

-               id="org.eclipse.efm.runconfiguration.ui.views.SymbolicExecutionView"

-               ratio="0.5"

-               relationship="right"

-               relative="org.eclipse.ui.views.ProblemView">

-         </view>

-      </perspectiveExtension>

-   </extension>

-

-</plugin>

diff --git a/gui/org.eclipse.efm.runconfiguration/pom.xml b/gui/org.eclipse.efm.runconfiguration/pom.xml
deleted file mode 100644
index e6dc184..0000000
--- a/gui/org.eclipse.efm.runconfiguration/pom.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<parent>
-		<groupId>org.eclipse.efm</groupId>
-		<artifactId>org.eclipse.efm.modeling.gui</artifactId>
-		<version>0.0.1-SNAPSHOT</version>
-	</parent>
-	<artifactId>org.eclipse.efm.runconfiguration</artifactId>
-	<packaging>eclipse-plugin</packaging>
-	<name>org.eclipse.efm.runconfiguration</name>
-	<description>This plug-in contains the XXXXXXXXX.</description>
-</project>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/LaunchConfigurationTabGroup.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/LaunchConfigurationTabGroup.java
deleted file mode 100644
index 51dc639..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/LaunchConfigurationTabGroup.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration;

-

-import java.util.ArrayList;

-

-import org.eclipse.debug.core.ILaunchManager;

-import org.eclipse.debug.ui.AbstractLaunchConfigurationTabGroup;

-import org.eclipse.debug.ui.CommonTab;

-import org.eclipse.debug.ui.ILaunchConfigurationDialog;

-import org.eclipse.debug.ui.ILaunchConfigurationTab;

-import org.eclipse.debug.ui.RefreshTab;

-import org.eclipse.efm.core.workflow.Activator;

-import org.eclipse.efm.core.workflow.ToolConstants;

-import org.eclipse.efm.runconfiguration.ui.tabs.CommonCriteriaTab;

-import org.eclipse.efm.runconfiguration.ui.tabs.DebugTab;

-import org.eclipse.efm.runconfiguration.ui.tabs.DeveloperTuningTab;

-import org.eclipse.efm.runconfiguration.ui.tabs.ExpertTab;

-import org.eclipse.efm.runconfiguration.ui.tabs.MainTab;

-import org.eclipse.efm.runconfiguration.ui.tabs.SymbexRuntimeTab;

-import org.eclipse.efm.runconfiguration.ui.tabs.TestGenerationTab;

-import org.eclipse.jface.preference.IPreferenceStore;

-

-public class LaunchConfigurationTabGroup extends AbstractLaunchConfigurationTabGroup {

-

-	protected MainTab fMainTab;

-

-	protected ExpertTab fExpertTab;

-

-	public MainTab getMainTab() {

-		return fMainTab;

-	}

-

-	public ExpertTab getExpertTab() {

-		return fExpertTab;

-	}

-

-

-

-	@Override

-	public void createTabs(ILaunchConfigurationDialog dialog, String mode) {

-

-		IPreferenceStore prefs = Activator.getDefault().getPreferenceStore();

-

-		ArrayList<ILaunchConfigurationTab> tabList =

-				new ArrayList<ILaunchConfigurationTab>();

-

-		fMainTab = new MainTab(this);

-		tabList.add( fMainTab );

-

-		tabList.add( new CommonCriteriaTab(this) );

-		tabList.add( new TestGenerationTab(this) );

-

-		if( ILaunchManager.DEBUG_MODE.equals(mode) )

-		{

-			if( prefs.getBoolean(ToolConstants.PREF_DEBUG_OPTIONS) )

-			{

-				tabList.add( new DebugTab(this) );

-			}

-			if( prefs.getBoolean(ToolConstants.PREF_EXPERT_MODE) )

-			{

-				fExpertTab = new ExpertTab(this);

-				tabList.add( fExpertTab );

-			}

-

-			if( LaunchDelegate.ENABLED_SYMBEX_DEVELOPER_MODE_OPTION )

-			{

-				if ( prefs.getBoolean(ToolConstants.PREF_SYMBEX_DEVELOPER_MODE) )

-				{

-					tabList.add( new DeveloperTuningTab(this) );

-				}

-			}

-		}

-

-		tabList.add( new RefreshTab() );

-

-		if( ILaunchManager.DEBUG_MODE.equals(mode) )

-		{

-			tabList.add( new SymbexRuntimeTab() );

-		}

-

-		tabList.add( new CommonTab() );

-

-		setTabs( tabList.toArray( new ILaunchConfigurationTab[tabList.size()] ) );

-	}

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/LaunchDelegate.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/LaunchDelegate.java
deleted file mode 100644
index f2b39f8..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/LaunchDelegate.java
+++ /dev/null
@@ -1,433 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration;

-

-import java.io.BufferedWriter;

-import java.io.File;

-import java.io.FileWriter;

-import java.io.IOException;

-import java.util.HashMap;

-import java.util.Map;

-import java.util.concurrent.TimeUnit;

-

-import org.eclipse.core.resources.IProject;

-import org.eclipse.core.resources.IResource;

-import org.eclipse.core.resources.IWorkspaceRoot;

-import org.eclipse.core.resources.ResourcesPlugin;

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.core.runtime.IPath;

-import org.eclipse.core.runtime.IProgressMonitor;

-import org.eclipse.core.runtime.IStatus;

-import org.eclipse.core.runtime.Status;

-import org.eclipse.debug.core.DebugPlugin;

-import org.eclipse.debug.core.ILaunch;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchManager;

-import org.eclipse.debug.core.RefreshUtil;

-import org.eclipse.debug.core.model.IProcess;

-import org.eclipse.debug.ui.IDebugUIConstants;

-import org.eclipse.efm.core.workflow.Activator;

-import org.eclipse.efm.core.workflow.AbstractLaunchDelegate;

-import org.eclipse.efm.core.workflow.ToolConstants;

-import org.eclipse.efm.core.workflow.WorkflowCustomImpl;

-import org.eclipse.efm.runconfiguration.ui.CoreUtil;

-import org.eclipse.efm.runconfiguration.ui.views.page.LaunchExecConsoleManager;

-import org.eclipse.efm.runconfiguration.util.BackgroundResourceRefresher;

-import org.eclipse.jface.preference.IPreferenceStore;

-import org.eclipse.osgi.util.NLS;

-

-public class LaunchDelegate extends AbstractLaunchDelegate {

-

-

-//	private final String PROJECT_FAVM = "project.favm";

-

-	private final String WORKFLOW_SEW = "workflow.sew";

-

-

-	private IPath fAvmExecLocation;

-

-	private IPath fSewLocation;

-	private IPath fWorkingDirectory;

-

-	public static String fAnalysisProfile = ANALYSIS_PROFILE_UNDEFINED;

-	public static String fModelAnalysis = ANALYSIS_PROFILE_MODEL_UNDEFINED;

-

-	public static boolean fEnableTraceExtension = false;

-

-

-	/**

-	 * LaunchExecConsoleManager

-	 */

-	LaunchExecConsoleManager fConsoleManager;

-

-	boolean fEnabledDebugOrDeveloperMode;

-

-	public LaunchDelegate() {

-		fSewLocation = null;

-		fWorkingDirectory = null;

-

-		fConsoleManager = new LaunchExecConsoleManager();

-

-		fEnabledDebugOrDeveloperMode = false;

-	}

-

-	@Override

-	public void launch(ILaunchConfiguration configuration,

-			String mode, ILaunch launch, IProgressMonitor monitor)

-			throws CoreException {

-

-		IPreferenceStore prefs = org.eclipse.efm.core.workflow.Activator.getDefault().getPreferenceStore();

-

-		fEnabledDebugOrDeveloperMode = ILaunchManager.DEBUG_MODE.equals(mode)

-				&& ( prefs.getBoolean(ToolConstants.PREF_DEBUG_OPTIONS)

-					|| prefs.getBoolean(

-							ToolConstants.PREF_SYMBEX_DEVELOPER_MODE) );

-

-		if( fEnabledDebugOrDeveloperMode ) {

-			System.out.println("RUN DIVERSITY");

-		}

-

-		// resolve << avm.exe >> location

-		fAvmExecLocation = CoreUtil.getLocation(configuration);

-		if( fAvmExecLocation != null ) {

-			IProject project = getCurrentProject(configuration);

-

-			if( project != null ) {

-				fWorkingDirectory = project.getLocation();

-

-				WorkflowCustomImpl workflow =

-						WorkflowCustomImpl.create(

-								configuration, fWorkingDirectory);

-

-				workflow.toWriter( fWorkingDirectory.append(WORKFLOW_SEW) );

-

-				fSewLocation = fWorkingDirectory.append(WORKFLOW_SEW);

-

-//				if( fEnabledDebugOrDeveloperMode ) {

-//					WorkflowFAVM aWorkflowFAVM = new WorkflowFAVM();

-//					aWorkflowFAVM.configure( configuration ,

-//							fWorkingDirectory, PROJECT_FAVM );

-//

-////					fSewLocation = fWorkingDirectory.append(PROJECT_FAVM);

-//				}

-

-

-				fAnalysisProfile = configuration.getAttribute(

-						ATTR_SPECIFICATION_ANALYSIS_PROFILE,

-						ANALYSIS_PROFILE_UNDEFINED);

-				if( fAnalysisProfile.equals(ANALYSIS_PROFILE_MODEL) ) {

-					fModelAnalysis = configuration.getAttribute(

-							ATTR_SPECIFICATION_MODEL_ANALYSIS,

-							ANALYSIS_PROFILE_MODEL_UNDEFINED);

-				}

-				else {

-					fModelAnalysis = ANALYSIS_PROFILE_MODEL_UNDEFINED;

-				}

-

-				fEnableTraceExtension = configuration.getAttribute(

-						ATTR_ENABLED_TRACE_EXTENSION, false);

-

-				launchExec(configuration, mode, launch, monitor);

-			}

-		}

-	}

-

-

-	private void throwCoreException(String message) throws CoreException {

-		IStatus status = new Status(IStatus.ERROR,

-				Activator.PLUGIN_ID, IStatus.OK, message, null);

-

-		throw new CoreException(status);

-	}

-

-

-	public IProject getCurrentProject(

-			ILaunchConfiguration configuration) throws CoreException {

-		IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();

-

-		String projectName = configuration.getAttribute(

-				ATTR_SPECIFICATION_PROJECT_NAME, "");

-

-		if( (projectName != null) && (! projectName.isEmpty()) ) {

-			IProject project = root.getProject(projectName);

-			if( project != null ) {

-				return project;

-			}

-		}

-

-		String aLocation = configuration.getAttribute(

-				ATTR_SPECIFICATION_MODEL_FILE_LOCATION, "");

-

-		if( (aLocation == null) || aLocation.isEmpty() ) {

-			throwCoreException("The model file does not exist.");

-

-			return null;

-		}

-

-//		aLocation = VariablesPlugin.getDefault().getStringVariableManager().

-//				performStringSubstitution(aLocation);

-

-		IResource resource = root.findMember(aLocation);

-

-		if( (resource == null) || (! resource.exists()) ) {

-			throwCoreException("The ressource model file \"" +

-					aLocation + "\" does not exist.");

-

-			return null;

-		}

-

-		return resource.getProject();

-	}

-

-	/**

-	 * Status code indicating an unexpected internal error.

-	 */

-	public static final int ERR_INTERNAL_ERROR = 150;

-

-

-	public void launchExec(ILaunchConfiguration configuration, String mode,

-			ILaunch launch, IProgressMonitor monitor) throws CoreException {

-

-		if (monitor.isCanceled()) {

-			return;

-		}

-

-		// resolve working directory

-//		IPath workingDirectory = CoreUtil.getWorkingDirectory(configuration);

-

-		if (monitor.isCanceled()) {

-			return;

-		}

-

-		// resolve arguments

-		String[] arguments = CoreUtil.getArguments(configuration);

-

-		if (monitor.isCanceled()) {

-			return;

-		}

-

-		int cmdLineLength = 2 + ((arguments != null) ? arguments.length : 0);

-

-		String[] cmdLine = new String[cmdLineLength];

-

-		cmdLine[0] = fAvmExecLocation.toOSString();

-		cmdLine[1] = fSewLocation.toOSString();

-

-		if (arguments != null) {

-			System.arraycopy(arguments, 0, cmdLine, 1, arguments.length);

-		}

-

-		if (monitor.isCanceled()) {

-			return;

-		}

-

-		String[] envp = DebugPlugin.getDefault().getLaunchManager()

-				.getEnvironment(configuration);

-

-		if (monitor.isCanceled()) {

-			return;

-		}

-

-		File workingDir = (fWorkingDirectory != null) ?

-				fWorkingDirectory.toFile() : null;

-

-		IPreferenceStore prefs = org.eclipse.efm.core.workflow.Activator.getDefault().getPreferenceStore();

-

-		boolean debugOptionMode = prefs.getBoolean(

-				ToolConstants.PREF_DEBUG_OPTIONS);

-

-		String consoleLevel = configuration.getAttribute(

-				ATTR_CONSOLE_LOG_VERBOSE_LEVEL, "MINIMUM");

-

-		boolean spiderView = prefs.getBoolean(

-				ToolConstants.PREF_SPIDER_VIEW);

-

-		boolean consoleView = prefs.getBoolean(

-				ToolConstants.PREF_CONSOLE_VIEW);

-

-

-// Modif pour non-régression

-//

-//		defaultLaunchExecProcess(configuration, mode, launch,

-//				monitor,cmdLine, workingDir, envp);

-//

-//		System.out.println("Debut deuxieme execution");

-//		try {

-//			Thread.sleep(5000);

-//		} catch (InterruptedException e) {

-//			e.printStackTrace();

-//		}

-//

-//		defaultLaunchExecProcess(configuration, mode, launch,

-//				monitor,cmdLine, workingDir, envp);

-

-

-

-

-		if ( spiderView &&

-			((! debugOptionMode) || consoleLevel.equals("MINIMUM")) ) {

-			fConsoleManager.sewLaunchExecProcess(configuration, mode, launch,

-					monitor,cmdLine, workingDir, envp);

-		}

-		else if ( consoleView ){

-			// Console par défault

-			defaultLaunchExecProcess(configuration, mode, launch,

-					monitor,cmdLine, workingDir, envp);

-		}

-	}

-

-	protected void defaultLaunchExecProcess(ILaunchConfiguration configuration,

-			String mode, ILaunch launch, IProgressMonitor monitor,

-			String[] cmdLine, File workingDir, String[] envp)

-					throws CoreException {

-

-		Process javaProcess = DebugPlugin.exec(cmdLine, workingDir, envp);

-		IProcess eclipseProcess = null;

-

-		// add process type to process attributes

-		Map<String, String> processAttributes = new HashMap<String, String>();

-		String programName = fAvmExecLocation.lastSegment();

-		String extension = fAvmExecLocation.getFileExtension();

-		if (extension != null) {

-			programName = programName.substring(0, programName.length()

-					- (extension.length() + 1));

-		}

-		programName = programName.toLowerCase();

-		processAttributes.put(IProcess.ATTR_PROCESS_TYPE, programName);

-

-		if( javaProcess != null ) {

-			monitor.beginTask(NLS.bind("Running {0}...",

-					new String[] { configuration.getName() }),

-					IProgressMonitor.UNKNOWN);

-

-			// Suppression d'un éventuel fichier stop.avm

-			// d'une exécution précédente

-			IPath fStopavmLocation = getCurrentProject(configuration).

-					getLocation().append("Output/log/stop.avm");

-			File fStopavmFile = fStopavmLocation.toFile();

-			fStopavmFile.delete();

-

-			eclipseProcess = DebugPlugin.newProcess(launch, javaProcess,

-					fAvmExecLocation.toOSString(), processAttributes);

-

-//			System.out.println("!!!!!!!!!!!!!!!!!!!!!!! launchSpiderJob(javaProcess) !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");

-//			launchSpiderJob(javaProcess);

-		}

-

-		if( (javaProcess == null) || (eclipseProcess == null) ) {

-			if (javaProcess != null) {

-				javaProcess.destroy();

-			}

-			throw new CoreException(new Status(IStatus.ERROR,

-					Activator.PLUGIN_ID, ERR_INTERNAL_ERROR,

-					"An IProcess could not be created for the launch", null));

-		}

-

-		eclipseProcess.setAttribute(

-				IProcess.ATTR_CMDLINE, generateCommandLine(cmdLine));

-

-		if( configuration.getAttribute(

-				IDebugUIConstants.ATTR_LAUNCH_IN_BACKGROUND, true) ) {

-			// refresh resources after process finishes

-			String scope = configuration.getAttribute(

-					RefreshUtil.ATTR_REFRESH_SCOPE, (String)null);

-			if( scope != null ) {

-				BackgroundResourceRefresher refresher =

-						new BackgroundResourceRefresher(

-								configuration, eclipseProcess);

-				refresher.startBackgroundRefresh();

-			}

-		} else {

-			// wait for process to exit

-			while (!eclipseProcess.isTerminated()) {

-				try {

-					if (monitor.isCanceled()) {

-						eclipseProcess.terminate();

-						break;

-					}

-					Thread.sleep(50);

-				} catch (InterruptedException e) {

-					e.printStackTrace();

-				}

-			}

-			// refresh resources

-			RefreshUtil.refreshResources(configuration, monitor);

-		}

-

-		// Prise en compte du paramètre TIMEOUT

-		//

-		int timeout = configuration.getAttribute(

-				ATTR_SPECIFICATION_STOP_CRITERIA_TIMEOUT, -1);

-		if ( timeout != -1 ) {

-			launchSupervisor(configuration, javaProcess, timeout);

-		}

-	}

-

-	protected void launchSupervisor(ILaunchConfiguration configuration,

-			Process javaProcess, int timeout) {

-		try {

-			javaProcess.waitFor(timeout, TimeUnit.SECONDS);

-		}

-		catch (InterruptedException e) {

-			e.printStackTrace();

-		}

-

-		if ( javaProcess.isAlive() ) {

-			try {

-				IPath fStopavmLocation =

-						getCurrentProject(configuration).

-						getLocation().append("Output/log/stop.avm");

-				BufferedWriter stopavm;

-				stopavm = new BufferedWriter(

-						new FileWriter( fStopavmLocation.toFile() ) );

-				stopavm.write("");

-				stopavm.close();

-			}

-			catch (IOException e) {

-			}

-			catch (CoreException e) {

-				e.printStackTrace();

-			}

-

-			System.out.println("TIMEOUT END");

-		}

-	}

-

-	private String generateCommandLine(String[] commandLine) {

-		if (commandLine.length < 1)

-			return "";

-		StringBuffer buf = new StringBuffer();

-		for (int i = 0; i < commandLine.length; i++) {

-			buf.append(' ');

-			char[] characters = commandLine[i].toCharArray();

-			StringBuffer command = new StringBuffer();

-			boolean containsSpace = false;

-			for (int j = 0; j < characters.length; j++) {

-				char character = characters[j];

-				if (character == '\"') {

-					command.append('\\');

-				} else if (character == ' ') {

-					containsSpace = true;

-				}

-				command.append(character);

-			}

-			if (containsSpace) {

-				buf.append('\"');

-				buf.append(command);

-				buf.append('\"');

-			} else {

-				buf.append(command);

-			}

-		}

-		return buf.toString();

-	}

-

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/LaunchDelegate2.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/LaunchDelegate2.java
deleted file mode 100644
index 41f1a6f..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/LaunchDelegate2.java
+++ /dev/null
@@ -1,1558 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration;

-

-//import java.io.BufferedReader;

-//import java.io.BufferedWriter;

-//import java.io.File;

-//import java.io.FileWriter;

-//import java.io.IOException;

-//import java.io.InputStream;

-//import java.io.InputStreamReader;

-//import java.net.URL;

-//import java.util.ArrayList;

-//import java.util.HashMap;

-//import java.util.List;

-//import java.util.Map;

-//import java.util.concurrent.TimeUnit;

-//

-//import org.eclipse.core.resources.IProject;

-//import org.eclipse.core.resources.IResource;

-//import org.eclipse.core.resources.IWorkspaceRoot;

-//import org.eclipse.core.resources.ResourcesPlugin;

-//import org.eclipse.core.runtime.CoreException;

-//import org.eclipse.core.runtime.FileLocator;

-//import org.eclipse.core.runtime.IPath;

-//import org.eclipse.core.runtime.IProgressMonitor;

-//import org.eclipse.core.runtime.IStatus;

-//import org.eclipse.core.runtime.Platform;

-//import org.eclipse.core.runtime.Status;

-//import org.eclipse.debug.core.DebugPlugin;

-//import org.eclipse.debug.core.ILaunch;

-//import org.eclipse.debug.core.ILaunchConfiguration;

-//import org.eclipse.debug.core.RefreshUtil;

-//import org.eclipse.debug.core.model.ILaunchConfigurationDelegate;

-//import org.eclipse.debug.core.model.IProcess;

-//import org.eclipse.debug.ui.IDebugUIConstants;

-//import org.eclipse.efm.core.workflow.Activator;

-//import org.eclipse.efm.core.workflow.IWorkflowConfigurationConstants;

-//import org.eclipse.efm.core.workflow.ToolConstants;

-//import org.eclipse.efm.core.workflow.WorkflowCustomImpl;

-//import org.eclipse.efm.runconfiguration.ui.CoreUtil;

-//import org.eclipse.efm.runconfiguration.ui.views.page.LaunchExecConsoleManager;

-//import org.eclipse.efm.runconfiguration.util.BackgroundResourceRefresher;

-//import org.eclipse.jface.preference.IPreferenceStore;

-//import org.eclipse.osgi.util.NLS;

-//import org.osgi.framework.Bundle;

-

-public class LaunchDelegate2 {//implements ILaunchConfigurationDelegate ,

-//		IWorkflowConfigurationConstants {

-//

-//	private final String FAVM_TEMPLATE = "resources/sew/template.favm";

-//

-//	private final String PROJECT_FAVM = "project.favm";

-//

-//	private final String WORKFLOW_SEW = "workflow.sew";

-//

-//

-//	private IPath fAvmExecLocation;

-//

-//	private IProject fProject;

-//

-//	private IPath fFavmLocation;

-//	private IPath fWorkingDirectory;

-//	private String fAnalysisProfile;

-//

-//	public static String fModelAnalysis = ANALYSIS_PROFILE_MODEL_UNDEFINED;

-//	public static boolean fEnableProlongation = false;

-//

-//

-//	/**

-//	 * LaunchExecConsoleManager

-//	 */

-//	LaunchExecConsoleManager fConsoleManager;

-//

-//	boolean fEnabledDebugOrDeveloperMode;

-//

-//	public LaunchDelegate2() {

-//		fProject = null;

-//		fFavmLocation = null;

-//		fWorkingDirectory = null;

-//		fAnalysisProfile = null;

-//

-//		fConsoleManager = new LaunchExecConsoleManager();

-//

-//		fEnabledDebugOrDeveloperMode = false;

-//	}

-//

-//	@Override

-//	public void launch(ILaunchConfiguration configuration,

-//			String mode, ILaunch launch, IProgressMonitor monitor)

-//			throws CoreException {

-//

-//		IPreferenceStore prefs = org.eclipse.efm.core.workflow.Activator.getDefault().getPreferenceStore();

-//

-//		fEnabledDebugOrDeveloperMode =

-//				prefs.getBoolean(ToolConstants.PREF_DEBUG_OPTIONS) ||

-//				prefs.getBoolean(ToolConstants.PREF_SYMBEX_DEVELOPER_MODE);

-//

-//		if( fEnabledDebugOrDeveloperMode ) {

-//			System.out.println("RUN DIVERSITY");

-//		}

-//

-//		// resolve << avm.exe >> location

-//		fAvmExecLocation = CoreUtil.getLocation(configuration);

-//		if( fAvmExecLocation != null ) {

-//			fProject = getCurrentProject(configuration);

-//

-//			if( fProject != null ) {

-//				fWorkingDirectory = fProject.getLocation();

-//

-//				WorkflowCustomImpl workflow =

-//						WorkflowCustomImpl.create(

-//								configuration, fWorkingDirectory);

-//

-//				workflow.toWriter( fWorkingDirectory.append(WORKFLOW_SEW) );

-//

-//				fFavmLocation = fWorkingDirectory.append(PROJECT_FAVM);

-//

-//				setModelFile(configuration);

-//

-//				launchExec(configuration, mode, launch, monitor);

-//			}

-//		}

-//	}

-//

-//

-//	private void setModelFile(ILaunchConfiguration configuration) {

-//		try {

-//			int i;

-//

-//			fAnalysisProfile = configuration.getAttribute(

-//					ATTR_SPECIFICATION_ANALYSIS_PROFILE, ANALYSIS_PROFILE_MODEL);

-//

-//			fModelAnalysis = configuration.getAttribute(

-//					ATTR_SPECIFICATION_MODEL_ANALYSIS,

-//					ANALYSIS_PROFILE_MODEL_UNDEFINED);

-//

-//			Bundle bundle = Platform.getBundle(Activator.PLUGIN_ID);

-//

-//			URL url = bundle.getEntry(FAVM_TEMPLATE);

-//

-//			URL favmTemplateURL = FileLocator.toFileURL(url);

-//			InputStream inputTemplate = favmTemplateURL.openStream();

-//

-//			BufferedReader bufferedTemplate = new BufferedReader(

-//					new InputStreamReader (inputTemplate) );

-//

-//			StringBuffer buffer = new StringBuffer();

-//

-//			String line = bufferedTemplate.readLine();

-//			while( line != null ) {

-//				buffer.append(line);

-//				buffer.append("\n");

-//

-//				line = bufferedTemplate.readLine();

-//			}

-//

-//			bufferedTemplate.close();

-//

-//			String favmString = buffer.toString();

-//

-//			final String projectLocation = fWorkingDirectory.toString();

-//

-//			favmString = favmString.replace(

-//					"__LOCATION_PROJECT__", projectLocation );

-////			System.out.println("__LOCATION_PROJECT__ : " + projectLocation);

-//

-//			String fModelPath = configuration.getAttribute(

-//					ATTR_SPECIFICATION_MODEL_FILE_LOCATION, "");

-////			i = fModelPath.lastIndexOf("/");

-//			if( fModelPath.startsWith(projectLocation) ) {

-//				final boolean endWidthSeparator = (projectLocation.charAt(

-//						projectLocation.length() - 1) == IPath.SEPARATOR);

-//

-//				fModelPath = fModelPath.substring(

-//						projectLocation.length() + (endWidthSeparator? 0 : 1) );

-//			}

-//			favmString = favmString.replace(

-//					"__SPECIFICATION_MAIN__", fModelPath );

-////			System.out.println("__SPECIFICATION_MAIN__ : " + fModelPath);

-//

-//			i = configuration.getAttribute(

-//					ATTR_SPECIFICATION_STOP_CRITERIA_NODE, -1);

-//			favmString = favmString.replace( "__NODE__", Integer.toString(i) );

-//

-//			i = configuration.getAttribute(

-//					ATTR_SPECIFICATION_STOP_CRITERIA_WIDTH, -1);

-//			favmString = favmString.replace( "__WIDTH__", Integer.toString(i) );

-//

-//			i = configuration.getAttribute(

-//					ATTR_SPECIFICATION_STOP_CRITERIA_HEIGHT, -1);

-//			favmString = favmString.replace( "__HEIGHT__", Integer.toString(i) );

-//

-//			i = configuration.getAttribute(

-//					ATTR_SPECIFICATION_STOP_CRITERIA_STEPS, -1);

-//			favmString = favmString.replace( "__EVAL__", Integer.toString(i) );

-//

-//			switch ( fAnalysisProfile ) {

-//			case ANALYSIS_PROFILE_MODEL: {

-//				switch ( fModelAnalysis ) {

-//				case ANALYSIS_PROFILE_MODEL_EXPLORATION: {

-//					favmString = favmString.replace(

-//							"__EXECUTION_QUEUE_STRATEGY__",

-//							configuration.getAttribute(

-//									ATTR_SPECIFICATION_ANALYZE_STRATEGY, "") );

-//					break;

-//				}

-//				case ANALYSIS_PROFILE_MODEL_COVERAGE_TRANSITION: {

-//					favmString = favmString.replace(

-//							"__EXECUTION_QUEUE_STRATEGY__", "WEIGHT_BFS");

-//

-//					break;

-//				}

-//				case ANALYSIS_PROFILE_MODEL_COVERAGE_BEHAVIOR: {

-////					String fElementNameListStringField =

-////							configuration.getAttribute(

-////									ATTR_BEHAVIOR_ANALYSIS_ELEMENT_NAME_LIST, "");

-////					String[] tabString =

-////							fElementNameListStringField.trim().split(";|\\R");

-////					String transitionStringList = "";

-////					for (String eltString : tabString) {

-////						transitionStringList = transitionStringList +

-////								"\t\t\t\t\t\t@transition = \"" + eltString + "\";\n";

-////					}

-////					favmString = favmString.replace(

-////							"\t\t\t\t\t\t//__transitionListToCover",

-////							transitionStringList);

-//

-//

-//

-//					String fElementNameListStringField =

-//							configuration.getAttribute(

-//									ATTR_BEHAVIOR_ANALYSIS_ELEMENT_NAME_LIST, "");

-//

-//					String[] tabString =

-//							fElementNameListStringField.trim().split("\\R|;");

-//

-//					StringBuffer elementStringList = new StringBuffer();

-//					String kind;

-//					String object;

-//					int pos;

-//

-//					for (String eltString : tabString) {

-//						eltString = eltString.trim();

-//

-//						if ( eltString.length() == 0 ) {

-//						}

-//						else if ( eltString.startsWith("//") ) {

-//							elementStringList.append("\t\t\t\t\t\t")

-//								.append(eltString).append("\n");

-//						}

-//						else if( (pos = eltString.indexOf('=')) > 0 ) {

-//							kind = eltString.substring(0, pos).trim();

-//							object = eltString.substring(pos+1).trim();

-//

-//							if ( kind.equals( "transition" ) ) {

-//								// Check if the object is a transition and exists !

-//							}

-//							else if ( kind.equals( "state" ) ) {

-//								// Check if the object is a state and exists !

-//							}

-//

-//							else if ( kind.equals( "input" ) ) {

-//								// Check if the object is an input port/signal and exists !

-//							}

-//							else if ( kind.equals( "output" ) ) {

-//								// Check if the object is an output port/signal and exists !

-//							}

-//

-//							else if ( kind.equals( "inout" ) ) {

-//								// Check if the object is an inout port/signal and exists !

-//							}

-//							else if ( kind.equals( "com" ) ) {

-//								// Check if the object is a communicated port/signal and exists !

-//							}

-//

-//							// check if the object ID contains space

-//							if( object.matches("[^\"'].*\\s+.*[^\"']") ) {

-//								object = "\"" + object +  "\"";

-//							}

-//

-//							elementStringList.append("\t\t\t\t\t\t@")

-//								.append(kind).append(" = ").append(object).append(";\n");

-//						}

-//						else {

-//							elementStringList.append("\t\t\t\t\t\t@")

-//								.append(eltString).append(";\n");

-//						}

-//					}

-//

-//					if ( elementStringList.length() > 0 ) {

-//						favmString = favmString.replace(

-//								"\t\t\t\t\t\t//__ELEMENT_LIST_TO_COVER__",

-//								elementStringList);

-//					}

-//

-//					favmString = favmString.replace(

-//							"__EXECUTION_QUEUE_STRATEGY__", "WEIGHT_BFS");

-//

-//					break;

-//				}

-//				default:

-//					favmString = favmString.replace(

-//							"__EXECUTION_QUEUE_STRATEGY__",

-//							configuration.getAttribute(

-//									ATTR_SPECIFICATION_ANALYZE_STRATEGY, "") );

-//					break;

-//				}

-//

-//

-//				favmString = suppressProcessString(favmString,

-//						"//BEGIN_OFFLINE_TEST_PHASE1",

-//						"//END_OFFLINE_TEST_PHASE1");

-//

-//

-//				// Filter Redundancy Phase1

-//				//

-//				favmString = filterRedundancyPhase1(configuration, favmString);

-//

-//				break;

-//			}

-//			case ANALYSIS_PROFILE_TEST_OFFLINE: {

-//				fModelAnalysis = ANALYSIS_PROFILE_MODEL_UNDEFINED;

-//

-//				String traceFile = configuration.getAttribute(

-//						ATTR_TEST_OFFLINE_TRACE_FILE_LOCATION,

-//						"<DEFAULT trace file>");

-//

-//				favmString = favmString.replace( "__TRACE_FILE__", traceFile );

-//

-//				String testPurposeFile = configuration.getAttribute(

-//						ATTR_TEST_OFFLINE_PURPOSE_FILE_LOCATION,

-//						"<test purpose file>");

-//				if( testPurposeFile.equals("") || testPurposeFile.equals(

-//						"<test purpose file>") ) {

-//					favmString = favmString.replace(

-//							"@testPurposeFile", "//__@testPurposeFile" );

-//				}

-//				else{

-//					favmString = favmString.replace(

-//							"__TEST_PURPOSE_FILE__", testPurposeFile );

-//				}

-//

-//				favmString = favmString.replace(

-//						"__EXECUTION_QUEUE_STRATEGY__", "WEIGHT_BFS");

-//

-//				favmString = favmString.replace(

-//						"//__&process::offline_test", "&process::offline_test");

-//

-//				break;

-//			}

-//			default:

-//				break;

-//			}

-//

-//			// Filter Transition Coverage Phase1

-//			//

-//			favmString = filterTransitionCoveragePhase1(configuration, favmString);

-//

-//			// Process HOJ Phase1

-//			//

-//			favmString = processHOJPhase1(configuration, favmString);

-//

-//

-//			// Graph slicer en phase 2

-//			// Non utilisé pour le moment

-//			//

-//			favmString = suppressProcessString(favmString,

-//					"//BEGIN_GRAPH_SLICER_IO_PHASE2",

-//					"//END_GRAPH_SLICER_IO_PHASE2");

-//

-//			// Génération de test au format BASIC

-//			//

-//			//System.out.println("ATTR_BASIC_TRACE_ENABLED_GENERATION:> " +

-//			//		configuration.getAttribute(

-//			//				ATTR_BASIC_TRACE_ENABLED_GENERATION, false) );

-//			if ( configuration.getAttribute(

-//					ATTR_BASIC_TRACE_ENABLED_GENERATION, false) ) {

-//				favmString = favmString.replace(

-//						"//__&process::BASIC_trace_generator",

-//						"&process::BASIC_trace_generator");

-//				String fFolderName = configuration.getAttribute(

-//						ATTR_BASIC_TRACE_FOLDER_NAME, "Basic");

-//				favmString = favmString.replace( "__BASIC_FOLDER_NAME__", fFolderName);

-//				String fFileName = configuration.getAttribute(

-//						ATTR_BASIC_TRACE_FILE_NAME, "tests.txt");

-//				favmString = favmString.replace( "__BASIC_FILE_NAME__", fFileName);

-//

-//				if ( configuration.getAttribute(ATTR_BASIC_TRACE_ENABLED_NORMALIZATION, true) ) {

-//					favmString = favmString.replace(

-//							"//__BASIC__@normalize = true;",

-//							"@normalize = true;");

-//				}

-//				else {

-//					favmString = favmString.replace(

-//							"//__BASIC__@normalize = true;",

-//							"@normalize = false;");

-//				}

-//

-//

-//				boolean enabled = configuration.getAttribute(

-//						ATTR_BASIC_TRACE_TIME_SELECTION, false);

-//				if( enabled ) {

-//					favmString = favmString.replace(

-//							"//__BASIC__@time", "@time");

-//				}

-//

-//				enabled = configuration.getAttribute(

-//						ATTR_BASIC_TRACE_ALL_EXTERNAL_INPUT_COM_SELECTION, false);

-//				if( enabled ) {

-//					favmString = favmString.replace(

-//							"//__BASIC__@input#env", "@input#env");

-//				}

-//

-//				enabled = configuration.getAttribute(

-//						ATTR_BASIC_TRACE_ALL_EXTERNAL_OUTPUT_COM_SELECTION, false);

-//				if( enabled ) {

-//					favmString = favmString.replace(

-//							"//__BASIC__@output#env", "@output#env");

-//				}

-//

-//				enabled = configuration.getAttribute(

-//						ATTR_BASIC_TRACE_ALL_INPUT_COM_SELECTION, false);

-//				if( enabled ) {

-//					favmString = favmString.replace(

-//							"//__BASIC__@input", "@input");

-//				}

-//

-//				enabled = configuration.getAttribute(

-//						ATTR_BASIC_TRACE_ALL_OUTPUT_COM_SELECTION, false);

-//				if( enabled ) {

-//					favmString = favmString.replace(

-//							"//__BASIC__@output", "@output");

-//				}

-//

-//				enabled = configuration.getAttribute(

-//						ATTR_BASIC_TRACE_ALL_VARIABLE_SELECTION, false);

-//				if( enabled ) {

-//					favmString = favmString.replace(

-//							"//__BASIC__@variable", "@variable");

-//				}

-//				else {

-//					favmString = favmString.replace(

-//							"//__BASIC__@time", "@time");

-//				}

-//

-//				enabled = configuration.getAttribute(

-//						ATTR_BASIC_TRACE_ALL_TRANSITION_SELECTION, false);

-//				if( enabled ) {

-//					favmString = favmString.replace(

-//							"//__BASIC__@transition", "@transition");

-//				}

-//

-//				enabled = configuration.getAttribute(

-//						ATTR_BASIC_TRACE_ALL_STATE_SELECTION, false);

-//				if( enabled ) {

-//					favmString = favmString.replace(

-//							"//__BASIC__@state", "@state");

-//				}

-//

-//				String detailsTraceList = configuration.getAttribute(

-//						ATTR_BASIC_TRACE_DETAILS_ELEMENT_LIST, "");

-//				String[] tabString = detailsTraceList.trim().split(";|\\R");

-//				StringBuffer detailsStringBuffer = new StringBuffer();

-//				for (String eltString : tabString) {

-//					if( ! eltString.isEmpty() ) {

-//						detailsStringBuffer.append( "\t\t\t\t\t\t@" )

-//							.append( eltString ).append( ";\n" );

-//					}

-//				}

-//				detailsTraceList = detailsStringBuffer.toString();

-//				if( ! detailsTraceList.isEmpty() ) {

-//					favmString = favmString.replace(

-//							"\t\t\t\t\t\t//__DetailsElementsListToTrace",

-//							detailsTraceList);

-//				}

-//

-//				favmString = favmString.replace(

-//						"__EXECUTION_QUEUE_STRATEGY__", "WEIGHT_BFS");

-//			}

-//			else {

-//				favmString = suppressProcessString(favmString,

-//						"//BEGIN_BASIC_TRACE_GENERATOR_PHASE2",

-//						"//END_BASIC_TRACE_GENERATOR_PHASE2");

-//			}

-//

-//			// Génération de test au format TTCN

-//			//

-//			//System.out.println("ATTR_TTCN_ENABLED_GENERATION:> " +

-//			//		configuration.getAttribute(ATTR_TTCN_ENABLED_GENERATION, false) );

-//			if( configuration.getAttribute(ATTR_TTCN_ENABLED_GENERATION, false) ) {

-//				favmString = favmString.replace(

-//						"//__&process::TTCN_trace_generator",

-//						"&process::TTCN_trace_generator");

-//

-//				String fFolderName = configuration.getAttribute(

-//						ATTR_TTCN_FOLDER_NAME, "");

-//				favmString = favmString.replace(

-//						"__TTCN_FOLDER_NAME__", fFolderName);

-//			}

-//			else {

-//				favmString = suppressProcessString(favmString,

-//						"//BEGIN_TTCN_TRACE_GENERATOR_PHASE2",

-//						"//END_TTCN_TRACE_GENERATOR_PHASE2");

-//			}

-//

-//			// PAHSE 2 if required?

-//			fEnableProlongation = configuration.getAttribute(

-//					ATTR_ENABLED_TRACE_EXTENSION, false);

-//			if ( fEnableProlongation ) {

-//				i = configuration.getAttribute(

-//						ATTR_TRACE_EXTENSION_EVALUATION_STEPS, -1);

-//				favmString = favmString.replace(

-//						"__EVAL2__", Integer.toString(i) );

-//

-//				favmString = favmString.replace(

-//						"//__PHASE2_&process::hit_or_jump",

-//						"&process::hit_or_jump" );

-//

-//				favmString = favmString.replace(

-//						"//__&engine::io_continuation",

-//						"&engine::io_continuation");

-//			}

-//			else if( configuration.getAttribute(

-//							ATTR_BASIC_TRACE_ENABLED_GENERATION, false)

-//					|| configuration.getAttribute(

-//							ATTR_TTCN_ENABLED_GENERATION, false) ) {

-//

-//				favmString = favmString.replace( "__EVAL2__", "0" );

-//

-//				favmString = suppressProcessString(favmString,

-//						"//BEGIN_HOJ_PHASE2",

-//						"//END_HOJ_PHASE2");

-//

-//				favmString = favmString.replace(

-//						"//__&engine::io_continuation",

-//						"&engine::io_continuation");

-//			}

-//			else {

-//				favmString = suppressProcessString(favmString,

-//						"//BEGIN_IO_CONTINUATION_PHASE2",

-//						"//END_IO_CONTINUATION_PHASE2");

-//

-//				favmString = favmString.replace(

-//						"\n\t\t\t//__&engine::io_continuation", "");

-//			}

-//

-//			// Section DEBUG

-//			//

-//			favmString = modeDebug(configuration, favmString);

-//

-//			BufferedWriter writer = new BufferedWriter(

-//					new FileWriter( fFavmLocation.toFile() ) );

-//

-//			writer.write(favmString);

-//

-//			writer.close();

-//		} catch (IOException e) {

-//			e.printStackTrace();

-//		} catch (CoreException e) {

-//			e.printStackTrace();

-//		}

-//	}

-//

-//	private String filterTransitionCoveragePhase1(

-//			ILaunchConfiguration configuration, String currentFavmString) {

-//		IPreferenceStore prefs = org.eclipse.efm.core.workflow.Activator.getDefault().getPreferenceStore();

-//		boolean expertMode = prefs.getBoolean(

-//				ToolConstants.PREF_EXPERT_MODE);

-//

-//		if ( fAnalysisProfile.equals(ANALYSIS_PROFILE_MODEL)

-//			&& fModelAnalysis.equals(

-//					ANALYSIS_PROFILE_MODEL_COVERAGE_TRANSITION) ) {

-//			try {

-//				boolean enabledTransitionSelection = configuration.getAttribute(

-//					ATTR_ENABLED_TRANSITION_COVERAGE_DETAILS_SELECTION, false);

-//

-//				if ( enabledTransitionSelection )

-//				{

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_SCOPE__", "DETAILS");

-//

-//					List< String > selectedTransitions =

-//							configuration.getAttribute(

-//									ATTR_TRANSITION_COVERAGE_SELECTION,

-//									new ArrayList<String>());

-//

-//					StringBuffer TransitionStringList = new StringBuffer();

-//

-//					for (String eltString : selectedTransitions) {

-//						TransitionStringList

-//							.append( "\t\t\t\t\t\t@transition = \"" )

-//							.append(eltString).append( "\";\n" );

-//					}

-//					currentFavmString = currentFavmString.replace(

-//							"\t\t\t\t\t\t//__TC1_TransitionListToCover",

-//							TransitionStringList.toString());

-//				}

-//				else {

-//

-//				}

-//			} catch (CoreException e1) {

-//				e1.printStackTrace();

-//			}

-//

-//			// Mise en oeuvre du filtre Transition Coverage

-//			//

-//			currentFavmString = currentFavmString.replace(

-//					"//__PHASE1_&filter::transition_coverage",

-//					"&filter::transition_coverage");

-//

-//			if ( expertMode ) {

-//				// Option EXPERT au niveau des préférences

-//				// On récupère les informations de la page Transition Coverage de l'onglet Expert

-//				//

-//				try {

-//					int i;

-//					boolean b;

-//

-//					i = configuration.getAttribute(ATTR_TRANSITION_COVERAGE_BEGIN_STEP, 0);

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_BEGIN_STEP__", Integer.toString(i) );

-//

-//					b = configuration.getAttribute(ATTR_TRANSITION_COVERAGE_STOP, true);

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_STOP__", Boolean.toString(b) );

-//

-//					b = configuration.getAttribute(ATTR_TRANSITION_COVERAGE_MINIMIZE, true);

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_MINIMIZE__", Boolean.toString(b) );

-//

-//					b = configuration.getAttribute(ATTR_TRANSITION_COVERAGE_SLICE, true);

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_SLICE__", Boolean.toString(b) );

-//

-//					b = configuration.getAttribute(ATTR_TRANSITION_COVERAGE_HEURISTIC, true);

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_HEURISTIC__", Boolean.toString(b) );

-//

-//					currentFavmString = currentFavmString.replace( "__TC1_SCOPE__",

-//							configuration.getAttribute(ATTR_TRANSITION_COVERAGE_SCOPE, "MODEL"));

-//

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_HEURISTIC_START__",

-//							configuration.getAttribute(

-//									ATTR_TRANSITION_COVERAGE_HEURISTIC_START, "BASIC"));

-//

-//					i = configuration.getAttribute(ATTR_TRANSITION_COVERAGE_HEURISTIC_TRIALS, -1);

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_HEURISTIC_TRIALS__", Integer.toString(i) );

-//

-//					i = configuration.getAttribute(ATTR_TRANSITION_COVERAGE_OBJECTIVE_RATE, 100);

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_OBJECTIVE_RATE__", Integer.toString(i) );

-//

-//					i = configuration.getAttribute(ATTR_TRANSITION_COVERAGE_OBJECTIVE_REST, 0);

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_OBJECTIVE_REST__", Integer.toString(i) );

-//

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_DIRECTIVE_TRACE_HEURISTIC__",

-//							configuration.getAttribute(

-//									ATTR_TRANSITION_COVERAGE_DIRECTIVE_TRACE_HEURISTIC, "SMART"));

-//

-//					i = configuration.getAttribute(

-//							ATTR_TRANSITION_COVERAGE_DIRECTIVE_TRACE_COUNT_LIMIT, 8);

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_DIRECTIVE_TRACE_COUNT_LIMIT__",

-//							Integer.toString(i) );

-//

-//					i = configuration.getAttribute(

-//							ATTR_TRANSITION_COVERAGE_DIRECTIVE_TRACE_SIZE_LIMIT, 8);

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_DIRECTIVE_TRACE_SIZE_LIMIT__",

-//							Integer.toString(i) );

-//

-//					i = configuration.getAttribute(ATTR_TRANSITION_COVERAGE_LOOKAHEAD_DEPTH, 7);

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_COVERAGE_HEIGHT__", Integer.toString(i) );

-//

-//					i = configuration.getAttribute(

-//							ATTR_TRANSITION_COVERAGE_LOOKAHEAD_WIDTH, 42);

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_COVERAGE_HEIGHT_REACHED_LIMIT__",

-//							Integer.toString(i) );

-//

-//					b = configuration.getAttribute(

-//							ATTR_TRANSITION_COVERAGE_HIT_STRONGLY_RANDOM, false);

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_HIT_STRONGLY_RANDOM__",

-//							Boolean.toString(b) );

-//

-//					i = configuration.getAttribute(

-//							ATTR_TRANSITION_COVERAGE_HIT_STRONGLY_COUNT, 1);

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_HIT_STRONGLY_COUNT__",

-//							Integer.toString(i) );

-//

-//					b = configuration.getAttribute(

-//							ATTR_TRANSITION_COVERAGE_HIT_WEAKLY_RANDOM, false);

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_HIT_WEAKLY_RANDOM__",

-//							Boolean.toString(b) );

-//

-//					i = configuration.getAttribute(

-//							ATTR_TRANSITION_COVERAGE_HIT_WEAKLY_COUNT, 1);

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_HIT_WEAKLY_COUNT__",

-//							Integer.toString(i) );

-//

-//					b = configuration.getAttribute(

-//							ATTR_TRANSITION_COVERAGE_HIT_OTHER_RANDOM, false);

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_HIT_OTHER_RANDOM__",

-//							Boolean.toString(b) );

-//

-//					i = configuration.getAttribute(

-//							ATTR_TRANSITION_COVERAGE_HIT_OTHER_COUNT, 1);

-//					currentFavmString = currentFavmString.replace(

-//							"__TC1_HIT_OTHER_COUNT__",

-//							Integer.toString(i) );

-//				} catch (CoreException e) {

-//					e.printStackTrace();

-//				}

-//			}

-//			else {

-//				// Pas d'onglet EXPERT

-//				// Le process Transition Coverage est paramétré

-//				// avec les valeurs par défaut

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_BEGIN_STEP__", "0" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_STOP__", "true" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_MINIMIZE__", "true" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_SLICE__", "true" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_HEURISTIC__", "true" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_SCOPE__", "MODEL" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_HEURISTIC_START__", "BASIC" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_HEURISTIC_TRIALS__", "7" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_OBJECTIVE_RATE__", "100" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_OBJECTIVE_REST__", "0" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_DIRECTIVE_TRACE_HEURISTIC__", "SMART" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_DIRECTIVE_TRACE_COUNT_LIMIT__", "8" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_DIRECTIVE_TRACE_SIZE_LIMIT__", "8" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_COVERAGE_HEIGHT__", "7" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_COVERAGE_HEIGHT_REACHED_LIMIT__", "42" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_HIT_STRONGLY_RANDOM__", "false" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_HIT_STRONGLY_COUNT__", "1" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_HIT_WEAKLY_RANDOM__", "false" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_HIT_WEAKLY_COUNT__", "1" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_HIT_OTHER_RANDOM__", "false" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__TC1_HIT_OTHER_COUNT__", "1" );

-//			}

-//		}

-//		else {

-//			// Suppression du filtre Transition Coverage en Phase 1

-//			//

-//			currentFavmString = suppressProcessString(currentFavmString,

-//					"//BEGIN_TRANSITION_COVERAGE_PHASE1",

-//					"//END_TRANSITION_COVERAGE_PHASE1");

-//		}

-//		return currentFavmString;

-//	}

-//

-//	private String filterRedundancyPhase1(

-//			ILaunchConfiguration configuration, String currentFavmString) {

-//		boolean enableInclusion;

-//		try {

-//			enableInclusion = configuration.getAttribute(

-//					ATTR_ENABLED_INCLUSION_CRITERION, false);

-//

-//			if ( fModelAnalysis.equals(ANALYSIS_PROFILE_MODEL_EXPLORATION)

-//				&& enableInclusion ) {

-//				currentFavmString = currentFavmString.replace(

-//						"//__PHASE1_&filter::redundancy",

-//						"&filter::redundancy");

-//			}

-//			else {

-//				// Suppression du filtre Redundancy en Phase 1

-//				//

-//				currentFavmString = suppressProcessString(currentFavmString,

-//						"//BEGIN_REDUNDANCY_PHASE1",

-//						"//END_REDUNDANCY_PHASE1");

-//			}

-//		} catch (CoreException e) {

-//			e.printStackTrace();

-//		}

-//

-//		return currentFavmString;

-//	}

-//

-//	private String processHOJPhase1(

-//			ILaunchConfiguration configuration, String currentFavmString) {

-//		IPreferenceStore prefs = org.eclipse.efm.core.workflow.Activator.getDefault().getPreferenceStore();

-//		boolean expertMode = prefs.getBoolean(

-//				ToolConstants.PREF_EXPERT_MODE);

-//

-//		if ( fAnalysisProfile.equals(ANALYSIS_PROFILE_MODEL) &&

-//			fModelAnalysis.equals(ANALYSIS_PROFILE_MODEL_COVERAGE_BEHAVIOR)	) {

-//			// Mise en oeuvre du process HOJ

-//			//

-//			currentFavmString = currentFavmString.replace(

-//					"//__PHASE1_&process::hit_or_jump",

-//					"&process::hit_or_jump");

-//

-//			if ( expertMode ) {

-//				// Option EXPERT au niveau des préférences

-//				// On récupère les informations de la page HitOrJump de l'onglet Expert

-//				//

-//				try {

-//					int i;

-//					boolean b;

-//

-//					i = configuration.getAttribute(

-//							ATTR_BEHAVIOR_SELECTION_HOJ_BEGIN_STEP, 0);

-//					currentFavmString = currentFavmString.replace(

-//							"__HOJ1_BEGIN_STEP__", Integer.toString(i) );

-//

-//					b = configuration.getAttribute(

-//							ATTR_BEHAVIOR_SELECTION_HOJ_HEURISTIC, true);

-//					currentFavmString = currentFavmString.replace(

-//							"__HOJ1_HEURISTIC__", Boolean.toString(b) );

-//

-//					b = configuration.getAttribute(

-//							ATTR_BEHAVIOR_SELECTION_HOJ_STOP, true);

-//					currentFavmString = currentFavmString.replace(

-//							"__HOJ1_STOP__", Boolean.toString(b) );

-//

-//					b = configuration.getAttribute(

-//							ATTR_BEHAVIOR_SELECTION_HOJ_SLICE, true);

-//					currentFavmString = currentFavmString.replace(

-//							"__HOJ1_SLICE__", Boolean.toString(b) );

-//

-//

-//					currentFavmString = currentFavmString.replace(

-//							"__HOJ1_SEARCH_SCOPE__", configuration.getAttribute(

-//								ATTR_BEHAVIOR_SELECTION_HOJ_SEARCH_SCOPE_LOCALLY,

-//									false) ? "LOCALLY" : "GLOBALLY" );

-//

-//					i = configuration.getAttribute(

-//							ATTR_BEHAVIOR_SELECTION_HOJ_JUMP_HEIGHT, 6);

-//					currentFavmString = currentFavmString.replace(

-//							"__HOJ1_JUMP_HEIGHT__", Integer.toString(i) );

-//

-//					i = configuration.getAttribute(

-//							ATTR_BEHAVIOR_SELECTION_HOJ_JUMP_TRIALS_LIMIT, 2);

-//					currentFavmString = currentFavmString.replace(

-//							"__HOJ1_JUMP_LIMIT__", Integer.toString(i) );

-//

-//					i = configuration.getAttribute(

-//							ATTR_BEHAVIOR_SELECTION_HOJ_HIT_COUNT, 1);

-//					currentFavmString = currentFavmString.replace(

-//							"__HOJ1_HIT_COUNT__", Integer.toString(i) );

-//

-//					b = configuration.getAttribute(

-//							ATTR_BEHAVIOR_SELECTION_HOJ_HIT_CONSECUTIVE, false);

-//					currentFavmString = currentFavmString.replace(

-//							"__HOJ1_HIT_CONSECUTIVE__", Boolean.toString(b) );

-//

-//					b = configuration.getAttribute(

-//							ATTR_BEHAVIOR_SELECTION_HOJ_HIT_MAX, false);

-//					currentFavmString = currentFavmString.replace(

-//							"__HOJ1_HIT_MAX__", Boolean.toString(b) );

-//

-//					i = configuration.getAttribute(

-//							ATTR_BEHAVIOR_SELECTION_HOJ_JUMP_COUNT, 1);

-//					currentFavmString = currentFavmString.replace(

-//							"__HOJ1_JUMP_COUNT__", Integer.toString(i) );

-//

-//					b = configuration.getAttribute(

-//							ATTR_BEHAVIOR_SELECTION_HOJ_JUMP_SLICE, false);

-//					currentFavmString = currentFavmString.replace(

-//							"__HOJ1_JUMP_SLICE__", Boolean.toString(b) );

-//

-//					b = configuration.getAttribute(

-//							ATTR_BEHAVIOR_SELECTION_HOJ_SCHEDULER_ORDERED, true);

-//					currentFavmString = currentFavmString.replace(

-//								"__HOJ1_SCHEDULER__", (b ? "|;|" : "|i|") );

-//

-//				} catch (CoreException e) {

-//					e.printStackTrace();

-//				}

-//			}

-//			else {

-//				// Pas d'onglet EXPERT

-//				// Le process HitOrJump est paramétré avec les valeurs par défaut

-//				//

-//				currentFavmString = currentFavmString.replace(

-//						"__HOJ1_BEGIN_STEP__", "0" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__HOJ1_HEURISTIC__", "true" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__HOJ1_STOP__", "true" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__HOJ1_SLICE__", "true" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__HOJ1_SEARCH_SCOPE__", "LOCALLY" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__HOJ1_JUMP_HEIGHT__", "6" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__HOJ1_JUMP_LIMIT__", "2" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__HOJ1_HIT_COUNT__", "1" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__HOJ1_HIT_CONSECUTIVE__", "false" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__HOJ1_HIT_MAX__", "false" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__HOJ1_JUMP_COUNT__", "1" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__HOJ1_JUMP_SLICE__", "false" );

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__HOJ1_SCHEDULER__", "|;|" );

-//			}

-//		}

-//		else {

-//			// Suppression du process HOJ en Phase 1

-//			//

-//			currentFavmString = suppressProcessString(currentFavmString,

-//					"//BEGIN_HOJ_PHASE1",

-//					"//END_HOJ_PHASE1");

-//		}

-//		return currentFavmString;

-//	}

-//

-//	private String modeDebug(

-//			ILaunchConfiguration configuration, String currentFavmString) {

-//		IPreferenceStore prefs = org.eclipse.efm.core.workflow.Activator.getDefault().getPreferenceStore();

-//

-//		boolean debugOptionMode = prefs.getBoolean(

-//				ToolConstants.PREF_DEBUG_OPTIONS);

-//

-//		if ( debugOptionMode ) {

-//			// On récupère les informations de l'onglet Debug

-//			//

-//			try {

-//				if( configuration.getAttribute(

-//					ATTR_ENABLED_FIRST_PARSED_MODEL_GRAPHVIZ_GENERATION, false) ) {

-//					currentFavmString = currentFavmString.replace(

-//							"//__@file_statemachine_graph", "@file");

-//					currentFavmString = currentFavmString.replace(

-//							"//__PHASE1_&processor::serializer#statemachine",

-//							"&processor::serializer#statemachine");

-//				}

-//				else {

-//					// Suppression du filtre Serialize Statemachine en Phase 1

-//					//

-//					currentFavmString = suppressProcessString(currentFavmString,

-//							"//BEGIN_SERIALIZER_STATEMACHINE_PHASE1",

-//							"//END_SERIALIZER_STATEMACHINE_PHASE1");

-//				}

-//				if( configuration.getAttribute(

-//					ATTR_ENABLED_FIRST_SYMBEX_OUTPUT_GRAPHVIZ_GENERATION, false) ) {

-//					currentFavmString = currentFavmString.replace(

-//							"//__@file_phase1_execution_graph", "@file");

-//					currentFavmString = currentFavmString.replace(

-//							"//__PHASE1_&processor::serializer#execution_graph",

-//							"&processor::serializer#execution_graph");

-//				}

-//				else {

-//					// Suppression du filtre Serialize Execution Graph en Phase 1

-//					//

-//					currentFavmString = suppressProcessString(currentFavmString,

-//							"//BEGIN_SERIALIZER_EXECUTION_GRAPH_PHASE1",

-//							"//END_SERIALIZER_EXECUTION_GRAPH_PHASE1");

-//				}

-//				if( configuration.getAttribute(

-//					ATTR_ENABLED_SECOND_SYMBEX_OUTPUT_GRAPHVIZ_GENERATION, false) ) {

-//					currentFavmString = currentFavmString.replace(

-//							"//__@file_phase2_execution_graph", "@file");

-//

-//					currentFavmString = currentFavmString.replace(

-//							"//__PHASE2_&processor::serializer#execution_graph",

-//							"&processor::serializer#execution_graph");

-//				}

-//				else if( fEnableProlongation ) {

-//					// Suppression du filtre Serialize Execution Graph en Phase 2

-//					//

-//					currentFavmString = suppressProcessString(currentFavmString,

-//							"//BEGIN_SERIALIZER_EXECUTION_GRAPH_PHASE2",

-//							"//END_SERIALIZER_EXECUTION_GRAPH_PHASE2");

-//				}

-//

-//				currentFavmString = currentFavmString.replace(

-//						"__CONSOLE_TRACE_LEVEL__",

-//						configuration.getAttribute(

-//								ATTR_CONSOLE_LOG_VERBOSE_LEVEL, "MINIMUM"));

-//

-//				//System.out.println("ATTR_ENABLED_DEVELOPER_TUNING:> " +

-//				//		configuration.getAttribute(

-////								ATTR_ENABLED_DEVELOPER_TUNING, false) );

-//				if ( configuration.getAttribute(

-//						ATTR_ENABLED_DEVELOPER_TUNING, false) ) {

-//					currentFavmString = currentFavmString.replace(

-//							"//__@log =", "@log =");

-//

-//					currentFavmString = currentFavmString.replace(

-//							"__AVM_LOG__",

-//							configuration.getAttribute(

-//									ATTR_DEVELOPER_TUNING_LOG_FILENAME,

-//									"avm.log"));

-//

-//					currentFavmString = currentFavmString.replace(

-//							"//__@debug =", "@debug =");

-//

-//					currentFavmString = currentFavmString.replace(

-//							"__AVM_TRACE__",

-//							configuration.getAttribute(

-//									ATTR_DEVELOPER_TUNING_DEBUG_FILENAME,

-//									"avm.trace"));

-//

-//					currentFavmString = currentFavmString.replace(

-//							"__TRACE_LEVEL__",

-//							configuration.getAttribute(

-//									ATTR_DEVELOPER_TUNING_DEBUG_LEVEL, "LOW"));

-//

-//					if ( configuration.getAttribute(

-//							ATTR_ENABLED_TRACE_PARSING, false) ) {

-//						currentFavmString = currentFavmString.replace(

-//								"//__@kind = 'PARSING';",

-//								"@kind = 'PARSING';");

-//					}

-//					if ( configuration.getAttribute(

-//							ATTR_ENABLED_TRACE_COMPILING, false) ) {

-//						currentFavmString = currentFavmString.replace(

-//								"//__@kind = 'COMPILING';",

-//								"@kind = 'COMPILING';");

-//					}

-//					if ( configuration.getAttribute(

-//							ATTR_ENABLED_TRACE_COMPUTING, false) ) {

-//						currentFavmString = currentFavmString.replace(

-//								"//__@kind = 'COMPUTING';",

-//								"@kind = 'COMPUTING';");

-//					}

-//					if ( configuration.getAttribute(

-//							ATTR_ENABLED_TRACE_ALL_PROCESS_STAGE, false) ) {

-//						currentFavmString = currentFavmString.replace(

-//								"//__@kind = 'ALL_PROCESS_STAGE';",

-//								"@kind = 'ALL_PROCESS_STAGE';");

-//					}

-//					if ( configuration.getAttribute(

-//							ATTR_ENABLED_TRACE_PROGRAM, false) ) {

-//						currentFavmString = currentFavmString.replace(

-//								"//__@kind = 'PROGRAM';",

-//								"@kind = 'PROGRAM';");

-//					}

-//					if ( configuration.getAttribute(

-//							ATTR_ENABLED_TRACE_STATEMENT_ASSIGNMENT, false) ) {

-//						currentFavmString = currentFavmString.replace(

-//								"//__@kind = 'STMNT_ASSIGN';",

-//								"@kind = 'STMNT_ASSIGN';");

-//					}

-//					if ( configuration.getAttribute(

-//							ATTR_ENABLED_TRACE_STATEMENT, false) ) {

-//						currentFavmString = currentFavmString.replace(

-//								"//__@kind = 'STATEMENT';",

-//								"@kind = 'STATEMENT';");

-//					}

-//					if ( configuration.getAttribute(

-//							ATTR_ENABLED_TRACE_BYTECODE, false) ) {

-//						currentFavmString = currentFavmString.replace(

-//								"//__@kind = 'BYTECODE';",

-//								"@kind = 'BYTECODE';");

-//					}

-//					if ( configuration.getAttribute(

-//							ATTR_ENABLED_TRACE_STATEMENT_COMMUNICATION, false) ) {

-//						currentFavmString = currentFavmString.replace(

-//								"//__@kind = 'STMNT_COM';",

-//								"@kind = 'STMNT_COM';");

-//					}

-//					if ( configuration.getAttribute(

-//							ATTR_ENABLED_TRACE_SOLVING, false) ) {

-//						currentFavmString = currentFavmString.replace(

-//								"//__@kind = 'SOLVING';",

-//								"@kind = 'SOLVING';");

-//					}

-//					if ( configuration.getAttribute(

-//							ATTR_ENABLED_TRACE_DATA, false) ) {

-//						currentFavmString = currentFavmString.replace(

-//								"//__@kind = 'DATA';",

-//								"@kind = 'DATA';");

-//					}

-//					if ( configuration.getAttribute(

-//							ATTR_ENABLED_TRACE_REPORTING, false) ) {

-//						currentFavmString = currentFavmString.replace(

-//								"//__@kind = 'REPORTING';",

-//								"@kind = 'REPORTING';");

-//					}

-//					if ( configuration.getAttribute(

-//							ATTR_ENABLED_TRACE_CONFIGURING, false) ) {

-//						currentFavmString = currentFavmString.replace(

-//								"//__@kind = 'CONFIGURING';",

-//								"@kind = 'CONFIGURING';");

-//					}

-//					if ( configuration.getAttribute(

-//							ATTR_ENABLED_TRACE_REDUNDANCE, false) ) {

-//						currentFavmString = currentFavmString.replace(

-//								"//__@kind = 'REDUNDANCE';",

-//								"@kind = 'REDUNDANCE';");

-//					}

-//					if ( configuration.getAttribute(

-//							ATTR_ENABLED_TRACE_TRACE, false) ) {

-//						currentFavmString = currentFavmString.replace(

-//								"//__@kind = 'TRACE';",

-//								"@kind = 'TRACE';");

-//					}

-//				}

-//				else {

-//					currentFavmString = currentFavmString.replace(

-//							"__TRACE_LEVEL__", "ZERO");

-//				}

-//

-//				//System.out.println("ATTR_ENABLED_OUTPUT_FILES_1:> " +

-//				//		configuration.getAttribute(ATTR_ENABLED_OUTPUT_FILES_1, false) );

-//				if( configuration.getAttribute(

-//					ATTR_ENABLED_FIRST_COMPILED_MODEL_TEXTUAL_GENERATION, false) ) {

-//					currentFavmString = currentFavmString.replace(

-//							"//__PHASE1_@executable =", "@executable =");

-//

-//					currentFavmString = currentFavmString.replace(

-//						"__PHASE1_EXE__",

-//						configuration.getAttribute(

-//							ATTR_FIRST_COMPILED_MODEL_TEXTUAL_FILENAME,

-//							"phase1.fexe"));

-//				}

-//

-//				if( configuration.getAttribute(

-//					ATTR_ENABLED_FIRST_SYMBEX_OUTPUT_TEXTUAL_GENERATION, false) ) {

-//					currentFavmString = currentFavmString.replace(

-//							"//__PHASE1_@scenarii =", "@scenarii =");

-//

-//					currentFavmString = currentFavmString.replace(

-//						"__PHASE1_FSCN__",

-//						configuration.getAttribute(

-//							ATTR_FIRST_SYMBEX_OUTPUT_TEXTUAL_FILENAME,

-//							DEFAULT_FIRST_SYMBEX_OUTPUT_TEXTUAL_FILENAME));

-//				}

-//

-//				//System.out.println("ATTR_ENABLED_OUTPUT_FILES_2:> " +

-//				//		configuration.getAttribute(

-////								ATTR_ENABLED_OUTPUT_FILES_2, false) );

-//				if( configuration.getAttribute(

-//					ATTR_ENABLED_SECOND_COMPILED_MODEL_TEXTUAL_GENERATION, false) ) {

-//					currentFavmString = currentFavmString.replace(

-//							"//__PHASE2_@executable =", "@executable =");

-//					currentFavmString = currentFavmString.replace(

-//						"__PHASE2_EXE__",

-//						configuration.getAttribute(

-//							ATTR_ENABLED_SECOND_COMPILED_MODEL_TEXTUAL_GENERATION,

-//							"phase2.fexe"));

-//				}

-//

-//				if( configuration.getAttribute(

-//					ATTR_ENABLED_SECOND_SYMBEX_OUTPUT_TEXTUAL_GENERATION, false) ) {

-//					currentFavmString = currentFavmString.replace(

-//							"//__PHASE2_@scenarii =", "@scenarii =");

-//

-//					currentFavmString = currentFavmString.replace(

-//						"__PHASE2_FSCN__",

-//						configuration.getAttribute(

-//							ATTR_SECOND_SYMBEX_OUTPUT_TEXTUAL_FILENAME,

-//							"phase2.fscn"));

-//				}

-//			} catch (CoreException e) {

-//				e.printStackTrace();

-//			}

-//		}

-//		else {

-//			// Pas d'option DEBUG au niveau des préférences

-//			//

-//			currentFavmString = currentFavmString.replace(

-//					"__CONSOLE_TRACE_LEVEL__", "MINIMUM");

-//

-//			currentFavmString = currentFavmString.replace(

-//					"__TRACE_LEVEL__", "ZERO");

-//		}

-//		return currentFavmString;

-//	}

-//

-////	 private static String suppressProcessString(

-////			String input, String beginString, String endString){

-////		 int firstPos = input.indexOf(beginString) + beginString.length();

-////		 int lastPos = input.indexOf(endString);

-////		 String result = input.substring(0,firstPos) + "\n" +

-////				input.substring(lastPos, input.length());

-////		 return result;

-////	 }

-//

-//	 private static String suppressProcessString(

-//			 String input, String beginString, String endString){

-//		 int firstPos = input.indexOf(beginString);

-//		 int lastPos = input.indexOf(endString) + endString.length() + 2;

-//		 String result = input.substring(0,firstPos) +

-//				 input.substring(lastPos, input.length());

-//

-//		 return result;

-//

-////		 int firstPos = input.indexOf(beginString);

-////		 if( firstPos > 0 ) {

-////			 int lastPos = input.indexOf(endString) + endString.length() + 2;

-////			 if( lastPos > firstPos ) {

-////				 String result = input.substring(0,firstPos) +

-////		 				input.substring(lastPos, input.length());

-////				 return result;

-////			 }

-////		 }

-////		 return input;

-//	 }

-//

-//	private void throwCoreException(String message) throws CoreException {

-//		IStatus status = new Status(IStatus.ERROR,

-//				Activator.PLUGIN_ID, IStatus.OK, message, null);

-//

-//		throw new CoreException(status);

-//	}

-//

-//

-//	public IProject getCurrentProject(

-//			ILaunchConfiguration configuration) throws CoreException {

-//		IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();

-//

-//		String projectName = configuration.getAttribute(

-//				ATTR_SPECIFICATION_PROJECT_NAME, "");

-//

-//		if( (projectName != null) && (! projectName.isEmpty()) ) {

-//			IProject project = root.getProject(projectName);

-//			if( project != null ) {

-//				return project;

-//			}

-//		}

-//

-//		String aLocation = configuration.getAttribute(

-//				ATTR_SPECIFICATION_MODEL_FILE_LOCATION, "");

-//

-//		if( (aLocation == null) || aLocation.isEmpty() ) {

-//			throwCoreException("The model file does not exist.");

-//

-//			return null;

-//		}

-//

-////		aLocation = VariablesPlugin.getDefault().getStringVariableManager().

-////				performStringSubstitution(aLocation);

-//

-//		IResource resource = root.findMember(aLocation);

-//

-//		if( (resource == null) || (! resource.exists()) ) {

-//			throwCoreException("The ressource model file \"" +

-//					aLocation + "\" does not exist.");

-//

-//			return null;

-//		}

-//

-//		return resource.getProject();

-//	}

-//

-//	/**

-//	 * Status code indicating an unexpected internal error.

-//	 */

-//	public static final int ERR_INTERNAL_ERROR = 150;

-//

-//

-//	public void launchExec(ILaunchConfiguration configuration, String mode,

-//			ILaunch launch, IProgressMonitor monitor) throws CoreException {

-//

-//		if (monitor.isCanceled()) {

-//			return;

-//		}

-//

-//		// resolve working directory

-////		IPath workingDirectory = CoreUtil.getWorkingDirectory(configuration);

-//

-//		if (monitor.isCanceled()) {

-//			return;

-//		}

-//

-//		// resolve arguments

-//		String[] arguments = CoreUtil.getArguments(configuration);

-//

-//		if (monitor.isCanceled()) {

-//			return;

-//		}

-//

-//		int cmdLineLength = 2 + ((arguments != null) ? arguments.length : 0);

-//

-//		String[] cmdLine = new String[cmdLineLength];

-//

-//		cmdLine[0] = fAvmExecLocation.toOSString();

-//		cmdLine[1] = fFavmLocation.toOSString();

-//

-//		if (arguments != null) {

-//			System.arraycopy(arguments, 0, cmdLine, 1, arguments.length);

-//		}

-//

-//		if (monitor.isCanceled()) {

-//			return;

-//		}

-//

-//		String[] envp = DebugPlugin.getDefault().getLaunchManager()

-//				.getEnvironment(configuration);

-//

-//		if (monitor.isCanceled()) {

-//			return;

-//		}

-//

-//		File workingDir = (fWorkingDirectory != null) ?

-//				fWorkingDirectory.toFile() : null;

-//

-//		IPreferenceStore prefs = org.eclipse.efm.core.workflow.Activator.getDefault().getPreferenceStore();

-//

-//		boolean debugOptionMode = prefs.getBoolean(

-//				ToolConstants.PREF_DEBUG_OPTIONS);

-//

-//		String consoleLevel = configuration.getAttribute(

-//				ATTR_CONSOLE_LOG_VERBOSE_LEVEL, "MINIMUM");

-//

-//		boolean spiderView = prefs.getBoolean(

-//				ToolConstants.PREF_SPIDER_VIEW);

-//

-//		boolean consoleView = prefs.getBoolean(

-//				ToolConstants.PREF_CONSOLE_VIEW);

-//

-//

-//// Modif pour non-régression

-////

-////		defaultLaunchExecProcess(configuration, mode, launch,

-////				monitor,cmdLine, workingDir, envp);

-////

-////		System.out.println("Debut deuxieme execution");

-////		try {

-////			Thread.sleep(5000);

-////		} catch (InterruptedException e) {

-////			e.printStackTrace();

-////		}

-////

-////		defaultLaunchExecProcess(configuration, mode, launch,

-////				monitor,cmdLine, workingDir, envp);

-//

-//

-//

-//

-//		if ( spiderView &&

-//			((! debugOptionMode) || consoleLevel.equals("MINIMUM")) ) {

-//			fConsoleManager.sewLaunchExecProcess(configuration, mode, launch,

-//					monitor,cmdLine, workingDir, envp);

-//		}

-//		else if ( consoleView ){

-//			// Console par défault

-//			defaultLaunchExecProcess(configuration, mode, launch,

-//					monitor,cmdLine, workingDir, envp);

-//		}

-//	}

-//

-//	protected void defaultLaunchExecProcess(ILaunchConfiguration configuration,

-//			String mode, ILaunch launch, IProgressMonitor monitor,

-//			String[] cmdLine, File workingDir, String[] envp)

-//					throws CoreException {

-//

-//		Process javaProcess = DebugPlugin.exec(cmdLine, workingDir, envp);

-//		IProcess eclipseProcess = null;

-//

-//		// add process type to process attributes

-//		Map<String, String> processAttributes = new HashMap<String, String>();

-//		String programName = fAvmExecLocation.lastSegment();

-//		String extension = fAvmExecLocation.getFileExtension();

-//		if (extension != null) {

-//			programName = programName.substring(0, programName.length()

-//					- (extension.length() + 1));

-//		}

-//		programName = programName.toLowerCase();

-//		processAttributes.put(IProcess.ATTR_PROCESS_TYPE, programName);

-//

-//		if( javaProcess != null ) {

-//			monitor.beginTask(NLS.bind("Running {0}...",

-//					new String[] { configuration.getName() }),

-//					IProgressMonitor.UNKNOWN);

-//

-//			// Suppression d'un éventuel fichier stop.avm

-//			// d'une exécution précédente

-//			IPath fStopavmLocation = getCurrentProject(configuration).

-//					getLocation().append("Output/log/stop.avm");

-//			File fStopavmFile = fStopavmLocation.toFile();

-//			fStopavmFile.delete();

-//

-//			eclipseProcess = DebugPlugin.newProcess(launch, javaProcess,

-//					fAvmExecLocation.toOSString(), processAttributes);

-//

-////			System.out.println("!!!!!!!!!!!!!!!!!!!!!!! launchSpiderJob(javaProcess) !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");

-////			launchSpiderJob(javaProcess);

-//		}

-//

-//		if( (javaProcess == null) || (eclipseProcess == null) ) {

-//			if (javaProcess != null) {

-//				javaProcess.destroy();

-//			}

-//			throw new CoreException(new Status(IStatus.ERROR,

-//					Activator.PLUGIN_ID, ERR_INTERNAL_ERROR,

-//					"An IProcess could not be created for the launch", null));

-//		}

-//

-//		eclipseProcess.setAttribute(

-//				IProcess.ATTR_CMDLINE, generateCommandLine(cmdLine));

-//

-//		if( configuration.getAttribute(

-//				IDebugUIConstants.ATTR_LAUNCH_IN_BACKGROUND, true) ) {

-//			// refresh resources after process finishes

-//			String scope = configuration.getAttribute(

-//					RefreshUtil.ATTR_REFRESH_SCOPE, (String)null);

-//			if( scope != null ) {

-//				BackgroundResourceRefresher refresher =

-//						new BackgroundResourceRefresher(

-//								configuration, eclipseProcess);

-//				refresher.startBackgroundRefresh();

-//			}

-//		} else {

-//			// wait for process to exit

-//			while (!eclipseProcess.isTerminated()) {

-//				try {

-//					if (monitor.isCanceled()) {

-//						eclipseProcess.terminate();

-//						break;

-//					}

-//					Thread.sleep(50);

-//				} catch (InterruptedException e) {

-//					e.printStackTrace();

-//				}

-//			}

-//			// refresh resources

-//			RefreshUtil.refreshResources(configuration, monitor);

-//		}

-//

-//		// Prise en compte du paramètre TIMEOUT

-//		//

-//		int timeout = configuration.getAttribute(

-//				ATTR_SPECIFICATION_STOP_CRITERIA_TIMEOUT, -1);

-//		if ( timeout != -1 ) {

-//			launchSupervisor(configuration, javaProcess, timeout);

-//		}

-//	}

-//

-//	protected void launchSupervisor(ILaunchConfiguration configuration,

-//			Process javaProcess, int timeout) {

-//		try {

-//			javaProcess.waitFor(timeout, TimeUnit.SECONDS);

-//		}

-//		catch (InterruptedException e) {

-//			e.printStackTrace();

-//		}

-//

-//		if ( javaProcess.isAlive() ) {

-//			try {

-//				IPath fStopavmLocation =

-//						getCurrentProject(configuration).

-//						getLocation().append("Output/log/stop.avm");

-//				BufferedWriter stopavm;

-//				stopavm = new BufferedWriter(

-//						new FileWriter( fStopavmLocation.toFile() ) );

-//				stopavm.write("");

-//				stopavm.close();

-//			}

-//			catch (IOException e) {

-//			}

-//			catch (CoreException e) {

-//				e.printStackTrace();

-//			}

-//

-//			System.out.println("TIMEOUT END");

-//		}

-//	}

-//

-//	private String generateCommandLine(String[] commandLine) {

-//		if (commandLine.length < 1)

-//			return "";

-//		StringBuffer buf = new StringBuffer();

-//		for (int i = 0; i < commandLine.length; i++) {

-//			buf.append(' ');

-//			char[] characters = commandLine[i].toCharArray();

-//			StringBuffer command = new StringBuffer();

-//			boolean containsSpace = false;

-//			for (int j = 0; j < characters.length; j++) {

-//				char character = characters[j];

-//				if (character == '\"') {

-//					command.append('\\');

-//				} else if (character == ' ') {

-//					containsSpace = true;

-//				}

-//				command.append(character);

-//			}

-//			if (containsSpace) {

-//				buf.append('\"');

-//				buf.append(command);

-//				buf.append('\"');

-//			} else {

-//				buf.append(command);

-//			}

-//		}

-//		return buf.toString();

-//	}

-

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/WorkflowFAVM.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/WorkflowFAVM.java
deleted file mode 100644
index 519a0cd..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/WorkflowFAVM.java
+++ /dev/null
@@ -1,1238 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration;

-

-import java.io.BufferedReader;

-import java.io.BufferedWriter;

-import java.io.FileWriter;

-import java.io.IOException;

-import java.io.InputStream;

-import java.io.InputStreamReader;

-import java.net.URL;

-import java.util.ArrayList;

-import java.util.List;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.core.runtime.FileLocator;

-import org.eclipse.core.runtime.IPath;

-import org.eclipse.core.runtime.Platform;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.efm.core.workflow.Activator;

-import org.eclipse.efm.core.workflow.IWorkflowConfigurationConstants;

-import org.eclipse.efm.core.workflow.ToolConstants;

-import org.eclipse.efm.runconfiguration.ui.views.page.LaunchExecConsoleManager;

-import org.eclipse.jface.preference.IPreferenceStore;

-import org.osgi.framework.Bundle;

-

-public class WorkflowFAVM implements IWorkflowConfigurationConstants {

-

-	private final String FAVM_TEMPLATE = "resources/sew/template.favm";

-

-	private IPath fFavmLocation;

-	private IPath fWorkingDirectory;

-	private String fAnalysisProfile;

-

-	public static String fModelAnalysis = ANALYSIS_PROFILE_MODEL_UNDEFINED;

-

-	public boolean fEnableTraceExtension;

-

-

-	/**

-	 * LaunchExecConsoleManager

-	 */

-	LaunchExecConsoleManager fConsoleManager;

-

-	boolean fEnabledDebugOrDeveloperMode;

-

-	public WorkflowFAVM() {

-		fFavmLocation = null;

-		fWorkingDirectory = null;

-		fAnalysisProfile = null;

-

-		fConsoleManager = new LaunchExecConsoleManager();

-

-		fEnabledDebugOrDeveloperMode = false;

-

-		fEnableTraceExtension = false;

-	}

-

-	public void configure(ILaunchConfiguration configuration,

-			IPath xorkingDirectory, String favmFilename) {

-		fWorkingDirectory = xorkingDirectory;

-

-		fFavmLocation = fWorkingDirectory.append( favmFilename );

-

-		try {

-			int i;

-

-			fAnalysisProfile = configuration.getAttribute(

-					ATTR_SPECIFICATION_ANALYSIS_PROFILE, ANALYSIS_PROFILE_MODEL);

-

-			fModelAnalysis = configuration.getAttribute(

-					ATTR_SPECIFICATION_MODEL_ANALYSIS,

-					ANALYSIS_PROFILE_MODEL_UNDEFINED);

-

-			Bundle bundle = Platform.getBundle(Activator.PLUGIN_ID);

-

-			URL url = bundle.getEntry(FAVM_TEMPLATE);

-

-			URL favmTemplateURL = FileLocator.toFileURL(url);

-			InputStream inputTemplate = favmTemplateURL.openStream();

-

-			BufferedReader bufferedTemplate = new BufferedReader(

-					new InputStreamReader (inputTemplate) );

-

-			StringBuffer buffer = new StringBuffer();

-

-			String line = bufferedTemplate.readLine();

-			while( line != null ) {

-				buffer.append(line);

-				buffer.append("\n");

-

-				line = bufferedTemplate.readLine();

-			}

-

-			bufferedTemplate.close();

-

-			String favmString = buffer.toString();

-

-			final String projectLocation = fWorkingDirectory.toString();

-

-			favmString = favmString.replace(

-					"__LOCATION_PROJECT__", projectLocation );

-//			System.out.println("__LOCATION_PROJECT__ : " + projectLocation);

-

-			String fModelPath = configuration.getAttribute(

-					ATTR_SPECIFICATION_MODEL_FILE_LOCATION, "");

-//			i = fModelPath.lastIndexOf("/");

-			if( fModelPath.startsWith(projectLocation) ) {

-				final boolean endWidthSeparator = (projectLocation.charAt(

-						projectLocation.length() - 1) == IPath.SEPARATOR);

-

-				fModelPath = fModelPath.substring(

-						projectLocation.length() + (endWidthSeparator? 0 : 1) );

-			}

-			favmString = favmString.replace(

-					"__SPECIFICATION_MAIN__", fModelPath );

-//			System.out.println("__SPECIFICATION_MAIN__ : " + fModelPath);

-

-			i = configuration.getAttribute(

-					ATTR_SPECIFICATION_STOP_CRITERIA_NODE, -1);

-			favmString = favmString.replace( "__NODE__", Integer.toString(i) );

-

-			i = configuration.getAttribute(

-					ATTR_SPECIFICATION_STOP_CRITERIA_WIDTH, -1);

-			favmString = favmString.replace( "__WIDTH__", Integer.toString(i) );

-

-			i = configuration.getAttribute(

-					ATTR_SPECIFICATION_STOP_CRITERIA_HEIGHT, -1);

-			favmString = favmString.replace( "__HEIGHT__", Integer.toString(i) );

-

-			i = configuration.getAttribute(

-					ATTR_SPECIFICATION_STOP_CRITERIA_STEPS, -1);

-			favmString = favmString.replace( "__EVAL__", Integer.toString(i) );

-

-			switch ( fAnalysisProfile ) {

-			case ANALYSIS_PROFILE_MODEL: {

-				switch ( fModelAnalysis ) {

-				case ANALYSIS_PROFILE_MODEL_EXPLORATION: {

-					favmString = favmString.replace(

-							"__EXECUTION_QUEUE_STRATEGY__",

-							configuration.getAttribute(

-									ATTR_SPECIFICATION_ANALYZE_STRATEGY, "") );

-					break;

-				}

-				case ANALYSIS_PROFILE_MODEL_COVERAGE_TRANSITION: {

-					favmString = favmString.replace(

-							"__EXECUTION_QUEUE_STRATEGY__", "WEIGHT_BFS");

-

-					break;

-				}

-				case ANALYSIS_PROFILE_MODEL_COVERAGE_BEHAVIOR: {

-					String fElementNameListStringField =

-							configuration.getAttribute(

-									ATTR_BEHAVIOR_ANALYSIS_ELEMENT_NAME_LIST, "");

-

-					String[] tabString =

-							fElementNameListStringField.trim().split("\\R|;");

-

-					StringBuffer elementStringList = new StringBuffer();

-					String kind;

-					String object;

-					int pos;

-

-					for (String eltString : tabString) {

-						eltString = eltString.trim();

-

-						if ( eltString.length() == 0 ) {

-						}

-						else if ( eltString.startsWith("//") ) {

-							elementStringList.append("\t\t\t\t\t\t")

-								.append(eltString).append("\n");

-						}

-						else if( (pos = eltString.indexOf('=')) > 0 ) {

-							kind = eltString.substring(0, pos).trim();

-							object = eltString.substring(pos+1).trim();

-

-							if ( kind.equals( "transition" ) ) {

-								// Check if the object is a transition and exists !

-							}

-							else if ( kind.equals( "state" ) ) {

-								// Check if the object is a state and exists !

-							}

-

-							else if ( kind.equals( "input" ) ) {

-								// Check if the object is an input port/signal and exists !

-							}

-							else if ( kind.equals( "output" ) ) {

-								// Check if the object is an output port/signal and exists !

-							}

-

-							else if ( kind.equals( "inout" ) ) {

-								// Check if the object is an inout port/signal and exists !

-							}

-							else if ( kind.equals( "com" ) ) {

-								// Check if the object is a communicated port/signal and exists !

-							}

-

-							// check if the object ID contains space

-							if( object.matches("[^\"'].*\\s+.*[^\"']") ) {

-								object = "\"" + object +  "\"";

-							}

-

-							elementStringList.append("\t\t\t\t\t\t@")

-								.append(kind).append(" = ").append(object).append(";\n");

-						}

-						else {

-							elementStringList.append("\t\t\t\t\t\t@")

-								.append(eltString).append(";\n");

-						}

-					}

-

-					if ( elementStringList.length() > 0 ) {

-						favmString = favmString.replace(

-								"\t\t\t\t\t\t//__ELEMENT_LIST_TO_COVER__",

-								elementStringList);

-					}

-

-					favmString = favmString.replace(

-							"__EXECUTION_QUEUE_STRATEGY__", "WEIGHT_BFS");

-

-					break;

-				}

-				default:

-					favmString = favmString.replace(

-							"__EXECUTION_QUEUE_STRATEGY__",

-							configuration.getAttribute(

-									ATTR_SPECIFICATION_ANALYZE_STRATEGY, "") );

-					break;

-				}

-

-

-				favmString = suppressProcessString(favmString,

-						"//BEGIN_OFFLINE_TEST_PHASE1",

-						"//END_OFFLINE_TEST_PHASE1");

-

-

-				// Filter Redundancy Phase1

-				//

-				favmString = filterRedundancyPhase1(configuration, favmString);

-

-				break;

-			}

-			case ANALYSIS_PROFILE_TEST_OFFLINE: {

-				fModelAnalysis = ANALYSIS_PROFILE_MODEL_UNDEFINED;

-

-				String traceFile = configuration.getAttribute(

-						ATTR_TEST_OFFLINE_TRACE_FILE_LOCATION,

-						"<DEFAULT trace file>");

-

-				favmString = favmString.replace( "__TRACE_FILE__", traceFile );

-

-				String testPurposeFile = configuration.getAttribute(

-						ATTR_TEST_OFFLINE_PURPOSE_FILE_LOCATION,

-						"<test purpose file>");

-				if( testPurposeFile.equals("") || testPurposeFile.equals(

-						"<test purpose file>") ) {

-					favmString = favmString.replace(

-							"@testPurposeFile", "//__@testPurposeFile" );

-				}

-				else{

-					favmString = favmString.replace(

-							"__TEST_PURPOSE_FILE__", testPurposeFile );

-				}

-

-				favmString = favmString.replace(

-						"__EXECUTION_QUEUE_STRATEGY__", "WEIGHT_BFS");

-

-				favmString = favmString.replace(

-						"//__&process::offline_test", "&process::offline_test");

-

-				break;

-			}

-			default:

-				break;

-			}

-

-			// Filter Transition Coverage Phase1

-			//

-			favmString = filterTransitionCoveragePhase1(configuration, favmString);

-

-			// Process HOJ Phase1

-			//

-			favmString = processHOJPhase1(configuration, favmString);

-

-

-			// Graph slicer en phase 2

-			// Non utilisé pour le moment

-			//

-			favmString = suppressProcessString(favmString,

-					"//BEGIN_GRAPH_SLICER_IO_PHASE2",

-					"//END_GRAPH_SLICER_IO_PHASE2");

-

-			// Génération de test au format BASIC

-			//

-			//System.out.println("ATTR_BASIC_TRACE_ENABLED_GENERATION:> " +

-			//		configuration.getAttribute(

-			//				ATTR_BASIC_TRACE_ENABLED_GENERATION, false) );

-			if ( configuration.getAttribute(

-					ATTR_BASIC_TRACE_ENABLED_GENERATION, false) ) {

-				favmString = favmString.replace(

-						"//__&process::BASIC_trace_generator",

-						"&process::BASIC_trace_generator");

-				String fFolderName = configuration.getAttribute(

-						ATTR_BASIC_TRACE_FOLDER_NAME, "Basic");

-				favmString = favmString.replace( "__BASIC_FOLDER_NAME__", fFolderName);

-				String fFileName = configuration.getAttribute(

-						ATTR_BASIC_TRACE_FILE_NAME, "tests.txt");

-				favmString = favmString.replace( "__BASIC_FILE_NAME__", fFileName);

-

-				if ( configuration.getAttribute(ATTR_BASIC_TRACE_ENABLED_NORMALIZATION, true) ) {

-					favmString = favmString.replace(

-							"//__BASIC__@normalize = true;",

-							"@normalize = true;");

-				}

-				else {

-					favmString = favmString.replace(

-							"//__BASIC__@normalize = true;",

-							"@normalize = false;");

-				}

-

-

-				boolean enabled = configuration.getAttribute(

-						ATTR_BASIC_TRACE_TIME_SELECTION, false);

-				if( enabled ) {

-					favmString = favmString.replace(

-							"//__BASIC__@time", "@time");

-				}

-

-				enabled = configuration.getAttribute(

-						ATTR_BASIC_TRACE_ALL_EXTERNAL_INPUT_COM_SELECTION, false);

-				if( enabled ) {

-					favmString = favmString.replace(

-							"//__BASIC__@input#env", "@input#env");

-				}

-

-				enabled = configuration.getAttribute(

-						ATTR_BASIC_TRACE_ALL_EXTERNAL_OUTPUT_COM_SELECTION, false);

-				if( enabled ) {

-					favmString = favmString.replace(

-							"//__BASIC__@output#env", "@output#env");

-				}

-

-				enabled = configuration.getAttribute(

-						ATTR_BASIC_TRACE_ALL_INPUT_COM_SELECTION, false);

-				if( enabled ) {

-					favmString = favmString.replace(

-							"//__BASIC__@input", "@input");

-				}

-

-				enabled = configuration.getAttribute(

-						ATTR_BASIC_TRACE_ALL_OUTPUT_COM_SELECTION, false);

-				if( enabled ) {

-					favmString = favmString.replace(

-							"//__BASIC__@output", "@output");

-				}

-

-				enabled = configuration.getAttribute(

-						ATTR_BASIC_TRACE_ALL_VARIABLE_SELECTION, false);

-				if( enabled ) {

-					favmString = favmString.replace(

-							"//__BASIC__@variable", "@variable");

-				}

-

-				enabled = configuration.getAttribute(

-						ATTR_BASIC_TRACE_ALL_TRANSITION_SELECTION, false);

-				if( enabled ) {

-					favmString = favmString.replace(

-							"//__BASIC__@transition", "@transition");

-				}

-

-				enabled = configuration.getAttribute(

-						ATTR_BASIC_TRACE_ALL_STATE_SELECTION, false);

-				if( enabled ) {

-					favmString = favmString.replace(

-							"//__BASIC__@state", "@state");

-				}

-

-				String detailsTraceList = configuration.getAttribute(

-						ATTR_BASIC_TRACE_DETAILS_ELEMENT_LIST, "");

-

-				detailsTraceList = parseFormatTrace(

-						detailsTraceList, "\t\t\t\t\t\t");

-				if( ! detailsTraceList.isEmpty() ) {

-					favmString = favmString.replace(

-							"\t\t\t\t\t\t//__DetailsElementsListToTrace",

-							detailsTraceList);

-				}

-

-

-				favmString = favmString.replace(

-						"__EXECUTION_QUEUE_STRATEGY__", "WEIGHT_BFS");

-			}

-			else {

-				favmString = suppressProcessString(favmString,

-						"//BEGIN_BASIC_TRACE_GENERATOR_PHASE2",

-						"//END_BASIC_TRACE_GENERATOR_PHASE2");

-			}

-

-			// Génération de test au format TTCN

-			//

-			//System.out.println("ATTR_TTCN_ENABLED_GENERATION:> " +

-			//		configuration.getAttribute(ATTR_TTCN_ENABLED_GENERATION, false) );

-			if( configuration.getAttribute(ATTR_TTCN_ENABLED_GENERATION, false) ) {

-				favmString = favmString.replace(

-						"//__&process::TTCN_trace_generator",

-						"&process::TTCN_trace_generator");

-

-				String fFolderName = configuration.getAttribute(

-						ATTR_TTCN_FOLDER_NAME, "");

-				favmString = favmString.replace(

-						"__TTCN_FOLDER_NAME__", fFolderName);

-			}

-			else {

-				favmString = suppressProcessString(favmString,

-						"//BEGIN_TTCN_TRACE_GENERATOR_PHASE2",

-						"//END_TTCN_TRACE_GENERATOR_PHASE2");

-			}

-

-			// PAHSE 2 if required?

-			fEnableTraceExtension = configuration.getAttribute(

-					ATTR_ENABLED_TRACE_EXTENSION, false);

-			if ( fEnableTraceExtension ) {

-				i = configuration.getAttribute(

-						ATTR_TRACE_EXTENSION_EVALUATION_STEPS, -1);

-				favmString = favmString.replace(

-						"__EVAL2__", Integer.toString(i) );

-

-				favmString = favmString.replace(

-						"//__PHASE2_&process::hit_or_jump",

-						"&process::hit_or_jump" );

-

-				favmString = favmString.replace(

-						"//__&engine::io_continuation",

-						"&engine::io_continuation");

-

-

-				String detailsTraceList = configuration.getAttribute(

-						ATTR_TRACE_EXTENSION_OBJECTIVE, "");

-

-				detailsTraceList = parseFormatTrace(

-						detailsTraceList, "\t\t\t\t\t\t");

-

-				if( ! detailsTraceList.isEmpty() ) {

-					favmString = favmString.replace(

-							"\t\t\t\t\t\t//__EXTENSION_OBJECTIVE_TO_REACH__",

-							detailsTraceList);

-				}

-

-			}

-			else if( configuration.getAttribute(

-							ATTR_BASIC_TRACE_ENABLED_GENERATION, false)

-					|| configuration.getAttribute(

-							ATTR_TTCN_ENABLED_GENERATION, false) ) {

-

-				favmString = favmString.replace( "__EVAL2__", "0" );

-

-				favmString = suppressProcessString(favmString,

-						"//BEGIN_HOJ_PHASE2",

-						"//END_HOJ_PHASE2");

-

-				favmString = favmString.replace(

-						"//__&engine::io_continuation",

-						"&engine::io_continuation");

-			}

-			else {

-				favmString = suppressProcessString(favmString,

-						"//BEGIN_IO_CONTINUATION_PHASE2",

-						"//END_IO_CONTINUATION_PHASE2");

-

-				favmString = favmString.replace(

-						"\n\t\t\t//__&engine::io_continuation", "");

-			}

-

-			// Section DEBUG

-			//

-			favmString = modeDebug(configuration, favmString);

-

-			BufferedWriter writer = new BufferedWriter(

-					new FileWriter( fFavmLocation.toFile() ) );

-

-			writer.write(favmString);

-

-			writer.close();

-		} catch (IOException e) {

-			e.printStackTrace();

-		} catch (CoreException e) {

-			e.printStackTrace();

-		}

-	}

-

-	private String filterTransitionCoveragePhase1(

-			ILaunchConfiguration configuration, String currentFavmString) {

-		IPreferenceStore prefs = org.eclipse.efm.core.workflow.Activator.getDefault().getPreferenceStore();

-		boolean expertMode = prefs.getBoolean(

-				ToolConstants.PREF_EXPERT_MODE);

-

-		if ( fAnalysisProfile.equals(ANALYSIS_PROFILE_MODEL)

-			&& fModelAnalysis.equals(

-					ANALYSIS_PROFILE_MODEL_COVERAGE_TRANSITION) ) {

-			try {

-				boolean enabledTransitionSelection = configuration.getAttribute(

-					ATTR_ENABLED_TRANSITION_COVERAGE_DETAILS_SELECTION, false);

-

-				if ( enabledTransitionSelection )

-				{

-					currentFavmString = currentFavmString.replace(

-							"__TC1_SCOPE__", "DETAILS");

-

-					List< String > selectedTransitions =

-							configuration.getAttribute(

-									ATTR_TRANSITION_COVERAGE_SELECTION,

-									new ArrayList<String>());

-

-					StringBuffer TransitionStringList = new StringBuffer();

-

-					for (String eltString : selectedTransitions) {

-						TransitionStringList

-							.append( "\t\t\t\t\t\t@transition = \"" )

-							.append(eltString).append( "\";\n" );

-					}

-					currentFavmString = currentFavmString.replace(

-							"\t\t\t\t\t\t//__TC1_TransitionListToCover",

-							TransitionStringList.toString());

-				}

-				else {

-

-				}

-			} catch (CoreException e1) {

-				e1.printStackTrace();

-			}

-

-			// Mise en oeuvre du filtre Transition Coverage

-			//

-			currentFavmString = currentFavmString.replace(

-					"//__PHASE1_&filter::transition_coverage",

-					"&filter::transition_coverage");

-

-			if ( expertMode ) {

-				// Option EXPERT au niveau des préférences

-				// On récupère les informations de la page Transition Coverage de l'onglet Expert

-				//

-				try {

-					int i;

-					boolean b;

-

-					i = configuration.getAttribute(ATTR_TRANSITION_COVERAGE_BEGIN_STEP, 0);

-					currentFavmString = currentFavmString.replace(

-							"__TC1_BEGIN_STEP__", Integer.toString(i) );

-

-					b = configuration.getAttribute(ATTR_TRANSITION_COVERAGE_STOP, true);

-					currentFavmString = currentFavmString.replace(

-							"__TC1_STOP__", Boolean.toString(b) );

-

-					b = configuration.getAttribute(ATTR_TRANSITION_COVERAGE_MINIMIZE, true);

-					currentFavmString = currentFavmString.replace(

-							"__TC1_MINIMIZE__", Boolean.toString(b) );

-

-					b = configuration.getAttribute(ATTR_TRANSITION_COVERAGE_SLICE, true);

-					currentFavmString = currentFavmString.replace(

-							"__TC1_SLICE__", Boolean.toString(b) );

-

-					b = configuration.getAttribute(ATTR_TRANSITION_COVERAGE_HEURISTIC, true);

-					currentFavmString = currentFavmString.replace(

-							"__TC1_HEURISTIC__", Boolean.toString(b) );

-

-					currentFavmString = currentFavmString.replace( "__TC1_SCOPE__",

-							configuration.getAttribute(ATTR_TRANSITION_COVERAGE_SCOPE, "MODEL"));

-

-					currentFavmString = currentFavmString.replace(

-							"__TC1_HEURISTIC_START__",

-							configuration.getAttribute(

-									ATTR_TRANSITION_COVERAGE_HEURISTIC_START, "BASIC"));

-

-					i = configuration.getAttribute(ATTR_TRANSITION_COVERAGE_HEURISTIC_TRIALS, -1);

-					currentFavmString = currentFavmString.replace(

-							"__TC1_HEURISTIC_TRIALS__", Integer.toString(i) );

-

-					i = configuration.getAttribute(ATTR_TRANSITION_COVERAGE_OBJECTIVE_RATE, 100);

-					currentFavmString = currentFavmString.replace(

-							"__TC1_OBJECTIVE_RATE__", Integer.toString(i) );

-

-					i = configuration.getAttribute(ATTR_TRANSITION_COVERAGE_OBJECTIVE_REST, 0);

-					currentFavmString = currentFavmString.replace(

-							"__TC1_OBJECTIVE_REST__", Integer.toString(i) );

-

-					currentFavmString = currentFavmString.replace(

-							"__TC1_DIRECTIVE_TRACE_HEURISTIC__",

-							configuration.getAttribute(

-									ATTR_TRANSITION_COVERAGE_DIRECTIVE_TRACE_HEURISTIC, "SMART"));

-

-					i = configuration.getAttribute(

-							ATTR_TRANSITION_COVERAGE_DIRECTIVE_TRACE_COUNT_LIMIT, 8);

-					currentFavmString = currentFavmString.replace(

-							"__TC1_DIRECTIVE_TRACE_COUNT_LIMIT__",

-							Integer.toString(i) );

-

-					i = configuration.getAttribute(

-							ATTR_TRANSITION_COVERAGE_DIRECTIVE_TRACE_SIZE_LIMIT, 8);

-					currentFavmString = currentFavmString.replace(

-							"__TC1_DIRECTIVE_TRACE_SIZE_LIMIT__",

-							Integer.toString(i) );

-

-					i = configuration.getAttribute(ATTR_TRANSITION_COVERAGE_LOOKAHEAD_DEPTH, 7);

-					currentFavmString = currentFavmString.replace(

-							"__TC1_COVERAGE_HEIGHT__", Integer.toString(i) );

-

-					i = configuration.getAttribute(

-							ATTR_TRANSITION_COVERAGE_LOOKAHEAD_WIDTH, 42);

-					currentFavmString = currentFavmString.replace(

-							"__TC1_COVERAGE_HEIGHT_REACHED_LIMIT__",

-							Integer.toString(i) );

-

-					b = configuration.getAttribute(

-							ATTR_TRANSITION_COVERAGE_HIT_STRONGLY_RANDOM, false);

-					currentFavmString = currentFavmString.replace(

-							"__TC1_HIT_STRONGLY_RANDOM__",

-							Boolean.toString(b) );

-

-					i = configuration.getAttribute(

-							ATTR_TRANSITION_COVERAGE_HIT_STRONGLY_COUNT, 1);

-					currentFavmString = currentFavmString.replace(

-							"__TC1_HIT_STRONGLY_COUNT__",

-							Integer.toString(i) );

-

-					b = configuration.getAttribute(

-							ATTR_TRANSITION_COVERAGE_HIT_WEAKLY_RANDOM, false);

-					currentFavmString = currentFavmString.replace(

-							"__TC1_HIT_WEAKLY_RANDOM__",

-							Boolean.toString(b) );

-

-					i = configuration.getAttribute(

-							ATTR_TRANSITION_COVERAGE_HIT_WEAKLY_COUNT, 1);

-					currentFavmString = currentFavmString.replace(

-							"__TC1_HIT_WEAKLY_COUNT__",

-							Integer.toString(i) );

-

-					b = configuration.getAttribute(

-							ATTR_TRANSITION_COVERAGE_HIT_OTHER_RANDOM, false);

-					currentFavmString = currentFavmString.replace(

-							"__TC1_HIT_OTHER_RANDOM__",

-							Boolean.toString(b) );

-

-					i = configuration.getAttribute(

-							ATTR_TRANSITION_COVERAGE_HIT_OTHER_COUNT, 1);

-					currentFavmString = currentFavmString.replace(

-							"__TC1_HIT_OTHER_COUNT__",

-							Integer.toString(i) );

-				} catch (CoreException e) {

-					e.printStackTrace();

-				}

-			}

-			else {

-				// Pas d'onglet EXPERT

-				// Le process Transition Coverage est paramétré

-				// avec les valeurs par défaut

-				currentFavmString = currentFavmString.replace(

-						"__TC1_BEGIN_STEP__", "0" );

-

-				currentFavmString = currentFavmString.replace(

-						"__TC1_STOP__", "true" );

-

-				currentFavmString = currentFavmString.replace(

-						"__TC1_MINIMIZE__", "true" );

-

-				currentFavmString = currentFavmString.replace(

-						"__TC1_SLICE__", "true" );

-

-				currentFavmString = currentFavmString.replace(

-						"__TC1_HEURISTIC__", "true" );

-

-				currentFavmString = currentFavmString.replace(

-						"__TC1_SCOPE__", "MODEL" );

-

-				currentFavmString = currentFavmString.replace(

-						"__TC1_HEURISTIC_START__", "BASIC" );

-

-				currentFavmString = currentFavmString.replace(

-						"__TC1_HEURISTIC_TRIALS__", "7" );

-

-				currentFavmString = currentFavmString.replace(

-						"__TC1_OBJECTIVE_RATE__", "100" );

-

-				currentFavmString = currentFavmString.replace(

-						"__TC1_OBJECTIVE_REST__", "0" );

-

-				currentFavmString = currentFavmString.replace(

-						"__TC1_DIRECTIVE_TRACE_HEURISTIC__", "SMART" );

-

-				currentFavmString = currentFavmString.replace(

-						"__TC1_DIRECTIVE_TRACE_COUNT_LIMIT__", "8" );

-

-				currentFavmString = currentFavmString.replace(

-						"__TC1_DIRECTIVE_TRACE_SIZE_LIMIT__", "8" );

-

-				currentFavmString = currentFavmString.replace(

-						"__TC1_COVERAGE_HEIGHT__", "7" );

-

-				currentFavmString = currentFavmString.replace(

-						"__TC1_COVERAGE_HEIGHT_REACHED_LIMIT__", "42" );

-

-				currentFavmString = currentFavmString.replace(

-						"__TC1_HIT_STRONGLY_RANDOM__", "false" );

-

-				currentFavmString = currentFavmString.replace(

-						"__TC1_HIT_STRONGLY_COUNT__", "1" );

-

-				currentFavmString = currentFavmString.replace(

-						"__TC1_HIT_WEAKLY_RANDOM__", "false" );

-

-				currentFavmString = currentFavmString.replace(

-						"__TC1_HIT_WEAKLY_COUNT__", "1" );

-

-				currentFavmString = currentFavmString.replace(

-						"__TC1_HIT_OTHER_RANDOM__", "false" );

-

-				currentFavmString = currentFavmString.replace(

-						"__TC1_HIT_OTHER_COUNT__", "1" );

-			}

-		}

-		else {

-			// Suppression du filtre Transition Coverage en Phase 1

-			//

-			currentFavmString = suppressProcessString(currentFavmString,

-					"//BEGIN_TRANSITION_COVERAGE_PHASE1",

-					"//END_TRANSITION_COVERAGE_PHASE1");

-		}

-		return currentFavmString;

-	}

-

-	private String filterRedundancyPhase1(

-			ILaunchConfiguration configuration, String currentFavmString) {

-		boolean enableInclusion;

-		try {

-			enableInclusion = configuration.getAttribute(

-					ATTR_ENABLED_INCLUSION_CRITERION, false);

-

-			if ( fModelAnalysis.equals(ANALYSIS_PROFILE_MODEL_EXPLORATION)

-				&& enableInclusion ) {

-				currentFavmString = currentFavmString.replace(

-						"//__PHASE1_&filter::redundancy",

-						"&filter::redundancy");

-			}

-			else {

-				// Suppression du filtre Redundancy en Phase 1

-				//

-				currentFavmString = suppressProcessString(currentFavmString,

-						"//BEGIN_REDUNDANCY_PHASE1",

-						"//END_REDUNDANCY_PHASE1");

-			}

-		} catch (CoreException e) {

-			e.printStackTrace();

-		}

-

-		return currentFavmString;

-	}

-

-	private String processHOJPhase1(

-			ILaunchConfiguration configuration, String currentFavmString) {

-		IPreferenceStore prefs = org.eclipse.efm.core.workflow.Activator.getDefault().getPreferenceStore();

-		boolean expertMode = prefs.getBoolean(

-				ToolConstants.PREF_EXPERT_MODE);

-

-		if ( fAnalysisProfile.equals(ANALYSIS_PROFILE_MODEL) &&

-			fModelAnalysis.equals(ANALYSIS_PROFILE_MODEL_COVERAGE_BEHAVIOR)	) {

-			// Mise en oeuvre du process HOJ

-			//

-			currentFavmString = currentFavmString.replace(

-					"//__PHASE1_&process::hit_or_jump",

-					"&process::hit_or_jump");

-

-			if ( expertMode ) {

-				// Option EXPERT au niveau des préférences

-				// On récupère les informations de la page HitOrJump de l'onglet Expert

-				//

-				try {

-					int i;

-					boolean b;

-

-					i = configuration.getAttribute(

-							ATTR_BEHAVIOR_SELECTION_HOJ_BEGIN_STEP, 0);

-					currentFavmString = currentFavmString.replace(

-							"__HOJ1_BEGIN_STEP__", Integer.toString(i) );

-

-					b = configuration.getAttribute(

-							ATTR_BEHAVIOR_SELECTION_HOJ_HEURISTIC, true);

-					currentFavmString = currentFavmString.replace(

-							"__HOJ1_HEURISTIC__", Boolean.toString(b) );

-

-					b = configuration.getAttribute(

-							ATTR_BEHAVIOR_SELECTION_HOJ_STOP, true);

-					currentFavmString = currentFavmString.replace(

-							"__HOJ1_STOP__", Boolean.toString(b) );

-

-					b = configuration.getAttribute(

-							ATTR_BEHAVIOR_SELECTION_HOJ_SLICE, true);

-					currentFavmString = currentFavmString.replace(

-							"__HOJ1_SLICE__", Boolean.toString(b) );

-

-

-					currentFavmString = currentFavmString.replace(

-							"__HOJ1_SEARCH_SCOPE__", configuration.getAttribute(

-								ATTR_BEHAVIOR_SELECTION_HOJ_SEARCH_SCOPE_LOCALLY,

-									false) ? "LOCALLY" : "GLOBALLY" );

-

-					i = configuration.getAttribute(

-							ATTR_BEHAVIOR_SELECTION_HOJ_JUMP_HEIGHT, 6);

-					currentFavmString = currentFavmString.replace(

-							"__HOJ1_JUMP_HEIGHT__", Integer.toString(i) );

-

-					i = configuration.getAttribute(

-							ATTR_BEHAVIOR_SELECTION_HOJ_JUMP_TRIALS_LIMIT, 2);

-					currentFavmString = currentFavmString.replace(

-							"__HOJ1_JUMP_LIMIT__", Integer.toString(i) );

-

-					i = configuration.getAttribute(

-							ATTR_BEHAVIOR_SELECTION_HOJ_HIT_COUNT, 1);

-					currentFavmString = currentFavmString.replace(

-							"__HOJ1_HIT_COUNT__", Integer.toString(i) );

-

-					b = configuration.getAttribute(

-							ATTR_BEHAVIOR_SELECTION_HOJ_HIT_CONSECUTIVE, false);

-					currentFavmString = currentFavmString.replace(

-							"__HOJ1_HIT_CONSECUTIVE__", Boolean.toString(b) );

-

-					b = configuration.getAttribute(

-							ATTR_BEHAVIOR_SELECTION_HOJ_HIT_MAX, false);

-					currentFavmString = currentFavmString.replace(

-							"__HOJ1_HIT_MAX__", Boolean.toString(b) );

-

-					i = configuration.getAttribute(

-							ATTR_BEHAVIOR_SELECTION_HOJ_JUMP_COUNT, 1);

-					currentFavmString = currentFavmString.replace(

-							"__HOJ1_JUMP_COUNT__", Integer.toString(i) );

-

-					b = configuration.getAttribute(

-							ATTR_BEHAVIOR_SELECTION_HOJ_JUMP_SLICE, false);

-					currentFavmString = currentFavmString.replace(

-							"__HOJ1_JUMP_SLICE__", Boolean.toString(b) );

-

-					b = configuration.getAttribute(

-							ATTR_BEHAVIOR_SELECTION_HOJ_SCHEDULER_ORDERED, true);

-					currentFavmString = currentFavmString.replace(

-								"__HOJ1_SCHEDULER__", (b ? "|;|" : "|i|") );

-

-				} catch (CoreException e) {

-					e.printStackTrace();

-				}

-			}

-			else {

-				// Pas d'onglet EXPERT

-				// Le process HitOrJump est paramétré avec les valeurs par défaut

-				//

-				currentFavmString = currentFavmString.replace(

-						"__HOJ1_BEGIN_STEP__", "0" );

-

-				currentFavmString = currentFavmString.replace(

-						"__HOJ1_HEURISTIC__", "true" );

-

-				currentFavmString = currentFavmString.replace(

-						"__HOJ1_STOP__", "true" );

-

-				currentFavmString = currentFavmString.replace(

-						"__HOJ1_SLICE__", "true" );

-

-				currentFavmString = currentFavmString.replace(

-						"__HOJ1_SEARCH_SCOPE__", "LOCALLY" );

-

-				currentFavmString = currentFavmString.replace(

-						"__HOJ1_JUMP_HEIGHT__", "6" );

-

-				currentFavmString = currentFavmString.replace(

-						"__HOJ1_JUMP_LIMIT__", "2" );

-

-				currentFavmString = currentFavmString.replace(

-						"__HOJ1_HIT_COUNT__", "1" );

-

-				currentFavmString = currentFavmString.replace(

-						"__HOJ1_HIT_CONSECUTIVE__", "false" );

-

-				currentFavmString = currentFavmString.replace(

-						"__HOJ1_HIT_MAX__", "false" );

-

-				currentFavmString = currentFavmString.replace(

-						"__HOJ1_JUMP_COUNT__", "1" );

-

-				currentFavmString = currentFavmString.replace(

-						"__HOJ1_JUMP_SLICE__", "false" );

-

-				currentFavmString = currentFavmString.replace(

-						"__HOJ1_SCHEDULER__", "|;|" );

-			}

-		}

-		else {

-			// Suppression du process HOJ en Phase 1

-			//

-			currentFavmString = suppressProcessString(currentFavmString,

-					"//BEGIN_HOJ_PHASE1",

-					"//END_HOJ_PHASE1");

-		}

-		return currentFavmString;

-	}

-

-	private String modeDebug(

-			ILaunchConfiguration configuration, String currentFavmString) {

-		IPreferenceStore prefs = org.eclipse.efm.core.workflow.Activator.getDefault().getPreferenceStore();

-

-		boolean debugOptionMode = prefs.getBoolean(

-				ToolConstants.PREF_DEBUG_OPTIONS);

-

-		if ( debugOptionMode ) {

-			// On récupère les informations de l'onglet Debug

-			//

-			try {

-				if( configuration.getAttribute(

-					ATTR_ENABLED_FIRST_PARSED_MODEL_GRAPHVIZ_GENERATION, false) ) {

-					currentFavmString = currentFavmString.replace(

-							"//__@file_statemachine_graph", "@file");

-					currentFavmString = currentFavmString.replace(

-							"//__PHASE1_&processor::serializer#statemachine",

-							"&processor::serializer#statemachine");

-				}

-				else {

-					// Suppression du filtre Serialize Statemachine en Phase 1

-					//

-					currentFavmString = suppressProcessString(currentFavmString,

-							"//BEGIN_SERIALIZER_STATEMACHINE_PHASE1",

-							"//END_SERIALIZER_STATEMACHINE_PHASE1");

-				}

-				if( configuration.getAttribute(

-					ATTR_ENABLED_FIRST_SYMBEX_OUTPUT_GRAPHVIZ_GENERATION, false) ) {

-					currentFavmString = currentFavmString.replace(

-							"//__@file_phase1_execution_graph", "@file");

-					currentFavmString = currentFavmString.replace(

-							"//__PHASE1_&processor::serializer#execution_graph",

-							"&processor::serializer#execution_graph");

-				}

-				else {

-					// Suppression du filtre Serialize Execution Graph en Phase 1

-					//

-					currentFavmString = suppressProcessString(currentFavmString,

-							"//BEGIN_SERIALIZER_EXECUTION_GRAPH_PHASE1",

-							"//END_SERIALIZER_EXECUTION_GRAPH_PHASE1");

-				}

-				if( configuration.getAttribute(

-					ATTR_ENABLED_SECOND_SYMBEX_OUTPUT_GRAPHVIZ_GENERATION, false) ) {

-					currentFavmString = currentFavmString.replace(

-							"//__@file_phase2_execution_graph", "@file");

-

-					currentFavmString = currentFavmString.replace(

-							"//__PHASE2_&processor::serializer#execution_graph",

-							"&processor::serializer#execution_graph");

-				}

-				else if( fEnableTraceExtension ) {

-					// Suppression du filtre Serialize Execution Graph en Phase 2

-					//

-					currentFavmString = suppressProcessString(currentFavmString,

-							"//BEGIN_SERIALIZER_EXECUTION_GRAPH_PHASE2",

-							"//END_SERIALIZER_EXECUTION_GRAPH_PHASE2");

-				}

-

-				currentFavmString = currentFavmString.replace(

-						"__CONSOLE_TRACE_LEVEL__",

-						configuration.getAttribute(

-								ATTR_CONSOLE_LOG_VERBOSE_LEVEL, "MINIMUM"));

-

-				//System.out.println("ATTR_ENABLED_DEVELOPER_TUNING:> " +

-				//		configuration.getAttribute(

-//								ATTR_ENABLED_DEVELOPER_TUNING, false) );

-				if ( configuration.getAttribute(

-						ATTR_ENABLED_DEVELOPER_TUNING, false) ) {

-					currentFavmString = currentFavmString.replace(

-							"//__@log =", "@log =");

-

-					currentFavmString = currentFavmString.replace(

-							"__AVM_LOG__",

-							configuration.getAttribute(

-									ATTR_DEVELOPER_TUNING_LOG_FILENAME,

-									"avm.log"));

-

-					currentFavmString = currentFavmString.replace(

-							"//__@debug =", "@debug =");

-

-					currentFavmString = currentFavmString.replace(

-							"__AVM_TRACE__",

-							configuration.getAttribute(

-									ATTR_DEVELOPER_TUNING_DEBUG_FILENAME,

-									"avm.trace"));

-

-					currentFavmString = currentFavmString.replace(

-							"__TRACE_LEVEL__",

-							configuration.getAttribute(

-									ATTR_DEVELOPER_TUNING_DEBUG_LEVEL, "LOW"));

-

-					if ( configuration.getAttribute(

-							ATTR_ENABLED_TRACE_PARSING, false) ) {

-						currentFavmString = currentFavmString.replace(

-								"//__@kind = 'PARSING';",

-								"@kind = 'PARSING';");

-					}

-					if ( configuration.getAttribute(

-							ATTR_ENABLED_TRACE_COMPILING, false) ) {

-						currentFavmString = currentFavmString.replace(

-								"//__@kind = 'COMPILING';",

-								"@kind = 'COMPILING';");

-					}

-					if ( configuration.getAttribute(

-							ATTR_ENABLED_TRACE_COMPUTING, false) ) {

-						currentFavmString = currentFavmString.replace(

-								"//__@kind = 'COMPUTING';",

-								"@kind = 'COMPUTING';");

-					}

-					if ( configuration.getAttribute(

-							ATTR_ENABLED_TRACE_ALL_PROCESS_STAGE, false) ) {

-						currentFavmString = currentFavmString.replace(

-								"//__@kind = 'ALL_PROCESS_STAGE';",

-								"@kind = 'ALL_PROCESS_STAGE';");

-					}

-					if ( configuration.getAttribute(

-							ATTR_ENABLED_TRACE_PROGRAM, false) ) {

-						currentFavmString = currentFavmString.replace(

-								"//__@kind = 'PROGRAM';",

-								"@kind = 'PROGRAM';");

-					}

-					if ( configuration.getAttribute(

-							ATTR_ENABLED_TRACE_STATEMENT_ASSIGNMENT, false) ) {

-						currentFavmString = currentFavmString.replace(

-								"//__@kind = 'STMNT_ASSIGN';",

-								"@kind = 'STMNT_ASSIGN';");

-					}

-					if ( configuration.getAttribute(

-							ATTR_ENABLED_TRACE_STATEMENT, false) ) {

-						currentFavmString = currentFavmString.replace(

-								"//__@kind = 'STATEMENT';",

-								"@kind = 'STATEMENT';");

-					}

-					if ( configuration.getAttribute(

-							ATTR_ENABLED_TRACE_BYTECODE, false) ) {

-						currentFavmString = currentFavmString.replace(

-								"//__@kind = 'BYTECODE';",

-								"@kind = 'BYTECODE';");

-					}

-					if ( configuration.getAttribute(

-							ATTR_ENABLED_TRACE_STATEMENT_COMMUNICATION, false) ) {

-						currentFavmString = currentFavmString.replace(

-								"//__@kind = 'STMNT_COM';",

-								"@kind = 'STMNT_COM';");

-					}

-					if ( configuration.getAttribute(

-							ATTR_ENABLED_TRACE_SOLVING, false) ) {

-						currentFavmString = currentFavmString.replace(

-								"//__@kind = 'SOLVING';",

-								"@kind = 'SOLVING';");

-					}

-					if ( configuration.getAttribute(

-							ATTR_ENABLED_TRACE_DATA, false) ) {

-						currentFavmString = currentFavmString.replace(

-								"//__@kind = 'DATA';",

-								"@kind = 'DATA';");

-					}

-					if ( configuration.getAttribute(

-							ATTR_ENABLED_TRACE_REPORTING, false) ) {

-						currentFavmString = currentFavmString.replace(

-								"//__@kind = 'REPORTING';",

-								"@kind = 'REPORTING';");

-					}

-					if ( configuration.getAttribute(

-							ATTR_ENABLED_TRACE_CONFIGURING, false) ) {

-						currentFavmString = currentFavmString.replace(

-								"//__@kind = 'CONFIGURING';",

-								"@kind = 'CONFIGURING';");

-					}

-					if ( configuration.getAttribute(

-							ATTR_ENABLED_TRACE_REDUNDANCE, false) ) {

-						currentFavmString = currentFavmString.replace(

-								"//__@kind = 'REDUNDANCE';",

-								"@kind = 'REDUNDANCE';");

-					}

-					if ( configuration.getAttribute(

-							ATTR_ENABLED_TRACE_TRACE, false) ) {

-						currentFavmString = currentFavmString.replace(

-								"//__@kind = 'TRACE';",

-								"@kind = 'TRACE';");

-					}

-				}

-				else {

-					currentFavmString = currentFavmString.replace(

-							"__TRACE_LEVEL__", "ZERO");

-				}

-

-				//System.out.println("ATTR_ENABLED_OUTPUT_FILES_1:> " +

-				//		configuration.getAttribute(ATTR_ENABLED_OUTPUT_FILES_1, false) );

-				if( configuration.getAttribute(

-					ATTR_ENABLED_FIRST_COMPILED_MODEL_TEXTUAL_GENERATION, false) ) {

-					currentFavmString = currentFavmString.replace(

-							"//__PHASE1_@executable =", "@executable =");

-

-					currentFavmString = currentFavmString.replace(

-						"__PHASE1_EXE__",

-						configuration.getAttribute(

-							ATTR_FIRST_COMPILED_MODEL_TEXTUAL_FILENAME,

-							"phase1.fexe"));

-				}

-

-				if( configuration.getAttribute(

-					ATTR_ENABLED_FIRST_SYMBEX_OUTPUT_TEXTUAL_GENERATION, false) ) {

-					currentFavmString = currentFavmString.replace(

-							"//__PHASE1_@scenarii =", "@scenarii =");

-

-					currentFavmString = currentFavmString.replace(

-						"__PHASE1_FSCN__",

-						configuration.getAttribute(

-							ATTR_FIRST_SYMBEX_OUTPUT_TEXTUAL_FILENAME,

-							DEFAULT_FIRST_SYMBEX_OUTPUT_TEXTUAL_FILENAME));

-				}

-

-				//System.out.println("ATTR_ENABLED_OUTPUT_FILES_2:> " +

-				//		configuration.getAttribute(

-//								ATTR_ENABLED_OUTPUT_FILES_2, false) );

-				if( configuration.getAttribute(

-					ATTR_ENABLED_SECOND_COMPILED_MODEL_TEXTUAL_GENERATION, false) ) {

-					currentFavmString = currentFavmString.replace(

-							"//__PHASE2_@executable =", "@executable =");

-					currentFavmString = currentFavmString.replace(

-						"__PHASE2_EXE__",

-						configuration.getAttribute(

-							ATTR_ENABLED_SECOND_COMPILED_MODEL_TEXTUAL_GENERATION,

-							"phase2.fexe"));

-				}

-

-				if( configuration.getAttribute(

-					ATTR_ENABLED_SECOND_SYMBEX_OUTPUT_TEXTUAL_GENERATION, false) ) {

-					currentFavmString = currentFavmString.replace(

-							"//__PHASE2_@scenarii =", "@scenarii =");

-

-					currentFavmString = currentFavmString.replace(

-						"__PHASE2_FSCN__",

-						configuration.getAttribute(

-							ATTR_SECOND_SYMBEX_OUTPUT_TEXTUAL_FILENAME,

-							DEFAULT_SECOND_SYMBEX_OUTPUT_TEXTUAL_FILENAME));

-				}

-			} catch (CoreException e) {

-				e.printStackTrace();

-			}

-		}

-		else {

-			// Pas d'option DEBUG au niveau des préférences

-			//

-			currentFavmString = currentFavmString.replace(

-					"__CONSOLE_TRACE_LEVEL__", "MINIMUM");

-

-			currentFavmString = currentFavmString.replace(

-					"__TRACE_LEVEL__", "ZERO");

-		}

-		return currentFavmString;

-	}

-

-//	 private static String suppressProcessString(

-//			String input, String beginString, String endString){

-//		 int firstPos = input.indexOf(beginString) + beginString.length();

-//		 int lastPos = input.indexOf(endString);

-//		 String result = input.substring(0,firstPos) + "\n" +

-//				input.substring(lastPos, input.length());

-//		 return result;

-//	 }

-

-

-	private static String parseFormatTrace(String traceText, String tab) {

-		String[] traceList = traceText.trim().split(";|\\R");

-		StringBuffer buffer = new StringBuffer();

-		int pos;

-		String kind;

-		String value;

-		for (String element : traceList) {

-			element = element.toString();

-			if( element.isEmpty() ) {

-				continue;

-			}

-			else if( element.startsWith("//") ) {

-				buffer.append( tab )

-					.append( element ).append( "\n" );

-			}

-			else if( (pos = element.indexOf('=')) > 0 ) {

-				kind = element.substring(0, pos).trim();

-				value = element.substring(pos+1).trim();

-

-				buffer.append( tab ).append("@").append( kind ).append(" = ");

-

-				if( value.isEmpty() ) {

-					buffer.append("\"\";\n" );

-				}

-				else if( (value.startsWith("\"") && value.endsWith("\""))

-						|| (value.startsWith("'") && value.endsWith("'")) ) {

-					buffer.append( value ).append( ";\n" );

-				}

-				else {

-					buffer.append("\"").append( value ).append( "\";\n" );

-				}

-			}

-			else {

-				buffer.append( tab ).append("//")

-					.append( element ).append( "\n" );

-			}

-		}

-

-		return buffer.toString();

-	}

-

-

-	 private static String suppressProcessString(

-			 String input, String beginString, String endString){

-		 int firstPos = input.indexOf(beginString);

-		 int lastPos = input.indexOf(endString) + endString.length() + 2;

-		 String result = input.substring(0,firstPos) +

-				 input.substring(lastPos, input.length());

-

-		 return result;

-

-//		 int firstPos = input.indexOf(beginString);

-//		 if( firstPos > 0 ) {

-//			 int lastPos = input.indexOf(endString) + endString.length() + 2;

-//			 if( lastPos > firstPos ) {

-//				 String result = input.substring(0,firstPos) +

-//		 				input.substring(lastPos, input.length());

-//				 return result;

-//			 }

-//		 }

-//		 return input;

-	 }

-

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/handlers/GraphVizHandler.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/handlers/GraphVizHandler.java
deleted file mode 100644
index 4172739..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/handlers/GraphVizHandler.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration.handlers;

-

-import java.io.File;

-

-import org.eclipse.core.commands.AbstractHandler;

-import org.eclipse.core.commands.ExecutionEvent;

-import org.eclipse.core.commands.ExecutionException;

-import org.eclipse.core.resources.IFile;

-import org.eclipse.core.resources.ResourcesPlugin;

-import org.eclipse.efm.core.workflow.Activator;

-import org.eclipse.jface.dialogs.MessageDialog;

-import org.eclipse.jface.viewers.ISelection;

-import org.eclipse.jface.viewers.IStructuredSelection;

-import org.eclipse.ui.IEditorInput;

-import org.eclipse.ui.IFileEditorInput;

-import org.eclipse.ui.IWorkbenchWindow;

-import org.eclipse.ui.handlers.HandlerUtil;

-

-public class GraphVizHandler extends AbstractHandler {

-

-	@Override

-	public Object execute(ExecutionEvent event) throws ExecutionException {

-		IWorkbenchWindow window = HandlerUtil.getActiveWorkbenchWindowChecked(event);

-		ISelection selection = window.getSelectionService().getSelection();

-

-		IFile gvFile = null;

-

-		if( selection instanceof IStructuredSelection ) {

-			Object selObj =((IStructuredSelection) selection).getFirstElement();

-			if( selObj instanceof IFile ) {

-				gvFile = (IFile) selObj;

-			}

-		}

-		else {

-			IEditorInput editorInput = HandlerUtil.getActiveEditorInput(event);

-			if( editorInput instanceof IFileEditorInput ) {

-				gvFile = ((IFileEditorInput) editorInput).getFile();

-

-				if( ! Util.isGraphizFile(gvFile) )

-				{

-					gvFile = null;

-				}

-			}

-		}

-

-		if( gvFile != null ) {

-			if( Activator.hasExternalDotGraphViewerPath() ) {

-				try {

-					String[] cmdLine = {

-							Activator.strExternalDotGraphViewerPath(),

-							gvFile.getLocation().toOSString()

-						};

-

-					File workingDir = ResourcesPlugin.getWorkspace().

-							getRoot().getLocation().toFile();

-

-					Process viewerProcess = Runtime.getRuntime().

-							exec(cmdLine, null, workingDir);

-

-					if( viewerProcess == null ) {

-						System.out.println(event.toString());

-					}

-				}

-				catch(Exception e)

-				{

-					e.printStackTrace();

-				}

-			}

-			else {

-				MessageDialog.openWarning(

-						window.getShell(), "Preference Warning",

-						"Set GraphViz viewer tools preference property");

-			}

-		}

-

-		return null;

-	}

-

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/handlers/RunSewHandler.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/handlers/RunSewHandler.java
deleted file mode 100644
index c89219d..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/handlers/RunSewHandler.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration.handlers;

-

-import org.eclipse.core.commands.AbstractHandler;

-import org.eclipse.core.commands.ExecutionEvent;

-import org.eclipse.core.commands.ExecutionException;

-import org.eclipse.core.resources.IFile;

-import org.eclipse.efm.runconfiguration.job.RunSewFactory;

-import org.eclipse.jface.viewers.ISelection;

-import org.eclipse.jface.viewers.IStructuredSelection;

-import org.eclipse.ui.IEditorInput;

-import org.eclipse.ui.IFileEditorInput;

-import org.eclipse.ui.IWorkbenchWindow;

-import org.eclipse.ui.handlers.HandlerUtil;

-

-public class RunSewHandler extends AbstractHandler {

-

-	@Override

-	public Object execute(ExecutionEvent event) throws ExecutionException {

-		IWorkbenchWindow window = HandlerUtil.getActiveWorkbenchWindowChecked(event);

-		ISelection selection = window.getSelectionService().getSelection();

-

-		IFile sewFile = null;

-

-		IEditorInput editorInput = HandlerUtil.getActiveEditorInput(event);

-		if( editorInput instanceof IFileEditorInput ) {

-			sewFile = ((IFileEditorInput) editorInput).getFile();

-

-			if( ! Util.isWorkflowFile(sewFile) )

-			{

-				sewFile = null;

-			}

-		}

-

-		if( (sewFile == null ) &&

-			(selection instanceof IStructuredSelection) ) {

-			Object selObj =((IStructuredSelection) selection).getFirstElement();

-			if( selObj instanceof IFile ) {

-				sewFile = (IFile) selObj;

-			}

-		}

-

-		if( sewFile != null ) {

-

-			if( ! RunSewFactory.run(window, sewFile) ) {

-				//!!! ERROR

-			}

-		}

-

-

-		return null;

-	}

-

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/handlers/RunSewToolsHandler.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/handlers/RunSewToolsHandler.java
deleted file mode 100644
index 4b72df8..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/handlers/RunSewToolsHandler.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration.handlers;

-

-import java.io.File;

-

-import org.eclipse.core.commands.AbstractHandler;

-import org.eclipse.core.commands.ExecutionEvent;

-import org.eclipse.core.commands.ExecutionException;

-import org.eclipse.core.resources.IFile;

-import org.eclipse.core.resources.ResourcesPlugin;

-import org.eclipse.efm.core.workflow.Activator;

-import org.eclipse.efm.runconfiguration.job.RunSewFactory;

-import org.eclipse.jface.dialogs.MessageDialog;

-import org.eclipse.jface.viewers.ISelection;

-import org.eclipse.jface.viewers.IStructuredSelection;

-import org.eclipse.ui.IEditorInput;

-import org.eclipse.ui.IFileEditorInput;

-import org.eclipse.ui.IWorkbenchWindow;

-import org.eclipse.ui.handlers.HandlerUtil;

-

-public class RunSewToolsHandler extends AbstractHandler {

-

-	/**

-	 * Used last valid selection if current selection is invalid

-	 */

-	private IFile fLastSelectionFile = null;

-

-	/**

-	 * executeWorkflow

-	 * @param event

-	 * @return

-	 */

-	private Object executeWorkflow(ExecutionEvent event,

-			IWorkbenchWindow window, IFile sewFile) {

-

-		fLastSelectionFile = sewFile;

-

-		if( ! RunSewFactory.run(window, sewFile) ) {

-			//!!! ERROR

-		}

-

-		return null;

-	}

-

-	/**

-	 * executeGraphiz

-	 * @param window

-	 * @param aFile

-	 * @return

-	 */

-	private Object executeGraphiz(ExecutionEvent event,

-			IWorkbenchWindow window, IFile gvFile) {

-

-		fLastSelectionFile = gvFile;

-

-		if( Activator.hasExternalDotGraphViewerPath() ) {

-			try {

-				String[] cmdLine = {

-						Activator.strExternalDotGraphViewerPath(),

-						gvFile.getLocation().toOSString()

-					};

-

-				File workingDir = ResourcesPlugin.getWorkspace().

-						getRoot().getLocation().toFile();

-

-				Process viewerProcess = Runtime.getRuntime().

-						exec(cmdLine, null, workingDir);

-

-				if( viewerProcess == null ) {

-					System.out.println(event.toString());

-				}

-			}

-			catch(Exception e)

-			{

-				e.printStackTrace();

-			}

-		}

-		else {

-			MessageDialog.openWarning(

-					window.getShell(), "Preference Warning",

-					"Set GraphViz viewer tools preference property");

-		}

-

-		return null;

-	}

-

-

-	@Override

-	public Object execute(ExecutionEvent event) throws ExecutionException {

-		IWorkbenchWindow window = HandlerUtil.getActiveWorkbenchWindowChecked(event);

-		ISelection selection = window.getSelectionService().getSelection();

-

-		if( selection instanceof IStructuredSelection ) {

-			Object selObj =((IStructuredSelection) selection).getFirstElement();

-			if( selObj instanceof IFile ) {

-				IFile selectedFile = (IFile) selObj;

-

-				if( Util.isWorkflowFile(selectedFile) )

-				{

-					return( executeWorkflow(event, window, selectedFile) );

-				}

-				else if( Util.isGraphizFile(selectedFile) ) {

-					return( executeGraphiz(event, window, selectedFile) );

-				}

-			}

-		}

-

-		IEditorInput editorInput = HandlerUtil.getActiveEditorInput(event);

-		if( editorInput instanceof IFileEditorInput ) {

-			IFile selectedFile = ((IFileEditorInput) editorInput).getFile();

-

-			if( Util.isWorkflowFile(selectedFile) )

-			{

-				return( executeWorkflow(event, window, selectedFile) );

-			}

-			else if( Util.isGraphizFile(selectedFile) ) {

-				return( executeGraphiz(event, window, selectedFile) );

-			}

-		}

-

-

-		if( (fLastSelectionFile != null) && fLastSelectionFile.exists() ) {

-			if( Util.isWorkflowFile(fLastSelectionFile) )

-			{

-				return( executeWorkflow(event, window, fLastSelectionFile) );

-			}

-			else if( Util.isGraphizFile(fLastSelectionFile) ) {

-				return( executeGraphiz(event, window, fLastSelectionFile) );

-			}

-		}

-

-		return null;

-	}

-

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/handlers/Util.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/handlers/Util.java
deleted file mode 100644
index 85ca36e..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/handlers/Util.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr

- *   - Initial API and Implementation

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration.handlers;

-

-import org.eclipse.core.resources.IFile;

-

-public class Util {

-

-	/**

-	 * isWorkflowFile

-	 * @param aFile

-	 * @return

-	 */

-	public static boolean isWorkflowFile(IFile aFile) {

-		return( aFile.getFileExtension().endsWith("sew")

-			|| aFile.getFileExtension().endsWith("favm") );

-	}

-

-

-	/**

-	 * isGraphizFile

-	 * @param aFile

-	 * @return

-	 */

-	public static boolean isGraphizFile(IFile aFile) {

-		return( aFile.getFileExtension().endsWith("gv") );

-	}

-

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/job/RunSewFactory.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/job/RunSewFactory.java
deleted file mode 100644
index 6c54503..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/job/RunSewFactory.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration.job;

-

-import org.eclipse.core.resources.IFile;

-import org.eclipse.core.resources.IResource;

-import org.eclipse.ui.IWorkbenchWindow;

-

-public class RunSewFactory {

-

-	public static boolean run(IWorkbenchWindow window, String jobName,

-			IFile sewFile, IResource selectedResource) {

-		if( sewFile != null ) {

-			try {

-				SewJob job = new SewJob(window, jobName,

-						sewFile, selectedResource);

-

-				job.setUser(true);

-				job.schedule();

-

-				return( true );

-			}

-			catch(Exception e) {

-				e.printStackTrace();

-			}

-		}

-

-		return( false );

-	}

-

-	public static boolean run(IWorkbenchWindow window, IFile sewFile) {

-		return run(window, "Symbolic Execution Workflow job", sewFile, sewFile);

-	}

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/job/SewJob.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/job/SewJob.java
deleted file mode 100644
index d69057f..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/job/SewJob.java
+++ /dev/null
@@ -1,334 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration.job;

-

-import java.io.BufferedReader;

-import java.io.File;

-import java.io.InputStream;

-import java.io.InputStreamReader;

-import java.util.HashMap;

-import java.util.Map;

-

-import org.eclipse.core.resources.IFile;

-import org.eclipse.core.resources.IResource;

-import org.eclipse.core.resources.ResourcesPlugin;

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.core.runtime.IProgressMonitor;

-import org.eclipse.core.runtime.IStatus;

-import org.eclipse.core.runtime.NullProgressMonitor;

-import org.eclipse.core.runtime.Status;

-import org.eclipse.core.runtime.jobs.Job;

-import org.eclipse.efm.core.workflow.Activator;

-import org.eclipse.jface.dialogs.MessageDialog;

-import org.eclipse.ui.IWorkbenchWindow;

-import org.eclipse.ui.PartInitException;

-import org.eclipse.ui.console.ConsolePlugin;

-import org.eclipse.ui.console.IConsole;

-import org.eclipse.ui.console.IConsoleConstants;

-import org.eclipse.ui.console.IConsoleManager;

-import org.eclipse.ui.console.IConsoleView;

-import org.eclipse.ui.console.MessageConsole;

-import org.eclipse.ui.console.MessageConsoleStream;

-

-public class SewJob extends Job {

-	private IWorkbenchWindow fWindow;

-

-	protected String fFileParameterLocation;

-	protected IConsoleView fConsoleView;

-	private ProcessBuilder avmProcessBuilder;

-	private Process avmProcess;

-	private IResource fResource;

-

-	static Map<IResource, MessageConsole> fTableOfConsole =

-			new HashMap<IResource, MessageConsole>();

-	protected MessageConsole mc;

-	protected MessageConsoleStream mcs;

-

-	String SEW_EXE = Activator.strDiversityAvmExecLocation();

-

-	/**

-	 * Some useful colors.

-	 */

-//	private static final Color RED =

-//			Display.getCurrent().getSystemColor(SWT.COLOR_RED);

-

-	public SewJob(IWorkbenchWindow window, String name,

-			IFile sewFile, IResource resource) {

-		super(name);

-

-		this.fWindow = window;

-

-		this.fFileParameterLocation = sewFile.getLocation().toOSString();

-		this.fResource = resource;

-

-		createConsole(sewFile, "Diversity Console");

-

-		IConsoleView fConsoleView;

-		try {

-			fConsoleView = (IConsoleView) fWindow.getActivePage().

-					showView(IConsoleConstants.ID_CONSOLE_VIEW);

-			fConsoleView.display(mc);

-		}

-		catch (PartInitException e) {

-			e.printStackTrace();

-		}

-	}

-

-	public SewJob(IWorkbenchWindow window, String name,

-			String sewExecutable, IFile sewFile, IResource resource) {

-		this(window, name, sewFile, resource);

-

-		SEW_EXE = sewExecutable;

-	}

-

-

-	@Override

-	public IStatus run(IProgressMonitor monitor) {

-		monitor.beginTask("Diversity", IProgressMonitor.UNKNOWN);

-

-		/*

-		 * DIVERSITY Symbex Execution

-		 */

-		try {

-			File execFile;

-			if( (SEW_EXE == null) || SEW_EXE.isEmpty() )

-			{

-				MessageDialog.openWarning(fWindow.getShell(),

-						"DIVERSITY Symbex (a.k.a AVM) executable",

-						"Unfound exectable!" +

-						"\nSee 'Symbolic Execution Workflow' Preference page.");

-

-				return Status.CANCEL_STATUS;

-			}

-			else if( ! (execFile = new File(SEW_EXE)).canExecute() )

-			{

-				String errorMessage;

-				if( ! execFile.exists() ) {

-					errorMessage = "doesn't exist!";

-				}

-				else if( ! execFile.isFile() ) {

-					errorMessage = "exists but is not a file!";

-				}

-				else {

-					errorMessage = "is a file but not an executable!";

-				}

-

-				mcs.print( "error:> The DIVERSITY Symbex "

-						+ "(a.k.a AVM) executable << " );

-				mcs.print( SEW_EXE );

-				mcs.print(" >> ");

-				mcs.println( errorMessage );

-

-				MessageDialog.openError(fWindow.getShell(),

-						"DIVERSITY Symbex (a.k.a AVM) executable",

-						"'" + SEW_EXE + "'" +

-						"\nThese resource " + errorMessage +

-						"\nSee 'Symbolic Execution Workflow' Preference page.");

-

-

-				return Status.CANCEL_STATUS;

-			}

-

-			String[] cmdLine = { SEW_EXE , fFileParameterLocation , "--server" };

-			File workingDir = ResourcesPlugin

-					.getWorkspace().getRoot().getLocation().toFile();

-

-// http://labs.excilys.com/2012/06/26/runtime-exec-pour-les-nuls-et-processbuilder/

-// http://imss-www.upmf-grenoble.fr/prevert/Prog/Java/CoursJava/classeRuntimeProcess.html

-

-			avmProcessBuilder = new ProcessBuilder(cmdLine);

-

-			// on mélange les sorties du processus

-			avmProcessBuilder = avmProcessBuilder.redirectErrorStream(true);

-

-			avmProcessBuilder.directory(workingDir);

-

-			avmProcess = avmProcessBuilder.start();

-

-			if( avmProcess == null ) {

-				return Status.CANCEL_STATUS;

-			}

-

-			InputStream inputStream = avmProcess.getInputStream();

-			InputStreamReader inputStreamReader = new InputStreamReader(inputStream);

-			BufferedReader bufferedReader = new BufferedReader(inputStreamReader);

-

-//			InputStream errorStream = avmProcess.getErrorStream();

-//			InputStreamReader errorStreamReader = new InputStreamReader(errorStream);

-//			BufferedReader errorBufferedReader = new BufferedReader(errorStreamReader);

-

-			String traceLine = null;

-

-//			Color mcsOldColor = mcs.getColor();

-

-//			while( ((traceLine = bufferedReader.readLine()) != null) ) {

-			while( true ) {

-				if( bufferedReader.ready() ) {

-					if( (traceLine = bufferedReader.readLine()) != null ) {

-						if( traceLine.indexOf("@cerr:>") >= 0 ) {

-							traceLine = traceLine.replace("@cerr:>", "");

-

-//							synchronized( mcs ) {

-//								mcsOldColor = mcs.getColor();

-//								mcs.setColor(RED);

-

-								mcs.println(traceLine);

-

-//								mcs.setColor(mcsOldColor);

-//							}

-						}

-						else /*synchronized( mcs )*/ {

-							mcs.println(traceLine);

-						}

-

-						if( traceLine.contains(":>bye") ) {

-							break;

-						}

-

-						traceLine = null;

-					}

-					else {

-						break;

-					}

-				}

-

-//				else if( errorBufferedReader.ready() ) {

-//					if( (traceLine = errorBufferedReader.readLine()) != null ) {

-//

-////						synchronized( mcs ) {

-////							mcsOldColor = mcs.getColor();

-////							mcs.setColor(RED);

-//

-//							mcs.println(traceLine);

-//

-////							mcs.setColor(mcsOldColor);

-////						}

-//

-//						if( traceLine.equals(":>bye") ) {

-//							break;

-//						}

-//

-//						traceLine = null;

-//					}

-//					else {

-//						break;

-//					}

-//				}

-//

-				else {

-					try {

-						avmProcess.exitValue();

-						break;

-					}

-					catch( IllegalThreadStateException e ) {

-						//!! NOTHING

-					}

-				}

-

-				if( monitor.isCanceled() ){

-					avmProcess.destroy();

-

-					mcs.println("\n***********************\n" +

-							   	  "* EXECUTION ABORTED ! *\n" +

-							   	  "***********************");

-

-					return Status.CANCEL_STATUS;

-				}

-			}

-

-//			try {

-//				//avmProcess.destroy();

-//

-//				if(avmProcess.waitFor() != 0) {

-//					StringBuffer strBuf = new StringBuffer("\nExit value : ");

-//					strBuf.append(avmProcess.exitValue());

-//					mcs.println(strBuf.toString());

-//					mcs.flush();

-//				}

-//			}

-//			catch(InterruptedException e) {

-//				e.printStackTrace();

-//			}

-

-			return Status.OK_STATUS;

-		}

-		catch(Exception e){

-			e.printStackTrace();

-		}

-		finally {

-			if( avmProcess != null ) {

-				avmProcess.destroy();

-			}

-

-			monitor.done();

-

-			doRefresh();

-		}

-

-		return Status.CANCEL_STATUS;

-	}

-

-	/*

-	 * Refresh the Resource Navigator view

-	 */

-	private void doRefresh() {

-		try {

-			if( fResource != null ) {

-    			if(fResource.getProject().getFolder("OutFiles") == null)

-    			{

-    				fResource.getProject().getFolder(

-    						"OutFiles").create(true,true,null);

-    			}

-

-    			fResource.getProject().refreshLocal(

-    					IResource.DEPTH_INFINITE, new NullProgressMonitor());

-			}

-			else {

-				ResourcesPlugin.getWorkspace().getRoot().refreshLocal(

-						IResource.DEPTH_INFINITE, new NullProgressMonitor());

-			}

-

-			//TODO : placer les fichiers de sortie fraichement

-			// generes dans le folder "Outfiles"

-		}

-		catch(CoreException e) {

-			e.printStackTrace();

-		}

-	}

-

-	/*

-	 * Create a console for this execution...

-	 */

-	private void createConsole(IResource resource, String prompt) {

-	      ConsolePlugin plugin = ConsolePlugin.getDefault();

-	      IConsoleManager conMan = plugin.getConsoleManager();

-

-	      mc = fTableOfConsole.get(resource);

-	      if( mc == null ) {

-		      StringBuffer bufName = new StringBuffer( prompt );

-		      bufName.append("#").append(fTableOfConsole.size())

-		      		.append(":> ").append(resource.getFullPath());

-

-	    	  mc = new MessageConsole(bufName.toString(), null);

-	    	  fTableOfConsole.put(resource, mc);

-

-		      //no console found, so create a new one

-		      conMan.addConsoles(new IConsole[]{mc});

-				mcs = mc.newMessageStream();

-	      }

-	      else {

-	  		mcs = mc.newMessageStream();

-	  		mcs.println("=================================================================================");

-	  		mcs.println("=================================================================================");

-	  		mcs.println("=================================================================================");

-	      }

-	   }

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/job/SupervisorJob.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/job/SupervisorJob.java
deleted file mode 100644
index c6de564..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/job/SupervisorJob.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration.job;

-

-import java.io.BufferedReader;

-import java.io.IOException;

-import java.io.InputStream;

-import java.io.InputStreamReader;

-

-import org.eclipse.core.runtime.IProgressMonitor;

-import org.eclipse.core.runtime.IStatus;

-import org.eclipse.core.runtime.Status;

-import org.eclipse.core.runtime.jobs.Job;

-

-public class SupervisorJob extends Job {

-

-	private Process fJavaProcess;

-

-	InputStream inputStream;

-	InputStreamReader inputStreamReader;

-	BufferedReader bufferedReader;

-

-

-	public SupervisorJob(Process javaProcess) {

-		super("SEW Supervisor");

-

-		this.fJavaProcess = javaProcess;

-

-		inputStream = javaProcess.getInputStream();

-		inputStreamReader = new InputStreamReader(inputStream);

-		bufferedReader = new BufferedReader(inputStreamReader);

-

-

-		try {

-			String traceLine = bufferedReader.readLine();

-			System.out.println("!!!!!!!!!!!!!!!!!!!!!SupervisorJob!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");

-			System.out.println(traceLine); // ne change rien à la console ???????????

-		} catch (IOException e) {

-			// TODO Auto-generated catch block

-			e.printStackTrace();

-		}

-

-	}

-

-	@Override

-	protected IStatus run(IProgressMonitor monitor) {

-

-//		try {

-//			this.wait(1000);

-//		} catch (InterruptedException e) {

-//			// TODO Auto-generated catch block

-//			e.printStackTrace();

-//		}

-//

-//		System.err.println(" TERMINATE !!!" );

-

-		String traceLine = null;

-

-		try {

-			while( true ) {

-				if( bufferedReader.ready() ) {

-					traceLine = bufferedReader.readLine();

-					if( traceLine != null ) {

-						if( traceLine.startsWith("@exit") ||

-							traceLine.contains(":>bye") ) {

-							break;

-						}

-						else {

-							System.out.println(traceLine);

-						}

-					}

-					else {

-						break;

-					}

-				}

-

-				else {

-					try {

-						fJavaProcess.exitValue();

-						break;

-					}

-					catch( IllegalThreadStateException e ) {

-						//!! NOTHING

-					}

-				}

-

-				if( monitor.isCanceled() ) {

-					fJavaProcess.destroy();

-

-					System.out.println("\n***********************\n" +

-							   	  "* EXECUTION ABORTED ! *\n" +

-							   	  "***********************");

-

-					return Status.CANCEL_STATUS;

-				}

-			}

-		} catch (IOException e) {

-			// TODO Auto-generated catch block

-			e.printStackTrace();

-		}

-

-

-		return Status.OK_STATUS;

-	}

-

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/CoreUtil.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/CoreUtil.java
deleted file mode 100644
index 5454461..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/CoreUtil.java
+++ /dev/null
@@ -1,210 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2016 CEA LIST.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.efm.runconfiguration.ui;
-
-import java.io.File;
-import java.util.List;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.variables.IStringVariableManager;
-import org.eclipse.core.variables.VariablesPlugin;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.efm.core.workflow.Activator;
-import org.eclipse.efm.core.workflow.ToolConstants;
-import org.eclipse.osgi.util.NLS;
-
-/**
- * Utilities for external tool launch configurations.
- * <p>
- * This class it not intended to be instantiated.
- * </p>
- * inspired by org.eclipse.core.externaltools.internal.IExternalToolCoreUtil
-*/
-public class CoreUtil implements ToolConstants {
-
-	/**
-	 * Throws a core exception with an error status object built from
-	 * the given message, lower level exception, and error code.
-	 * @param message the status message
-	 * @param exception lower level exception associated with the
-	 *  error, or <code>null</code> if none
-	 * @param code error code
-	 */
-	protected static void abort(String message, Throwable exception, int code) throws CoreException {
-		throw new CoreException(new Status(IStatus.ERROR, ToolConstants.PLUGIN_ID, code, message, exception));
-	}
-
-	/**
-	 * Expands and returns the location attribute of the given launch
-	 * configuration. The location is
-	 * verified to point to an existing file, in the local file system.
-	 *
-	 * @param configuration launch configuration
-	 * @return an absolute path to a file in the local file system
-	 * @throws CoreException if unable to retrieve the associated launch
-	 * configuration attribute, if unable to resolve any variables, or if the
-	 * resolved location does not point to an existing file in the local file
-	 * system
-	 */
-	public static IPath getLocation(ILaunchConfiguration configuration) throws CoreException {
-		String location = null;
-		boolean usedDefault = false;
-
-		try {
-			usedDefault = configuration.getAttribute(
-					ATTR_LAUNCH_AVM_LOCATION_USED_DEFAULT, false);
-
-			if( usedDefault ) {
-				location = Activator.strDiversityAvmExecLocation();
-			}
-			else {
-				location = configuration.getAttribute(
-						ATTR_LAUNCH_AVM_LOCATION, (String)null);
-			}
-		} catch (CoreException e) {
-			//!! NOTHING
-		}
-
-		if( location == null ) {
-			try {
-				List<?> avmLocation = configuration.getAttribute(
-						ToolConstants.ATTR_LAUNCH_AVM_LOCATION_HISTORY,
-						(List<String>)null);
-
-				if( (avmLocation != null) && (! avmLocation.isEmpty()) ) {
-					location = avmLocation.get(0).toString();
-				}
-			} catch (CoreException e) {
-				//!! NOTHING
-			}
-		}
-
-		if( location == null ) {
-			location = Activator.strDiversityAvmExecLocation();
-		}
-
-		if( (location == null) || location.isEmpty() ) {
-			abort(NLS.bind("Avm Executable Location not specified by {0}",
-					new String[] { configuration.getName()}), null, 0);
-		} else {
-			String expandedLocation = getStringVariableManager().
-					performStringSubstitution(location.toString());
-			if (expandedLocation == null || expandedLocation.length() == 0) {
-				String msg = NLS.bind(" The file does not exist for the Avm Executable tool named {0}.",
-						new Object[] { configuration.getName()});
-				abort(msg, null, 0);
-			} else {
-				File file = new File(expandedLocation);
-				if (file.isFile()) {
-					return new Path(expandedLocation);
-				}
-
-				String msg = NLS.bind(" The file does not exist for the Avm Executable tool named {0}.",
-						new Object[] { configuration.getName()});
-				abort(msg, null, 0);
-			}
-		}
-		// execution will not reach here
-		return null;
-	}
-
-
-	/**
-	 * Returns a boolean specifying whether or not output should be captured for
-	 * the given configuration
-	 *
-	 * @param configuration the configuration from which the value will be
-	 * extracted
-	 * @return boolean specifying whether or not output should be captured
-	 * @throws CoreException if unable to access the associated attribute
-	 */
-	public static boolean getCaptureOutput(ILaunchConfiguration configuration) throws CoreException {
-	    return configuration.getAttribute(DebugPlugin.ATTR_CAPTURE_OUTPUT, true);
-	}
-
-	/**
-	 * Expands and returns the working directory attribute of the given launch
-	 * configuration. Returns <code>null</code> if a working directory is not
-	 * specified. If specified, the working is verified to point to an existing
-	 * directory in the local file system.
-	 *
-	 * @param configuration launch configuration
-	 * @return an absolute path to a directory in the local file system, or
-	 * <code>null</code> if unspecified
-	 * @throws CoreException if unable to retrieve the associated launch
-	 * configuration attribute, if unable to resolve any variables, or if the
-	 * resolved location does not point to an existing directory in the local
-	 * file system
-	 */
-	public static IPath getWorkingDirectory(ILaunchConfiguration configuration) throws CoreException {
-		String location = configuration.getAttribute(ToolConstants.ATTR_WORKING_DIRECTORY, (String) null);
-		if (location != null) {
-			String expandedLocation = getStringVariableManager().performStringSubstitution(location);
-			if (expandedLocation.length() > 0) {
-				File path = new File(expandedLocation);
-				if (path.isDirectory()) {
-					return new Path(expandedLocation);
-				}
-				String msg = NLS.bind(" The working directory {0} does not exist for the external tool named {1}.", new Object[] { expandedLocation, configuration.getName()});
-				abort(msg, null, 0);
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Expands and returns the arguments attribute of the given launch
-	 * configuration. Returns <code>null</code> if arguments are not specified.
-	 *
-	 * @param configuration launch configuration
-	 * @return an array of resolved arguments, or <code>null</code> if
-	 * unspecified
-	 * @throws CoreException if unable to retrieve the associated launch
-	 * configuration attribute, or if unable to resolve any variables
-	 */
-	public static String[] getArguments(ILaunchConfiguration configuration) throws CoreException {
-		String args = configuration.getAttribute(ToolConstants.ATTR_TOOL_ARGUMENTS, (String) null);
-		if (args != null) {
-			String expanded = getStringVariableManager().performStringSubstitution(args);
-			return parseStringIntoList(expanded);
-		}
-		return null;
-	}
-
-	private static IStringVariableManager getStringVariableManager() {
-		return VariablesPlugin.getDefault().getStringVariableManager();
-	}
-
-	/**
-	 * Parses the argument text into an array of individual
-	 * strings using the space character as the delimiter.
-	 * An individual argument containing spaces must have a
-	 * double quote (") at the start and end. Two double
-	 * quotes together is taken to mean an embedded double
-	 * quote in the argument text.
-	 *
-	 * @param arguments the arguments as one string
-	 * @return the array of arguments
-	 */
-	public static String[] parseStringIntoList(String arguments) {
-		if (arguments == null || arguments.length() == 0) {
-			return new String[0];
-		}
-		String[] res= DebugPlugin.parseArguments(arguments);
-		return res;
-	}
-
-}
diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/AbstractSewLaunchConfigurationTab.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/AbstractSewLaunchConfigurationTab.java
deleted file mode 100644
index f1e57f1..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/AbstractSewLaunchConfigurationTab.java
+++ /dev/null
@@ -1,133 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial Implementation (tab-based, inserted in Run Configurations dialog)

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - New API (free-composite-based, no type assumptions on parent) 

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration.ui.tabs;

-

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.debug.ui.AbstractLaunchConfigurationTab;

-import org.eclipse.efm.core.workflow.Activator;

-import org.eclipse.efm.runconfiguration.LaunchConfigurationTabGroup;

-import org.eclipse.efm.ui.views.launchconfigurations.components.AbstractCompositeMaker;

-import org.eclipse.efm.ui.views.launchconfigurations.components.AbstractCompositeMaker.FieldValidationReturn;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationGUIelement;

-import org.eclipse.jface.dialogs.IDialogSettings;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.ui.PlatformUI;

-import org.eclipse.ui.dialogs.ContainerSelectionDialog;

-

-public abstract class AbstractSewLaunchConfigurationTab extends AbstractLaunchConfigurationTab implements ILaunchConfigurationGUIelement {

-

-	protected LaunchConfigurationTabGroup fGroupTab;

-	protected AbstractCompositeMaker contentCompositeManager;

-

-	/**

-	 * Constructor

-	 * @param groupTab

-	 */

-	public AbstractSewLaunchConfigurationTab(LaunchConfigurationTabGroup groupTab) {

-		super();

-		this.fGroupTab = groupTab;

-	}

-	

-	public LaunchConfigurationTabGroup getGroupTab() {

-		return fGroupTab;

-	}

-

-	public MainTab getMainTab() {

-		return fGroupTab.getMainTab();

-	}

-

-	@Override

-	public void createControl(Composite parent) {

-		Composite simpleComposite = contentCompositeManager.createControlMain(parent);

-		setControl(simpleComposite);

-		PlatformUI.getWorkbench().getHelpSystem().setHelp(getControl(), getHelpContextId());

-	}

-	

-	

-

-	@Override

-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration) {

-		contentCompositeManager.setDefaultFieldValues(configuration);

-	}

-	

-	@Override

-	public void initializeFrom(ILaunchConfiguration configuration) {

-		contentCompositeManager.initializeFieldValuesFrom(configuration);

-	}

-

-	@Override

-	public void performApply(ILaunchConfigurationWorkingCopy configuration) {

-		contentCompositeManager.applyUpdatesOnFieldValuesFrom(configuration);

-	}

-	

-	/**

-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#isValid(ILaunchConfiguration)

-	 */

-	@Override

-	public boolean isValid(ILaunchConfiguration launchConfig) {

-		FieldValidationReturn fieldValidation = contentCompositeManager.areFieldsValid(launchConfig);

-		if (fieldValidation.areFieldsValid()) {

-			setMessage(fieldValidation.getReason());

-		} else {

-			setErrorMessage(fieldValidation.getReason());

-		}

-		return fieldValidation.areFieldsValid();

-	}

-	

-	

-	/**

-	 * Returns the {@link IDialogSettings} for the given id

-	 *

-	 * @param id the id of the dialog settings to get

-	 * @return the {@link IDialogSettings} to pass into the {@link ContainerSelectionDialog}

-	 * @since 3.6

-	 */

-	public final IDialogSettings getDialogBoundsSettings(String id) {

-		IDialogSettings settings = Activator.getDefault().getDialogSettings();

-		IDialogSettings section = settings.getSection(id);

-		if(section == null) {

-			section = settings.addNewSection(id);

-		}

-		return section;

-	}

-	

-	// ======================================================================================

-	//                              ILaunchConfigurationGUIelement interface methods

-	// ======================================================================================	

-	

-	@Override

-	public void updateGUI() {

-		updateLaunchConfigurationDialog();

-	}	

-	

-	@Override // to change visibility to public

-	public void setMessage(String message){

-		super.setMessage(message);

-	}

-

-	@Override // to change visibility to public

-	public void setWarningMessage(String warningmessage){

-		super.setWarningMessage(warningmessage);

-	}

-	

-	@Override // to change visibility to public

-	public void setErrorMessage(String errormessage){

-		super.setErrorMessage(errormessage);

-	}

-

-	@Override // to change visibility to public

-	public void scheduleUpdateJob(){

-		super.scheduleUpdateJob();

-	}

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/CommonCriteriaTab.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/CommonCriteriaTab.java
deleted file mode 100644
index 8c054cb..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/CommonCriteriaTab.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration.ui.tabs;

-

-import org.eclipse.efm.core.workflow.Activator;

-import org.eclipse.efm.runconfiguration.LaunchConfigurationTabGroup;

-import org.eclipse.efm.ui.views.launchconfigurations.components.CommonCriteriaCompositeMaker;

-import org.eclipse.jface.dialogs.IDialogSettings;

-import org.eclipse.ui.dialogs.ContainerSelectionDialog;

-import org.eclipse.efm.ui.resources.HelpCoReferee;

-

-

-public class CommonCriteriaTab extends AbstractSewLaunchConfigurationTab {

-

-	public CommonCriteriaTab(LaunchConfigurationTabGroup groupTab) {

-		super(groupTab);

-		contentCompositeManager = new CommonCriteriaCompositeMaker(this);

-		setHelpContextId(HelpCoReferee.efm_runconf_commoncriteria_tab);

-	}

-

-	@Override

-	public String getName() {

-		return "Common Criteria";

-	}

-

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/DebugTab.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/DebugTab.java
deleted file mode 100644
index 94e9679..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/DebugTab.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial Implementation (tab-based, inserted in Run Configurations dialog)

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - New API (free-composite-based, no type assumptions on parent) 

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration.ui.tabs;

-

-import org.eclipse.efm.core.workflow.Activator;

-import org.eclipse.efm.runconfiguration.LaunchConfigurationTabGroup;

-import org.eclipse.efm.ui.views.launchconfigurations.components.DebugCompositeMaker;

-import org.eclipse.jface.dialogs.IDialogSettings;

-import org.eclipse.ui.dialogs.ContainerSelectionDialog;

-import org.eclipse.efm.ui.resources.HelpCoReferee;

-

-

-public class DebugTab extends AbstractSewLaunchConfigurationTab {

-

-	public DebugTab(LaunchConfigurationTabGroup groupTab) {

-		super(groupTab);

-		contentCompositeManager = new DebugCompositeMaker(this);

-		setHelpContextId(HelpCoReferee.efm_runconf_debug_tab);

-	}

-

-	@Override

-	public String getName() {

-		return "Debug";

-	}

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/DeveloperTuningTab.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/DeveloperTuningTab.java
deleted file mode 100644
index a1a01a0..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/DeveloperTuningTab.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial Implementation (tab-based, inserted in Run Configurations dialog)

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - New API (free-composite-based, no type assumptions on parent) 

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration.ui.tabs;

-

-import org.eclipse.efm.core.workflow.Activator;

-import org.eclipse.efm.runconfiguration.LaunchConfigurationTabGroup;

-import org.eclipse.efm.ui.views.launchconfigurations.components.DeveloperTuningCompositeMaker;

-import org.eclipse.efm.ui.resources.HelpCoReferee;

-import org.eclipse.jface.dialogs.IDialogSettings;

-import org.eclipse.ui.dialogs.ContainerSelectionDialog;

-

-public class DeveloperTuningTab extends AbstractSewLaunchConfigurationTab {

-

-	public DeveloperTuningTab(LaunchConfigurationTabGroup groupTab) {

-		super(groupTab);

-		contentCompositeManager = new DeveloperTuningCompositeMaker(this);

-		setHelpContextId(HelpCoReferee.efm_runconf_debug_tab);

-	}

-

-	@Override

-	public String getName() {

-		return "Developer";

-	}

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/ExpertTab.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/ExpertTab.java
deleted file mode 100644
index 611cf3f..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/ExpertTab.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial Implementation (tab-based, inserted in Run Configurations dialog)

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - New API (free-composite-based, no type assumptions on parent) 

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration.ui.tabs;

-

-import org.eclipse.efm.runconfiguration.LaunchConfigurationTabGroup;

-import org.eclipse.efm.ui.resources.HelpCoReferee;

-import org.eclipse.efm.ui.views.launchconfigurations.components.ExpertCompositeMaker;

-

-public class ExpertTab extends AbstractSewLaunchConfigurationTab {

-

-	public ExpertTab(LaunchConfigurationTabGroup groupTab) {

-		super(groupTab);

-		contentCompositeManager = new ExpertCompositeMaker(this);

-		setHelpContextId(HelpCoReferee.efm_runconf_expert_tab);

-	}

-

-	@Override

-	public String getName() {

-		return "Expert";

-	}

-

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/MainTab.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/MainTab.java
deleted file mode 100644
index 536f780..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/MainTab.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial Implementation (tab-based, inserted in Run Configurations dialog)

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - New API (free-composite-based, no type assumptions on parent) 

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration.ui.tabs;

-

-import org.eclipse.efm.runconfiguration.LaunchConfigurationTabGroup;

-import org.eclipse.efm.ui.views.launchconfigurations.components.FirstCompositeMaker;

-import org.eclipse.efm.ui.resources.HelpCoReferee;

-

-

-public class MainTab extends AbstractSewLaunchConfigurationTab {

-

-

-

-

-	/**

-	 * Constructor

-	 * @param groupTab

-	 */

-	public MainTab(LaunchConfigurationTabGroup groupTab) {

-		super(groupTab);

-		contentCompositeManager = new FirstCompositeMaker(this);

-		setHelpContextId(HelpCoReferee.efm_runconf_main_tab);

-	}

-

-

-	@Override

-	public String getName() {

-		return "Main";

-	}

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/NonRegressionTab.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/NonRegressionTab.java
deleted file mode 100644
index c31c886..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/NonRegressionTab.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial Implementation (tab-based, inserted in Run Configurations dialog)

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - New API (free-composite-based, no type assumptions on parent) 

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration.ui.tabs;

-

-import java.io.BufferedReader;

-import java.io.FileInputStream;

-import java.io.FileNotFoundException;

-import java.io.IOException;

-import java.io.InputStream;

-import java.io.InputStreamReader;

-import java.util.ArrayList;

-import java.util.List;

-

-import org.eclipse.core.resources.IResource;

-import org.eclipse.core.resources.ResourcesPlugin;

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.core.workflow.Activator;

-import org.eclipse.efm.runconfiguration.LaunchConfigurationTabGroup;

-import org.eclipse.efm.ui.views.editors.impls.BooleanFieldEditor;

-import org.eclipse.efm.ui.views.utils.SWTFactory;

-import org.eclipse.jface.dialogs.Dialog;

-import org.eclipse.jface.dialogs.IDialogSettings;

-import org.eclipse.jface.window.Window;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.accessibility.AccessibleAdapter;

-import org.eclipse.swt.accessibility.AccessibleEvent;

-import org.eclipse.swt.events.ModifyEvent;

-import org.eclipse.swt.events.ModifyListener;

-import org.eclipse.swt.events.SelectionAdapter;

-import org.eclipse.swt.events.SelectionEvent;

-import org.eclipse.swt.events.SelectionListener;

-import org.eclipse.swt.graphics.Rectangle;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.layout.GridLayout;

-import org.eclipse.swt.widgets.Button;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Group;

-import org.eclipse.swt.widgets.Table;

-import org.eclipse.swt.widgets.TableColumn;

-import org.eclipse.swt.widgets.TableItem;

-import org.eclipse.swt.widgets.Text;

-import org.eclipse.ui.PlatformUI;

-import org.eclipse.ui.dialogs.ContainerSelectionDialog;

-import org.eclipse.ui.dialogs.ElementTreeSelectionDialog;

-import org.eclipse.ui.model.WorkbenchContentProvider;

-import org.eclipse.ui.model.WorkbenchLabelProvider;

-import org.eclipse.ui.views.navigator.ResourceComparator;

-

-public class NonRegressionTab extends AbstractSewLaunchConfigurationTab {

-

-	public NonRegressionTab(LaunchConfigurationTabGroup groupTab) {

-		super(groupTab);

-		

-	}

-

-	@Override

-	public String getName() {

-		return "Non Regression";

-	}

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/SymbexRuntimeTab.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/SymbexRuntimeTab.java
deleted file mode 100644
index 865b1db..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/SymbexRuntimeTab.java
+++ /dev/null
@@ -1,1058 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration.ui.tabs;

-

-import java.io.File;

-import java.util.ArrayList;

-import java.util.Arrays;

-import java.util.List;

-

-import org.eclipse.core.filesystem.URIUtil;

-import org.eclipse.core.resources.IContainer;

-import org.eclipse.core.resources.IResource;

-import org.eclipse.core.resources.IWorkspaceRoot;

-import org.eclipse.core.resources.ResourcesPlugin;

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.core.runtime.IPath;

-import org.eclipse.core.runtime.Path;

-import org.eclipse.core.variables.IStringVariableManager;

-import org.eclipse.core.variables.VariablesPlugin;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.debug.ui.AbstractLaunchConfigurationTab;

-import org.eclipse.debug.ui.StringVariableSelectionDialog;

-import org.eclipse.efm.core.workflow.Activator;

-import org.eclipse.efm.core.workflow.ToolConstants;

-import org.eclipse.efm.ui.views.utils.SWTFactory;

-import org.eclipse.jface.dialogs.IDialogConstants;

-import org.eclipse.jface.window.Window;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.accessibility.AccessibleAdapter;

-import org.eclipse.swt.accessibility.AccessibleEvent;

-import org.eclipse.swt.events.ModifyEvent;

-import org.eclipse.swt.events.ModifyListener;

-import org.eclipse.swt.events.SelectionAdapter;

-import org.eclipse.swt.events.SelectionEvent;

-import org.eclipse.swt.events.TraverseEvent;

-import org.eclipse.swt.events.TraverseListener;

-import org.eclipse.swt.graphics.Font;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.layout.GridLayout;

-import org.eclipse.swt.widgets.Button;

-import org.eclipse.swt.widgets.Combo;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Control;

-import org.eclipse.swt.widgets.DirectoryDialog;

-import org.eclipse.swt.widgets.FileDialog;

-import org.eclipse.swt.widgets.Group;

-import org.eclipse.swt.widgets.Label;

-import org.eclipse.swt.widgets.Text;

-import org.eclipse.ui.dialogs.ContainerSelectionDialog;

-import org.eclipse.ui.dialogs.ResourceSelectionDialog;

-

-/**

- * @author lapitre_is148245

- * inspired by org.eclipse.ui.externaltools.internal.launchConfigurations.ExternalToolsMainTab

- */

-public class SymbexRuntimeTab extends AbstractLaunchConfigurationTab

-		implements ToolConstants {

-

-	public final static String FIRST_EDIT = "editedByDiversityAvmTab"; //$NON-NLS-1$

-

-	// Arguments

-	protected Text fArgumentField;

-	protected Button fArgumentVariablesButton;

-

-

-	// Working Directory

-	private Button fWorkingDirectoryWorkspaceButton;

-	private Button fWorkingDirectoryFileSystemButton;

-	private Button fWorkingDirectoryVariablesButton;

-

-	private Button fWorkingDirectoryUseDefaultButton = null;

-	private Text fWorkingDirectoryText = null;

-

-

-	// AVM Location

-	private Button fAvmLocationWorkspaceButton;

-	private Button fAvmLocationFileSystemButton;

-	private Button fAvmLocationVariablesButton;

-

-	private Button fAvmLocationUseDefaultButton = null;

-	private Button fAvmLocationUseOtherButton = null;

-	private Text fAvmLocationDefaultText = null;

-	private Combo fSelectedAvmLocationCombo = null;

-

-	private boolean fUsedDefaultAvmLocation = true;

-	private ArrayList<String> fAvmLocations = null;

-

-	String fGlobalPrefLocation = null;

-

-	/**

-	 * The last launch configuration this tab was initialized from

-	 */

-	private ILaunchConfiguration fLaunchConfiguration;

-

-	protected boolean fInitializing = false;

-	private boolean userEdited = false;

-

-

-	class WidgetListener extends SelectionAdapter implements ModifyListener {

-		public void modifyText(ModifyEvent e) {

-			if ( ! fInitializing ) {

-				setDirty(true);

-				userEdited = true;

-

-				updateLaunchConfigurationDialog();

-			}

-

-			scheduleUpdateJob();

-		}

-

-		public void widgetSelected(SelectionEvent e) {

-			setDirty(true);

-

-			Object source = e.getSource();

-

-			// Project

-			if (source == fArgumentVariablesButton) {

-				handleArgumentVariablesButtonSelected(fArgumentField);

-			}

-

-			// Working Directory

-			else if (source == fWorkingDirectoryWorkspaceButton) {

-				handleWorkingDirectoryWorkspaceBrowseButtonSelected();

-			}

-			else if (source == fWorkingDirectoryFileSystemButton) {

-				handleWorkingDirectoryFileBrowseButtonSelected();

-			}

-			else if (source == fWorkingDirectoryVariablesButton) {

-				handleWorkingDirectoryVariablesButtonSelected();

-			}

-			else if(source == fWorkingDirectoryUseDefaultButton) {

-				//only perform the action if this is the button that was selected

-				handleWorkingDirectoryUseDefaultButtonSelected();

-			}

-

-			// Avm Location

-			else if (e.getSource() == fSelectedAvmLocationCombo) {

-				handleAvmLocationSelectionChange();

-			}

-			else if (source == fAvmLocationWorkspaceButton) {

-				handleAvmLocationWorkspaceBrowseButtonSelected();

-			}

-			else if (source == fAvmLocationFileSystemButton) {

-				handleAvmLocationBrowseButtonSelected();

-			}

-			else if (source == fAvmLocationVariablesButton) {

-				handleAvmLocationVariablesButtonSelected();

-			}

-			else if(source == fAvmLocationUseDefaultButton) {

-				//only perform the action if this is the button that was selected

-

-				fUsedDefaultAvmLocation =

-						fAvmLocationUseDefaultButton.getSelection();

-

-				if( fUsedDefaultAvmLocation ) {

-					setAvmLocationDefaultText();

-				}

-			}

-			else if(source == fAvmLocationUseOtherButton) {

-				//only perform the action if this is the button that was selected

-				if(fAvmLocationUseOtherButton.getSelection()) {

-					handleAvmLocationUseOtherButtonSelected(true);

-

-					fUsedDefaultAvmLocation = false;

-				}

-				else {

-					fUsedDefaultAvmLocation = true;

-				}

-			}

-		}

-	}

-

-	private WidgetListener fListener = new WidgetListener();

-

-

-

-

-	public SymbexRuntimeTab() {

-		fGlobalPrefLocation = Activator.strDiversityAvmExecLocation();

-

-//		System.out.println( Activator.strDiversityAvmExecLocation() );

-

-		fAvmLocations = new ArrayList<>();

-	}

-

-

-	@Override

-	public String getName() {

-		return "&Symbex-Runtime";

-	}

-

-

-//	@Override

-//	public Image getImage() {

-//		return JavaUI.getSharedImages().getImage(ISharedImages.IMG_OBJS_LIBRARY);

-//	}

-

-

-	////////////////////////////////////////////////////////////////////////////

-	// Argument

-	////////////////////////////////////////////////////////////////////////////

-	private void handleArgumentVariablesButtonSelected(Text textField) {

-		String variable = getVariable();

-		if (variable != null) {

-			textField.insert(variable);

-		}

-	}

-

-	private String getVariable() {

-		StringVariableSelectionDialog dialog =

-				new StringVariableSelectionDialog(getShell());

-		dialog.open();

-		return dialog.getVariableExpression();

-	}

-

-

-	////////////////////////////////////////////////////////////////////////////

-	// WorkingDirectory

-	////////////////////////////////////////////////////////////////////////////

-	/**

-	 * Show a dialog that lets the user select a working directory

-	 */

-	private void handleWorkingDirectoryFileBrowseButtonSelected() {

-		DirectoryDialog dialog = new DirectoryDialog(getShell());

-		dialog.setMessage("Select a working directory for the launch configuration:");

-		String currentWorkingDir = getWorkingDirectoryText();

-		if (!currentWorkingDir.trim().equals("")) { //$NON-NLS-1$

-			File path = new File(currentWorkingDir);

-			if (path.exists()) {

-				dialog.setFilterPath(currentWorkingDir);

-			}

-		}

-		String selectedDirectory = dialog.open();

-		if (selectedDirectory != null) {

-			fWorkingDirectoryText.setText(selectedDirectory);

-		}

-	}

-

-	/**

-	 * Show a dialog that lets the user select a working directory from

-	 * the workspace

-	 */

-	private void handleWorkingDirectoryWorkspaceBrowseButtonSelected() {

-	    IContainer currentContainer= getContainer();

-		if (currentContainer == null) {

-		    currentContainer = ResourcesPlugin.getWorkspace().getRoot();

-		}

-		ContainerSelectionDialog dialog = new ContainerSelectionDialog(getShell(),

-				currentContainer, false,

-				"Select a working directory for the launch configuration:");

-		dialog.showClosedProjects(false);

-		dialog.open();

-		Object[] results = dialog.getResult();

-		if ((results != null) && (results.length > 0) && (results[0] instanceof IPath)) {

-			IPath path = (IPath)results[0];

-			String containerName = path.makeRelative().toString();

-

-			setWorkingDirectoryText("${workspace_loc:" + containerName + "}"); //$NON-NLS-1$ //$NON-NLS-2$

-		}

-	}

-

-	/**

-	 * Returns the selected workspace container or <code>null</code>

-	 * @return the selected workspace container or <code>null</code>

-	 */

-	protected IContainer getContainer() {

-		String path = getWorkingDirectoryText();

-		if (path.length() > 0) {

-		    IResource res = null;

-		    IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();

-		    if (path.startsWith("${workspace_loc:")) { //$NON-NLS-1$

-		        IStringVariableManager manager =

-		        		VariablesPlugin.getDefault().getStringVariableManager();

-			    try {

-                    path = manager.performStringSubstitution(path, false);

-                    IPath uriPath = new Path(path).makeAbsolute();

-                    IContainer[] containers =

-                    		root.findContainersForLocationURI(URIUtil.toURI(uriPath));

-                    if (containers.length > 0) {

-                        res = containers[0];

-                    }

-                }

-			    catch (CoreException e) {

-					e.printStackTrace();

-			    }

-			}

-		    else {

-				res = root.findMember(path);

-			}

-			if (res instanceof IContainer) {

-				return (IContainer)res;

-			}

-		}

-		return null;

-	}

-

-	/**

-	 * The default working dir radio button has been selected.

-	 */

-	private void handleWorkingDirectoryUseDefaultButtonSelected() {

-		if( fWorkingDirectoryUseDefaultButton.getSelection() ) {

-			setWorkingDirectoryDefaultText();

-

-			setEnabledWorkingDirectoryComponent( false );

-		}

-		else {

-			setEnabledWorkingDirectoryComponent( true );

-		}

-	}

-

-	private void setEnabledWorkingDirectoryComponent(boolean enabledFlag) {

-		fWorkingDirectoryText.setEnabled(enabledFlag);

-

-		fWorkingDirectoryWorkspaceButton.setEnabled(enabledFlag);

-		fWorkingDirectoryVariablesButton.setEnabled(enabledFlag);

-		fWorkingDirectoryFileSystemButton.setEnabled(enabledFlag);

-	}

-

-	/**

-	 * The working dir variables button has been selected

-	 */

-	private void handleWorkingDirectoryVariablesButtonSelected() {

-		StringVariableSelectionDialog dialog =

-				new StringVariableSelectionDialog(getShell());

-		dialog.open();

-		String variableText = dialog.getVariableExpression();

-		if (variableText != null) {

-			fWorkingDirectoryText.insert(variableText);

-		}

-	}

-

-	/**

-	 * Sets the default working directory.

-	 */

-	protected void initializeWorkingDirectoryComponent(String dir) {

-		if (dir == null) {

-			setWorkingDirectoryDefaultText();

-		}

-		else {

-			setWorkingDirectoryText(dir);

-		}

-

-		fWorkingDirectoryUseDefaultButton.setSelection(dir == null);

-

-		setEnabledWorkingDirectoryComponent(dir != null);

-	}

-

-	protected void setWorkingDirectoryDefaultText() {

-// TODO getSelectedProject()

-//		if (fLaunchConfiguration != null) {

-//			IProject project = getSelectedProject();

-//			if (project != null) {

-//				setWorkingDirectoryText("${workspace_loc:"

-//						+ project.getFullPath().makeRelative().toOSString() + "}");  //$NON-NLS-1$//$NON-NLS-2$

-//				return;

-//			}

-//		}

-		setWorkingDirectoryText(System.getProperty("user.dir")); //$NON-NLS-1$

-	}

-

-	protected void setWorkingDirectoryText(String dir) {

-		if(dir != null) {

-			fWorkingDirectoryText.setText(dir);

-		}

-	}

-

-	void updateWorkingDirectoryDefaultText() {

-		if( fWorkingDirectoryUseDefaultButton.getSelection() ) {

-			setWorkingDirectoryDefaultText();

-		}

-	}

-

-

-	protected final String getWorkingDirectoryText() {

-		return fWorkingDirectoryText.getText().trim();

-	}

-

-	protected boolean isValidWorkingDirectory() {

-		setErrorMessage(null);

-		setMessage(null);

-		// if variables are present, we cannot resolve the directory

-		String workingDirPath = getWorkingDirectoryText();

-		if (workingDirPath.indexOf("${") >= 0) { //$NON-NLS-1$

-			IStringVariableManager manager =

-					VariablesPlugin.getDefault().getStringVariableManager();

-			try {

-				manager.validateStringVariables(workingDirPath);

-			}

-			catch (CoreException e) {

-				setErrorMessage(e.getMessage());

-				return false;

-			}

-		}

-		else if (workingDirPath.length() > 0) {

-			IContainer container = getContainer();

-			if (container == null) {

-				File dir = new File(workingDirPath);

-				if (dir.isDirectory()) {

-					return true;

-				}

-				setErrorMessage("Working directory does not exist");

-				return false;

-			}

-		} else if (workingDirPath.length() == 0) {

-			setErrorMessage("Working directory not specified");

-			return false;

-		}

-		return true;

-	}

-

-

-	////////////////////////////////////////////////////////////////////////////

-	// Avm Location

-	////////////////////////////////////////////////////////////////////////////

-

-	String[] getAvmLocationItems()

-	{

-		return( fAvmLocations.toArray( new String[fAvmLocations.size()] ) );

-	}

-

-	String[] addAvmLocationItems(String addLocation)

-	{

-		IPath pathDefault = new Path(addLocation);

-

-		ArrayList<String> avmLocations = new ArrayList<>();

-		avmLocations.add(addLocation);

-

-		for( String location : fAvmLocations ) {

-			IPath pathOther = new Path(location);

-			if( ! pathDefault.equals(pathOther) ) {

-				avmLocations.add(pathOther.toOSString());

-			}

-		}

-

-		fAvmLocations.clear();

-		fAvmLocations.addAll(avmLocations);

-

-		return( fAvmLocations.toArray(

-				new String[fAvmLocations.size()]) );

-	}

-

-	String[] resetOtheAvmLocationItems(List<?> locations)

-	{

-		IPath pathDefault = new Path(fGlobalPrefLocation);

-//				fAvmLocationDefaultText.getText());

-

-		fAvmLocations.clear();

-

-		for( Object location : locations ) {

-			IPath pathOther = new Path(location.toString());

-			if( ! pathDefault.equals(pathOther) ) {

-				fAvmLocations.add(pathOther.toOSString());

-			}

-		}

-

-		return( fAvmLocations.toArray(

-				new String[fAvmLocations.size()]) );

-	}

-

-	/**

-	 * The other AVM location selection change

-	 */

-	private void handleAvmLocationSelectionChange() {

-		addAvmLocationItems( fSelectedAvmLocationCombo.getText() );

-

-		try {

-			performApplyAvmLocation(fLaunchConfiguration.getWorkingCopy());

-		} catch (CoreException e) {

-			e.printStackTrace();

-		}

-	}

-	/**

-	 * Show a dialog that lets the user select an AVM Location

-	 */

-	private void handleAvmLocationBrowseButtonSelected() {

-		FileDialog fileDialog = new FileDialog(getShell(), SWT.NONE);

-		String location = fSelectedAvmLocationCombo.getText();

-		if( (location == null) || location.isEmpty() ) {

-			location = fGlobalPrefLocation;

-		}

-		fileDialog.setFileName( location );

-		fileDialog.setFilterExtensions(new String[] {"*.exe" , "*.*"});

-		String text= fileDialog.open();

-		if (text != null) {

-			fSelectedAvmLocationCombo.setItems( addAvmLocationItems(text) );

-			if( ! fAvmLocations.isEmpty() ) {

-				fSelectedAvmLocationCombo.select(0);

-			}

-		}

-	}

-

-	/**

-	 * Show a dialog that lets the user select an AVM Location from

-	 * the workspace

-	 */

-	private void handleAvmLocationWorkspaceBrowseButtonSelected() {

-		ResourceSelectionDialog dialog =

-				new ResourceSelectionDialog(getShell(),

-						ResourcesPlugin.getWorkspace().getRoot(),

-						"Select a &Symbex tool relative working location:");

-

-        if (dialog.open() == Window.OK) {

-    		Object[] results = dialog.getResult();

-    		if (results == null || results.length < 1) {

-    			return;

-    		}

-    		else if( results[0] instanceof IPath ) {

-				IPath path = (IPath)results[0];

-				String containerName = path.makeRelative().toString();

-				setAvmLocationText("${workspace_loc:" + containerName + "}"); //$NON-NLS-1$ //$NON-NLS-2$

-    		}

-        }

-	}

-

-	/**

-	 * The default AVM location radio button has been selected.

-	 */

-	private void handleAvmLocationUseOtherButtonSelected(boolean isEnabled) {

-		fSelectedAvmLocationCombo.setEnabled(isEnabled);

-		fAvmLocationWorkspaceButton.setEnabled(isEnabled);

-		fAvmLocationVariablesButton.setEnabled(isEnabled);

-		fAvmLocationFileSystemButton.setEnabled(isEnabled);

-

-		if( isEnabled ) {

-			updateLaunchConfigurationDialog();

-		}

-	}

-

-	/**

-	 * The AVM location variables button has been selected

-	 */

-	private void handleAvmLocationVariablesButtonSelected() {

-		StringVariableSelectionDialog dialog =

-				new StringVariableSelectionDialog(getShell());

-		dialog.open();

-		String variableText = dialog.getVariableExpression();

-		if (variableText != null) {

-			fSelectedAvmLocationCombo.setText(

-					fSelectedAvmLocationCombo.getText() + variableText);

-		}

-	}

-

-	/**

-	 * Sets the default working directory.

-	 */

-	protected void setAvmLocationDefaultText() {

-		fAvmLocationDefaultText.setText( fGlobalPrefLocation );

-		handleAvmLocationUseOtherButtonSelected(false);

-	}

-

-

-	/**

-	 * Retrieves the path from the text box that has been selected.

-	 * @return the AVM location the user wishes to use

-	 */

-	protected final String getAvmLocationText() {

-		if( fUsedDefaultAvmLocation ) {

-			return fGlobalPrefLocation;//fAvmLocationDefaultText.getText().trim();

-		}

-		return fSelectedAvmLocationCombo.getText().trim();

-	}

-

-

-	/**

-	 * Sets the location of the other AVM location to be used.

-	 * @param location the directory to set the widget to

-	 */

-	protected final void setAvmLocationText(String location) {

-		if(location != null) {

-			IPath pathDefault = new Path(fSelectedAvmLocationCombo.getText());

-			IPath pathOther = new Path(location);

-			if( pathDefault.equals(pathOther) ) {

-				return;

-			}

-

-			fSelectedAvmLocationCombo.setItems(

-					addAvmLocationItems(location) );

-			if( ! fAvmLocations.isEmpty() ) {

-				fSelectedAvmLocationCombo.select(0);

-			}

-

-			handleAvmLocationUseOtherButtonSelected(true);

-		}

-	}

-

-	protected final void setAvmLocationItems(List<?> locations) {

-		if(locations != null) {

-			fSelectedAvmLocationCombo.setItems(

-					resetOtheAvmLocationItems(locations) );

-			if( ! fAvmLocations.isEmpty() ) {

-				fSelectedAvmLocationCombo.select(0);

-			}

-

-			handleAvmLocationUseOtherButtonSelected(true);

-		}

-	}

-

-

-	public boolean isValidAvmLocation() {

-		setErrorMessage(null);

-		setMessage(null);

-		// if variables are present, we cannot resolve the directory

-		String avmLocationPath = getAvmLocationText();

-		if (avmLocationPath.indexOf("${") >= 0) { //$NON-NLS-1$

-			IStringVariableManager manager =

-					VariablesPlugin.getDefault().getStringVariableManager();

-			try {

-				manager.validateStringVariables(avmLocationPath);

-			}

-			catch (CoreException e) {

-				setErrorMessage(e.getMessage());

-				return false;

-			}

-		}

-		else if (avmLocationPath.length() > 0) {

-			File location = new File(avmLocationPath);

-			if (location.isFile()) {

-				return true;

-			}

-			setErrorMessage("Symbex executable location does not exist");

-			return false;

-		} else if (avmLocationPath.length() == 0) {

-			setErrorMessage("ymbex executable location not specified");

-			return false;

-		}

-		return true;

-	}

-

-

-	/**

-	 * createControl

-	 */

-	@Override

-	public void createControl(Composite parent) {

-		Composite mainComposite = new Composite(parent, SWT.NONE);

-		setControl(mainComposite);

-		mainComposite.setFont(parent.getFont());

-		GridLayout layout = new GridLayout();

-		layout.numColumns = 1;

-		GridData gridData = new GridData(GridData.FILL_HORIZONTAL);

-		mainComposite.setLayout(layout);

-		mainComposite.setLayoutData(gridData);

-

-		createAvmLocationComponent(mainComposite);

-//		createSelectedProjectComponent(mainComposite);

-//		createConfigurationComponent(mainComposite);

-		createWorkingDirectoryComponent(mainComposite);

-		createArgumentComponent(mainComposite);

-

-		setControl(mainComposite);

-	}

-

-

-	////////////////////////////////////////////////////////////////////////////

-	// Argument

-	////////////////////////////////////////////////////////////////////////////

-	protected void createArgumentComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(

-				parent, "&Arguments:", 1, 1, GridData.FILL_BOTH);

-

-		fArgumentField = new Text(group,

-				SWT.MULTI | SWT.WRAP | SWT.BORDER | SWT.V_SCROLL);

-		fArgumentField.addTraverseListener(new TraverseListener() {

-			public void keyTraversed(TraverseEvent event) {

-				if (event.detail == SWT.TRAVERSE_RETURN &&

-						(event.stateMask & SWT.MODIFIER_MASK) != 0) {

-					event.doit= true;

-				}

-			}

-		});

-

-		GridData gridData = new GridData(GridData.FILL_BOTH);

-		gridData.widthHint = IDialogConstants.ENTRY_FIELD_WIDTH;

-		gridData.heightHint = 30;

-		fArgumentField.setLayoutData(gridData);

-		fArgumentField.addModifyListener(fListener);

-		addControlAccessibleListener(fArgumentField, group.getText());

-

-		Composite buttonComposite = SWTFactory.createComposite(group,

-				parent.getFont(), 1, 1, GridData.HORIZONTAL_ALIGN_END, 0, 0);

-

-		fArgumentVariablesButton= createPushButton(

-				buttonComposite, "Variable&s...", null);

-		fArgumentVariablesButton.addSelectionListener(fListener);

-		addControlAccessibleListener( // need to strip the mnemonic from buttons

-				fArgumentVariablesButton, fArgumentVariablesButton.getText());

-

-		Label instruction = new Label(group, SWT.NONE);

-		instruction.setText("Note: Enclose an argument "

-				+ "containing spaces using double-quotes (\").");

-		gridData = new GridData(GridData.HORIZONTAL_ALIGN_FILL);

-		gridData.horizontalSpan = 2;

-		instruction.setLayoutData(gridData);

-	}

-

-	public void addControlAccessibleListener(Control control, String controlName) {

-		//strip mnemonic (&)

-		String[] strs = controlName.split("&"); //$NON-NLS-1$

-		StringBuffer stripped = new StringBuffer();

-		for (int i = 0; i < strs.length; i++) {

-			stripped.append(strs[i]);

-		}

-		control.getAccessible().addAccessibleListener(

-				new ControlAccessibleListener(stripped.toString()));

-	}

-

-	private class ControlAccessibleListener extends AccessibleAdapter {

-		private String controlName;

-		ControlAccessibleListener(String name) {

-			controlName = name;

-		}

-		public void getName(AccessibleEvent e) {

-			e.result = controlName;

-		}

-

-	}

-

-	////////////////////////////////////////////////////////////////////////////

-	// Working Directory

-	////////////////////////////////////////////////////////////////////////////

-	protected void createWorkingDirectoryComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(

-				parent, "&Working directory:", 2, 1, GridData.FILL_HORIZONTAL);

-

-		Font font = parent.getFont();

-

-		//default choice

-		Composite comp = SWTFactory.createComposite(

-				group, font, 2, 2, GridData.FILL_BOTH, 0, 0);

-		fWorkingDirectoryUseDefaultButton = createCheckButton(comp, "Defa&ult:");

-		fWorkingDirectoryUseDefaultButton.addSelectionListener(fListener);

-		fWorkingDirectoryText = SWTFactory.createSingleText(comp, 1);

-		fWorkingDirectoryText.addModifyListener(fListener);

-

-		//buttons

-		Composite buttonComp = SWTFactory.createComposite(

-				comp, font, 3, 2, GridData.HORIZONTAL_ALIGN_END);

-		GridLayout ld = (GridLayout)buttonComp.getLayout();

-		ld.marginHeight = 1;

-		ld.marginWidth = 0;

-		fWorkingDirectoryWorkspaceButton =

-				createPushButton(buttonComp, "W&orkspace...", null);

-		fWorkingDirectoryWorkspaceButton.addSelectionListener(fListener);

-

-		fWorkingDirectoryFileSystemButton =

-				createPushButton(buttonComp, "&File System...", null);

-		fWorkingDirectoryFileSystemButton.addSelectionListener(fListener);

-

-		fWorkingDirectoryVariablesButton =

-				createPushButton(buttonComp, "Variabl&es...", null);

-		fWorkingDirectoryVariablesButton.addSelectionListener(fListener);

-	}

-

-	////////////////////////////////////////////////////////////////////////////

-	// Avm Location

-	////////////////////////////////////////////////////////////////////////////

-	protected void createAvmLocationComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"&Symbex Executable Location:", 2, 1, GridData.FILL_HORIZONTAL);

-

-		Font font = parent.getFont();

-

-		//default choice

-		Composite comp = SWTFactory.createComposite(

-				group, font, 2, 2, GridData.FILL_BOTH, 0, 0);

-

-		fAvmLocationUseDefaultButton =

-				SWTFactory.createRadioButton(comp, "Defa&ult:");

-		fAvmLocationUseDefaultButton.addSelectionListener(fListener);

-

-		fAvmLocationDefaultText = SWTFactory.createSingleText(comp, 1);

-		fAvmLocationDefaultText.addModifyListener(fListener);

-		fAvmLocationDefaultText.setEnabled(false);

-

-		//user enter choice

-		fAvmLocationUseOtherButton =

-				SWTFactory.createRadioButton(comp, "Ot&her:");

-		fAvmLocationUseOtherButton.addSelectionListener(fListener);

-

-		fSelectedAvmLocationCombo = SWTFactory.createCombo(

-				comp, SWT.DROP_DOWN, 1, getAvmLocationItems());

-		fSelectedAvmLocationCombo.addSelectionListener(fListener);

-		fSelectedAvmLocationCombo.addModifyListener(fListener);

-

-		//buttons

-		Composite buttonComp = SWTFactory.createComposite(

-				comp, font, 3, 2, GridData.HORIZONTAL_ALIGN_END);

-		GridLayout ld = (GridLayout)buttonComp.getLayout();

-		ld.marginHeight = 1;

-		ld.marginWidth = 0;

-		fAvmLocationWorkspaceButton =

-				createPushButton(buttonComp, "W&orkspace...", null);

-		fAvmLocationWorkspaceButton.addSelectionListener(fListener);

-

-		fAvmLocationFileSystemButton =

-				createPushButton(buttonComp, "&File System...", null);

-		fAvmLocationFileSystemButton.addSelectionListener(fListener);

-

-		fAvmLocationVariablesButton =

-				createPushButton(buttonComp, "Variabl&es...", null);

-		fAvmLocationVariablesButton.addSelectionListener(fListener);

-	}

-

-

-	/**

-	 * initializeFrom

-	 */

-	@Override

-	public void initializeFrom(ILaunchConfiguration configuration) {

-		fInitializing = true;

-

-		fLaunchConfiguration = configuration;

-

-		initializeFromArgument(configuration);

-		initializeFromWorkingDirectory(configuration);

-		initializeFromAvmLocation(configuration);

-

-		fInitializing = false;

-		setDirty(false);

-	}

-

-

-	////////////////////////////////////////////////////////////////////////////

-	// Argument

-	////////////////////////////////////////////////////////////////////////////

-	public void initializeFromArgument(ILaunchConfiguration configuration) {

-		String arguments= EMPTY_STRING;

-		try {

-			arguments= configuration.getAttribute(

-					ATTR_TOOL_ARGUMENTS, EMPTY_STRING);

-		}

-		catch (CoreException e) {

-			setErrorMessage("Exception occurred reading << Argument >> configuration:"

-					+ e.getStatus().getMessage());

-		}

-

-		fArgumentField.setText(arguments);

-	}

-

-

-	////////////////////////////////////////////////////////////////////////////

-	// Working Directory

-	////////////////////////////////////////////////////////////////////////////

-	public void initializeFromWorkingDirectory(ILaunchConfiguration configuration) {

-		try {

-			initializeWorkingDirectoryComponent(configuration.getAttribute(

-					ATTR_WORKING_DIRECTORY, (String)null));

-		}

-		catch (CoreException e) {

-			setErrorMessage("Exception occurred reading "

-					+ "<< Working Directory >> configuration:"

-					+ e.getStatus().getMessage());

-		}

-	}

-

-	////////////////////////////////////////////////////////////////////////////

-	// Avm Location

-	////////////////////////////////////////////////////////////////////////////

-	public void initializeFromAvmLocation(ILaunchConfiguration configuration) {

-		List<?> avmLocation = null;

-		try {

-			avmLocation = configuration.getAttribute(

-					ATTR_LAUNCH_AVM_LOCATION_HISTORY, (List<String>)null);

-		} catch (CoreException e) {

-			//!! NOTHING

-		}

-

-		if( avmLocation == null ) {

-			try {

-				String strLocation = configuration.getAttribute(

-						ATTR_LAUNCH_AVM_LOCATION_HISTORY, (String)null);

-

-				if( strLocation != null ) {

-					avmLocation = Arrays.asList(strLocation);

-

-					this.setDirty(true);

-				}

-			} catch (CoreException e) {

-				//!! NOTHING

-			}

-		}

-

-		setAvmLocationItems(avmLocation);

-

-		try {

-			fUsedDefaultAvmLocation = configuration.getAttribute(

-					ATTR_LAUNCH_AVM_LOCATION_USED_DEFAULT, true);

-		} catch (CoreException e) {

-			//!! NOTHING

-		}

-

-		if( fUsedDefaultAvmLocation ) {

-			setAvmLocationDefaultText();

-

-			try {

-				String location = configuration.getAttribute(

-						ATTR_LAUNCH_AVM_LOCATION, (String)null);

-				if( ! fGlobalPrefLocation.equals(location) ) {

-					setWarningMessage("Global Preference "

-							+ "< Symbex Executable Location > has changed !");

-				}

-			} catch (CoreException e) {

-				//!! NOTHING

-			}

-

-		}

-		else {

-			fAvmLocationDefaultText.setText(fGlobalPrefLocation);

-		}

-		fAvmLocationUseDefaultButton.setSelection(fUsedDefaultAvmLocation);

-		fAvmLocationUseOtherButton.setSelection(! fUsedDefaultAvmLocation);

-	}

-

-

-

-	/**

-	 * performApply

-	 */

-	@Override

-	public void performApply(ILaunchConfigurationWorkingCopy configuration) {

-		performApplyArgument(configuration);

-		performApplyWorkingDirectory(configuration);

-		performApplyAvmLocation(configuration);

-

-		if(userEdited) {

-			configuration.setAttribute(SymbexRuntimeTab.FIRST_EDIT, (String)null);

-		}

-	}

-

-

-	////////////////////////////////////////////////////////////////////////////

-	// Argument

-	////////////////////////////////////////////////////////////////////////////

-	public void performApplyArgument(ILaunchConfigurationWorkingCopy configuration) {

-		String arguments= fArgumentField.getText().trim();

-		if (arguments.length() == 0) {

-			configuration.setAttribute(ATTR_TOOL_ARGUMENTS, (String)null);

-		} else {

-			configuration.setAttribute(ATTR_TOOL_ARGUMENTS, arguments);

-		}

-	}

-

-

-	////////////////////////////////////////////////////////////////////////////

-	// WorkingDirectory

-	////////////////////////////////////////////////////////////////////////////

-	public void performApplyWorkingDirectory(

-			ILaunchConfigurationWorkingCopy configuration) {

-		if(fWorkingDirectoryUseDefaultButton.getSelection()) {

-			configuration.setAttribute(ATTR_WORKING_DIRECTORY, (String)null);

-		}

-		else {

-			configuration.setAttribute(

-					ATTR_WORKING_DIRECTORY, getWorkingDirectoryText());

-		}

-	}

-

-	////////////////////////////////////////////////////////////////////////////

-	// Avm Location

-	////////////////////////////////////////////////////////////////////////////

-	public void performApplyAvmLocation(

-			ILaunchConfigurationWorkingCopy configuration) {

-		configuration.setAttribute(

-				ATTR_LAUNCH_AVM_LOCATION_HISTORY, fAvmLocations);

-

-		String location = null;

-		fUsedDefaultAvmLocation = fAvmLocationUseDefaultButton.getSelection();

-		if( fUsedDefaultAvmLocation ) {

-			location = fGlobalPrefLocation;//fAvmLocationDefaultText.getText().trim();

-

-			if( ! location.equals(fGlobalPrefLocation) ) {

-				fAvmLocationDefaultText.setText( location = fGlobalPrefLocation );

-			}

-		}

-		else {

-			location = fSelectedAvmLocationCombo.getText().trim();

-		}

-		if( (location == null) || location.isEmpty() ) {

-			location = fGlobalPrefLocation;

-		}

-

-		configuration.setAttribute(

-				ATTR_LAUNCH_AVM_LOCATION_USED_DEFAULT, fUsedDefaultAvmLocation);

-

-		configuration.setAttribute(ATTR_LAUNCH_AVM_LOCATION, location);

-	}

-

-

-

-	/**

-	 * setDefaults

-	 */

-	@Override

-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration) {

-		setDefaultsArgument(configuration);

-		setDefaultsWorkingDirectory(configuration);

-		setDefaultsAvmLocation(configuration);

-	}

-

-

-	////////////////////////////////////////////////////////////////////////////

-	// Argument

-	////////////////////////////////////////////////////////////////////////////

-	public void setDefaultsArgument(ILaunchConfigurationWorkingCopy configuration) {

-		configuration.setAttribute(ATTR_TOOL_ARGUMENTS, (String)null);

-	}

-

-

-	////////////////////////////////////////////////////////////////////////////

-	// Working Directory

-	////////////////////////////////////////////////////////////////////////////

-	public void setDefaultsWorkingDirectory(ILaunchConfigurationWorkingCopy configuration) {

-		configuration.setAttribute(ATTR_WORKING_DIRECTORY, (String)null);

-	}

-

-	////////////////////////////////////////////////////////////////////////////

-	// Avm Location

-	////////////////////////////////////////////////////////////////////////////

-	public void setDefaultsAvmLocation(ILaunchConfigurationWorkingCopy configuration) {

-		configuration.setAttribute(

-				ATTR_LAUNCH_AVM_LOCATION_USED_DEFAULT, true);

-

-		configuration.setAttribute(

-				ATTR_LAUNCH_AVM_LOCATION, fGlobalPrefLocation);

-	}

-

-

-

-	public void updateLaunchConfigurationDialog() {

-		validateTab();

-

-		super.updateLaunchConfigurationDialog();

-	}

-

-	public void validateTab() {

-		if( isValidWorkingDirectory() ) {

-		}

-

-		if( isValidAvmLocation() ) {

-		}

-

-//		String error = fDataBlock.validate();

-//

-//		setErrorMessage(error);

-	}

-

-

-

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/TestGenerationTab.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/TestGenerationTab.java
deleted file mode 100644
index a64eb64..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/tabs/TestGenerationTab.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial Implementation (tab-based, inserted in Run Configurations dialog)

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - New API (free-composite-based, no type assumptions on parent) 

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration.ui.tabs;

-

-import org.eclipse.efm.runconfiguration.LaunchConfigurationTabGroup;

-import org.eclipse.efm.ui.views.launchconfigurations.components.TestGenerationCompositeMaker;

-import org.eclipse.efm.ui.resources.HelpCoReferee;

-

-public class TestGenerationTab extends AbstractSewLaunchConfigurationTab {

-

-	/**

-	 * Constructor

-	 * @param groupTab

-	 */

-	public TestGenerationTab(LaunchConfigurationTabGroup groupTab) {

-		super(groupTab);

-		contentCompositeManager = new TestGenerationCompositeMaker(this);

-		setHelpContextId(HelpCoReferee.efm_runconf_testgeneration_tab);

-	}

-

-	@Override

-	public String getName() {

-		return "Test Generation";

-	}

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/views/SymbolicExecutionView.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/views/SymbolicExecutionView.java
deleted file mode 100644
index 0923903..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/views/SymbolicExecutionView.java
+++ /dev/null
@@ -1,168 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2016 CEA LIST.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr
- *   - Initial API and Implementation
- *******************************************************************************/
-package org.eclipse.efm.runconfiguration.ui.views;
-
-
-import java.io.File;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.efm.core.workflow.Activator;
-import org.eclipse.efm.runconfiguration.ui.views.page.SEWConsoleSpiderPage;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.part.IPage;
-import org.eclipse.ui.part.PageBook;
-import org.eclipse.ui.part.PageBookView;
-
-
-/**
- * This sample class demonstrates how to plug-in a new
- * workbench view. The view shows data obtained from the
- * model. The sample creates a dummy model on the fly,
- * but a real implementation would connect to the model
- * available either in this or another plug-in (e.g. the workspace).
- * The view is connected to the model using a content provider.
- * <p>
- * The view uses a label provider to define how model
- * objects should be presented in the view. Each
- * view can present the same model objects using
- * different labels and icons, if needed. Alternatively,
- * a single label provider can be shared between views
- * in order to ensure that objects of the same type are
- * presented in the same way everywhere.
- * <p>
- */
-
-public class SymbolicExecutionView extends PageBookView {
-
-	/**
-	 * The ID of the view as specified by the extension.
-	 */
-	public static final String ID =
-			Activator.PLUGIN_ID + ".views.SymbolicExecutionView";
-
-
-	private PageRec fSpiderConsolePageRec;
-//!Warn	private PageRec fConsolePageRec;
-
-	private SEWConsoleSpiderPage fSpiderConsolePage;
-//!Warn	private SEWConsoleSpiderPage fConsolePage;
-
-	boolean fSwitch = false;
-
-//!Warn	private PageRec fPageRec;
-
-	// Testing extends PropertySheet
-//	 @Override
-//	 protected boolean isImportant(IWorkbenchPart part) {
-//		 if (part.getSite().getId().equals(IPageLayout.ID_PROJECT_EXPLORER))
-//			 return true;
-//		 return false;
-//	 }
-
-
-	public PageRec getSpiderConsolePageRec() {
-		return fSpiderConsolePageRec;
-	}
-
-	@Override
-	protected IPage createDefaultPage(PageBook book) {
-//		MessagePage messagePage = new MessagePage();
-//		initPage(messagePage);
-//		messagePage.setMessage("No interested in this part");
-//		messagePage.createControl(book);
-//		return messagePage;
-
-
-//		fConsolePage = new SEWConsoleSpiderPage();
-//		initPage(fConsolePage);
-//		fConsolePage.createControl(book);
-//		fConsolePageRec = new PageRec(null, fConsolePage);
-
-
-		fSpiderConsolePage = new SEWConsoleSpiderPage();
-		initPage(fSpiderConsolePage);
-		fSpiderConsolePage.createControl(book);
-		fSpiderConsolePageRec = new PageRec(null, fSpiderConsolePage);
-
-		return fSpiderConsolePage;
-	}
-
-	@Override
-	protected PageRec doCreatePage(IWorkbenchPart part) {
-//		MessagePage messagePage = new MessagePage();
-//		initPage(messagePage);
-//		messagePage.setMessage("Page for "+part.getTitle());
-//		messagePage.createControl(getPageBook());
-//		return new PageRec(part, messagePage);
-
-		return null;
-	}
-
-	@Override
-	protected void doDestroyPage(IWorkbenchPart part, PageRec pageRecord) {
-		pageRecord.page.dispose();
-	}
-
-	@Override
-	protected IWorkbenchPart getBootstrapPart() {
-		IWorkbenchPage page = getSite().getPage();
-		if(page != null) {
-			// check whether the active part is important to us
-			IWorkbenchPart activePart = page.getActivePart();
-			return isImportant(activePart)?activePart:null;
-		}
-		return null;
-	}
-
-	@Override
-	protected boolean isImportant(IWorkbenchPart part) {
-//		return (part != null) &&
-//				part.getSite().getPluginId().startsWith("org.eclipse.ui");
-		return false;
-	}
-
-
-	public void sewLaunchExecProcess(ILaunchConfiguration configuration,
-			String mode, ILaunch launch, IProgressMonitor monitor,
-			String[] cmdLine, File workingDir, String[] envp) {
-
-		fSpiderConsolePage.sewLaunchExecProcess(configuration, mode,
-				launch, monitor, cmdLine, workingDir, envp);
-
-//		fSwitch = (! fSwitch);
-//
-//		if( fSwitch ) {
-//			Display.getDefault().syncExec(new Runnable() {
-//				public void run() {
-//					showPageRec( fSpiderConsolePageRec );
-//				}
-//			});
-//
-//			fSpiderConsolePage.sewLaunchExecProcess(configuration, mode,
-//					launch, monitor, cmdLine, workingDir, envp);
-//		}
-//		else {
-//			Display.getDefault().syncExec(new Runnable() {
-//				public void run() {
-//					showPageRec( fConsolePageRec );
-//				}
-//			});
-//
-//			fConsolePage.sewLaunchExecProcess(configuration, mode,
-//					launch, monitor, cmdLine, workingDir, envp);
-//		}
-	}
-}
diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/views/page/LaunchExecConsoleManager.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/views/page/LaunchExecConsoleManager.java
deleted file mode 100644
index 7727e58..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/views/page/LaunchExecConsoleManager.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr

- *   - Initial API and Implementation

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration.ui.views.page;

-

-import java.io.File;

-

-import org.eclipse.core.runtime.IProgressMonitor;

-import org.eclipse.debug.core.ILaunch;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.efm.runconfiguration.ui.views.SymbolicExecutionView;

-import org.eclipse.ui.IViewPart;

-import org.eclipse.ui.IWorkbench;

-import org.eclipse.ui.IWorkbenchWindow;

-import org.eclipse.ui.PartInitException;

-import org.eclipse.ui.PlatformUI;

-

-public class LaunchExecConsoleManager {

-

-	private IWorkbenchWindow fWindow;

-

-	private SymbolicExecutionView fSymbexView;

-

-

-	public LaunchExecConsoleManager() {

-		super();

-

-		this.fWindow = null;

-

-		fSymbexView = null;

-	}

-

-	private boolean loadConsoleViewer() {

-		IWorkbench wb = PlatformUI.getWorkbench();

-		IWorkbenchWindow[] wws = wb.getWorkbenchWindows();

-		if( wws.length > 0 ) {

-			fWindow = wws[0];

-

-			wb.getDisplay().syncExec(new Runnable() {

-				public void run() {

-					try {

-						IViewPart viewPart = fWindow.getActivePage().

-								showView(SEWConsoleViewer.ID_SEW_CONSOLE_VIEW);

-//								showView(IConsoleConstants.ID_CONSOLE_VIEW);

-

-						if( viewPart instanceof SymbolicExecutionView ) {

-							fSymbexView = (SymbolicExecutionView) viewPart;

-						}

-					} catch (PartInitException e) {

-						// TODO Auto-generated catch block

-						e.printStackTrace();

-					}

-				}

-			});

-		}

-

-		return( fSymbexView != null );

-	}

-

-

-	public void sewLaunchExecProcess(ILaunchConfiguration configuration,

-			String mode, ILaunch launch, IProgressMonitor monitor,

-			String[] cmdLine, File workingDir, String[] envp) {

-

-		if( loadConsoleViewer() ) {

-			fSymbexView.sewLaunchExecProcess(configuration, mode,

-					launch, monitor, cmdLine, workingDir, envp);

-		}

-		else {

-			System.out.println("loadConsoleViewer: KOOO !");

-		}

-	}

-

-

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/views/page/SEWConsoleSpiderPage.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/views/page/SEWConsoleSpiderPage.java
deleted file mode 100644
index 2b9519a..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/views/page/SEWConsoleSpiderPage.java
+++ /dev/null
@@ -1,535 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr

- *   - Initial API and Implementation

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration.ui.views.page;

-

-import java.io.BufferedReader;

-import java.io.BufferedWriter;

-import java.io.File;

-import java.io.IOException;

-import java.io.InputStream;

-import java.io.InputStreamReader;

-import java.io.OutputStream;

-import java.io.OutputStreamWriter;

-

-import org.eclipse.core.runtime.IProgressMonitor;

-import org.eclipse.debug.core.ILaunch;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.efm.core.workflow.IWorkflowConfigurationConstants;

-import org.eclipse.efm.core.workflow.ToolConstants;

-import org.eclipse.efm.runconfiguration.LaunchDelegate;

-import org.eclipse.jface.preference.IPreferenceStore;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.custom.ScrolledComposite;

-import org.eclipse.swt.layout.FillLayout;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.layout.GridLayout;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Control;

-import org.eclipse.ui.PlatformUI;

-import org.eclipse.ui.console.IOConsole;

-import org.eclipse.ui.part.Page;

-import org.eclipse.efm.ui.resources.HelpCoReferee;

-

-@SuppressWarnings("unused")

-public class SEWConsoleSpiderPage extends Page

-		implements IWorkflowConfigurationConstants {

-

-	private Composite fMainPageControl;

-

-//    private Composite compSpider;

-    private ScrolledComposite compSpider;

-

-    private boolean consoleView;

-    private boolean spiderView;

-

-    private int nbExecution;

-    private boolean firstLine;

-    private boolean lastLine;

-

-	private ProcessBuilder avmProcessBuilder;

-	private Process avmProcess;

-

-	private SEWConsoleViewer fConsoleViewer;

-    private IOConsole fSEWDashbordConsole;

-

-    private SWTSpider fSpider;

-

-

-    private static final int DEFAULT_PERIOD_VALUE = 10;

-

-    private int nbStep;

-    private int maxStep = 0;

-    private boolean resizeStep = false;

-    private int stepStep = DEFAULT_PERIOD_VALUE;

-

-    private int nbContext;

-    private int maxContext = 0;

-    private boolean resizeContext = false;

-    private int stepContext = DEFAULT_PERIOD_VALUE;

-

-    private int nbHeight;

-    private int maxHeight = 0;

-    private int oldNbHeight = 0;

-    private int currentNbHeight = 0;

-    private boolean resizeHeight = false;

-    private int stepHeight = DEFAULT_PERIOD_VALUE;

-

-    private int nbWidth;

-    private int maxWidth = 0;

-    private int oldNbWidth = 0;

-    private int currentNbWidth = 0;

-    private boolean resizeWidth = false;

-    private int stepWidth = DEFAULT_PERIOD_VALUE;

-

-    private int nbCoverage;

-    private int maxCoverage = 0;

-

-	@Override

-	public void createControl(Composite parent) {

-        fMainPageControl = new Composite(parent, SWT.RESIZE | SWT.BORDER);

-

-        PlatformUI.getWorkbench().getHelpSystem().setHelp(fMainPageControl, HelpCoReferee.efm_sew_console);

-

-		IPreferenceStore prefs = org.eclipse.efm.core.workflow.Activator.getDefault().getPreferenceStore();

-        consoleView = prefs.getBoolean(

-				ToolConstants.PREF_CONSOLE_VIEW);

-        spiderView = prefs.getBoolean(

-				ToolConstants.PREF_SPIDER_VIEW);

-

-        GridLayout layout = new GridLayout();

-        layout.numColumns = 3;

-        layout.makeColumnsEqualWidth = true;

-        fMainPageControl.setLayout(layout);

-

-        fSpider = createSpider(fMainPageControl, 100, 90, 150);

-

-        createConsoleViewer(fMainPageControl);

-	}

-

-	private void createConsoleViewer(Composite parent) {

-		Composite comp = new Composite(parent, SWT.BORDER | SWT.RESIZE);

-

-		fSEWDashbordConsole = new IOConsole("SEW-Console", null);

-

-		GridData dataRight = new GridData();

-

-		dataRight.horizontalSpan = 2;

-        dataRight.grabExcessHorizontalSpace = true;

-        dataRight.grabExcessVerticalSpace = true;

-        dataRight.horizontalAlignment = SWT.FILL;

-        dataRight.verticalAlignment = SWT.FILL;

-

-		fConsoleViewer = new SEWConsoleViewer(comp, fSEWDashbordConsole);

-

-		comp.setLayout(new FillLayout());

-		comp.setLayoutData(dataRight);

-	}

-

-	private SWTSpider createSpider(Composite parent, int x, int y, int r) {

-//        Group group = SWTFactory.createGroup(parent, "", 1, 1, GridData.FILL_BOTH);

-//        group.setText("MODEL ANALYSIS");

-

-        compSpider = new ScrolledComposite (parent,

-        		SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL | SWT.RESIZE);

-

-        fSpider = new SWTSpider(compSpider, SWT.NULL, x, y, r);

-        compSpider.setContent(fSpider);

-        compSpider.setExpandHorizontal(true);

-        compSpider.setExpandVertical(true);

-        compSpider.setMinSize(480, 420);

-

-        GridData dataLeft = new GridData();

-		dataLeft.heightHint = 200;

-

-//        dataR.horizontalSpan = 1;

-

-        dataLeft.grabExcessHorizontalSpace = true;

-        dataLeft.grabExcessVerticalSpace = true;

-        dataLeft.horizontalAlignment = SWT.FILL;

-        dataLeft.verticalAlignment = SWT.FILL;

-

-		compSpider.setLayout(new FillLayout());

-

-		compSpider.setLayoutData(dataLeft);

-

-		return fSpider;

-	}

-

-	@Override

-	public Control getControl() {

-        return fMainPageControl;

-	}

-

-	@Override

-	public void setFocus() {

-        // important to give focus to the composite rather than the label

-        // as the composite will actually take focus (though hidden),

-        // but setFocus on a Label is a no-op

-        fMainPageControl.setFocus();

-	}

-

-	public void sewLaunchExecProcess(ILaunchConfiguration configuration,

-			String mode, ILaunch launch, IProgressMonitor monitor,

-			String[] cmdLine, File workingDir, String[] envp) {

-

-		IPreferenceStore prefs = org.eclipse.efm.core.workflow.Activator.getDefault().getPreferenceStore();

-

-        consoleView = prefs.getBoolean(

-				ToolConstants.PREF_CONSOLE_VIEW);

-//        spiderView = prefs.getBoolean(

-//				ToolConstants.P_SPIDER_VIEW);

-
-        try {

-			OutputStream outputStream2 = null;

-			OutputStreamWriter outputStreamWriter2 = null;

-			BufferedWriter bufferedWriter2 = null;

-	        if ( consoleView ) {

-//				InputStream inputStream2 = fSEWDashbordConsole.getInputStream();

-//				InputStreamReader inputStreamReader2 = new InputStreamReader(inputStream2);

-//				BufferedReader bufferedReader2 = new BufferedReader(inputStreamReader2);

-

-				outputStream2 = fSEWDashbordConsole.newOutputStream();

-				outputStreamWriter2 = new OutputStreamWriter(outputStream2);

-				bufferedWriter2 = new BufferedWriter(outputStreamWriter2);

-	        }

-

-			fSEWDashbordConsole.clearConsole();

-

-	        if ( fSpider != null ) {

-				fSpider.resetSpider();

-			}

-

-			avmProcessBuilder = new ProcessBuilder(cmdLine);

-			avmProcessBuilder = avmProcessBuilder.redirectErrorStream(true);

-			avmProcessBuilder.directory(workingDir);

-

-			try {

-				avmProcess = avmProcessBuilder.start();

-			} catch (IOException e1) {

-				// TODO Auto-generated catch block

-				e1.printStackTrace();

-			}

-

-			if( avmProcess == null ) {

-				return;

-			}

-

-			InputStream inputStream1 = avmProcess.getInputStream();

-			InputStreamReader inputStreamReader1 = new InputStreamReader(inputStream1);

-			BufferedReader bufferedReader1 = new BufferedReader(inputStreamReader1);

-

-			firstLine = true;

-			lastLine = false;

-

-			String traceLine = null;

-

-			nbExecution = 0;

-

-			while( true ) {

-				// Tempo

-//				try {

-//					Thread.sleep(20);

-//				} catch (InterruptedException e1) {

-//					// TODO Auto-generated catch block

-//					e1.printStackTrace();

-//				}

-

-				if( bufferedReader1.ready() ) {

-					if( (traceLine = bufferedReader1.readLine()) != null ) {

-

-//				        if ( spiderView ) {

-				        	majSpider(traceLine);

-//				        }

-

-				        if ( consoleView ) {

-							bufferedWriter2.append(traceLine).append("\n");

-							bufferedWriter2.flush();

-				        }

-					}

-				}

-				else {

-					try {

-						avmProcess.exitValue();

-						break;

-					}

-					catch( IllegalThreadStateException e ) {

-						//!! NOTHING

-					}

-				}

-

-				if( monitor.isCanceled() ){

-					avmProcess.destroy();

-			        if ( consoleView ) {

-						bufferedWriter2.append("\n***********************\n" +

-							   	  				"* EXECUTION ABORTED ! *\n" +

-							   	  				"***********************");

-						bufferedWriter2.flush();

-			        }

-					return;

-				}

-			}

-			return;

-		}

-		catch(IOException e){

-			e.printStackTrace();

-		}

-		finally {

-			if( avmProcess != null ) {

-				avmProcess.destroy();

-			}

-			monitor.done();

-		}

-		return;

-	}

-

-	private void majSpider(String traceLine) {

-		String tmpString = null;

-

-		if ( traceLine.startsWith("step:") ||

-				traceLine.startsWith("stop:") ) {

-			tmpString = traceLine.replaceAll(" ", "");

-			if ( firstLine ) {

-				firstLine = false;

-				nbExecution = nbExecution + 1;

-

-				if ( nbExecution == 1 ) {

-					initVar();

-					initMaxAndResize( tmpString, nbExecution );

-				}

-			}

-			else if ( ! lastLine ){

-				majDisplayedData( tmpString , nbExecution);

-

-				majStepAndMax();

-

-				fSpider.updateSpider(nbExecution,

-									 nbStep, maxStep,

-									 nbContext, maxContext,

-									 nbHeight, maxHeight,

-									 nbWidth, maxWidth,

-									 nbCoverage, maxCoverage);

-

-				if ( traceLine.startsWith("stop:") ) {

-//					lastLine = true;

-					if ( nbExecution == 1 ) {

-						firstLine = true;

-					}

-					else {

-						lastLine = true;

-					}

-				}

-			}

-		}

-	}

-

-	private void initVar() {

-	    maxStep = 0;

-	    resizeStep = false;

-	    stepStep = DEFAULT_PERIOD_VALUE;

-

-	    maxContext = 0;

-	    resizeContext = false;

-	    stepContext = DEFAULT_PERIOD_VALUE;

-

-	    maxHeight = 0;

-	    oldNbHeight = 0;

-	    currentNbHeight = 0;

-	    resizeHeight = false;

-	    stepHeight = DEFAULT_PERIOD_VALUE;

-

-	    maxWidth = 0;

-	    oldNbWidth = 0;

-	    currentNbWidth = 0;

-	    resizeWidth = false;

-	    stepWidth = DEFAULT_PERIOD_VALUE;

-

-	    maxCoverage = 0;

-	}

-

-

-    private static final String CONSOLE_INIFINITE_SYMBOL = "+oo";

-    private static final String CONSOLE_CONTEXT_SYMBOL   = "context:";

-    private static final String CONSOLE_COVERAGE_SYMBOL  = "coverage:";

-

-    private static final String CONSOLE_STEP_SYMBOL      = "step:";

-    private static final String CONSOLE_HEIGHT_SYMBOL    = "height:";

-    private static final String CONSOLE_WIDTH_SYMBOL     = "width:";

-

-

-    private void initMaxAndResize(String aString, int nbExe) {

-		String s = aString.substring(CONSOLE_STEP_SYMBOL.length(),

-				aString.indexOf(CONSOLE_CONTEXT_SYMBOL) - 1);

-

-		maxStep = s.equals(CONSOLE_INIFINITE_SYMBOL) ?

-				DEFAULT_PERIOD_VALUE : Integer.parseInt(s);

-

-		resizeStep = s.equals(CONSOLE_INIFINITE_SYMBOL);

-

-		s = aString.substring(

-				aString.indexOf(CONSOLE_CONTEXT_SYMBOL) +

-						CONSOLE_CONTEXT_SYMBOL.length(),

-				aString.indexOf(CONSOLE_HEIGHT_SYMBOL) - 1);

-

-		maxContext = s.equals(CONSOLE_INIFINITE_SYMBOL) ?

-				DEFAULT_PERIOD_VALUE : Integer.parseInt(s);

-

-		resizeContext = s.equals(CONSOLE_INIFINITE_SYMBOL);

-

-		s = aString.substring(

-				aString.indexOf(CONSOLE_HEIGHT_SYMBOL) +

-						CONSOLE_HEIGHT_SYMBOL.length(),

-				aString.indexOf(CONSOLE_WIDTH_SYMBOL)-1);

-

-		maxHeight = s.equals(CONSOLE_INIFINITE_SYMBOL) ?

-				DEFAULT_PERIOD_VALUE : Integer.parseInt(s);

-

-		resizeHeight = s.equals(CONSOLE_INIFINITE_SYMBOL);

-

-		if ( ( nbExe == 1 ) &&

-			 ( LaunchDelegate.fModelAnalysis.equals(

-					 ANALYSIS_PROFILE_MODEL_EXPLORATION)

-			|| LaunchDelegate.fModelAnalysis.equals(

-					 ANALYSIS_PROFILE_MODEL_UNDEFINED)) ) {

-

-			s = aString.substring(

-					aString.indexOf(CONSOLE_WIDTH_SYMBOL) +

-							CONSOLE_WIDTH_SYMBOL.length(),

-					aString.length());

-

-			maxWidth = s.equals(CONSOLE_INIFINITE_SYMBOL) ?

-					DEFAULT_PERIOD_VALUE : Integer.parseInt(s);

-

-			resizeWidth = s.equals(CONSOLE_INIFINITE_SYMBOL);

-		}

-		else if ( ( nbExe == 1 ) || LaunchDelegate.fEnableTraceExtension ) {

-			s = aString.substring(

-					aString.indexOf(CONSOLE_WIDTH_SYMBOL) +

-							CONSOLE_WIDTH_SYMBOL.length(),

-					aString.indexOf(CONSOLE_COVERAGE_SYMBOL)-1);

-

-			maxWidth = s.equals(CONSOLE_INIFINITE_SYMBOL) ?

-					DEFAULT_PERIOD_VALUE : Integer.parseInt(s);

-

-			resizeWidth = s.equals(CONSOLE_INIFINITE_SYMBOL);

-

-			s = aString.substring(aString.indexOf("/")+1);

-			maxCoverage = Integer.parseInt(s);

-		}

-	}

-

-	private void majDisplayedData(String aString, int nbExe) {

-	    int beginIndex;

-	    int endIndex;

-	    int currentIndex;

-

-		beginIndex = CONSOLE_STEP_SYMBOL.length();

-		currentIndex = aString.indexOf(CONSOLE_CONTEXT_SYMBOL);

-		endIndex = currentIndex - 1;

-		nbStep = Integer.parseInt(aString.substring(beginIndex, endIndex));

-

-		beginIndex = currentIndex + CONSOLE_CONTEXT_SYMBOL.length();

-		currentIndex = aString.indexOf(CONSOLE_HEIGHT_SYMBOL);

-		endIndex = currentIndex - 1;

-		nbContext = Integer.parseInt(aString.substring(beginIndex, endIndex));

-

-		beginIndex = currentIndex + CONSOLE_HEIGHT_SYMBOL.length();

-		currentIndex = aString.indexOf(CONSOLE_WIDTH_SYMBOL);

-		endIndex = currentIndex - 1;

-

-//		nbHeight = Integer.parseInt(aString.substring(beginIndex, endIndex));

-		currentNbHeight = Integer.parseInt(

-				aString.substring(beginIndex, endIndex));

-

-		nbHeight = ( currentNbHeight > oldNbHeight ) ?

-				currentNbHeight : oldNbHeight;

-

-		if ( ( nbExe == 1 ) &&

-			 ( LaunchDelegate.fModelAnalysis.equals(

-					 ANALYSIS_PROFILE_MODEL_EXPLORATION)

-			|| LaunchDelegate.fModelAnalysis.equals(

-					ANALYSIS_PROFILE_MODEL_UNDEFINED) ) ) {

-			beginIndex = currentIndex + 6;

-			endIndex = aString.length();

-

-//			nbWidth = Integer.parseInt(aString.substring(beginIndex, endIndex));

-			currentNbWidth = Integer.parseInt(

-					aString.substring(beginIndex, endIndex));

-

-			nbWidth = ( currentNbWidth > oldNbWidth ) ?

-					currentNbWidth : oldNbWidth;

-		}

-		else if ( ( nbExe == 1 ) || LaunchDelegate.fEnableTraceExtension ) {

-			beginIndex = currentIndex + CONSOLE_WIDTH_SYMBOL.length();

-			currentIndex = aString.indexOf(CONSOLE_COVERAGE_SYMBOL);

-			endIndex = currentIndex - 1;

-

-//			nbWidth = Integer.parseInt(aString.substring(beginIndex, endIndex));

-			currentNbWidth = Integer.parseInt(

-					aString.substring(beginIndex, endIndex));

-			nbWidth = ( currentNbWidth > oldNbWidth ) ?

-					currentNbWidth : oldNbWidth;

-

-			beginIndex = currentIndex + CONSOLE_COVERAGE_SYMBOL.length();

-			endIndex = aString.indexOf("/");

-			nbCoverage = Integer.parseInt(

-					aString.substring(beginIndex, endIndex));

-		}

-	}

-

-	private void majStepAndMax() {

-		if ( resizeStep ) {

-			while ( nbStep >= maxStep ) {

-				if ( maxStep/stepStep <= 9 ) {

-					maxStep = maxStep + stepStep;

-				}

-				else {

-					stepStep = stepStep * DEFAULT_PERIOD_VALUE;

-					maxStep = stepStep;

-				}

-			}

-		}

-		if ( resizeContext ) {

-			while ( nbContext >= maxContext ) {

-				if ( maxContext/stepContext <= 9 ) {

-					maxContext = maxContext + stepContext;

-				}

-				else {

-					stepContext = stepContext * DEFAULT_PERIOD_VALUE;

-					maxContext = stepContext;

-				}

-			}

-		}

-		if ( resizeHeight ) {

-			while ( nbHeight >= maxHeight ) {

-				if ( maxHeight/stepHeight <= 9 ) {

-					maxHeight = maxHeight + stepHeight;

-				}

-				else {

-					stepHeight = stepHeight * DEFAULT_PERIOD_VALUE;

-					maxHeight = stepHeight;

-				}

-			}

-		}

-		if ( resizeWidth ) {

-			while ( nbWidth >= maxWidth ) {

-				if ( maxWidth/stepWidth <= 9 ) {

-					maxWidth = maxWidth + stepWidth;

-				}

-				else {

-					stepWidth = stepWidth * DEFAULT_PERIOD_VALUE;

-					maxWidth = stepWidth;

-				}

-			}

-		}

-	}

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/views/page/SEWConsoleViewer.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/views/page/SEWConsoleViewer.java
deleted file mode 100644
index 2a18a28..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/views/page/SEWConsoleViewer.java
+++ /dev/null
@@ -1,191 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration.ui.views.page;

-

-import org.eclipse.jface.text.BadLocationException;

-import org.eclipse.jface.text.DocumentEvent;

-import org.eclipse.jface.text.IDocument;

-import org.eclipse.jface.text.IDocumentListener;

-import org.eclipse.jface.text.IRegion;

-import org.eclipse.swt.custom.StyledText;

-import org.eclipse.swt.events.VerifyEvent;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.ui.console.ConsolePlugin;

-import org.eclipse.ui.console.IConsoleDocumentPartitioner;

-import org.eclipse.ui.console.TextConsole;

-import org.eclipse.ui.console.TextConsoleViewer;

-

-public class SEWConsoleViewer extends TextConsoleViewer {

-

-	/**

-	 * Console view identifier (value <code>"org.eclipse.ui.console.ConsoleView"</code>).

-	 */

-	public static final String ID_SEW_CONSOLE_VIEW =

-			"org.eclipse.efm.runconfiguration.ui.views.SymbolicExecutionView"; //$NON-NLS-1$

-

-    /**

-     * will always scroll with output if value is true.

-     */

-    private boolean fAutoScroll = true;

-

-    private boolean fWordWrap = false;

-

-    private IDocumentListener fDocumentListener;

-

-    public SEWConsoleViewer(Composite parent, TextConsole console) {

-        super(parent, console);

-    }

-

-//	/**

-//	 * Constructs a new viewer in the given parent for the specified console.

-//	 *

-//	 * @param parent the containing composite

-//	 * @param console the IO console

-//	 * @param scrollLockStateProvider the scroll lock state provider

-//	 * @since 3.6

-//	 */

-//	public SEWConsoleViewer(Composite parent, TextConsole console, IScrollLockStateProvider scrollLockStateProvider) {

-//		super(parent, console, scrollLockStateProvider);

-//	}

-

-    public boolean isAutoScroll() {

-        return fAutoScroll;

-    }

-

-    public void setAutoScroll(boolean scroll) {

-        fAutoScroll = scroll;

-    }

-

-    public boolean isWordWrap() {

-        return fWordWrap;

-    }

-

-    public void setWordWrap(boolean wordwrap) {

-        fWordWrap = wordwrap;

-        getTextWidget().setWordWrap(wordwrap);

-    }

-

-    @Override

-	protected void handleVerifyEvent(VerifyEvent e) {

-        IDocument doc = getDocument();

-        String[] legalLineDelimiters = doc.getLegalLineDelimiters();

-        String eventString = e.text;

-        try {

-            IConsoleDocumentPartitioner partitioner = (IConsoleDocumentPartitioner) doc.getDocumentPartitioner();

-            if (!partitioner.isReadOnly(e.start)) {

-                boolean isCarriageReturn = false;

-                for (int i = 0; i < legalLineDelimiters.length; i++) {

-                    if (e.text.equals(legalLineDelimiters[i])) {

-                        isCarriageReturn = true;

-                        break;

-                    }

-                }

-

-                if (!isCarriageReturn) {

-                    super.handleVerifyEvent(e);

-                    return;

-                }

-            }

-

-            int length = doc.getLength();

-            if (e.start == length) {

-                super.handleVerifyEvent(e);

-            } else {

-                try {

-                    doc.replace(length, 0, eventString);

-                    updateWidgetCaretLocation(length);

-                } catch (BadLocationException e1) {

-                }

-                e.doit = false;

-            }

-        } finally {

-            StyledText text = (StyledText) e.widget;

-            text.setCaretOffset(text.getCharCount());

-        }

-    }

-

-    /*

-     * Update the Text widget location to new location

-     */

-	private void updateWidgetCaretLocation(int documentCaret) {

-		int widgetCaret = modelOffset2WidgetOffset(documentCaret);

-		if (widgetCaret == -1) {

-			// try to move it to the closest spot

-			IRegion region = getModelCoverage();

-			if (region != null) {

-				if (documentCaret <= region.getOffset()) {

-					widgetCaret = 0;

-				} else if (documentCaret >= region.getOffset() + region.getLength()) {

-					widgetCaret = getVisibleRegion().getLength();

-				}

-			}

-		}

-		if (widgetCaret != -1) {

-			// there is a valid widget caret

-			getTextWidget().setCaretOffset(widgetCaret);

-			getTextWidget().showSelection();

-		}

-	}

-

-    /**

-     * makes the associated text widget uneditable.

-     */

-    public void setReadOnly() {

-        ConsolePlugin.getStandardDisplay().asyncExec(new Runnable() {

-            @Override

-			public void run() {

-                StyledText text = getTextWidget();

-                if (text != null && !text.isDisposed()) {

-                    text.setEditable(false);

-                }

-            }

-        });

-    }

-

-    /**

-     * @return <code>false</code> if text is editable

-     */

-    public boolean isReadOnly() {

-        return !getTextWidget().getEditable();

-    }

-

-    @Override

-	public void setDocument(IDocument document) {

-        IDocument oldDocument= getDocument();

-

-        super.setDocument(document);

-

-        if (oldDocument != null) {

-            oldDocument.removeDocumentListener(getDocumentListener());

-        }

-        if (document != null) {

-            document.addDocumentListener(getDocumentListener());

-        }

-    }

-

-    private IDocumentListener getDocumentListener() {

-        if (fDocumentListener == null) {

-            fDocumentListener= new IDocumentListener() {

-				@Override

-				public void documentAboutToBeChanged(DocumentEvent event) {

-                }

-

-                @Override

-				public void documentChanged(DocumentEvent event) {

-                    if (fAutoScroll) {

-                        revealEndOfDocument();

-                    }

-                }

-            };

-        }

-        return fDocumentListener;

-    }

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/views/page/SWTSpider.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/views/page/SWTSpider.java
deleted file mode 100644
index e8731b2..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/ui/views/page/SWTSpider.java
+++ /dev/null
@@ -1,424 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.runconfiguration.ui.views.page;

-

-import org.eclipse.efm.core.workflow.IWorkflowConfigurationConstants;

-import org.eclipse.efm.runconfiguration.LaunchDelegate;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.custom.ScrolledComposite;

-import org.eclipse.swt.events.PaintEvent;

-import org.eclipse.swt.events.PaintListener;

-import org.eclipse.swt.graphics.Device;

-import org.eclipse.swt.widgets.Canvas;

-import org.eclipse.swt.widgets.Display;

-

-public class SWTSpider extends Canvas

-		implements PaintListener , IWorkflowConfigurationConstants {

-

-	private boolean fRedrawBySystem;

-

-	private boolean fResetFlag = false;

-

-	private final String SPIDER4BRANCHES = "Spider4Branches";

-	private final String SPIDER5BRANCHES = "Spider5Branches";

-	private String fSpidertype = SPIDER4BRANCHES;

-

-	private String spiderTitle;

-	private int xDecalage;

-	private int yDecalage;

-	private int rayon;

-

-//	private int xDecalage = 150;

-//	private int yDecalage = 150;

-//	private int rayon = 60;

-

-	private int xCentre;

-	private int yCentre;

-

-	private int executionNumber = 0;

-

-	private int maxCoverage = 1;

-	private int currentCoverage = 0;

-	private int maxStep = 1;

-	private int currentStep = 0;

-	private int maxWidth = 1;

-	private int currentWidth = 0;

-	private int maxDepth = 1;

-	private int currentDepth = 0;

-	private int maxContext = 1;

-	private int currentContext = 0;

-

-	private int currentStep2 = 0;

-	private int currentWidth2 = 0;

-	private int currentDepth2 = 0;

-	private int currentContext2 = 0;

-

-	public SWTSpider(ScrolledComposite parent, int style, int x, int y, int r) {

-		super(parent, style);

-

-		xDecalage = x;

-		yDecalage = y;

-		rayon = r;

-

-		fRedrawBySystem = true;

-		spiderTitle = "";

-

-		this.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_TRANSPARENT));

-		addPaintListener(this);

-	}

-

-	@Override

-	public void paintControl(PaintEvent e) {

-

-		if( fRedrawBySystem || fResetFlag ) {

-// 			System.out.println("fRedrawBySystem:>" + fRedrawBySystem);

-			xCentre = xDecalage + rayon;

-			yCentre = yDecalage + rayon;

-

-//			Device device = Display.getCurrent();

-

-			switch( fSpidertype ) {

-			case SPIDER4BRANCHES:

-				initSpider4Segments(e);

-				break;

-			case SPIDER5BRANCHES:

-				initSpider5Segments(e);

-				break;

-			default:

-				// error !

-			}

-		}

-

-		switch( fSpidertype ) {

-		case SPIDER4BRANCHES:

-			draw4CurrentSegments(e, currentStep, maxStep,

-	 								currentDepth, maxDepth,

-	 								currentContext, maxContext,

-	 								currentWidth, maxWidth);

-			break;

-		case SPIDER5BRANCHES:

-			draw5CurrentSegments(e, currentCoverage, maxCoverage,

-					 				currentStep, maxStep,

-					 				currentWidth, maxWidth,

-					 				currentDepth, maxDepth,

-					 				currentContext, maxContext);

-			break;

-		default:

-			draw4CurrentSegments(e, currentStep, maxStep,

-									currentDepth, maxDepth,

-									currentContext, maxContext,

-									currentWidth, maxWidth);

-		}

-

-		if (LaunchDelegate.fEnableTraceExtension && executionNumber > 1 ){

-			drawExe2(e);

-		}

-	}

-

-	public void resetSpider() {

-		fResetFlag = true;

-

-		if ( LaunchDelegate.fModelAnalysis.equals(

-				ANALYSIS_PROFILE_MODEL_COVERAGE_TRANSITION)

-			|| LaunchDelegate.fModelAnalysis.equals(

-					ANALYSIS_PROFILE_MODEL_COVERAGE_BEHAVIOR) ) {

-

-			fSpidertype = SPIDER5BRANCHES;

-		}

-		else{

-			fSpidertype = SPIDER4BRANCHES;

-		}

-

-		Display.getDefault().syncExec(new Runnable() {

-			public void run() {

-				redraw();

-			}

-		});

-	}

-

-	private void initSpider4Segments(PaintEvent e) {

-		e.gc.fillRectangle(0, 0, SPIDER_RECTANGLE_WIDTH, SPIDER_RECTANGLE_HEIGHT);

-

-		spiderTitle = LaunchDelegate.fModelAnalysis.toUpperCase();

-		e.gc.drawString(spiderTitle, xDecalage + 60, yDecalage - 80);

-

-		// Point central

-		int rayonCentre = 2;

-		e.gc.fillOval(xCentre-rayonCentre, yCentre-rayonCentre, 2*rayonCentre, 2*rayonCentre);

-

-		// 4 Rayons

-		e.gc.drawLine(xCentre, yCentre, xCentre, yCentre-rayon);

-		e.gc.drawString("step", xCentre-15, yCentre-rayon-50);

-		e.gc.drawString(Integer.toString(currentStep)+"/"+Integer.toString(maxStep),

-						xCentre-20, yCentre-rayon-30);

-

-		e.gc.drawLine(xCentre, yCentre, xCentre+rayon, yCentre);

-		e.gc.drawString("depth", xCentre+rayon+20, yCentre-20);

-		e.gc.drawString(Integer.toString(currentDepth)+"/"+Integer.toString(maxDepth),

-				xCentre+rayon+20, yCentre);

-

-		e.gc.drawLine(xCentre, yCentre, xCentre, yCentre+rayon);

-		e.gc.drawString("context", xCentre-20, yCentre+rayon+10);

-		e.gc.drawString(Integer.toString(currentContext)+"/"+Integer.toString(maxContext),

-				xCentre-20, yCentre+rayon+30);

-

-		e.gc.drawLine(xCentre, yCentre, xCentre-rayon, yCentre);

-		e.gc.drawString("width", xCentre-rayon-50, yCentre-20);

-		e.gc.drawString(Integer.toString(currentWidth)+"/"+Integer.toString(maxWidth),

-				xCentre-rayon-50, yCentre);

-

-		// Segments

-		draw4RegularSegments(e, rayon / 4);

-		draw4RegularSegments(e, rayon / 2);

-		draw4RegularSegments(e, (rayon / 4) * 3);

-		draw4RegularSegments(e, rayon);

-	}

-

-	public void draw4RegularSegments(PaintEvent pe, int lg) {

-		pe.gc.drawLine(xCentre, yCentre - lg, xCentre+lg, yCentre);

-		pe.gc.drawLine(xCentre+lg, yCentre, xCentre, yCentre+lg);

-		pe.gc.drawLine(xCentre, yCentre+lg, xCentre-lg, yCentre);

-		pe.gc.drawLine(xCentre-lg, yCentre, xCentre, yCentre - lg);

-	}

-

-	public void draw4CurrentSegments(PaintEvent pe,

-			int cStep, int mStep,

-			int cDepth, int mDepth,

-			int cContext, int mContext,

-			int cWidth, int mWidth) {

-

-		if ( mStep == 0 ||

-			 mDepth == 0 ||

-			 mContext == 0 ||

-			 mWidth == 0 )

-			{

-				// Pb de rafraichissement des variables en multi-threading

-				// qui peut provoquer une division par zéro

-				//

-				return;

-			}

-

-		int lgPoint = rayon * cStep / mStep;

-		int xP1 = xCentre;

-		int yP1 = yCentre - lgPoint;

-

-		lgPoint = rayon * cDepth / mDepth;

-		int xP2 = xCentre+lgPoint;

-		int yP2 = yCentre;

-

-		lgPoint = rayon * cContext / mContext;

-		int xP3 = xCentre;

-		int yP3 = yCentre+lgPoint;

-

-		lgPoint = rayon * cWidth / mWidth;

-		int xP4 = xCentre-lgPoint;

-		int yP4 = yCentre;

-

-		Device device = Display.getCurrent();

-		pe.gc.setForeground(device.getSystemColor(SWT.COLOR_GREEN));

-

-		pe.gc.setLineWidth(3);

-		pe.gc.drawLine(xP1, yP1, xP2, yP2);

-		pe.gc.drawLine(xP2, yP2, xP3, yP3);

-		pe.gc.drawLine(xP3, yP3, xP4, yP4);

-		pe.gc.drawLine(xP4, yP4, xP1, yP1);

-	}

-

-

-	private static final int SPIDER_RECTANGLE_WIDTH = 600;

-

-	private static final int SPIDER_RECTANGLE_HEIGHT = 300;

-

-

-	private void initSpider5Segments(PaintEvent e) {

-		e.gc.fillRectangle(0, 0, SPIDER_RECTANGLE_WIDTH, SPIDER_RECTANGLE_HEIGHT);

-

-		spiderTitle = LaunchDelegate.fModelAnalysis.toUpperCase();

-		e.gc.drawString(spiderTitle, xDecalage + 60, yDecalage - 80);

-

-		// Point central

-		int rayonCentre = 2;

-		e.gc.fillOval(xCentre-rayonCentre, yCentre-rayonCentre, 2*rayonCentre, 2*rayonCentre);

-

-		// 5 Rayons

-//		e.gc.setBackground(device.getSystemColor(SWT.COLOR_TRANSPARENT));

-		e.gc.drawLine(xCentre, yCentre, xCentre, yCentre-rayon);

-		e.gc.drawString("coverage", xCentre-30, yCentre-rayon-50);

-		e.gc.drawString(Integer.toString(currentCoverage)+"/"+Integer.toString(maxCoverage),

-						xCentre-20, yCentre-rayon-30);

-

-		int xVariation1 = (int) (rayon * 0.951); // sinus(72)

-		int yVariation1 = (int) (rayon * 0.309); // cosinus(72)

-		e.gc.drawLine(xCentre, yCentre, xCentre-xVariation1, yCentre-yVariation1);

-		e.gc.drawString("context", xCentre-xVariation1-80, yCentre-yVariation1-20);

-		e.gc.drawString(Integer.toString(currentContext)+"/"+Integer.toString(maxContext),

-				xCentre-xVariation1-80, yCentre-yVariation1);

-

-		e.gc.drawLine(xCentre, yCentre, xCentre+xVariation1, yCentre-yVariation1);

-		e.gc.drawString("step", xCentre+xVariation1+10, yCentre-yVariation1-20);

-		e.gc.drawString(Integer.toString(currentStep)+"/"+Integer.toString(maxStep),

-				xCentre+xVariation1+10, yCentre-yVariation1);

-

-		int xVariation2 = (int) (rayon * 0.588); // sinus(72/2)

-		int yVariation2 = (int) (rayon * 0.809); // cosinus(72/2)

-		e.gc.drawLine(xCentre, yCentre, xCentre-xVariation2, yCentre+yVariation2);

-		e.gc.drawString("depth", xCentre-xVariation2-20, yCentre+yVariation2+10);

-		e.gc.drawString(Integer.toString(currentDepth)+"/"+Integer.toString(maxDepth),

-				xCentre-xVariation2-20, yCentre+yVariation2+30);

-

-		e.gc.drawLine(xCentre, yCentre, xCentre+xVariation2, yCentre+yVariation2);

-		e.gc.drawString("width", xCentre+xVariation2-20, yCentre+yVariation2+10);

-		e.gc.drawString(Integer.toString(currentWidth)+"/"+Integer.toString(maxWidth),

-				xCentre+xVariation2-20, yCentre+yVariation2+30);

-

-		// Segments

-		draw5RegularSegments(e, rayon / 4);

-		draw5RegularSegments(e, rayon / 2);

-		draw5RegularSegments(e, (rayon / 4) * 3);

-		draw5RegularSegments(e, rayon);

-	}

-

-	public void draw5RegularSegments(PaintEvent pe, int lg) {

-		int xVariation1 = (int) (lg * 0.951); // sinus(72)

-		int yVariation1 = (int) (lg  * 0.309); // cosinus(72)

-		pe.gc.drawLine(xCentre, yCentre - lg, xCentre-xVariation1, yCentre-yVariation1);

-		pe.gc.drawLine(xCentre, yCentre - lg, xCentre+xVariation1, yCentre-yVariation1);

-		int xVariation2 = (int) (lg * 0.588); // sinus(72/2)

-		int yVariation2 = (int) (lg * 0.809); // cosinus(72/2)

-		pe.gc.drawLine(xCentre-xVariation1, yCentre-yVariation1, xCentre-xVariation2, yCentre+yVariation2);

-		pe.gc.drawLine(xCentre+xVariation1, yCentre-yVariation1, xCentre+xVariation2, yCentre+yVariation2);

-		pe.gc.drawLine(xCentre-xVariation2, yCentre+yVariation2, xCentre+xVariation2, yCentre+yVariation2);

-	}

-

-	public void draw5CurrentSegments(PaintEvent pe,

-								int cCoverage, int mCoverage,

-								int cStep, int mStep,

-								int cWidth, int mWidth,

-								int cDepth, int mDepth,

-								int cContext, int mContext) {

-

-		if ( mCoverage == 0 ||

-			 mContext == 0 ||

-			 mDepth == 0 ||

-			 mWidth == 0 ||

-			 mStep == 0 )

-		{

-			// Pb de rafraichissement des variables en multi-threading

-			// qui peut provoquer une division par zéro

-			//

-			return;

-		}

-

-		int lgPoint = rayon * cCoverage / mCoverage;

-		int xP1 = xCentre;

-		int yP1 = yCentre - lgPoint;

-

-		lgPoint = rayon * cContext / mContext;

-		int xVariation = (int) (lgPoint * 0.951); // sinus(72)

-		int yVariation = (int) (lgPoint  * 0.309); // cosinus(72)

-		int xP2 = xCentre-xVariation;

-		int yP2 = yCentre-yVariation;

-

-		lgPoint = rayon * cDepth / mDepth;

-		xVariation = (int) (lgPoint * 0.588); // sinus(72/2)

-		yVariation = (int) (lgPoint * 0.809); // cosinus(72/2)

-		int xP3 = xCentre-xVariation;

-		int yP3 = yCentre+yVariation;

-

-		lgPoint = rayon * cWidth / mWidth;

-		xVariation = (int) (lgPoint * 0.588); // sinus(72/2)

-		yVariation = (int) (lgPoint * 0.809); // cosinus(72/2)

-		int xP4 = xCentre+xVariation;

-		int yP4 = yCentre+yVariation;

-

-		lgPoint = rayon * cStep / mStep;

-		xVariation = (int) (lgPoint * 0.951); // sinus(72)

-		yVariation = (int) (lgPoint  * 0.309); // cosinus(72)

-		int xP5 = xCentre+xVariation;

-		int yP5 = yCentre-yVariation;

-

-		Device device = Display.getCurrent();

-

-		if ( cCoverage < mCoverage)	{

-			pe.gc.setForeground(device.getSystemColor(SWT.COLOR_RED));

-		}

-		else {

-			pe.gc.setForeground(device.getSystemColor(SWT.COLOR_DARK_GREEN));

-			pe.gc.drawString(spiderTitle, xDecalage + 60, yDecalage - 80);

-			pe.gc.setForeground(device.getSystemColor(SWT.COLOR_GREEN));

-		}

-

-		pe.gc.setLineWidth(3);

-		pe.gc.drawLine(xP1, yP1, xP2, yP2);

-		pe.gc.drawLine(xP2, yP2, xP3, yP3);

-		pe.gc.drawLine(xP3, yP3, xP4, yP4);

-		pe.gc.drawLine(xP4, yP4, xP5, yP5);

-		pe.gc.drawLine(xP5, yP5, xP1, yP1);

-	}

-

-	private void drawExe2(PaintEvent pe) {

-		Device device = Display.getCurrent();

-		if ( currentCoverage < maxCoverage)	{

-			pe.gc.setForeground(device.getSystemColor(SWT.COLOR_RED));

-			pe.gc.drawString(spiderTitle, xDecalage + 60, yDecalage - 80);

-//			pe.gc.setForeground(device.getSystemColor(SWT.COLOR_DARK_GREEN));

-		}

-		else {

-			pe.gc.setForeground(device.getSystemColor(SWT.COLOR_DARK_GREEN));

-			pe.gc.drawString(spiderTitle, xDecalage + 60, yDecalage - 80);

-		}

-

-		pe.gc.drawString("Trace extension:", xDecalage + 250, yDecalage - 80);

-		pe.gc.drawString("- step = " + currentStep2, xDecalage + 250, yDecalage - 60);

-		pe.gc.drawString("- context = " + currentContext2, xDecalage + 250, yDecalage - 40);

-		pe.gc.drawString("- depth = " + currentDepth2, xDecalage + 250, yDecalage - 20);

-		pe.gc.drawString("- width = " + currentWidth2, xDecalage + 250, yDecalage);

-	}

-

-	public void updateSpider(int exeNumber,

-							 int cStep, int mStep,

-							 int cContext, int mContext,

-							 int cDepth, int mDepth,

-							 int cWidth, int mWidth,

-							 int cCoverage, int mCoverage) {

-

-		executionNumber = exeNumber;

-

-		if ( exeNumber == 1 ) {

-			currentStep = cStep;

-			maxStep = mStep;

-			currentContext = cContext;

-			maxContext = mContext;

-			currentDepth = cDepth;

-			maxDepth = mDepth;

-			currentWidth = cWidth;

-			maxWidth = mWidth;

-			currentCoverage = cCoverage;

-			maxCoverage = mCoverage;

-		}

-		else if ( LaunchDelegate.fEnableTraceExtension && exeNumber > 1 ) {

-			currentStep2 = cStep;

-			currentContext2 = cContext;

-			currentDepth2 = cDepth;

-			currentWidth2 = cWidth;

-		}

-

-		fRedrawBySystem = false;

-

-		Display.getDefault().syncExec(new Runnable() {

-			public void run() {

-				redraw();

-			}

-		});

-

-		fRedrawBySystem = true;

-	}

-}

diff --git a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/util/BackgroundResourceRefresher.java b/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/util/BackgroundResourceRefresher.java
deleted file mode 100644
index 15a0e33..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/org/eclipse/efm/runconfiguration/util/BackgroundResourceRefresher.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.efm.runconfiguration.util;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.RefreshUtil;
-import org.eclipse.debug.core.model.IProcess;
-
-/**
- * Refreshes resources as specified by a launch configuration, when
- * an associated process terminates.
- */
-public class BackgroundResourceRefresher implements IDebugEventSetListener  {
-
-	private ILaunchConfiguration fConfiguration;
-	private IProcess fProcess;
-
-	public BackgroundResourceRefresher(ILaunchConfiguration configuration, IProcess process) {
-		fConfiguration = configuration;
-		fProcess = process;
-	}
-
-	/**
-	 * If the process has already terminated, resource refreshing is done
-	 * immediately in the current thread. Otherwise, refreshing is done when the
-	 * process terminates.
-	 */
-	public void startBackgroundRefresh() {
-		synchronized (fProcess) {
-			if (fProcess.isTerminated()) {
-				refresh();
-			} else {
-				DebugPlugin.getDefault().addDebugEventListener(this);
-			}
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.IDebugEventSetListener#handleDebugEvents(org.eclipse.debug.core.DebugEvent[])
-	 */
-	public void handleDebugEvents(DebugEvent[] events) {
-		for (int i = 0; i < events.length; i++) {
-			DebugEvent event = events[i];
-			if (event.getSource() == fProcess && event.getKind() == DebugEvent.TERMINATE) {
-				DebugPlugin.getDefault().removeDebugEventListener(this);
-				refresh();
-				break;
-			}
-		}
-	}
-
-	/**
-	 * Submits a job to do the refresh
-	 */
-	protected void refresh() {
-		Job job= new Job("Refreshing resources...") {
-			public IStatus run(IProgressMonitor monitor) {
-				try {
-					RefreshUtil.refreshResources(fConfiguration, monitor);
-				} catch (CoreException e) {
-
-					e.printStackTrace();
-
-					return e.getStatus();
-				}
-				return Status.OK_STATUS;
-			}
-		};
-		job.schedule();
-	}
-}
diff --git a/gui/org.eclipse.efm.runconfiguration/src/plugin2analyse/SWTQualitativeInfo.java b/gui/org.eclipse.efm.runconfiguration/src/plugin2analyse/SWTQualitativeInfo.java
deleted file mode 100644
index b2a1233..0000000
--- a/gui/org.eclipse.efm.runconfiguration/src/plugin2analyse/SWTQualitativeInfo.java
+++ /dev/null
@@ -1,320 +0,0 @@
-/*****************************************************************************

- * Copyright (c) 2016 CEA LIST

- *

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *   Patrick Tessier CEA LIST-implementation

- *

- *****************************************************************************/

-package plugin2analyse;

-

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.events.PaintEvent;

-import org.eclipse.swt.events.PaintListener;

-import org.eclipse.swt.graphics.Device;

-import org.eclipse.swt.layout.FillLayout;

-import org.eclipse.swt.widgets.Canvas;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Display;

-import org.eclipse.swt.widgets.Shell;

-

-/**

- * This class is to display a info like camembert, bar or histogramme

- * <BR>

- * <img src="camembert.png">

- * <BR>

- * <h3>How to use:</h3>

- * <BR>

- * <code>

- *  int[] pourcent = { 30, 20, 10, 40 };<BR>

- *   String[] labels = { "Added", "Modified", "Deleted", "Stable" };<BR>

- *   Device device = Display.getCurrent();<BR>

- *   org.eclipse.swt.graphics.Color[] colors = { device.getSystemColor(SWT.COLOR_GREEN), device.getSystemColor(SWT.COLOR_CYAN),<BR>

- *   device.getSystemColor(SWT.COLOR_RED), device.getSystemColor(SWT.COLOR_YELLOW) };<BR>

- *   SWTQualitativeInfo canva = new SWTQualitativeInfo(shell, SWT.NULL, pourcent, labels, colors, HISTOGRAMME);<BR>

- * </code>

- **/

-public class SWTQualitativeInfo extends Canvas {

-

-	public static int DISK = 0;

-

-	public static int HISTOGRAMME = 1;

-

-	public static int BAR = 2;

-

-	public static int SPIDER = 3;

-

-	/**

-	 *

-	 * Constructor.

-	 *

-	 * @param parent

-	 *        the composite owner

-	 * @param style

-	 *        SWT style

-	 * @param pourcent

-	 *        list of pourcent

-	 * @param labels

-	 *        list of label that represent pourcent

-	 * @param colors

-	 *        list of color for each pourcent

-	 * @param type

-	 *        type of diagram DISK, HISTOGRAMME, BAR

-	 */

-	public SWTQualitativeInfo(Composite parent, int style, int[] pourcent,

-							String[] labels, org.eclipse.swt.graphics.Color[] colors, int type) {

-		super(parent, style);

-		this.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));

-		addPaintListener(new PaintListener() {

-

-			@Override

-			public void paintControl(PaintEvent e) {

-				e.gc.setBackground(e.gc.getDevice().getSystemColor(SWT.COLOR_WHITE));

-				e.gc.fillRectangle(0, 0, 600, 300);

-

-				if(type == BAR) {

-					e.gc.setBackground(e.gc.getDevice().getSystemColor(SWT.COLOR_BLACK));

-					e.gc.fillRectangle(29, 29, 102, 202);

-					int x = 30;

-					int y = 30;

-					for(int i = 0; i < pourcent.length; i++) {

-						e.gc.setBackground(colors[i]);

-						e.gc.fillRectangle(x, y, 100, pourcent[i] * 2);

-						e.gc.setBackground(e.gc.getDevice().getSystemColor(SWT.COLOR_WHITE));

-						e.gc.setForeground(e.gc.getDevice().getSystemColor(SWT.COLOR_BLACK));

-						e.gc.drawString(labels[i] + " " + pourcent[i] + "%", x + 110, y + 10);

-

-						y = y + pourcent[i] * 2;

-					}

-

-				} else if(type == DISK) {

-					e.gc.setBackground(e.gc.getDevice().getSystemColor(SWT.COLOR_BLACK));

-					//e.gc.fillOval(28, 28, 203, 203);

-					int startAngle = 0;

-					int arcAngle = 0;

-

-					int x = 30; // abcisse texte

-					int y = 240; // ordonnée texte

-

-					for(int i = 0; i < pourcent.length; i++) {

-						e.gc.setBackground(colors[i]);

-						arcAngle = (int)(pourcent[i] * 3.6);

-						e.gc.fillArc(30, 30, 200, 200, startAngle, arcAngle);

-						e.gc.fillRectangle(x, y, 10, 10);

-						e.gc.setBackground(e.gc.getDevice().getSystemColor(SWT.COLOR_WHITE));

-						e.gc.setForeground(e.gc.getDevice().getSystemColor(SWT.COLOR_BLACK));

-						e.gc.drawString(labels[i] + " " + pourcent[i] + "%", x + 20, y - 2);

-						y = y + 20;

-						startAngle = startAngle + arcAngle;

-					}

-

-				} else if(type == SPIDER) {

-					Device device = Display.getCurrent();

-

-					// Cercle de centre (xDecalage+rayon, yDecalage+rayon)

-					//

-					int xDecalage = 100;

-					int yDecalage = 100;

-					int rayon = 150;

-

-					int xCentre = xDecalage + rayon;

-					int yCentre = yDecalage + rayon;

-

-					// Disque englobant

-//					e.gc.setBackground(device.getSystemColor(SWT.COLOR_CYAN));

-//					e.gc.fillOval(xDecalage, xDecalage, 2*rayon,  2*rayon);

-

-					// Point central

-					int rayonCentre = 2;

-					e.gc.setBackground(device.getSystemColor(SWT.COLOR_BLACK));

-					e.gc.fillOval(xCentre-rayonCentre, yCentre-rayonCentre, 2*rayonCentre, 2*rayonCentre);

-

-					// Cercle extérieur

-//					e.gc.drawArc(xDecalage, yDecalage, 2*rayon, 2*rayon, 0, 360);

-

-					// 5 Rayons

-					e.gc.setBackground(device.getSystemColor(SWT.COLOR_TRANSPARENT));

-					e.gc.drawLine(xCentre, yCentre, xCentre, yCentre-rayon);

-					e.gc.drawString("coverage", xCentre-30, yCentre-rayon-30);

-

-					int xVariation1 = (int) (rayon * 0.951); // sinus(72)

-					int yVariation1 = (int) (rayon * 0.309); // cosinus(72)

-					e.gc.drawLine(xCentre, yCentre, xCentre-xVariation1, yCentre-yVariation1);

-					e.gc.drawString("width", xCentre-xVariation1-50, yCentre-yVariation1-10);

-

-					e.gc.drawLine(xCentre, yCentre, xCentre+xVariation1, yCentre-yVariation1);

-					e.gc.drawString("context", xCentre+xVariation1+10, yCentre-yVariation1-10);

-

-					int xVariation2 = (int) (rayon * 0.588); // sinus(72/2)

-					int yVariation2 = (int) (rayon * 0.809); // cosinus(72/2)

-					e.gc.drawLine(xCentre, yCentre, xCentre-xVariation2, yCentre+yVariation2);

-					e.gc.drawString("depth", xCentre-xVariation2-20, yCentre+yVariation2+10);

-

-					e.gc.drawLine(xCentre, yCentre, xCentre+xVariation2, yCentre+yVariation2);

-					e.gc.drawString("step", xCentre+xVariation2-20, yCentre+yVariation2+10);

-

-					e.gc.setBackground(device.getSystemColor(SWT.COLOR_GREEN));

-					// Segments

-					draw5Segments(e, rayon / 4, xCentre, yCentre);

-					draw5Segments(e, rayon / 2, xCentre, yCentre);

-					draw5Segments(e, (rayon / 4) * 3, xCentre, yCentre);

-					draw5Segments(e, rayon, xCentre, yCentre);

-

-

-					draw5SegmentsBis(e, xCentre, yCentre, rayon,

-							50, 25,

-							90, 30,

-							20, 20,

-							56, 12,

-							24, 16);

-

-				} else {

-					e.gc.setBackground(e.gc.getDevice().getSystemColor(SWT.COLOR_TITLE_INACTIVE_BACKGROUND_GRADIENT));

-					e.gc.fillRectangle(35, 29, labels.length * 30, 200);

-					e.gc.setBackground(e.gc.getDevice().getSystemColor(SWT.COLOR_BLACK));

-					e.gc.fillRectangle(29, 29, 5, 2);

-					e.gc.fillRectangle(29, 77, 5, 2);

-					e.gc.fillRectangle(29, 127, 5, 2);

-					e.gc.fillRectangle(29, 177, 5, 2);

-					e.gc.fillRectangle(29, 227, 5, 2);

-					e.gc.setBackground(e.gc.getDevice().getSystemColor(SWT.COLOR_WHITE));

-					e.gc.setForeground(e.gc.getDevice().getSystemColor(SWT.COLOR_BLACK));

-					e.gc.drawString("100%", 2, 19);

-					e.gc.drawString("75%", 2, 67);

-					e.gc.drawString("50%", 2, 117);

-					e.gc.drawString("25%", 2, 167);

-					e.gc.drawString("0%", 2, 217);

-					int x = 39;

-					int y = 30;

-					for(int i = 0; i < pourcent.length; i++) {

-						e.gc.setBackground(colors[i]);

-						e.gc.fillRectangle(x, (100 - pourcent[i]) * 2 + 29, 20, pourcent[i] * 2);

-						e.gc.fillRectangle(labels.length * 30 + 40, y + 10, 10, 10);

-						e.gc.setBackground(e.gc.getDevice().getSystemColor(SWT.COLOR_WHITE));

-						e.gc.setForeground(e.gc.getDevice().getSystemColor(SWT.COLOR_BLACK));

-						e.gc.drawString(labels[i] + " " + pourcent[i] + "%", labels.length * 30 + 50, y + 10);

-						y = y + 20;

-						x = x + 30;

-					}

-				}

-			}

-		});

-	}

-

-	public void draw5Segments(PaintEvent pe, int lg, int xCentre, int yCentre) {

-		int xVariation1 = (int) (lg * 0.951); // sinus(72)

-		int yVariation1 = (int) (lg  * 0.309); // cosinus(72)

-		pe.gc.drawLine(xCentre, yCentre - lg, xCentre-xVariation1, yCentre-yVariation1);

-		pe.gc.drawLine(xCentre, yCentre - lg, xCentre+xVariation1, yCentre-yVariation1);

-		int xVariation2 = (int) (lg * 0.588); // sinus(72/2)

-		int yVariation2 = (int) (lg * 0.809); // cosinus(72/2)

-		pe.gc.drawLine(xCentre-xVariation1, yCentre-yVariation1, xCentre-xVariation2, yCentre+yVariation2);

-		pe.gc.drawLine(xCentre+xVariation1, yCentre-yVariation1, xCentre+xVariation2, yCentre+yVariation2);

-		pe.gc.drawLine(xCentre-xVariation2, yCentre+yVariation2, xCentre+xVariation2, yCentre+yVariation2);

-	}

-

-	public void draw5SegmentsBis(PaintEvent pe, int xCentre, int yCentre, int rayon,

-								int maxCoverage, int currentCoverage,

-								int maxWidth, int currentWidth,

-								int maxDepth, int currentDepth,

-								int maxStep, int currentStep,

-								int maxContext, int currentContext) {

-

-		int lgPoint = rayon * currentCoverage / maxCoverage;

-		int xP1 = xCentre;

-		int yP1 = yCentre - lgPoint;

-

-		lgPoint = rayon * currentWidth / maxWidth;

-		int xVariation = (int) (lgPoint * 0.951); // sinus(72)

-		int yVariation = (int) (lgPoint  * 0.309); // cosinus(72)

-		int xP2 = xCentre-xVariation;

-		int yP2 = yCentre-yVariation;

-

-		lgPoint = rayon * currentDepth / maxDepth;

-		xVariation = (int) (lgPoint * 0.588); // sinus(72/2)

-		yVariation = (int) (lgPoint * 0.809); // cosinus(72/2)

-		int xP3 = xCentre-xVariation;

-		int yP3 = yCentre+yVariation;

-

-		lgPoint = rayon * currentStep / maxStep;

-		xVariation = (int) (lgPoint * 0.588); // sinus(72/2)

-		yVariation = (int) (lgPoint * 0.809); // cosinus(72/2)

-		int xP4 = xCentre+xVariation;

-		int yP4 = yCentre+yVariation;

-

-		lgPoint = rayon * currentContext / maxContext;

-		xVariation = (int) (lgPoint * 0.951); // sinus(72)

-		yVariation = (int) (lgPoint  * 0.309); // cosinus(72)

-		int xP5 = xCentre+xVariation;

-		int yP5 = yCentre-yVariation;

-		Device device = Display.getCurrent();

-		pe.gc.setBackground(device.getSystemColor(SWT.COLOR_RED));

-		pe.gc.setForeground(device.getSystemColor(SWT.COLOR_RED));

-		pe.gc.setLineWidth(3);

-		pe.gc.drawLine(xP1, yP1, xP2, yP2);

-		pe.gc.drawLine(xP2, yP2, xP3, yP3);

-		pe.gc.drawLine(xP3, yP3, xP4, yP4);

-		pe.gc.drawLine(xP4, yP4, xP5, yP5);

-		pe.gc.drawLine(xP5, yP5, xP1, yP1);

-	}

-

-

-	public static SWTQualitativeInfo createSpider(Composite parent) {

-		int[] pourcent = { 30, 20, 10, 40 };

-		String[] labels = { "Added", "Modified", "Deleted", "Stable" };

-		Device device = Display.getCurrent();

-		org.eclipse.swt.graphics.Color[] colors = { device.getSystemColor(SWT.COLOR_GREEN),

-				device.getSystemColor(SWT.COLOR_CYAN),

-				device.getSystemColor(SWT.COLOR_RED),

-				device.getSystemColor(SWT.COLOR_YELLOW) };

-

-//		SWTQualitativeInfo canva = new SWTQualitativeInfo(shell, SWT.NULL, pourcent, labels, colors, DISK);

-		SWTQualitativeInfo canva = new SWTQualitativeInfo(parent, SWT.NULL,

-				pourcent, labels, colors, SPIDER);

-

-		return canva;

-	}

-

-	/**

-	 * static main to execute the example

-	 *

-	 * @param a

-	 */

-	public static void main(String[] a) {

-		// Pour le lancer avec cliq droit : run as java application

-		final Display display = new Display();

-

-		// Pour le lancer depuis un code java

-		//Display.getDefault();

-

-

-		final Shell shell = new Shell(display);

-		int[] pourcent = { 30, 20, 10, 40 };

-		String[] labels = { "Added", "Modified", "Deleted", "Stable" };

-		Device device = Display.getCurrent();

-		org.eclipse.swt.graphics.Color[] colors = { device.getSystemColor(SWT.COLOR_GREEN),

-				device.getSystemColor(SWT.COLOR_CYAN),

-				device.getSystemColor(SWT.COLOR_RED),

-				device.getSystemColor(SWT.COLOR_YELLOW) };

-

-		@SuppressWarnings("unused")

-//		SWTQualitativeInfo canva = new SWTQualitativeInfo(shell, SWT.NULL, pourcent, labels, colors, DISK);

-		SWTQualitativeInfo canva = new SWTQualitativeInfo(shell, SWT.NULL, pourcent, labels, colors, SPIDER);

-

-		shell.setLayout(new FillLayout());

-		shell.pack();

-		shell.setSize(500, 500); // largeur et hauteur de la fenêtre

-

-		shell.setText("Repartition");

-		shell.open();

-		while(!shell.isDisposed()) {

-			if(!display.readAndDispatch())

-				display.sleep();

-		}

-	}

-}

diff --git a/gui/org.eclipse.efm.ui.newproject.examples/.project b/gui/org.eclipse.efm.ui.newproject.examples/.project
deleted file mode 100644
index 94452bf..0000000
--- a/gui/org.eclipse.efm.ui.newproject.examples/.project
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<projectDescription>

-	<name>org.eclipse.efm.ui.newproject.examples</name>

-	<comment></comment>

-	<projects>

-	</projects>

-	<buildSpec>

-		<buildCommand>

-			<name>org.eclipse.jdt.core.javabuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.ManifestBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.SchemaBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.m2e.core.maven2Builder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-	</buildSpec>

-	<natures>

-		<nature>org.eclipse.m2e.core.maven2Nature</nature>

-		<nature>org.eclipse.pde.PluginNature</nature>

-		<nature>org.eclipse.jdt.core.javanature</nature>

-	</natures>

-</projectDescription>

diff --git a/gui/org.eclipse.efm.ui.newproject.examples/.settings/org.eclipse.jdt.core.prefs b/gui/org.eclipse.efm.ui.newproject.examples/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index f42de36..0000000
--- a/gui/org.eclipse.efm.ui.newproject.examples/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,7 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
-org.eclipse.jdt.core.compiler.compliance=1.7
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.7
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/META-INF/MANIFEST.MF b/gui/org.eclipse.efm.ui.newproject.examples/META-INF/MANIFEST.MF
deleted file mode 100644
index 13b3d05..0000000
--- a/gui/org.eclipse.efm.ui.newproject.examples/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,10 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: EFM Examples Wizard
-Bundle-SymbolicName: org.eclipse.efm.ui.newproject.examples;singleton:=true
-Bundle-Version: 0.0.1.qualifier
-Bundle-Vendor: CEA - LIST
-Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Bundle-ActivationPolicy: lazy
-Require-Bundle: org.eclipse.ui;bundle-version="3.108.0",
- org.eclipse.emf.common.ui;bundle-version="2.11.0"
diff --git a/gui/org.eclipse.efm.ui.newproject.examples/build.properties b/gui/org.eclipse.efm.ui.newproject.examples/build.properties
deleted file mode 100644
index 6e19223..0000000
--- a/gui/org.eclipse.efm.ui.newproject.examples/build.properties
+++ /dev/null
@@ -1,6 +0,0 @@
-source.. = src/
-output.. = target/classes/
-bin.includes = plugin.xml,\
-               META-INF/,\
-               .,\
-               examples/
diff --git a/gui/org.eclipse.efm.ui.newproject.standalone/.classpath b/gui/org.eclipse.efm.ui.newproject.standalone/.classpath
deleted file mode 100644
index 43b9862..0000000
--- a/gui/org.eclipse.efm.ui.newproject.standalone/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="output" path="target/classes"/>
-</classpath>
diff --git a/gui/org.eclipse.efm.ui.newproject.standalone/.gitignore b/gui/org.eclipse.efm.ui.newproject.standalone/.gitignore
deleted file mode 100644
index bbdfc34..0000000
--- a/gui/org.eclipse.efm.ui.newproject.standalone/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/bin/
-*.md.html
diff --git a/gui/org.eclipse.efm.ui.newproject.standalone/.project b/gui/org.eclipse.efm.ui.newproject.standalone/.project
deleted file mode 100644
index 1a329b5..0000000
--- a/gui/org.eclipse.efm.ui.newproject.standalone/.project
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<projectDescription>

-	<name>org.eclipse.efm.ui.newproject.standalone</name>

-	<comment></comment>

-	<projects>

-	</projects>

-	<buildSpec>

-		<buildCommand>

-			<name>org.eclipse.jdt.core.javabuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.ManifestBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.SchemaBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.m2e.core.maven2Builder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-	</buildSpec>

-	<natures>

-		<nature>org.eclipse.m2e.core.maven2Nature</nature>

-		<nature>org.eclipse.pde.PluginNature</nature>

-		<nature>org.eclipse.jdt.core.javanature</nature>

-	</natures>

-</projectDescription>

diff --git a/gui/org.eclipse.efm.ui.newproject.standalone/.settings/org.eclipse.core.resources.prefs b/gui/org.eclipse.efm.ui.newproject.standalone/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/gui/org.eclipse.efm.ui.newproject.standalone/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/gui/org.eclipse.efm.ui.newproject.standalone/.settings/org.eclipse.jdt.core.prefs b/gui/org.eclipse.efm.ui.newproject.standalone/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index f42de36..0000000
--- a/gui/org.eclipse.efm.ui.newproject.standalone/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,7 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
-org.eclipse.jdt.core.compiler.compliance=1.7
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.7
diff --git a/gui/org.eclipse.efm.ui.newproject.standalone/.settings/org.eclipse.m2e.core.prefs b/gui/org.eclipse.efm.ui.newproject.standalone/.settings/org.eclipse.m2e.core.prefs
deleted file mode 100644
index f897a7f..0000000
--- a/gui/org.eclipse.efm.ui.newproject.standalone/.settings/org.eclipse.m2e.core.prefs
+++ /dev/null
@@ -1,4 +0,0 @@
-activeProfiles=
-eclipse.preferences.version=1
-resolveWorkspaceProjects=true
-version=1
diff --git a/gui/org.eclipse.efm.ui.newproject.standalone/about.html b/gui/org.eclipse.efm.ui.newproject.standalone/about.html
deleted file mode 100644
index d35d5ae..0000000
--- a/gui/org.eclipse.efm.ui.newproject.standalone/about.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>June 5, 2007</p>	
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise 
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available 
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is 
-being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content.  Check the Redistributor's license that was 
-provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
-</html>
diff --git a/gui/org.eclipse.efm.ui.newproject.standalone/build.properties b/gui/org.eclipse.efm.ui.newproject.standalone/build.properties
deleted file mode 100644
index 2b0d95b..0000000
--- a/gui/org.eclipse.efm.ui.newproject.standalone/build.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-source.. = src/
-output.. = bin/
-bin.includes = plugin.xml,\
-               META-INF/,\
-               .
diff --git a/gui/org.eclipse.efm.ui.newproject.standalone/plugin.xml b/gui/org.eclipse.efm.ui.newproject.standalone/plugin.xml
deleted file mode 100644
index e5cf0f6..0000000
--- a/gui/org.eclipse.efm.ui.newproject.standalone/plugin.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.4"?>
-<plugin>
-
-   <extension
-         name="EFM Projects"
-         point="org.eclipse.ui.newWizards">
-      <category
-            id="org.eclipse.efm.ui.newproject.standalone.EFM"
-            name="EFM Project">
-      </category>
-      <wizard
-            category="org.eclipse.efm.ui.newproject.standalone.EFM"
-            class="org.eclipse.efm.ui.newproject.standalone.NewEFMprojectWizard"
-            icon="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"
-            id="org.eclipse.efm.ui.newproject.standalone.EFMnp"
-            name="EFM Project">
-      </wizard>
-   </extension>
-
-</plugin>
diff --git a/gui/org.eclipse.efm.ui.newproject.standalone/pom.xml b/gui/org.eclipse.efm.ui.newproject.standalone/pom.xml
deleted file mode 100644
index 1a9c3d7..0000000
--- a/gui/org.eclipse.efm.ui.newproject.standalone/pom.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<parent>
-		<groupId>org.eclipse.efm</groupId>
-		<artifactId>org.eclipse.efm.modeling.gui</artifactId>
-		<version>0.0.1-SNAPSHOT</version>
-	</parent>
-	<artifactId>org.eclipse.efm.ui.newproject.standalone</artifactId>
-	<packaging>eclipse-plugin</packaging>
-	<name>org.eclipse.efm.ui.newproject.standalone</name>
-	<description>This plug-in contains the XXXXXXXXX.</description>
-</project>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.ui.newproject.templates/.settings/org.eclipse.jdt.core.prefs b/gui/org.eclipse.efm.ui.newproject.templates/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index f42de36..0000000
--- a/gui/org.eclipse.efm.ui.newproject.templates/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,7 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
-org.eclipse.jdt.core.compiler.compliance=1.7
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.7
diff --git a/gui/org.eclipse.efm.ui.newproject.templates/META-INF/MANIFEST.MF b/gui/org.eclipse.efm.ui.newproject.templates/META-INF/MANIFEST.MF
deleted file mode 100644
index 33da674..0000000
--- a/gui/org.eclipse.efm.ui.newproject.templates/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,14 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: EFM Templates Wizard
-Bundle-SymbolicName: org.eclipse.efm.ui.newproject.templates;singleton:=true
-Bundle-Version: 0.0.1.qualifier
-Bundle-Vendor: CEA - LIST
-Require-Bundle: org.eclipse.papyrus.uml.tools,
- org.eclipse.uml2.common,
- org.eclipse.uml2.uml,
- org.eclipse.efm.ui.resources,
- org.eclipse.papyrus.uml.diagram.common;bundle-version="2.0.0"
-Export-Package: org.eclipse.efm.ui.newproject.templates
-Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Bundle-ActivationPolicy: lazy
diff --git a/gui/org.eclipse.efm.ui.newproject.templates/build.properties b/gui/org.eclipse.efm.ui.newproject.templates/build.properties
deleted file mode 100644
index 8a6430d..0000000
--- a/gui/org.eclipse.efm.ui.newproject.templates/build.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-source.. = src/
-output.. = target/classes/
-bin.includes = plugin.xml,\
-			   META-INF/,\
-               .
diff --git a/gui/org.eclipse.efm.ui.newproject.templates/plugin.xml b/gui/org.eclipse.efm.ui.newproject.templates/plugin.xml
deleted file mode 100644
index 66a782d..0000000
--- a/gui/org.eclipse.efm.ui.newproject.templates/plugin.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.4"?>
-<plugin>
-	
-     <extension point="org.eclipse.papyrus.infra.ui.papyrusDiagram">
-     	<!-- "id" is an important key that should be matched by viewpoint category 
-     	see org.eclipse.efm.papyrus.diagram.statemachine/resources/configuration/statemachine.configuration
-     	see org.eclipse.efm.papyrus.diagram.internalblock/resources/configuration/internalblock.configuration-->
-     	
-     	<!-- "label" appears under DSML in the first page of the New Papyrus Project wizard -->
-	     <diagramCategory
-	     		id="FormalML"
-	            class="org.eclipse.efm.ui.newproject.templates.EFMModelCreationCommand"
-	            icon="platform:/plugin/org.eclipse.efm.ui.resources/icons/diversity_icon.png"
-	            label="Eclipse Formal Modeling Language"
-	            description="EFM diagram category">
-	     </diagramCategory>
-    </extension>
-    
-    
-
-</plugin>
diff --git a/gui/org.eclipse.efm.ui.preferences.runconfigurations/.classpath b/gui/org.eclipse.efm.ui.preferences.runconfigurations/.classpath
deleted file mode 100644
index b862a29..0000000
--- a/gui/org.eclipse.efm.ui.preferences.runconfigurations/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<classpath>

-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>

-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>

-	<classpathentry kind="src" path="src"/>

-	<classpathentry kind="output" path="bin"/>

-</classpath>

diff --git a/gui/org.eclipse.efm.ui.preferences.runconfigurations/.gitignore b/gui/org.eclipse.efm.ui.preferences.runconfigurations/.gitignore
deleted file mode 100644
index bbdfc34..0000000
--- a/gui/org.eclipse.efm.ui.preferences.runconfigurations/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/bin/
-*.md.html
diff --git a/gui/org.eclipse.efm.ui.preferences.runconfigurations/.project b/gui/org.eclipse.efm.ui.preferences.runconfigurations/.project
deleted file mode 100644
index 2f6f450..0000000
--- a/gui/org.eclipse.efm.ui.preferences.runconfigurations/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<projectDescription>

-	<name>org.eclipse.efm.ui.preferences.runconfigurations</name>

-	<comment></comment>

-	<projects>

-	</projects>

-	<buildSpec>

-		<buildCommand>

-			<name>org.eclipse.jdt.core.javabuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.ManifestBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.SchemaBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-	</buildSpec>

-	<natures>

-		<nature>org.eclipse.pde.PluginNature</nature>

-		<nature>org.eclipse.jdt.core.javanature</nature>

-	</natures>

-</projectDescription>

diff --git a/gui/org.eclipse.efm.ui.preferences.runconfigurations/.settings/org.eclipse.jdt.core.prefs b/gui/org.eclipse.efm.ui.preferences.runconfigurations/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 295926d..0000000
--- a/gui/org.eclipse.efm.ui.preferences.runconfigurations/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,7 +0,0 @@
-eclipse.preferences.version=1

-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled

-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8

-org.eclipse.jdt.core.compiler.compliance=1.8

-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error

-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error

-org.eclipse.jdt.core.compiler.source=1.8

diff --git a/gui/org.eclipse.efm.ui.preferences.runconfigurations/META-INF/MANIFEST.MF b/gui/org.eclipse.efm.ui.preferences.runconfigurations/META-INF/MANIFEST.MF
deleted file mode 100644
index 174ae4a..0000000
--- a/gui/org.eclipse.efm.ui.preferences.runconfigurations/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,14 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.efm.ui.preferences.runconfigurations;singleton:=true
-Bundle-Version: 0.0.1.qualifier
-Bundle-ClassPath: .
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Require-Bundle: org.eclipse.ui,
- org.eclipse.core.runtime,
- org.eclipse.efm.core.workflow,
- org.eclipse.efm.ui.views
-Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Bundle-ActivationPolicy: lazy
diff --git a/gui/org.eclipse.efm.ui.preferences.runconfigurations/about.html b/gui/org.eclipse.efm.ui.preferences.runconfigurations/about.html
deleted file mode 100644
index d35d5ae..0000000
--- a/gui/org.eclipse.efm.ui.preferences.runconfigurations/about.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>June 5, 2007</p>	
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise 
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available 
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is 
-being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content.  Check the Redistributor's license that was 
-provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
-</html>
diff --git a/gui/org.eclipse.efm.ui.preferences.runconfigurations/build.properties b/gui/org.eclipse.efm.ui.preferences.runconfigurations/build.properties
deleted file mode 100644
index c469345..0000000
--- a/gui/org.eclipse.efm.ui.preferences.runconfigurations/build.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-source.. = src/

-output.. = target/classes/

-bin.includes = plugin.xml,\

-               META-INF/,\

-               .

diff --git a/gui/org.eclipse.efm.ui.preferences.runconfigurations/plugin.xml b/gui/org.eclipse.efm.ui.preferences.runconfigurations/plugin.xml
deleted file mode 100644
index 1587260..0000000
--- a/gui/org.eclipse.efm.ui.preferences.runconfigurations/plugin.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<?eclipse version="3.4"?>

-<plugin>

-

-   <extension

-         point="org.eclipse.ui.preferencePages">

-      <page

-            category="org.eclipse.efm.ui.preferences_root.mainPage"

-            class="org.eclipse.efm.ui.preferences.runconfigurations.MainPreferencePage"

-            id="org.eclipse.efm.ui.preferences.runconfigurations.mainPage"

-            name="Symbolic Execution Workflow">

-      </page>

-      <page

-            category="org.eclipse.efm.ui.preferences.runconfigurations.mainPage"

-            class="org.eclipse.efm.ui.preferences.runconfigurations.ExternalToolsPreferencePage"

-            id="org.eclipse.efm.ui.preferences.runconfigurations.externalToolsPage"

-            name="External Tools">

-      </page>

-      <page

-            category="org.eclipse.efm.ui.preferences.runconfigurations.mainPage"

-            class="org.eclipse.efm.ui.preferences.runconfigurations.LaunchConfigurationPreferencePage"

-            id="org.eclipse.efm.ui.preferences.runconfigurations.launchConfigurationPage"

-            name="Launch Configuration">

-      </page>

-   </extension>

-   <extension

-         point="org.eclipse.core.runtime.preferences">

-      <initializer

-            class="org.eclipse.efm.ui.preferences.runconfigurations.ToolPreferenceInitializer">

-      </initializer>

-   </extension>

-

-

-

-

-

-</plugin>

diff --git a/gui/org.eclipse.efm.ui.preferences.runconfigurations/src/org/eclipse/efm/ui/preferences/runconfigurations/ExternalToolsPreferencePage.java b/gui/org.eclipse.efm.ui.preferences.runconfigurations/src/org/eclipse/efm/ui/preferences/runconfigurations/ExternalToolsPreferencePage.java
deleted file mode 100644
index 9d28538..0000000
--- a/gui/org.eclipse.efm.ui.preferences.runconfigurations/src/org/eclipse/efm/ui/preferences/runconfigurations/ExternalToolsPreferencePage.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.preferences.runconfigurations;

-

-import java.util.Locale;

-

-import org.eclipse.core.runtime.Path;

-import org.eclipse.core.runtime.Platform;

-import org.eclipse.efm.core.workflow.Activator;

-import org.eclipse.efm.core.workflow.ToolConstants;

-import org.eclipse.jface.preference.FieldEditorPreferencePage;

-import org.eclipse.jface.preference.FileFieldEditor;

-import org.eclipse.jface.preference.IPreferenceStore;

-import org.eclipse.ui.IWorkbench;

-import org.eclipse.ui.IWorkbenchPreferencePage;

-

-public class ExternalToolsPreferencePage extends FieldEditorPreferencePage

-			implements IWorkbenchPreferencePage , ToolConstants {

-

-	public ExternalToolsPreferencePage() {

-		super(GRID);

-

-		setPreferenceStore( Activator.getDefault().getPreferenceStore() );

-

-		setDescription( "External tool for Dot Format (from GraphViz.org) Graph Viewer" );

-	}

-

-	@Override

-	public void init(IWorkbench workbench) {

-		// TODO Auto-generated method stub

-	}

-

-	@Override

-	protected void createFieldEditors() {

-		FileFieldEditor fileField = new FileFieldEditor(

-				ATTR_DIVERSITY_GRAPH_VIEWER_LOCATION,

-				//		"The Diversity AVM executable location:",

-				"Graph Viewer:",

-				true, FileFieldEditor.VALIDATE_ON_FOCUS_LOST,

-				getFieldEditorParent());

-

-	    String[] filterExtensions = new String[] {"*.bat", "*.sh", "*.exe", "*.*"};

-

-	    if( Platform.getOS().startsWith(Platform.OS_WIN32) ||

-	    	(Platform.getOS().toLowerCase(Locale.ENGLISH).indexOf("win") >= 0) ) {

-	    	filterExtensions = new String[] { "*.bat", "*.exe", "*.*"};

-	    }

-	    else {

-	    	filterExtensions = new String[] { "*.sh", "*.*" };

-	    }

-

-		fileField.setFileExtensions( filterExtensions );

-

-		addField( fileField );

-	}

-

-	@Override

-	public boolean performOk() {

-		if( super.performOk() ) {

-			IPreferenceStore prefs = Activator.getDefault().getPreferenceStore();

-

-			Activator.setExternalDotGraphViewerPath( new Path( prefs.getString(

-					ToolConstants.ATTR_DIVERSITY_GRAPH_VIEWER_LOCATION) ) );

-

-			return true;

-		}

-		else {

-			return false;

-		}

-	}

-

-}

-

diff --git a/gui/org.eclipse.efm.ui.preferences.runconfigurations/src/org/eclipse/efm/ui/preferences/runconfigurations/LaunchConfigurationPreferencePage.java b/gui/org.eclipse.efm.ui.preferences.runconfigurations/src/org/eclipse/efm/ui/preferences/runconfigurations/LaunchConfigurationPreferencePage.java
deleted file mode 100644
index 1ab5711..0000000
--- a/gui/org.eclipse.efm.ui.preferences.runconfigurations/src/org/eclipse/efm/ui/preferences/runconfigurations/LaunchConfigurationPreferencePage.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.preferences.runconfigurations;

-

-import org.eclipse.efm.core.workflow.Activator;

-import org.eclipse.efm.core.workflow.ToolConstants;

-import org.eclipse.efm.core.workflow.AbstractLaunchDelegate;

-import org.eclipse.jface.preference.BooleanFieldEditor;

-import org.eclipse.jface.preference.FieldEditorPreferencePage;

-import org.eclipse.ui.IWorkbench;

-import org.eclipse.ui.IWorkbenchPreferencePage;

-

-/**

- * This class represents a preference page that

- * is contributed to the Preferences dialog. By

- * subclassing <samp>FieldEditorPreferencePage</samp>, we

- * can use the field support built into JFace that allows

- * us to create a page that is small and knows how to

- * save, restore and apply itself.

- * <p>

- * This page is used to modify preferences only. They

- * are stored in the preference store that belongs to

- * the main plug-in class. That way, preferences can

- * be accessed directly via the preference store.

- */

-

-

-public class LaunchConfigurationPreferencePage

-	extends FieldEditorPreferencePage

-	implements IWorkbenchPreferencePage {

-

-	public LaunchConfigurationPreferencePage() {

-		super(GRID);

-		setPreferenceStore(Activator.getDefault().getPreferenceStore());

-		setDescription("Preferences for Launch Configuration");

-		initializeDefaults();

-	}

-/**

- * Sets the default values of the preferences.

- */

-	private void initializeDefaults() {

-	}

-

-/**

- * Creates the field editors. Field editors are abstractions of

- * the common GUI blocks needed to manipulate various types

- * of preferences. Each field editor knows how to save and

- * restore itself.

- */

-

-	public void createFieldEditors() {

-		addField(new BooleanFieldEditor(

-				ToolConstants.PREF_EXPERT_MODE,

-				"&Expert Mode",getFieldEditorParent()));

-

-		if( AbstractLaunchDelegate.ENABLED_SYMBEX_INCUBATION_MODE_OPTION ) {

-			addField(new BooleanFieldEditor(

-					ToolConstants.PREF_INCUBATION_MODE,

-					"&Incubation Mode",getFieldEditorParent()));

-		}

-

-		addField(new BooleanFieldEditor(

-				ToolConstants.PREF_DEBUG_OPTIONS,

-				"&Debug Option",getFieldEditorParent()));

-

-		if( AbstractLaunchDelegate.ENABLED_SYMBEX_DEVELOPER_MODE_OPTION ) {

-			addField(new BooleanFieldEditor(

-					ToolConstants.PREF_SYMBEX_DEVELOPER_MODE,

-					"&Symbex Developer Mode",getFieldEditorParent()));

-		}

-

-		addField(new BooleanFieldEditor(

-				ToolConstants.PREF_CONSOLE_VIEW,

-				"&Display Console",getFieldEditorParent()));

-

-		addField(new BooleanFieldEditor(

-				ToolConstants.PREF_SPIDER_VIEW,

-				"&Display Spider",getFieldEditorParent()));

-	}

-

-	public void init(IWorkbench workbench) {

-	}

-}
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.ui.preferences.runconfigurations/src/org/eclipse/efm/ui/preferences/runconfigurations/MainPreferencePage.java b/gui/org.eclipse.efm.ui.preferences.runconfigurations/src/org/eclipse/efm/ui/preferences/runconfigurations/MainPreferencePage.java
deleted file mode 100644
index 460611e..0000000
--- a/gui/org.eclipse.efm.ui.preferences.runconfigurations/src/org/eclipse/efm/ui/preferences/runconfigurations/MainPreferencePage.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.preferences.runconfigurations;

-

-import org.eclipse.core.runtime.Path;

-import org.eclipse.efm.core.workflow.Activator;

-import org.eclipse.efm.core.workflow.ToolConstants;

-import org.eclipse.efm.ui.views.utils.SWTFactory;

-import org.eclipse.jface.preference.DirectoryFieldEditor;

-import org.eclipse.jface.preference.FieldEditorPreferencePage;

-import org.eclipse.jface.preference.FileFieldEditor;

-import org.eclipse.jface.preference.IPreferenceStore;

-import org.eclipse.ui.IWorkbench;

-import org.eclipse.ui.IWorkbenchPreferencePage;

-

-public class MainPreferencePage extends FieldEditorPreferencePage

-			implements IWorkbenchPreferencePage , ToolConstants {

-

-	public MainPreferencePage() {

-		super(GRID);

-

-		setPreferenceStore( Activator.getDefault().getPreferenceStore() );

-

-		setDescription( "The SEW Abstract Virtual Machine" );

-	}

-

-

-	private FileFieldEditor fSEPLocationFileField;

-

-	@Override

-	protected void createFieldEditors() {

-		addField( new DirectoryFieldEditor( ATTR_DIVERSITY_INSTALLATION_LOCATION,

-//				"The Diversity tool installation directory:",

-				"Installation:",

-				getFieldEditorParent()) );

-

-//		addField( new PathEditor( ATTR_DIVERSITY_INSTALL_PATH,

-//				"The Diversity tool installation directory:",

-//				"Choose a Directory",

-//				getFieldEditorParent()) );

-

-		SWTFactory.createHorizontalSpacer(getFieldEditorParent(), 3);

-

-

-		fSEPLocationFileField = new FileFieldEditor(

-				ATTR_DIVERSITY_AVM_EXECUTABLE_LOCATION,

-//				"The Diversity AVM executable location:",

-				"Executable:",

-				true, FileFieldEditor.VALIDATE_ON_FOCUS_LOST,

-				getFieldEditorParent());

-

-		fSEPLocationFileField.setFileExtensions(

-				new String[] { "*.exe" , "*.*" } );

-

-		addField( fSEPLocationFileField );

-	}

-

-

-	@Override

-	public boolean performOk() {

-		if( super.performOk() ) {

-			IPreferenceStore prefs = Activator.getDefault().getPreferenceStore();

-

-			Activator.setDiversityAvmExecLocation( new Path( prefs.getString(

-					ATTR_DIVERSITY_AVM_EXECUTABLE_LOCATION) ) );

-

-//			Activator.setDiversityAvmExecLocation(

-//					new Path( fSEPLocationFileField.getStringValue() ) );

-

-//			prefs.setValue(ATTR_DIVERSITY_AVM_EXECUTABLE_VERSION, "1.O.O");

-//

-//			Activator.getDefault().savePluginPreferences();

-

-			return true;

-		}

-		else {

-			return false;

-		}

-	}

-

-	public void init(IWorkbench workbench) {

-	}

-

-}

diff --git a/gui/org.eclipse.efm.ui.preferences.runconfigurations/src/org/eclipse/efm/ui/preferences/runconfigurations/ToolPreferenceInitializer.java b/gui/org.eclipse.efm.ui.preferences.runconfigurations/src/org/eclipse/efm/ui/preferences/runconfigurations/ToolPreferenceInitializer.java
deleted file mode 100644
index 1a6ae97..0000000
--- a/gui/org.eclipse.efm.ui.preferences.runconfigurations/src/org/eclipse/efm/ui/preferences/runconfigurations/ToolPreferenceInitializer.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.preferences.runconfigurations;

-

-import org.eclipse.core.runtime.IPath;

-import org.eclipse.core.runtime.Path;

-import org.eclipse.core.runtime.Platform;

-import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;

-import org.eclipse.efm.core.workflow.Activator;

-import org.eclipse.efm.core.workflow.ToolConstants;

-import org.eclipse.jface.preference.IPreferenceStore;

-import org.eclipse.osgi.service.datalocation.Location;

-

-public class ToolPreferenceInitializer extends AbstractPreferenceInitializer

-			implements ToolConstants {

-

-	public ToolPreferenceInitializer() {

-		//!! NOTHING

-	}

-

-	@Override

-	public void initializeDefaultPreferences() {

-		IPreferenceStore prefs = Activator.getDefault().getPreferenceStore();

-

-		Location location = Platform.getInstallLocation();

-		if( location == null ) {

-			location = Platform.getInstanceLocation();

-			if( location == null ) {

-				location = Platform.getUserLocation();

-			}

-		}

-		if( location != null ) {

-			IPath installPath = new Path( location.getURL().getPath() );

-

-			prefs.setDefault(ATTR_DIVERSITY_INSTALLATION_LOCATION,

-					installPath.toOSString());

-

-

-			IPath execPath = installPath.removeLastSegments(1).

-					append("bin").append("avm.exe");

-

-			prefs.setDefault(ATTR_DIVERSITY_AVM_EXECUTABLE_LOCATION,

-					execPath.toOSString());

-

-

-			IPath viewerPath = installPath.removeLastSegments(1).

-					append("tools").append("zgrviewer").append("run.bat");

-

-			prefs.setDefault(ATTR_DIVERSITY_GRAPH_VIEWER_LOCATION,

-					viewerPath.toOSString());

-		}

-	}

-

-}

diff --git a/gui/org.eclipse.efm.ui.preferences.xtext_root/.classpath b/gui/org.eclipse.efm.ui.preferences.xtext_root/.classpath
deleted file mode 100644
index b862a29..0000000
--- a/gui/org.eclipse.efm.ui.preferences.xtext_root/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<classpath>

-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>

-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>

-	<classpathentry kind="src" path="src"/>

-	<classpathentry kind="output" path="bin"/>

-</classpath>

diff --git a/gui/org.eclipse.efm.ui.preferences.xtext_root/.gitignore b/gui/org.eclipse.efm.ui.preferences.xtext_root/.gitignore
deleted file mode 100644
index bbdfc34..0000000
--- a/gui/org.eclipse.efm.ui.preferences.xtext_root/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/bin/
-*.md.html
diff --git a/gui/org.eclipse.efm.ui.preferences.xtext_root/.project b/gui/org.eclipse.efm.ui.preferences.xtext_root/.project
deleted file mode 100644
index 1d56f83..0000000
--- a/gui/org.eclipse.efm.ui.preferences.xtext_root/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<projectDescription>

-	<name>org.eclipse.efm.ui.preferences.xtext_root</name>

-	<comment></comment>

-	<projects>

-	</projects>

-	<buildSpec>

-		<buildCommand>

-			<name>org.eclipse.jdt.core.javabuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.ManifestBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.SchemaBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-	</buildSpec>

-	<natures>

-		<nature>org.eclipse.pde.PluginNature</nature>

-		<nature>org.eclipse.jdt.core.javanature</nature>

-	</natures>

-</projectDescription>

diff --git a/gui/org.eclipse.efm.ui.preferences.xtext_root/.settings/org.eclipse.jdt.core.prefs b/gui/org.eclipse.efm.ui.preferences.xtext_root/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 295926d..0000000
--- a/gui/org.eclipse.efm.ui.preferences.xtext_root/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,7 +0,0 @@
-eclipse.preferences.version=1

-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled

-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8

-org.eclipse.jdt.core.compiler.compliance=1.8

-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error

-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error

-org.eclipse.jdt.core.compiler.source=1.8

diff --git a/gui/org.eclipse.efm.ui.preferences.xtext_root/META-INF/MANIFEST.MF b/gui/org.eclipse.efm.ui.preferences.xtext_root/META-INF/MANIFEST.MF
deleted file mode 100644
index 421e15b..0000000
--- a/gui/org.eclipse.efm.ui.preferences.xtext_root/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,11 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.efm.ui.preferences.xtext_root;singleton:=true
-Bundle-Version: 0.0.1.qualifier
-Bundle-ClassPath: .
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Require-Bundle: org.eclipse.ui
-Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Bundle-ActivationPolicy: lazy
diff --git a/gui/org.eclipse.efm.ui.preferences.xtext_root/about.html b/gui/org.eclipse.efm.ui.preferences.xtext_root/about.html
deleted file mode 100644
index d35d5ae..0000000
--- a/gui/org.eclipse.efm.ui.preferences.xtext_root/about.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>June 5, 2007</p>	
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise 
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available 
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is 
-being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content.  Check the Redistributor's license that was 
-provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
-</html>
diff --git a/gui/org.eclipse.efm.ui.preferences.xtext_root/build.properties b/gui/org.eclipse.efm.ui.preferences.xtext_root/build.properties
deleted file mode 100644
index c469345..0000000
--- a/gui/org.eclipse.efm.ui.preferences.xtext_root/build.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-source.. = src/

-output.. = target/classes/

-bin.includes = plugin.xml,\

-               META-INF/,\

-               .

diff --git a/gui/org.eclipse.efm.ui.preferences.xtext_root/plugin.xml b/gui/org.eclipse.efm.ui.preferences.xtext_root/plugin.xml
deleted file mode 100644
index 6c1eea6..0000000
--- a/gui/org.eclipse.efm.ui.preferences.xtext_root/plugin.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<?eclipse version="3.4"?>

-<plugin>

-

-   <extension

-         point="org.eclipse.ui.preferencePages">

-      <page

-            category="org.eclipse.efm.ui.preferences_root.mainPage"

-            class="org.eclipse.efm.ui.runsession.preferences.xtext_root.XtextRootPreferencePage"

-            id="org.eclipse.efm.ui.preferences.xtext_root.mainPage"

-            name="Xtext EFM Languages Implementations">

-      </page>

-   </extension>

-

-

-

-

-

-</plugin>

diff --git a/gui/org.eclipse.efm.ui.preferences.xtext_root/pom.xml b/gui/org.eclipse.efm.ui.preferences.xtext_root/pom.xml
deleted file mode 100644
index 5fa3723..0000000
--- a/gui/org.eclipse.efm.ui.preferences.xtext_root/pom.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<parent>
-		<groupId>org.eclipse.efm</groupId>
-		<artifactId>org.eclipse.efm.modeling.gui</artifactId>
-		<version>0.0.1-SNAPSHOT</version>
-	</parent>
-	<artifactId>org.eclipse.efm.ui.preferences.xtext_root</artifactId>
-	<packaging>eclipse-plugin</packaging>
-	<name>org.eclipse.efm.ui.preferences.xtext_root</name>
-	<description>This plug-in contains the XXXXXXXXX.</description>
-</project>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.ui.preferences_root/.classpath b/gui/org.eclipse.efm.ui.preferences_root/.classpath
deleted file mode 100644
index b862a29..0000000
--- a/gui/org.eclipse.efm.ui.preferences_root/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<classpath>

-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>

-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>

-	<classpathentry kind="src" path="src"/>

-	<classpathentry kind="output" path="bin"/>

-</classpath>

diff --git a/gui/org.eclipse.efm.ui.preferences_root/.gitignore b/gui/org.eclipse.efm.ui.preferences_root/.gitignore
deleted file mode 100644
index bbdfc34..0000000
--- a/gui/org.eclipse.efm.ui.preferences_root/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/bin/
-*.md.html
diff --git a/gui/org.eclipse.efm.ui.preferences_root/.project b/gui/org.eclipse.efm.ui.preferences_root/.project
deleted file mode 100644
index 61ce965..0000000
--- a/gui/org.eclipse.efm.ui.preferences_root/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<projectDescription>

-	<name>org.eclipse.efm.ui.preferences_root</name>

-	<comment></comment>

-	<projects>

-	</projects>

-	<buildSpec>

-		<buildCommand>

-			<name>org.eclipse.jdt.core.javabuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.ManifestBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.SchemaBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-	</buildSpec>

-	<natures>

-		<nature>org.eclipse.pde.PluginNature</nature>

-		<nature>org.eclipse.jdt.core.javanature</nature>

-	</natures>

-</projectDescription>

diff --git a/gui/org.eclipse.efm.ui.preferences_root/.settings/org.eclipse.jdt.core.prefs b/gui/org.eclipse.efm.ui.preferences_root/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 295926d..0000000
--- a/gui/org.eclipse.efm.ui.preferences_root/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,7 +0,0 @@
-eclipse.preferences.version=1

-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled

-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8

-org.eclipse.jdt.core.compiler.compliance=1.8

-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error

-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error

-org.eclipse.jdt.core.compiler.source=1.8

diff --git a/gui/org.eclipse.efm.ui.preferences_root/META-INF/MANIFEST.MF b/gui/org.eclipse.efm.ui.preferences_root/META-INF/MANIFEST.MF
deleted file mode 100644
index b8e7272..0000000
--- a/gui/org.eclipse.efm.ui.preferences_root/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,11 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.efm.ui.preferences_root;singleton:=true
-Bundle-Version: 0.0.1.qualifier
-Bundle-ClassPath: .
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Require-Bundle: org.eclipse.ui
-Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Bundle-ActivationPolicy: lazy
diff --git a/gui/org.eclipse.efm.ui.preferences_root/about.html b/gui/org.eclipse.efm.ui.preferences_root/about.html
deleted file mode 100644
index d35d5ae..0000000
--- a/gui/org.eclipse.efm.ui.preferences_root/about.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>June 5, 2007</p>	
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise 
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available 
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is 
-being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content.  Check the Redistributor's license that was 
-provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
-</html>
diff --git a/gui/org.eclipse.efm.ui.preferences_root/build.properties b/gui/org.eclipse.efm.ui.preferences_root/build.properties
deleted file mode 100644
index c469345..0000000
--- a/gui/org.eclipse.efm.ui.preferences_root/build.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-source.. = src/

-output.. = target/classes/

-bin.includes = plugin.xml,\

-               META-INF/,\

-               .

diff --git a/gui/org.eclipse.efm.ui.preferences_root/plugin.xml b/gui/org.eclipse.efm.ui.preferences_root/plugin.xml
deleted file mode 100644
index 4fd6c63..0000000
--- a/gui/org.eclipse.efm.ui.preferences_root/plugin.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<?eclipse version="3.4"?>

-<plugin>

-

-   <extension

-         point="org.eclipse.ui.preferencePages">

-      <page

-            class="org.eclipse.efm.ui.runsession.preferences_root.EFMRootPreferencePage"

-            id="org.eclipse.efm.ui.preferences_root.mainPage"

-            name="Eclipse Formal Modeling">

-      </page>

-   </extension>

-

-

-

-

-

-</plugin>

diff --git a/gui/org.eclipse.efm.ui.resources/.classpath b/gui/org.eclipse.efm.ui.resources/.classpath
deleted file mode 100644
index 43b9862..0000000
--- a/gui/org.eclipse.efm.ui.resources/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="output" path="target/classes"/>
-</classpath>
diff --git a/gui/org.eclipse.efm.ui.resources/.gitignore b/gui/org.eclipse.efm.ui.resources/.gitignore
deleted file mode 100644
index ae3c172..0000000
--- a/gui/org.eclipse.efm.ui.resources/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/bin/
diff --git a/gui/org.eclipse.efm.ui.resources/.project b/gui/org.eclipse.efm.ui.resources/.project
deleted file mode 100644
index e7b7c28..0000000
--- a/gui/org.eclipse.efm.ui.resources/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<projectDescription>

-	<name>org.eclipse.efm.ui.resources</name>

-	<comment></comment>

-	<projects>

-	</projects>

-	<buildSpec>

-		<buildCommand>

-			<name>org.eclipse.jdt.core.javabuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.ManifestBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.SchemaBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-	</buildSpec>

-	<natures>

-		<nature>org.eclipse.pde.PluginNature</nature>

-		<nature>org.eclipse.jdt.core.javanature</nature>

-	</natures>

-</projectDescription>

diff --git a/gui/org.eclipse.efm.ui.resources/.settings/org.eclipse.jdt.core.prefs b/gui/org.eclipse.efm.ui.resources/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 11f6e46..0000000
--- a/gui/org.eclipse.efm.ui.resources/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,7 +0,0 @@
-eclipse.preferences.version=1

-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled

-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7

-org.eclipse.jdt.core.compiler.compliance=1.7

-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error

-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error

-org.eclipse.jdt.core.compiler.source=1.7

diff --git a/gui/org.eclipse.efm.ui.resources/META-INF/MANIFEST.MF b/gui/org.eclipse.efm.ui.resources/META-INF/MANIFEST.MF
deleted file mode 100644
index f04b577..0000000
--- a/gui/org.eclipse.efm.ui.resources/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,11 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Resources
-Bundle-SymbolicName: org.eclipse.efm.ui.resources
-Bundle-Version: 0.0.1.qualifier
-Require-Bundle: org.eclipse.core.runtime
-Export-Package: org.eclipse.efm.ui.resources
-Bundle-Vendor: CEA - LIST
-Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Bundle-ActivationPolicy: lazy
-Import-Package: org.eclipse.jface.resource
diff --git a/gui/org.eclipse.efm.ui.resources/build.properties b/gui/org.eclipse.efm.ui.resources/build.properties
deleted file mode 100644
index 6b13ef4..0000000
--- a/gui/org.eclipse.efm.ui.resources/build.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-source.. = src/

-output.. = target/classes/

-bin.includes = META-INF/,\

-               .,\

-               icons/

diff --git a/gui/org.eclipse.efm.ui.resources/icons/diversity_icon.png b/gui/org.eclipse.efm.ui.resources/icons/diversity_icon.png
deleted file mode 100644
index 05d4eaf..0000000
--- a/gui/org.eclipse.efm.ui.resources/icons/diversity_icon.png
+++ /dev/null
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/pom.xml b/gui/org.eclipse.efm.ui.resources/pom.xml
deleted file mode 100644
index 72b7689..0000000
--- a/gui/org.eclipse.efm.ui.resources/pom.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<parent>
-		<groupId>org.eclipse.efm</groupId>
-		<artifactId>org.eclipse.efm.modeling.gui</artifactId>
-		<version>0.0.1-SNAPSHOT</version>
-	</parent>
-	<artifactId>org.eclipse.efm.ui.resources</artifactId>
-	<packaging>eclipse-plugin</packaging>
-	<name>org.eclipse.efm.ui.resources</name>
-	<description>This plug-in contains the XXXXXXXXX.</description>
-</project>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.ui.resources/src/org/eclipse/efm/ui/resources/UIfmlResources.java b/gui/org.eclipse.efm.ui.resources/src/org/eclipse/efm/ui/resources/UIfmlResources.java
deleted file mode 100644
index 5f6a21f..0000000
--- a/gui/org.eclipse.efm.ui.resources/src/org/eclipse/efm/ui/resources/UIfmlResources.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.resources;

-

-import java.net.MalformedURLException;

-import java.net.URL;

-

-import org.eclipse.jface.resource.ImageDescriptor;

-

-public class UIfmlResources {

-	

-	private static final String PLUGINS_ROOT = "platform:/plugin/";

-	

-	public static final String RESOURCES_PLUGIN_ID = "org.eclipse.efm.ui.resources";

-	

-	private static final String RESOURCES_PLUGIN_PATH = PLUGINS_ROOT + RESOURCES_PLUGIN_ID;

-	

-	public static final String FML_PROFILE_PATH = PLUGINS_ROOT + "org.eclipse.efm.formalml/resources/profile/FormalML.profile.uml";

-	

-	

-	// Icons only below

-	public static final String IMAGE__HELP_ICON = RESOURCES_PLUGIN_PATH + "/icons/help.png";

-	public static final String IMAGE__DIVERSITY_ICON = RESOURCES_PLUGIN_PATH + "/icons/diversity_icon.png";

-	public static final String IMAGE__REVERT_ICON = RESOURCES_PLUGIN_PATH + "/icons/revert.gif";

-	public static final String IMAGE__PUSH_ICON = RESOURCES_PLUGIN_PATH + "/icons/push.png";

-	public static final String IMAGE__LAUNCHDEBUG_ICON = RESOURCES_PLUGIN_PATH + "/icons/debug_exc.png";

-	public static final String IMAGE__LAUNCHRUN_ICON = RESOURCES_PLUGIN_PATH + "/icons/run_exc.png";

-	

-	public static final String IMAGE__DIALDEBUG_ICON = RESOURCES_PLUGIN_PATH + "/icons/debug_dial.png";

-	public static final String IMAGE__DIALRUN_ICON = RESOURCES_PLUGIN_PATH + "/icons/run_dial.png";

-	

-	// Helper/Util methods only below

-	

-	public static final ImageDescriptor getImageDescriptor(String imagePath) {

-		ImageDescriptor image_descriptor = null;

-		try {

-			image_descriptor = ImageDescriptor.createFromURL(new URL(imagePath));

-		} catch (MalformedURLException e) {

-			// TODO Auto-generated catch block

-			e.printStackTrace();

-		}

-		

-		return(image_descriptor);

-	}

-}

diff --git a/gui/org.eclipse.efm.ui.views/.gitignore b/gui/org.eclipse.efm.ui.views/.gitignore
deleted file mode 100644
index ae3c172..0000000
--- a/gui/org.eclipse.efm.ui.views/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/bin/
diff --git a/gui/org.eclipse.efm.ui.views/META-INF/MANIFEST.MF b/gui/org.eclipse.efm.ui.views/META-INF/MANIFEST.MF
deleted file mode 100644
index 3338500..0000000
--- a/gui/org.eclipse.efm.ui.views/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,24 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Views
-Bundle-SymbolicName: org.eclipse.efm.ui.views;singleton:=true
-Bundle-Version: 0.0.1.qualifier
-Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Require-Bundle: org.eclipse.core.runtime,
- org.eclipse.ui,
- org.eclipse.jface,
- org.eclipse.pde,
- org.eclipse.efm.core.workflow
-Import-Package: org.eclipse.core.resources,
- org.eclipse.debug.core,
- org.eclipse.debug.ui,
- org.eclipse.efm.ui.resources,
- org.eclipse.ui.dialogs,
- org.eclipse.ui.forms.events,
- org.eclipse.ui.forms.widgets,
- org.eclipse.ui.model,
- org.eclipse.ui.views.navigator
-Export-Package: org.eclipse.efm.ui.views.editors,
- org.eclipse.efm.ui.views.editors.impls,
- org.eclipse.efm.ui.views.launchconfigurations.components,
- org.eclipse.efm.ui.views.utils
diff --git a/gui/org.eclipse.efm.ui.views/build.properties b/gui/org.eclipse.efm.ui.views/build.properties
deleted file mode 100644
index 6f20375..0000000
--- a/gui/org.eclipse.efm.ui.views/build.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-source.. = src/

-output.. = bin/

-bin.includes = META-INF/,\

-               .,\

-               plugin.xml

diff --git a/gui/org.eclipse.efm.ui.views/icons/sample.gif b/gui/org.eclipse.efm.ui.views/icons/sample.gif
deleted file mode 100644
index 34fb3c9..0000000
--- a/gui/org.eclipse.efm.ui.views/icons/sample.gif
+++ /dev/null
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.views/plugin.xml b/gui/org.eclipse.efm.ui.views/plugin.xml
deleted file mode 100644
index 7ca282e..0000000
--- a/gui/org.eclipse.efm.ui.views/plugin.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<?eclipse version="3.4"?>

-<plugin>

-   <extension

-         point="org.eclipse.ui.views">

-      <category

-            id="org.eclipse.efm.ui.views"

-            name="EFM Views">

-      </category>

-      <view

-            category="org.eclipse.efm.ui.views"

-            class="org.eclipse.efm.ui.views.viewparts.swv.SymbexWorkflowView"

-            icon="icons/sample.gif"

-            id="org.eclipse.efm.ui.views.SymbexWorkflowView"

-            name="Symbex Workflow">

-      </view>

-   </extension>

-

-</plugin>

diff --git a/gui/org.eclipse.efm.ui.views/pom.xml b/gui/org.eclipse.efm.ui.views/pom.xml
deleted file mode 100644
index 212a09e..0000000
--- a/gui/org.eclipse.efm.ui.views/pom.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<parent>
-		<groupId>org.eclipse.efm</groupId>
-		<artifactId>org.eclipse.efm.modeling.gui</artifactId>
-		<version>0.0.1-SNAPSHOT</version>
-	</parent>
-	<artifactId>org.eclipse.efm.ui.views</artifactId>
-	<packaging>eclipse-plugin</packaging>
-	<name>org.eclipse.efm.ui.views</name>
-	<description>This plug-in contains the XXXXXXXXX.</description>
-</project>
\ No newline at end of file
diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/delegates/LaunchManagerSWVlinker.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/delegates/LaunchManagerSWVlinker.java
deleted file mode 100644
index 9f31fcf..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/delegates/LaunchManagerSWVlinker.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr

- *   - Initial API and Implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.views.delegates;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.debug.core.DebugPlugin;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationType;

-import org.eclipse.debug.core.ILaunchManager;

-

-public class LaunchManagerSWVlinker {

-	

-	private static final String SYMBEX_LAUNCH_CONFIGURATION_ID = "org.eclipse.efm.runconfiguration.launchConfigurationType";

-	

-	private static ILaunchManager lc_manager;

-	private static ILaunchConfigurationType lc_symbex_type;

-	private static ILaunchConfiguration[] lcs;

-	

-	public static ILaunchConfiguration[] getSymbexRunConfigurations() {

-		lc_manager = DebugPlugin.getDefault().getLaunchManager();

-		lc_symbex_type = lc_manager.getLaunchConfigurationType(SYMBEX_LAUNCH_CONFIGURATION_ID);

-		try {

-			lcs = lc_manager.getLaunchConfigurations(lc_symbex_type);

-		} catch (CoreException e) {

-			e.printStackTrace();

-			lcs = new ILaunchConfiguration[0];

-		}

-		return lcs;

-//            for (ILaunchConfiguration iLaunchConfiguration : lcs) {

-//                if (iLaunchConfiguration.getName().equals("Test PThread")) {

-//                    ILaunchConfigurationWorkingCopy t = iLaunchConfiguration.getWorkingCopy();

-//                    ILaunchConfiguration config = t.doSave();

-//                    if (config != null) {

-//                        // config.launch(ILaunchManager.RUN_MODE, null);

-//                        DebugUITools.launch(config, ILaunchManager.DEBUG_MODE);

-//                    }

-//                }

-//            }

-	}

-	

-	public static String[] getSymbexRunConfigurationNames() {

-		ILaunchConfiguration[] lcs = getSymbexRunConfigurations();

-		String[] contents = new String[lcs.length];

-		for (int i=0; i<lcs.length; i++) {

-			contents[i] = lcs[i].getName();

-		}

-		return contents;

-	}

-	

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/editors/FieldEditor.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/editors/FieldEditor.java
deleted file mode 100644
index c738be5..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/editors/FieldEditor.java
+++ /dev/null
@@ -1,642 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr - Initial API and implementation

- *     Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - New Interfacing (ILaunchConfigurationEditorComposite)

- *******************************************************************************/

-

-package org.eclipse.efm.ui.views.editors;

-

-import org.eclipse.core.runtime.Assert;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationEditorComposite;

-import org.eclipse.jface.dialogs.IDialogConstants;

-import org.eclipse.jface.resource.JFaceResources;

-import org.eclipse.jface.util.IPropertyChangeListener;

-import org.eclipse.jface.util.PropertyChangeEvent;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.events.DisposeEvent;

-import org.eclipse.swt.events.DisposeListener;

-import org.eclipse.swt.graphics.FontMetrics;

-import org.eclipse.swt.graphics.GC;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.layout.GridLayout;

-import org.eclipse.swt.widgets.Button;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Control;

-import org.eclipse.swt.widgets.Label;

-

-public abstract class FieldEditor {

-

-	protected String fStoreKey;

-

-	public String getStoreKey() {

-		return fStoreKey;

-	}

-

-

-    /**

-     * Property name constant (value <code>"field_editor_is_valid"</code>)

-     * to signal a change in the validity of the value of this field editor.

-     */

-    public static final String IS_VALID = "field_editor_is_valid";//$NON-NLS-1$

-

-    /**

-     * Gap between label and control.

-     */

-    protected static final int HORIZONTAL_GAP = 8;

-

-    /**

-     * Indicates whether the default value is currently displayed,

-     * initially <code>false</code>.

-     */

-    private boolean isDefaultPresented = false;

-

-    /**

-     * The label's text.

-     */

-    private String labelText;

-

-    /**

-     * The label control.

-     */

-    private Label label;

-

-    /**

-     * Listener, or <code>null</code> if none

-     */

-    private IPropertyChangeListener propertyChangeListener;

-

-    /**

-     * The page containing this field editor

-     */

-    private ILaunchConfigurationEditorComposite fLaunchConfCommInt;

-

-

-    /**

-     * Creates a new field editor.

-     */

-    protected FieldEditor() {

-    }

-

-   /**

-     * Creates a new field editor.

-     *

-     * @param name the name of the preference this field editor works on

-     * @param labelText the label text of the field editor

-     * @param parent the parent of the field editor's control

-     */

-    protected FieldEditor(ILaunchConfigurationEditorComposite fLaunchConfCommInt,

-    		String storeKey, String labelText, Composite parent) {

-    	this.fLaunchConfCommInt = fLaunchConfCommInt;

-    	this.fStoreKey = storeKey;

-        createControl(parent);

-    }

-

-    /**

-     * Adjusts the horizontal span of this field editor's basic controls.

-     * <p>

-     * Subclasses must implement this method to adjust the horizontal span

-     * of controls so they appear correct in the given number of columns.

-     * </p>

-     * <p>

-     * The number of columns will always be equal to or greater than the

-     * value returned by this editor's <code>getNumberOfControls</code> method.

-     *

-     * @param numColumns the number of columns

-     */

-    protected abstract void adjustForNumColumns(int numColumns);

-

-    /**

-     * Applies a font.

-     * <p>

-     * The default implementation of this framework method

-     * does nothing. Subclasses should override this method

-     * if they want to change the font of the SWT control to

-     * a value different than the standard dialog font.

-     * </p>

-     */

-    protected void applyFont() {

-    }

-

-    /**

-     * Checks if the given parent is the current parent of the

-     * supplied control; throws an (unchecked) exception if they

-     * are not correctly related.

-     *

-     * @param control the control

-     * @param parent the parent control

-     */

-    protected void checkParent(Control control, Composite parent) {

-        Assert.isTrue(control.getParent() == parent, "Different parents");//$NON-NLS-1$

-    }

-

-    /**

-     * Clears the error message from the message line.

-     */

-    protected void clearErrorMessage() {

-        if (fLaunchConfCommInt != null) {

-        	fLaunchConfCommInt.propagateErrorMessage(null);

-		}

-    }

-

-    /**

-     * Clears the normal message from the message line.

-     */

-    protected void clearMessage() {

-        if (fLaunchConfCommInt != null) {

-        	fLaunchConfCommInt.propagateMessage(null);

-		}

-    }

-

-    /**

-     * Returns the number of pixels corresponding to the

-     * given number of horizontal dialog units.

-     * <p>

-     * Clients may call this framework method, but should not override it.

-     * </p>

-     *

-     * @param control the control being sized

-     * @param dlus the number of horizontal dialog units

-     * @return the number of pixels

-     */

-    protected int convertHorizontalDLUsToPixels(Control control, int dlus) {

-        GC gc = new GC(control);

-        gc.setFont(control.getFont());

-        int averageWidth = gc.getFontMetrics().getAverageCharWidth();

-        gc.dispose();

-

-        double horizontalDialogUnitSize = averageWidth * 0.25;

-

-        return (int) Math.round(dlus * horizontalDialogUnitSize);

-    }

-

-    /**

-     * Returns the number of pixels corresponding to the

-     * given number of vertical dialog units.

-     * <p>

-     * Clients may call this framework method, but should not override it.

-     * </p>

-     *

-     * @param control the control being sized

-     * @param dlus the number of vertical dialog units

-     * @return the number of pixels

-     */

-    protected int convertVerticalDLUsToPixels(Control control, int dlus) {

-        GC gc = new GC(control);

-        gc.setFont(control.getFont());

-        int height = gc.getFontMetrics().getHeight();

-        gc.dispose();

-

-        double verticalDialogUnitSize = height * 0.125;

-

-        return (int) Math.round(dlus * verticalDialogUnitSize);

-    }

-

-    /**

-     * Creates this field editor's main control containing all of its

-     * basic controls.

-     *

-     * @param parent the parent control

-     */

-    protected void createControl(Composite parent) {

-        GridLayout layout = new GridLayout();

-        layout.numColumns = getNumberOfControls();

-        layout.marginWidth = 0;

-        layout.marginHeight = 0;

-        layout.horizontalSpacing = HORIZONTAL_GAP;

-        parent.setLayout(layout);

-        doFillIntoGrid(parent, layout.numColumns);

-    }

-

-    /**

-     * Disposes the SWT resources used by this field editor.

-     */

-    public void dispose() {

-        // nothing to dispose

-    }

-

-    /**

-     * Fills this field editor's basic controls into the given parent.

-     * <p>

-     * Subclasses must implement this method to create the controls

-     * for this field editor.

-     * </p>

-     * <p>

-     * Note this method may be called by the constructor, so it must not access

-     * fields on the receiver object because they will not be fully initialized.

-     * </p>

-     *

-     * @param parent the composite used as a parent for the basic controls;

-     *	the parent's layout must be a <code>GridLayout</code>

-     * @param numColumns the number of columns

-     */

-    protected abstract void doFillIntoGrid(Composite parent, int numColumns);

-

-//    /**

-//     * Initializes this field editor with the preference value from

-//     * the preference store.

-//     * <p>

-//     * Subclasses must implement this method to properly initialize

-//     * the field editor.

-//     * </p>

-//     */

-//    protected abstract void doLoad();

-//

-//    /**

-//     * Initializes this field editor with the default preference value from

-//     * the preference store.

-//     * <p>

-//     * Subclasses must implement this method to properly initialize

-//     * the field editor.

-//     * </p>

-//     */

-//    protected abstract void doLoadDefault();

-//

-//    /**

-//     * Stores the preference value from this field editor into

-//     * the preference store.

-//     * <p>

-//     * Subclasses must implement this method to save the entered value

-//     * into the preference store.

-//     * </p>

-//     */

-//    protected abstract void doStore();

-

-    /**

-     * Fills this field editor's basic controls into the given parent.

-     *

-     * @param parent the composite used as a parent for the basic controls;

-     *	the parent's layout must be a <code>GridLayout</code>

-     * @param numColumns the number of columns

-     */

-    public void fillIntoGrid(Composite parent, int numColumns) {

-        Assert.isTrue(numColumns >= getNumberOfControls());

-        Assert.isTrue(parent.getLayout() instanceof GridLayout);

-        doFillIntoGrid(parent, numColumns);

-    }

-

-    /**

-     * Informs this field editor's listener, if it has one, about a change to

-     * one of this field editor's boolean-valued properties. Does nothing

-     * if the old and new values are the same.

-     *

-     * @param property the field editor property name,

-     *   such as <code>VALUE</code> or <code>IS_VALID</code>

-     * @param oldValue the old value

-     * @param newValue the new value

-     */

-    protected void fireStateChanged(String property, boolean oldValue,

-            boolean newValue) {

-        if (oldValue == newValue) {

-			return;

-		}

-        fireValueChanged(property, oldValue ? Boolean.TRUE : Boolean.FALSE, newValue ? Boolean.TRUE : Boolean.FALSE);

-    }

-

-    /**

-     * Informs this field editor's listener, if it has one, about a change to

-     * one of this field editor's properties.

-     *

-     * @param property the field editor property name,

-     *   such as <code>VALUE</code> or <code>IS_VALID</code>

-     * @param oldValue the old value object, or <code>null</code>

-     * @param newValue the new value, or <code>null</code>

-     */

-    protected void fireValueChanged(String property, Object oldValue,

-            Object newValue) {

-        if (propertyChangeListener == null) {

-			return;

-		}

-        propertyChangeListener.propertyChange(new PropertyChangeEvent(this,

-                property, oldValue, newValue));

-    }

-

-    /**

-     * Returns the symbolic font name used by this field editor.

-     *

-     * @return the symbolic font name

-     */

-    public String getFieldEditorFontName() {

-        return JFaceResources.DIALOG_FONT;

-    }

-

-

-    /**

-     * Sets the label control's tool tip text to the argument

-     */

-    public void setToolTipText(String string) {

-    	Label control = getLabelControl();

-    	if( control != null ) {

-    		control.setToolTipText(string);

-    	}

-    }

-

-

-    /**

-     * Returns the label control.

-     *

-     * @return the label control, or <code>null</code>

-     *  if no label control has been created

-     */

-    protected Label getLabelControl() {

-        return label;

-    }

-

-    /**

-     * Returns this field editor's label component.

-     * <p>

-     * The label is created if it does not already exist

-     * </p>

-     *

-     * @param parent the parent

-     * @return the label control

-     */

-    public Label getLabelControl(Composite parent) {

-        if (label == null) {

-            label = new Label(parent, SWT.LEFT);

-            label.setFont(parent.getFont());

-            String text = getLabelText();

-            if (text != null) {

-				label.setText(text);

-			}

-            label.addDisposeListener(new DisposeListener() {

-                @Override

-				public void widgetDisposed(DisposeEvent event) {

-                    label = null;

-                }

-            });

-        } else {

-            checkParent(label, parent);

-        }

-        return label;

-    }

-

-    /**

-     * Returns this field editor's label text.

-     *

-     * @return the label text

-     */

-    public String getLabelText() {

-        return labelText;

-    }

-

-    /**

-     * Returns the number of basic controls this field editor consists of.

-     *

-     * @return the number of controls

-     */

-    public abstract int getNumberOfControls();

-

-    /**

-     * Return the DialogPage that the receiver is sending

-     * updates to.

-     *

-     * @return DialogPage or <code>null</code> if it

-     * has not been set.

-     *

-     * @since 3.1

-     */

-    protected ILaunchConfigurationEditorComposite getLaunchConfCommInt(){

-    	return fLaunchConfCommInt;

-    }

-

-

-    /**

-     * Initialize the field editor with the given preference name and label.

-     *

-     * @param name the name of the preference this field editor works on

-     * @param text the label text of the field editor

-     */

-    protected void init(ILaunchConfigurationEditorComposite launchConfigurationTab,

-    		String storeKey, String labelText) {

-        Assert.isNotNull(launchConfigurationTab);

-    	this.fLaunchConfCommInt = launchConfigurationTab;

-

-        Assert.isNotNull(storeKey);

-    	this.fStoreKey = storeKey;

-

-        Assert.isNotNull(labelText);

-        this.labelText = labelText;

-    }

-

-    /**

-     * Returns whether this field editor contains a valid value.

-     * <p>

-     * The default implementation of this framework method

-     * returns <code>true</code>. Subclasses wishing to perform

-     * validation should override both this method and

-     * <code>refreshValidState</code>.

-     * </p>

-     *

-     * @return <code>true</code> if the field value is valid,

-     *   and <code>false</code> if invalid

-     * @see #refreshValidState()

-     */

-    public boolean isValid() {

-        return true;

-    }

-

-//    /**

-//     * Initializes this field editor with the preference value from

-//     * the preference store.

-//     */

-//    public void load() {

-//        if (preferenceStore != null) {

-//            isDefaultPresented = false;

-//            doLoad();

-//            refreshValidState();

-//        }

-//    }

-//

-//    /**

-//     * Initializes this field editor with the default preference value

-//     * from the preference store.

-//     */

-//    public void loadDefault() {

-//        if (preferenceStore != null) {

-//            isDefaultPresented = true;

-//            doLoadDefault();

-//            refreshValidState();

-//        }

-//    }

-

-    /**

-     * Returns whether this field editor currently presents the

-     * default value for its preference.

-     *

-     * @return <code>true</code> if the default value is presented,

-     *   and <code>false</code> otherwise

-     */

-    public boolean presentsDefaultValue() {

-        return isDefaultPresented;

-    }

-

-    /**

-     * Refreshes this field editor's valid state after a value change

-     * and fires an <code>IS_VALID</code> property change event if

-     * warranted.

-     * <p>

-     * The default implementation of this framework method does

-     * nothing. Subclasses wishing to perform validation should override

-     * both this method and <code>isValid</code>.

-     * </p>

-     *

-     * @see #isValid

-     */

-    protected void refreshValidState() {

-    }

-

-    /**

-     * Sets the focus to this field editor.

-     * <p>

-     * The default implementation of this framework method

-     * does nothing. Subclasses may reimplement.

-     * </p>

-     */

-    public void setFocus() {

-        // do nothing;

-    }

-

-    /**

-     * Sets this field editor's label text.

-     * The label is typically presented to the left of the entry field.

-     *

-     * @param text the label text

-     */

-    public void setLabelText(String text) {

-        Assert.isNotNull(text);

-        labelText = text;

-        if (label != null) {

-			label.setText(text);

-		}

-    }

-

-    /**

-     * Sets whether this field editor is presenting the default value.

-     *

-     * @param booleanValue <code>true</code> if the default value is being presented,

-     *  and <code>false</code> otherwise

-     */

-    protected void setPresentsDefaultValue(boolean booleanValue) {

-        isDefaultPresented = booleanValue;

-    }

-

-    /**

-     * Sets or removes the property change listener for this field editor.

-     * <p>

-     * Note that field editors can support only a single listener.

-     * </p>

-     *

-     * @param listener a property change listener, or <code>null</code>

-     *  to remove

-     */

-    public void setPropertyChangeListener(IPropertyChangeListener listener) {

-        propertyChangeListener = listener;

-    }

-

-    /**

-     * Shows the given error message in the page for this

-     * field editor if it has one.

-     *

-     * @param msg the error message

-     */

-    protected void showErrorMessage(String msg) {

-        if (fLaunchConfCommInt != null) {

-			fLaunchConfCommInt.propagateErrorMessage(msg);

-		}

-    }

-

-    /**

-     * Shows the given message in the page for this

-     * field editor if it has one.

-     *

-     * @param msg the message

-     */

-    protected void showMessage(String msg) {

-        if (fLaunchConfCommInt != null) {

-			fLaunchConfCommInt.propagateMessage(msg);

-		}

-    }

-

-    public void updateLaunchConfigurationDialog() {

-        if (fLaunchConfCommInt != null) {

-			fLaunchConfCommInt.propagateGUIupdate();

-		}

-    }

-

-//    /**

-//     * Stores this field editor's value back into the preference store.

-//     */

-//    public void store() {

-//        if (preferenceStore == null) {

-//			return;

-//		}

-//

-//        if (isDefaultPresented) {

-//            preferenceStore.setToDefault(fStoreKey);

-//        } else {

-//            doStore();

-//        }

-//    }

-

-    /**

-     * Set the GridData on button to be one that is spaced for the

-     * current font.

-     * @param button the button the data is being set on.

-     */

-

-    protected void setButtonLayoutData(Button button) {

-

-        GridData data = new GridData(GridData.HORIZONTAL_ALIGN_FILL);

-

-        // Compute and store a font metric

-        GC gc = new GC(button);

-        gc.setFont(button.getFont());

-        FontMetrics fontMetrics = gc.getFontMetrics();

-        gc.dispose();

-

-        int widthHint = org.eclipse.jface.dialogs.Dialog

-                .convertVerticalDLUsToPixels(fontMetrics,

-                        IDialogConstants.BUTTON_WIDTH);

-        data.widthHint = Math.max(widthHint, button.computeSize(SWT.DEFAULT,

-                SWT.DEFAULT, true).x);

-        button.setLayoutData(data);

-    }

-

-    /**

-     * Set whether or not the controls in the field editor

-     * are enabled.

-     * @param enabled The enabled state.

-     * @param parent The parent of the controls in the group.

-     *  Used to create the controls if required.

-     */

-    public void setEnabled(boolean enabled, Composite parent) {

-        getLabelControl(parent).setEnabled(enabled);

-    }

-

-

-

-

-

-

-

-

-

-	/**

-	 * Diversity Field Editor Configuration API

-	 * @param configuration

-	 */

-	public abstract void setDefaults(ILaunchConfigurationWorkingCopy configuration);

-

-	public abstract void initializeFrom(ILaunchConfiguration configuration);

-

-	public abstract void performApply(ILaunchConfigurationWorkingCopy configuration);

-

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/editors/impls/BooleanFieldEditor.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/editors/impls/BooleanFieldEditor.java
deleted file mode 100644
index 90c00bf..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/editors/impls/BooleanFieldEditor.java
+++ /dev/null
@@ -1,323 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr - Initial API and implementation

- *     Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - New Interfacing (ILaunchConfigurationEditorComposite)

- *******************************************************************************/

-package org.eclipse.efm.ui.views.editors.impls;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationEditorComposite;

-import org.eclipse.efm.ui.views.editors.FieldEditor;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.events.DisposeEvent;

-import org.eclipse.swt.events.DisposeListener;

-import org.eclipse.swt.events.SelectionAdapter;

-import org.eclipse.swt.events.SelectionEvent;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.widgets.Button;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Control;

-import org.eclipse.swt.widgets.Label;

-

-public class BooleanFieldEditor extends FieldEditor {

-

-	private boolean fValue;

-	private boolean fDefaultValue;

-

-	/**

-	 * Style constant (value <code>0</code>) indicating the default layout where

-	 * the field editor's check box appears to the left of the label.

-	 */

-	public static final int DEFAULT = 0;

-

-	/**

-	 * Style constant (value <code>1</code>) indicating a layout where the field

-	 * editor's label appears on the left with a check box on the right.

-	 */

-	public static final int SEPARATE_LABEL = 1;

-

-	/**

-	 * Style bits. Either <code>DEFAULT</code> or <code>SEPARATE_LABEL</code>.

-	 */

-	private int style;

-

-	/**

-	 * The previously selected, or "before", value.

-	 */

-	private boolean wasSelected;

-

-	/**

-	 * The checkbox control, or <code>null</code> if none.

-	 */

-	private Button checkBox = null;

-

-	/**

-	 * Creates a new boolean field editor

-	 */

-	public BooleanFieldEditor() {

-	}

-

-	/**

-	 * Creates a boolean field editor in the given style.

-	 *

-	 * @param name

-	 *            the name of the preference this field editor works on

-	 * @param labelText

-	 *            the label text of the field editor

-	 * @param style

-	 *            the style, either <code>DEFAULT</code> or

-	 *            <code>SEPARATE_LABEL</code>

-	 * @param parent

-	 *            the parent of the field editor's control

-	 * @see #DEFAULT

-	 * @see #SEPARATE_LABEL

-	 */

-	public BooleanFieldEditor(ILaunchConfigurationEditorComposite fLaunchConfCommInt,

-			String storeKey, String labelText, int style, Composite parent, boolean defaultValue) {

-		this.fDefaultValue = defaultValue;

-

-		init(fLaunchConfCommInt, storeKey, labelText);

-		this.style = style;

-		createControl(parent);

-

-	}

-

-	/**

-	 * Creates a boolean field editor in the default style.

-	 *

-	 * @param name

-	 *            the name of the preference this field editor works on

-	 * @param label

-	 *            the label text of the field editor

-	 * @param parent

-	 *            the parent of the field editor's control

-	 */

-	public BooleanFieldEditor(ILaunchConfigurationEditorComposite fLaunchConfCommInt,

-			String storeKey, String labelText, Composite parent, boolean defaultValue) {

-		this(fLaunchConfCommInt, storeKey, labelText, DEFAULT, parent, defaultValue);

-	}

-

-	public BooleanFieldEditor(ILaunchConfigurationEditorComposite fLaunchConfCommInt,

-			String storeKey, String labelText, Composite parent) {

-		this(fLaunchConfCommInt, storeKey, labelText, DEFAULT, parent, false);

-	}

-

-	@Override

-	protected void adjustForNumColumns(int numColumns) {

-		if (style == SEPARATE_LABEL) {

-			numColumns--;

-		}

-		((GridData) checkBox.getLayoutData()).horizontalSpan = numColumns;

-	}

-

-	@Override

-	protected void doFillIntoGrid(Composite parent, int numColumns) {

-		String text = getLabelText();

-		switch (style) {

-		case SEPARATE_LABEL:

-			getLabelControl(parent);

-			numColumns--;

-			text = null;

-			//$FALL-THROUGH$

-		default:

-			checkBox = getChangeControl(parent);

-			GridData gd = new GridData();

-			gd.horizontalSpan = numColumns;

-			checkBox.setLayoutData(gd);

-			if (text != null) {

-				checkBox.setText(text);

-			}

-		}

-	}

-

-	/**

-	 * Returns the control responsible for displaying this field editor's label.

-	 * This method can be used to set a tooltip for a

-	 * <code>BooleanFieldEditor</code>. Note that the normal pattern of

-	 * <code>getLabelControl(parent).setToolTipText(tooltipText)</code> does not

-	 * work for boolean field editors, as it can lead to duplicate text (see bug

-	 * 259952).

-	 *

-	 * @param parent

-	 *            the parent composite

-	 * @return the control responsible for displaying the label

-	 *

-	 * @since 3.5

-	 */

-	public Control getDescriptionControl(Composite parent) {

-		if (style == SEPARATE_LABEL) {

-			return getLabelControl(parent);

-		}

-		return getChangeControl(parent);

-	}

-

-	/**

-	 * Returns this field editor's current value.

-	 *

-	 * @return the value

-	 */

-	public boolean getBooleanValue() {

-		return checkBox.getSelection();

-	}

-

-	/**

-	 * Returns the change button for this field editor.

-	 *

-	 * @param parent

-	 *            The Composite to create the receiver in.

-	 *

-	 * @return the change button

-	 */

-	protected Button getChangeControl(Composite parent) {

-		if (checkBox == null) {

-			checkBox = new Button(parent, SWT.CHECK | SWT.LEFT);

-			checkBox.setFont(parent.getFont());

-			checkBox.addSelectionListener(new SelectionAdapter() {

-				@Override

-				public void widgetSelected(SelectionEvent e) {

-					boolean isSelected = checkBox.getSelection();

-					valueChanged(wasSelected, isSelected);

-					wasSelected = isSelected;

-				}

-			});

-			checkBox.addDisposeListener(new DisposeListener() {

-				@Override

-				public void widgetDisposed(DisposeEvent event) {

-					checkBox = null;

-				}

-			});

-		} else {

-			checkParent(checkBox, parent);

-		}

-		return checkBox;

-	}

-

-	@Override

-	public int getNumberOfControls() {

-		switch (style) {

-		case SEPARATE_LABEL:

-			return 2;

-		default:

-			return 1;

-		}

-	}

-

-	@Override

-	public void setFocus() {

-		if (checkBox != null) {

-			checkBox.setFocus();

-		}

-	}

-

-	@Override

-	public void setLabelText(String text) {

-		super.setLabelText(text);

-		Label label = getLabelControl();

-		if (label == null && checkBox != null) {

-			checkBox.setText(text);

-		}

-	}

-

-    /**

-     * Sets the label control's tool tip text to the argument

-     */

-    public void setToolTipText(String string) {

-    	if( checkBox != null ) {

-    		checkBox.setToolTipText(string);

-    	}

-    	else {

-    		super.setToolTipText(string);

-    	}

-    }

-

-	/**

-	 * Informs this field editor's listener, if it has one, about a change to

-	 * the value (<code>VALUE</code> property) provided that the old and new

-	 * values are different.

-	 *

-	 * @param oldValue

-	 *            the old value

-	 * @param newValue

-	 *            the new value

-	 */

-	protected void valueChanged(boolean oldValue, boolean newValue) {

-		setPresentsDefaultValue(false);

-		if (oldValue != newValue) {

-			fireStateChanged(fStoreKey, oldValue, newValue);

-            fValue = newValue;

-		}

-

-        updateLaunchConfigurationDialog();

-	}

-

-	/*

-	 * @see FieldEditor.setEnabled

-	 */

-	@Override

-	public void setEnabled(boolean enabled, Composite parent) {

-		// Only call super if there is a label already

-		if (style == SEPARATE_LABEL) {

-			super.setEnabled(enabled, parent);

-		}

-		getChangeControl(parent).setEnabled(enabled);

-	}

-

-	public void setEnabled(boolean enabled) {

-        if( checkBox != null ) {

-            if( style == SEPARATE_LABEL ) {

-            	super.setEnabled(enabled, checkBox.getParent());

-            }

-        	checkBox.setEnabled(enabled);

-        }

-    }

-

-

-

-

-

-	@Override

-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration) {

-		configuration.setAttribute(getStoreKey(), fDefaultValue);

-

-	}

-

-	@Override

-	public void initializeFrom(ILaunchConfiguration configuration) {

-		try {

-			setBooleanValue( configuration.getAttribute(getStoreKey(), fDefaultValue) );

-		} catch (CoreException e) {

-			e.printStackTrace();

-		}

-	}

-

-	private void setBooleanValue(boolean bValue) {

-		if( checkBox != null ) {

-			fValue = checkBox.getSelection();

-

-            if( fValue != bValue ) {

-    			checkBox.setSelection( bValue );

-

-                valueChanged(wasSelected, bValue);

-

-                wasSelected = bValue;

-            }

-		}

-	}

-

-

-	@Override

-	public void performApply(ILaunchConfigurationWorkingCopy configuration) {

-		if( isValid() ) {

-			configuration.setAttribute(getStoreKey(), fValue);

-		}

-	}

-

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/editors/impls/IntegerFieldEditor.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/editors/impls/IntegerFieldEditor.java
deleted file mode 100644
index 1471192..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/editors/impls/IntegerFieldEditor.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr - Initial API and implementation

- *     Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - New Interfacing (ILaunchConfigurationEditorComposite)

- *******************************************************************************/

-package org.eclipse.efm.ui.views.editors.impls;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationEditorComposite;

-import org.eclipse.jface.resource.JFaceResources;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Text;

-import org.eclipse.efm.ui.views.editors.FieldEditor;

-

-public class IntegerFieldEditor extends StringFieldEditor {

-

-	private int fDefaultValue;

-

-	private int minValidValue = -1;

-

-    private int maxValidValue = Integer.MAX_VALUE;

-

-    private static final int DEFAULT_TEXT_LIMIT = 10;

-

-

-	public IntegerFieldEditor(ILaunchConfigurationEditorComposite fLaunchConfCommInt,

-			String storeKey, String labelText, Composite parent, int defaultValue) {

-		this(fLaunchConfCommInt, storeKey, labelText, parent, DEFAULT_TEXT_LIMIT, defaultValue);

-	}

-

-	public IntegerFieldEditor(ILaunchConfigurationEditorComposite fLaunchConfCommInt,

-			String storeKey, String labelText, Composite parent, int textLimit, int defaultValue) {

-		super( Integer.toString(defaultValue) , true );

-

-		fDefaultValue = defaultValue;

-

-		init(fLaunchConfCommInt, storeKey, labelText);

-

-        setTextLimit(textLimit);

-//        widthInChars = 5;

-        setEmptyStringAllowed(false);

-        setErrorMessage(JFaceResources

-                .getString("IntegerFieldEditor.errorMessage"));//$NON-NLS-1$

-        createControl(parent);

-	}

-

-

-    /**

-     * Sets the range of valid values for this field.

-     *

-     * @param min the minimum allowed value (inclusive)

-     * @param max the maximum allowed value (inclusive)

-     */

-    public void setValidRange(int min, int max) {

-        minValidValue = min;

-        maxValidValue = max;

-        setErrorMessage(JFaceResources.format(

-        		"IntegerFieldEditor.errorMessageRange", //$NON-NLS-1$

-        		new Object[] { new Integer(min), new Integer(max) }));

-    }

-

-    @Override

-	protected boolean checkState() {

-

-        Text text = getTextControl();

-

-        if (text == null) {

-			return false;

-		}

-

-        String numberString = text.getText();

-        try {

-            int number = Integer.valueOf(numberString).intValue();

-            if (number >= minValidValue && number <= maxValidValue) {

-				clearErrorMessage();

-				return true;

-			}

-

-			showErrorMessage();

-			return false;

-

-        } catch (NumberFormatException e1) {

-            showErrorMessage();

-        }

-

-        return false;

-    }

-

-

-

-

-	@Override

-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration) {

-		configuration.setAttribute(getStoreKey(), fDefaultValue);

-	}

-

-	@Override

-	public void initializeFrom(ILaunchConfiguration configuration) {

-		try {

-			setStringValue( Integer.toString(

-					configuration.getAttribute(getStoreKey(), fDefaultValue)) );

-		} catch (CoreException e) {

-			e.printStackTrace();

-		}

-	}

-

-	@Override

-	public void performApply(ILaunchConfigurationWorkingCopy configuration) {

-		if( isValid() ) {

-			try {

-				configuration.setAttribute(getStoreKey(), getIntValue());

-			} catch (NumberFormatException e) {

-				e.printStackTrace();

-			}

-		}

-	}

-

-

-    /**

-     * Returns this field editor's current value as an integer.

-     *

-     * @return the value

-     * @exception NumberFormatException if the <code>String</code> does not

-     *   contain a parsable integer

-     */

-    public int getIntValue() throws NumberFormatException {

-    	String value = getStringValue();

-        return value.isEmpty() ? fDefaultValue : Integer.parseInt(value);

-    }

-

-

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/editors/impls/ListOfStringFieldEditor.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/editors/impls/ListOfStringFieldEditor.java
deleted file mode 100644
index fce9d36..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/editors/impls/ListOfStringFieldEditor.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr - Initial API and implementation

- *     Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - New Interfacing (ILaunchConfigurationEditorComposite)

- *******************************************************************************/

-package org.eclipse.efm.ui.views.editors.impls;

-

-import java.util.List;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationEditorComposite;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.efm.ui.views.editors.FieldEditor;

-

-public class ListOfStringFieldEditor extends FieldEditor {

-

-	private List< String > fValue;

-	private List< String > fDefaultValue;

-

-	public ListOfStringFieldEditor(ILaunchConfigurationEditorComposite fLaunchConfCommInt,

-			String storeKey, String labelText, Composite parent, List< String > defaultValue) {

-		super(fLaunchConfCommInt, storeKey, labelText, parent);

-		this.fDefaultValue = defaultValue;

-	}

-

-

-	@Override

-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration) {

-		configuration.setAttribute(getStoreKey(), fDefaultValue);

-

-	}

-

-	@Override

-	public void initializeFrom(ILaunchConfiguration configuration) {

-		try {

-			fValue = configuration.getAttribute( getStoreKey(), fDefaultValue);

-		} catch (CoreException e) {

-			e.printStackTrace();

-		}

-	}

-

-	@Override

-	public void performApply(ILaunchConfigurationWorkingCopy configuration) {

-		configuration.setAttribute(getStoreKey(), fValue);

-

-	}

-

-

-	@Override

-	protected void adjustForNumColumns(int numColumns) {

-		// TODO Auto-generated method stub

-

-	}

-

-

-	@Override

-	protected void doFillIntoGrid(Composite parent, int numColumns) {

-		// TODO Auto-generated method stub

-

-	}

-

-

-	@Override

-	public int getNumberOfControls() {

-		// TODO Auto-generated method stub

-		return 0;

-	}

-

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/editors/impls/StringFieldEditor.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/editors/impls/StringFieldEditor.java
deleted file mode 100644
index f4fe8a1..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/editors/impls/StringFieldEditor.java
+++ /dev/null
@@ -1,623 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr - Initial API and implementation

- *     Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - New Interfacing (ILaunchConfigurationEditorComposite)

- *******************************************************************************/

-package org.eclipse.efm.ui.views.editors.impls;

-

-import org.eclipse.core.runtime.Assert;

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationEditorComposite;

-import org.eclipse.jface.resource.JFaceResources;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.events.DisposeEvent;

-import org.eclipse.swt.events.DisposeListener;

-import org.eclipse.swt.events.FocusAdapter;

-import org.eclipse.swt.events.FocusEvent;

-import org.eclipse.swt.events.KeyAdapter;

-import org.eclipse.swt.events.KeyEvent;

-import org.eclipse.swt.graphics.GC;

-import org.eclipse.swt.graphics.Point;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Text;

-import org.eclipse.efm.ui.views.editors.FieldEditor;

-

-public class StringFieldEditor extends FieldEditor {

-

-	private String fDefaultValue;

-

-	public String getDefaultValue() {

-		return fDefaultValue;

-	}

-

-	public String getfDefaultValue() {

-		return fDefaultValue;

-	}

-

-	@Override

-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration) {

-		configuration.setAttribute(getStoreKey(), fDefaultValue);

-

-	}

-

-	@Override

-	public void initializeFrom(ILaunchConfiguration configuration) {

-		try {

-			setStringValue( configuration.getAttribute(getStoreKey(), fDefaultValue) );

-		} catch (CoreException e) {

-			e.printStackTrace();

-		}

-	}

-

-	@Override

-	public void performApply(ILaunchConfigurationWorkingCopy configuration) {

-		if( isValid() ) {

-			configuration.setAttribute(getStoreKey(), fValue);

-		}

-	}

-

-

-

-

-

-	///////////////////////////////////////////////////////////////////////////

-	// org.eclipse.jface.preference.StringFieldEditor

-	///////////////////////////////////////////////////////////////////////////

-

-

-    /**

-     * Validation strategy constant (value <code>0</code>) indicating that

-     * the editor should perform validation after every key stroke.

-     *

-     * @see #setValidateStrategy

-     */

-    public static final int VALIDATE_ON_KEY_STROKE = 0;

-

-    /**

-     * Validation strategy constant (value <code>1</code>) indicating that

-     * the editor should perform validation only when the text widget

-     * loses focus.

-     *

-     * @see #setValidateStrategy

-     */

-    public static final int VALIDATE_ON_FOCUS_LOST = 1;

-

-    /**

-     * Text limit constant (value <code>-1</code>) indicating unlimited

-     * text limit and width.

-     */

-    public static int UNLIMITED = -1;

-

-    /**

-     * Cached valid state.

-     */

-    private boolean isValid;

-

-    /**

-     * Old text value.

-     * @since 3.4 this field is protected.

-     */

-    protected String fValue;

-

-    /**

-     * The text field, or <code>null</code> if none.

-     */

-    Text textField;

-    

-    int textFieldStyle;

-

-    /**

-     * Width of text field in characters; initially unlimited.

-     */

-    // modif AFA private int widthInChars = UNLIMITED;

-    public int widthInChars = UNLIMITED;

-

-    /**

-     * Text limit of text field in characters; initially unlimited.

-     */

-    private int textLimit = UNLIMITED;

-

-    /**

-     * The error message, or <code>null</code> if none.

-     */

-    private String errorMessage;

-

-    /**

-     * Indicates whether the empty string is legal;

-     * <code>true</code> by default.

-     */

-    private boolean emptyStringAllowed = true;

-

-    /**

-     * The validation strategy;

-     * <code>VALIDATE_ON_KEY_STROKE</code> by default.

-     */

-    private int validateStrategy = VALIDATE_ON_KEY_STROKE;

-

-

-    /**

-     * Creates a new string field editor

-     */

-    protected StringFieldEditor() {

-    }

-

-    /**

-     * Creates a new string field editor

-     */

-    protected StringFieldEditor(String defaultValue, boolean isValid) {

-		this.fDefaultValue = defaultValue;

-		this.fValue = defaultValue;

-

-		this.isValid = isValid;

-		

-		this.textFieldStyle = SWT.SINGLE;

-	}

-

-    /**

-     * Creates a string field editor.

-     * Use the method <code>setTextLimit</code> to limit the text.

-     *

-     * @param name the name of the preference this field editor works on

-     * @param labelText the label text of the field editor

-     * @param width the width of the text input field in characters,

-     *  or <code>UNLIMITED</code> for no limit

-     * @param strategy either <code>VALIDATE_ON_KEY_STROKE</code> to perform

-     *  on the fly checking (the default), or <code>VALIDATE_ON_FOCUS_LOST</code> to

-     *  perform validation only after the text has been typed in

-     * @param parent the parent of the field editor's control

-     * @since 2.0

-     */

-	public StringFieldEditor(ILaunchConfigurationEditorComposite fLaunchConfCommInt,

-			String storeKey, String labelText, int width,

-            int strategy, Composite parent, String defaultValue, int textFieldStyle) {

-		this.fDefaultValue = defaultValue;

-

-        init(fLaunchConfCommInt, storeKey, labelText);

-

-        widthInChars = width;

-        setValidateStrategy(strategy);

-        isValid = false;		

-		this.textFieldStyle = textFieldStyle;

-

-        errorMessage = JFaceResources

-                .getString("StringFieldEditor.errorMessage");//$NON-NLS-1$

-        createControl(parent);

-    }

-

-	

-	public StringFieldEditor(ILaunchConfigurationEditorComposite fLaunchConfCommInt,

-			String storeKey, String labelText, Composite parent, String defaultValue) {

-        this(fLaunchConfCommInt, storeKey, labelText, UNLIMITED,

-        		VALIDATE_ON_KEY_STROKE, parent, defaultValue, SWT.SINGLE);

-	}

-

-	public StringFieldEditor(ILaunchConfigurationEditorComposite fLaunchConfCommInt,

-			String storeKey, String labelText, Composite parent, String defaultValue, int textFieldStyle) {

-        this(fLaunchConfCommInt, storeKey, labelText, UNLIMITED,

-        		VALIDATE_ON_KEY_STROKE, parent, defaultValue, textFieldStyle);

-	}

-

-   /**

-     * Creates a string field editor.

-     * Use the method <code>setTextLimit</code> to limit the text.

-     *

-     * @param name the name of the preference this field editor works on

-     * @param labelText the label text of the field editor

-     * @param width the width of the text input field in characters,

-     *  or <code>UNLIMITED</code> for no limit

-     * @param parent the parent of the field editor's control

-     */

-    public StringFieldEditor(ILaunchConfigurationEditorComposite fLaunchConfCommInt,

-    		String storeKey, String labelText, int width, Composite parent) {

-        this(fLaunchConfCommInt, storeKey, labelText, width,

-        		VALIDATE_ON_KEY_STROKE, parent, "", SWT.SINGLE);

-    }

-

-    /**

-     * Creates a string field editor of unlimited width.

-     * Use the method <code>setTextLimit</code> to limit the text.

-     *

-     * @param name the name of the preference this field editor works on

-     * @param labelText the label text of the field editor

-     * @param parent the parent of the field editor's control

-     */

-    public StringFieldEditor(ILaunchConfigurationEditorComposite fLaunchConfCommInt,

-    		String storeKey, String labelText, Composite parent) {

-        this(fLaunchConfCommInt, storeKey, labelText, UNLIMITED, parent);

-    }

-

-    @Override

-	protected void adjustForNumColumns(int numColumns) {

-        GridData gd = (GridData) textField.getLayoutData();

-        gd.horizontalSpan = numColumns - 1;

-        // We only grab excess space if we have to

-        // If another field editor has more columns then

-        // we assume it is setting the width.

-        gd.grabExcessHorizontalSpace = gd.horizontalSpan == 1;

-    }

-

-    /**

-     * Checks whether the text input field contains a valid value or not.

-     *

-     * @return <code>true</code> if the field value is valid,

-     *   and <code>false</code> if invalid

-     */

-    protected boolean checkState() {

-        boolean result = false;

-        if (emptyStringAllowed) {

-			result = true;

-		}

-

-        if (textField == null) {

-			result = false;

-		}

-

-        String txt = textField.getText();

-

-        result = (txt.trim().length() > 0) || emptyStringAllowed;

-

-        // call hook for subclasses

-        result = result && doCheckState();

-

-        if (result) {

-			clearErrorMessage();

-		} else {

-			showErrorMessage(errorMessage);

-		}

-

-        return result;

-    }

-

-    /**

-     * Hook for subclasses to do specific state checks.

-     * <p>

-     * The default implementation of this framework method does

-     * nothing and returns <code>true</code>.  Subclasses should

-     * override this method to specific state checks.

-     * </p>

-     *

-     * @return <code>true</code> if the field value is valid,

-     *   and <code>false</code> if invalid

-     */

-    protected boolean doCheckState() {

-        return true;

-    }

-

-    /**

-     * Fills this field editor's basic controls into the given parent.

-     * <p>

-     * The string field implementation of this <code>FieldEditor</code>

-     * framework method contributes the text field. Subclasses may override

-     * but must call <code>super.doFillIntoGrid</code>.

-     * </p>

-     */

-    @Override

-	protected void doFillIntoGrid(Composite parent, int numColumns) {

-        getLabelControl(parent);

-

-        textField = getTextControl(parent);

-        GridData gd = new GridData();

-        gd.horizontalSpan = numColumns - 1;

-        if (widthInChars != UNLIMITED) {

-            GC gc = new GC(textField);

-            try {

-                Point extent = gc.textExtent("X");//$NON-NLS-1$

-                gd.widthHint = widthInChars * extent.x;

-            } finally {

-                gc.dispose();

-            }

-        } else {

-            gd.horizontalAlignment = GridData.FILL;

-            gd.grabExcessHorizontalSpace = true;

-        }

-        textField.setLayoutData(gd);

-    }

-

-//    @Override

-//	protected void doLoad() {

-//        if (textField != null) {

-//            String value = getPreferenceStore().getString(getPreferenceName());

-//            textField.setText(value);

-//            oldValue = value;

-//        }

-//    }

-//

-//    @Override

-//	protected void doLoadDefault() {

-//        if (textField != null) {

-//            String value = getPreferenceStore().getDefaultString(

-//                    getPreferenceName());

-//            textField.setText(value);

-//        }

-//        valueChanged();

-//    }

-//

-//    @Override

-//	protected void doStore() {

-//        getPreferenceStore().setValue(getPreferenceName(), textField.getText());

-//    }

-

-    /**

-     * Returns the error message that will be displayed when and if

-     * an error occurs.

-     *

-     * @return the error message, or <code>null</code> if none

-     */

-    public String getErrorMessage() {

-        return errorMessage;

-    }

-

-    @Override

-	public int getNumberOfControls() {

-        return 2;

-    }

-

-    /**

-     * Returns the field editor's value.

-     *

-     * @return the current value

-     */

-    public String getStringValue() {

-        if (textField != null) {

-			return textField.getText();

-		}

-

-        return fValue;

-    }

-

-    /**

-     * Returns this field editor's text control.

-     *

-     * @return the text control, or <code>null</code> if no

-     * text field is created yet

-     */

-    protected Text getTextControl() {

-        return textField;

-    }

-

-    /**

-     * Returns this field editor's text control.

-     * <p>

-     * The control is created if it does not yet exist

-     * </p>

-     *

-     * @param parent the parent

-     * @return the text control

-     */

-    public Text getTextControl(Composite parent) {

-    	if (textField == null) {

-    		textField = new Text(parent, textFieldStyle | SWT.BORDER);

-    		textField.setFont(parent.getFont());

-    		textField.setText(fDefaultValue);

-

-    		if( (textFieldStyle & SWT.MULTI) != 0 ) {

-    			GridData gridData = new GridData(SWT.FILL, SWT.CENTER, true, false);

-    			gridData.heightHint = 3 * textField.getLineHeight();

-    			textField.setLayoutData(gridData);

-    		}

-

-    		switch (validateStrategy) {

-    		case VALIDATE_ON_KEY_STROKE:

-    			textField.addKeyListener(new KeyAdapter() {

-

-    				@Override

-    				public void keyReleased(KeyEvent e) {

-    					valueChanged();

-    				}

-    			});

-    			textField.addFocusListener(new FocusAdapter() {

-    				// Ensure that the value is checked on focus loss in case we

-    				// missed a keyRelease or user hasn't released key.

-    				// See https://bugs.eclipse.org/bugs/show_bug.cgi?id=214716

-    				@Override

-    				public void focusLost(FocusEvent e) {

-    					valueChanged();

-    				}

-    			});

-

-

-    			break;

-    		case VALIDATE_ON_FOCUS_LOST:

-    			textField.addKeyListener(new KeyAdapter() {

-    				@Override

-    				public void keyPressed(KeyEvent e) {

-    					clearErrorMessage();

-    				}

-    			});

-    			textField.addFocusListener(new FocusAdapter() {

-    				@Override

-    				public void focusGained(FocusEvent e) {

-    					refreshValidState();

-    				}

-

-    				@Override

-    				public void focusLost(FocusEvent e) {

-    					valueChanged();

-    					clearErrorMessage();

-    				}

-    			});

-    			break;

-    		default:

-    			Assert.isTrue(false, "Unknown validate strategy");//$NON-NLS-1$

-    		}

-    		textField.addDisposeListener(new DisposeListener() {

-    			@Override

-    			public void widgetDisposed(DisposeEvent event) {

-    				textField = null;

-    			}

-    		});

-    		if (textLimit > 0) {//Only set limits above 0 - see SWT spec

-    			textField.setTextLimit(textLimit);

-    		}

-    	} else {

-    		checkParent(textField, parent);

-    	}

-    	return textField;

-    }

-

-    /**

-     * Returns whether an empty string is a valid value.

-     *

-     * @return <code>true</code> if an empty string is a valid value, and

-     *  <code>false</code> if an empty string is invalid

-     * @see #setEmptyStringAllowed

-     */

-    public boolean isEmptyStringAllowed() {

-        return emptyStringAllowed;

-    }

-

-    @Override

-	public boolean isValid() {

-        return isValid;

-    }

-

-    @Override

-	protected void refreshValidState() {

-        isValid = checkState();

-    }

-

-    /**

-     * Sets whether the empty string is a valid value or not.

-     *

-     * @param b <code>true</code> if the empty string is allowed,

-     *  and <code>false</code> if it is considered invalid

-     */

-    public void setEmptyStringAllowed(boolean b) {

-        emptyStringAllowed = b;

-    }

-

-    /**

-     * Sets the error message that will be displayed when and if

-     * an error occurs.

-     *

-     * @param message the error message

-     */

-    public void setErrorMessage(String message) {

-        errorMessage = message;

-    }

-

-    @Override

-	public void setFocus() {

-        if (textField != null) {

-            textField.setFocus();

-        }

-    }

-

-    /**

-     * Sets this field editor's value.

-     *

-     * @param value the new value, or <code>null</code> meaning the empty string

-     */

-    public void setStringValue(String value) {

-        if (textField != null) {

-            if (value == null) {

-				value = "";//$NON-NLS-1$

-			}

-            fValue = textField.getText();

-            if (!fValue.equals(value)) {

-                textField.setText(value);

-                valueChanged();

-            }

-        }

-    }

-

-    /**

-     * Sets this text field's text limit.

-     *

-     * @param limit the limit on the number of character in the text

-     *  input field, or <code>UNLIMITED</code> for no limit

-

-     */

-    public void setTextLimit(int limit) {

-        textLimit = limit;

-        if (textField != null) {

-			textField.setTextLimit(limit);

-		}

-    }

-

-    /**

-     * Sets the strategy for validating the text.

-     * <p>

-     * Calling this method has no effect after <code>createPartControl</code>

-     * is called. Thus this method is really only useful for subclasses to call

-     * in their constructor. However, it has public visibility for backward

-     * compatibility.

-     * </p>

-     *

-     * @param value either <code>VALIDATE_ON_KEY_STROKE</code> to perform

-     *  on the fly checking (the default), or <code>VALIDATE_ON_FOCUS_LOST</code> to

-     *  perform validation only after the text has been typed in

-     */

-    public void setValidateStrategy(int value) {

-        Assert.isTrue(value == VALIDATE_ON_FOCUS_LOST

-                || value == VALIDATE_ON_KEY_STROKE);

-        validateStrategy = value;

-    }

-

-    /**

-     * Shows the error message set via <code>setErrorMessage</code>.

-     */

-    public void showErrorMessage() {

-        showErrorMessage(errorMessage);

-    }

-

-    /**

-     * Informs this field editor's listener, if it has one, about a change

-     * to the value (<code>VALUE</code> property) provided that the old and

-     * new values are different.

-     * <p>

-     * This hook is <em>not</em> called when the text is initialized

-     * (or reset to the default value) from the preference store.

-     * </p>

-     */

-    protected void valueChanged() {

-        setPresentsDefaultValue(false);

-        boolean oldState = isValid;

-        refreshValidState();

-

-        if (isValid != oldState) {

-			fireStateChanged(IS_VALID, oldState, isValid);

-		}

-

-        String newValue = textField.getText();

-        if (!newValue.equals(fValue)) {

-            fireValueChanged(fStoreKey, fValue, newValue);

-            fValue = newValue;

-        }

-

-        updateLaunchConfigurationDialog();

-    }

-

-    /*

-     * @see FieldEditor.setEnabled(boolean,Composite).

-     */

-    @Override

-	public void setEnabled(boolean enabled, Composite parent) {

-        super.setEnabled(enabled, parent);

-        getTextControl(parent).setEnabled(enabled);

-    }

-

-	public void setEnabled(boolean enabled) {

-        if (textField != null) {

-        	super.setEnabled(enabled, textField.getParent());

-

-        	textField.setEnabled(enabled);

-        }

-    }

-

-

-

-

-

-

-

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/AbstractCompositeMaker.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/AbstractCompositeMaker.java
deleted file mode 100644
index 74b19bd..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/AbstractCompositeMaker.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr

- *   - Initial API and Implementation

- *******************************************************************************/

-

-package org.eclipse.efm.ui.views.launchconfigurations.components;

-

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.core.workflow.IWorkflowConfigurationConstants;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationEditorComposite;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationGUIelement;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Control;

-

-public abstract class AbstractCompositeMaker implements ILaunchConfigurationEditorComposite, IWorkflowConfigurationConstants {

-

-	private ILaunchConfigurationGUIelement masterGUIelement;

-	

-	public abstract void setDefaultFieldValues(ILaunchConfigurationWorkingCopy configuration);

-	

-	public abstract void initializeFieldValuesFrom(ILaunchConfiguration configuration);

-	

-	public abstract void applyUpdatesOnFieldValuesFrom(ILaunchConfigurationWorkingCopy configuration);

-	

-	public AbstractCompositeMaker(ILaunchConfigurationGUIelement masterGUIelement) {

-		this.masterGUIelement = masterGUIelement;

-	}

-	

-	// ======================================================================================

-	//                              Fields Validation

-	// ======================================================================================	

-

-	public final class FieldValidationReturn {

-	    private final boolean fieldValidation;

-	    private final String reasonString;

-

-	    public FieldValidationReturn(boolean fieldValidation, String reasonString) {

-	        this.fieldValidation = fieldValidation;

-	        this.reasonString = reasonString;

-	    }

-

-	    public boolean areFieldsValid() {

-	        return fieldValidation;

-	    }

-

-	    public String getReason() {

-	        return reasonString;

-	    }

-	}

-	

-	public abstract FieldValidationReturn areFieldsValid(ILaunchConfiguration launchConfig);

-	

-	public abstract Composite createControlMain(Composite parent);

-	

-	@Override

-	public void propagateMessage(String message) {

-		if (masterGUIelement != null) {

-			masterGUIelement.setMessage(message);

-		}

-	}

-	

-	@Override

-	public void propagateWarningMessage(String warningmessage) {

-		if (masterGUIelement != null) {

-			masterGUIelement.setWarningMessage(warningmessage);

-		}

-	}

-	

-	@Override

-	public void propagateErrorMessage(String errormessage) {

-		if (masterGUIelement != null) {

-			masterGUIelement.setErrorMessage(errormessage);

-		}

-

-	}

-	

-	@Override

-	public void propagateGUIupdate() {

-		if (masterGUIelement != null) {

-			masterGUIelement.updateGUI();

-		}

-	}

-

-	@Override

-	public void propagateVisibility(Control aControl, boolean visible) {

-		aControl.setVisible(visible);

-

-		Object gd = aControl.getLayoutData();

-		if (gd instanceof GridData) {

-			((GridData)gd).exclude = (! visible);

-		}

-	}	

-	

-	@Override

-	public void propagateUpdateJobScheduling() {

-		if (masterGUIelement != null) {

-			masterGUIelement.scheduleUpdateJob();

-		}

-	}

-	

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/CommonCriteriaCompositeMaker.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/CommonCriteriaCompositeMaker.java
deleted file mode 100644
index bc97e83..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/CommonCriteriaCompositeMaker.java
+++ /dev/null
@@ -1,456 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial Implementation (tab-based, inserted in Run Configurations dialog)

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - New API (free-composite-based, no type assumptions on parent) 

- *******************************************************************************/

-

-package org.eclipse.efm.ui.views.launchconfigurations.components;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.core.workflow.common.GraphExplorationStrategyKind;

-import org.eclipse.efm.ui.views.editors.impls.BooleanFieldEditor;

-import org.eclipse.efm.ui.views.editors.impls.IntegerFieldEditor;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationGUIelement;

-import org.eclipse.efm.ui.views.utils.SWTFactory;

-import org.eclipse.swt.events.ModifyEvent;

-import org.eclipse.swt.events.ModifyListener;

-import org.eclipse.swt.events.SelectionAdapter;

-import org.eclipse.swt.events.SelectionEvent;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.widgets.Button;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Group;

-

-public class CommonCriteriaCompositeMaker extends AbstractCompositeMaker {

-

-	//	public static final String ATTR_BEHAVIOR_ANALYSIS_TRANSITION_NAME =

-	//	Activator.PLUGIN_ID + ".ATTR_BEHAVIOR_ANALYSIS_TRANSITION_NAME"; //$NON-NLS-1$

-

-	private IntegerFieldEditor fNodeIntegerField;

-	private IntegerFieldEditor fWidthIntegerField;

-	private IntegerFieldEditor fHeightIntegerField;

-	private IntegerFieldEditor fStepsIntegerField;

-	private IntegerFieldEditor fTimeoutIntegerField;

-	//private StringFieldEditor fTransitionNameStringField;

-	private BooleanFieldEditor fInclusionCriterionBooleanField;

-	

-	private Button fBFSButton = null;

-	private Button fDFSButton = null;

-	private Button fRFSButton = null;

-	

-	private GraphExplorationStrategyKind fAnalyzeStrategy =

-		GraphExplorationStrategyKind.BREADTH_FIRST_SEARCH;

-	

-	private Group groupAnalyzeStrategy;

-	//private Group groupBehaviorCharacterization;

-	private Group groupInclusionCriterion;

-

-	public CommonCriteriaCompositeMaker(ILaunchConfigurationGUIelement masterGUIelement) {

-		super(masterGUIelement);

-	}

-	

-

-	private final class TabListener extends SelectionAdapter implements ModifyListener {

-		

-		/* (non-Javadoc)

-		 * @see org.eclipse.swt.events.ModifyListener#modifyText(org.eclipse.swt.events.ModifyEvent)

-		 */

-		@Override

-		public void modifyText(ModifyEvent e) {

-			propagateGUIupdate();

-		}

-		

-		/* (non-Javadoc)

-		 * @see org.eclipse.swt.events.SelectionListener#widgetSelected(org.eclipse.swt.events.SelectionEvent)

-		 */

-		@Override

-		public void widgetSelected(SelectionEvent e) {

-			Object source= e.getSource();

-		//	if (source == fViewer.getTable() || source == fViewer) {

-		//		setParametersButtonsEnableState();

-		//	} else if (source == fParametersAddButton) {

-		//		handleParametersAddButtonSelected();

-		//	} else if (source == fParametersEditButton) {

-		//		handleParametersEditButtonSelected();

-		//	} else if (source == fParametersRemoveButton) {

-		//		handleParametersRemoveButtonSelected();

-		//	}

-		

-			// Use case Analysis

-			if (source == fBFSButton) {

-				handleBFSButtonSelected();

-			}

-			else if (source == fDFSButton) {

-				handleDFSButtonSelected();

-			}

-			else if (source == fRFSButton) {

-				handleRFSButtonSelected();

-			}

-		}

-	}

-

-	private TabListener fListener= new TabListener();

-

-

-	// ======================================================================================

-	//                              Buttons handling

-	// ======================================================================================

-

-	public void handleBFSButtonSelected() {

-		if( fBFSButton.getSelection() ) {

-			fAnalyzeStrategy = GraphExplorationStrategyKind.BREADTH_FIRST_SEARCH;

-		}

-		propagateGUIupdate();

-	}

-

-	public void handleDFSButtonSelected() {

-		if( fDFSButton.getSelection() ) {

-			fAnalyzeStrategy = GraphExplorationStrategyKind.DEPTH_FIRST_SEARCH;

-		}

-		propagateGUIupdate();

-	}

-

-	public void handleRFSButtonSelected() {

-		if( fRFSButton.getSelection() ) {

-			fAnalyzeStrategy = GraphExplorationStrategyKind.RANDOM_FIRST_SEARCH;

-		}

-		propagateGUIupdate();

-	}

-	

-	// ======================================================================================

-	//                              Graphical Components Creation Methods

-	// ======================================================================================

-	

-	@Override

-	public Composite createControlMain(Composite parent) {

-		Composite simpleComposite = SWTFactory.createComposite(parent, parent.getFont(), 1, 1, GridData.FILL_BOTH, 0, 0);

-

-		createControlNodesHeightWidth(simpleComposite);

-		createControlEvaluationLimits(simpleComposite);

-		createAnalyzeStrategy(simpleComposite);

-		createControlInclusionCriterion(simpleComposite);

-//		createBehaviorCharacterization(simpleComposite);

-		

-		return simpleComposite;

-	}

-	

-	private void createControlNodesHeightWidth(Composite parent) {

-        Group group = SWTFactory.createGroup(parent, "Graph size limits", 5, 2, GridData.FILL_HORIZONTAL);

-

-        Composite comp = SWTFactory.createComposite(group, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fNodeIntegerField = new IntegerFieldEditor(this,

-				ATTR_SPECIFICATION_STOP_CRITERIA_NODE, "&Nodes:", comp, -1);

-		fNodeIntegerField.setToolTipText("Maximal number of nodes "

-				+ "(-1 <=> no-limit) of the symbolic execution tree");

-

-		fWidthIntegerField = new IntegerFieldEditor(this,

-				ATTR_SPECIFICATION_STOP_CRITERIA_WIDTH, "W&idth:", comp, -1);

-		fWidthIntegerField.setToolTipText(

-				"Maximal width (-1 <=> no-limit) of the symbolic execution tree");

-

-		fHeightIntegerField = new IntegerFieldEditor(this,

-				ATTR_SPECIFICATION_STOP_CRITERIA_HEIGHT, "&Height:", comp, 100);

-		fHeightIntegerField.setToolTipText(

-				"Maximal height (-1 <=> no-limit) of the symbolic execution tree");

-	}

-

-	private void createControlEvaluationLimits(Composite parent) {

-        Group group = SWTFactory.createGroup(parent,

-        		"Evaluation limits", 5, 2, GridData.FILL_HORIZONTAL);

-

-        Composite comp = SWTFactory.createComposite(

-        		group, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fStepsIntegerField = new IntegerFieldEditor(this,

-				ATTR_SPECIFICATION_STOP_CRITERIA_STEPS,

-				"&Evaluation Steps:", comp, 1000);

-		fStepsIntegerField.setToolTipText("Maximal steps of calculus "

-				+ "(-1 <=> no-limit) during the symbolic execution");

-

-		fTimeoutIntegerField = new IntegerFieldEditor(this,

-				ATTR_SPECIFICATION_STOP_CRITERIA_TIMEOUT,

-				"&Timeout (seconds):", comp, -1);

-		fTimeoutIntegerField.setToolTipText("Maximal duration "

-				+ "(-1 <=> no-limit) of the symbolic execution");

-	}

-

-	private void createControlInclusionCriterion(Composite parent) {

-        groupInclusionCriterion = SWTFactory.createGroup(parent,

-        		"Inclusion Criterion", 5, 2, GridData.FILL_HORIZONTAL);

-

-        Composite comp = SWTFactory.createComposite(

-        		groupInclusionCriterion, 1, 1, GridData.FILL_HORIZONTAL);

-

-        fInclusionCriterionBooleanField = new BooleanFieldEditor(this,

-        		ATTR_ENABLED_INCLUSION_CRITERION,

-        		"&Apply Inclusion", comp, false);

-	}

-

-

-	protected void createAnalyzeStrategy(Composite parent) {

-		groupAnalyzeStrategy = SWTFactory.createGroup(

-				parent, "&Analyze Strategy", 3, 1, GridData.FILL_HORIZONTAL);

-

-		fBFSButton = SWTFactory.createRadioButton(groupAnalyzeStrategy, "&BFS");

-		fBFSButton.addSelectionListener(fListener);

-		fBFSButton.setToolTipText("Breadth First Search");

-

-		fDFSButton = SWTFactory.createRadioButton(groupAnalyzeStrategy, "&DFS");

-		fDFSButton.addSelectionListener(fListener);

-		fDFSButton.setToolTipText("Depth First Search");

-

-		fRFSButton = SWTFactory.createRadioButton(groupAnalyzeStrategy, "&RFS");

-		fRFSButton.addSelectionListener(fListener);

-		fRFSButton.setToolTipText("Random First Search");

-

-		fBFSButton.setSelection(false);

-		fDFSButton.setSelection(false);

-		fRFSButton.setSelection(false);

-	}

-

-//	public void createBehaviorCharacterization(Composite parent) {

-//        groupBehaviorCharacterization = SWTFactory.createGroup(

-//        		parent, "Behavior Characterization",

-//        		5, 2, GridData.FILL_HORIZONTAL);

-//

-//        Composite comp = SWTFactory.createComposite(

-//        		groupBehaviorCharacterization, 1, 1, GridData.FILL_HORIZONTAL);

-//

-//		fTransitionNameStringField = new StringFieldEditor(this,

-//				ATTR_BEHAVIOR_ANALYSIS_TRANSITION_NAME,

-//				"&Transition Name List:", comp,

-//				"Select a transition name list");

-//	}

-	

-	

-	// ======================================================================================

-	//                              Fields Values Management

-	// ======================================================================================	

-	

-	@Override

-	public void setDefaultFieldValues(ILaunchConfigurationWorkingCopy configuration) {

-//		fNodeIntegerField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_SPECIFICATION_STOP_CRITERIA_NODE, -1);

-

-//		fWidthIntegerField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_SPECIFICATION_STOP_CRITERIA_WIDTH, -1);

-

-//		fHeightIntegerField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_SPECIFICATION_STOP_CRITERIA_HEIGHT, -1);

-

-//		fStepsIntegerField.setDefaults(configuration);

-    	String fModelAnalysis;

-		try {

-			fModelAnalysis = configuration.getAttribute(

-					ATTR_SPECIFICATION_MODEL_ANALYSIS, "");

-

-			if ( fModelAnalysis.equals(

-					ANALYSIS_PROFILE_MODEL_COVERAGE_TRANSITION) )

-			{

-				configuration.setAttribute(

-						ATTR_SPECIFICATION_STOP_CRITERIA_STEPS, -1);

-			}

-			else {

-				configuration.setAttribute(

-						ATTR_SPECIFICATION_STOP_CRITERIA_STEPS, 1000);

-			}

-		}

-		catch (CoreException e) {

-			e.printStackTrace();

-		}

-

-//		fTimeoutIntegerField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_SPECIFICATION_STOP_CRITERIA_TIMEOUT, -1);

-

-//		fInclusionCriterionBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_ENABLED_INCLUSION_CRITERION, false);

-

-		configuration.setAttribute(

-				ATTR_SPECIFICATION_ANALYZE_STRATEGY, "BFS");

-	}

-	

-	@Override

-	public void initializeFieldValuesFrom(ILaunchConfiguration configuration) {

-		fNodeIntegerField.initializeFrom(configuration);

-		fWidthIntegerField.initializeFrom(configuration);

-		fHeightIntegerField.initializeFrom(configuration);

-		fStepsIntegerField.initializeFrom(configuration);

-		fTimeoutIntegerField.initializeFrom(configuration);

-

-		fInclusionCriterionBooleanField.setEnabled(false);

-		fInclusionCriterionBooleanField.initializeFrom(configuration);

-

-		// Timeout grisé tant que pas de solution pour le prendre en compte

-		//

-		// fTimeoutIntegerField.setEnabled(false);

-

-		// Cas fAnalyzeStrategy

-		//

-		try {

-			fAnalyzeStrategy = GraphExplorationStrategyKind.get(

-					configuration.getAttribute(

-							ATTR_SPECIFICATION_ANALYZE_STRATEGY,

-							GraphExplorationStrategyKind.

-									BREADTH_FIRST_SEARCH.getLiteral()) );

-		} catch (CoreException e) {

-			e.printStackTrace();

-		}

-		finally {

-			if( fAnalyzeStrategy == null ) {

-				fAnalyzeStrategy = GraphExplorationStrategyKind.BREADTH_FIRST_SEARCH;

-			}

-		}

-

-		initializeAnalyzeStrategy(configuration);

-

-//		// Cas fTransitionNameStringField

-//		//

-//		fTransitionNameStringField.initializeFrom(configuration);

-//		initializeBehaviorCharacterization(configuration);

-	}

-

-	private void initializeAnalyzeStrategy(ILaunchConfiguration configuration) {

-    	String fModelAnalysis;

-    	String fAnalysisProfile;

-		try {

-			fModelAnalysis = configuration.getAttribute(

-					ATTR_SPECIFICATION_MODEL_ANALYSIS, "");

-

-			fAnalysisProfile = configuration.getAttribute(

-					ATTR_SPECIFICATION_ANALYSIS_PROFILE, "");

-

-			if ( fModelAnalysis.equals(ANALYSIS_PROFILE_MODEL_COVERAGE_TRANSITION)

-				|| fModelAnalysis.equals(ANALYSIS_PROFILE_MODEL_COVERAGE_BEHAVIOR)

-				|| fAnalysisProfile.equals(ANALYSIS_PROFILE_TEST_OFFLINE) ) {

-//				fBFSButton.setEnabled(false);

-//				fDFSButton.setEnabled(false);

-//				fRFSButton.setEnabled(false);

-

-//				groupAnalyzeStrategy.setVisible(false);

-				propagateVisibility(groupAnalyzeStrategy,false);

-				propagateVisibility(groupInclusionCriterion,false);

-

-				fBFSButton.setSelection(false);

-				fDFSButton.setSelection(false);

-				fRFSButton.setSelection(false);

-			}

-			else {

-//				fBFSButton.setEnabled(true);

-//				fDFSButton.setEnabled(true);

-//				fRFSButton.setEnabled(true);

-				groupAnalyzeStrategy.setVisible(true);

-				propagateVisibility(groupAnalyzeStrategy,true);

-				propagateVisibility(groupInclusionCriterion,true);

-

-				switch( fAnalyzeStrategy ) {

-				case BREADTH_FIRST_SEARCH:

-					fBFSButton.setSelection(true);

-					break;

-				case DEPTH_FIRST_SEARCH:

-					fDFSButton.setSelection(true);

-					break;

-				case RANDOM_FIRST_SEARCH:

-					fRFSButton.setSelection(true);

-					break;

-				default:

-					fBFSButton.setSelection(true);

-					fAnalyzeStrategy =

-							GraphExplorationStrategyKind.BREADTH_FIRST_SEARCH;

-					break;

-				}

-			}

-

-		} catch (CoreException e) {

-			// TODO Auto-generated catch block

-			e.printStackTrace();

-		}

-	}

-

-//	private void initializeBehaviorCharacterization(ILaunchConfiguration configuration) {

-//    	String fAnalysisProfile;

-//    	String fModelAnalysis;

-//		try {

-//			fAnalysisProfile = configuration.getAttribute(

-//					MainTab.ATTR_SPECIFICATION_ANALYSIS_PROFILE, "");

-//			fModelAnalysis = configuration.getAttribute(

-//					MainTab.ATTR_SPECIFICATION_MODEL_ANALYSIS, "");

-//

-//			if ( fAnalysisProfile.equals(ANALYSIS_PROFILE_MODEL) &&

-//					fModelAnalysis.equals(ANALYSIS_PROFILE_MODEL_COVERAGE_BEHAVIOR)	) {

-////				fTransitionNameStringField.setEnabled(true);

-//

-////				groupBehaviorCharacterization.setVisible(true);

-//				visibleAndExclude(groupBehaviorCharacterization,true);

-//			}

-//			else {

-////				fTransitionNameStringField.setEnabled(false);

-//

-////				groupBehaviorCharacterization.setVisible(false);

-//				visibleAndExclude(groupBehaviorCharacterization,false);

-//			}

-//

-//		} catch (CoreException e) {

-//			// TODO Auto-generated catch block

-//			e.printStackTrace();

-//		}

-//	}	

-

-	@Override

-	public void applyUpdatesOnFieldValuesFrom(ILaunchConfigurationWorkingCopy configuration) {

-		fNodeIntegerField.performApply(configuration);

-		fWidthIntegerField.performApply(configuration);

-		fHeightIntegerField.performApply(configuration);

-		fStepsIntegerField.performApply(configuration);

-		fTimeoutIntegerField.performApply(configuration);

-//		fTransitionNameStringField.performApply(configuration);

-

-		fInclusionCriterionBooleanField.performApply(configuration);

-		fInclusionCriterionBooleanField.setEnabled(true);

-

-		configuration.setAttribute(

-				ATTR_SPECIFICATION_ANALYZE_STRATEGY,

-				fAnalyzeStrategy.getLiteral());

-	}

-	

-	// ======================================================================================

-	//                              Fields Validation

-	// ======================================================================================

-	

-	@Override

-	public FieldValidationReturn areFieldsValid(ILaunchConfiguration launchConfig) {

-		if( ! fNodeIntegerField.isValid() ) {

-			return new FieldValidationReturn(false, "Node is not a valid integer");

-		}

-		if( ! fWidthIntegerField.isValid() ) {

-			return new FieldValidationReturn(false, "Width is not a valid integer");

-		}

-		if( ! fHeightIntegerField.isValid() ) {

-			return new FieldValidationReturn(false, "Height is not a valid integer");

-		}

-		if( ! fStepsIntegerField.isValid() ) {

-			return new FieldValidationReturn(false, "Evaluation Steps is not a valid integer");

-		}

-		if( ! fTimeoutIntegerField.isValid() ) {

-			return new FieldValidationReturn(false, "Timeout is not a valid integer");

-		}

-//		if( ! fTransitionNameStringField.isValid() ) {

-//			return new FieldValidationReturn(false, "Transition Name is not a valid string");

-//		}

-		return new FieldValidationReturn(true, null);

-	}

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/DebugCompositeMaker.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/DebugCompositeMaker.java
deleted file mode 100644
index d131cdf..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/DebugCompositeMaker.java
+++ /dev/null
@@ -1,584 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial Implementation (tab-based, inserted in Run Configurations dialog)

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - New API (free-composite-based, no type assumptions on parent) 

- *******************************************************************************/

-

-package org.eclipse.efm.ui.views.launchconfigurations.components;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.core.workflow.AbstractLaunchDelegate;

-import org.eclipse.efm.core.workflow.Activator;

-import org.eclipse.efm.core.workflow.ToolConstants;

-import org.eclipse.efm.core.workflow.common.ConsoleVerbosityKind;

-import org.eclipse.efm.ui.views.editors.impls.BooleanFieldEditor;

-import org.eclipse.efm.ui.views.editors.impls.StringFieldEditor;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationGUIelement;

-import org.eclipse.efm.ui.views.utils.SWTFactory;

-import org.eclipse.jface.preference.IPreferenceStore;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.events.ModifyEvent;

-import org.eclipse.swt.events.ModifyListener;

-import org.eclipse.swt.events.SelectionAdapter;

-import org.eclipse.swt.events.SelectionEvent;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.widgets.Combo;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Group;

-

-public class DebugCompositeMaker extends AbstractCompositeMaker {

-

-	// Console Log

-	private static final String[] CONSOLE_LEVEL_COMBO_ITEMS = new String[] {

-			ConsoleVerbosityKind.SILENT.getLiteral(),

-			ConsoleVerbosityKind.MINIMUM.getLiteral(),

-			ConsoleVerbosityKind.MEDIUM.getLiteral(),

-			ConsoleVerbosityKind.MAXIMUM.getLiteral()

-	};

-

-//		Arrays.stream(ConsoleVerbosityKind.values()).map(

-//				ConsoleVerbosityKind::getLiteral).toArray(String[]::new);

-

-	private Combo fConsoleLevelCombo = null;

-	private ConsoleVerbosityKind fConsoleLevel = ConsoleVerbosityKind.MINIMUM;

-

-	// First Symbex Workflow Page

-	private BooleanFieldEditor fFirstParsedModelTextualEnabledBooleanField;

-//		private StringFieldEditor  fFirstparsedModelTextualFileNameStringField;

-

-	private BooleanFieldEditor fFirstParsedModelGraphizEnabledBooleanField;

-//		private StringFieldEditor  fFirstParsedModelGraphizFileNameStringField;

-

-	private BooleanFieldEditor fFirstCompiledModelTextualEnabledBooleanField;

-//		private StringFieldEditor  fFirstCompiledModelTextualFileNameStringField;

-	private boolean fEnabledSymbexDeveloperMode;

-

-	private BooleanFieldEditor fFirstSymbexOutputTextualEnabledBooleanField;

-//		private StringFieldEditor  fFirstSymbexOutputTextualFileNameStringField;

-

-	private BooleanFieldEditor fFirstSymbexOutputGraphizEnabledBooleanField;

-//		private StringFieldEditor  fFirstSymbexOutputGraphizFileNameStringField;

-	private StringFieldEditor  fFirstSymbexOutputGraphizTraceStringField;

-	private StringFieldEditor  fFirstSymbexOutputGraphizFormatStringField;

-	private Composite fCompositeFirstSymbexOutputGraphiz;

-

-

-	// Second Symbex Workflow Page

-//		private BooleanFieldEditor fSecondParsedModelGraphizEnabledBooleanField;

-////		private StringFieldEditor  fSecondParsedModelGraphizFileNameStringField;

-//

-//		private BooleanFieldEditor fSecondParsedModelTextualEnabledBooleanField;

-////		private StringFieldEditor  fSecondparsedModelTextualFileNameStringField;

-//

-//		private BooleanFieldEditor fSecondCompiledModelTextualEnabledBooleanField;

-////		private StringFieldEditor  fSecondCompiledModelTextualFileNameStringField;

-

-	private BooleanFieldEditor fSecondSymbexOutputTextualEnabledBooleanField;

-//		private StringFieldEditor  fSecondSymbexOutputTextualFileNameStringField;

-

-	private BooleanFieldEditor fSecondSymbexOutputGraphizEnabledBooleanField;

-//		private StringFieldEditor  fSecondSymbexOutputGraphizFileNameStringField;

-	private StringFieldEditor  fSecondSymbexOutputGraphizTraceStringField;

-	private StringFieldEditor  fSecondSymbexOutputGraphizFormatStringField;

-	private Composite fCompositeSecondSymbexOutputGraphiz;

-

-	public DebugCompositeMaker(ILaunchConfigurationGUIelement masterGUIelement) {

-		super(masterGUIelement);

-		if( AbstractLaunchDelegate.ENABLED_SYMBEX_DEVELOPER_MODE_OPTION ) {

-			IPreferenceStore prefs =

-					Activator.getDefault().getPreferenceStore();

-

-			fEnabledSymbexDeveloperMode = prefs.getBoolean(

-					ToolConstants.PREF_SYMBEX_DEVELOPER_MODE);

-		}

-		else {

-			fEnabledSymbexDeveloperMode = false;

-		}

-	}

-	

-	// ======================================================================================

-	//                              Miscellaneous handling

-	// ======================================================================================

-	

-	private class TabListener extends SelectionAdapter implements ModifyListener {

-

-		/* (non-Javadoc)

-		 * @see org.eclipse.swt.events.ModifyListener#modifyText(org.eclipse.swt.events.ModifyEvent)

-		 */

-		@Override

-		public void modifyText(ModifyEvent e) {

-			propagateGUIupdate();

-		}

-

-		/* (non-Javadoc)

-		 * @see org.eclipse.swt.events.SelectionListener#widgetSelected(org.eclipse.swt.events.SelectionEvent)

-		 */

-		@Override

-		public void widgetSelected(SelectionEvent e) {

-			final Object source= e.getSource();

-

-			if (source == fConsoleLevelCombo) {

-				handleConsoleLevelSelectionChange();

-			}

-		}

-	}

-

-	private TabListener fListener= new TabListener();	

-	

-	private void handleConsoleLevelSelectionChange() {

-		fConsoleLevel = ConsoleVerbosityKind.get( fConsoleLevelCombo.getText() );

-		if( fConsoleLevel == null ) {

-			fConsoleLevel = ConsoleVerbosityKind.MINIMUM;

-		}

-

-		propagateGUIupdate();

-	}

-	

-	// ======================================================================================

-	//                              Graphical Components Creation Methods

-	// ======================================================================================

-	

-	@Override

-	public Composite createControlMain(Composite parent) {

-		Composite simpleComposite = SWTFactory.createComposite(parent,

-				parent.getFont(), 1, 1, GridData.FILL_HORIZONTAL, 0, 0);

-

-		createDebugTracePage(simpleComposite);

-		

-		return simpleComposite;

-	}

-

-	private void createDebugTracePage(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"Debug Trace", 1, 1, GridData.FILL_HORIZONTAL);

-

-		createConsoleLogComponent(group);

-

-		createFirstSymbexWorkflowPage(group);

-

-		createSecondSymbexWorkflowtPage(group);

-	}

-

-

-	private void createConsoleLogComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"Console Log", 2, 1, GridData.FILL_HORIZONTAL);

-

-		SWTFactory.createLabel(group, "&Verbose Level:", 1);

-

-		fConsoleLevelCombo = SWTFactory.createCombo(group,

-				SWT.DROP_DOWN | SWT.READ_ONLY, 1, CONSOLE_LEVEL_COMBO_ITEMS);

-

-		fConsoleLevelCombo.addSelectionListener(fListener);

-	}

-

-

-	public void createFirstSymbexWorkflowPage(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"First Stage Symbex Workflow Page",

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		createFirstInputModelGraphicComponent(group);

-

-		createFirstSymbexOutputComponent(group);

-	}

-

-	private void createFirstInputModelGraphicComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"Input Model Generated Traces",

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		Composite comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fFirstParsedModelTextualEnabledBooleanField = new BooleanFieldEditor(

-				this, ATTR_ENABLED_FIRST_PARSED_MODEL_TEXTUAL_GENERATION,

-				"&Parsed Model as Textual Representation", comp, false);

-

-		fFirstParsedModelGraphizEnabledBooleanField = new BooleanFieldEditor(

-				this, ATTR_ENABLED_FIRST_PARSED_MODEL_GRAPHVIZ_GENERATION,

-				"&Parsed Model as <Graphiz> Representation", comp, false);

-

-		if( fEnabledSymbexDeveloperMode ) {

-			fFirstCompiledModelTextualEnabledBooleanField =

-				new BooleanFieldEditor(this,

-					ATTR_ENABLED_FIRST_COMPILED_MODEL_TEXTUAL_GENERATION,

-					"&Compiled Model as Textual Representation", comp, false);

-		}

-	}

-

-	private void createFirstSymbexOutputComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"Symbex Output Generated Traces",

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		Composite comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fFirstSymbexOutputTextualEnabledBooleanField = new BooleanFieldEditor(

-				this, ATTR_ENABLED_FIRST_SYMBEX_OUTPUT_TEXTUAL_GENERATION,

-				"&Basic Textual Representation", comp, false);

-

-

-		group = SWTFactory.createGroup(comp,

-				"Symbex Output Generated Graphic Traces",

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		comp = SWTFactory.createComposite(

-				group, 2, 1, GridData.FILL_HORIZONTAL);

-

-		fFirstSymbexOutputGraphizEnabledBooleanField = new BooleanFieldEditor(

-				this, ATTR_ENABLED_FIRST_SYMBEX_OUTPUT_GRAPHVIZ_GENERATION,

-				"&<Graphiz> Representation", comp, false);

-

-		fCompositeFirstSymbexOutputGraphiz = SWTFactory.createComposite(

-				comp, 2, 2, GridData.FILL_HORIZONTAL);

-

-		fFirstSymbexOutputGraphizTraceStringField = new StringFieldEditor(

-				this, ATTR_FIRST_SYMBEX_OUTPUT_GRAPHVIZ_TRACE_SPEC,

-				"&Trace:", fCompositeFirstSymbexOutputGraphiz,

-				DEFAULT_FIRST_SYMBEX_OUTPUT_GRAPHVIZ_TRACE_SPEC, SWT.MULTI);

-

-		fFirstSymbexOutputGraphizFormatStringField = new StringFieldEditor(

-				this, ATTR_FIRST_SYMBEX_OUTPUT_GRAPHVIZ_FORMAT_SPEC,

-				"&Format:", fCompositeFirstSymbexOutputGraphiz,

-				DEFAULT_SYMBEX_OUTPUT_GRAPHVIZ_FORMAT_SPEC,

-				SWT.MULTI);

-	}

-

-

-	private void setEnableFirstExecutionPage(boolean checked) {

-		fCompositeFirstSymbexOutputGraphiz.setVisible(checked);

-

-		propagateVisibility(fCompositeFirstSymbexOutputGraphiz, checked);

-	}

-

-

-	public void createSecondSymbexWorkflowtPage(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"Second Stage Symbex Workflow Page",

-				1, 1, GridData.FILL_HORIZONTAL);

-

-//			createSecondInputModelGraphicComponent(group);

-

-		createSecondSymbexOutputComponent(group);

-	}

-

-

-//		private void createSecondInputModelGraphicComponent(Composite parent) {

-//			Group group = SWTFactory.createGroup(parent,

-//					"Input Model Generated Traces",

-//					1, 1, GridData.FILL_HORIZONTAL);

-//

-//			Composite comp = SWTFactory.createComposite(

-//					group, 1, 1, GridData.FILL_HORIZONTAL);

-//

-//			fSecondParsedModelTextualEnabledBooleanField = new BooleanFieldEditor(

-//					this, ATTR_ENABLED_SECOND_PARSED_MODEL_TEXTUAL_GENERATION,

-//					"&Parsed Model as Textual Representation", comp, false);

-//

-//			fSecondParsedModelGraphizEnabledBooleanField = new BooleanFieldEditor(

-//					this, ATTR_ENABLED_SECOND_PARSED_MODEL_GRAPHVIZ_GENERATION,

-//					"&Parsed Model as <Graphiz> Representation", comp, false);

-//

-//			if( fEnabledSymbexDeveloperMode ) {

-//				fSecondCompiledModelTextualEnabledBooleanField =

-//					new BooleanFieldEditor(this,

-//						ATTR_ENABLED_SECOND_COMPILED_MODEL_TEXTUAL_GENERATION,

-//						"&Compiled Model as Textual Representation", comp, false);

-//			}

-//		}

-

-	private void createSecondSymbexOutputComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"Symbex Output Generated Traces",

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		Composite comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fSecondSymbexOutputTextualEnabledBooleanField = new BooleanFieldEditor(

-				this, ATTR_ENABLED_SECOND_SYMBEX_OUTPUT_TEXTUAL_GENERATION,

-				"&Basic Textual Representation", comp, false);

-

-

-		group = SWTFactory.createGroup(comp,

-				"Symbex Output Generated Graphic Traces",

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		comp = SWTFactory.createComposite(

-				group, 2, 1, GridData.FILL_HORIZONTAL);

-

-		fSecondSymbexOutputGraphizEnabledBooleanField = new BooleanFieldEditor(

-				this, ATTR_ENABLED_SECOND_SYMBEX_OUTPUT_GRAPHVIZ_GENERATION,

-				"&<Graphiz> Representation", comp, false);

-

-		fCompositeSecondSymbexOutputGraphiz = SWTFactory.createComposite(

-				comp, 2, 2, GridData.FILL_HORIZONTAL);

-

-		fSecondSymbexOutputGraphizTraceStringField = new StringFieldEditor(

-				this, ATTR_SECOND_SYMBEX_OUTPUT_GRAPHVIZ_TRACE_SPEC,

-				"&Trace:", fCompositeSecondSymbexOutputGraphiz,

-				DEFAULT_SECOND_SYMBEX_OUTPUT_GRAPHVIZ_TRACE_SPEC, SWT.MULTI);

-

-		fSecondSymbexOutputGraphizFormatStringField = new StringFieldEditor(

-				this, ATTR_SECOND_SYMBEX_OUTPUT_GRAPHVIZ_FORMAT_SPEC,

-				"&Format:", fCompositeSecondSymbexOutputGraphiz,

-				DEFAULT_SYMBEX_OUTPUT_GRAPHVIZ_FORMAT_SPEC, SWT.MULTI);

-	}

-

-

-	private void setEnableSecondExecutionPage(boolean checked) {

-		fCompositeSecondSymbexOutputGraphiz.setVisible(checked);

-

-		propagateVisibility(fCompositeSecondSymbexOutputGraphiz, checked);

-

-	}

-

-	// ======================================================================================

-	//                              Fields Values Management

-	// ======================================================================================	

-

-	@Override

-	public void setDefaultFieldValues(ILaunchConfigurationWorkingCopy configuration) {

-		configuration.setAttribute(

-				ATTR_CONSOLE_LOG_VERBOSE_LEVEL, "MINIMUM");

-

-		// First Symbex Workflow Page

-//			fFirstParsedModelTextualEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_ENABLED_FIRST_PARSED_MODEL_TEXTUAL_GENERATION, false);

-

-		configuration.setAttribute(

-				ATTR_FIRST_PARSED_MODEL_TEXTUAL_FILENAME,

-				"model_parsed.xlia");

-

-//			fFirstParsedModelGraphizEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_ENABLED_FIRST_PARSED_MODEL_GRAPHVIZ_GENERATION, false);

-

-		configuration.setAttribute(

-				ATTR_FIRST_PARSED_MODEL_GRAPHVIZ_FILENAME,

-				"model_parsed_graph.gv");

-

-		if( fEnabledSymbexDeveloperMode ) {

-//				fFirstCompiledModelTextualEnabledBooleanField.setDefaults(configuration);

-			configuration.setAttribute(

-					ATTR_ENABLED_FIRST_COMPILED_MODEL_TEXTUAL_GENERATION, false);

-

-			configuration.setAttribute(

-					ATTR_FIRST_COMPILED_MODEL_TEXTUAL_FILENAME,

-					"phase1_compiled_model.fexe");

-		}

-

-//			fFirstSymbexOutputTextualEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_ENABLED_FIRST_SYMBEX_OUTPUT_TEXTUAL_GENERATION, false);

-

-		configuration.setAttribute(

-				ATTR_FIRST_SYMBEX_OUTPUT_TEXTUAL_FILENAME,

-				DEFAULT_FIRST_SYMBEX_OUTPUT_TEXTUAL_FILENAME);

-

-//			fFirstSymbexOutputGraphizEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_ENABLED_FIRST_SYMBEX_OUTPUT_GRAPHVIZ_GENERATION, false);

-

-		configuration.setAttribute(

-				ATTR_FIRST_SYMBEX_OUTPUT_GRAPHVIZ_FILENAME,

-				DEFAULT_FIRST_SYMBEX_OUTPUT_GRAPHVIZ_FILENAME);

-

-//			fFirstSymbexOutputGraphizTraceStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_FIRST_SYMBEX_OUTPUT_GRAPHVIZ_TRACE_SPEC,

-				DEFAULT_FIRST_SYMBEX_OUTPUT_GRAPHVIZ_TRACE_SPEC);

-

-//			fFirstSymbexOutputGraphizFormatStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_FIRST_SYMBEX_OUTPUT_GRAPHVIZ_FORMAT_SPEC,

-				DEFAULT_SYMBEX_OUTPUT_GRAPHVIZ_FORMAT_SPEC);

-

-		// Second Symbex Workflow Page

-//			fSecondParsedModelTextualEnabledBooleanField.setDefaults(configuration);

-//			configuration.setAttribute(

-//					ATTR_ENABLED_SECOND_PARSED_MODEL_TEXTUAL_GENERATION, false);

-

-		configuration.setAttribute(

-				ATTR_SECOND_PARSED_MODEL_TEXTUAL_FILENAME,

-				"phase2_parsed_model.xlia");

-

-//			fSecondParsedModelGraphizEnabledBooleanField.setDefaults(configuration);

-//			configuration.setAttribute(

-//					ATTR_ENABLED_SECOND_PARSED_MODEL_GRAPHVIZ_GENERATION, false);

-

-		configuration.setAttribute(

-				ATTR_SECOND_PARSED_MODEL_GRAPHVIZ_FILENAME,

-				"phase2_parsed_model.gv");

-

-		if( fEnabledSymbexDeveloperMode ) {

-//				fSecondCompiledModelTextualEnabledBooleanField.setDefaults(configuration);

-			configuration.setAttribute(

-					ATTR_ENABLED_SECOND_COMPILED_MODEL_TEXTUAL_GENERATION, false);

-

-			configuration.setAttribute(

-					ATTR_SECOND_COMPILED_MODEL_TEXTUAL_FILENAME,

-					"phase2_compiled_model.fexe");

-		}

-

-//			fSecondSymbexOutputTextualEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_ENABLED_SECOND_SYMBEX_OUTPUT_TEXTUAL_GENERATION, false);

-

-		configuration.setAttribute(

-				ATTR_SECOND_SYMBEX_OUTPUT_TEXTUAL_FILENAME,

-				DEFAULT_SECOND_SYMBEX_OUTPUT_TEXTUAL_FILENAME);

-

-//			fSecondSymbexOutputGraphizEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_ENABLED_SECOND_SYMBEX_OUTPUT_GRAPHVIZ_GENERATION, false);

-

-		configuration.setAttribute(

-				ATTR_SECOND_SYMBEX_OUTPUT_GRAPHVIZ_FILENAME,

-				DEFAULT_SECOND_SYMBEX_OUTPUT_GRAPHVIZ_FILENAME);

-

-//			fSecondSymbexOutputGraphizTraceStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_SECOND_SYMBEX_OUTPUT_GRAPHVIZ_TRACE_SPEC,

-				DEFAULT_SECOND_SYMBEX_OUTPUT_GRAPHVIZ_TRACE_SPEC);

-

-//			fSecondSymbexOutputGraphizFormatStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_SECOND_SYMBEX_OUTPUT_GRAPHVIZ_FORMAT_SPEC,

-				DEFAULT_SYMBEX_OUTPUT_GRAPHVIZ_FORMAT_SPEC);

-	}

-

-	@Override

-	public void initializeFieldValuesFrom(ILaunchConfiguration configuration) {

-		try {

-			fConsoleLevel = ConsoleVerbosityKind.get(

-					configuration.getAttribute(ATTR_CONSOLE_LOG_VERBOSE_LEVEL,

-							ConsoleVerbosityKind.MINIMUM.getLiteral()) );

-		}

-		catch (CoreException e) {

-			e.printStackTrace();

-

-			fConsoleLevel = ConsoleVerbosityKind.MINIMUM;

-		}

-

-		if( fConsoleLevel == null ) {

-			fConsoleLevel = ConsoleVerbosityKind.MINIMUM;

-		}

-		initializeConsoleLevel();

-

-		fFirstParsedModelTextualEnabledBooleanField.initializeFrom(configuration);

-		fFirstParsedModelGraphizEnabledBooleanField.initializeFrom(configuration);

-		if( fEnabledSymbexDeveloperMode ) {

-			fFirstCompiledModelTextualEnabledBooleanField.initializeFrom(configuration);

-		}

-

-		fFirstSymbexOutputTextualEnabledBooleanField.initializeFrom(configuration);

-		fFirstSymbexOutputGraphizEnabledBooleanField.initializeFrom(configuration);

-		fFirstSymbexOutputGraphizTraceStringField.initializeFrom(configuration);

-

-		fFirstSymbexOutputGraphizFormatStringField.initializeFrom(configuration);

-

-

-//			fSecondParsedModelTextualEnabledBooleanField.initializeFrom(configuration);

-//			fSecondParsedModelGraphizEnabledBooleanField.initializeFrom(configuration);

-//			if( fEnabledSymbexDeveloperMode ) {

-//				fSecondCompiledModelTextualEnabledBooleanField.initializeFrom(configuration);

-//			}

-

-		fSecondSymbexOutputTextualEnabledBooleanField.initializeFrom(configuration);

-		fSecondSymbexOutputGraphizEnabledBooleanField.initializeFrom(configuration);

-		fSecondSymbexOutputGraphizTraceStringField.initializeFrom(configuration);

-

-		fSecondSymbexOutputGraphizFormatStringField.initializeFrom(configuration);

-

-

-		setEnableFirstExecutionPage(

-				fFirstSymbexOutputGraphizEnabledBooleanField.getBooleanValue() );

-

-		setEnableSecondExecutionPage(

-				fSecondSymbexOutputGraphizEnabledBooleanField.getBooleanValue() );

-	}

-

-	private void initializeConsoleLevel() {

-		switch ( fConsoleLevel ) {

-			case SILENT:

-				fConsoleLevelCombo.select(0);

-				break;

-			case MINIMUM:

-				fConsoleLevelCombo.select(1);

-				break;

-			case MEDIUM:

-				fConsoleLevelCombo.select(2);

-				break;

-			case MAXIMUM:

-				fConsoleLevelCombo.select(3);

-				break;

-			default:

-				fConsoleLevelCombo.select(0);

-				break;

-		}

-	}

-

-

-	@Override

-	public void applyUpdatesOnFieldValuesFrom(ILaunchConfigurationWorkingCopy configuration) {

-		configuration.setAttribute(

-				ATTR_CONSOLE_LOG_VERBOSE_LEVEL, fConsoleLevel.getLiteral());

-

-		fFirstParsedModelTextualEnabledBooleanField.performApply(configuration);

-		fFirstParsedModelGraphizEnabledBooleanField.performApply(configuration);

-		if( fEnabledSymbexDeveloperMode ) {

-			fFirstCompiledModelTextualEnabledBooleanField.performApply(configuration);

-		}

-

-		fFirstSymbexOutputTextualEnabledBooleanField.performApply(configuration);

-		fFirstSymbexOutputGraphizEnabledBooleanField.performApply(configuration);

-		fFirstSymbexOutputGraphizTraceStringField.performApply(configuration);

-

-		fFirstSymbexOutputGraphizFormatStringField.performApply(configuration);

-

-

-//			fSecondParsedModelTextualEnabledBooleanField.performApply(configuration);

-//			fSecondParsedModelGraphizEnabledBooleanField.performApply(configuration);

-//			if( fEnabledSymbexDeveloperMode ) {

-//				fSecondCompiledModelTextualEnabledBooleanField.performApply(configuration);

-//			}

-

-			fSecondSymbexOutputTextualEnabledBooleanField.performApply(configuration);

-			fSecondSymbexOutputGraphizEnabledBooleanField.performApply(configuration);

-			fSecondSymbexOutputGraphizTraceStringField.performApply(configuration);

-

-			fSecondSymbexOutputGraphizFormatStringField.performApply(configuration);

-

-

-			setEnableFirstExecutionPage(

-					fFirstSymbexOutputGraphizEnabledBooleanField.getBooleanValue() );

-

-			setEnableSecondExecutionPage(

-					fSecondSymbexOutputGraphizEnabledBooleanField.getBooleanValue() );

-		}

-

-	

-	// ======================================================================================

-	//                              Fields Validation

-	// ======================================================================================

-	

-	@Override

-	public FieldValidationReturn areFieldsValid(ILaunchConfiguration launchConfig) {

-		return new FieldValidationReturn(true, null);

-	}	

-	

-}

-

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/DeveloperTuningCompositeMaker.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/DeveloperTuningCompositeMaker.java
deleted file mode 100644
index 427bc8c..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/DeveloperTuningCompositeMaker.java
+++ /dev/null
@@ -1,816 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial Implementation (tab-based, inserted in Run Configurations dialog)

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - New API (free-composite-based, no type assumptions on parent) 

- *******************************************************************************/

-

-package org.eclipse.efm.ui.views.launchconfigurations.components;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.core.workflow.common.DebuglevelKind;

-import org.eclipse.efm.ui.views.editors.impls.BooleanFieldEditor;

-import org.eclipse.efm.ui.views.editors.impls.StringFieldEditor;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationGUIelement;

-import org.eclipse.efm.ui.views.utils.SWTFactory;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.events.ModifyEvent;

-import org.eclipse.swt.events.ModifyListener;

-import org.eclipse.swt.events.SelectionAdapter;

-import org.eclipse.swt.events.SelectionEvent;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.widgets.Combo;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Group;

-import org.eclipse.swt.widgets.Label;

-

-public class DeveloperTuningCompositeMaker extends AbstractCompositeMaker {

-

-	private static final String[] TRACE_LEVEL_COMBO_ITEMS = new String[] {

-			DebuglevelKind.ZERO.getLiteral(),

-			DebuglevelKind.LOW.getLiteral(),

-			DebuglevelKind.MEDIUM.getLiteral(),

-			DebuglevelKind.HIGH.getLiteral(),

-			DebuglevelKind.ULTRA.getLiteral(),

-			DebuglevelKind.GOD_MODE.getLiteral()

-	};

-

-//	Arrays.stream(DebuglevelKind.values()).map(

-//			DebuglevelKind::getLiteral).toArray(String[]::new);

-

-

-	private Label fDebugTraceLevelLabel = null;

-

-	private Group fGroupDebugTraceOptions;

-

-	private Combo fDebugTraceLevelCombo = null;

-

-	private DebuglevelKind fDebugTraceLevel = DebuglevelKind.ZERO;

-

-

-	private BooleanFieldEditor fDeveloperModeEnabledBooleanField;

-	private StringFieldEditor  fLogFileNameStringField;

-	private StringFieldEditor  fDebugTraceFileNameStringField;

-

-	// General Context

-	private BooleanFieldEditor fParsingEnabledBooleanField;

-	private BooleanFieldEditor fConfigureEnabledBooleanField;

-	private BooleanFieldEditor fCompilingEnabledBooleanField;

-

-	private BooleanFieldEditor fLoadingEnabledBooleanField;

-	private BooleanFieldEditor fComputingEnabledBooleanField;

-	private BooleanFieldEditor fReportingEnabledBooleanField;

-

-	private BooleanFieldEditor fSolverEnabledBooleanField;

-	private BooleanFieldEditor fProfilingEnabledBooleanField;

-

-	// Symbex Process

-	private BooleanFieldEditor fSymbexProcessEnabledBooleanField;

-

-	private BooleanFieldEditor fPreProcessingEnabledBooleanField;

-	private BooleanFieldEditor fPostProcessingEnabledBooleanField;

-	private BooleanFieldEditor fProcessingEnabledBooleanField;

-

-	private BooleanFieldEditor fPreFilteringEnabledBooleanField;

-	private BooleanFieldEditor fPostFilteringEnabledBooleanField;

-	private BooleanFieldEditor fFilteringEnabledBooleanField;

-

-	private BooleanFieldEditor fQueueEnabledBooleanField;

-

-	// Statement Evaluation

-	private BooleanFieldEditor fProgramEnabledBooleanField;

-

-	private BooleanFieldEditor fStatementEnabledBooleanField;

-	private BooleanFieldEditor fStatementAssignEnabledBooleanField;

-	private BooleanFieldEditor fStatementCommunicationEnabledBooleanField;

-	private BooleanFieldEditor fStatementDecisionEnabledBooleanField;

-

-	private BooleanFieldEditor fStatementBytecodeEnabledBooleanField;

-	private BooleanFieldEditor fDataEnabledBooleanField;

-	private BooleanFieldEditor fTraceEnabledBooleanField;

-

-	// Element, Component

-	private BooleanFieldEditor fVariableEnabledBooleanField;

-	private BooleanFieldEditor fBufferEnabledBooleanField;

-	private BooleanFieldEditor fPortEnabledBooleanField;

-	private BooleanFieldEditor fSignalEnabledBooleanField;

-	private BooleanFieldEditor fConnexionEnabledBooleanField;

-	private BooleanFieldEditor fTimeEnabledBooleanField;

-

-	private BooleanFieldEditor fExecutableEnabledBooleanField;

-	private BooleanFieldEditor fActivityEnabledBooleanField;

-	private BooleanFieldEditor fRoutineEnabledBooleanField;

-	private BooleanFieldEditor fTransitionEnabledBooleanField;

-	private BooleanFieldEditor fMachineEnabledBooleanField;

-	private BooleanFieldEditor fStatemachineEnabledBooleanField;

-

-

-	// Name Identifier

-	private BooleanFieldEditor fNameIdEnabledBooleanField;

-	private BooleanFieldEditor fQualifiedNameIdEnabledBooleanField;

-	private BooleanFieldEditor fFullyQualifiedNameIdEnabledBooleanField;

-

-	// Various

-	private BooleanFieldEditor fRedundanceEnabledBooleanField;

-	private BooleanFieldEditor fReferenceCountingEnabledBooleanField;

-

-	// God Mode

-	private BooleanFieldEditor fNothingEnabledBooleanField;

-	private BooleanFieldEditor fGodModeEnabledBooleanField;

-

-	public DeveloperTuningCompositeMaker(ILaunchConfigurationGUIelement masterGUIelement) {

-		super(masterGUIelement);

-	}

-	

-	

-	// ======================================================================================

-	//                              Miscellaneous Handling

-	// ======================================================================================

-	

-	private class TabListener extends SelectionAdapter implements ModifyListener {

-

-		/* (non-Javadoc)

-		 * @see org.eclipse.swt.events.ModifyListener#modifyText(org.eclipse.swt.events.ModifyEvent)

-		 */

-		@Override

-		public void modifyText(ModifyEvent e) {

-			propagateGUIupdate();

-		}

-

-		/* (non-Javadoc)

-		 * @see org.eclipse.swt.events.SelectionListener#widgetSelected(org.eclipse.swt.events.SelectionEvent)

-		 */

-		@Override

-		public void widgetSelected(SelectionEvent e) {

-			final Object source= e.getSource();

-

-			if (source == fDebugTraceLevelCombo) {

-				handleDebugTraceLevelSelectionChange();

-			}

-		}

-	}

-	

-	private TabListener fListener= new TabListener();	

-

-	private void handleDebugTraceLevelSelectionChange() {

-		fDebugTraceLevel = DebuglevelKind.get( fDebugTraceLevelCombo.getText() );

-		if( fDebugTraceLevel == null ) {

-			fDebugTraceLevel = DebuglevelKind.ZERO;

-		}

-

-		propagateVisibility(fGroupDebugTraceOptions,

-				(fDebugTraceLevel != DebuglevelKind.ZERO));

-

-		propagateGUIupdate();

-	}

-

-	// ======================================================================================

-	//                              Graphical Components Creation Methods

-	// ======================================================================================

-	

-	@Override

-	public Composite createControlMain(Composite parent) {

-		Composite simpleComposite = SWTFactory.createComposite(parent,

-				parent.getFont(), 1, 1, GridData.FILL_HORIZONTAL, 0, 0);

-

-		createDeveloperTuningOptionsComponent(simpleComposite);

-		

-		return simpleComposite;

-	}

-

-	private void createDeveloperTuningOptionsComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"Developer Tuning Options", 2, 2, GridData.FILL_HORIZONTAL);

-

-		createDeveloperModeComponent(group);

-

-		createDebugTraceOptionsComponent(group);

-	}

-

-	private void setEnableDeveloperTuningOptionsPage(

-			ILaunchConfiguration configuration, boolean enabled) {

-		fLogFileNameStringField.setEnabled(enabled);

-		fDebugTraceFileNameStringField.setEnabled(enabled);

-

-		fDebugTraceLevelLabel.setEnabled(enabled);

-		fDebugTraceLevelCombo.setEnabled(enabled);

-

-		fGodModeEnabledBooleanField.setEnabled(enabled);

-

-		enabled = enabled

-				&& (fDebugTraceLevel != DebuglevelKind.ZERO)

-				&& (! fGodModeEnabledBooleanField.getBooleanValue());

-

-		propagateVisibility(fGroupDebugTraceOptions, enabled);

-	}

-

-

-

-	private void createDeveloperModeComponent(Composite parent) {

-		Composite comp = SWTFactory.createComposite(

-				parent, 1, 5, GridData.FILL_HORIZONTAL);

-

-		fDeveloperModeEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_DEVELOPER_TUNING, "&Developer Mode", comp, false);

-

-		comp = SWTFactory.createComposite(

-				parent, 1, 5, GridData.FILL_HORIZONTAL);

-

-		fLogFileNameStringField = new StringFieldEditor(this,

-				ATTR_DEVELOPER_TUNING_LOG_FILENAME, "&Log File:",comp,

-				DEFAULT_DEVELOPER_TUNING_LOG_FILENAME);

-

-		fDebugTraceFileNameStringField = new StringFieldEditor(this,

-				ATTR_DEVELOPER_TUNING_DEBUG_FILENAME, "&Debug File:", comp,

-				DEFAULT_DEVELOPER_TUNING_DEBUG_FILENAME);

-

-

-		fDebugTraceLevelLabel = SWTFactory.createLabel(

-				comp, "&Debug Level:", 1);

-

-		fDebugTraceLevelCombo = SWTFactory.createCombo(comp,

-				SWT.DROP_DOWN | SWT.READ_ONLY, 1, TRACE_LEVEL_COMBO_ITEMS);

-

-		fDebugTraceLevelCombo.addSelectionListener(fListener);

-	}

-

-

-	private void createDebugTraceOptionsComponent(Composite parent) {

-		fGroupDebugTraceOptions = SWTFactory.createGroup(parent,

-				"Debug Trace Options", 3, 2, GridData.FILL_HORIZONTAL);

-

-		// General Context

-		Group group = SWTFactory.createGroup(fGroupDebugTraceOptions,

-				"General Context", 1, 1, GridData.FILL_HORIZONTAL);

-

-		Composite comp = SWTFactory.createComposite(

-				group, 2, 1, GridData.FILL_HORIZONTAL);

-

-		fParsingEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_PARSING, "&PARSING", comp, false);

-

-		fConfigureEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_CONFIGURING, "CONFIGURING", comp, false);

-

-		fCompilingEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_COMPILING, "COMPILING", comp, false);

-

-		fLoadingEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_LOADING, "LOADING", comp, false);

-

-		fComputingEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_COMPUTING, "COMPUTING", comp, false);

-

-		fReportingEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_REPORTING, "REPORTING", comp, false);

-

-		fSolverEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_SOLVING, "SOLVING [SAT,SMT] ", comp, false);

-

-		fProfilingEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_PROFILING, "PROFILING", comp, false);

-

-

-		// Process Stage: Processing, Filtering, ...

-		group = SWTFactory.createGroup(fGroupDebugTraceOptions,

-				"Symbex Process Stage", 1, 1, GridData.FILL_HORIZONTAL);

-

-		comp = SWTFactory.createComposite(

-				group, 2, 1, GridData.FILL_HORIZONTAL);

-

-		fSymbexProcessEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_ALL_PROCESS_STAGE,

-				"ALL_PROCESS_STAGE", comp, false);

-

-		fPreProcessingEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_PRE_PROCESSING,

-				"PRE_PROCESSING", comp, false);

-

-		fPostProcessingEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_POST_PROCESSING,

-				"POST_PROCESSING", comp, false);

-

-		fProcessingEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_PROCESSING, "PROCESSING", comp, false);

-

-		fPreFilteringEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_PRE_FILTERING,

-				"PRE_FILTERING", comp, false);

-

-		fPostFilteringEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_POST_FILTERING,

-				"POST_FILTERING", comp, false);

-

-		fFilteringEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_FILTERING, "FILTERING", comp, false);

-

-		fQueueEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_QUEUE, "SYMBEX QUEUE", comp, false);

-

-

-		// Statement Evaluation

-		group = SWTFactory.createGroup(fGroupDebugTraceOptions,

-				"Evaluation: Statement, Trace, ...", 1, 1, GridData.FILL_HORIZONTAL);

-

-		comp = SWTFactory.createComposite(

-				group, 2, 1, GridData.FILL_HORIZONTAL);

-

-		fProgramEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_PROGRAM, "PROGRAM", comp, false);

-

-		fStatementEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_STATEMENT, "STATEMENT", comp, false);

-

-		fStatementAssignEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_STATEMENT_ASSIGNMENT,

-				"ASSIGNMENT", comp, false);

-

-		fStatementCommunicationEnabledBooleanField = new BooleanFieldEditor(

-				this, ATTR_ENABLED_TRACE_STATEMENT_COMMUNICATION,

-				"COMMUNICATION", comp, false);

-

-		fStatementDecisionEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_STATEMENT_TEST_DECISION,

-				"TEST DECISION", comp, false);

-

-		fStatementBytecodeEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_BYTECODE, "BYTECODE", comp, false);

-

-		fDataEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_DATA, "DATA", comp, false);

-

-		fTraceEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_TRACE, "TRACE [POINT]", comp, false);

-

-

-		// Element: Property, Signal...

-		group = SWTFactory.createGroup(fGroupDebugTraceOptions,

-				"Element: Property, Signal, ...", 1, 1, GridData.FILL_HORIZONTAL);

-

-		comp = SWTFactory.createComposite(

-				group, 2, 1, GridData.FILL_HORIZONTAL);

-

-		fVariableEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_VARIABLE, "VARIABLE", comp, false);

-

-		fBufferEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_BUFFER, "BUFFER", comp, false);

-

-		fPortEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_PORT, "PORT", comp, false);

-

-		fSignalEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_SIGNAL, "SIGNAL", comp, false);

-

-		fConnexionEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_CONNEXION, "CONNEXION", comp, false);

-

-		fTimeEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_TIME, "TIME", comp, false);

-

-

-		// Executable Component...

-		group = SWTFactory.createGroup(fGroupDebugTraceOptions,

-				"Executable Component", 1, 1, GridData.FILL_HORIZONTAL);

-

-		comp = SWTFactory.createComposite(

-				group, 2, 1, GridData.FILL_HORIZONTAL);

-

-		fExecutableEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_EXECUTABLE, "EXECUTABLE", comp, false);

-

-		fActivityEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_ACTIVITY, "ACTIVITY", comp, false);

-

-		fRoutineEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_ROUTINE, "ROUTINE", comp, false);

-

-		fTransitionEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_TRANSITION, "TRANSITION", comp, false);

-

-		fMachineEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_MACHINE, "MACHINE", comp, false);

-

-		fStatemachineEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_STATEMACHINE, "STATEMACHINE", comp, false);

-

-

-		// Others: [Qualified]NameID, RefCount, ...

-		group = SWTFactory.createGroup(fGroupDebugTraceOptions,

-				"Others: NameID, RefCount, ...",

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		comp = SWTFactory.createComposite(

-				group, 2, 1, GridData.FILL_HORIZONTAL);

-

-		fNameIdEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_NAME_ID, "NAME_ID", comp, false);

-

-		fQualifiedNameIdEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_QUALIFIED_NAME_ID,

-				"QUALIFIED_NAME_ID", comp, false);

-

-		fFullyQualifiedNameIdEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_FULLY_QUALIFIED_NAME_ID,

-				"FULLY_QUALIFIED_NAME_ID", comp, false);

-

-		fRedundanceEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_REDUNDANCE, "REDUNDANCE", comp, false);

-

-		fReferenceCountingEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_REFERENCE_COUNTING,

-				"REFERENCE_COUNTING", comp, false);

-

-		fNothingEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_NOTHING, "NOTHING", comp, false);

-

-		// God Mode

-		comp = SWTFactory.createComposite(

-				parent, 2, 1, GridData.FILL_HORIZONTAL);

-

-		fGodModeEnabledBooleanField = new BooleanFieldEditor(this,

-				ATTR_ENABLED_TRACE_GOD_MODE, "GOD_MODE", comp, false);

-	}

-	

-	// ======================================================================================

-	//                              Fields Values Management

-	// ======================================================================================	

-	

-

-	@Override

-	public void setDefaultFieldValues(ILaunchConfigurationWorkingCopy configuration) {

-//		fDeveloperModeEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_DEVELOPER_TUNING, false);

-

-//		fLogFileNameStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_DEVELOPER_TUNING_LOG_FILENAME,

-				DEFAULT_DEVELOPER_TUNING_LOG_FILENAME);

-

-//		fDebugTraceFileNameStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_DEVELOPER_TUNING_DEBUG_FILENAME,

-				DEFAULT_DEVELOPER_TUNING_DEBUG_FILENAME);

-

-		configuration.setAttribute(ATTR_DEVELOPER_TUNING_DEBUG_LEVEL, "ZERO");

-

-

-		// General Context

-//		fParsingEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_PARSING, false);

-

-//		fConfigureEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_CONFIGURING, false);

-

-//		fCompilingEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_COMPILING, false);

-

-//		fLoadingEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_LOADING, false);

-

-//		fComputingEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_COMPUTING, false);

-

-//		fReportingEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_REPORTING, false);

-

-//		fSolverEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_SOLVING, false);

-

-//		fProfilingEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_SOLVING, false);

-

-		// Process Stage: Processing, Filtering, ...

-//		fSymbexProcessEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_ALL_PROCESS_STAGE, false);

-

-//		fPreProcessingEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_PRE_PROCESSING, false);

-

-//		fPostProcessingEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_POST_PROCESSING, false);

-

-//		fProcessingEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_PROCESSING, false);

-

-//		fPreFilteringEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_PRE_FILTERING, false);

-

-//		fPostFilteringEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_POST_FILTERING, false);

-

-//		fFilteringEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_FILTERING, false);

-

-//		fQueueEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_QUEUE, false);

-

-		// Statement Evaluation

-//		fProgramEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_PROGRAM, false);

-

-//		fStatementEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_STATEMENT, false);

-

-//		fStatementAssignEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_ENABLED_TRACE_STATEMENT_ASSIGNMENT, false);

-

-//		fStatementCommunicationEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_ENABLED_TRACE_STATEMENT_COMMUNICATION, false);

-

-//		fStatementDecisionEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_ENABLED_TRACE_STATEMENT_TEST_DECISION, false);

-

-//		fStatementBytecodeEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_BYTECODE, false);

-

-//		fDataEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_DATA, false);

-

-//		fTraceEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_TRACE, false);

-

-		// Element: Property, Signal...

-//		fVariableEnabledBooleanField.performApply(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_VARIABLE, false);

-

-//		fBufferEnabledBooleanField.performApply(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_BUFFER, false);

-

-//		fPortEnabledBooleanField.performApply(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_PORT, false);

-

-//		fSignalEnabledBooleanField.performApply(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_SIGNAL, false);

-

-//		fConnexionEnabledBooleanField.performApply(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_CONNEXION, false);

-

-//		fTimeEnabledBooleanField.performApply(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_TIME, false);

-

-		// Executable Component...

-//		fExecutableEnabledBooleanField.performApply(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_EXECUTABLE, false);

-

-//		fActivityEnabledBooleanField.performApply(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_ACTIVITY, false);

-

-//		fRoutineEnabledBooleanField.performApply(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_ROUTINE, false);

-

-//		fTransitionEnabledBooleanField.performApply(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_TRANSITION, false);

-

-//		fMachineEnabledBooleanField.performApply(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_MACHINE, false);

-

-//		fStatemachineEnabledBooleanField.performApply(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_STATEMACHINE, false);

-

-

-		// Others: [Qualified]NameID, RefCount, ...

-//		fNameIdEnabledBooleanField.performApply(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_NAME_ID, false);

-

-//		fQualifiedNameIdEnabledBooleanField.performApply(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_QUALIFIED_NAME_ID, false);

-

-//		fFullyQualifiedNameIdEnabledBooleanField.performApply(configuration);

-		configuration.setAttribute(

-				ATTR_ENABLED_TRACE_FULLY_QUALIFIED_NAME_ID, false);

-

-//		fRedundanceEnabledBooleanField.performApply(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_REDUNDANCE, false);

-

-//		fReferenceCountingEnabledBooleanField.performApply(configuration);

-		configuration.setAttribute(ATTR_ENABLED_REFERENCE_COUNTING, false);

-

-		// God Mode

-//		fNothingEnabledBooleanField.performApply(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_NOTHING, false);

-

-//		fGodModeEnabledBooleanField.performApply(configuration);

-		configuration.setAttribute(ATTR_ENABLED_TRACE_GOD_MODE, false);

-	}

-

-	@Override

-	public void initializeFieldValuesFrom(ILaunchConfiguration configuration) {

-		fDeveloperModeEnabledBooleanField.initializeFrom(configuration);

-		fLogFileNameStringField.initializeFrom(configuration);

-		fDebugTraceFileNameStringField.initializeFrom(configuration);

-

-		try {

-			fDebugTraceLevel = DebuglevelKind.get(

-					configuration.getAttribute(

-							ATTR_DEVELOPER_TUNING_DEBUG_LEVEL,

-							DebuglevelKind.ZERO.getLiteral()) );

-		}

-		catch (CoreException e) {

-			e.printStackTrace();

-

-			fDebugTraceLevel = DebuglevelKind.ZERO;

-		}

-

-		if( fDebugTraceLevel == null ) {

-			fDebugTraceLevel = DebuglevelKind.ZERO;

-		}

-		initializeTraceLevel();

-

-

-		fParsingEnabledBooleanField.initializeFrom(configuration);

-		fConfigureEnabledBooleanField.initializeFrom(configuration);

-		fCompilingEnabledBooleanField.initializeFrom(configuration);

-

-		fLoadingEnabledBooleanField.initializeFrom(configuration);

-		fComputingEnabledBooleanField.initializeFrom(configuration);

-		fReportingEnabledBooleanField.initializeFrom(configuration);

-

-		fSolverEnabledBooleanField.initializeFrom(configuration);

-		fProfilingEnabledBooleanField.initializeFrom(configuration);

-

-		// Process Stage: Processing, Filtering, ...

-		fSymbexProcessEnabledBooleanField.initializeFrom(configuration);

-

-		fPreProcessingEnabledBooleanField.initializeFrom(configuration);

-		fPostProcessingEnabledBooleanField.initializeFrom(configuration);

-		fProcessingEnabledBooleanField.initializeFrom(configuration);

-

-		fPreFilteringEnabledBooleanField.initializeFrom(configuration);

-		fPostFilteringEnabledBooleanField.initializeFrom(configuration);

-		fFilteringEnabledBooleanField.initializeFrom(configuration);

-

-		fQueueEnabledBooleanField.initializeFrom(configuration);

-

-

-		// Statement Evaluation

-		fProgramEnabledBooleanField.initializeFrom(configuration);

-		fStatementEnabledBooleanField.initializeFrom(configuration);

-		fStatementAssignEnabledBooleanField.initializeFrom(configuration);

-		fStatementCommunicationEnabledBooleanField.initializeFrom(configuration);

-		fStatementDecisionEnabledBooleanField.initializeFrom(configuration);

-		fStatementBytecodeEnabledBooleanField.initializeFrom(configuration);

-

-		fDataEnabledBooleanField.initializeFrom(configuration);

-		fTraceEnabledBooleanField.initializeFrom(configuration);

-

-		// Element: Property, Signal...

-		fVariableEnabledBooleanField.initializeFrom(configuration);

-		fBufferEnabledBooleanField.initializeFrom(configuration);

-		fPortEnabledBooleanField.initializeFrom(configuration);

-		fSignalEnabledBooleanField.initializeFrom(configuration);

-		fConnexionEnabledBooleanField.initializeFrom(configuration);

-		fTimeEnabledBooleanField.initializeFrom(configuration);

-

-		// Executable Component...

-		fExecutableEnabledBooleanField.initializeFrom(configuration);

-		fActivityEnabledBooleanField.initializeFrom(configuration);

-		fRoutineEnabledBooleanField.initializeFrom(configuration);

-		fTransitionEnabledBooleanField.initializeFrom(configuration);

-		fMachineEnabledBooleanField.initializeFrom(configuration);

-		fStatemachineEnabledBooleanField.initializeFrom(configuration);

-

-		// Others: [Qualified]NameID, RefCount, ...

-		fNameIdEnabledBooleanField.initializeFrom(configuration);

-		fQualifiedNameIdEnabledBooleanField.initializeFrom(configuration);

-		fFullyQualifiedNameIdEnabledBooleanField.initializeFrom(configuration);

-

-		fRedundanceEnabledBooleanField.initializeFrom(configuration);

-		fReferenceCountingEnabledBooleanField.initializeFrom(configuration);

-

-		// God Mode

-		fNothingEnabledBooleanField.initializeFrom(configuration);

-		fGodModeEnabledBooleanField.initializeFrom(configuration);

-

-		setEnableDeveloperTuningOptionsPage(configuration,

-				fDeveloperModeEnabledBooleanField.getBooleanValue() );

-	}

-

-

-	private void initializeTraceLevel() {

-		switch ( fDebugTraceLevel ) {

-			case ZERO:

-				fDebugTraceLevelCombo.select(0);

-				break;

-			case LOW:

-				fDebugTraceLevelCombo.select(1);

-				break;

-			case MEDIUM:

-				fDebugTraceLevelCombo.select(2);

-				break;

-			case HIGH:

-				fDebugTraceLevelCombo.select(3);

-				break;

-			case ULTRA:

-				fDebugTraceLevelCombo.select(4);

-				break;

-			case GOD_MODE:

-				fDebugTraceLevelCombo.select(5);

-				break;

-

-			default:

-				fDebugTraceLevelCombo.select(0);

-				break;

-		}

-	}

-

-	@Override

-	public void applyUpdatesOnFieldValuesFrom(ILaunchConfigurationWorkingCopy configuration) {

-		fDeveloperModeEnabledBooleanField.performApply(configuration);

-

-		setEnableDeveloperTuningOptionsPage(configuration,

-				fDeveloperModeEnabledBooleanField.getBooleanValue() );

-

-		fLogFileNameStringField.performApply(configuration);

-		fDebugTraceFileNameStringField.performApply(configuration);

-

-		configuration.setAttribute(

-				ATTR_DEVELOPER_TUNING_DEBUG_LEVEL,

-				fDebugTraceLevel.getLiteral());

-

-		// General Context

-		fParsingEnabledBooleanField.performApply(configuration);

-		fConfigureEnabledBooleanField.performApply(configuration);

-		fCompilingEnabledBooleanField.performApply(configuration);

-

-		fLoadingEnabledBooleanField.performApply(configuration);

-		fComputingEnabledBooleanField.performApply(configuration);

-		fReportingEnabledBooleanField.performApply(configuration);

-

-		fSolverEnabledBooleanField.performApply(configuration);

-		fProfilingEnabledBooleanField.performApply(configuration);

-

-		// Process Stage: Processing, Filtering, ...

-		fSymbexProcessEnabledBooleanField.performApply(configuration);

-

-		fPreProcessingEnabledBooleanField.performApply(configuration);

-		fPostProcessingEnabledBooleanField.performApply(configuration);

-		fProcessingEnabledBooleanField.performApply(configuration);

-

-		fPreFilteringEnabledBooleanField.performApply(configuration);

-		fPostFilteringEnabledBooleanField.performApply(configuration);

-		fFilteringEnabledBooleanField.performApply(configuration);

-

-		fQueueEnabledBooleanField.performApply(configuration);

-

-		// Statement Evaluation

-		fProgramEnabledBooleanField.performApply(configuration);

-		fStatementEnabledBooleanField.performApply(configuration);

-		fStatementAssignEnabledBooleanField.performApply(configuration);

-		fStatementCommunicationEnabledBooleanField.performApply(configuration);

-		fStatementDecisionEnabledBooleanField.performApply(configuration);

-		fStatementBytecodeEnabledBooleanField.performApply(configuration);

-

-		fDataEnabledBooleanField.performApply(configuration);

-		fTraceEnabledBooleanField.performApply(configuration);

-

-		// Element: Property, Signal...

-		fVariableEnabledBooleanField.performApply(configuration);

-		fBufferEnabledBooleanField.performApply(configuration);

-		fPortEnabledBooleanField.performApply(configuration);

-		fSignalEnabledBooleanField.performApply(configuration);

-		fConnexionEnabledBooleanField.performApply(configuration);

-		fTimeEnabledBooleanField.performApply(configuration);

-

-		// Executable Component...

-		fExecutableEnabledBooleanField.performApply(configuration);

-		fActivityEnabledBooleanField.performApply(configuration);

-		fRoutineEnabledBooleanField.performApply(configuration);

-		fTransitionEnabledBooleanField.performApply(configuration);

-		fMachineEnabledBooleanField.performApply(configuration);

-		fStatemachineEnabledBooleanField.performApply(configuration);

-

-		// Others: [Qualified]NameID, RefCount, ...

-		fNameIdEnabledBooleanField.performApply(configuration);

-		fQualifiedNameIdEnabledBooleanField.performApply(configuration);

-		fFullyQualifiedNameIdEnabledBooleanField.performApply(configuration);

-

-		fRedundanceEnabledBooleanField.performApply(configuration);

-		fReferenceCountingEnabledBooleanField.performApply(configuration);

-

-		// God Mode

-		fNothingEnabledBooleanField.performApply(configuration);

-		fGodModeEnabledBooleanField.performApply(configuration);

-	}

-	

-	// ======================================================================================

-	//                              Fields Validation

-	// ======================================================================================

-

-	@Override

-	public FieldValidationReturn areFieldsValid(ILaunchConfiguration launchConfig) {

-		return new FieldValidationReturn(true, null);

-	}

-	

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/ExpertCompositeMaker.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/ExpertCompositeMaker.java
deleted file mode 100644
index cf7e264..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/ExpertCompositeMaker.java
+++ /dev/null
@@ -1,160 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial Implementation (tab-based, inserted in Run Configurations dialog)

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - New API (free-composite-based, no type assumptions on parent) 

- *******************************************************************************/

-

-package org.eclipse.efm.ui.views.launchconfigurations.components;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.ui.resources.HelpCoReferee;

-import org.eclipse.efm.ui.views.launchconfigurations.components.AbstractCompositeMaker.FieldValidationReturn;

-import org.eclipse.efm.ui.views.launchconfigurations.components.pages.ExpertBehaviorSelectionPage;

-import org.eclipse.efm.ui.views.launchconfigurations.components.pages.ExpertTransitionCoveragePage;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationGUIelement;

-import org.eclipse.efm.ui.views.utils.SWTFactory;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Group;

-import org.eclipse.ui.PlatformUI;

-

-public class ExpertCompositeMaker extends AbstractCompositeMaker {

-

-	private Group groupExplorationPage;

-

-	// BEHAVIOR SELECTION : HIT OR JUMP

-	ExpertBehaviorSelectionPage fBehaviorSelectionPage;

-

-	// TRANSITION COVERAGE

-	ExpertTransitionCoveragePage fTransitionCoveragePage;

-

-	public ExpertCompositeMaker(ILaunchConfigurationGUIelement masterGUIelement) {

-		super(masterGUIelement);

-		// BEHAVIOR SELECTION : HIT OR JUMP

-		fBehaviorSelectionPage = new ExpertBehaviorSelectionPage(this);

-

-		//  TRANSITION COVERAGE

-		fTransitionCoveragePage = new ExpertTransitionCoveragePage(this);

-	}

-	

-	

-	

-	// ======================================================================================

-	//                              Graphical Components Creation Methods

-	// ======================================================================================

-

-	@Override

-	public Composite createControlMain(Composite parent) {

-		Composite simpleComposite = SWTFactory.createComposite(parent,

-				parent.getFont(), 1, 1, GridData.FILL_BOTH, 0, 0);

-

-		// EXPLORATION PAGE

-		createExplorationPage(simpleComposite);

-

-		// BEHAVIOR SELECTION : HIT OR JUMP

-		fBehaviorSelectionPage.createControl(simpleComposite);

-

-		// TRANSITION COVERAGE

-		fTransitionCoveragePage.createControl(simpleComposite);

-		

-		return simpleComposite;

-	}

-

-	private void setEnableGroupExplorationPage(ILaunchConfiguration configuration) {

-		try {

-			String fAnalysisProfile = configuration.getAttribute(

-					ATTR_SPECIFICATION_ANALYSIS_PROFILE, "");

-

-			String fModelAnalysis = configuration.getAttribute(

-					ATTR_SPECIFICATION_MODEL_ANALYSIS, "");

-

-			propagateVisibility(groupExplorationPage,

-					(fAnalysisProfile.equals(ANALYSIS_PROFILE_MODEL)

-					&& fModelAnalysis.equals(ANALYSIS_PROFILE_MODEL_EXPLORATION)

-					) || fAnalysisProfile.equals(ANALYSIS_PROFILE_TEST_OFFLINE) );

-		}

-		catch (CoreException e) {

-			e.printStackTrace();

-		}

-	}

-

-	private void createExplorationPage(Composite parent) {

-		groupExplorationPage = SWTFactory.createGroup(parent,

-				"Exploration Page", 1, 2, GridData.FILL_HORIZONTAL);

-

-        Composite comp = SWTFactory.createComposite(groupExplorationPage, 1, 1,

-        		GridData.FILL_HORIZONTAL);

-

-        SWTFactory.createLabel(comp, "&No expert mode for Exploration "

-        		+ "of Model Analysis and Test Verdict Computation !", 1);

-	}

-

-	// ======================================================================================

-	//                              Fields Values Management

-	// ======================================================================================	

-

-	@Override

-	public void setDefaultFieldValues(ILaunchConfigurationWorkingCopy configuration) {

-		// BEHAVIOR SELECTION : HIT OR JUMP

-		fBehaviorSelectionPage.setDefaults(configuration);

-

-		// TRANSITION COVERAGE

-		fTransitionCoveragePage.setDefaults(configuration);

-	}

-

-

-	@Override

-	public void initializeFieldValuesFrom(ILaunchConfiguration configuration) {

-		setEnableGroupExplorationPage(configuration);

-

-		// BEHAVIOR SELECTION : HIT OR JUMP

-		fBehaviorSelectionPage.initializeFrom(configuration);

-

-		// TRANSITION COVERAGE

-		fTransitionCoveragePage.initializeFrom(configuration);

-	}

-

-	public void performApplyExploration(

-			ILaunchConfigurationWorkingCopy configuration) {

-		setEnableGroupExplorationPage(configuration);

-	}

-

-

-	@Override

-	public void applyUpdatesOnFieldValuesFrom(ILaunchConfigurationWorkingCopy configuration) {

-		performApplyExploration(configuration);

-

-		// BEHAVIOR SELECTION : HIT OR JUMP

-		fBehaviorSelectionPage.performApply(configuration);

-

-		// TRANSITION COVERAGE

-		fTransitionCoveragePage.performApply(configuration);

-	}	

-	

-	// ======================================================================================

-	//                              Fields Validation

-	// ======================================================================================

-

-	@Override

-	public FieldValidationReturn areFieldsValid(ILaunchConfiguration launchConfig) {

-		// BEHAVIOR SELECTION : HIT OR JUMP

-		if( ! fBehaviorSelectionPage.isValid(launchConfig) ) {

-			return new FieldValidationReturn(false, null);

-		}

-		// TRANSITION COVERAGE

-		if( ! fTransitionCoveragePage.isValid(launchConfig) ) {

-			return new FieldValidationReturn(false, null);

-		}

-		return new FieldValidationReturn(true, null);

-	}

-	

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/FirstCompositeMaker.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/FirstCompositeMaker.java
deleted file mode 100644
index 4af2900..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/FirstCompositeMaker.java
+++ /dev/null
@@ -1,914 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial Implementation (tab-based, inserted in Run Configurations dialog)

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - New API (free-composite-based, no type assumptions on parent) 

- *******************************************************************************/

-package org.eclipse.efm.ui.views.launchconfigurations.components;

-

-import java.io.File;

-

-import org.eclipse.core.resources.IResource;

-import org.eclipse.core.resources.IWorkspaceRoot;

-import org.eclipse.core.resources.ResourcesPlugin;

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.core.runtime.IPath;

-import org.eclipse.core.runtime.Path;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.core.workflow.AbstractLaunchDelegate;

-import org.eclipse.efm.core.workflow.Activator;

-import org.eclipse.efm.core.workflow.ToolConstants;

-import org.eclipse.efm.ui.resources.HelpCoReferee;

-import org.eclipse.efm.ui.views.editors.impls.StringFieldEditor;

-import org.eclipse.efm.ui.views.launchconfigurations.components.AbstractCompositeMaker.FieldValidationReturn;

-import org.eclipse.efm.ui.views.launchconfigurations.components.pages.MainTabBehaviorSelectionPage;

-import org.eclipse.efm.ui.views.launchconfigurations.components.pages.MainTabTestOfflinePage;

-import org.eclipse.efm.ui.views.launchconfigurations.components.pages.MainTabTransitionCoveragePage;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationGUIelement;

-import org.eclipse.efm.ui.views.utils.SWTFactory;

-import org.eclipse.jface.dialogs.Dialog;

-import org.eclipse.jface.preference.IPreferenceStore;

-import org.eclipse.jface.window.Window;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.accessibility.AccessibleAdapter;

-import org.eclipse.swt.accessibility.AccessibleEvent;

-import org.eclipse.swt.events.ModifyEvent;

-import org.eclipse.swt.events.ModifyListener;

-import org.eclipse.swt.events.SelectionAdapter;

-import org.eclipse.swt.events.SelectionEvent;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.widgets.Button;

-import org.eclipse.swt.widgets.Combo;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Group;

-import org.eclipse.swt.widgets.Text;

-import org.eclipse.ui.PlatformUI;

-import org.eclipse.ui.dialogs.ElementTreeSelectionDialog;

-import org.eclipse.ui.model.WorkbenchContentProvider;

-import org.eclipse.ui.model.WorkbenchLabelProvider;

-import org.eclipse.ui.views.navigator.ResourceComparator;

-

-public class FirstCompositeMaker extends AbstractCompositeMaker {

-

-	private static final String[] MODEL_COMBO_ITEMS = new String[] {

-			ANALYSIS_PROFILE_MODEL_EXPLORATION ,

-			ANALYSIS_PROFILE_MODEL_COVERAGE_TRANSITION ,

-			ANALYSIS_PROFILE_MODEL_COVERAGE_BEHAVIOR

-	};

-

-

-	private boolean fEnabledSymbexDeveloperMode;

-	private boolean fEnabledSymbexIncubationMode;

-

-

-

-	/////////////////////////////////////

-	// MODEL SELECTION

-	/////////////////////////////////////

-

-	// AVM Location

-	private String fProjectName;

-    private Text fModelPathText;

-    private Button fModelWorkspaceBrowse;

-

-	private Button fModelButton = null;

-

-	/////////////////////////////////////

-	// WORKSPACE // DEVELOPER MODE

-	/////////////////////////////////////

-

-	private StringFieldEditor fWorkspaceRootLoacationStringField;

-	private StringFieldEditor fWorkspaceOuputFolderNameStringField;

-	private StringFieldEditor fWorkspaceLogFolderNameStringField;

-	private StringFieldEditor fWorkspaceDebugFolderNameStringField;

-

-

-	/////////////////////////////////////

-	// ANALYSIS SELECTION

-	/////////////////////////////////////

-

-	private String fAnalysisProfile = ANALYSIS_PROFILE_MODEL;

-

-	private Combo fModelCombo = null;

-

-	private String fModelAnalysis = ANALYSIS_PROFILE_MODEL_EXPLORATION;

-

-

-	/////////////////////////////////////

-	// TRANSITION COVERAGE ANALYSIS

-	/////////////////////////////////////

-

-	MainTabTransitionCoveragePage fTransitionCoveragePage;

-

-	/////////////////////////////////////

-	// BEHAVIOR SELECTION ANALYSIS

-	/////////////////////////////////////

-

-	MainTabBehaviorSelectionPage fBehaviorSelectionPage;

-

-	/////////////////////////////////////

-	// TEST OFFLINE // INCUBATION MODE

-	/////////////////////////////////////

-

-	private Button fTestOfflineButton = null;

-

-	MainTabTestOfflinePage fTestOfflinePage;

-	

-

-	public FirstCompositeMaker(ILaunchConfigurationGUIelement masterGUIelement) {

-		super(masterGUIelement);

-		if( AbstractLaunchDelegate.ENABLED_SYMBEX_DEVELOPER_MODE_OPTION ) {

-

-			IPreferenceStore prefs = Activator.getDefault().getPreferenceStore();

-

-			fEnabledSymbexDeveloperMode =

-					prefs.getBoolean(ToolConstants.PREF_SYMBEX_DEVELOPER_MODE);

-		}

-		else {

-			fEnabledSymbexDeveloperMode = false;

-		}

-

-		if( AbstractLaunchDelegate.ENABLED_SYMBEX_INCUBATION_MODE_OPTION ) {

-

-			IPreferenceStore prefs = Activator.getDefault().getPreferenceStore();

-

-			fEnabledSymbexIncubationMode =

-					prefs.getBoolean(ToolConstants.PREF_INCUBATION_MODE);

-		}

-		else {

-			fEnabledSymbexIncubationMode = false;

-		}

-

-		// TRANSITION COVERAGE ANALYSIS

-		fTransitionCoveragePage = new MainTabTransitionCoveragePage(this);

-

-		// BEHAVIOR SELECTION ANALYSIS

-		fBehaviorSelectionPage = new MainTabBehaviorSelectionPage(this);

-

-		// TEST OFFLINE // INCUBATION MODE

-		if( fEnabledSymbexIncubationMode ) {

-			fTestOfflinePage = new MainTabTestOfflinePage(this);

-		}

-	}

-	

-	private class TabListener extends SelectionAdapter implements ModifyListener {

-

-		/* (non-Javadoc)

-		 * @see org.eclipse.swt.events.ModifyListener#modifyText(org.eclipse.swt.events.ModifyEvent)

-		 */

-		@Override

-		public void modifyText(ModifyEvent e) {

-			propagateGUIupdate();

-		}

-

-		/* (non-Javadoc)

-		 * @see org.eclipse.swt.events.SelectionListener#widgetSelected(org.eclipse.swt.events.SelectionEvent)

-		 */

-		@Override

-		public void widgetSelected(SelectionEvent e) {

-			Object source = e.getSource();

-

-			if(source == fModelButton) {

-				handleModelButtonSelected();

-			}

-			else if(source == fTestOfflineButton) {

-				handleTestOfflineButtonSelected();

-			}

-			else if(source == fModelCombo) {

-				handleModelSelectionChange();

-			}

-		}

-	}

-

-	private TabListener fListener = new TabListener();

-	

-	// ======================================================================================

-	//                              Miscellaneous handling

-	// ======================================================================================

-	

-	public void handleModelButtonSelected() {

-		if( fModelButton.getSelection() ) {

-			fAnalysisProfile = ANALYSIS_PROFILE_MODEL;

-

-			enableAnalysisModel(true);

-

-			// TEST OFFLINE // INCUBATION MODE

-			if( fEnabledSymbexIncubationMode )

-			{

-				enableAnalysisTestOfflineTrace(false);

-			}

-

-			if( fModelAnalysis.equals(

-					ANALYSIS_PROFILE_MODEL_COVERAGE_BEHAVIOR) )

-			{

-				fTransitionCoveragePage.setVisible(false);

-

-				fBehaviorSelectionPage.setVisible(true);

-			}

-			else if( fModelAnalysis.equals(

-					ANALYSIS_PROFILE_MODEL_COVERAGE_TRANSITION) )

-			{

-				fTransitionCoveragePage.setVisible(true);

-

-				fBehaviorSelectionPage.setVisible(false);

-			}

-			else {

-				fTransitionCoveragePage.setVisible(false);

-

-				fBehaviorSelectionPage.setVisible(false);

-			}

-		}

-		propagateGUIupdate();

-	}

-

-	public void handleTestOfflineButtonSelected() {

-		if( fTestOfflineButton.getSelection() ) {

-			fAnalysisProfile = ANALYSIS_PROFILE_TEST_OFFLINE;

-

-			enableAnalysisModel(false);

-

-			fTransitionCoveragePage.setVisible(false);

-

-			fBehaviorSelectionPage.setVisible(false);

-

-			enableAnalysisTestOfflineTrace(true);

-		}

-		propagateGUIupdate();

-	}

-

-	private void handleModelSelectionChange() {

-		fModelAnalysis = fModelCombo.getText();

-

-//		ExpertTab expertTab = getGroupTab().getExpertTab();

-//		if( expertTab != null ) {

-//			expertTab.setTabName("Expert <" + fModelAnalysis + ">");

-//		}

-

-		if( fModelAnalysis.equals(

-				ANALYSIS_PROFILE_MODEL_COVERAGE_BEHAVIOR) )

-		{

-			fBehaviorSelectionPage.setVisible(true);

-

-			fTransitionCoveragePage.setVisible(false);

-		}

-		else if( fModelAnalysis.equals(

-				ANALYSIS_PROFILE_MODEL_COVERAGE_TRANSITION) )

-		{

-			fTransitionCoveragePage.setVisible(true);

-

-			fBehaviorSelectionPage.setVisible(false);

-		}

-		else {

-			fTransitionCoveragePage.setVisible(false);

-

-			fBehaviorSelectionPage.setVisible(false);

-		}

-		propagateGUIupdate();

-	}

-	

-	private void handleModelFileChange() {

-		if( (fAnalysisProfile == ANALYSIS_PROFILE_MODEL)

-		&& fModelAnalysis.equals(ANALYSIS_PROFILE_MODEL_COVERAGE_TRANSITION) )

-		{

-			fTransitionCoveragePage.handleModelFilePathChanged(

-					fModelPathText.getText());

-		}

-	}	

-	

-	/**

-	 * Modify listener that simply updates the owning launch configuration dialog.

-	 */

-	private ModifyListener fBasicModifyListener = new ModifyListener() {

-		@Override

-		public void modifyText(ModifyEvent evt) {

-			propagateUpdateJobScheduling();

-

-			handleModelFileChange();

-		}

-	};

-	

-	/**

-	 * Enable Model / Trace  Use Case Analysis radio button has been selected

-	 */

-	private void enableAnalysisModel(boolean bEnabled) {

-		fModelButton.setSelection(bEnabled);

-

-		fModelCombo.setEnabled(bEnabled);

-	}

-

-	// TEST OFFLINE // INCUBATION MODE

-	private void enableAnalysisTestOfflineTrace(boolean bEnabled) {

-		fTestOfflineButton.setSelection(bEnabled);

-

-		fTestOfflinePage.setVisible(bEnabled);

-	}	

-	

-	// ======================================================================================

-	//                              Graphical Components Creation Methods

-	// ======================================================================================	

-	

-

-

-	@Override

-	public Composite createControlMain(Composite parent) {

-		Composite simpleComposite = SWTFactory.createComposite(parent,

-				parent.getFont(), 1, 1, GridData.FILL_BOTH, 0, 0);

-		createModelFileSelectionComponent(simpleComposite);

-		createWorkspaceComponent(simpleComposite);

-		createAnalyseProfileComponent(simpleComposite);

-		

-		return simpleComposite;

-	}

-

-

-	/**

-	 * Creates the component set for the capture output composite

-	 * @param parent the parent to add this component to

-	 */

-	private void createModelFileSelectionComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(

-				parent, "Model File Selection", 1, 1, GridData.FILL_HORIZONTAL);

-

-		Composite comp = SWTFactory.createComposite(

-				group, group.getFont(), 2, 1, GridData.FILL_BOTH, 0, 0);

-

-		fModelPathText = SWTFactory.createSingleText(comp, 1);

-		fModelPathText.getAccessible().addAccessibleListener(new AccessibleAdapter() {

-			@Override

-			public void getName(AccessibleEvent e) {

-				e.result = "Model File";

-			}

-		});

-		fModelPathText.addModifyListener(fBasicModifyListener);

-

-		fModelWorkspaceBrowse = SWTFactory.createPushButton(comp, "&Workspace...", null);

-		fModelWorkspaceBrowse.addSelectionListener(new SelectionAdapter() {

-			@Override

-			public void widgetSelected(SelectionEvent e) {

-				ElementTreeSelectionDialog dialog =

-						new ElementTreeSelectionDialog(

-								parent.getShell(),

-								new WorkbenchLabelProvider(),

-								new WorkbenchContentProvider() );

-				dialog.setTitle("Select a Diversity Specification:");

-				dialog.setMessage("Select a resource to redirect output to:");

-				dialog.setInput(ResourcesPlugin.getWorkspace().getRoot());

-				dialog.setComparator(

-						new ResourceComparator(ResourceComparator.NAME));

-//				dialog.setDialogBoundsSettings(

-//						getDialogBoundsSettings(WORKSPACE_SELECTION_DIALOG),

-//						Dialog.DIALOG_PERSISTSIZE);

-				if(dialog.open() == Window.OK) {

-					IResource resource = (IResource) dialog.getFirstResult();

-					if(resource != null) {

-						fProjectName = resource.getProject().getName();

-

-						String specFile = resource.getLocation().toString();

-						fModelPathText.setText(specFile);

-

-						updateWorkspaceRootPath(resource);

-					}

-				}

-

-//				org.eclipse.ui.dialogs.ResourceSelectionDialog dialog =

-//						new ResourceSelectionDialog(getShell(),

-//								ResourcesPlugin.getWorkspace().getRoot(),

-//								"Select a &Diversity Specification:");

-//

-//				if(dialog.open() == Window.OK) {

-//					Object[] results = dialog.getResult();

-//					if(results == null || results.length < 1) {

-//						return;

-//					}

-//					else if( results[0] instanceof IPath ) {

-//						IPath path = (IPath)results[0];

-//						String specFile = path.toString();

-//						fModelPathText.setText(specFile);

-//					}

-//				}

-			}

-		});

-

-//		fFileBrowse = createPushButton(bcomp, "File &System...", null);

-//		fFileBrowse.addSelectionListener(new SelectionAdapter() {

-//			@Override

-//			public void widgetSelected(SelectionEvent e) {

-//				String filePath = fModelPathText.getText();

-//				org.eclipse.swt.widgets.FileDialog dialog =

-//						new FileDialog(getShell(), SWT.SAVE);

-//				filePath = dialog.open();

-//				if(filePath != null) {

-//					fModelPathText.setText(filePath);

-//				}

-//			}

-//		});

-//		fVariables = createPushButton(bcomp, "Variables...", null);

-//		fVariables.addSelectionListener(new SelectionListener() {

-//			@Override

-//			public void widgetSelected(SelectionEvent e) {

-//				StringVariableSelectionDialog dialog =

-//						new StringVariableSelectionDialog(getShell());

-//				dialog.open();

-//				String variable = dialog.getVariableExpression();

-//				if(variable != null) {

-//					fModelPathText.insert(variable);

-//				}

-//			}

-//			@Override

-//			public void widgetDefaultSelected(SelectionEvent e) {}

-//		});

-

-	}

-

-

-	private void updateWorkspaceRootPath(IResource resource) {

-		fWorkspaceRootLoacationStringField.setStringValue(

-				resource.getProject().getLocation().toString());

-	}

-

-	private void updateWorkspaceRootPath(String modelPath) {

-		IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();

-		IPath path = new Path(modelPath);

-		IResource resource = root.findMember(path);

-		if( (resource != null) && resource.exists() ) {

-			fWorkspaceRootLoacationStringField.setStringValue(

-					resource.getProject().getLocation().toString());

-		}

-		else if( root.getLocation().isPrefixOf(path) ) {

-			path = root.getLocation().append( path.segment(

-					path.matchingFirstSegments( root.getLocation() ) ));

-			fWorkspaceRootLoacationStringField.setStringValue(path.toString());

-		}

-		else {

-			fWorkspaceRootLoacationStringField.setStringValue(

-				root.getLocation().append(

-						"<project-folder-name>" ).toString() );

-		}

-

-		fWorkspaceRootLoacationStringField.updateLaunchConfigurationDialog();

-	}

-

-

-	protected void createWorkspaceComponent(Composite parent) {

-		String root =  ResourcesPlugin.getWorkspace().getRoot()

-				.getLocation().append( "<project-folder-name>" ).toString();

-

-		String toolTipText = "Name of the subfolder in the root folder";

-		String toolTipText2 = "Name of the subfolder in the output folder";

-

-		Group group = SWTFactory.createGroup(parent,

-				"&Workspace Folder Name", 1, 1, GridData.FILL_HORIZONTAL);

-		group.setToolTipText( toolTipText );

-

-		Composite comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-		comp.setToolTipText( toolTipText );

-

-		fWorkspaceRootLoacationStringField = new StringFieldEditor(this,

-				ATTR_WORKSPACE_ROOT_LOCATION, "Root", comp, root);

-		fWorkspaceRootLoacationStringField.setEnabled(false);

-

-		fWorkspaceOuputFolderNameStringField = new StringFieldEditor(this,

-				ATTR_WORKSPACE_OUTPUT_FOLDER_NAME, "Output", comp,

-				DEFAULT_WORKSPACE_OUTPUT_FOLDER_NAME);

-		fWorkspaceOuputFolderNameStringField.setToolTipText( toolTipText );

-

-		if( fEnabledSymbexDeveloperMode ) {

-			fWorkspaceLogFolderNameStringField = new StringFieldEditor(

-					this, ATTR_WORKSPACE_LOG_FOLDER_NAME, "Log",

-					comp, DEFAULT_WORKSPACE_LOG_FOLDER_NAME);

-			fWorkspaceLogFolderNameStringField.setToolTipText( toolTipText2 );

-

-			fWorkspaceDebugFolderNameStringField = new StringFieldEditor(

-					this, ATTR_WORKSPACE_DEBUG_FOLDER_NAME, "Debug",

-					comp, DEFAULT_WORKSPACE_DEBUG_FOLDER_NAME);

-			fWorkspaceDebugFolderNameStringField.setToolTipText( toolTipText2 );

-		}

-	}

-

-

-	protected void createAnalyseProfileComponent(Composite parent) {

-		Group groupAnalysisProfile= SWTFactory.createGroup(

-				parent, "&Analysis Profile", 1, 1, GridData.FILL_HORIZONTAL);

-

-		Group group = SWTFactory.createGroup(groupAnalysisProfile,

-				"&Classical Model Analysis: Exploration, Transition Coverage...",

-				2, 1, GridData.FILL_HORIZONTAL);

-

-		Composite comp1 = SWTFactory.createComposite(

-				group, 1, 2, GridData.FILL_HORIZONTAL);

-		fModelButton = SWTFactory.createRadioButton(comp1, "&Selected");

-		fModelButton.setToolTipText("Symbolic execution of the model");

-		fModelButton.addSelectionListener(fListener);

-

-		fModelCombo = SWTFactory.createCombo(comp1,

-				SWT.DROP_DOWN | SWT.READ_ONLY, 1, MODEL_COMBO_ITEMS);

-		fModelCombo.setToolTipText(

-				  "Choice of the strategy for the symbolic execution of the model\n"

-				+ "\t- Exploration: basic symbolic execution of the model\n"

-				+ "\t- Transition Coverage: compute a symbolic tree which covers all transitions of the model\n"

-				+ "\t- Behavior Selection: compute one or more symbolic path(s) which cover(s)\n"

-				+ "\t\t\t   a predefined behavior\n");

-		fModelCombo.addSelectionListener(fListener);

-

-		// TRANSITION COVERAGE ANALYSIS

-		fTransitionCoveragePage.createControl(group);

-

-		// BEHAVIOR SELECTION ANALYSIS

-		fBehaviorSelectionPage.createControl(group);

-

-		if( fEnabledSymbexIncubationMode ) {

-			createIncubationTestOfflineComponent(groupAnalysisProfile);

-		}

-		else

-		{

-			fModelButton.setSelection(true);

-		}

-	}

-

-

-	protected void createIncubationTestOfflineComponent(Composite parent) {

-		//user enter choice

-		Group groupTestOffline = SWTFactory.createGroup(

-				parent, "&Test Verdict Computation: Offline testing...",

-				2, 1, GridData.FILL_HORIZONTAL);

-

-		Composite comp = SWTFactory.createComposite(

-				groupTestOffline, 1, 5, GridData.FILL_HORIZONTAL);

-		fTestOfflineButton = SWTFactory.createRadioButton(

-				comp, "&Selected");

-		fTestOfflineButton.addSelectionListener(fListener);

-

-		// WARNING WARNING WARNING WARNING WARNING

-		//

-		// Functionality not available at this time

-		//

-		// WARNING WARNING WARNING WARNING WARNING

-//		groupTestOffline.setVisible(fEnabledSymbexIncubationMode);

-//

-//		fTestOfflineButton.setEnabled(fEnabledSymbexIncubationMode);

-

-		// Trace File Selection

-		//

-		fTestOfflinePage.createControl(comp);

-	}

-

-

-

-

-	

-	

-	// ======================================================================================

-	//                              Fields Values Management

-	// ======================================================================================	

-

-	@Override

-	public void setDefaultFieldValues(ILaunchConfigurationWorkingCopy configuration) {

-		configuration.setAttribute(

-				ATTR_SPECIFICATION_PROJECT_NAME, "<project-name>");

-

-		// MODEL SELECTION

-		configuration.setAttribute(

-				ATTR_SPECIFICATION_MODEL_FILE_LOCATION,

-				DEFAULT_SPECIFICATION_MODEL_FILE_LOCATION);

-

-		// WORKSPACE // DEVELOPER MODE

-//		fWorkspaceRootLoacationStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_WORKSPACE_ROOT_LOCATION,

-				DEFAULT_WORKSPACE_ROOT_LOCATION);

-

-//		fWorkspaceOuputFolderNameStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_WORKSPACE_OUTPUT_FOLDER_NAME,

-				DEFAULT_WORKSPACE_OUTPUT_FOLDER_NAME);

-

-		if( fEnabledSymbexDeveloperMode ) {

-//			fWorkspaceLogFolderNameStringField.setDefaults(configuration);

-			configuration.setAttribute(

-					ATTR_WORKSPACE_LOG_FOLDER_NAME,

-					DEFAULT_WORKSPACE_LOG_FOLDER_NAME);

-

-//			fWorkspaceDebugFolderNameStringField.setDefaults(configuration);

-			configuration.setAttribute(

-					ATTR_WORKSPACE_DEBUG_FOLDER_NAME,

-					DEFAULT_WORKSPACE_DEBUG_FOLDER_NAME);

-		}

-

-		// ANALYSIS SELECTION

-		configuration.setAttribute(

-				ATTR_SPECIFICATION_ANALYSIS_PROFILE,

-				ANALYSIS_PROFILE_MODEL);

-

-		configuration.setAttribute(

-				ATTR_SPECIFICATION_MODEL_ANALYSIS,

-				ANALYSIS_PROFILE_MODEL_EXPLORATION);

-

-		// TRANSITION COVERAGE ANALYSIS

-		fTransitionCoveragePage.setDefaults(configuration);

-

-		// BEHAVIOR SELECTION ANALYSIS

-		fBehaviorSelectionPage.setDefaults(configuration);

-

-		// TEST OFFLINE // INCUBATION MODE

-		if( fEnabledSymbexIncubationMode ) {

-			fTestOfflinePage.setDefaults(configuration);

-		}

-	}

-

-

-	@Override

-	public void initializeFieldValuesFrom(ILaunchConfiguration configuration) {

-		try {

-			fProjectName = configuration.getAttribute(

-					ATTR_SPECIFICATION_PROJECT_NAME, "");

-

-			String specMainFileLocation = configuration.getAttribute(

-					ATTR_SPECIFICATION_MODEL_FILE_LOCATION,

-					DEFAULT_SPECIFICATION_MODEL_FILE_LOCATION);

-			fModelPathText.setText( specMainFileLocation );

-			updateWorkspaceRootPath( specMainFileLocation );

-

-			fWorkspaceRootLoacationStringField.initializeFrom(configuration);

-			fWorkspaceOuputFolderNameStringField.initializeFrom(configuration);

-

-			if( fEnabledSymbexDeveloperMode ) {

-				fWorkspaceLogFolderNameStringField.initializeFrom(configuration);

-				fWorkspaceDebugFolderNameStringField.initializeFrom(configuration);

-			}

-

-			fAnalysisProfile = configuration.getAttribute(

-					ATTR_SPECIFICATION_ANALYSIS_PROFILE,

-					ANALYSIS_PROFILE_MODEL);

-			initializeAnalysisProfile();

-

-			fModelAnalysis = configuration.getAttribute(

-					ATTR_SPECIFICATION_MODEL_ANALYSIS,

-					ANALYSIS_PROFILE_MODEL_EXPLORATION);

-			initializeModelAnalysis();

-		}

-		catch (CoreException e) {

-			e.printStackTrace();

-		}

-

-		if( fAnalysisProfile.equals(ANALYSIS_PROFILE_MODEL) &&

-			fModelAnalysis.equals(ANALYSIS_PROFILE_MODEL_COVERAGE_BEHAVIOR)	)

-		{

-			fTransitionCoveragePage.setVisible(false);

-

-			fBehaviorSelectionPage.setVisible(true);

-		}

-		else if( fAnalysisProfile.equals(ANALYSIS_PROFILE_MODEL) &&

-				fModelAnalysis.equals(

-						ANALYSIS_PROFILE_MODEL_COVERAGE_TRANSITION) )

-		{

-			fTransitionCoveragePage.setVisible(true);

-

-			fBehaviorSelectionPage.setVisible(false);

-		}

-		else {

-			fTransitionCoveragePage.setVisible(false);

-

-			fBehaviorSelectionPage.setVisible(false);

-		}

-

-		// TRANSITION COVERAGE ANALYSIS

-		fTransitionCoveragePage.initializeFrom(configuration);

-

-		// BEHAVIOR SELECTION ANALYSIS

-		fBehaviorSelectionPage.initializeFrom(configuration);

-

-

-		// TEST OFFLINE // INCUBATION MODE

-		if( fEnabledSymbexIncubationMode ) {

-			fTestOfflinePage.initializeFrom(configuration);

-		}

-	}

-

-	private void initializeModelAnalysis() {

-		switch ( fModelAnalysis ) {

-		case ANALYSIS_PROFILE_MODEL_EXPLORATION:

-			fModelCombo.select(0);

-			break;

-		case ANALYSIS_PROFILE_MODEL_COVERAGE_TRANSITION:

-			fModelCombo.select(1);

-			break;

-		case ANALYSIS_PROFILE_MODEL_COVERAGE_BEHAVIOR:

-			fModelCombo.select(2);

-			break;

-		default:

-			fModelCombo.select(0);

-			break;

-		}

-	}

-

-	private void initializeAnalysisProfile() {

-		if( ! fEnabledSymbexIncubationMode ) {

-			fAnalysisProfile = ANALYSIS_PROFILE_MODEL;

-		}

-

-		switch ( fAnalysisProfile ) {

-			case ANALYSIS_PROFILE_MODEL:

-			{

-				fModelButton.setSelection(true);

-				enableAnalysisModel(true);

-

-				if( fEnabledSymbexIncubationMode ) {

-					fTestOfflineButton.setSelection(false);

-					enableAnalysisTestOfflineTrace(false);

-				}

-

-				if( fModelAnalysis.equals(

-						ANALYSIS_PROFILE_MODEL_COVERAGE_BEHAVIOR) )

-				{

-					fTransitionCoveragePage.setVisible(false);

-

-					fBehaviorSelectionPage.setVisible(true);

-				}

-				else if( fModelAnalysis.equals(

-						ANALYSIS_PROFILE_MODEL_COVERAGE_TRANSITION) )

-				{

-					fTransitionCoveragePage.setVisible(true);

-

-					fBehaviorSelectionPage.setVisible(false);

-				}

-				else {

-					fTransitionCoveragePage.setVisible(false);

-

-					fBehaviorSelectionPage.setVisible(false);

-				}

-

-				break;

-			}

-			case ANALYSIS_PROFILE_TEST_OFFLINE:

-			{

-				fModelButton.setSelection(false);

-				enableAnalysisModel(false);

-

-				if( fEnabledSymbexIncubationMode ) {

-					fTestOfflineButton.setSelection(true);

-					enableAnalysisTestOfflineTrace(true);

-				}

-

-				fTransitionCoveragePage.setVisible(false);

-

-				fBehaviorSelectionPage.setVisible(false);

-

-				break;

-			}

-			default:

-			{

-				fModelButton.setSelection(true);

-				fAnalysisProfile = ANALYSIS_PROFILE_MODEL;

-				enableAnalysisModel(true);

-

-				if( fEnabledSymbexIncubationMode ) {

-					fTestOfflineButton.setSelection(false);

-					enableAnalysisTestOfflineTrace(false);

-				}

-

-				if( fModelAnalysis.equals(

-						ANALYSIS_PROFILE_MODEL_COVERAGE_BEHAVIOR) )

-				{

-					fTransitionCoveragePage.setVisible(false);

-

-					fBehaviorSelectionPage.setVisible(true);

-				}

-				else if( fModelAnalysis.equals(

-						ANALYSIS_PROFILE_MODEL_COVERAGE_TRANSITION) )

-				{

-					fTransitionCoveragePage.setVisible(true);

-

-					fBehaviorSelectionPage.setVisible(false);

-				}

-				else {

-					fTransitionCoveragePage.setVisible(false);

-

-					fBehaviorSelectionPage.setVisible(false);

-				}

-

-				break;

-			}

-		}

-

-		propagateGUIupdate();

-	}

-

-

-	@Override

-	public void applyUpdatesOnFieldValuesFrom(ILaunchConfigurationWorkingCopy configuration) {

-		configuration.setAttribute(

-				ATTR_SPECIFICATION_PROJECT_NAME, fProjectName);

-

-		configuration.setAttribute(

-				ATTR_SPECIFICATION_MODEL_FILE_LOCATION,

-				fModelPathText.getText());

-

-		fWorkspaceRootLoacationStringField.performApply(configuration);

-		fWorkspaceOuputFolderNameStringField.performApply(configuration);

-

-		if( fEnabledSymbexDeveloperMode ) {

-			fWorkspaceLogFolderNameStringField.performApply(configuration);

-			fWorkspaceDebugFolderNameStringField.performApply(configuration);

-		}

-

-		configuration.setAttribute(

-				ATTR_SPECIFICATION_ANALYSIS_PROFILE, fAnalysisProfile);

-

-		configuration.setAttribute(

-				ATTR_SPECIFICATION_MODEL_ANALYSIS, fModelAnalysis);

-

-		// TRANSITION COVERAGE ANALYSIS

-		fTransitionCoveragePage.performApply(configuration);

-

-		// BEHAVIOR SELECTION ANALYSIS

-		fBehaviorSelectionPage.performApply(configuration);

-

-		// TEST OFFLINE // INCUBATION MODE

-		if( fEnabledSymbexIncubationMode ) {

-			fTestOfflinePage.performApply(configuration);

-		}

-	}

-	

-	// ======================================================================================

-	//                              Fields Validation

-	// ======================================================================================

-	

-

-	@Override

-	public FieldValidationReturn areFieldsValid(ILaunchConfiguration launchConfig) {

-		String messageToSend = null;

-

-		String filePath = fModelPathText.getText();

-		if( (filePath == null) || filePath.isEmpty() ) {

-			messageToSend = "The resource model file path is empty (or null)";

-		}

-		else {

-			File aFile = new File(filePath);

-			if( ! aFile.exists() ) {

-				messageToSend="The resource model file \"" +

-						filePath + "\" does not exist.";

-			}

-			else if( ! aFile.isFile() ) {

-				messageToSend = "The resource model \"" +

-						filePath + "\" is not a file.";

-			}

-		}

-

-		switch( fAnalysisProfile ) {

-			case ANALYSIS_PROFILE_MODEL: {

-				switch( fModelAnalysis )

-				{

-					case ANALYSIS_PROFILE_MODEL_COVERAGE_BEHAVIOR:

-					{

-						// BEHAVIOR SELECTION ANALYSIS

-						if( ! fBehaviorSelectionPage.isValid(launchConfig) )

-						{

-							return new FieldValidationReturn(false, messageToSend);

-						}

-

-						break;

-					}

-					case ANALYSIS_PROFILE_MODEL_COVERAGE_TRANSITION:

-					{

-						// TRANSITION COVERAGE ANALYSIS

-						if( ! fTransitionCoveragePage.isValid(launchConfig) )

-						{

-							return new FieldValidationReturn(false, messageToSend);

-						}

-

-						break;

-					}

-

-					default:

-						break;

-				}

-				break;

-			}

-			case ANALYSIS_PROFILE_TEST_OFFLINE:

-			{

-				// TEST OFFLINE // INCUBATION MODE

-				if( fEnabledSymbexIncubationMode ) {

-					if( ! fTestOfflinePage.isValid(launchConfig) )

-					{

-						return new FieldValidationReturn(false, messageToSend);

-					}

-				}

-

-				break;

-			}

-			default:

-				break;

-		}

-

-		return new FieldValidationReturn(true, messageToSend);

-	}	

-	

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/NonRegressionCompositeMaker.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/NonRegressionCompositeMaker.java
deleted file mode 100644
index d0ca6ff..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/NonRegressionCompositeMaker.java
+++ /dev/null
@@ -1,714 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial Implementation (tab-based, inserted in Run Configurations dialog)

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - New API (free-composite-based, no type assumptions on parent) 

- *******************************************************************************/

-

-package org.eclipse.efm.ui.views.launchconfigurations.components;

-

-import java.io.BufferedReader;

-import java.io.FileInputStream;

-import java.io.FileNotFoundException;

-import java.io.IOException;

-import java.io.InputStream;

-import java.io.InputStreamReader;

-import java.util.ArrayList;

-import java.util.List;

-

-import org.eclipse.core.resources.IResource;

-import org.eclipse.core.resources.ResourcesPlugin;

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.core.workflow.Activator;

-import org.eclipse.efm.ui.views.editors.impls.BooleanFieldEditor;

-import org.eclipse.efm.ui.views.launchconfigurations.components.AbstractCompositeMaker.FieldValidationReturn;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationGUIelement;

-import org.eclipse.efm.ui.views.utils.SWTFactory;

-import org.eclipse.jface.dialogs.Dialog;

-import org.eclipse.jface.window.Window;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.accessibility.AccessibleAdapter;

-import org.eclipse.swt.accessibility.AccessibleEvent;

-import org.eclipse.swt.events.ModifyEvent;

-import org.eclipse.swt.events.ModifyListener;

-import org.eclipse.swt.events.SelectionAdapter;

-import org.eclipse.swt.events.SelectionEvent;

-import org.eclipse.swt.events.SelectionListener;

-import org.eclipse.swt.graphics.Rectangle;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.layout.GridLayout;

-import org.eclipse.swt.widgets.Button;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Group;

-import org.eclipse.swt.widgets.Table;

-import org.eclipse.swt.widgets.TableColumn;

-import org.eclipse.swt.widgets.TableItem;

-import org.eclipse.swt.widgets.Text;

-import org.eclipse.ui.PlatformUI;

-import org.eclipse.ui.dialogs.ElementTreeSelectionDialog;

-import org.eclipse.ui.model.WorkbenchContentProvider;

-import org.eclipse.ui.model.WorkbenchLabelProvider;

-import org.eclipse.ui.views.navigator.ResourceComparator;

-

-public class NonRegressionCompositeMaker extends AbstractCompositeMaker {

-

-	public static final String ATTR_ENABLED_NON_REGRESSION =

-			Activator.PLUGIN_ID + ".ATTR_ENABLED_NON_REGRESSION"; //$NON-NLS-1$

-

-	public static final String ATTR_SPECIFICATION_PROJECT_NAME =

-			Activator.PLUGIN_ID + ".ATTR_SPECIFICATION_PROJECT_NAME"; //$NON-NLS-1$

-

-	public static final String ATTR_SPECIFICATION_MODEL_FILE_LOCATION =

-			Activator.PLUGIN_ID + ".ATTR_SPECIFICATION_MODEL_FILE_LOCATION"; //$NON-NLS-1$

-

-	public static final String ATTR_BASIC_TRANSITION_BUTTON =

-			Activator.PLUGIN_ID + ".ATTR_BASIC_TRANSITION_BUTTON"; //$NON-NLS-1$

-

-	public static final String ATTR_SELECTED_TRANSITIONS =

-			Activator.PLUGIN_ID + ".ATTR_SELECTED_TRANSITIONS"; //$NON-NLS-1$

-

-

-    private BooleanFieldEditor fNonRegressionBooleanField;

-

-    private String fProjectName;

-    private Text fModelPathText;

-    private String currentModelPath = "";

-    private Button fModelWorkspaceBrowse;

-

-    private String specMainFileLocation = "<model file location>";

-

-	private Composite compNonRegressionCaseButton;

-

-	private Composite compNonRegressionCaseCoverage;

-//	private ScrolledComposite scrolledComposite1;

-//	private ScrolledComposite scrolledComposite2;

-

-	private Button fAllNonRegressionCaseButton = null;

-	private Button fDetailsNonRegressionCaseButton = null;

-	private String fNonRegressionCaseButton = "All";

-

-	private Table fNonRegressionCaseTable1;

-	private TableColumn colonne1;

-	private Table fNonRegressionCaseTable2;

-	private TableColumn colonne2;

-

-//	private Table transitionsToBeSelectedTable;

-//	private Table selectedTransitionsTable;

-	private List< String > transitionsToBeSelected;

-	private List< String > selectedTransitions;

-

-	public NonRegressionCompositeMaker(ILaunchConfigurationGUIelement masterGUIelement) {

-		super(masterGUIelement);

-	}

-	

-	private class TabListener extends SelectionAdapter implements ModifyListener {

-

-		/* (non-Javadoc)

-		 * @see org.eclipse.swt.events.ModifyListener#modifyText(org.eclipse.swt.events.ModifyEvent)

-		 */

-		@Override

-		public void modifyText(ModifyEvent e) {

-			propagateGUIupdate();

-		}

-

-		/* (non-Javadoc)

-		 * @see org.eclipse.swt.events.SelectionListener#widgetSelected(org.eclipse.swt.events.SelectionEvent)

-		 */

-		@Override

-		public void widgetSelected(SelectionEvent e) {

-			Object source = e.getSource();

-

-			if(source == fAllNonRegressionCaseButton) {

-				handleAllTransitionButtonSelected();

-			}

-			else if(source == fDetailsNonRegressionCaseButton) {

-				handleDetailedTransitionSelected();

-			}

-		}

-	}

-

-	private TabListener fListener = new TabListener();

-

-	// ======================================================================================

-	//                              Miscellaneous handling

-	// ======================================================================================	

-	

-	public void handleSelectedTransition() {

-

-		boolean refresh = false;

-        for(int i = 0; i < transitionsToBeSelected.size(); i++) {

-        	if( fNonRegressionCaseTable1.getItem(i).getChecked() ) {

-        		if( ! selectedTransitions.contains( transitionsToBeSelected.get(i) ) ) {

-        			selectedTransitions.add( transitionsToBeSelected.get(i) );

-        			refresh = true;

-        		}

-        	}

-        	else if( selectedTransitions.contains( transitionsToBeSelected.get(i) ) ) {

-        		selectedTransitions.remove( transitionsToBeSelected.get(i) );

-        		refresh = true;

-        	}

-        }

-        if( refresh ) {

-            selectedTransitions.sort(null);

-    		updateTransitionTable2();

-        }

-

-        propagateGUIupdate();

-	}

-

-	public void handleAllTransitionButtonSelected() {

-		if( fAllNonRegressionCaseButton.getSelection() ) {

-			fNonRegressionCaseButton = "All";

-			propagateVisibility(compNonRegressionCaseCoverage,false);

-		}

-		propagateGUIupdate();

-	}

-

-	public void handleDetailedTransitionSelected() {

-		if( fDetailsNonRegressionCaseButton.getSelection() ) {

-			fNonRegressionCaseButton = "Details";

-			propagateVisibility(compNonRegressionCaseCoverage,true);

-		}

-		propagateGUIupdate();

-	}

-

-	/**

-	 * Modify listener that simply updates the owning launch configuration dialog.

-	 */

-	private ModifyListener fBasicModifyListener = new ModifyListener() {

-		@Override

-		public void modifyText(ModifyEvent evt) {

-			propagateUpdateJobScheduling();

-		}

-	};	

-	

-	

-	// ======================================================================================

-	//                              Graphical Components Creation Methods

-	// ======================================================================================

-	

-	@Override

-	public Composite createControlMain(Composite parent) {

-		Composite simpleComposite = SWTFactory.createComposite(parent,

-				parent.getFont(), 1, 1, GridData.FILL_HORIZONTAL, 0, 0);

-		createNonRegressionSelectionComponent(simpleComposite);

-		createModelFileSelectionComponent(simpleComposite);

-		createAnalyseProfileComponent(simpleComposite);

-		

-		return simpleComposite;

-	}

-

-

-	private void createNonRegressionSelectionComponent(Composite parent) {

-        Group group = SWTFactory.createGroup(parent,

-        		"Non Regression", 1, 1, GridData.FILL_HORIZONTAL);

-

-        Composite comp = SWTFactory.createComposite(

-        		group, 1, 1, GridData.FILL_HORIZONTAL);

-

-        fNonRegressionBooleanField = new BooleanFieldEditor(this,

-        		ATTR_ENABLED_NON_REGRESSION,

-        		"&Non Regression Execution", comp, false);

-	}

-

-	private void createModelFileSelectionComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(

-				parent, "Non Regression Folder Selection",

-				5, 1, GridData.FILL_HORIZONTAL);

-		Composite comp = SWTFactory.createComposite(

-				group, group.getFont(), 5, 5, GridData.FILL_BOTH, 0, 0);

-

-		fModelPathText = SWTFactory.createSingleText(comp, 4);

-		fModelPathText.getAccessible().addAccessibleListener(

-				new AccessibleAdapter() {

-					@Override

-					public void getName(AccessibleEvent e) {

-						e.result = "Non Regression Folder";

-					}

-				});

-		fModelPathText.addModifyListener(fBasicModifyListener);

-

-		Composite bcomp = SWTFactory.createComposite(comp,

-				3, 5, GridData.HORIZONTAL_ALIGN_END);

-		GridLayout ld = (GridLayout)bcomp.getLayout();

-		ld.marginHeight = 1;

-		ld.marginWidth = 0;

-

-		fModelWorkspaceBrowse = SWTFactory.createPushButton(bcomp, "&Workspace...", null);	

-		fModelWorkspaceBrowse.addSelectionListener(new SelectionAdapter() {

-			@Override

-			public void widgetSelected(SelectionEvent e) {

-				ElementTreeSelectionDialog dialog =

-						new ElementTreeSelectionDialog(parent.getShell(),

-								new WorkbenchLabelProvider(),

-								new WorkbenchContentProvider());

-				dialog.setTitle("Select a &Diversity Specification:");

-				dialog.setMessage("Select a resource to redirect output to:");

-				dialog.setInput(ResourcesPlugin.getWorkspace().getRoot());

-				dialog.setComparator(

-						new ResourceComparator(ResourceComparator.NAME));

-//				dialog.setDialogBoundsSettings(

-//						getDialogBoundsSettings(WORKSPACE_SELECTION_DIALOG),

-//						Dialog.DIALOG_PERSISTSIZE);

-

-				if(dialog.open() == Window.OK) {

-					IResource resource = (IResource) dialog.getFirstResult();

-					if(resource != null) {

-						fProjectName = resource.getProject().getName();

-

-						String specFile = resource.getLocation().toString();

-						fModelPathText.setText(specFile);

-					}

-				}

-

-//				org.eclipse.ui.dialogs.ResourceSelectionDialog dialog =

-//						new ResourceSelectionDialog(getShell(),

-//								ResourcesPlugin.getWorkspace().getRoot(),

-//								"Select a &Diversity Specification:");

-//

-//				if(dialog.open() == Window.OK) {

-//					Object[] results = dialog.getResult();

-//					if(results == null || results.length < 1) {

-//						return;

-//					}

-//					else if( results[0] instanceof IPath ) {

-//						IPath path = (IPath)results[0];

-//						String specFile = path.toString();

-//						fModelPathText.setText(specFile);

-//					}

-//				}

-			}

-		});

-

-//		fFileBrowse = createPushButton(bcomp, "File &System...", null);

-//		fFileBrowse.addSelectionListener(new SelectionAdapter() {

-//			@Override

-//			public void widgetSelected(SelectionEvent e) {

-//				String filePath = fModelPathText.getText();

-//				org.eclipse.swt.widgets.FileDialog dialog =

-//						new FileDialog(getShell(), SWT.SAVE);

-//				filePath = dialog.open();

-//				if(filePath != null) {

-//					fModelPathText.setText(filePath);

-//				}

-//			}

-//		});

-//		fVariables = createPushButton(bcomp, "Variables...", null);

-//		fVariables.addSelectionListener(new SelectionListener() {

-//			@Override

-//			public void widgetSelected(SelectionEvent e) {

-//				StringVariableSelectionDialog dialog =

-//						new StringVariableSelectionDialog(getShell());

-//				dialog.open();

-//				String variable = dialog.getVariableExpression();

-//				if(variable != null) {

-//					fModelPathText.insert(variable);

-//				}

-//			}

-//			@Override

-//			public void widgetDefaultSelected(SelectionEvent e) {}

-//		});

-

-	}

-

-	protected void createAnalyseProfileComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"&Non Regression Profile", 2, 1, GridData.FILL_HORIZONTAL);

-

-		Composite comp = SWTFactory.createComposite(

-				group, 1, 2, GridData.FILL_HORIZONTAL);

-

-		createNonRegressionListComponent(comp);

-

-	}

-

-	private void createNonRegressionListComponent(Composite parent) {

-		compNonRegressionCaseButton = SWTFactory.createComposite(parent, 1, 1,

-				GridData.FILL_HORIZONTAL);

-		GridData gridData1 = new GridData();

-		gridData1.horizontalIndent = 50;

-		compNonRegressionCaseButton.setLayoutData(gridData1);

-

-		SWTFactory.createLabel(compNonRegressionCaseButton,

-				"&Non Regression Case To Be Covered", 1);

-

-		Composite comp = SWTFactory.createComposite(

-				compNonRegressionCaseButton, 2, 1, GridData.FILL_HORIZONTAL);

-		fAllNonRegressionCaseButton =

-				SWTFactory.createRadioButton(comp, "&All");

-		fAllNonRegressionCaseButton.addSelectionListener(fListener);

-		fAllNonRegressionCaseButton.setToolTipText(

-				"All transitions must be covered");

-

-		fDetailsNonRegressionCaseButton =

-				SWTFactory.createRadioButton(comp, "&Details");

-		fDetailsNonRegressionCaseButton.addSelectionListener(fListener);

-		fDetailsNonRegressionCaseButton.setToolTipText(

-				"Select a detailed list of transitions to be covered");

-

-		fAllNonRegressionCaseButton.setSelection(false);

-		fDetailsNonRegressionCaseButton.setSelection(false);

-

-

-

-

-// ==================================================================================

-

-

-		compNonRegressionCaseCoverage = SWTFactory.createComposite(parent, 2, 1,

-				GridData.FILL_HORIZONTAL);

-

-		fNonRegressionCaseTable1 = new Table(compNonRegressionCaseCoverage,

-				SWT.CHECK | SWT.BORDER);

-		colonne1 = new TableColumn (fNonRegressionCaseTable1,

-				SWT.NONE);

-		colonne1.setText("Transitions to be selected");

-		fNonRegressionCaseTable1.setHeaderVisible(true);

-

-		fNonRegressionCaseTable2 = new Table(compNonRegressionCaseCoverage,

-				SWT.BORDER);

-		colonne2 = new TableColumn(fNonRegressionCaseTable2,

-				SWT.NONE);

-		colonne2.setText("Selected transitions");

-		fNonRegressionCaseTable2.setHeaderVisible(true);

-

-

-// ==================================================================================

-/*

-		compTransitionCoverage = SWTFactory.createComposite(parent, 2, 1,

-				GridData.FILL_HORIZONTAL);

-

-		scrolledComposite1 = new ScrolledComposite(compTransitionCoverage,

-				SWT.H_SCROLL | SWT.V_SCROLL);

-        scrolledComposite1.setLayout(new GridLayout());

-        scrolledComposite1.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

-

-        fTransitionTable1 = new Table(scrolledComposite1,

-        		SWT.CHECK | SWT.BORDER);

-        fTransitionTable1.setHeaderVisible(true);

-

-        scrolledComposite1.setContent(fTransitionTable1);

-        scrolledComposite1.setExpandHorizontal(true);

-        scrolledComposite1.setExpandVertical(true);

-        scrolledComposite1.setMinSize(fTransitionTable1.computeSize(SWT.DEFAULT, SWT.DEFAULT));

-

-

-        scrolledComposite2 = new ScrolledComposite(compTransitionCoverage,

-        		SWT.H_SCROLL | SWT.V_SCROLL);

-        scrolledComposite2.setLayout(new GridLayout());

-        scrolledComposite2.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

-

-        fTransitionTable2 = new Table(scrolledComposite2,

-        		SWT.BORDER);

-        fTransitionTable2.setHeaderVisible(true);

-

-        scrolledComposite2.setContent(fTransitionTable2);

-        scrolledComposite2.setExpandHorizontal(true);

-        scrolledComposite2.setExpandVertical(true);

-        scrolledComposite2.setMinSize(fTransitionTable2.computeSize(SWT.DEFAULT, SWT.DEFAULT));

-

-        colonne1 = new TableColumn(fTransitionTable1, SWT.NONE);

-        colonne1.setText("Transitions to be selected");

-        colonne1.setWidth(10);

-

-        colonne2 = new TableColumn(fTransitionTable2, SWT.NONE);

-        colonne2.setText("Selected transitions");

-        colonne2.setWidth(10);

-

-*/

-

-// ==================================================================================

-

-

-

-

-

-		int listHeight = fNonRegressionCaseTable1.getItemHeight() * 10;

-		Rectangle trim = fNonRegressionCaseTable1.computeTrim(0, 0, 0, listHeight);

-

-		GridData gridDataLeft = new GridData();

-		gridDataLeft.heightHint = trim.height;

-		gridDataLeft.horizontalIndent = 0;

-		gridDataLeft.verticalIndent = 10;

-		fNonRegressionCaseTable1.setLayoutData(gridDataLeft);

-

-		GridData gridDataRight = new GridData();

-		gridDataRight.heightHint = trim.height;

-		gridDataRight.horizontalIndent = 0;

-		gridDataRight.verticalIndent = 10;

-		fNonRegressionCaseTable2.setLayoutData(gridDataRight);

-

-		fNonRegressionCaseTable1.addSelectionListener( new SelectionListener() {

-			@Override

-			public void widgetSelected(SelectionEvent e) {

-		  		boolean refresh = false;

-		        for(int i = 0; i < transitionsToBeSelected.size(); i++) {

-		        	if( fNonRegressionCaseTable1.getItem(i).getChecked() ) {

-		        		if( ! selectedTransitions.contains( transitionsToBeSelected.get(i) ) ) {

-		        			selectedTransitions.add( transitionsToBeSelected.get(i) );

-		        			refresh = true;

-		        		}

-		        	}

-		        	else if( selectedTransitions.contains( transitionsToBeSelected.get(i) ) ) {

-		        		selectedTransitions.remove( transitionsToBeSelected.get(i) );

-		        		refresh = true;

-		        	}

-		        }

-		        if( refresh ) {

-		            selectedTransitions.sort(null);

-		    		updateTransitionTable2();

-		        }

-		        propagateGUIupdate();

-		      }

-

-			@Override

-			public void widgetDefaultSelected(SelectionEvent e) {

-				// TODO Auto-generated method stub

-				propagateGUIupdate();

-			}

-		});

-	}

-

-	private void initTransitionTable() {

-		createTransitionToBeSelectedList();

-

-		fNonRegressionCaseTable1.removeAll();

-

-		for(int i = 0; i < transitionsToBeSelected.size(); i++) {

-	    	TableItem item = new TableItem(fNonRegressionCaseTable1, SWT.NONE);

-		    item.setChecked(false);

-//		    item.setText(transitionNameList.get(i));

-		    item.setText(new String[] {transitionsToBeSelected.get(i),""});

-        }

-	}

-

-	private void updateTransitionTable2() {

-		fNonRegressionCaseTable2.removeAll();

-

-		for(int i = 0; i < transitionsToBeSelected.size(); i++) {

-	    	TableItem item = new TableItem(fNonRegressionCaseTable2, SWT.NONE);

-

-		    if(i < selectedTransitions.size() ) {

-			    item.setText(new String[] {selectedTransitions.get(i)});

-		    }

-		    else {

-			    item.setText(new String[] {""});

-		    }

-        }

-	}

-

-	private void createTransitionToBeSelectedList() {

-

-		String pathFile = fModelPathText.getText();

-

-		transitionsToBeSelected = new ArrayList<String>();

-//		selectedTransitions = new ArrayList<String>();

-

-		try {

-			if( (! pathFile.equals("<model file location>")) &&

-				 (! pathFile.equals("")) ) {

-				InputStream ips;

-					ips = new FileInputStream(pathFile);

-				InputStreamReader ipsr = new InputStreamReader(ips);

-				BufferedReader br = new BufferedReader(ipsr);

-

-				String ligne;

-				String transitionName = "";

-				int maxSizetransitionName = 0;

-				while ((ligne=br.readLine())!=null){

-					// Case

-					// 		transition <prior:x> transitionName { ...

-					// 		transition transitionName --> stateName { ...

-					//

-					if( ligne.contains("transition ") ) {

-						ligne = ligne.replaceAll("\t", "");

-						ligne = ligne.replaceAll("transition ", "");

-						ligne = ligne.replaceAll("<prior:1> ", "");

-						ligne = ligne.replaceAll("<prior:1 > ", "");

-						ligne = ligne.replaceAll("<prior:3> ", "");

-						ligne = ligne.replaceAll("<prior:3 > ", "");

-						if( ligne.contains("-->") ) {

-							ligne = ligne.substring(0, ligne.indexOf("-->"));

-						}

-						else if( ligne.contains("{") ) {

-							ligne = ligne.substring(0, ligne.indexOf("{"));

-						}

-						else {

-							transitionName = "transition_name_not_found";

-						}

-						transitionName = ligne.replaceAll(" ", "");

-

-						if( transitionName.length() == 0 ) {

-							// transition_name_empty

-						}

-						else {

-							transitionsToBeSelected.add(transitionName);

-							maxSizetransitionName = Math.max(

-								maxSizetransitionName, transitionName.length() );

-						}

-					}

-					// Other Case

-					// 		transitionName --> stateName { ...

-					//

-					else if( ligne.contains("-->") &&

-							  !ligne.contains("}") &&

-							  !ligne.contains("output ") &&

-							  !ligne.contains("procedure ") &&

-							  !ligne.contains("call ") ) {

-						ligne = ligne.replaceAll("\t", "");

-						ligne = ligne.substring(0, ligne.indexOf("-->"));

-						ligne = ligne.replaceAll(" ", "");

-						transitionName = ligne.replaceFirst("@", "");

-

-						if( transitionName.length() == 0 ) {

-							// transition_name_empty

-						}

-						else {

-							transitionsToBeSelected.add(transitionName);

-							maxSizetransitionName = Math.max(

-								maxSizetransitionName, transitionName.length() );

-						}

-					}

-				}

-				br.close();

-				transitionsToBeSelected.sort(null);

-

-				if( maxSizetransitionName <= 30 ) {

-					colonne1.setWidth(200);

-					colonne2.setWidth(200);

-				}

-//				else if( maxSizetransitionName <= 60 ) {

-//					colonne1.setWidth(maxSizetransitionName * 9 + 30);

-//					colonne2.setWidth(maxSizetransitionName * 9 + 10);

-//				}

-//				else {

-//					colonne1.setWidth(700);

-//					colonne2.setWidth(700);

-//				}

-				else {

-					colonne1.setWidth(maxSizetransitionName * 9 + 30);

-					colonne2.setWidth(maxSizetransitionName * 9 + 10);

-				}

-}

-		} catch (FileNotFoundException e) {

-			e.printStackTrace();

-		} catch (IOException e) {

-			e.printStackTrace();

-		}

-	}

-

-

-

-

-	// ======================================================================================

-	//                              Fields Values Management

-	// ======================================================================================	

-	

-	@Override

-	public void setDefaultFieldValues(ILaunchConfigurationWorkingCopy configuration) {

-		configuration.setAttribute(

-				ATTR_SPECIFICATION_PROJECT_NAME, "<project location>");

-

-		configuration.setAttribute(

-				ATTR_SPECIFICATION_MODEL_FILE_LOCATION, "<model file location>");

-

-		configuration.setAttribute(

-				ATTR_BASIC_TRANSITION_BUTTON, "All");

-

-		configuration.setAttribute(

-				ATTR_SELECTED_TRANSITIONS, new ArrayList<String>());

-	}

-

-	@Override

-	public void initializeFieldValuesFrom(ILaunchConfiguration configuration) {

-		try {

-			fNonRegressionBooleanField.initializeFrom(configuration);

-

-			fProjectName = configuration.getAttribute(

-					ATTR_SPECIFICATION_PROJECT_NAME, "");

-

-			specMainFileLocation = configuration.getAttribute(

-					ATTR_SPECIFICATION_MODEL_FILE_LOCATION,

-					"<model file location>");

-			fModelPathText.setText(specMainFileLocation);

-			if( ! fModelPathText.getText().equals(currentModelPath) ) {

-				currentModelPath = fModelPathText.getText();

-				initTransitionTable();

-			}

-

-			fNonRegressionCaseButton = configuration.getAttribute(

-					ATTR_BASIC_TRANSITION_BUTTON, "All");

-			initializeTransitionOption(configuration);

-

-			selectedTransitions = new ArrayList<String>();

-			selectedTransitions.addAll( configuration.getAttribute(

-					ATTR_SELECTED_TRANSITIONS, new ArrayList<String>()) );

-			updateTransitionTable2();

-

-		} catch (CoreException e) {

-			// TODO Auto-generated catch block

-			e.printStackTrace();

-		}

-

-	}

-

-	private void initializeTransitionOption(ILaunchConfiguration configuration) {

-		switch ( fNonRegressionCaseButton ) {

-		case "All":

-			fAllNonRegressionCaseButton.setSelection(true);

-			fDetailsNonRegressionCaseButton.setSelection(false);

-			propagateVisibility(compNonRegressionCaseCoverage,false);

-			break;

-		case "Details":

-			fAllNonRegressionCaseButton.setSelection(false);

-			fDetailsNonRegressionCaseButton.setSelection(true);

-			propagateVisibility(compNonRegressionCaseCoverage,true);

-			break;

-		default:

-			// Error !!!

-			break;

-		}

-	}

-

-	@Override

-	public void applyUpdatesOnFieldValuesFrom(ILaunchConfigurationWorkingCopy configuration) {

-		fNonRegressionBooleanField.performApply(configuration);

-

-		configuration.setAttribute(

-				ATTR_SPECIFICATION_PROJECT_NAME, fProjectName);

-

-		configuration.setAttribute(

-				ATTR_SPECIFICATION_MODEL_FILE_LOCATION, fModelPathText.getText());

-		if( ! fModelPathText.getText().equals(currentModelPath) ) {

-			currentModelPath = fModelPathText.getText();

-			initTransitionTable();

-		}

-

-		configuration.setAttribute(

-				ATTR_BASIC_TRANSITION_BUTTON, fNonRegressionCaseButton);

-

-		configuration.setAttribute(

-				ATTR_SELECTED_TRANSITIONS, selectedTransitions);

-	}

-	

-	// ======================================================================================

-	//                              Fields Validation

-	// ======================================================================================

-	

-	@Override

-	public FieldValidationReturn areFieldsValid(ILaunchConfiguration launchConfig) {

-		if( fNonRegressionCaseButton.equals("Details") &&

-			 ( selectedTransitions.size() == 0 ) ) {

-			return new FieldValidationReturn(false, "You must select at least one transition");

-		}

-		return new FieldValidationReturn(true, null);

-	}

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/TestGenerationCompositeMaker.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/TestGenerationCompositeMaker.java
deleted file mode 100644
index e232118..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/TestGenerationCompositeMaker.java
+++ /dev/null
@@ -1,238 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial Implementation (tab-based, inserted in Run Configurations dialog)

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - New API (free-composite-based, no type assumptions on parent) 

- *******************************************************************************/

-

-package org.eclipse.efm.ui.views.launchconfigurations.components;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.ui.views.launchconfigurations.components.pages.TestGenerationTTCNTracePage;

-import org.eclipse.efm.ui.views.launchconfigurations.components.AbstractCompositeMaker.FieldValidationReturn;

-import org.eclipse.efm.ui.views.launchconfigurations.components.pages.TestGenerationBasicTracePage;

-import org.eclipse.efm.ui.resources.HelpCoReferee;

-import org.eclipse.efm.ui.views.editors.impls.BooleanFieldEditor;

-import org.eclipse.efm.ui.views.editors.impls.IntegerFieldEditor;

-import org.eclipse.efm.ui.views.editors.impls.StringFieldEditor;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationGUIelement;

-import org.eclipse.efm.ui.views.utils.SWTFactory;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Group;

-import org.eclipse.ui.PlatformUI;

-

-public class TestGenerationCompositeMaker extends AbstractCompositeMaker {

-	private Group groupExtensionObjective;

-

-	private BooleanFieldEditor fTraceExtensionEnabledBooleanField;

-	private IntegerFieldEditor fTraceExtensionEvaluationStepsLimitIntegerField;

-	private StringFieldEditor  fTraceExtensionObjectiveStringField;

-

-	// BASIC TRACE GENERATION

-	private TestGenerationBasicTracePage fBasicTracePage;

-

-	// TTCN TRACE GENERATION

-	private TestGenerationTTCNTracePage fTTCNTracePage;

-

-	public TestGenerationCompositeMaker(ILaunchConfigurationGUIelement masterGUIelement) {

-		super(masterGUIelement);

-		fBasicTracePage = new TestGenerationBasicTracePage(this);

-

-		fTTCNTracePage = new TestGenerationTTCNTracePage(this);

-	}

-

-	// ======================================================================================

-	//                              Graphical Components Creation Methods

-	// ======================================================================================

-

-	@Override

-	public Composite createControlMain(Composite parent) {

-		Composite simpleComposite = SWTFactory.createComposite(parent,

-				parent.getFont(), 1, 1, GridData.FILL_HORIZONTAL, 0, 0);

-

-		createExtensionFormatPage(simpleComposite);

-

-		fBasicTracePage.createControl(simpleComposite);

-

-		fTTCNTracePage.createControl(simpleComposite);

-		

-		return simpleComposite;

-	}

-

-	public void createExtensionFormatPage(Composite parent) {

-		Group group = SWTFactory.createGroup(

-				parent, "Trace Extension Page",

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		createExtensionSelectionComponent(group);

-	}

-

-	private void createExtensionSelectionComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"Trace Extension for Test Generation Purpose",

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		Composite comp = SWTFactory.createComposite(

-				group, 1, 1,  GridData.FILL_HORIZONTAL);

-

-		fTraceExtensionEnabledBooleanField = new BooleanFieldEditor(

-				this, ATTR_ENABLED_TRACE_EXTENSION,

-				"&Enabled Extension", comp, false);

-

-

-		groupExtensionObjective = SWTFactory.createGroup(

-				group, "Extension of Traces to reach Observables",

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		comp = SWTFactory.createComposite(

-				groupExtensionObjective,

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		fTraceExtensionEvaluationStepsLimitIntegerField =

-				new IntegerFieldEditor(this,

-						ATTR_TRACE_EXTENSION_EVALUATION_STEPS,

-						"&Evaluation Steps:", comp, -1);

-

-		fTraceExtensionEvaluationStepsLimitIntegerField.setToolTipText(

-				"Maximal evaluation steps (-1 <=> no-limit) " +

-				"during the extension of symbolic execution");

-

-//		comp = SWTFactory.createComposite(

-//				groupExtensionObjective,

-//				1, 1,  GridData.FILL_HORIZONTAL);

-

-		fTraceExtensionObjectiveStringField = new StringFieldEditor(

-				this, ATTR_TRACE_EXTENSION_OBJECTIVE,

-				"Trace Ending with:", comp,

-				DEFAULT_TRACE_EXTENSION_OBJECTIVE, SWT.MULTI);

-	}

-

-

-	private void setEnableExtensionPage(ILaunchConfiguration configuration) {

-		String fAnalysisProfile;

-		boolean localEnable;

-

-		try {

-			fAnalysisProfile = configuration.getAttribute(

-					ATTR_SPECIFICATION_ANALYSIS_PROFILE, "");

-

-			localEnable = fTraceExtensionEnabledBooleanField.getBooleanValue() &&

-				(! fAnalysisProfile.equals(ANALYSIS_PROFILE_TEST_OFFLINE ) );

-

-			fTraceExtensionEvaluationStepsLimitIntegerField.setEnabled(localEnable);

-

-			propagateVisibility(groupExtensionObjective, localEnable);

-		}

-		catch (CoreException e) {

-			e.printStackTrace();

-		}

-	}

-	

-	// ======================================================================================

-	//                              Fields Values Management

-	// ======================================================================================	

-	

-	@Override

-	public void setDefaultFieldValues(ILaunchConfigurationWorkingCopy configuration) {

-

-//		fTraceExtensionEnabledBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_ENABLED_TRACE_EXTENSION, false);

-

-//		fTraceExtensionEvaluationStepsLimitIntegerField.setDefaults(

-//				configuration);

-		configuration.setAttribute(

-				ATTR_TRACE_EXTENSION_EVALUATION_STEPS, -1);

-

-//		fTraceExtensionObjectiveStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TRACE_EXTENSION_OBJECTIVE,

-				DEFAULT_TRACE_EXTENSION_OBJECTIVE);

-

-

-		fBasicTracePage.setDefaults(configuration);

-

-		fTTCNTracePage.setDefaults(configuration);

-	}

-

-	@Override

-	public void initializeFieldValuesFrom(ILaunchConfiguration configuration) {

-		String analysisProfile;

-		try {

-			analysisProfile = configuration.getAttribute(

-					ATTR_SPECIFICATION_ANALYSIS_PROFILE, "");

-		}

-		catch (CoreException e) {

-			e.printStackTrace();

-

-			analysisProfile = "";

-		}

-

-		if ( analysisProfile.equals(ANALYSIS_PROFILE_TEST_OFFLINE ) ) {

-			fTraceExtensionEnabledBooleanField.setEnabled(false);

-		}

-		else {

-			fTraceExtensionEnabledBooleanField.setEnabled(true);

-

-			fTraceExtensionEnabledBooleanField.initializeFrom(configuration);

-			fTraceExtensionEvaluationStepsLimitIntegerField.initializeFrom(configuration);

-			fTraceExtensionObjectiveStringField.initializeFrom(configuration);

-		}

-

-		setEnableExtensionPage(configuration);

-

-		fBasicTracePage.initializeFrom(configuration);

-

-		fTTCNTracePage.initializeFrom(configuration);

-	}

-

-

-	@Override

-	public void applyUpdatesOnFieldValuesFrom(ILaunchConfigurationWorkingCopy configuration)

-	{

-		fTraceExtensionEnabledBooleanField.performApply(configuration);

-

-		setEnableExtensionPage(configuration);

-

-		fTraceExtensionEvaluationStepsLimitIntegerField.performApply(configuration);

-		fTraceExtensionObjectiveStringField.performApply(configuration);

-

-		fBasicTracePage.performApply(configuration);

-

-		fTTCNTracePage.performApply(configuration);

-	}

-	

-	// ======================================================================================

-	//                              Fields Validation

-	// ======================================================================================

-	

-	@Override

-	public FieldValidationReturn areFieldsValid(ILaunchConfiguration launchConfig) {

-		if( ! fTraceExtensionEvaluationStepsLimitIntegerField.isValid() ) {

-			return new FieldValidationReturn(false, "Evaluation Steps is not a valid integer");

-		}

-

-		if( ! fBasicTracePage.isValid(launchConfig) )

-		{

-			return new FieldValidationReturn(false, null);

-		}

-

-		if( ! fTTCNTracePage.isValid(launchConfig) )

-		{

-			return new FieldValidationReturn(false, null);

-		}

-		return new FieldValidationReturn(true, null);

-	}

-

-

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/AbstractTabComponentPage.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/AbstractTabComponentPage.java
deleted file mode 100644
index 493c223..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/AbstractTabComponentPage.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/**

- * Copyright (c) 2016 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr

- *   - Initial API and Implementation

- */

-package org.eclipse.efm.ui.views.launchconfigurations.components.pages;

-

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.core.workflow.IWorkflowConfigurationConstants;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationEditorComposite;

-import org.eclipse.swt.widgets.Composite;

-

-public abstract class AbstractTabComponentPage

-		implements IWorkflowConfigurationConstants {

-

-	protected ILaunchConfigurationEditorComposite fParentTab;

-

-	protected Composite fCompositeParent;

-

-	protected Composite fCompositeControl;

-

-

-	/**

-	 * Constructor

-	 * @param parentTab

-	 */

-	public AbstractTabComponentPage(ILaunchConfigurationEditorComposite parentTab) {

-		fParentTab = parentTab;

-

-		fCompositeParent = null;

-

-		fCompositeControl = null;

-	}

-

-	abstract public void createControl(Composite parent);

-

-	public void setVisible(boolean visible) {

-		if( fCompositeControl != null ) {

-			fParentTab.propagateVisibility(fCompositeControl, visible);

-		}

-	}

-

-	public void setEnabled(boolean enabled) {

-		setVisible(enabled);

-	}

-

-

-	abstract public void setDefaults(

-			ILaunchConfigurationWorkingCopy configuration);

-

-	abstract public void initializeFrom(ILaunchConfiguration configuration);

-

-	abstract public void performApply(

-			ILaunchConfigurationWorkingCopy configuration);

-

-

-	abstract public boolean isValid(ILaunchConfiguration launchConfig);

-

-	protected void setWarningMessage(String warningMessage) {

-		fParentTab.propagateWarningMessage(warningMessage);

-	}

-

-	protected void setErrorMessage(String errorMessage) {

-		fParentTab.propagateErrorMessage(errorMessage);

-	}

-

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/ExpertBehaviorSelectionPage.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/ExpertBehaviorSelectionPage.java
deleted file mode 100644
index b17712b..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/ExpertBehaviorSelectionPage.java
+++ /dev/null
@@ -1,343 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr

- *   - Initial API and Implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.views.launchconfigurations.components.pages;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.ui.views.editors.impls.BooleanFieldEditor;

-import org.eclipse.efm.ui.views.editors.impls.IntegerFieldEditor;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationEditorComposite;

-import org.eclipse.efm.ui.views.utils.SWTFactory;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Group;

-

-public class ExpertBehaviorSelectionPage extends AbstractTabComponentPage {

-

-	// HIT OR JUMP

-	//

-	private IntegerFieldEditor fHoJBeginStep;

-

-	private BooleanFieldEditor fHoJHeuristic;

-	private BooleanFieldEditor fHoJStop;

-	private BooleanFieldEditor fHoJSlice;

-

-	private BooleanFieldEditor fHoJLocallySearchScope;

-

-	private BooleanFieldEditor fHoJSchedulerOrdered;

-	private BooleanFieldEditor fHoJHitConsecutive;

-

-	private BooleanFieldEditor fHoJHitFolding;

-	private BooleanFieldEditor fHoJHitLucky;

-	private BooleanFieldEditor fHoJHitMax;

-	private BooleanFieldEditor fHoJJumpSlice;

-

-	private IntegerFieldEditor fHoJJumpHeight;

-	private IntegerFieldEditor fHoJJumpLimit;

-	private IntegerFieldEditor fHoJHitCount;

-	private IntegerFieldEditor fHoJJumpCount;

-

-

-	/**

-	 * Constructor

-	 * @param parentTab

-	 */

-	public ExpertBehaviorSelectionPage(

-			ILaunchConfigurationEditorComposite parentTab) {

-		super(parentTab);

-	}

-

-

-	@Override

-	public void createControl(Composite parent) {

-		fCompositeParent = parent;

-

-		fCompositeControl = SWTFactory.createGroup(fCompositeParent,

-				"Behavior Selection Page", 1, 2, GridData.FILL_HORIZONTAL);

-

-		Group groupHoJProperty = SWTFactory.createGroup(fCompositeControl,

-				"Section PROPERTY", 1, 1, GridData.FILL_HORIZONTAL);

-

-		Composite comp1 = SWTFactory.createComposite(groupHoJProperty, 1, 1,

-				GridData.FILL_HORIZONTAL);

-

-		fHoJBeginStep = new IntegerFieldEditor(fParentTab,

-				ATTR_BEHAVIOR_SELECTION_HOJ_BEGIN_STEP,

-				"&Begin Step:", comp1, 0);

-		fHoJBeginStep.setToolTipText("Number of \"cumulated\" steps "

-				+ "before begining the research of the behavior");

-

-		Group groupCommon = SWTFactory.createGroup(groupHoJProperty,

-				"&Common", 3, 2, GridData.FILL_HORIZONTAL);

-

-		Composite compCommon = SWTFactory.createComposite(

-				groupCommon, 1, 1, GridData.FILL_HORIZONTAL);

-		fHoJHeuristic = new BooleanFieldEditor(fParentTab,

-				ATTR_BEHAVIOR_SELECTION_HOJ_HEURISTIC,

-				"&Heuristic", compCommon, true);

-		fHoJHeuristic.setToolTipText("Activate the use of heuristics");

-

-		compCommon = SWTFactory.createComposite(

-				groupCommon, 1, 1, GridData.FILL_HORIZONTAL);

-		fHoJStop = new BooleanFieldEditor(fParentTab,

-				ATTR_BEHAVIOR_SELECTION_HOJ_STOP, "&Stop", compCommon, true);

-		fHoJStop.setToolTipText("Stop the symbolic excution "

-				+ "as soon as the behavior is covered");

-

-		compCommon = SWTFactory.createComposite(

-				groupCommon, 1, 1, GridData.FILL_HORIZONTAL);

-		fHoJSlice = new BooleanFieldEditor(fParentTab,

-				ATTR_BEHAVIOR_SELECTION_HOJ_SLICE, "&Slice", compCommon, true);

-		fHoJSlice.setToolTipText("Pruning the symbolic execution graph "

-				+ "at the end of the analysis");

-

-

-		Group groupScope = SWTFactory.createGroup(groupHoJProperty,

-				"&Search Scope", 2, 2, GridData.FILL_HORIZONTAL);

-

-		Composite comp = SWTFactory.createComposite(

-				groupScope, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fHoJLocallySearchScope = new BooleanFieldEditor(

-				fParentTab, ATTR_BEHAVIOR_SELECTION_HOJ_SEARCH_SCOPE_LOCALLY,

-				"&Search Locally scope instead Globally", comp, false);

-

-		Group groupScheduler = SWTFactory.createGroup(groupHoJProperty,

-				"&Scheduler", 2, 2, GridData.FILL_HORIZONTAL);

-

-		Composite compScheduler = SWTFactory.createComposite(

-				groupScheduler, 1, 1, GridData.FILL_HORIZONTAL);

-		fHoJSchedulerOrdered = new BooleanFieldEditor(fParentTab,

-				ATTR_BEHAVIOR_SELECTION_HOJ_SCHEDULER_ORDERED,

-				"&Ordered", compScheduler, true);

-		fHoJSchedulerOrdered.setToolTipText("Search ordered traces");

-

-		compScheduler = SWTFactory.createComposite(

-				groupScheduler, 1, 1, GridData.FILL_HORIZONTAL);

-		fHoJHitConsecutive = new BooleanFieldEditor(fParentTab,

-				ATTR_BEHAVIOR_SELECTION_HOJ_HIT_CONSECUTIVE,

-				"&Consecutive", compScheduler, false);

-		fHoJHitConsecutive.setToolTipText(

-				"Search ordered traces with consecutive observables");

-

-

-		Group groupOption = SWTFactory.createGroup(groupHoJProperty,

-				"&Options", 4, 2, GridData.FILL_HORIZONTAL);

-

-		Composite compOption = SWTFactory.createComposite(

-				groupOption, 1, 1, GridData.FILL_HORIZONTAL);

-		fHoJHitFolding = new BooleanFieldEditor(fParentTab,

-				ATTR_BEHAVIOR_SELECTION_HOJ_HIT_FOLDING,

-				"&Folding", compOption, true);

-		fHoJHitFolding.setToolTipText(

-				"Enabled checking many trace point in one context");

-

-		compOption = SWTFactory.createComposite(

-				groupOption, 1, 1, GridData.FILL_HORIZONTAL);

-		fHoJHitLucky = new BooleanFieldEditor(fParentTab,

-				ATTR_BEHAVIOR_SELECTION_HOJ_HIT_LUCKY,

-				"&Lucky", compOption, false);

-		fHoJHitLucky.setToolTipText(

-				"Search one trace in a lucky way - no backtracking");

-

-		compOption = SWTFactory.createComposite(

-				groupOption, 1, 1, GridData.FILL_HORIZONTAL);

-		fHoJHitMax = new BooleanFieldEditor(fParentTab,

-				ATTR_BEHAVIOR_SELECTION_HOJ_HIT_MAX,

-				"&Maximun Trace", compOption, false);

-		fHoJHitMax.setToolTipText("Search a maximun trace");

-

-		compOption = SWTFactory.createComposite(

-				groupOption, 1, 1, GridData.FILL_HORIZONTAL);

-		fHoJJumpSlice = new BooleanFieldEditor(fParentTab,

-				ATTR_BEHAVIOR_SELECTION_HOJ_JUMP_SLICE,

-				"&Jump Slice", compOption, false);

-		fHoJJumpSlice.setToolTipText(

-				"Pruning intermediate at the end of hit or jump");

-

-

-		Group groupHoJHeuristic = SWTFactory.createGroup(fCompositeControl,

-				"Section HEURISTIC", 1, 1, GridData.FILL_HORIZONTAL);

-

-		Composite compHeuristic = SWTFactory.createComposite(

-				groupHoJHeuristic, 1, 1, GridData.FILL_HORIZONTAL);

-		fHoJJumpHeight = new IntegerFieldEditor(fParentTab,

-				ATTR_BEHAVIOR_SELECTION_HOJ_JUMP_HEIGHT,

-				"&Jump Height:", compHeuristic, 6);

-

-		fHoJJumpLimit = new IntegerFieldEditor(fParentTab,

-				ATTR_BEHAVIOR_SELECTION_HOJ_JUMP_TRIALS_LIMIT,

-				"&Jump Trials Limit:", compHeuristic, -1);

-

-		fHoJHitCount = new IntegerFieldEditor(fParentTab,

-				ATTR_BEHAVIOR_SELECTION_HOJ_HIT_COUNT,

-				"&Hit Count:", compHeuristic, 1);

-

-		fHoJJumpCount = new IntegerFieldEditor(fParentTab,

-				ATTR_BEHAVIOR_SELECTION_HOJ_JUMP_COUNT,

-				"&Jump Count:", compHeuristic, 1);

-	}

-

-

-	private void setEnableGroupHOJPage(ILaunchConfiguration configuration) {

-		String fAnalysisProfile;

-		String fModelAnalysis;

-		try {

-			fAnalysisProfile = configuration.getAttribute(

-					ATTR_SPECIFICATION_ANALYSIS_PROFILE, "");

-			fModelAnalysis = configuration.getAttribute(

-					ATTR_SPECIFICATION_MODEL_ANALYSIS, "");

-

-			setVisible(fAnalysisProfile.equals(ANALYSIS_PROFILE_MODEL)

-					&& fModelAnalysis.equals(

-							ANALYSIS_PROFILE_MODEL_COVERAGE_BEHAVIOR) );

-		}

-		catch (CoreException e) {

-			e.printStackTrace();

-		}

-	}

-

-

-	@Override

-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration) {

-//		fHoJBeginStep.setDefaults(configuration);

-		configuration.setAttribute(ATTR_BEHAVIOR_SELECTION_HOJ_BEGIN_STEP, 0);

-

-//		fHoJHeuristic.setDefaults(configuration);

-		configuration.setAttribute(ATTR_BEHAVIOR_SELECTION_HOJ_HEURISTIC, true);

-

-//		fHoJStop.setDefaults(configuration);

-		configuration.setAttribute(ATTR_BEHAVIOR_SELECTION_HOJ_STOP, true);

-

-//		fHoJSlice.setDefaults(configuration);

-		configuration.setAttribute(ATTR_BEHAVIOR_SELECTION_HOJ_SLICE, true);

-

-//		fHoJLocallySearchScope.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BEHAVIOR_SELECTION_HOJ_SEARCH_SCOPE_LOCALLY, false);

-

-//		fHoJSchedulerOrdered.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BEHAVIOR_SELECTION_HOJ_SCHEDULER_ORDERED, true);

-

-//		fHoJHitConsecutive.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BEHAVIOR_SELECTION_HOJ_HIT_CONSECUTIVE, false);

-

-//		fHoJHitFolding.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BEHAVIOR_SELECTION_HOJ_HIT_FOLDING, true);

-

-//		fHoJHitLucky.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BEHAVIOR_SELECTION_HOJ_HIT_LUCKY, false);

-

-//		fHoJHitMax.setDefaults(configuration);

-		configuration.setAttribute(ATTR_BEHAVIOR_SELECTION_HOJ_HIT_MAX, false);

-

-//		fHoJJumpSlice.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BEHAVIOR_SELECTION_HOJ_JUMP_SLICE, false);

-

-//		fHoJJumpHeight.setDefaults(configuration);

-		configuration.setAttribute(ATTR_BEHAVIOR_SELECTION_HOJ_JUMP_HEIGHT, 6);

-

-//		fHoJJumpLimit.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BEHAVIOR_SELECTION_HOJ_JUMP_TRIALS_LIMIT, -1);

-

-//		fHoJHitCount.setDefaults(configuration);

-		configuration.setAttribute(ATTR_BEHAVIOR_SELECTION_HOJ_HIT_COUNT, 1);

-

-//		fHoJJumpCount.setDefaults(configuration);

-		configuration.setAttribute(ATTR_BEHAVIOR_SELECTION_HOJ_JUMP_COUNT, 1);

-	}

-

-	@Override

-	public void initializeFrom(ILaunchConfiguration configuration) {

-		setEnableGroupHOJPage(configuration);

-

-		fHoJBeginStep.initializeFrom(configuration);

-		fHoJHeuristic.initializeFrom(configuration);

-		fHoJStop.initializeFrom(configuration);

-		fHoJSlice.initializeFrom(configuration);

-

-		fHoJLocallySearchScope.initializeFrom(configuration);

-

-		fHoJSchedulerOrdered.initializeFrom(configuration);

-		fHoJHitConsecutive.initializeFrom(configuration);

-

-		fHoJHitFolding.initializeFrom(configuration);

-		fHoJHitLucky.initializeFrom(configuration);

-		fHoJHitMax.initializeFrom(configuration);

-		fHoJJumpSlice.initializeFrom(configuration);

-

-		fHoJJumpHeight.initializeFrom(configuration);

-		fHoJJumpLimit.initializeFrom(configuration);

-		fHoJHitCount.initializeFrom(configuration);

-		fHoJJumpCount.initializeFrom(configuration);

-	}

-

-	@Override

-	public void performApply(ILaunchConfigurationWorkingCopy configuration) {

-		setEnableGroupHOJPage(configuration);

-

-		fHoJBeginStep.performApply(configuration);

-		fHoJHeuristic.performApply(configuration);

-		fHoJStop.performApply(configuration);

-		fHoJSlice.performApply(configuration);

-

-		fHoJLocallySearchScope.performApply(configuration);

-

-		fHoJSchedulerOrdered.performApply(configuration);

-		fHoJHitConsecutive.performApply(configuration);

-

-		fHoJHitFolding.performApply(configuration);

-		fHoJHitLucky.performApply(configuration);

-		fHoJHitMax.performApply(configuration);

-		fHoJJumpSlice.performApply(configuration);

-

-		fHoJJumpHeight.performApply(configuration);

-		fHoJJumpLimit.performApply(configuration);

-		fHoJHitCount.performApply(configuration);

-		fHoJJumpCount.performApply(configuration);

-	}

-

-	@Override

-	public boolean isValid(ILaunchConfiguration launchConfig) {

-		if( ! fHoJBeginStep.isValid() ) {

-			setErrorMessage("Begin Step is not a valid integer");

-			return false;

-		}

-		if( ! fHoJJumpHeight.isValid() ) {

-			setErrorMessage("Jump Height is not a valid integer");

-			return false;

-		}

-		if( ! fHoJJumpLimit.isValid() ) {

-			setErrorMessage("Jump Limit is not a valid integer");

-			return false;

-		}

-		if( ! fHoJHitCount.isValid() ) {

-			setErrorMessage("Hit Count is not a valid integer");

-			return false;

-		}

-		if( ! fHoJJumpCount.isValid() ) {

-			setErrorMessage("Jump Count is not a valid integer");

-			return false;

-		}

-

-		return true;

-	}

-

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/ExpertTransitionCoveragePage.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/ExpertTransitionCoveragePage.java
deleted file mode 100644
index 858fae0..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/ExpertTransitionCoveragePage.java
+++ /dev/null
@@ -1,649 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr

- *   - Initial API and Implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.views.launchconfigurations.components.pages;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.ui.views.editors.impls.BooleanFieldEditor;

-import org.eclipse.efm.ui.views.editors.impls.IntegerFieldEditor;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationEditorComposite;

-import org.eclipse.efm.ui.views.utils.SWTFactory;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.events.ModifyEvent;

-import org.eclipse.swt.events.ModifyListener;

-import org.eclipse.swt.events.SelectionAdapter;

-import org.eclipse.swt.events.SelectionEvent;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.widgets.Combo;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Group;

-

-public class ExpertTransitionCoveragePage extends AbstractTabComponentPage {

-

-	private static final String SCOPE_COMBO_ITEM_INSTANCE = "INSTANCE";

-	private static final String SCOPE_COMBO_ITEM_MODEL = "MODEL";

-	private static final String SCOPE_COMBO_ITEM_DETAILS = "DETAILS";

-	private static final String[] SCOPE_COMBO_ITEMS = new String[] {

-			SCOPE_COMBO_ITEM_INSTANCE ,

-			SCOPE_COMBO_ITEM_MODEL ,

-			SCOPE_COMBO_ITEM_DETAILS

-	};

-	private static final String HEURISTIC_START_COMBO_ITEM_BASIC = "BASIC";

-	private static final String HEURISTIC_START_COMBO_ITEM_NAIVE = "NAIVE";

-	private static final String HEURISTIC_START_COMBO_ITEM_SMART = "SMART";

-	private static final String HEURISTIC_START_COMBO_ITEM_AGRESSIVE = "AGRESSIVE";

-	private static final String[] HEURISTIC_START_COMBO_ITEMS = new String[] {

-			HEURISTIC_START_COMBO_ITEM_BASIC ,

-			HEURISTIC_START_COMBO_ITEM_NAIVE ,

-			HEURISTIC_START_COMBO_ITEM_SMART ,

-			HEURISTIC_START_COMBO_ITEM_AGRESSIVE

-	};

-

-	private static final String DIRECTIVE_TRACE_HEURISTIC_COMBO_ITEM_BASIC = "BASIC";

-	private static final String DIRECTIVE_TRACE_HEURISTIC_COMBO_ITEM_NAIVE = "NAIVE";

-	private static final String DIRECTIVE_TRACE_HEURISTIC_COMBO_ITEM_SMART = "SMART";

-	private static final String DIRECTIVE_TRACE_HEURISTIC_COMBO_ITEM_AGRESSIVE = "AGRESSIVE";

-	private static final String[] DIRECTIVE_TRACE_HEURISTIC_COMBO_ITEMS = new String[] {

-			DIRECTIVE_TRACE_HEURISTIC_COMBO_ITEM_BASIC ,

-			DIRECTIVE_TRACE_HEURISTIC_COMBO_ITEM_NAIVE ,

-			DIRECTIVE_TRACE_HEURISTIC_COMBO_ITEM_SMART ,

-			DIRECTIVE_TRACE_HEURISTIC_COMBO_ITEM_AGRESSIVE

-	};

-

-

-	// TRANSITION COVERAGE - section PROPERTY

-	//

-	private IntegerFieldEditor fTCBeginStep;

-	private BooleanFieldEditor fTCStop;

-	private BooleanFieldEditor fTCMinimize;

-	private BooleanFieldEditor fTCSlice;

-	private BooleanFieldEditor fTCHeuristic;

-	private Combo fTCScopeCombo = null;

-	private String fTCScope = SCOPE_COMBO_ITEM_MODEL;

-

-	// TRANSITION COVERAGE - section HEURISTIC

-	//

-	private Combo fTCHeuristicStartCombo = null;

-	private String fTCHeuristicStart =

-			DIRECTIVE_TRACE_HEURISTIC_COMBO_ITEM_BASIC;

-	private IntegerFieldEditor fTCHeuristicTrials;

-	private IntegerFieldEditor fTCObjectiveRate;

-	private IntegerFieldEditor fTCObjectiveRest;

-	private Combo fTCDirectiveTraceHeuristicCombo = null;

-	private String fTCDirectiveTraceHeuristic =

-			DIRECTIVE_TRACE_HEURISTIC_COMBO_ITEM_SMART;

-	private IntegerFieldEditor fTCDirectiveTraceCountLimit;

-	private IntegerFieldEditor fTCDirectiveTraceSizeLimit;

-	private IntegerFieldEditor fTCCoverageHeight;

-	private IntegerFieldEditor fTCCoverageHeightReachedLimit;

-	private BooleanFieldEditor fTCHitStronglyRandom;

-	private IntegerFieldEditor fTCHitStronglyCount;

-	private BooleanFieldEditor fTCHitWeaklyRandom;

-	private IntegerFieldEditor fTCHitWeaklyCount;

-	private BooleanFieldEditor fTCHitOtherRandom;

-	private IntegerFieldEditor fTCHitOtherCount;

-

-

-	/**

-	 * Constructor

-	 * @param parentTab

-	 */

-	public ExpertTransitionCoveragePage(

-			ILaunchConfigurationEditorComposite parentTab) {

-		super(parentTab);

-	}

-

-

-	private class TabListener extends SelectionAdapter implements ModifyListener {

-

-		/* (non-Javadoc)

-		 * @see org.eclipse.swt.events.ModifyListener#modifyText(org.eclipse.swt.events.ModifyEvent)

-		 */

-		@Override

-		public void modifyText(ModifyEvent e) {

-			fParentTab.propagateGUIupdate();

-		}

-

-		/* (non-Javadoc)

-		 * @see org.eclipse.swt.events.SelectionListener#widgetSelected(org.eclipse.swt.events.SelectionEvent)

-		 */

-		@Override

-		public void widgetSelected(SelectionEvent e) {

-			if (e.getSource() == fTCScopeCombo) {

-				handleScopeSelectionChange();

-			}

-			else if (e.getSource() == fTCHeuristicStartCombo) {

-				handleHeuristicStartSelectionChange();

-			}

-			else if (e.getSource() == fTCDirectiveTraceHeuristicCombo) {

-				handleDirectiveTraceHeuristicSelectionChange();

-			}

-		}

-	}

-

-	private TabListener fListener= new TabListener();

-

-

-	private void handleScopeSelectionChange() {

-		fTCScope = fTCScopeCombo.getText();

-		fParentTab.propagateGUIupdate();

-	}

-

-	private void handleHeuristicStartSelectionChange() {

-		fTCHeuristicStart = fTCHeuristicStartCombo.getText();

-		fParentTab.propagateGUIupdate();

-	}

-

-	private void handleDirectiveTraceHeuristicSelectionChange() {

-		fTCDirectiveTraceHeuristic = fTCDirectiveTraceHeuristicCombo.getText();

-		fParentTab.propagateGUIupdate();

-	}

-

-

-	@Override

-	public void createControl(Composite parent) {

-		fCompositeParent = parent;

-

-		fCompositeControl = SWTFactory.createGroup(parent,

-				"Transition Coverage Page", 1, 2, GridData.FILL_HORIZONTAL);

-

-		// TRANSITION COVERAGE - section PROPERTY

-		//

-		Group groupTCProperty = SWTFactory.createGroup(

-				fCompositeControl, "Section PROPERTY",

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		Composite comp = SWTFactory.createComposite(

-				groupTCProperty, 1, 1, GridData.FILL_HORIZONTAL);

-//				GridData.HORIZONTAL_ALIGN_BEGINNING);

-		fTCBeginStep = new IntegerFieldEditor(fParentTab,

-				ATTR_TRANSITION_COVERAGE_BEGIN_STEP,

-				"&Begin Step:", comp, 0);

-		fTCBeginStep.setToolTipText("Number of \"cumulated\" steps "

-				+ "before begining the verification cover");

-		fTCBeginStep.setEnabled(false);

-

-		Group groupCommon = SWTFactory.createGroup(groupTCProperty,

-				"&Common Coverage Configuration",

-				4, 2, GridData.FILL_HORIZONTAL);

-

-		Composite compCommon = SWTFactory.createComposite(

-				groupCommon, 1, 1, GridData.FILL_HORIZONTAL);

-		fTCHeuristic = new BooleanFieldEditor(fParentTab,

-				ATTR_TRANSITION_COVERAGE_HEURISTIC,

-				"&Heuristic", compCommon, true);

-		fTCHeuristic.setToolTipText("Activate the use of heuristics");

-

-		compCommon = SWTFactory.createComposite(

-				groupCommon, 1, 1, GridData.FILL_HORIZONTAL);

-		fTCStop = new BooleanFieldEditor(fParentTab,

-				ATTR_TRANSITION_COVERAGE_STOP, "&Stop", compCommon, true);

-		fTCStop.setToolTipText("Stop the symbolic excution "

-				+ "as soon as the coverage is completed");

-

-		compCommon = SWTFactory.createComposite(

-				groupCommon, 1, 1, GridData.FILL_HORIZONTAL);

-		fTCSlice = new BooleanFieldEditor(fParentTab,

-				ATTR_TRANSITION_COVERAGE_SLICE, "&Slice", compCommon, true);

-		fTCSlice.setToolTipText("Pruning symbolic execution "

-				+ "graph at the end of the analysis");

-

-		compCommon = SWTFactory.createComposite(

-				groupCommon, 1, 1, GridData.FILL_HORIZONTAL);

-		fTCMinimize = new BooleanFieldEditor(fParentTab,

-				ATTR_TRANSITION_COVERAGE_MINIMIZE,

-				"&Minimize", compCommon, true);

-		fTCMinimize.setToolTipText(

-				"Stop the symbolic execution at the earliest");

-

-

-		Composite comp3 = SWTFactory.createComposite(

-				groupTCProperty, 2, 1, GridData.FILL_HORIZONTAL);

-		SWTFactory.createLabel(comp3, "&Scope:", 1);

-		fTCScopeCombo = SWTFactory.createCombo(comp3,

-				SWT.DROP_DOWN | SWT.READ_ONLY, 1, SCOPE_COMBO_ITEMS);

-		fTCScopeCombo.addSelectionListener(fListener);

-

-		// TRANSITION COVERAGE - section HEURISTIC

-		//

-		Group groupTCHeuristic = SWTFactory.createGroup(

-				fCompositeControl,

-				"First Heuristic Configuration",

-				2, 1, GridData.FILL_HORIZONTAL);

-

-		Group group = SWTFactory.createGroup(groupTCHeuristic,

-				"&Configuration", 1, 1, GridData.FILL_HORIZONTAL);

-

-		comp = SWTFactory.createComposite(

-				group, 2, 1, GridData.FILL_HORIZONTAL);

-

-		SWTFactory.createLabel(comp, "&Start:", 1);

-		fTCHeuristicStartCombo = SWTFactory.createCombo(

-				comp, SWT.DROP_DOWN | SWT.READ_ONLY,

-				1, HEURISTIC_START_COMBO_ITEMS);

-		fTCHeuristicStartCombo.addSelectionListener(fListener);

-

-		fTCHeuristicTrials = new IntegerFieldEditor(fParentTab,

-				ATTR_TRANSITION_COVERAGE_HEURISTIC_TRIALS, "&Trials:", comp, -1);

-		fTCHeuristicTrials.widthInChars = 10;

-		//fTCHeuristicTrials.setTextLimit(20);

-

-

-		group = SWTFactory.createGroup(groupTCHeuristic,

-				"&Target Objective", 1, 1, GridData.FILL_HORIZONTAL);

-

-		comp = SWTFactory.createComposite(

-				group, 2, 1, GridData.FILL_HORIZONTAL);

-

-		fTCObjectiveRate = new IntegerFieldEditor(fParentTab,

-				ATTR_TRANSITION_COVERAGE_OBJECTIVE_RATE, "&Rate:", comp, 100);

-		//fTCObjectiveRate.widthInChars = 3;

-		fTCObjectiveRate.setTextLimit(3);

-

-		fTCObjectiveRest = new IntegerFieldEditor(fParentTab,

-				ATTR_TRANSITION_COVERAGE_OBJECTIVE_REST, "&Rest:", comp, 0);

-		//fTCObjectiveRest.widthInChars = 3;

-		fTCObjectiveRest.setTextLimit(3);

-

-

-		group = SWTFactory.createGroup(groupTCHeuristic,

-				"&Lookahead Scope", 1, 2, GridData.FILL_HORIZONTAL);

-

-		comp = SWTFactory.createComposite(

-				group, 2, 1, GridData.FILL_HORIZONTAL);

-

-		fTCCoverageHeight = new IntegerFieldEditor(fParentTab,

-				ATTR_TRANSITION_COVERAGE_LOOKAHEAD_DEPTH, "&Depth:", comp, 7);

-

-		fTCCoverageHeightReachedLimit = new IntegerFieldEditor(fParentTab,

-				ATTR_TRANSITION_COVERAGE_LOOKAHEAD_WIDTH, "&Width:", comp, 42);

-

-

-		Group groupStrategy = SWTFactory.createGroup(groupTCHeuristic,

-				"Strategy of Selection of Contexts in the Queue w.r.t. "

-				+ "the number of Fireable transitions",

-				3, 2, GridData.FILL_HORIZONTAL);

-

-

-		group = SWTFactory.createGroup(groupStrategy,

-				"&Strongly Fireable Transition Selection",

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		Composite compGroup = SWTFactory.createComposite(

-				group, 2, 1, GridData.FILL_HORIZONTAL);

-

-		comp = SWTFactory.createComposite(

-				compGroup, 1, 2, GridData.FILL_HORIZONTAL);

-

-		fTCHitStronglyRandom = new BooleanFieldEditor(fParentTab,

-				ATTR_TRANSITION_COVERAGE_HIT_STRONGLY_RANDOM,

-				"&Hit Random", comp, false);

-

-		fTCHitStronglyCount = new IntegerFieldEditor(fParentTab,

-				ATTR_TRANSITION_COVERAGE_HIT_STRONGLY_COUNT,

-				"&Hit Count:", compGroup, 1);

-

-

-		group = SWTFactory.createGroup(groupStrategy,

-				"&Weakly Fireable Transition Selection",

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		compGroup = SWTFactory.createComposite(

-				group, 2, 1, GridData.FILL_HORIZONTAL);

-

-		comp = SWTFactory.createComposite(

-				compGroup, 1, 2, GridData.FILL_HORIZONTAL);

-

-		fTCHitWeaklyRandom = new BooleanFieldEditor(fParentTab,

-				ATTR_TRANSITION_COVERAGE_HIT_WEAKLY_RANDOM,

-				"&Hit Random", comp, false);

-

-		fTCHitWeaklyCount = new IntegerFieldEditor(fParentTab,

-				ATTR_TRANSITION_COVERAGE_HIT_WEAKLY_COUNT,

-				"&Hit Count:", compGroup, 1);

-

-

-		group = SWTFactory.createGroup(groupStrategy,

-				"&Other Fireable Transition Selection",

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		compGroup = SWTFactory.createComposite(

-				group, 2, 1, GridData.FILL_HORIZONTAL);

-

-		comp = SWTFactory.createComposite(

-				compGroup, 1, 2, GridData.FILL_HORIZONTAL);

-

-		fTCHitOtherRandom = new BooleanFieldEditor(fParentTab,

-				ATTR_TRANSITION_COVERAGE_HIT_OTHER_RANDOM,

-				"&Hit Random", comp, false);

-

-		fTCHitOtherCount = new IntegerFieldEditor(fParentTab,

-				ATTR_TRANSITION_COVERAGE_HIT_OTHER_COUNT,

-				"&Hit Count:", compGroup, 1);

-

-

-		groupTCHeuristic = SWTFactory.createGroup(

-				fCompositeControl,

-				"Second Heuristic Configuration",

-				2, 1, GridData.FILL_HORIZONTAL);

-

-		group = SWTFactory.createGroup(groupTCHeuristic,

-				"&Directive Trace: Strategy & Limit",

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-

-		SWTFactory.createLabel(comp, "&Heuristic:", 1);

-		fTCDirectiveTraceHeuristicCombo = SWTFactory.createCombo(

-				comp, SWT.DROP_DOWN | SWT.READ_ONLY, 1,

-				DIRECTIVE_TRACE_HEURISTIC_COMBO_ITEMS);

-		fTCDirectiveTraceHeuristicCombo.addSelectionListener(fListener);

-

-		fTCDirectiveTraceCountLimit = new IntegerFieldEditor(fParentTab,

-				ATTR_TRANSITION_COVERAGE_DIRECTIVE_TRACE_COUNT_LIMIT,

-				"&Count:", comp, 8);

-

-		fTCDirectiveTraceSizeLimit = new IntegerFieldEditor(fParentTab,

-				ATTR_TRANSITION_COVERAGE_DIRECTIVE_TRACE_SIZE_LIMIT,

-				"&Size:", comp, 8);

-	}

-

-

-	private void setEnableGroupTCPage(ILaunchConfiguration configuration) {

-		String fAnalysisProfile;

-		String fModelAnalysis;

-		try {

-			fAnalysisProfile = configuration.getAttribute(

-					ATTR_SPECIFICATION_ANALYSIS_PROFILE, "");

-			fModelAnalysis = configuration.getAttribute(

-					ATTR_SPECIFICATION_MODEL_ANALYSIS, "");

-

-			setVisible(fAnalysisProfile.equals(ANALYSIS_PROFILE_MODEL)

-					&& fModelAnalysis.equals(

-							ANALYSIS_PROFILE_MODEL_COVERAGE_TRANSITION) );

-		}

-		catch (CoreException e) {

-			// TODO Auto-generated catch block

-			e.printStackTrace();

-		}

-	}

-

-

-	@Override

-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration) {

-//		fTCBeginStep.setDefaults(configuration);

-		configuration.setAttribute(ATTR_TRANSITION_COVERAGE_BEGIN_STEP, 0);

-

-//		fTCStop.setDefaults(configuration);

-		configuration.setAttribute(ATTR_TRANSITION_COVERAGE_STOP, true);

-

-//		fTCMinimize.setDefaults(configuration);

-		configuration.setAttribute(ATTR_TRANSITION_COVERAGE_MINIMIZE, true);

-

-//		fTCSlice.setDefaults(configuration);

-		configuration.setAttribute(ATTR_TRANSITION_COVERAGE_SLICE, true);

-

-//		fTCHeuristic.setDefaults(configuration);

-		configuration.setAttribute(ATTR_TRANSITION_COVERAGE_HEURISTIC, true);

-

-		configuration.setAttribute(

-				ATTR_TRANSITION_COVERAGE_SCOPE, SCOPE_COMBO_ITEM_MODEL);

-

-		configuration.setAttribute(

-				ATTR_TRANSITION_COVERAGE_HEURISTIC_START, "BASIC");

-

-//		fTCHeuristicTrials.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TRANSITION_COVERAGE_HEURISTIC_TRIALS, -1);

-

-//		fTCObjectiveRate.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TRANSITION_COVERAGE_OBJECTIVE_RATE, 100);

-

-//		fTCObjectiveRest.setDefaults(configuration);

-		configuration.setAttribute(ATTR_TRANSITION_COVERAGE_OBJECTIVE_REST, 0);

-

-		configuration.setAttribute(

-				ATTR_TRANSITION_COVERAGE_DIRECTIVE_TRACE_HEURISTIC, "SMART");

-

-//		fTCDirectiveTraceCountLimit.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TRANSITION_COVERAGE_DIRECTIVE_TRACE_COUNT_LIMIT, 8);

-

-//		fTCDirectiveTraceSizeLimit.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TRANSITION_COVERAGE_DIRECTIVE_TRACE_SIZE_LIMIT, 8);

-

-//		fTCCoverageHeight.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TRANSITION_COVERAGE_LOOKAHEAD_DEPTH, 7);

-

-//		fTCCoverageHeightReachedLimit.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TRANSITION_COVERAGE_LOOKAHEAD_WIDTH, 42);

-

-//		fTCHitStronglyRandom.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TRANSITION_COVERAGE_HIT_STRONGLY_RANDOM, false);

-

-//		fTCHitStronglyCount.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TRANSITION_COVERAGE_HIT_STRONGLY_COUNT, 1);

-

-//		fTCHitWeaklyRandom.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TRANSITION_COVERAGE_HIT_WEAKLY_RANDOM, false);

-

-//		fTCHitWeaklyCount.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TRANSITION_COVERAGE_HIT_WEAKLY_COUNT, 1);

-

-//		fTCHitOtherRandom.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TRANSITION_COVERAGE_HIT_OTHER_RANDOM, false);

-

-//		fTCHitOtherCount.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TRANSITION_COVERAGE_HIT_OTHER_COUNT, 1);

-	}

-

-	@Override

-	public void initializeFrom(ILaunchConfiguration configuration) {

-		setEnableGroupTCPage(configuration);

-

-		fTCBeginStep.initializeFrom(configuration);

-		fTCStop.initializeFrom(configuration);

-		fTCMinimize.initializeFrom(configuration);

-		fTCSlice.initializeFrom(configuration);

-		fTCHeuristic.initializeFrom(configuration);

-

-		try {

-			fTCScope = configuration.getAttribute(

-					ATTR_TRANSITION_COVERAGE_SCOPE, SCOPE_COMBO_ITEM_MODEL);

-		}

-		catch (CoreException e) {

-			e.printStackTrace();

-		}

-

-		switch ( fTCScope ) {

-		case SCOPE_COMBO_ITEM_INSTANCE:

-			fTCScopeCombo.select(0);

-			break;

-		case SCOPE_COMBO_ITEM_MODEL:

-			fTCScopeCombo.select(1);

-			break;

-		default:

-			fTCScopeCombo.select(0);

-			break;

-		}

-

-

-		try {

-			fTCHeuristicStart = configuration.getAttribute(

-					ATTR_TRANSITION_COVERAGE_HEURISTIC_START,

-					HEURISTIC_START_COMBO_ITEM_BASIC);

-		}

-		catch (CoreException e) {

-			e.printStackTrace();

-		}

-

-		switch ( fTCHeuristicStart ) {

-		case HEURISTIC_START_COMBO_ITEM_BASIC:

-			fTCHeuristicStartCombo.select(0);

-			break;

-		case HEURISTIC_START_COMBO_ITEM_NAIVE:

-			fTCHeuristicStartCombo.select(1);

-			break;

-		case HEURISTIC_START_COMBO_ITEM_SMART:

-			fTCHeuristicStartCombo.select(2);

-			break;

-		case HEURISTIC_START_COMBO_ITEM_AGRESSIVE:

-			fTCHeuristicStartCombo.select(3);

-			break;

-		default:

-			fTCHeuristicStartCombo.select(0);

-			break;

-		}

-

-		fTCHeuristicTrials.initializeFrom(configuration);

-		fTCObjectiveRate.initializeFrom(configuration);

-		fTCObjectiveRest.initializeFrom(configuration);

-

-		try {

-			fTCDirectiveTraceHeuristic = configuration.getAttribute(

-					ATTR_TRANSITION_COVERAGE_DIRECTIVE_TRACE_HEURISTIC,

-					DIRECTIVE_TRACE_HEURISTIC_COMBO_ITEM_SMART);

-		} catch (CoreException e) {

-			// TODO Auto-generated catch block

-			e.printStackTrace();

-		}

-

-		switch ( fTCDirectiveTraceHeuristic ) {

-		case DIRECTIVE_TRACE_HEURISTIC_COMBO_ITEM_BASIC:

-			fTCDirectiveTraceHeuristicCombo.select(0);

-			break;

-		case DIRECTIVE_TRACE_HEURISTIC_COMBO_ITEM_NAIVE:

-			fTCDirectiveTraceHeuristicCombo.select(1);

-			break;

-		case DIRECTIVE_TRACE_HEURISTIC_COMBO_ITEM_SMART:

-			fTCDirectiveTraceHeuristicCombo.select(2);

-			break;

-		case DIRECTIVE_TRACE_HEURISTIC_COMBO_ITEM_AGRESSIVE:

-			fTCDirectiveTraceHeuristicCombo.select(3);

-			break;

-		default:

-			fTCDirectiveTraceHeuristicCombo.select(0);

-			break;

-		}

-

-		fTCDirectiveTraceCountLimit.initializeFrom(configuration);

-		fTCDirectiveTraceSizeLimit.initializeFrom(configuration);

-		fTCCoverageHeight.initializeFrom(configuration);

-		fTCCoverageHeightReachedLimit.initializeFrom(configuration);

-		fTCHitStronglyRandom.initializeFrom(configuration);

-		fTCHitStronglyCount.initializeFrom(configuration);

-		fTCHitWeaklyRandom.initializeFrom(configuration);

-		fTCHitWeaklyCount.initializeFrom(configuration);

-		fTCHitOtherRandom.initializeFrom(configuration);

-		fTCHitOtherCount.initializeFrom(configuration);

-	}

-

-	@Override

-	public void performApply(ILaunchConfigurationWorkingCopy configuration) {

-		setEnableGroupTCPage(configuration);

-

-		fTCBeginStep.performApply(configuration);

-		fTCStop.performApply(configuration);

-		fTCMinimize.performApply(configuration);

-		fTCSlice.performApply(configuration);

-		fTCHeuristic.performApply(configuration);

-

-		configuration.setAttribute(

-				ATTR_TRANSITION_COVERAGE_SCOPE, fTCScope);

-

-		configuration.setAttribute(

-				ATTR_TRANSITION_COVERAGE_HEURISTIC_START, fTCHeuristicStart);

-

-		fTCHeuristicTrials.performApply(configuration);

-		fTCObjectiveRate.performApply(configuration);

-		fTCObjectiveRest.performApply(configuration);

-

-		configuration.setAttribute(

-				ATTR_TRANSITION_COVERAGE_DIRECTIVE_TRACE_HEURISTIC,

-				fTCDirectiveTraceHeuristic);

-

-		fTCDirectiveTraceCountLimit.performApply(configuration);

-		fTCDirectiveTraceSizeLimit.performApply(configuration);

-		fTCCoverageHeight.performApply(configuration);

-		fTCCoverageHeightReachedLimit.performApply(configuration);

-		fTCHitStronglyRandom.performApply(configuration);

-		fTCHitStronglyCount.performApply(configuration);

-		fTCHitWeaklyRandom.performApply(configuration);

-		fTCHitWeaklyCount.performApply(configuration);

-		fTCHitOtherRandom.performApply(configuration);

-		fTCHitOtherCount.performApply(configuration);

-	}

-

-	@Override

-	public boolean isValid(ILaunchConfiguration launchConfig) {

-		if( ! fTCBeginStep.isValid() ) {

-			setErrorMessage("Begin Step is not a valid integer");

-			return false;

-		}

-		if( ! fTCHeuristicTrials.isValid() ) {

-			setErrorMessage("Heuristic Trials is not a valid integer");

-			return false;

-		}

-		if( ! fTCObjectiveRate.isValid() ) {

-			setErrorMessage("Objective Rate is not a valid integer");

-			return false;

-		}

-		if( ! fTCObjectiveRest.isValid() ) {

-			setErrorMessage("Objective Rest is not a valid integer");

-			return false;

-		}

-		if( ! fTCDirectiveTraceCountLimit.isValid() ) {

-			setErrorMessage("Directive Trace Count Limit is not a valid integer");

-			return false;

-		}

-		if( ! fTCDirectiveTraceSizeLimit.isValid() ) {

-			setErrorMessage("Directive Trace Size Limit is not a valid integer");

-			return false;

-		}

-		if( ! fTCCoverageHeight.isValid() ) {

-			setErrorMessage("Coverage Height is not a valid integer");

-			return false;

-		}

-		if( ! fTCCoverageHeightReachedLimit.isValid() ) {

-			setErrorMessage("Coverage Height Reached Limit is not a valid integer");

-			return false;

-		}

-		if( ! fTCHitStronglyCount.isValid() ) {

-			setErrorMessage("Hit Strongly Count is not a valid integer");

-			return false;

-		}

-		if( ! fTCHitWeaklyCount.isValid() ) {

-			setErrorMessage("Hit Weakly Count is not a valid integer");

-			return false;

-		}

-		if( ! fTCHitOtherCount.isValid() ) {

-			setErrorMessage("Hit Other Count is not a valid integer");

-			return false;

-		}

-

-		return true;

-	}

-

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/MainTabBehaviorSelectionPage.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/MainTabBehaviorSelectionPage.java
deleted file mode 100644
index 87faae3..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/MainTabBehaviorSelectionPage.java
+++ /dev/null
@@ -1,139 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr

- *   - Initial API and Implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.views.launchconfigurations.components.pages;

-

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.ui.views.editors.impls.StringFieldEditor;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationEditorComposite;

-import org.eclipse.efm.ui.views.utils.SWTFactory;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.widgets.Composite;

-

-public class MainTabBehaviorSelectionPage extends AbstractTabComponentPage {

-

-	private StringFieldEditor fBehaviorSpecificationStringField;

-

-

-	/**

-	 * Constructor

-	 * @param parentTab

-	 */

-	public MainTabBehaviorSelectionPage(

-			ILaunchConfigurationEditorComposite parentTab) {

-		super(parentTab);

-	}

-

-	public void createControl(Composite parent) {

-		fCompositeParent = parent;

-

-		fCompositeControl = SWTFactory.createGroup(parent,

-				"&Behavior Characterization", 1, 1, GridData.FILL_HORIZONTAL);

-		fCompositeControl.setToolTipText(BEHAVIOR_DESCRIPTION);

-

-//		compModelAnalysisBehavior = SWTFactory.createComposite(parent, 1, 1,

-//				GridData.FILL_HORIZONTAL);

-//		GridData gridData1 = new GridData(GridData.FILL_HORIZONTAL);

-//		gridData1.horizontalIndent = DETAIL_HORIZONTAL_INDENT;

-//		compModelAnalysisBehavior.setLayoutData(gridData1);

-

-		Composite comp2 = SWTFactory.createComposite(

-				fCompositeControl, 1, 1, GridData.FILL_HORIZONTAL);

-		fBehaviorSpecificationStringField = new StringFieldEditor(fParentTab,

-				ATTR_BEHAVIOR_ANALYSIS_ELEMENT_NAME_LIST, "",

-				comp2, BEHAVIOR_DESCRIPTION, SWT.MULTI);

-

-		fBehaviorSpecificationStringField.setToolTipText(BEHAVIOR_DESCRIPTION);

-	}

-

-

-	@Override

-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration) {

-		configuration.setAttribute(

-				ATTR_BEHAVIOR_ANALYSIS_ELEMENT_NAME_LIST,

-				BEHAVIOR_INITIAL_SAMPLE);

-

-	}

-

-	@Override

-	public void initializeFrom(ILaunchConfiguration configuration) {

-		fBehaviorSpecificationStringField.initializeFrom(configuration);

-

-	}

-

-	@Override

-	public void performApply(ILaunchConfigurationWorkingCopy configuration) {

-		fBehaviorSpecificationStringField.performApply(configuration);

-	}

-

-	@Override

-	public boolean isValid(ILaunchConfiguration launchConfig) {

-		String[] tabString = fBehaviorSpecificationStringField

-				.getStringValue().split(";\n");

-

-		String kind;

-		int pos;

-

-		for(String eltString : tabString) {

-			eltString = eltString.trim();

-

-			if( eltString.length() == 0 ) {

-				setErrorMessage("You must select at least one element");

-				return false;

-			}

-			else if( eltString.startsWith("//") ) {

-				//!! COMMENT

-			}

-			else if( (pos = eltString.indexOf('=')) > 0 ) {

-				kind = eltString.substring(0, pos).trim();

-//				object = eltString.substring(pos+1).trim();

-

-				if( kind.equals( "transition" ) ) {

-					// Check if the object is a transition and exists !

-				}

-				else if( kind.equals( "state" ) ) {

-					// Check if the object is a state and exists !

-				}

-

-				else if( kind.equals( "input" ) ) {

-					// Check if the object is an input port/signal and exists !

-				}

-				else if( kind.equals( "output" ) ) {

-					// Check if the object is an output port/signal and exists !

-				}

-

-				else if( kind.equals( "inout" ) ) {

-					// Check if the object is an inout port/signal and exists !

-				}

-				else if( kind.equals( "com" ) ) {

-					// Check if the object is a communicated port/signal and exists !

-				}

-

-				else {

-					setErrorMessage("The element \"" +

-						eltString + "\" is not a valid element");

-					return false;

-				}

-			}

-			else {

-				setErrorMessage("The element \"" +

-					eltString + "\" is not a valid element");

-				return false;

-			}

-		}

-

-		return true;

-	}

-

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/MainTabTestOfflinePage.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/MainTabTestOfflinePage.java
deleted file mode 100644
index cdaf9f3..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/MainTabTestOfflinePage.java
+++ /dev/null
@@ -1,369 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Alain Faivre (CEA LIST) alain.faivre@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.views.launchconfigurations.components.pages;

-

-import java.io.File;

-

-import org.eclipse.core.resources.IResource;

-import org.eclipse.core.resources.ResourcesPlugin;

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.core.workflow.Activator;

-//import org.eclipse.efm.runconfiguration.ui.tabs.MainTab;

-import org.eclipse.efm.ui.views.editors.impls.BooleanFieldEditor;

-import org.eclipse.efm.ui.views.editors.impls.StringFieldEditor;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationEditorComposite;

-import org.eclipse.efm.ui.views.utils.SWTFactory;

-import org.eclipse.jface.dialogs.Dialog;

-import org.eclipse.jface.dialogs.IDialogSettings;

-import org.eclipse.jface.window.Window;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.accessibility.AccessibleAdapter;

-import org.eclipse.swt.accessibility.AccessibleEvent;

-import org.eclipse.swt.events.ModifyEvent;

-import org.eclipse.swt.events.ModifyListener;

-import org.eclipse.swt.events.SelectionAdapter;

-import org.eclipse.swt.events.SelectionEvent;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.widgets.Button;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Group;

-import org.eclipse.swt.widgets.Text;

-import org.eclipse.ui.dialogs.ContainerSelectionDialog;

-import org.eclipse.ui.dialogs.ElementTreeSelectionDialog;

-import org.eclipse.ui.model.WorkbenchContentProvider;

-import org.eclipse.ui.model.WorkbenchLabelProvider;

-import org.eclipse.ui.views.navigator.ResourceComparator;

-

-public class MainTabTestOfflinePage extends AbstractTabComponentPage {

-

-	/////////////////////////////////////

-	// TEST OFFLINE // INCUBATION MODE

-	/////////////////////////////////////

-

-    private Text fTracePathText;

-	private Button fTraceWorkspaceBrowse;

-

-    private Text fTestPurposePathText;

-	private Button fTestPurposeWorkspaceBrowse;

-

-	private BooleanFieldEditor fEnabledTraceConfigurationBooleanField;

-

-	private Group fGroupObservable;

-	private StringFieldEditor fObservableStringField;

-

-	private Group fGroupControllable;

-	private StringFieldEditor fControllableStringField;

-	

-	/**

-	 * Constructor

-	 * @param parentTab

-	 */

-	public MainTabTestOfflinePage(

-			ILaunchConfigurationEditorComposite parentTab) {

-		super(parentTab);

-	}

-

-	/**

-	 * Modify listener that simply updates the owning launch configuration dialog.

-	 */

-	private ModifyListener fBasicModifyListener = new ModifyListener() {

-		@Override

-		public void modifyText(ModifyEvent evt) {

-			fParentTab.propagateUpdateJobScheduling();

-		}

-	};

-

-	/**

-	 * Returns the {@link IDialogSettings} for the given id

-	 *

-	 * @param id the id of the dialog settings to get

-	 * @return the {@link IDialogSettings} to pass into the {@link ContainerSelectionDialog}

-	 * @since 3.6

-	 */

-	IDialogSettings getDialogBoundsSettings(String id) {

-		IDialogSettings settings = Activator.getDefault().getDialogSettings();

-		IDialogSettings section = settings.getSection(id);

-		if(section == null) {

-			section = settings.addNewSection(id);

-		}

-		return section;

-	}

-

-

-	@Override

-	public void createControl(Composite parent) {

-		fCompositeParent = parent;

-

-		fCompositeControl = SWTFactory.createGroup(

-				fCompositeParent, "&Offline Testing Configuration",

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		Group group  = SWTFactory.createGroup(fCompositeControl,

-				"&Trace File Selection", 1, 1, GridData.FILL_HORIZONTAL);

-

-		Composite comp = SWTFactory.createComposite(

-				group, 3, 1, GridData.FILL_HORIZONTAL);

-

-		fTracePathText = SWTFactory.createSingleText(comp, 1);

-		fTracePathText.getAccessible().addAccessibleListener(

-				new AccessibleAdapter() {

-					@Override

-					public void getName(AccessibleEvent e) {

-						e.result = "Trace File";

-					}

-				} );

-		fTracePathText.addModifyListener(fBasicModifyListener);

-

-		fTraceWorkspaceBrowse =

-				SWTFactory.createPushButton(comp, "&Workspace...", null);

-		fTraceWorkspaceBrowse.addSelectionListener(new SelectionAdapter() {

-			@Override

-			public void widgetSelected(SelectionEvent e) {

-				ElementTreeSelectionDialog dialog =

-						new ElementTreeSelectionDialog(

-								parent.getShell(),

-								new WorkbenchLabelProvider(),

-								new WorkbenchContentProvider() );

-				dialog.setTitle("Select a Resource:");

-				dialog.setMessage("Select a resource to redirect output to:");

-				dialog.setInput(ResourcesPlugin.getWorkspace().getRoot());

-				dialog.setComparator(

-						new ResourceComparator(ResourceComparator.NAME));

-				dialog.setDialogBoundsSettings(

-						getDialogBoundsSettings(WORKSPACE_SELECTION_DIALOG),

-						Dialog.DIALOG_PERSISTSIZE);

-				if(dialog.open() == Window.OK) {

-					IResource resource = (IResource) dialog.getFirstResult();

-					if(resource != null) {

-						String arg = resource.getLocation().toString();

-						fTracePathText.setText(arg);

-					}

-				}

-			}

-		});

-

-		// Test Purpose File Selection

-		//

-		group = SWTFactory.createGroup(fCompositeControl,

-				"&Test Purpose File Selection", 1, 1, GridData.FILL_HORIZONTAL);

-

-		comp = SWTFactory.createComposite(

-				group, 2, 1, GridData.FILL_HORIZONTAL);

-		fTestPurposePathText = SWTFactory.createSingleText(comp, 1);

-		fTestPurposePathText.getAccessible().addAccessibleListener(

-				new AccessibleAdapter() {

-					@Override

-					public void getName(AccessibleEvent e) {

-						e.result = "Test Purpose File";

-					}

-				} );

-		fTestPurposePathText.addModifyListener(fBasicModifyListener);

-

-		fTestPurposeWorkspaceBrowse =

-				SWTFactory.createPushButton(comp, "&Workspace...", null);

-		fTestPurposeWorkspaceBrowse.addSelectionListener(

-				new SelectionAdapter() {

-					@Override

-					public void widgetSelected(SelectionEvent e) {

-						ElementTreeSelectionDialog dialog =

-								new ElementTreeSelectionDialog(

-										parent.getShell(),

-										new WorkbenchLabelProvider(),

-										new WorkbenchContentProvider());

-						dialog.setTitle("Select a Resource:");

-						dialog.setMessage(

-								"Select a resource to redirect output to:");

-						dialog.setInput(

-								ResourcesPlugin.getWorkspace().getRoot());

-						dialog.setComparator(

-								new ResourceComparator(

-										ResourceComparator.NAME));

-						dialog.setDialogBoundsSettings(

-								getDialogBoundsSettings(

-										WORKSPACE_SELECTION_DIALOG),

-								Dialog.DIALOG_PERSISTSIZE);

-						if(dialog.open() == Window.OK) {

-							IResource resource =

-									(IResource) dialog.getFirstResult();

-							if(resource != null) {

-								String arg = resource.getLocation().toString();

-								fTestPurposePathText.setText(arg);

-							}

-						}

-					}

-				});

-

-

-		comp = SWTFactory.createComposite(

-				fCompositeControl, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fEnabledTraceConfigurationBooleanField =

-				new BooleanFieldEditor(fParentTab,

-						ATTR_TEST_OFFLINE_ENABLED_TRACE_CONFIGURATION,

-						"&Enable Observable / Controllable Configuration",

-						comp, false);

-

-

-		fGroupObservable  = SWTFactory.createGroup(fCompositeControl,

-				"&Observable", 1, 1, GridData.FILL_HORIZONTAL);

-		fGroupObservable.setToolTipText(TEST_OFFLINE_OBSERVABLE);

-

-		comp = SWTFactory.createComposite(fGroupObservable,

-				1, 1, GridData.FILL_HORIZONTAL);

-		comp.setToolTipText(TEST_OFFLINE_OBSERVABLE);

-

-		fObservableStringField = new StringFieldEditor(fParentTab,

-				ATTR_TEST_OFFLINE_OBSERVABLE_SPECIFICATION, "", comp,

-				DEFAULT_TEST_OFFLINE_OBSERVABLE_SPECIFICATION, SWT.MULTI);

-

-		fGroupControllable = SWTFactory.createGroup(fCompositeControl,

-				"&Controllable", 1, 1, GridData.FILL_HORIZONTAL);

-		fGroupControllable.setToolTipText(TEST_OFFLINE_CONTROLLABLE);

-

-		comp = SWTFactory.createComposite(fGroupControllable,

-				1, 1, GridData.FILL_HORIZONTAL);

-		comp.setToolTipText(TEST_OFFLINE_CONTROLLABLE);

-

-		fControllableStringField = new StringFieldEditor(fParentTab,

-				ATTR_TEST_OFFLINE_CONTROLLABLE_SPECIFICATION, "", comp,

-				DEFAULT_TEST_OFFLINE_CONTROLLABLE_SPECIFICATION, SWT.MULTI);

-	}

-

-

-	private void updateEnablingTraceConfiguration() {

-		boolean enabled =

-				fEnabledTraceConfigurationBooleanField.getBooleanValue();

-

-		fParentTab.propagateVisibility(fGroupObservable, enabled);

-		fParentTab.propagateVisibility(fGroupControllable, enabled);

-	}

-

-

-

-	@Override

-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration) {

-		configuration.setAttribute(

-				ATTR_TEST_OFFLINE_TRACE_FILE_LOCATION,

-				DEFAULT_TEST_OFFLINE_TRACE_FILE_LOCATION);

-

-		configuration.setAttribute(

-				ATTR_TEST_OFFLINE_PURPOSE_FILE_LOCATION,

-				DEFAULT_TEST_OFFLINE_PURPOSE_FILE_LOCATION);

-

-		configuration.setAttribute(

-				ATTR_TEST_OFFLINE_ENABLED_TRACE_CONFIGURATION, false);

-

-		configuration.setAttribute(

-				ATTR_TEST_OFFLINE_OBSERVABLE_SPECIFICATION,

-				DEFAULT_TEST_OFFLINE_OBSERVABLE_SPECIFICATION);

-

-		configuration.setAttribute(

-				ATTR_TEST_OFFLINE_CONTROLLABLE_SPECIFICATION,

-				DEFAULT_TEST_OFFLINE_CONTROLLABLE_SPECIFICATION);

-	}

-

-

-	@Override

-	public void initializeFrom(ILaunchConfiguration configuration) {

-		String traceFile;

-		try {

-			traceFile = configuration.getAttribute(

-					ATTR_TEST_OFFLINE_TRACE_FILE_LOCATION,

-					DEFAULT_TEST_OFFLINE_TRACE_FILE_LOCATION);

-		} catch( CoreException e ) {

-			e.printStackTrace();

-			traceFile = DEFAULT_TEST_OFFLINE_TRACE_FILE_LOCATION;

-		}

-		fTracePathText.setText(traceFile);

-

-		String testPurposeFile;

-		try {

-			testPurposeFile = configuration.getAttribute(

-					ATTR_TEST_OFFLINE_PURPOSE_FILE_LOCATION,

-					DEFAULT_TEST_OFFLINE_PURPOSE_FILE_LOCATION);

-		} catch( CoreException e ) {

-			e.printStackTrace();

-			testPurposeFile = DEFAULT_TEST_OFFLINE_PURPOSE_FILE_LOCATION;

-		}

-		fTestPurposePathText.setText(testPurposeFile);

-

-		fEnabledTraceConfigurationBooleanField.initializeFrom(configuration);

-		fObservableStringField.initializeFrom(configuration);

-		fControllableStringField.initializeFrom(configuration);

-

-		updateEnablingTraceConfiguration();

-	}

-

-	@Override

-	public void performApply(ILaunchConfigurationWorkingCopy configuration) {

-		configuration.setAttribute(

-				ATTR_TEST_OFFLINE_TRACE_FILE_LOCATION,

-				fTracePathText.getText());

-

-		configuration.setAttribute(

-				ATTR_TEST_OFFLINE_PURPOSE_FILE_LOCATION,

-				fTestPurposePathText.getText());

-

-

-		fEnabledTraceConfigurationBooleanField.performApply(configuration);

-

-		fObservableStringField.performApply(configuration);

-		fControllableStringField.performApply(configuration);

-

-		updateEnablingTraceConfiguration();

-	}

-

-

-	@Override

-	public boolean isValid(ILaunchConfiguration launchConfig) {

-

-		String filePath = fTestPurposePathText.getText();

-

-		if( (filePath == null) || filePath.isEmpty() ) {

-			setWarningMessage("The ressource Test Offline test "

-					+ "purpose file path is empty (or null)");

-

-			return false;

-		}

-		else if( filePath.equals(

-				DEFAULT_TEST_OFFLINE_PURPOSE_FILE_LOCATION) ) {

-			//!! NOTHING

-		}

-		else if( ! ( new File(filePath) ).isFile() ) {

-			setWarningMessage("The ressource Test Offline test "

-					+ "purpose file \"" + filePath + "\" does not exist.");

-

-			return false;

-		}

-

-

-		filePath = fTracePathText.getText();

-

-		if( (filePath == null) || filePath.isEmpty() ) {

-			setErrorMessage("The ressource Test Offline trace "

-					+ "file path is empty (or null)");

-

-			return false;

-		}

-		else if( ! ( new File(filePath) ).exists() ) {

-			setErrorMessage("The ressource Test Offline trace "

-					+ "file \"" + filePath + "\" does not exist.");

-

-			return false;

-		}

-

-		return true;

-	}

-

-

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/MainTabTransitionCoveragePage.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/MainTabTransitionCoveragePage.java
deleted file mode 100644
index d25267f..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/MainTabTransitionCoveragePage.java
+++ /dev/null
@@ -1,512 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr

- *   - Initial API and Implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.views.launchconfigurations.components.pages;

-

-import java.io.BufferedReader;

-import java.io.File;

-import java.io.FileInputStream;

-import java.io.InputStream;

-import java.io.InputStreamReader;

-import java.util.ArrayList;

-import java.util.List;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.ui.views.editors.impls.BooleanFieldEditor;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationEditorComposite;

-import org.eclipse.efm.ui.views.utils.SWTFactory;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.events.MouseEvent;

-import org.eclipse.swt.events.MouseListener;

-import org.eclipse.swt.events.SelectionEvent;

-import org.eclipse.swt.events.SelectionListener;

-import org.eclipse.swt.graphics.Rectangle;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Table;

-import org.eclipse.swt.widgets.TableColumn;

-import org.eclipse.swt.widgets.TableItem;

-

-public class MainTabTransitionCoveragePage extends AbstractTabComponentPage {

-

-	private BooleanFieldEditor fEnabledDetailedSelectionBooleanField;

-

-	private Composite fCompDetailedSelection;

-

-	private Table fAllTransitionsListTable;

-	private TableColumn fAllTransitionsListTableColumn;

-

-	private Table fSelectedTransitionsTable;

-	private TableColumn fSelectedTransitionsTableColumn;

-

-	private List< String > fAllTransitionsList;

-	private List< String > fSelectedTransitionsList;

-

-	private String fModelFilePath;

-

-

-	/**

-	 * Constructor

-	 * @param parentTab

-	 */

-	public MainTabTransitionCoveragePage(

-			ILaunchConfigurationEditorComposite parentTab) {

-		super(parentTab);

-

-		fModelFilePath = null;

-	}

-

-

-	@Override

-	public void createControl(Composite parent) {

-		fCompositeParent = parent;

-

-		fCompositeControl = SWTFactory.createGroup(

-				fCompositeParent,

-				"&Selection of Transitions (default: all)",

-				1, 1, GridData.FILL_HORIZONTAL );

-

-		Composite comp = SWTFactory.createComposite(

-				fCompositeControl, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fEnabledDetailedSelectionBooleanField =

-				new BooleanFieldEditor(fParentTab,

-						ATTR_ENABLED_TRANSITION_COVERAGE_DETAILS_SELECTION,

-						"&Enable Transitions Selection", comp, false);

-

-// ==================================================================================

-

-		fCompDetailedSelection = SWTFactory.createComposite(

-				comp, 2, 1,  GridData.FILL_HORIZONTAL);

-

-//		IntegerFieldEditor test = new IntegerFieldEditor(this,

-//				TestGenerationTab.ATTR_PROLONGATION_EVALUATION_STEPS,

-//				"&Evaluation Steps:", fCompDetailedSelection, -1);

-//		test = new IntegerFieldEditor(this,

-//				TestGenerationTab.ATTR_PROLONGATION_EVALUATION_STEPS,

-//				"&Evaluation Steps:", fCompDetailedSelection, -1);

-

-		fAllTransitionsListTable = new Table(

-				fCompDetailedSelection, SWT.CHECK | SWT.BORDER);

-		fAllTransitionsListTableColumn =

-				new TableColumn (fAllTransitionsListTable, SWT.NONE);

-		fAllTransitionsListTableColumn.setText("Transitions List");

-		fAllTransitionsListTable.setHeaderVisible(true);

-

-		fSelectedTransitionsTable =

-				new Table(fCompDetailedSelection, SWT.BORDER);

-		fSelectedTransitionsTableColumn =

-				new TableColumn(fSelectedTransitionsTable, SWT.NONE);

-		fSelectedTransitionsTableColumn.setText("Selected transitions");

-		fSelectedTransitionsTable.setHeaderVisible(true);

-

-// ==================================================================================

-/*

-		fCompDetailedSelection = SWTFactory.createComposite(

-				parent, 2, 1, GridData.FILL_HORIZONTAL);

-

-		ScrolledComposite scrolledComposite1 = new ScrolledComposite(

-				fCompDetailedSelection, SWT.H_SCROLL | SWT.V_SCROLL);

-		scrolledComposite1.setLayout(new GridLayout());

-		scrolledComposite1.setLayoutData(

-				new GridData(SWT.FILL, SWT.FILL, true, true));

-

-		fAllTransitionsListTable = new Table(scrolledComposite1,

-				SWT.CHECK | SWT.BORDER);

-		fAllTransitionsListTable.setHeaderVisible(true);

-

-		scrolledComposite1.setContent(fAllTransitionsListTable);

-		scrolledComposite1.setExpandHorizontal(true);

-		scrolledComposite1.setExpandVertical(true);

-		scrolledComposite1.setMinSize(

-				fAllTransitionsListTable.computeSize(SWT.DEFAULT, SWT.DEFAULT));

-

-

-		ScrolledComposite scrolledComposite2 = new ScrolledComposite(

-				fCompDetailedSelection, SWT.H_SCROLL | SWT.V_SCROLL);

-		scrolledComposite2.setLayout(new GridLayout());

-		scrolledComposite2.setLayoutData(

-				new GridData(SWT.FILL, SWT.FILL, true, true));

-

-		fSelectedTransitionsTable = new Table(scrolledComposite2, SWT.BORDER);

-		fSelectedTransitionsTable.setHeaderVisible(true);

-

-		scrolledComposite2.setContent(fSelectedTransitionsTable);

-		scrolledComposite2.setExpandHorizontal(true);

-		scrolledComposite2.setExpandVertical(true);

-		scrolledComposite2.setMinSize(

-				fSelectedTransitionsTable.computeSize(

-						SWT.DEFAULT, SWT.DEFAULT));

-

-		fAllTransitionsListTableColumn =

-		 		new TableColumn(fAllTransitionsListTable, SWT.NONE);

-		fAllTransitionsListTableColumn.setText("Transitions to be selected");

-		fAllTransitionsListTableColumn.setWidth(10);

-

-		fSelectedTransitionsTableColumn =

-				new TableColumn(fSelectedTransitionsTable, SWT.NONE);

-		fSelectedTransitionsTableColumn.setText("Selected transitions");

-		fSelectedTransitionsTableColumn.setWidth(10);

-

-*/

-

-// ==================================================================================

-

-		int listHeight = fAllTransitionsListTable.getItemHeight() * 10;

-		Rectangle trim =

-				fAllTransitionsListTable.computeTrim(0, 0, 0, listHeight);

-

-		GridData gridDataLeft = new GridData();

-		gridDataLeft.heightHint = trim.height;

-		gridDataLeft.horizontalIndent = 0;

-		gridDataLeft.verticalIndent = 10;

-		fAllTransitionsListTable.setLayoutData(gridDataLeft);

-

-		GridData gridDataRight = new GridData();

-		gridDataRight.heightHint = trim.height;

-		gridDataRight.horizontalIndent = 0;

-		gridDataRight.verticalIndent = 10;

-		fSelectedTransitionsTable.setLayoutData(gridDataRight);

-

-		fAllTransitionsListTable.addSelectionListener(

-			new SelectionListener() {

-				@Override

-				public void widgetSelected(SelectionEvent e) {

-					boolean refresh = false;

-

-					if( e.item instanceof TableItem )

-					{

-						TableItem selectedItem = (TableItem)( e.item );

-

-						String strItem = selectedItem.getText();

-

-						if( selectedItem.getChecked() )

-						{

-							if( ! fSelectedTransitionsList.contains(strItem) )

-							{

-								fSelectedTransitionsList.add(strItem);

-								refresh = true;

-							}

-						}

-						else if( fSelectedTransitionsList.contains(strItem) )

-						{

-							fSelectedTransitionsList.remove(strItem);

-							refresh = true;

-						}

-					}

-

-					if( refresh ) {

-						fSelectedTransitionsList.sort(null);

-

-						fSelectedTransitionsTable.removeAll();

-

-						for(int i = 0; i < fSelectedTransitionsList.size(); i++)

-						{

-							TableItem item = new TableItem(

-									fSelectedTransitionsTable, SWT.NONE);

-

-							item.setText( fSelectedTransitionsList.get(i) );

-						}

-					}

-

-					fParentTab.propagateGUIupdate();

-				}

-

-				@Override

-				public void widgetDefaultSelected(SelectionEvent e) {

-			    	  fParentTab.propagateGUIupdate();

-				}

-			});

-

-		fSelectedTransitionsTable.addMouseListener( new MouseListener() {

-			@Override

-			public void mouseUp(MouseEvent e) {

-			}

-

-			@Override

-			public void mouseDown(MouseEvent e) {

-			}

-

-			@Override

-			public void mouseDoubleClick(MouseEvent e) {

-				String strItem2;

-				for( int index : fSelectedTransitionsTable.getSelectionIndices() )

-				{

-					strItem2 = fSelectedTransitionsTable.getItem(index).getText();

-

-					for( TableItem tableItem1 : fAllTransitionsListTable.getItems() )

-					{

-						if( tableItem1.getText().equals(strItem2) )

-						{

-							fSelectedTransitionsList.remove(strItem2);

-

-							tableItem1.setChecked(false);

-

-							fSelectedTransitionsTable.remove(index);

-

-							fParentTab.propagateGUIupdate();

-

-							break;

-						}

-					}

-				}

-			}

-		});

-	}

-

-

-	@Override

-	public void setVisible(boolean visible) {

-		fParentTab.propagateVisibility(fCompositeControl,visible);

-

-		if( visible ) {

-			if( fEnabledDetailedSelectionBooleanField.getBooleanValue() )

-			{

-				fParentTab.propagateVisibility(fCompDetailedSelection, true);

-			}

-			else {

-				fParentTab.propagateVisibility(fCompDetailedSelection, false);

-			}

-		}

-	}

-

-	private void initTransitionTable() {

-		loadTransitionListToBeSelected();

-

-		fAllTransitionsListTable.removeAll();

-

-		for(int i = 0; i < fAllTransitionsList.size(); i++) {

-			TableItem item = new TableItem(fAllTransitionsListTable, SWT.NONE);

-			item.setChecked(false);

-			item.setText( fAllTransitionsList.get(i) );

-		}

-	}

-

-	public void handleModelFilePathChanged(String modelFilePath) {

-		fModelFilePath = modelFilePath;

-

-		// Force Re-initialization

-		fAllTransitionsList = null;

-

-		updateTransitionTables();

-	}

-

-	public void updateTransitionTables() {

-		fSelectedTransitionsTable.removeAll();

-

-		if( (fAllTransitionsList == null)

-			|| fAllTransitionsList.isEmpty() )

-		{

-			initTransitionTable();

-		}

-

-		if( (fAllTransitionsList != null)

-			&& (! fAllTransitionsList.isEmpty())

-			&& (! fSelectedTransitionsList.isEmpty()) )

-		{

-			for(int i = 0; i < fSelectedTransitionsList.size(); i++)

-			{

-	    		TableItem item = new TableItem(

-	    				fSelectedTransitionsTable, SWT.NONE);

-

-	    		item.setText( fSelectedTransitionsList.get(i) );

-			}

-

-

-			for(int i = 0; i < fAllTransitionsList.size(); i++)

-			{

-				if( fSelectedTransitionsList.contains(

-						fAllTransitionsList.get(i)) )

-				{

-					fAllTransitionsListTable.getItem( i ).setChecked(true);

-				}

-			}

-		}

-		else {

-//			fSelectedTransitionsList.clear();

-		}

-	}

-

-	private void loadTransitionListToBeSelected() {

-

-		if( fAllTransitionsList == null ) {

-			fAllTransitionsList = new ArrayList<String>();

-		}

-		else {

-			fAllTransitionsList.clear();

-		}

-

-		File modelFile =

-				((fModelFilePath == null) || fModelFilePath.isEmpty()) ?

-						null : new File( fModelFilePath );

-

-		try {

-			if( (modelFile != null) && modelFile.isFile() ) {

-				InputStream ips;

-					ips = new FileInputStream( modelFile );

-				InputStreamReader ipsr = new InputStreamReader(ips);

-				BufferedReader br = new BufferedReader(ipsr);

-

-				String ligne;

-				String transitionName = "";

-				int maxSizetransitionName = 0;

-				int pos;

-				while ((ligne=br.readLine())!=null){

-					// Classic Case:

-					// 	'transition' ( < ( 'else' | 'prior:'\d )*> )?

-					//	transitionName ( --> stateName )? { ...

-					//

-					if( (pos = ligne.indexOf("transition")) >= 0 ) {

-						ligne = ligne.substring( pos + "transition".length() );

-						transitionName = ligne.replaceAll(

-								"\\s*(<[^>]*>\\s*)?([^\\s-{]*).*", "$2");

-

-						if( transitionName.isEmpty() ) {

-							// transition_name_empty

-						}

-						else {

-							fAllTransitionsList.add(transitionName);

-							maxSizetransitionName =

-									Math.max(maxSizetransitionName,

-											transitionName.length() );

-						}

-					}

-					// Other Case:

-					// 	transitionName --> stateName { ...

-					//

-					else if( ligne.contains("-->") &&

-							  !ligne.contains("}") &&

-							  !ligne.contains("output ") &&

-							  !ligne.contains("procedure ") &&

-							  !ligne.contains("call ") ) {

-						ligne = ligne.replaceAll("\t", "");

-						ligne = ligne.substring(0, ligne.indexOf("-->"));

-						ligne = ligne.replaceAll(" ", "");

-						transitionName = ligne.replaceFirst("@", "");

-

-						if( transitionName.length() == 0 ) {

-							// transition_name_empty

-						}

-						else {

-							fAllTransitionsList.add(transitionName);

-							maxSizetransitionName =

-									Math.max(maxSizetransitionName,

-											transitionName.length() );

-						}

-					}

-				}

-				br.close();

-				fAllTransitionsList.sort(null);

-

-				if( maxSizetransitionName <= 30 ) {

-					fAllTransitionsListTableColumn.setWidth(200);

-					fSelectedTransitionsTableColumn.setWidth(200);

-				}

-//				else if( maxSizetransitionName <= 60 ) {

-//					fAllTransitionsListTableColumn.setWidth(

-//							maxSizetransitionName * 9 + 30);

-//					fSelectedTransitionsTableColumn.setWidth(

-//							maxSizetransitionName * 9 + 10);

-//				}

-				else {

-//					fAllTransitionsListTableColumn.setWidth(700);

-					fAllTransitionsListTableColumn.setWidth(

-							maxSizetransitionName * 9 + 30);

-

-//					fSelectedTransitionsTableColumn.setWidth(700);

-					fSelectedTransitionsTableColumn.setWidth(

-							maxSizetransitionName * 9 + 10);

-				}

-			}

-		} catch (Exception e) {

-			e.printStackTrace();

-		}

-	}

-

-

-	@Override

-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration)

-	{

-//		fEnabledDetailedSelectionBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_ENABLED_TRANSITION_COVERAGE_DETAILS_SELECTION, false);

-

-		configuration.setAttribute(

-				ATTR_TRANSITION_COVERAGE_SELECTION, new ArrayList<String>());

-

-	}

-

-	@Override

-	public void initializeFrom(ILaunchConfiguration configuration)

-	{

-		try {

-			fModelFilePath = configuration.getAttribute(

-					ATTR_SPECIFICATION_MODEL_FILE_LOCATION,

-					DEFAULT_SPECIFICATION_MODEL_FILE_LOCATION);

-		}

-		catch( CoreException e2 ) {

-			fModelFilePath = null;

-			e2.printStackTrace();

-		}

-

-		fEnabledDetailedSelectionBooleanField.initializeFrom(configuration);

-

-		fParentTab.propagateVisibility(fCompDetailedSelection,

-				fEnabledDetailedSelectionBooleanField.getBooleanValue());

-

-		try {

-			fSelectedTransitionsList = new ArrayList<String>();

-

-			fSelectedTransitionsList.addAll(

-					configuration.getAttribute(

-							ATTR_TRANSITION_COVERAGE_SELECTION,

-							new ArrayList<String>()) );

-		}

-		catch( CoreException e ) {

-			e.printStackTrace();

-

-			fSelectedTransitionsList = new ArrayList<String>();

-		}

-

-		updateTransitionTables();

-	}

-

-

-	@Override

-	public void performApply(ILaunchConfigurationWorkingCopy configuration)

-	{

-		fEnabledDetailedSelectionBooleanField.performApply(configuration);

-

-		fParentTab.propagateVisibility(fCompDetailedSelection,

-				fEnabledDetailedSelectionBooleanField.getBooleanValue());

-

-

-		configuration.setAttribute(

-				ATTR_TRANSITION_COVERAGE_SELECTION, fSelectedTransitionsList);

-	}

-

-	@Override

-	public boolean isValid(ILaunchConfiguration launchConfig) {

-		if( fEnabledDetailedSelectionBooleanField.getBooleanValue()

-			&& ( fSelectedTransitionsList.size() == 0 ) )

-		{

-			setErrorMessage("You must select at least one transition");

-

-			return false;

-		}

-

-		return true;

-	}

-

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/TestGenerationBasicTracePage.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/TestGenerationBasicTracePage.java
deleted file mode 100644
index 8d1d978..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/TestGenerationBasicTracePage.java
+++ /dev/null
@@ -1,424 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr

- *   - Initial API and Implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.views.launchconfigurations.components.pages;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.ui.views.editors.impls.BooleanFieldEditor;

-import org.eclipse.efm.ui.views.editors.impls.StringFieldEditor;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationEditorComposite;

-import org.eclipse.efm.ui.views.utils.SWTFactory;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Group;

-

-public class TestGenerationBasicTracePage extends AbstractTabComponentPage {

-

-	private Group groupBASIC;

-	private Group groupBasicConfiguration;

-	private Group groupBasicObservable;

-

-	private BooleanFieldEditor fBasicTraceEnabledGenerationBooleanField;

-

-	private StringFieldEditor fBasicTraceFolderNameStringField;

-	private StringFieldEditor fBasicTraceFileNameStringField;

-

-	private BooleanFieldEditor fBasicTraceNormalizationBooleanField;

-	private BooleanFieldEditor fBasicTraceShowInitializationBooleanField;

-

-	private BooleanFieldEditor fBasicTraceAllExternalInputComBooleanField;

-	private BooleanFieldEditor fBasicTraceAllExternalOutputComBooleanField;

-

-	private BooleanFieldEditor fBasicTraceAllInternalInputComBooleanField;

-	private BooleanFieldEditor fBasicTraceAllInternalOutputComBooleanField;

-

-	private BooleanFieldEditor fBasicTraceTimeBooleanField;

-	private BooleanFieldEditor fBasicTraceAllVariableBooleanField;

-	private BooleanFieldEditor fBasicTraceAllTransitionBooleanField;

-	private BooleanFieldEditor fBasicTraceAllStateBooleanField;

-

-	private StringFieldEditor fBasicTraceObservableTraceDetailsStringField;

-	private StringFieldEditor fBasicTraceObservableFormatStringField;

-

-

-	/**

-	 * Constructor

-	 * @param parentTab

-	 */

-	public TestGenerationBasicTracePage(

-			ILaunchConfigurationEditorComposite parentTab) {

-		super(parentTab);

-	}

-

-	@Override

-	public void createControl(Composite parent) {

-		groupBASIC = SWTFactory.createGroup(parent,

-				"BASIC <Ad'hoc> Tests Generation Page",

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		Composite comp = SWTFactory.createComposite(

-				groupBASIC, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fBasicTraceEnabledGenerationBooleanField =

-				new BooleanFieldEditor(fParentTab,

-						ATTR_BASIC_TRACE_ENABLED_GENERATION,

-						"&Enabled Generation", comp, false);

-

-		createBasicConfigurationComponent(groupBASIC);

-

-		createObservableSelectionComponent(groupBASIC);

-	}

-

-

-	private void createBasicConfigurationComponent(Composite parent) {

-		groupBasicConfiguration = SWTFactory.createGroup(parent,

-				"&Configuration", 2, 1, GridData.FILL_HORIZONTAL);

-

-		Composite comp = SWTFactory.createComposite(

-				groupBasicConfiguration, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fBasicTraceFolderNameStringField = new StringFieldEditor(fParentTab,

-				ATTR_BASIC_TRACE_FOLDER_NAME, "&Folder:",

-				comp, DEFAULT_BASIC_TRACE_FOLDER_NAME);

-		fBasicTraceFolderNameStringField.setToolTipText(

-				"Folder name w.r.t. <workspace-root>/<output>");

-

-		comp = SWTFactory.createComposite(

-				groupBasicConfiguration, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fBasicTraceFileNameStringField = new StringFieldEditor(fParentTab,

-				ATTR_BASIC_TRACE_FILE_NAME, "&File:",

-				comp, DEFAULT_BASIC_TRACE_FILE_NAME);

-		fBasicTraceFileNameStringField.setToolTipText("File name");

-

-		comp = SWTFactory.createComposite(groupBasicConfiguration,

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		fBasicTraceNormalizationBooleanField = new BooleanFieldEditor(

-				fParentTab, ATTR_BASIC_TRACE_ENABLED_NORMALIZATION,

-				"&Normalization (Redundance Elimination...)", comp, true);

-

-		comp = SWTFactory.createComposite(groupBasicConfiguration,

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		fBasicTraceShowInitializationBooleanField = new BooleanFieldEditor(

-				fParentTab, ATTR_BASIC_TRACE_SHOW_INITIALIZATION,

-				"&Show Parameters Initialization", comp, false);

-	}

-

-	public void createObservableSelectionComponent(Composite parent) {

-		groupBasicObservable = SWTFactory.createGroup(parent,

-				"&Observable Traces Selection", 3, 1, GridData.FILL_HORIZONTAL);

-

-		createExternalCommunicationComponent(groupBasicObservable);

-

-		createInternalCommunicationComponent(groupBasicObservable);

-

-		createOtherObservableComponent(groupBasicObservable);

-

-		createObservableDetailsComponent(groupBasicObservable);

-

-		createObservableFormatComponent(groupBasicObservable);

-	}

-

-	private void createExternalCommunicationComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"External Communication", 2, 1, GridData.FILL_HORIZONTAL);

-		group.setToolTipText(

-				"External, Input or Output, Communication Selection" );

-

-

-		Composite comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fBasicTraceAllExternalInputComBooleanField =

-				new BooleanFieldEditor(fParentTab,

-						ATTR_BASIC_TRACE_ALL_EXTERNAL_INPUT_COM_SELECTION,

-						"&Input", comp, true);

-

-

-		comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fBasicTraceAllExternalOutputComBooleanField =

-				new BooleanFieldEditor(fParentTab,

-						ATTR_BASIC_TRACE_ALL_EXTERNAL_OUTPUT_COM_SELECTION,

-						"&Output", comp, true);

-	}

-

-	private void createInternalCommunicationComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"&Any Communication", 2, 1, GridData.FILL_HORIZONTAL);

-		group.setToolTipText( "External or Internal, "

-				+ "Input or Output, Communication Selection" );

-

-

-		Composite comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fBasicTraceAllInternalInputComBooleanField =

-				new BooleanFieldEditor(fParentTab,

-						ATTR_BASIC_TRACE_ALL_INPUT_COM_SELECTION,

-						"&Input", comp, false);

-

-

-		comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fBasicTraceAllInternalOutputComBooleanField =

-				new BooleanFieldEditor(fParentTab,

-						ATTR_BASIC_TRACE_ALL_OUTPUT_COM_SELECTION,

-						"&Output", comp, false);

-	}

-

-	private void createOtherObservableComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"&Other Elements", 4, 1, GridData.FILL_HORIZONTAL);

-		group.setToolTipText( "Other Elements like, Time, Variable, "

-				+ "Transition, State..., Communication Selection" );

-

-		Composite comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fBasicTraceTimeBooleanField =

-				new BooleanFieldEditor(fParentTab,

-						ATTR_BASIC_TRACE_TIME_SELECTION,

-						"&Time", comp, true);

-

-

-		comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fBasicTraceAllVariableBooleanField =

-				new BooleanFieldEditor(fParentTab,

-						ATTR_BASIC_TRACE_ALL_VARIABLE_SELECTION,

-						"&Variable", comp, false);

-

-

-		comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fBasicTraceAllTransitionBooleanField =

-				new BooleanFieldEditor(fParentTab,

-						ATTR_BASIC_TRACE_ALL_TRANSITION_SELECTION,

-						"&Transition", comp, false);

-

-

-		comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fBasicTraceAllStateBooleanField =

-				new BooleanFieldEditor(fParentTab,

-						ATTR_BASIC_TRACE_ALL_STATE_SELECTION,

-						"&State", comp, false);

-	}

-

-	private void createObservableDetailsComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"&Details", 1, 3, GridData.FILL_HORIZONTAL);

-

-		Composite comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fBasicTraceObservableTraceDetailsStringField = new StringFieldEditor(

-				fParentTab, ATTR_BASIC_TRACE_DETAILS_ELEMENT_LIST, "",

-				comp, DEFAULT_BASIC_TRACE_DETAILS_ELEMENT_LIST, SWT.MULTI);

-	}

-

-

-	private void createObservableFormatComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"&Ad'Hoc Element Format for Tests",

-				1, 3, GridData.FILL_HORIZONTAL);

-		group.setToolTipText( HELPER_TRACE_FORMAT_SPECIFICATION );

-

-		Composite comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-		comp.setToolTipText( HELPER_TRACE_FORMAT_SPECIFICATION );

-

-		fBasicTraceObservableFormatStringField = new StringFieldEditor(

-				fParentTab, ATTR_BASIC_TRACE_FORMAT_ELEMENT_LIST, "", comp,

-				DEFAULT_BASIC_TRACE_FORMAT_ELEMENT_LIST, SWT.MULTI);

-		fBasicTraceObservableFormatStringField.setToolTipText(

-				HELPER_TRACE_FORMAT_SPECIFICATION );

-	}

-

-

-	private void setEnableBasicPage(ILaunchConfiguration configuration) {

-		String fAnalysisProfile;

-		boolean localEnable;

-

-		try {

-			fAnalysisProfile = configuration.getAttribute(

-					ATTR_SPECIFICATION_ANALYSIS_PROFILE, "");

-

-			localEnable = fBasicTraceEnabledGenerationBooleanField.getBooleanValue()

-				&& (! fAnalysisProfile.equals(ANALYSIS_PROFILE_TEST_OFFLINE ) );

-

-			fParentTab.propagateVisibility(groupBasicConfiguration,localEnable);

-			fParentTab.propagateVisibility(groupBasicObservable,localEnable);

-		}

-		catch (CoreException e) {

-			// TODO Auto-generated catch block

-			e.printStackTrace();

-		}

-	}

-

-

-	@Override

-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration)

-	{

-//		fBasicTraceEnabledGenerationBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BASIC_TRACE_ENABLED_GENERATION, false);

-

-//		fBasicTraceFolderNameStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BASIC_TRACE_FOLDER_NAME, DEFAULT_BASIC_TRACE_FOLDER_NAME);

-

-//		fBasicTraceFileNameStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BASIC_TRACE_FILE_NAME, DEFAULT_BASIC_TRACE_FILE_NAME);

-

-//		fBasicTraceNormalizationBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BASIC_TRACE_ENABLED_NORMALIZATION, true);

-

-//		fBasicTraceShowInitializationBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BASIC_TRACE_SHOW_INITIALIZATION, false);

-

-//		fBasicTraceAllExternalInputComBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BASIC_TRACE_ALL_EXTERNAL_INPUT_COM_SELECTION, true);

-

-//		fBasicTraceAllExternalOutputComBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BASIC_TRACE_ALL_EXTERNAL_OUTPUT_COM_SELECTION, true);

-

-//		fBasicTraceAllInternalInputComBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BASIC_TRACE_ALL_INTERNAL_INPUT_COM_SELECTION, true);

-

-//		fBasicTraceAllInternalOutputComBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BASIC_TRACE_ALL_INTERNAL_OUTPUT_COM_SELECTION, true);

-

-		configuration.setAttribute(

-				ATTR_BASIC_TRACE_ALL_OUTPUT_COM_SELECTION, false);

-

-//		fBasicTraceTimeBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BASIC_TRACE_TIME_SELECTION, true);

-

-//		fBasicTraceAllVariableBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BASIC_TRACE_ALL_VARIABLE_SELECTION, false);

-

-//		fBasicTraceAllTransitionBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BASIC_TRACE_ALL_TRANSITION_SELECTION, false);

-

-//		fBasicTraceAllStateBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BASIC_TRACE_ALL_STATE_SELECTION, false);

-

-//		fBasicTraceObservableTraceDetailsStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BASIC_TRACE_DETAILS_ELEMENT_LIST,

-				DEFAULT_BASIC_TRACE_DETAILS_ELEMENT_LIST);

-

-//		fBasicTraceObservableFormatStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_BASIC_TRACE_FORMAT_ELEMENT_LIST,

-				DEFAULT_BASIC_TRACE_FORMAT_ELEMENT_LIST);

-	}

-

-	@Override

-	public void initializeFrom(ILaunchConfiguration configuration) {

-		String analysisProfile;

-		try {

-			analysisProfile = configuration.getAttribute(

-					ATTR_SPECIFICATION_ANALYSIS_PROFILE, "");

-		}

-		catch (CoreException e) {

-			e.printStackTrace();

-

-			analysisProfile = "";

-		}

-

-		if ( analysisProfile.equals(ANALYSIS_PROFILE_TEST_OFFLINE ) ) {

-			fBasicTraceEnabledGenerationBooleanField.setEnabled(false);

-		}

-		else {

-			fBasicTraceEnabledGenerationBooleanField.setEnabled(true);

-			fBasicTraceNormalizationBooleanField.setEnabled(true);

-			fBasicTraceShowInitializationBooleanField.setEnabled(true);

-

-			fBasicTraceEnabledGenerationBooleanField.initializeFrom(configuration);

-			fBasicTraceFolderNameStringField.initializeFrom(configuration);

-			fBasicTraceFileNameStringField.initializeFrom(configuration);

-			fBasicTraceNormalizationBooleanField.initializeFrom(configuration);

-			fBasicTraceShowInitializationBooleanField.initializeFrom(configuration);

-

-			fBasicTraceAllExternalInputComBooleanField.initializeFrom(configuration);

-			fBasicTraceAllExternalOutputComBooleanField.initializeFrom(configuration);

-			fBasicTraceAllInternalInputComBooleanField.initializeFrom(configuration);

-			fBasicTraceAllInternalOutputComBooleanField.initializeFrom(configuration);

-

-			fBasicTraceTimeBooleanField.initializeFrom(configuration);

-			fBasicTraceAllVariableBooleanField.initializeFrom(configuration);

-			fBasicTraceAllTransitionBooleanField.initializeFrom(configuration);

-			fBasicTraceAllStateBooleanField.initializeFrom(configuration);

-

-			fBasicTraceObservableTraceDetailsStringField.initializeFrom(configuration);

-			fBasicTraceObservableFormatStringField.initializeFrom(configuration);

-		}

-

-		setEnableBasicPage(configuration);

-	}

-

-	@Override

-	public void performApply(ILaunchConfigurationWorkingCopy configuration) {

-		fBasicTraceEnabledGenerationBooleanField.performApply(configuration);

-

-		fBasicTraceFolderNameStringField.performApply(configuration);

-		fBasicTraceFileNameStringField.performApply(configuration);

-

-		fBasicTraceNormalizationBooleanField.performApply(configuration);

-		fBasicTraceShowInitializationBooleanField.performApply(configuration);

-

-		fBasicTraceAllExternalInputComBooleanField.performApply(configuration);

-		fBasicTraceAllExternalOutputComBooleanField.performApply(configuration);

-		fBasicTraceAllInternalInputComBooleanField.performApply(configuration);

-		fBasicTraceAllInternalOutputComBooleanField.performApply(configuration);

-

-		fBasicTraceTimeBooleanField.performApply(configuration);

-		fBasicTraceAllVariableBooleanField.performApply(configuration);

-		fBasicTraceAllTransitionBooleanField.performApply(configuration);

-		fBasicTraceAllStateBooleanField.performApply(configuration);

-

-		fBasicTraceObservableTraceDetailsStringField.performApply(configuration);

-		fBasicTraceObservableFormatStringField.performApply(configuration);

-

-		setEnableBasicPage( configuration );

-	}

-

-	@Override

-	public boolean isValid(ILaunchConfiguration launchConfig) {

-		return true;

-	}

-

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/TestGenerationTTCNTracePage.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/TestGenerationTTCNTracePage.java
deleted file mode 100644
index 668e139..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/launchconfigurations/components/pages/TestGenerationTTCNTracePage.java
+++ /dev/null
@@ -1,510 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr

- *   - Initial API and Implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.views.launchconfigurations.components.pages;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;

-import org.eclipse.efm.ui.views.editors.impls.BooleanFieldEditor;

-import org.eclipse.efm.ui.views.editors.impls.StringFieldEditor;

-import org.eclipse.efm.ui.views.utils.ILaunchConfigurationEditorComposite;

-import org.eclipse.efm.ui.views.utils.SWTFactory;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Group;

-

-public class TestGenerationTTCNTracePage extends AbstractTabComponentPage {

-

-	private Group groupTTCN;

-	private Group groupTTCNConfiguration;

-	private Group groupTTCNModule;

-

-	private BooleanFieldEditor fTTCNEnabledGenerationBooleanField;

-	private BooleanFieldEditor fTTCNEnabledAdaptationModuleBooleanField;

-	private StringFieldEditor fTTCNFolderNameStringField;

-

-	private StringFieldEditor fTTCNControlModuleNameStringField;

-	private StringFieldEditor fTTCNDeclarationsModuleNameStringField;

-	private StringFieldEditor fTTCNTemplatesModuleNameStringField;

-

-	private StringFieldEditor fTTCNTestcasesModuleNameStringField;

-	private StringFieldEditor fTTCNTestcasesStartingWrapperStringField;

-	private StringFieldEditor fTTCNTestcasesEndingWrapperStringField;

-	private StringFieldEditor fTTCNTestcasesSendingWrapperStringField;

-	private StringFieldEditor fTTCNTestcasesReceivingWrapperStringField;

-

-	private StringFieldEditor fTTCNAdaptationModuleNameStringField;

-	private StringFieldEditor fTTCNAdaptationUtilsImplStringField;

-	private StringFieldEditor fTTCNTestcasesStartingEndingImplStringField;

-	private StringFieldEditor fTTCNTestcasesSendingImplStringField;

-	private StringFieldEditor fTTCNTestcasesReceivingImplStringField;

-

-

-	/**

-	 * COnstructor

-	 * @param parentTab

-	 */

-	public TestGenerationTTCNTracePage(

-			ILaunchConfigurationEditorComposite parentTab) {

-		super(parentTab);

-	}

-

-	@Override

-	public void createControl(Composite parent) {

-		groupTTCN = SWTFactory.createGroup(parent,

-				"TTCN Tests Generation Page",

-				1, 1, GridData.FILL_HORIZONTAL);

-

-		Group group = SWTFactory.createGroup(groupTTCN,

-				"Enabled Options", 2, 1, GridData.FILL_HORIZONTAL);

-

-		Composite comp = SWTFactory.createComposite(

-				group, 2, 1, GridData.FILL_HORIZONTAL);

-

-		fTTCNEnabledGenerationBooleanField =

-				new BooleanFieldEditor(fParentTab,

-						ATTR_TTCN_ENABLED_GENERATION,

-						"&Generation", comp, false);

-

-		comp = SWTFactory.createComposite(

-				group, 2, 1, GridData.FILL_HORIZONTAL);

-

-		fTTCNEnabledAdaptationModuleBooleanField =

-				new BooleanFieldEditor(fParentTab,

-						ATTR_TTCN_ENABLED_CUSTOMIZATION,

-						"&Customization", comp,

-						DEFAULT_TTCN_ENABLED_CUSTOMIZATION);

-

-		createTTCNConfigurationComponent(groupTTCN);

-

-		createTTCNModuleConfigurationComponent(groupTTCN);

-	}

-

-

-	private void createTTCNConfigurationComponent(Composite parent) {

-		groupTTCNConfiguration = SWTFactory.createGroup(parent,

-				"&Configuration", 2, 1, GridData.FILL_HORIZONTAL);

-

-		Composite comp = SWTFactory.createComposite(

-				groupTTCNConfiguration, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fTTCNFolderNameStringField = new StringFieldEditor(fParentTab,

-				ATTR_TTCN_FOLDER_NAME, "&Folder:", comp,

-				DEFAULT_TTCN_FOLDER_NAME);

-		fTTCNFolderNameStringField.setToolTipText(

-				"Folder name w.r.t. <workspace-root>/<output>");

-	}

-

-	private void createTTCNModuleConfigurationComponent(Composite parent) {

-		groupTTCNModule = SWTFactory.createGroup(parent,

-				"Modules Configuration", 3, 1, GridData.FILL_HORIZONTAL);

-

-		createTTCNModuleControlComponent(groupTTCNModule);

-		createTTCNModuleDeclarationComponent(groupTTCNModule);

-		createTTCNModuleTemplatesComponent(groupTTCNModule);

-		createTTCNModuleTestcasesComponent(groupTTCNModule);

-		createTTCNModuleAdaptationComponent(groupTTCNModule);

-	}

-

-

-	private void createTTCNModuleControlComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"Control", 1, 1, GridData.FILL_HORIZONTAL);

-

-		Composite comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fTTCNControlModuleNameStringField =

-				new StringFieldEditor(fParentTab,

-						ATTR_TTCN_CONTROL_MODULE_NAME,

-						"&Name:", comp,

-						DEFAULT_TTCN_CONTROL_MODULE_NAME);

-	}

-

-	private void createTTCNModuleDeclarationComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"Declaration", 1, 1, GridData.FILL_HORIZONTAL);

-

-		Composite comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-

-		fTTCNDeclarationsModuleNameStringField =

-				new StringFieldEditor(fParentTab,

-						ATTR_TTCN_DECLARATIONS_MODULE_NAME,

-						"&Name:", comp,

-						DEFAULT_TTCN_DECLARATIONS_MODULE_NAME);

-	}

-

-	private void createTTCNModuleTemplatesComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"Templates", 1, 1, GridData.FILL_HORIZONTAL);

-

-		Composite comp = SWTFactory.createComposite(

-				group, 2, 1, GridData.FILL_HORIZONTAL);

-

-		fTTCNTemplatesModuleNameStringField =

-				new StringFieldEditor(fParentTab,

-						ATTR_TTCN_TEMPLATES_MODULE_NAME,

-						"&Name:", comp,

-						DEFAULT_TTCN_TEMPLATE_MODULE_NAME);

-	}

-

-

-	private void createTTCNModuleTestcasesComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"Testcases", 1, 3, GridData.FILL_HORIZONTAL);

-		group.setToolTipText( HELPER_MODULE_TESTCASE_IMPLEMENTATION_TEMPLATE );

-

-		Composite comp = SWTFactory.createComposite(

-				group, 2, 1, GridData.FILL_HORIZONTAL);

-

-		fTTCNTestcasesModuleNameStringField =

-				new StringFieldEditor(fParentTab,

-						ATTR_TTCN_TESTCASES_MODULE_NAME,

-						"&Name:", comp,

-						DEFAULT_TTCN_TESTCASES_MODULE_NAME);

-

-		Group groupAdapters = SWTFactory.createGroup(group,

-				"Adapters", 2, 1, GridData.FILL_HORIZONTAL);

-		groupAdapters.setToolTipText(

-				HELPER_MODULE_TESTCASE_IMPLEMENTATION_TEMPLATE );

-

-		group = SWTFactory.createGroup(groupAdapters,

-				"Wrappers for testcases Starting / Ending operations",

-				2, 1, GridData.FILL_HORIZONTAL);

-		group.setToolTipText(

-				HELPER_MODULE_TESTCASE_STARTING_ENDING_PATTERN_PARAMETERS );

-

-		comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-		comp.setToolTipText(

-				HELPER_MODULE_TESTCASE_STARTING_ENDING_PATTERN_PARAMETERS );

-

-		fTTCNTestcasesStartingWrapperStringField = new StringFieldEditor(

-				fParentTab, ATTR_TTCN_TESTCASES_STARTING_WRAPPER, "&Starting:",

-				comp, DEFAULT_TTCN_TESTCASES_STARTING_WRAPPER, SWT.MULTI);

-		fTTCNTestcasesStartingWrapperStringField.setToolTipText(

-				HELPER_MODULE_TESTCASE_STARTING_ENDING_PATTERN_PARAMETERS );

-

-		fTTCNTestcasesEndingWrapperStringField = new StringFieldEditor(

-				fParentTab, ATTR_TTCN_TESTCASES_ENDING_WRAPPER, "&Ending:",

-				comp, DEFAULT_TTCN_TESTCASES_ENDING_WRAPPER, SWT.MULTI);

-		fTTCNTestcasesEndingWrapperStringField.setToolTipText(

-				HELPER_MODULE_TESTCASE_STARTING_ENDING_PATTERN_PARAMETERS );

-

-		group = SWTFactory.createGroup(groupAdapters,

-				"Wrappers for testcases Sending / Receiving Operations",

-				1, 1, GridData.FILL_HORIZONTAL);

-		group.setToolTipText(

-				HELPER_MODULE_TESTCASE_COMMUNICATION_PATTERN_PARAMETERS );

-

-		comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-		comp.setToolTipText(

-				HELPER_MODULE_TESTCASE_COMMUNICATION_PATTERN_PARAMETERS );

-

-		fTTCNTestcasesSendingWrapperStringField = new StringFieldEditor(

-				fParentTab, ATTR_TTCN_TESTCASES_SENDING_WRAPPER, "&Sending:",

-				comp, DEFAULT_TTCN_TESTCASES_SENDING_WRAPPER, SWT.MULTI);

-		fTTCNTestcasesSendingWrapperStringField.setToolTipText(

-				HELPER_MODULE_TESTCASE_COMMUNICATION_PATTERN_PARAMETERS );

-

-		fTTCNTestcasesReceivingWrapperStringField = new StringFieldEditor(

-				fParentTab, ATTR_TTCN_TESTCASES_RECEIVING_WRAPPER, "&Receiving:",

-				comp, DEFAULT_TTCN_TESTCASES_RECEIVING_WRAPPER, SWT.MULTI);

-		fTTCNTestcasesReceivingWrapperStringField.setToolTipText(

-				HELPER_MODULE_TESTCASE_COMMUNICATION_PATTERN_PARAMETERS );

-	}

-

-

-	private void createTTCNModuleAdaptationComponent(Composite parent) {

-		Group group = SWTFactory.createGroup(parent,

-				"Adaptation", 1, 3, GridData.FILL_HORIZONTAL);

-		group.setToolTipText( HELPER_MODULE_ADAPTATION_IMPLEMENTATION_TEMPLATE );

-

-		Composite comp = SWTFactory.createComposite(

-				group, 2, 1, GridData.FILL_HORIZONTAL);

-

-		fTTCNAdaptationModuleNameStringField =

-				new StringFieldEditor(fParentTab,

-						ATTR_TTCN_ADAPTATION_MODULE_NAME,

-						"&Name:", comp,

-						DEFAULT_TTCN_ADAPTATION_MODULE_NAME);

-

-

-		Group groupImpl = SWTFactory.createGroup(group,

-				"Implementations", 1, 1, GridData.FILL_HORIZONTAL);

-		groupImpl.setToolTipText(

-				HELPER_MODULE_ADAPTATION_IMPLEMENTATION_TEMPLATE );

-

-		group = SWTFactory.createGroup(groupImpl,

-				"Implementations for Starting / Ending wrappers",

-				2, 1, GridData.FILL_HORIZONTAL);

-		group.setToolTipText(

-				HELPER_MODULE_TESTCASE_STARTING_ENDING_PATTERN_PARAMETERS );

-

-		comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-		comp.setToolTipText(

-				HELPER_MODULE_TESTCASE_STARTING_ENDING_PATTERN_PARAMETERS );

-

-		fTTCNTestcasesStartingEndingImplStringField = new StringFieldEditor(

-				fParentTab, ATTR_TTCN_TESTCASES_STARTING_ENDING_IMPL, "",

-				comp, DEFAULT_TTCN_TESTCASES_STARTING_ENDING_IMPL, SWT.MULTI);

-		fTTCNTestcasesStartingEndingImplStringField.setToolTipText(

-				HELPER_MODULE_TESTCASE_STARTING_ENDING_PATTERN_PARAMETERS );

-

-		group = SWTFactory.createGroup(groupImpl,

-				"Implementation of testcases Sending / Receiving wrappers",

-				1, 1, GridData.FILL_HORIZONTAL);

-		group.setToolTipText(

-				HELPER_MODULE_TESTCASE_COMMUNICATION_PATTERN_PARAMETERS );

-

-		comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-		comp.setToolTipText(

-				HELPER_MODULE_TESTCASE_COMMUNICATION_PATTERN_PARAMETERS );

-

-		fTTCNTestcasesSendingImplStringField =

-				new StringFieldEditor(fParentTab,

-						ATTR_TTCN_TESTCASES_SENDING_IMPL,

-						"&Sending:", comp,

-						DEFAULT_TTCN_TESTCASES_SENDING_IMPL, SWT.MULTI);

-		fTTCNTestcasesSendingImplStringField.setToolTipText(

-				HELPER_MODULE_TESTCASE_COMMUNICATION_PATTERN_PARAMETERS );

-

-		fTTCNTestcasesReceivingImplStringField = new StringFieldEditor(

-				fParentTab, ATTR_TTCN_TESTCASES_RECEIVING_IMPL, "&Receiving:",

-				comp, DEFAULT_TTCN_TESTCASES_RECEIVING_IMPL, SWT.MULTI);

-		fTTCNTestcasesReceivingImplStringField.setToolTipText(

-				HELPER_MODULE_TESTCASE_COMMUNICATION_PATTERN_PARAMETERS );

-

-

-		group = SWTFactory.createGroup(groupImpl,

-				"Implementation of utility functions such as 'f_timeout'",

-				2, 1, GridData.FILL_HORIZONTAL);

-		group.setToolTipText(

-				HELPER_MODULE_TESTCASE_STARTING_ENDING_PATTERN_PARAMETERS );

-

-		comp = SWTFactory.createComposite(

-				group, 1, 1, GridData.FILL_HORIZONTAL);

-		comp.setToolTipText(

-				HELPER_MODULE_TESTCASE_STARTING_ENDING_PATTERN_PARAMETERS );

-

-		fTTCNAdaptationUtilsImplStringField = new StringFieldEditor(

-				fParentTab, ATTR_TTCN_ADAPTATION_UTILS_IMPL, "",

-				comp, DEFAULT_TTCN_ADAPTATION_UTILS_IMPL, SWT.MULTI);

-		fTTCNAdaptationUtilsImplStringField.setToolTipText(

-				HELPER_MODULE_TESTCASE_STARTING_ENDING_PATTERN_PARAMETERS );

-

-

-	}

-

-

-	private void setEnableTTCNPage(ILaunchConfiguration configuration) {

-		String fAnalysisProfile;

-		try {

-			fAnalysisProfile = configuration.getAttribute(

-					ATTR_SPECIFICATION_ANALYSIS_PROFILE, "");

-		} catch (CoreException e) {

-			e.printStackTrace();

-

-			fAnalysisProfile = "";

-		}

-

-		boolean enabledGeneration =

-				fTTCNEnabledGenerationBooleanField.getBooleanValue()

-				&& (! fAnalysisProfile.equals(ANALYSIS_PROFILE_TEST_OFFLINE ) );

-

-		fTTCNEnabledAdaptationModuleBooleanField.setEnabled(enabledGeneration);

-

-		fParentTab.propagateVisibility(groupTTCNConfiguration, enabledGeneration);

-

-

-		boolean enabledAdaptation =

-				fTTCNEnabledAdaptationModuleBooleanField.getBooleanValue();

-

-		fParentTab.propagateVisibility(groupTTCNModule,

-				enabledGeneration && enabledAdaptation);

-	}

-

-

-	@Override

-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration) {

-//		fTTCNEnabledGenerationBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TTCN_ENABLED_GENERATION, false);

-

-//		fTTCNEnabledAdaptationModuleBooleanField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TTCN_ENABLED_CUSTOMIZATION,

-				DEFAULT_TTCN_ENABLED_CUSTOMIZATION);

-

-//		fTTCNFolderNameStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TTCN_FOLDER_NAME, DEFAULT_TTCN_FOLDER_NAME);

-

-

-//		fTTCNControlModuleNameStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TTCN_CONTROL_MODULE_NAME,

-				DEFAULT_TTCN_CONTROL_MODULE_NAME);

-

-//		fTTCNDeclarationsModuleNameStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TTCN_DECLARATIONS_MODULE_NAME,

-				DEFAULT_TTCN_DECLARATIONS_MODULE_NAME);

-

-//		fTTCNTemplatesModuleNameStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TTCN_TEMPLATES_MODULE_NAME,

-				DEFAULT_TTCN_TEMPLATE_MODULE_NAME);

-

-

-//		fTTCNTestcasesModuleNameStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TTCN_TESTCASES_MODULE_NAME,

-				DEFAULT_TTCN_TESTCASES_MODULE_NAME);

-

-//		fTTCNTestcasesStartingWrapperStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TTCN_TESTCASES_STARTING_WRAPPER,

-				DEFAULT_TTCN_TESTCASES_STARTING_WRAPPER);

-

-//		fTTCNTestcasesEndingWrapperStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TTCN_TESTCASES_ENDING_WRAPPER,

-				DEFAULT_TTCN_TESTCASES_ENDING_WRAPPER);

-

-//		fTTCNTestcasesSendingWrapperStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TTCN_TESTCASES_SENDING_WRAPPER,

-				DEFAULT_TTCN_TESTCASES_SENDING_WRAPPER);

-

-//		fTTCNTestcasesReceivingWrapperStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TTCN_TESTCASES_STARTING_ENDING_IMPL,

-				DEFAULT_TTCN_TESTCASES_STARTING_ENDING_IMPL);

-

-

-//		fTTCNAdaptationModuleNameStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TTCN_ADAPTATION_MODULE_NAME,

-				DEFAULT_TTCN_ADAPTATION_MODULE_NAME);

-

-//		fTTCNAdaptationUtilsImplStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TTCN_ADAPTATION_UTILS_IMPL,

-				DEFAULT_TTCN_ADAPTATION_UTILS_IMPL);

-

-//		fTTCNTestcasesStartingEndingImplStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TTCN_TESTCASES_STARTING_ENDING_IMPL,

-				DEFAULT_TTCN_TESTCASES_STARTING_ENDING_IMPL);

-

-//		fTTCNTestcasesReceivingWrapperStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TTCN_TESTCASES_RECEIVING_WRAPPER,

-				DEFAULT_TTCN_TESTCASES_RECEIVING_WRAPPER);

-

-

-//		fTTCNTestcasesSendingImplStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TTCN_TESTCASES_SENDING_IMPL,

-				DEFAULT_TTCN_TESTCASES_SENDING_IMPL);

-

-//		fTTCNTestcasesReceivingImplStringField.setDefaults(configuration);

-		configuration.setAttribute(

-				ATTR_TTCN_TESTCASES_RECEIVING_IMPL,

-				DEFAULT_TTCN_TESTCASES_RECEIVING_IMPL);

-	}

-

-	@Override

-	public void initializeFrom(ILaunchConfiguration configuration) {

-		String analysisProfile;

-		try {

-			analysisProfile = configuration.getAttribute(

-					ATTR_SPECIFICATION_ANALYSIS_PROFILE, "");

-		}

-		catch (CoreException e) {

-			e.printStackTrace();

-

-			analysisProfile = "";

-		}

-

-		if ( analysisProfile.equals(ANALYSIS_PROFILE_TEST_OFFLINE ) ) {

-			fTTCNEnabledGenerationBooleanField.setEnabled(false);

-			fTTCNEnabledAdaptationModuleBooleanField.setEnabled(false);

-		}

-		else {

-			fTTCNEnabledGenerationBooleanField.setEnabled(true);

-			fTTCNEnabledAdaptationModuleBooleanField.setEnabled(true);

-

-			fTTCNEnabledGenerationBooleanField.initializeFrom(configuration);

-			fTTCNEnabledAdaptationModuleBooleanField.initializeFrom(configuration);

-

-			fTTCNFolderNameStringField.initializeFrom(configuration);

-

-			fTTCNControlModuleNameStringField.initializeFrom(configuration);

-			fTTCNDeclarationsModuleNameStringField.initializeFrom(configuration);

-			fTTCNTemplatesModuleNameStringField.initializeFrom(configuration);

-

-			fTTCNTestcasesModuleNameStringField.initializeFrom(configuration);

-			fTTCNTestcasesStartingWrapperStringField.initializeFrom(configuration);

-			fTTCNTestcasesEndingWrapperStringField.initializeFrom(configuration);

-			fTTCNTestcasesSendingWrapperStringField.initializeFrom(configuration);

-			fTTCNTestcasesReceivingWrapperStringField.initializeFrom(configuration);

-

-			fTTCNAdaptationModuleNameStringField.initializeFrom(configuration);

-			fTTCNAdaptationUtilsImplStringField.initializeFrom(configuration);

-			fTTCNTestcasesStartingEndingImplStringField.initializeFrom(configuration);

-			fTTCNTestcasesSendingImplStringField.initializeFrom(configuration);

-			fTTCNTestcasesReceivingImplStringField.initializeFrom(configuration);

-		}

-

-		setEnableTTCNPage(configuration);

-	}

-

-	@Override

-	public void performApply(ILaunchConfigurationWorkingCopy configuration) {

-		fTTCNEnabledGenerationBooleanField.performApply(configuration);

-		fTTCNEnabledAdaptationModuleBooleanField.performApply(configuration);

-

-		fTTCNFolderNameStringField.performApply(configuration);

-

-		fTTCNControlModuleNameStringField.performApply(configuration);

-		fTTCNDeclarationsModuleNameStringField.performApply(configuration);

-		fTTCNTemplatesModuleNameStringField.performApply(configuration);

-

-		fTTCNTestcasesModuleNameStringField.performApply(configuration);

-		fTTCNTestcasesStartingWrapperStringField.performApply(configuration);

-		fTTCNTestcasesEndingWrapperStringField.performApply(configuration);

-		fTTCNTestcasesSendingWrapperStringField.performApply(configuration);

-		fTTCNTestcasesReceivingWrapperStringField.performApply(configuration);

-

-		fTTCNAdaptationModuleNameStringField.performApply(configuration);

-		fTTCNAdaptationUtilsImplStringField.performApply(configuration);

-		fTTCNTestcasesStartingEndingImplStringField.performApply(configuration);

-		fTTCNTestcasesSendingImplStringField.performApply(configuration);

-		fTTCNTestcasesReceivingImplStringField.performApply(configuration);

-

-		setEnableTTCNPage(configuration);

-	}

-

-	@Override

-	public boolean isValid(ILaunchConfiguration launchConfig) {

-		return true;

-	}

-

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/utils/GenericCompositeCreator.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/utils/GenericCompositeCreator.java
deleted file mode 100644
index e62382f..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/utils/GenericCompositeCreator.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr

- *   - Initial API and Implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.views.utils;

-

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.layout.GridLayout;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Label;

-import org.eclipse.swt.widgets.Text;

-import org.eclipse.ui.forms.widgets.FormToolkit;

-

-public class GenericCompositeCreator {

-	

-	public static Text createComposite_label_text_from_toolkit(FormToolkit toolkit, Composite parentComposite, String labeltext, int colnum) {

-		

-		Composite composite = toolkit.createComposite(parentComposite);

-		

-		GridLayout gl = new GridLayout(colnum, false);

-		composite.setLayout(gl);

-		

-		GridData gd = new GridData(SWT.FILL,SWT.FILL, true, false);

-		composite.setLayoutData(gd);

-		

-		toolkit.createLabel(composite, labeltext);

-		

-		GridData gd2 = new GridData(SWT.FILL,SWT.FILL, true, false);

-		

-		Text label_content = toolkit.createText(composite, "...");

-		label_content.setLayoutData(gd2);

-		label_content.setEditable(false);

-		 

-		return label_content;

-	}

-	

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/utils/ILaunchConfigurationEditorComposite.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/utils/ILaunchConfigurationEditorComposite.java
deleted file mode 100644
index 9a47391..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/utils/ILaunchConfigurationEditorComposite.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - Initial API and implementation

- *******************************************************************************/

-

-package org.eclipse.efm.ui.views.utils;

-

-import org.eclipse.swt.widgets.Control;

-

-public interface ILaunchConfigurationEditorComposite {

-	

-	public void propagateMessage(String message);

-

-	public void propagateWarningMessage(String warningmessage);

-	

-	public void propagateErrorMessage(String errormessage);

-	

-	public void propagateGUIupdate();

-	

-	public void propagateVisibility(Control smp, boolean isVisible);

-	

-	public void propagateUpdateJobScheduling();

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/utils/ILaunchConfigurationGUIelement.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/utils/ILaunchConfigurationGUIelement.java
deleted file mode 100644
index 2f1546c..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/utils/ILaunchConfigurationGUIelement.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - Initial API and implementation

- *******************************************************************************/

-

-package org.eclipse.efm.ui.views.utils;

-

-public interface ILaunchConfigurationGUIelement {

-	

-	public void setMessage(String message);

-

-	public void setWarningMessage(String warningmessage);

-	

-	public void setErrorMessage(String errormessage);

-	

-	public void updateGUI();

-	

-	public void scheduleUpdateJob();

-	

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/utils/SWTFactory.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/utils/SWTFactory.java
deleted file mode 100644
index f8cbfb2..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/utils/SWTFactory.java
+++ /dev/null
@@ -1,494 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2016 CEA LIST.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *     Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.views.utils;

-

-import org.eclipse.core.runtime.Assert;

-import org.eclipse.jface.dialogs.IDialogConstants;

-import org.eclipse.jface.layout.PixelConverter;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.custom.CLabel;

-import org.eclipse.swt.custom.StyledText;

-import org.eclipse.swt.graphics.Font;

-import org.eclipse.swt.graphics.Image;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.layout.GridLayout;

-import org.eclipse.swt.widgets.Button;

-import org.eclipse.swt.widgets.Combo;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Group;

-import org.eclipse.swt.widgets.Label;

-import org.eclipse.swt.widgets.Layout;

-import org.eclipse.swt.widgets.Text;

-

-public class SWTFactory {

-

-/**

- * Returns a width hint for a button control.

- */

-public static int getButtonWidthHint(Button button) {

-	/*button.setFont(JFaceResources.getDialogFont());*/

-	PixelConverter converter= new PixelConverter(button);

-	int widthHint= converter.convertHorizontalDLUsToPixels(IDialogConstants.BUTTON_WIDTH);

-	return Math.max(widthHint, button.computeSize(SWT.DEFAULT, SWT.DEFAULT, true).x);

-}

-

-/**

- * Sets width and height hint for the button control.

- * <b>Note:</b> This is a NOP if the button's layout data is not

- * an instance of <code>GridData</code>.

- *

- * @param	the button for which to set the dimension hint

- */

-public static void setButtonDimensionHint(Button button) {

-	Assert.isNotNull(button);

-	Object gd= button.getLayoutData();

-	if (gd instanceof GridData) {

-		((GridData)gd).widthHint= getButtonWidthHint(button);

-		((GridData)gd).horizontalAlignment = GridData.FILL;

-	}

-}

-

-

-/**

- * Creates and returns a new radio button with the given

- * label.

- *

- * @param parent parent control

- * @param label button label or <code>null</code>

- *

- * @return a new radio button

- */

-public static Button createRadioButton(Composite parent, String label) {

-	Button button = new Button(parent, SWT.RADIO);

-	button.setFont(parent.getFont());

-	if (label != null) {

-		button.setText(label);

-	}

-	GridData gd = new GridData();

-	button.setLayoutData(gd);

-	setButtonDimensionHint(button);

-	return button;

-}

-

-/**

- * Creates and returns a new radio button with the given

- * label.

- *

- * @param parent parent control

- * @param label button label or <code>null</code>

- * @param hspan the number of columns to span in the parent composite

- *

- * @return a new radio button

- * @since 3.6

- */

-//public static Button createRadioButton(Composite parent, String label, int hspan) {

-//	Button button = new Button(parent, SWT.RADIO);

-//	button.setFont(parent.getFont());

-//	if (label != null) {

-//		button.setText(label);

-//	}

-//	GridData gd = new GridData(GridData.BEGINNING);

-//	gd.horizontalSpan = hspan;

-//	button.setLayoutData(gd);

-//	setButtonDimensionHint(button);

-//	return button;

-//}

-

-/**

- * Creates and returns a new push button with the given

- * label and/or image.

- *

- * @param parent parent control

- * @param label button label or <code>null</code>

- * @param image image of <code>null</code>

- *

- * @return a new push button

- */

-public static Button createPushButton(Composite parent, String label, Image image) {

-	Button button = new Button(parent, SWT.PUSH);

-	button.setFont(parent.getFont());

-	if (image != null) {

-		button.setImage(image);

-	}

-	if (label != null) {

-		button.setText(label);

-	}

-	GridData gd = new GridData();

-	button.setLayoutData(gd);

-	setButtonDimensionHint(button);

-	return button;

-}

-

-/**

- * Creates a new label widget

- * @param parent the parent composite to add this label widget to

- * @param text the text for the label

- * @param hspan the horizontal span to take up in the parent composite

- * @return the new label

- * @since 3.2

- *

- */

-public static Label createLabel(Composite parent, String text, int hspan) {

-	Label l = new Label(parent, SWT.NONE);

-	l.setFont(parent.getFont());

-	l.setText(text);

-	GridData gd = new GridData(GridData.FILL_HORIZONTAL);

-	gd.horizontalSpan = hspan;

-	gd.grabExcessHorizontalSpace = false;

-	l.setLayoutData(gd);

-	return l;

-}

-

-/**

- * Creates a new label widget

- * @param parent the parent composite to add this label widget to

- * @param text the text for the label

- * @param font the font for the label

- * @param hspan the horizontal span to take up in the parent composite

- * @return the new label

- * @since 3.3

- */

-public static Label createLabel(Composite parent, String text, Font font, int hspan) {

-	Label l = new Label(parent, SWT.NONE);

-	l.setFont(font);

-	l.setText(text);

-	GridData gd = new GridData(GridData.FILL_HORIZONTAL);

-	gd.horizontalSpan = hspan;

-	l.setLayoutData(gd);

-	return l;

-}

-

-/**

- * Creates a wrapping label

- * @param parent the parent composite to add this label to

- * @param text the text to be displayed in the label

- * @param hspan the horizontal span that label should take up in the parent composite

- * @param wrapwidth the width hint that the label should wrap at

- * @return a new label that wraps at a specified width

- * @since 3.3

- */

-public static Label createWrapLabel(Composite parent, String text, int hspan, int wrapwidth) {

-	Label l = new Label(parent, SWT.NONE | SWT.WRAP);

-	l.setFont(parent.getFont());

-	l.setText(text);

-	GridData gd = new GridData(GridData.FILL_HORIZONTAL);

-	gd.horizontalSpan = hspan;

-	gd.widthHint = wrapwidth;

-	l.setLayoutData(gd);

-	return l;

-}

-

-/**

- * Creates a new <code>CLabel</code> that will wrap at the specified width and has the specified image

- * @param parent the parent to add this label to

- * @param text the text for the label

- * @param image the image for the label

- * @param hspan the h span to take up in the parent

- * @param wrapwidth the with to wrap at

- * @return a new <code>CLabel</code>

- * @since 3.3

- */

-public static CLabel createWrapCLabel(Composite parent, String text, Image image, int hspan, int wrapwidth) {

-	CLabel label = new CLabel(parent, SWT.NONE | SWT.WRAP);

-	label.setFont(parent.getFont());

-	if(text != null) {

-		label.setText(text);

-	}

-	if(image != null) {

-		label.setImage(image);

-	}

-	GridData gd = new GridData(GridData.FILL_HORIZONTAL);

-	gd.horizontalSpan = hspan;

-	gd.widthHint = wrapwidth;

-	label.setLayoutData(gd);

-	return label;

-}

-

-/**

- * Creates a wrapping label

- * @param parent the parent composite to add this label to

- * @param text the text to be displayed in the label

- * @param hspan the horizontal span that label should take up in the parent composite

- * @return a new label that wraps at a specified width

- * @since 3.3

- */

-public static Label createWrapLabel(Composite parent, String text, int hspan) {

-	Label l = new Label(parent, SWT.NONE | SWT.WRAP);

-	l.setFont(parent.getFont());

-	l.setText(text);

-	GridData gd = new GridData(GridData.FILL_HORIZONTAL);

-	gd.horizontalSpan = hspan;

-	l.setLayoutData(gd);

-	return l;

-}

-

-/**

- * Creates a new text widget

- * @param parent the parent composite to add this text widget to

- * @param hspan the horizontal span to take up on the parent composite

- * @return the new text widget

- * @since 3.2

- *

- */

-public static Text createSingleText(Composite parent, int hspan) {

-	Text t = new Text(parent, SWT.SINGLE | SWT.BORDER);

-	t.setFont(parent.getFont());

-	GridData gd = new GridData(GridData.FILL_HORIZONTAL);

-	gd.horizontalSpan = hspan;

-	t.setLayoutData(gd);

-	return t;

-}

-

-/**

- * Creates a new text widget

- * @param parent the parent composite to add this text widget to

- * @param style the style bits for the text widget

- * @param hspan the horizontal span to take up on the parent composite

- * @param fill the fill for the grid layout

- * @return the new text widget

- * @since 3.3

- */

-public static Text createText(Composite parent, int style, int hspan, int fill) {

-	Text t = new Text(parent, style);

-	t.setFont(parent.getFont());

-	GridData gd = new GridData(fill);

-	gd.horizontalSpan = hspan;

-	t.setLayoutData(gd);

-	return t;

-}

-

-/**

- * Creates a new text widget

- * @param parent the parent composite to add this text widget to

- * @param style the style bits for the text widget

- * @param hspan the horizontal span to take up on the parent composite

- * @return the new text widget

- * @since 3.3

- */

-public static Text createText(Composite parent, int style, int hspan) {

-	Text t = new Text(parent, style);

-	t.setFont(parent.getFont());

-	GridData gd = new GridData(GridData.FILL_HORIZONTAL);

-	gd.horizontalSpan = hspan;

-	t.setLayoutData(gd);

-	return t;

-}

-

-/**

- * Creates a new text widget

- * @param parent the parent composite to add this text widget to

- * @param style the style bits for the text widget

- * @param hspan the horizontal span to take up on the parent composite

- * @param width the desired width of the text widget

- * @param height the desired height of the text widget

- * @param fill the fill style for the widget

- * @return the new text widget

- * @since 3.3

- */

-public static Text createText(Composite parent, int style, int hspan, int width, int height, int fill) {

-	Text t = new Text(parent, style);

-	t.setFont(parent.getFont());

-	GridData gd = new GridData(fill);

-	gd.horizontalSpan = hspan;

-	gd.widthHint = width;

-	gd.heightHint = height;

-	t.setLayoutData(gd);

-	return t;

-}

-

-/**

- * Creates a new styled text widget

- * @param parent the parent composite to add this styled text widget to

- * @param style the style bits for the styled text widget

- * @param hspan the horizontal span to take up on the parent composite

- * @param width the desired width of the styled text widget

- * @param height the desired height of the styled text widget

- * @param fill the fill style for the widget

- * @return the new styled text widget

- * @since 3.9

- */

-public static StyledText createStyledText(Composite parent, int style, int hspan, int width, int height, int fill) {

-	StyledText t = new StyledText(parent, style);

-	t.setFont(parent.getFont());

-	GridData gd = new GridData(fill);

-	gd.horizontalSpan = hspan;

-	gd.widthHint = width;

-	gd.heightHint = height;

-	t.setLayoutData(gd);

-	return t;

-}

-

-/**

- * Creates a new text widget

- * @param parent the parent composite to add this text widget to

- * @param style the style bits for the text widget

- * @param hspan the horizontal span to take up on the parent composite

- * @param text the initial text, not <code>null</code>

- * @return the new text widget

- * @since 3.6

- */

-public static Text createText(Composite parent, int style, int hspan, String text) {

-	Text t = new Text(parent, style);

-	t.setFont(parent.getFont());

-	GridData gd = new GridData(GridData.FILL_HORIZONTAL);

-	gd.horizontalSpan = hspan;

-	t.setLayoutData(gd);

-	t.setText(text);

-	return t;

-}

-

-/**

- * Creates a Group widget

- * @param parent the parent composite to add this group to

- * @param text the text for the heading of the group

- * @param columns the number of columns within the group

- * @param hspan the horizontal span the group should take up on the parent

- * @param fill the style for how this composite should fill into its parent

- * @return the new group

- * @since 3.2

- *

- */

-public static Group createGroup(Composite parent, String text, int columns, int hspan, int fill) {

-	Group g = new Group(parent, SWT.NONE);

-	g.setLayout(new GridLayout(columns, false));

-	g.setText(text);

-	g.setFont(parent.getFont());

-	GridData gd = new GridData(fill);

-	gd.horizontalSpan = hspan;

-	g.setLayoutData(gd);

-	return g;

-}

-

-/**

- * Creates a Composite widget

- * @param parent the parent composite to add this composite to

- * @param font the font to set on the control

- * @param columns the number of columns within the composite

- * @param hspan the horizontal span the composite should take up on the parent

- * @param fill the style for how this composite should fill into its parent

- * @return the new group

- * @since 3.3

- */

-public static Composite createComposite(Composite parent, Font font, int columns, int hspan, int fill) {

-	Composite g = new Composite(parent, SWT.NONE);

-	g.setLayout(new GridLayout(columns, false));

-	g.setFont(font);

-	GridData gd = new GridData(fill);

-	gd.horizontalSpan = hspan;

-	g.setLayoutData(gd);

-	return g;

-}

-

-

-/**

- * Creates a composite that uses the parent's font and has a grid layout

- * @param parent the parent to add the composite to

- * @param columns the number of columns the composite should have

- * @param hspan the horizontal span the new composite should take up in the parent

- * @param fill the fill style of the composite {@link GridData}

- * @return a new composite with a grid layout

- *

- * @since 3.3

- */

-public static Composite createComposite(Composite parent, int columns, int hspan, int fill) {

-	Composite g = new Composite(parent, SWT.NONE);

-	g.setLayout(new GridLayout(columns, false));

-	g.setFont(parent.getFont());

-	GridData gd = new GridData(fill);

-	gd.horizontalSpan = hspan;

-	g.setLayoutData(gd);

-	return g;

-}

-

-/**

- * Creates a vertical spacer for separating components. If applied to a

- * <code>GridLayout</code>, this method will automatically span all of the columns of the parent

- * to make vertical space

- *

- * @param parent the parent composite to add this spacer to

- * @param numlines the number of vertical lines to make as space

- * @since 3.3

- */

-public static void createVerticalSpacer(Composite parent, int numlines) {

-	Label lbl = new Label(parent, SWT.NONE);

-	GridData gd = new GridData(GridData.FILL_HORIZONTAL);

-	Layout layout = parent.getLayout();

-	if(layout instanceof GridLayout) {

-		gd.horizontalSpan = ((GridLayout)parent.getLayout()).numColumns;

-	}

-	gd.heightHint = numlines;

-	lbl.setLayoutData(gd);

-}

-

-/**

- * creates a horizontal spacer for separating components

- * @param comp

- * @param numlines

- * @since 3.3

- */

-public static void createHorizontalSpacer(Composite comp, int numlines) {

-	Label lbl = new Label(comp, SWT.NONE);

-	GridData gd = new GridData(GridData.FILL_HORIZONTAL);

-	gd.horizontalSpan = numlines;

-	lbl.setLayoutData(gd);

-}

-

-/**

- * Creates a Composite widget

- * @param parent the parent composite to add this composite to

- * @param font the font to set on the control

- * @param columns the number of columns within the composite

- * @param hspan the horizontal span the composite should take up on the parent

- * @param fill the style for how this composite should fill into its parent

- * @param marginwidth the width of the margin to place on the sides of the composite (default is 5, specified by GridLayout)

- * @param marginheight the height of the margin to place o the top and bottom of the composite

- * @return the new composite

- * @since 3.3

- */

-public static Composite createComposite(Composite parent, Font font, int columns, int hspan, int fill, int marginwidth, int marginheight) {

-	Composite g = new Composite(parent, SWT.NONE);

-	GridLayout layout = new GridLayout(columns, false);

-	layout.marginWidth = marginwidth;

-	layout.marginHeight = marginheight;

-	g.setLayout(layout);

-	g.setFont(font);

-	GridData gd = new GridData(fill);

-	gd.horizontalSpan = hspan;

-	g.setLayoutData(gd);

-	return g;

-}

-

-

-/**

- * This method is used to make a combo box with a default fill style of GridData.FILL_HORIZONTAL

- * @param parent the parent composite to add the new combo to

- * @param style the style for the Combo

- * @param hspan the horizontal span to take up on the parent composite

- * @param items the item to put into the combo

- * @return a new Combo instance

- * @since 3.3

- */

-public static Combo createCombo(Composite parent, int style, int hspan, String[] items) {

-	Combo c = new Combo(parent, style);

-	c.setFont(parent.getFont());

-	GridData gd = new GridData(GridData.FILL_HORIZONTAL);

-	gd.horizontalSpan = hspan;

-	c.setLayoutData(gd);

-	if (items != null){

-		c.setItems(items);

-	}

-	// Some platforms open up combos in bad sizes without this, see bug 245569

-	c.setVisibleItemCount(30);

-	c.select(0);

-	return c;

-}

-

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/AbstractSymbexWorkflowView.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/AbstractSymbexWorkflowView.java
deleted file mode 100644
index 8e116d5..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/AbstractSymbexWorkflowView.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2017 CEA LIST.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr
- *   - Initial API and Implementation
- *******************************************************************************/
-package org.eclipse.efm.ui.views.viewparts.swv;
-
-
-
-import org.eclipse.ui.part.ViewPart;
-
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IToolBarManager;
-
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.forms.widgets.Form;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-import org.eclipse.ui.forms.widgets.ScrolledForm;
-import org.eclipse.swt.custom.CTabFolder;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-
-public abstract class AbstractSymbexWorkflowView extends ViewPart {
-	
-	protected Composite parentComposite;
-	
-	public FormToolkit toolkit;
-	public ScrolledForm scrollform;
-	protected Composite tabbedCompositeMaster;
-	public CTabFolder tabFolder;
-	
-	protected void setupFormFrame() {
-		toolkit = new FormToolkit(parentComposite.getDisplay());
-		scrollform = toolkit.createScrolledForm(parentComposite);
-		scrollform.setText("Run Configuration");
-		GridLayout layout = new GridLayout(1, false);
-		scrollform.getBody().setLayout(layout);
-
-		//scrollform.addHelpListener(listener);
-		//this.setHelpContextId("org.eclipse.efm.runconfiguration.efm_runconf_commoncriteria_tab");
-	}
-
-	protected void setupTopLevelActionBars(Action[] acts) {
-		IActionBars bars = getViewSite().getActionBars();
-		IMenuManager pullDownMenuManager = bars.getMenuManager();
-		pullDownMenuManager.removeAll();
-		for(Action action: acts) {
-			pullDownMenuManager.add(action);
-			pullDownMenuManager.add(new Separator());
-		}
-		IToolBarManager toolBarMenuManager = bars.getToolBarManager();
-		toolBarMenuManager.removeAll();
-		fillToolBar(toolBarMenuManager, acts);
-	}
-	
-	protected void fillToolBar(IToolBarManager manager, Action[] acts) {
-		for(Action action: acts) {
-			manager.add(action);
-		}
-	}
-	
-	protected void showMessage(String message) {
-		MessageDialog.openInformation(
-				scrollform.getShell(),
-			"Symbex Workflow",
-			message);
-	}
-
-	/**
-	 * Passing the focus request to the viewer's control.
-	 */
-	public void setFocus() {
-		scrollform.setFocus();
-	}
-}
diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/SectionCompositeCreator.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/SectionCompositeCreator.java
deleted file mode 100644
index f62e120..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/SectionCompositeCreator.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr

- *   - Initial API and Implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.views.viewparts.swv;

-

-import java.util.HashMap;

-import java.util.Map;

-

-import org.eclipse.efm.ui.views.delegates.LaunchManagerSWVlinker;

-import org.eclipse.jface.action.Action;

-import org.eclipse.jface.action.IToolBarManager;

-import org.eclipse.jface.action.ToolBarManager;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.custom.CTabFolder;

-import org.eclipse.swt.layout.GridData;

-import org.eclipse.swt.layout.GridLayout;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.ToolBar;

-import org.eclipse.ui.forms.events.ExpansionAdapter;

-import org.eclipse.ui.forms.events.ExpansionEvent;

-import org.eclipse.ui.forms.widgets.Form;

-import org.eclipse.ui.forms.widgets.FormToolkit;

-import org.eclipse.ui.forms.widgets.ScrolledForm;

-import org.eclipse.ui.forms.widgets.Section;

-

-public abstract class SectionCompositeCreator {

-

-	protected Map<String, Object> last_lcAttributes;

-	

-	public Section section;

-	protected Composite sectionClient;

-	

-	public SectionCompositeCreator(SymbexWorkflowView swv, ToolBarManager tbm, Composite innertabcompo) {

-		last_lcAttributes = new HashMap<String, Object>();

-		swv.compositeSections.add(this);

-		this.addComposite(swv.toolkit, swv.scrollform, innertabcompo, tbm);

-	}

-	

-	public abstract void addComposite(FormToolkit toolkit, ScrolledForm scrollform, Composite innertabcompo, IToolBarManager tbm);

-	

-	protected void addComposite_internal(FormToolkit toolkit, ScrolledForm scrollform, Composite innertabcompo, IToolBarManager tbm, String title) {

-		section = toolkit.createSection(innertabcompo, Section.DESCRIPTION|Section.TWISTIE|Section.TITLE_BAR|Section.EXPANDED);

-		GridData gd = new GridData(SWT.FILL,SWT.FILL, true, false);

-		section.setLayoutData(gd);

-		section.addExpansionListener(new ExpansionAdapter() {

-			public void expansionStateChanged(ExpansionEvent e) {

-				scrollform.reflow(true);

-				updateCollapsedContent(null);

-			}

-		});

-		section.setText(title);

-		

-		//ToolBarManager tbm = new ToolBarManager(SWT.FLAT);

-		ToolBar toolbar = ((ToolBarManager) tbm).createControl(section);

-		section.setTextClient(toolbar);

-		

-		sectionClient = toolkit.createComposite(section);

-		sectionClient.setLayout(new GridLayout());

-		addCollapsedContent(toolkit);

-		section.setClient(sectionClient);

-	}

-	

-	protected abstract void addCollapsedContent(FormToolkit toolkit);

-	

-	public abstract void updateCollapsedContent(Map<String, Object> lcAttributes);

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/SymbexWorkflowView.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/SymbexWorkflowView.java
deleted file mode 100644
index fd2bdef..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/SymbexWorkflowView.java
+++ /dev/null
@@ -1,311 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2017 CEA LIST.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr
- *   - Initial API and Implementation
- *******************************************************************************/
-package org.eclipse.efm.ui.views.viewparts.swv;
-
-
-
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.TabFolder;
-import org.eclipse.swt.widgets.TabItem;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.ToolBarManager;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.forms.widgets.ScrolledPageBook;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CTabFolder;
-import org.eclipse.swt.custom.CTabItem;
-import org.eclipse.swt.events.DisposeEvent;
-import org.eclipse.swt.events.DisposeListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.ILaunchGroup;
-import org.eclipse.efm.core.workflow.IWorkflowConfigurationConstants;
-import org.eclipse.efm.ui.views.delegates.LaunchManagerSWVlinker;
-import org.eclipse.efm.ui.views.utils.GenericCompositeCreator;
-import org.eclipse.efm.ui.views.viewparts.swv.sectionimpls.AnalysisProfileCompositeCreator;
-import org.eclipse.efm.ui.views.viewparts.swv.sectionimpls.DebugCompositeCreator;
-import org.eclipse.efm.ui.views.viewparts.swv.sectionimpls.ExecutionCompositeCreator;
-import org.eclipse.efm.ui.views.viewparts.swv.sectionimpls.StopCriteriaCompositeCreator;
-import org.eclipse.efm.ui.views.viewparts.swv.sectionimpls.TestGenCompositeCreator;
-import org.eclipse.efm.ui.resources.UIfmlResources;
-
-public class SymbexWorkflowView extends AbstractSymbexWorkflowView {
-
-	/**
-	 * The ID of the view as specified by the extension.
-	 */
-	public static final String ID = "org.eclipse.efm.ui.views.SymbexWorkflowView";
-	
-	public Set<SectionCompositeCreator> compositeSections;
-	
-	private Text text_model_file_path;
-	
-	private Combo combo;
-
-	/**
-	 * This is a callback that will allow us
-	 * to create the viewer and initialize it.
-	 */
-	public void createPartControl(Composite parent) {
-		parentComposite = parent;
-		compositeSections = new HashSet<SectionCompositeCreator>();
-		
-		// Actions
-		makeActions();
-		setupTopLevelActionBars(new Action[] {action_launch_runconf, action_launch_debugconf, action_opend_runconf, action_opend_debugconf});
-		
-		// Frame
-		setupFormFrame();
-		
-		combo = new Combo(scrollform.getBody(), SWT.READ_ONLY);
-		UpdateSymbexWorkflowViewListener.updateAnySWVcombo(combo);
-		
-		text_model_file_path = GenericCompositeCreator.createComposite_label_text_from_toolkit(toolkit, scrollform.getBody(), "Model File :", 1);
-		
-		tabbedCompositeMaster = toolkit.createComposite(scrollform.getBody());
-		GridLayout gl = new GridLayout(1, false);
-		tabbedCompositeMaster.setLayout(gl);
-		GridData gd = new GridData(SWT.FILL,SWT.FILL, true, true);
-		tabbedCompositeMaster.setLayoutData(gd);
-		
-		tabFolder = new CTabFolder( tabbedCompositeMaster, SWT.BOTTOM );
-	    tabFolder.setLayoutData(new GridData(SWT.FILL,SWT.FILL, true, true));
-	    toolkit.adapt(tabFolder, true, true);
-		
-	    createSectionsContent();
-	
-		//PlatformUI.getWorkbench().getHelpSystem().setHelp(this, "");
-		
-		addUpdateSWVlistener();
-		
-
-	}
-	
-	private void addUpdateSWVlistener() {
-		try {
-			UpdateSymbexWorkflowViewListener uSWVl = new UpdateSymbexWorkflowViewListener(combo);
-			this.parentComposite.addDisposeListener(new DisposeListener() {
-
-	            @Override
-	            public void widgetDisposed(DisposeEvent e) {
-	            	uSWVl.selfKill();
-	            }
-	        });
-			
-		} catch (Exception e) {
-			// TODO Auto-generated catch block
-			e.printStackTrace();
-		}
-	}
-	
-	private Composite createTabItemAndComposite(String tabname) {
-		CTabItem tabItem = new CTabItem(tabFolder, SWT.NONE );
-		tabItem.setText(tabname);
-		
-		Composite tbcomp = toolkit.createComposite(tabFolder);
-		
-		GridLayout gl = new GridLayout(1, false);
-		tbcomp.setLayout(gl);
-		
-		GridData gd = new GridData(SWT.FILL,SWT.FILL, true, true);
-		tbcomp.setLayoutData(gd);
-		
-		tabItem.setControl(tbcomp);
-		
-		return tbcomp;
-	}
-	
-	private void createSectionsContent() {
-		ToolBarManager tbm;
-		
-		Composite overview_tbcomp = createTabItemAndComposite("Overview");
-		
-		tbm = new ToolBarManager(SWT.FLAT);
-		fillToolBar(tbm, new Action[] {action_launch_runconf});
-		new AnalysisProfileCompositeCreator(this, tbm, overview_tbcomp);
-		
-		tbm = new ToolBarManager(SWT.FLAT);
-		fillToolBar(tbm, new Action[] {action_launch_runconf});
-		new StopCriteriaCompositeCreator(this, tbm, overview_tbcomp);
-		
-		tbm = new ToolBarManager(SWT.FLAT);
-		fillToolBar(tbm, new Action[] {action_launch_runconf, action_opend_runconf});
-		new ExecutionCompositeCreator(this, tbm, overview_tbcomp);
-		
-		
-		
-		Composite testgen_tbcomp = createTabItemAndComposite("Test Generation");
-		
-		tbm = new ToolBarManager(SWT.FLAT);
-		fillToolBar(tbm, new Action[] {action_launch_runconf});
-		new TestGenCompositeCreator(this, tbm, testgen_tbcomp);
-		
-		
-		
-		Composite debug_tbcomp = createTabItemAndComposite("Debug");
-		
-		tbm = new ToolBarManager(SWT.FLAT);
-		fillToolBar(tbm, new Action[] {action_launch_debugconf, action_opend_debugconf});
-		new DebugCompositeCreator(this, tbm, debug_tbcomp);
-
-		
-	    tabFolder.setSelection(0);
-		
-		combo.addSelectionListener(new SelectionAdapter() {
-			@Override
-			public void widgetSelected(SelectionEvent e) {
-				int index = combo.getSelectionIndex();
-				if (index != -1) {
-					ILaunchConfiguration selectedLC = LaunchManagerSWVlinker.getSymbexRunConfigurations()[index];
-					Map<String, Object> lcAttributes;
-					try {
-						lcAttributes = selectedLC.getAttributes();
-						text_model_file_path.setText((String) lcAttributes.get(IWorkflowConfigurationConstants.ATTR_SPECIFICATION_MODEL_FILE_LOCATION));
-						for(SectionCompositeCreator ccc: compositeSections) {
-							ccc.updateCollapsedContent(lcAttributes);
-						}
-					} catch (CoreException e1) {
-						e1.printStackTrace();
-					}
-				}
-				else {
-					text_model_file_path.setText("...");
-					for(SectionCompositeCreator ccc: compositeSections) {
-						ccc.updateCollapsedContent(new HashMap<String, Object>());
-					}
-				}
-			}
-		});
-	}
-	
-	private void openLaunchConfigurationDialog(ILaunchConfiguration launchConfig, String mode) {
-		IStructuredSelection selection = new StructuredSelection(launchConfig);
-		ILaunchGroup group = DebugUITools.getLaunchGroup(launchConfig, mode);
-		String groupIdentifier = group == null ? IDebugUIConstants.ID_RUN_LAUNCH_GROUP : group.getIdentifier();
-		DebugUITools.openLaunchConfigurationDialogOnGroup(scrollform.getShell(), selection, groupIdentifier, null);
-	}
-
-	private Action action_launch_runconf;
-	private Action action_launch_debugconf;
-	private Action action_opend_runconf;
-	private Action action_opend_debugconf;
-	
-	private Action action_opend_help;
-	
-	private void makeActions() {
-		action_launch_runconf = new Action() {
-			public void run() {
-				int index = combo.getSelectionIndex();
-				if (index != -1) {
-					ILaunchConfiguration selectedLC = LaunchManagerSWVlinker.getSymbexRunConfigurations()[index];
-					if (selectedLC != null) {
-						DebugUITools.launch(selectedLC, "run");
-					} else {
-						showMessage("Selected Launch Configuration not found");
-					}
-				} else {
-					showMessage("No Launch Configuration selected");
-				}
-			}
-		};
-		action_launch_runconf.setText("Launch Run Configuration");
-		action_launch_runconf.setToolTipText("Launch Selected Run Configuration");
-		action_launch_runconf.setImageDescriptor(UIfmlResources.getImageDescriptor(UIfmlResources.IMAGE__LAUNCHRUN_ICON));
-		
-		action_launch_debugconf = new Action() {
-			public void run() {
-				int index = combo.getSelectionIndex();
-				if (index != -1) {
-					ILaunchConfiguration selectedLC = LaunchManagerSWVlinker.getSymbexRunConfigurations()[index];
-					if (selectedLC != null) {
-						DebugUITools.launch(selectedLC, "debug");
-					} else {
-						showMessage("Selected Launch Configuration not found");
-					}
-				} else {
-					showMessage("No Launch Configuration selected");
-				}
-			}
-		};
-		action_launch_debugconf.setText("Launch Debug Configuration");
-		action_launch_debugconf.setToolTipText("Launch Selected Debug Configuration");
-		action_launch_debugconf.setImageDescriptor(UIfmlResources.getImageDescriptor(UIfmlResources.IMAGE__LAUNCHDEBUG_ICON));
-
-		
-		action_opend_runconf = new Action() {
-			public void run() {
-				int index = combo.getSelectionIndex();
-				if (index != -1) {
-					ILaunchConfiguration selectedLC = LaunchManagerSWVlinker.getSymbexRunConfigurations()[index];
-					if (selectedLC != null) {
-						openLaunchConfigurationDialog(selectedLC, "run");
-					} else {
-						showMessage("Selected Launch Configuration not found");
-					}
-				} else {
-					showMessage("No Launch Configuration selected");
-				}
-			}
-		};
-		action_opend_runconf.setText("Open Run Configurations...");
-		action_opend_runconf.setToolTipText("Open the Run Configurations Dialog");
-		action_opend_runconf.setImageDescriptor(UIfmlResources.getImageDescriptor(UIfmlResources.IMAGE__DIALRUN_ICON));
-		
-		action_opend_debugconf = new Action() {
-			public void run() {
-				int index = combo.getSelectionIndex();
-				if (index != -1) {
-					ILaunchConfiguration selectedLC = LaunchManagerSWVlinker.getSymbexRunConfigurations()[index];
-					if (selectedLC != null) {
-						openLaunchConfigurationDialog(selectedLC, "debug");
-					} else {
-						showMessage("Selected Launch Configuration not found");
-					}
-				} else {
-					showMessage("No Launch Configuration selected");
-				}
-			}
-		};
-		action_opend_debugconf.setText("Open Debug Configuration...");
-		action_opend_debugconf.setToolTipText("Open the Debug Configuration Dialog");
-		action_opend_debugconf.setImageDescriptor(UIfmlResources.getImageDescriptor(UIfmlResources.IMAGE__DIALDEBUG_ICON));
-	
-		action_opend_help = new Action() {
-			public void run() {
-				//PlatformUI.getWorkbench().getHelpSystem().displayHelp(String contextId);
-			}
-		};
-		action_opend_help.setText("Open Diversity Help");
-		action_opend_help.setToolTipText("Open the Diversity Help");
-		action_opend_help.setImageDescriptor(UIfmlResources.getImageDescriptor(UIfmlResources.IMAGE__HELP_ICON));
-	}
-
-}
diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/UpdateSymbexWorkflowViewListener.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/UpdateSymbexWorkflowViewListener.java
deleted file mode 100644
index 2c14f2c..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/UpdateSymbexWorkflowViewListener.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr

- *   - Initial API and Implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.views.viewparts.swv;

-

-import java.util.Arrays;

-import java.util.HashMap;

-import java.util.Map;

-import java.util.concurrent.ThreadLocalRandom;

-

-import org.eclipse.debug.core.DebugPlugin;

-import org.eclipse.debug.core.ILaunchConfiguration;

-import org.eclipse.debug.core.ILaunchConfigurationListener;

-import org.eclipse.debug.core.ILaunchManager;

-import org.eclipse.efm.ui.views.delegates.LaunchManagerSWVlinker;

-import org.eclipse.swt.widgets.Combo;

-

-public class UpdateSymbexWorkflowViewListener implements ILaunchConfigurationListener {

-

-	

-	private static Map<Integer,UpdateSymbexWorkflowViewListener> listenerTracker = new HashMap<Integer,UpdateSymbexWorkflowViewListener>();

-	

-	private ILaunchManager lc_manager;

-	private Integer ID;

-	private Combo combo;

-	

-	public static void updateAnySWVcombo(Combo combo) {

-		String[] contents = LaunchManagerSWVlinker.getSymbexRunConfigurationNames();

-		combo.setItems(contents);

-	}

-	

-	public UpdateSymbexWorkflowViewListener(Combo combo) throws Exception {

-		int min = 0;

-		int max = 999;

-		if (UpdateSymbexWorkflowViewListener.listenerTracker.keySet().size() > max) {

-			throw new Exception();

-		}

-		int id_n = 0;

-		while(UpdateSymbexWorkflowViewListener.listenerTracker.containsKey(id_n)) {

-			id_n = ThreadLocalRandom.current().nextInt(min, max + 1);

-		}

-		this.ID = id_n;

-		this.combo = combo;

-		lc_manager = DebugPlugin.getDefault().getLaunchManager();

-		lc_manager.addLaunchConfigurationListener(this);

-	}

-	

-	public void selfKill() {

-		lc_manager = DebugPlugin.getDefault().getLaunchManager();

-		lc_manager.removeLaunchConfigurationListener(this);

-		UpdateSymbexWorkflowViewListener.listenerTracker.remove(ID);

-		try {

-			this.finalize();

-		} catch (Throwable e) {

-			// TODO Auto-generated catch block

-			e.printStackTrace();

-		}

-	}

-	

-	private void updateSWVcombo() {

-		updateAnySWVcombo(combo);

-	}

-	

-	@Override

-	public void launchConfigurationAdded(ILaunchConfiguration configuration) {

-		int cur_index = combo.getSelectionIndex();

-		String cur_name = null;

-		if (cur_index != -1) {

-			cur_name = combo.getItem(cur_index);

-		}

-		updateSWVcombo();

-		String[] contents = LaunchManagerSWVlinker.getSymbexRunConfigurationNames();

-		String chg_name = configuration.getName();

-		if(Arrays.asList(contents).contains(chg_name)) {

-			int new_index = Arrays.asList(contents).indexOf(chg_name);

-			combo.select(new_index);

-		} else if(cur_name != null && Arrays.asList(contents).contains(cur_name)) {

-			int new_index = Arrays.asList(contents).indexOf(cur_name);

-			combo.select(new_index);

-		} else {

-			combo.deselectAll();

-		}

-	}

-

-	@Override

-	public void launchConfigurationChanged(ILaunchConfiguration configuration) {

-		String[] contents = LaunchManagerSWVlinker.getSymbexRunConfigurationNames();

-		String chg_name = configuration.getName();

-		if(Arrays.asList(contents).contains(chg_name)) {

-			int new_index = Arrays.asList(contents).indexOf(chg_name);

-			combo.select(new_index);

-		} else {

-			combo.deselectAll();

-		}

-	}

-

-	@Override

-	public void launchConfigurationRemoved(ILaunchConfiguration configuration) {

-		int cur_index = combo.getSelectionIndex();

-		String cur_name = null;

-		if (cur_index != -1) {

-			System.err.println(cur_index);

-			cur_name = combo.getItem(cur_index);

-		}

-		updateSWVcombo();

-		String[] contents = LaunchManagerSWVlinker.getSymbexRunConfigurationNames();

-		if(cur_name != null && Arrays.asList(contents).contains(cur_name)) {

-			int new_index = Arrays.asList(contents).indexOf(cur_name);

-			combo.select(new_index);

-		} else {

-			combo.deselectAll();

-		}

-	}

-

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/sectionimpls/AnalysisProfileCompositeCreator.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/sectionimpls/AnalysisProfileCompositeCreator.java
deleted file mode 100644
index cdbfaf7..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/sectionimpls/AnalysisProfileCompositeCreator.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr

- *   - Initial API and Implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.views.viewparts.swv.sectionimpls;

-

-import java.util.Map;

-

-import org.eclipse.efm.core.workflow.IWorkflowConfigurationConstants;

-import org.eclipse.efm.ui.views.delegates.LaunchManagerSWVlinker;

-import org.eclipse.efm.ui.views.utils.GenericCompositeCreator;

-import org.eclipse.efm.ui.views.viewparts.swv.SectionCompositeCreator;

-import org.eclipse.efm.ui.views.viewparts.swv.SymbexWorkflowView;

-import org.eclipse.jface.action.Action;

-import org.eclipse.jface.action.IToolBarManager;

-import org.eclipse.jface.action.ToolBarManager;

-import org.eclipse.swt.custom.CTabFolder;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Text;

-import org.eclipse.ui.forms.widgets.ExpandableComposite;

-import org.eclipse.ui.forms.widgets.Form;

-import org.eclipse.ui.forms.widgets.FormToolkit;

-import org.eclipse.ui.forms.widgets.ScrolledForm;

-

-public class AnalysisProfileCompositeCreator extends SectionCompositeCreator {

-

-	private Text ana_profile;

-	private Text ana_strategy;

-	

-	public AnalysisProfileCompositeCreator(SymbexWorkflowView swv, ToolBarManager tbm, Composite innertabcompo) {

-		super(swv, tbm, innertabcompo);

-	}

-	

-	public void addComposite(FormToolkit toolkit, ScrolledForm scrollform, Composite innertabcompo, IToolBarManager tbm) {

-		addComposite_internal(toolkit, scrollform, innertabcompo, tbm, "Analysis");

-	}

-

-	@Override

-	protected void addCollapsedContent(FormToolkit toolkit) {

-		ana_profile = GenericCompositeCreator.createComposite_label_text_from_toolkit(toolkit, sectionClient, "Profile :", 2);

-		ana_strategy = GenericCompositeCreator.createComposite_label_text_from_toolkit(toolkit, sectionClient, "Strategy :", 2); 

-	

-		ExpandableComposite expert_composite = toolkit.createExpandableComposite(sectionClient, sectionClient.getStyle());

-		expert_composite.setText("Expert Configuration");

-	}

-

-	@Override

-	public void updateCollapsedContent(Map<String, Object> lcAttributes) {

-		if(lcAttributes == null) {

-			lcAttributes = last_lcAttributes;

-		}

-		if(lcAttributes.isEmpty()) {

-			ana_profile.setText("...");

-			ana_strategy.setText("...");

-		} else {

-			String anap = (String) lcAttributes.get(IWorkflowConfigurationConstants.ATTR_SPECIFICATION_MODEL_ANALYSIS);

-			ana_profile.setText(anap);

-			

-			String anas =(String) lcAttributes.get(IWorkflowConfigurationConstants.ATTR_SPECIFICATION_ANALYZE_STRATEGY);

-			ana_strategy.setText(anas);

-		}

-		last_lcAttributes = lcAttributes;

-	}

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/sectionimpls/DebugCompositeCreator.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/sectionimpls/DebugCompositeCreator.java
deleted file mode 100644
index d3254b5..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/sectionimpls/DebugCompositeCreator.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr

- *   - Initial API and Implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.views.viewparts.swv.sectionimpls;

-

-import java.util.Map;

-

-import org.eclipse.efm.core.workflow.IWorkflowConfigurationConstants;

-import org.eclipse.efm.ui.views.delegates.LaunchManagerSWVlinker;

-import org.eclipse.efm.ui.views.utils.GenericCompositeCreator;

-import org.eclipse.efm.ui.views.viewparts.swv.SectionCompositeCreator;

-import org.eclipse.efm.ui.views.viewparts.swv.SymbexWorkflowView;

-import org.eclipse.jface.action.Action;

-import org.eclipse.jface.action.IToolBarManager;

-import org.eclipse.jface.action.ToolBarManager;

-import org.eclipse.swt.custom.CTabFolder;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Text;

-import org.eclipse.ui.forms.widgets.ExpandableComposite;

-import org.eclipse.ui.forms.widgets.Form;

-import org.eclipse.ui.forms.widgets.FormToolkit;

-import org.eclipse.ui.forms.widgets.ScrolledForm;

-

-public class DebugCompositeCreator extends SectionCompositeCreator {

-	

-	public DebugCompositeCreator(SymbexWorkflowView swv, ToolBarManager tbm, Composite innertabcompo) {

-		super(swv, tbm, innertabcompo);

-	}

-	

-	public void addComposite(FormToolkit toolkit, ScrolledForm scrollform, Composite innertabcompo, IToolBarManager tbm) {

-		addComposite_internal(toolkit, scrollform, innertabcompo, tbm, "Debug");

-	}

-

-	@Override

-	protected void addCollapsedContent(FormToolkit toolkit) {

-		ExpandableComposite developper_composite = toolkit.createExpandableComposite(sectionClient, sectionClient.getStyle());

-		developper_composite.setText("Developper");

-	}

-

-	@Override

-	public void updateCollapsedContent(Map<String, Object> lcAttributes) {

-		if(lcAttributes == null) {

-			lcAttributes = last_lcAttributes;

-		}

-		if(lcAttributes.isEmpty()) {

-

-		} else {

-

-		}

-		last_lcAttributes = lcAttributes;

-	}

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/sectionimpls/ExecutionCompositeCreator.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/sectionimpls/ExecutionCompositeCreator.java
deleted file mode 100644
index b777c7b..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/sectionimpls/ExecutionCompositeCreator.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr

- *   - Initial API and Implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.views.viewparts.swv.sectionimpls;

-

-import java.util.Map;

-

-import org.eclipse.efm.core.workflow.IWorkflowConfigurationConstants;

-import org.eclipse.efm.ui.views.delegates.LaunchManagerSWVlinker;

-import org.eclipse.efm.ui.views.utils.GenericCompositeCreator;

-import org.eclipse.efm.ui.views.viewparts.swv.SectionCompositeCreator;

-import org.eclipse.efm.ui.views.viewparts.swv.SymbexWorkflowView;

-import org.eclipse.jface.action.Action;

-import org.eclipse.jface.action.IToolBarManager;

-import org.eclipse.jface.action.ToolBarManager;

-import org.eclipse.swt.custom.CTabFolder;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Text;

-import org.eclipse.ui.forms.widgets.Form;

-import org.eclipse.ui.forms.widgets.FormToolkit;

-import org.eclipse.ui.forms.widgets.ScrolledForm;

-

-public class ExecutionCompositeCreator extends SectionCompositeCreator {

-	

-	public ExecutionCompositeCreator(SymbexWorkflowView swv, ToolBarManager tbm, Composite innertabcompo) {

-		super(swv, tbm, innertabcompo);

-	}

-	

-	public void addComposite(FormToolkit toolkit, ScrolledForm scrollform, Composite innertabcompo, IToolBarManager tbm) {

-		addComposite_internal(toolkit, scrollform, innertabcompo, tbm, "Execution");

-	}

-

-	@Override

-	protected void addCollapsedContent(FormToolkit toolkit) {

-	}

-

-	@Override

-	public void updateCollapsedContent(Map<String, Object> lcAttributes) {

-		if(lcAttributes == null) {

-			lcAttributes = last_lcAttributes;

-		}

-		if(lcAttributes.isEmpty()) {

-

-		} else {

-

-		}

-		last_lcAttributes = lcAttributes;

-	}

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/sectionimpls/StopCriteriaCompositeCreator.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/sectionimpls/StopCriteriaCompositeCreator.java
deleted file mode 100644
index 4337d3f..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/sectionimpls/StopCriteriaCompositeCreator.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr

- *   - Initial API and Implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.views.viewparts.swv.sectionimpls;

-

-import java.util.Map;

-import org.eclipse.efm.core.workflow.IWorkflowConfigurationConstants;

-import org.eclipse.efm.ui.views.delegates.LaunchManagerSWVlinker;

-import org.eclipse.efm.ui.views.utils.GenericCompositeCreator;

-import org.eclipse.efm.ui.views.viewparts.swv.SectionCompositeCreator;

-import org.eclipse.efm.ui.views.viewparts.swv.SymbexWorkflowView;

-import org.eclipse.jface.action.Action;

-import org.eclipse.jface.action.IToolBarManager;

-import org.eclipse.jface.action.ToolBarManager;

-import org.eclipse.swt.custom.CTabFolder;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Text;

-import org.eclipse.ui.forms.widgets.Form;

-import org.eclipse.ui.forms.widgets.FormToolkit;

-import org.eclipse.ui.forms.widgets.ScrolledForm;

-

-public class StopCriteriaCompositeCreator extends SectionCompositeCreator {

-

-	private Text gslim_nodes;

-	private Text gslim_width;

-	private Text gslim_height;

-	

-	private Text evalim_steps;

-	private Text evalim_timeout;

-	

-	public StopCriteriaCompositeCreator(SymbexWorkflowView swv, ToolBarManager tbm, Composite innertabcompo) {

-		super(swv, tbm, innertabcompo);

-	}

-	

-	public void addComposite(FormToolkit toolkit, ScrolledForm scrollform, Composite innertabcompo, IToolBarManager tbm) {

-		addComposite_internal(toolkit, scrollform, innertabcompo, tbm, "Graph Browsing Criteria");

-	}

-

-	@Override

-	protected void addCollapsedContent(FormToolkit toolkit) {

-		toolkit.createLabel(sectionClient, "Graph size limits");

-		

-		gslim_nodes = GenericCompositeCreator.createComposite_label_text_from_toolkit(toolkit, sectionClient, "Nodes :", 2);

-		gslim_width = GenericCompositeCreator.createComposite_label_text_from_toolkit(toolkit, sectionClient, "Width :", 2);

-		gslim_height = GenericCompositeCreator.createComposite_label_text_from_toolkit(toolkit, sectionClient, "Height :", 2);

-	

-		toolkit.createLabel(sectionClient, "Evaluation Limits");

-		

-		evalim_steps = GenericCompositeCreator.createComposite_label_text_from_toolkit(toolkit, sectionClient, "Steps :", 2);

-		evalim_timeout = GenericCompositeCreator.createComposite_label_text_from_toolkit(toolkit, sectionClient, "Timeout :", 2);

-	}

-

-	@Override

-	public void updateCollapsedContent(Map<String, Object> lcAttributes) {

-		if(lcAttributes == null) {

-			lcAttributes = last_lcAttributes;

-		}

-		if(lcAttributes.isEmpty()) {

-			gslim_nodes.setText("...");

-			gslim_width.setText("...");

-			gslim_height.setText("...");

-			

-			evalim_steps.setText("...");

-			evalim_timeout.setText("...");

-		} else {

-			String gsnodes = Integer.toString( (int) lcAttributes.get(IWorkflowConfigurationConstants.ATTR_SPECIFICATION_STOP_CRITERIA_NODE) );

-			gslim_nodes.setText(gsnodes);

-			

-			String gswidth = Integer.toString( (int) lcAttributes.get(IWorkflowConfigurationConstants.ATTR_SPECIFICATION_STOP_CRITERIA_WIDTH) );

-			gslim_width.setText(gswidth);

-			

-			String gsheight = Integer.toString( (int)  lcAttributes.get(IWorkflowConfigurationConstants.ATTR_SPECIFICATION_STOP_CRITERIA_HEIGHT) );

-			gslim_height.setText(gsheight);

-			

-			String evsteps = Integer.toString( (int)  lcAttributes.get(IWorkflowConfigurationConstants.ATTR_SPECIFICATION_STOP_CRITERIA_STEPS) );

-			evalim_steps.setText(evsteps);

-			

-			String evtimeout = Integer.toString( (int)  lcAttributes.get(IWorkflowConfigurationConstants.ATTR_SPECIFICATION_STOP_CRITERIA_TIMEOUT) );

-			evalim_timeout.setText(evtimeout);

-		}

-		last_lcAttributes = lcAttributes;

-	}

-}

diff --git a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/sectionimpls/TestGenCompositeCreator.java b/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/sectionimpls/TestGenCompositeCreator.java
deleted file mode 100644
index f25ae3d..0000000
--- a/gui/org.eclipse.efm.ui.views/src/org/eclipse/efm/ui/views/viewparts/swv/sectionimpls/TestGenCompositeCreator.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2017 CEA LIST.

- *

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

- *

- * Contributors:

- *  Erwan Mahe (CEA LIST) erwan.mahe@cea.fr

- *   - Initial API and Implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.views.viewparts.swv.sectionimpls;

-

-import java.util.Map;

-

-import org.eclipse.efm.core.workflow.IWorkflowConfigurationConstants;

-import org.eclipse.efm.ui.views.delegates.LaunchManagerSWVlinker;

-import org.eclipse.efm.ui.views.utils.GenericCompositeCreator;

-import org.eclipse.efm.ui.views.viewparts.swv.SectionCompositeCreator;

-import org.eclipse.efm.ui.views.viewparts.swv.SymbexWorkflowView;

-import org.eclipse.jface.action.Action;

-import org.eclipse.jface.action.IToolBarManager;

-import org.eclipse.jface.action.ToolBarManager;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.custom.CTabFolder;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.widgets.Label;

-import org.eclipse.swt.widgets.Text;

-import org.eclipse.ui.forms.events.ExpansionAdapter;

-import org.eclipse.ui.forms.events.ExpansionEvent;

-import org.eclipse.ui.forms.widgets.ExpandableComposite;

-import org.eclipse.ui.forms.widgets.Form;

-import org.eclipse.ui.forms.widgets.FormToolkit;

-import org.eclipse.ui.forms.widgets.ImageHyperlink;

-import org.eclipse.ui.forms.widgets.ScrolledForm;

-import org.eclipse.ui.forms.widgets.TableWrapData;

-

-public class TestGenCompositeCreator extends SectionCompositeCreator {

-	

-	public TestGenCompositeCreator(SymbexWorkflowView swv, ToolBarManager tbm, Composite innertabcompo) {

-		super(swv, tbm, innertabcompo);

-	}

-	

-	public void addComposite(FormToolkit toolkit, ScrolledForm scrollform, Composite innertabcompo, IToolBarManager tbm) {

-		addComposite_internal(toolkit, scrollform, innertabcompo, tbm, "Test Generation");

-	}

-

-	@Override

-	protected void addCollapsedContent(FormToolkit toolkit) {

-		ExpandableComposite tracext_composite = toolkit.createExpandableComposite(sectionClient, sectionClient.getStyle());

-		tracext_composite.setText("Trace Extension");

-		

-		ExpandableComposite basic_composite = toolkit.createExpandableComposite(sectionClient, sectionClient.getStyle());

-		basic_composite.setText("Basic Test Generation");

-		

-		

-		

-		

-		

-		ExpandableComposite ttcn_composite = toolkit.createExpandableComposite(sectionClient, sectionClient.getStyle());

-		ttcn_composite.setText("TTCN-3 Test Generation");

-		

-		ExpandableComposite titan_composite = toolkit.createExpandableComposite(sectionClient, sectionClient.getStyle());

-		titan_composite.setText("Titan Format Configuration");

-		

-		//ImageHyperlink eci = toolkit.createImageHyperlink(ec, SWT.NULL);

-		//eci.setImage(FormArticlePlugin.getDefault().getImageRegistry().get(FormArticlePlugin.IMG_SAMPLE));

-//		ec.setTextClient(eci);

-//		ec.setText(Messages.getString("FormView.expandable")); //$NON-NLS-1$

-//		String ctext = Messages.getString("FormView.expandableText")+ //$NON-NLS-1$

-//		Messages.getString("FormView.expandablText2")+ //$NON-NLS-1$

-//		Messages.getString("FormView.expandableText3")+ //$NON-NLS-1$

-//		Messages.getString("FormView.expandableText4"); //$NON-NLS-1$

-//		Label client = toolkit.createLabel(ec, ctext, SWT.WRAP);

-//		ec.setClient(client);

-//		td = new TableWrapData();

-//		td.colspan = 2;

-//		ec.setLayoutData(td);

-//		ec.addExpansionListener(new ExpansionAdapter() {

-//			public void expansionStateChanged(ExpansionEvent e) {

-//				form.reflow(true);

-//			}

-//		});

-	}

-

-	@Override

-	public void updateCollapsedContent(Map<String, Object> lcAttributes) {

-		if(lcAttributes == null) {

-			lcAttributes = last_lcAttributes;

-		}

-		if(lcAttributes.isEmpty()) {

-

-		} else {

-

-		}

-		last_lcAttributes = lcAttributes;

-	}

-}

diff --git a/gui/org.eclipse.efm.ui/META-INF/MANIFEST.MF b/gui/org.eclipse.efm.ui/META-INF/MANIFEST.MF
index c3e89f1..3080716 100644
--- a/gui/org.eclipse.efm.ui/META-INF/MANIFEST.MF
+++ b/gui/org.eclipse.efm.ui/META-INF/MANIFEST.MF
@@ -10,3 +10,5 @@
  org.eclipse.ui.console
 Bundle-RequiredExecutionEnvironment: JavaSE-1.8
 Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.efm.ui,
+ org.eclipse.efm.ui.utils
diff --git a/gui/org.eclipse.efm.ui/plugin.xml b/gui/org.eclipse.efm.ui/plugin.xml
index e833aee..65e221c 100644
--- a/gui/org.eclipse.efm.ui/plugin.xml
+++ b/gui/org.eclipse.efm.ui/plugin.xml
@@ -1,184 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <?eclipse version="3.4"?>
-<!--
-    Copyright (c) 2017 CEA LIST.
-
-    All rights reserved. This program and the accompanying materials
-    are made available under the terms of the Eclipse Public License v1.0
-    which accompanies this distribution, and is available at
-    http://www.eclipse.org/legal/epl-v10.html
-
-    Contributors:
-     Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr
-      - Initial API and Implementation
- -->
-
 <plugin>
    <extension
-         point="org.eclipse.ui.perspectives">
-      <perspective
-            class="org.eclipse.efm.ui.PerspectiveModeling"
-            fixed="true"
-            icon="resources/icons/diversity_icon.png"
-            id="org.eclipse.efm.ui.perspective.modeling"
-            name="EFM-Modeling">
-      </perspective>
+         point="org.eclipse.ui.newWizards">
+      <category
+            id="org.eclipse.efm.ui.category.newproject"
+            name="Eclipse Formal Modeling">
+      </category>
    </extension>
    <extension
-         point="org.eclipse.ui.perspectiveExtensions">
-      <perspectiveExtension
-            targetID="org.eclipse.efm.ui.perspective.modeling">
-         <view
-               closeable="true"
-               id="org.eclipse.ui.navigator.ProjectExplorer"
-               minimized="false"
-               moveable="true"
-               ratio="0.2"
-               relationship="left"
-               relative="org.eclipse.ui.editorss"
-               showTitle="true"
-               standalone="false"
-               visible="true">
-         </view>
-         <view
-               closeable="true"
-               id="org.eclipse.ui.views.ContentOutline"
-               minimized="false"
-               moveable="true"
-               ratio="0.8"
-               relationship="right"
-               relative="org.eclipse.ui.editorss"
-               showTitle="true"
-               standalone="false"
-               visible="true">
-         </view>
-         <view
-               closeable="true"
-               id="org.eclipse.ui.views.PropertySheet"
-               minimized="false"
-               moveable="true"
-               ratio="0.6"
-               relationship="bottom"
-               relative="org.eclipse.ui.editorss"
-               showTitle="true"
-               standalone="false"
-               visible="true">
-         </view>
-         <view
-               closeable="true"
-               id="org.eclipse.ui.console.ConsoleView"
-               minimized="false"
-               moveable="true"
-               relationship="stack"
-               relative="org.eclipse.ui.views.PropertySheet"
-               showTitle="true"
-               standalone="false"
-               visible="true">
-         </view>
-         <actionSet
-               id="org.eclipse.debug.ui.launchActionSet">
-         </actionSet>
-      </perspectiveExtension>
+         point="org.eclipse.ui.preferencePages">
+      <page
+            class="org.eclipse.efm.internal.ui.preferences.EFMRootPreferencePage"
+            id="org.eclipse.efm.ui.preferences.mainPreferencePage"
+            name="Eclipse Formal Modeling">
+      </page>
    </extension>
    <extension
-         point="org.eclipse.ui.perspectives">
-      <perspective
-            class="org.eclipse.efm.ui.PerspectiveSymbexWorkflow"
-            fixed="true"
-            icon="resources/icons/diversity_icon.png"
-            id="org.eclipse.efm.ui.perspective.symbexWorkflow"
-            name="EFM-Symbex">
-      </perspective>
-   </extension>
-   <extension
-         point="org.eclipse.ui.perspectiveExtensions">
-      <perspectiveExtension
-            targetID="org.eclipse.efm.ui.perspective.symbexWorkflow">
-         <view
-               closeable="true"
-               id="org.eclipse.ui.navigator.ProjectExplorer"
-               minimized="false"
-               moveable="true"
-               ratio="0.2"
-               relationship="left"
-               relative="org.eclipse.ui.editorss"
-               showTitle="true"
-               standalone="false"
-               visible="true">
-         </view>
-         <view
-               closeable="true"
-               id="org.eclipse.ui.views.ContentOutline"
-               minimized="false"
-               moveable="true"
-               ratio="0.6"
-               relationship="bottom"
-               relative="org.eclipse.ui.navigator.ProjectExplorer"
-               showTitle="true"
-               standalone="false"
-               visible="true">
-         </view>
-         <view
-               closeable="true"
-               id="org.eclipse.efm.ui.views.SymbexWorkflowView"
-               minimized="false"
-               moveable="true"
-               ratio="0.7"
-               relationship="right"
-               relative="org.eclipse.ui.editorss"
-               showTitle="true"
-               standalone="false"
-               visible="true">
-         </view>
-         <view
-               closeable="true"
-               id="org.eclipse.ui.views.PropertySheet"
-               minimized="false"
-               moveable="true"
-               ratio="0.6"
-               relationship="bottom"
-               relative="org.eclipse.ui.editorss"
-               showTitle="true"
-               standalone="false"
-               visible="true">
-         </view>
-         <view
-               closeable="true"
-               id="org.eclipse.ui.console.ConsoleView"
-               minimized="false"
-               moveable="true"
-               relationship="stack"
-               relative="org.eclipse.ui.views.PropertySheet"
-               showTitle="true"
-               standalone="false"
-               visible="true">
-         </view>
-         <view
-               closeable="true"
-               id="org.eclipse.efm.runconfiguration.ui.views.SymbolicExecutionView"
-               minimized="false"
-               moveable="true"
-               relationship="stack"
-               relative="org.eclipse.ui.views.PropertySheet"
-               showTitle="true"
-               standalone="false"
-               visible="true">
-         </view>
-         <actionSet
-               id="org.eclipse.debug.ui.launchActionSet">
-         </actionSet>
-         <actionSet
-               id="org.eclipse.debug.ui.debugActionSet">
-         </actionSet>
-         <viewShortcut
-               id="org.eclipse.efm.ui.views.SymbexWorkflowView">
-         </viewShortcut>
-         <viewShortcut
-               id="org.eclipse.efm.runconfiguration.ui.views.SymbolicExecutionView">
-         </viewShortcut>
-         <newWizardShortcut
-               id="org.eclipse.efm.ui.newproject.standalone.EFMnp">
-         </newWizardShortcut>
-      </perspectiveExtension>
-   </extension>
+         point="org.eclipse.ui.views">
+      <category
+            id="org.eclipse.efm.ui.category.views"
+            name="Eclipse Formal Modeling">
+      </category>
+   </extension>   
+   
 </plugin>
diff --git a/gui/org.eclipse.efm.ui/pom.xml b/gui/org.eclipse.efm.ui/pom.xml
index b08c4ff..674c1ad 100644
--- a/gui/org.eclipse.efm.ui/pom.xml
+++ b/gui/org.eclipse.efm.ui/pom.xml
@@ -1,17 +1,4 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!--
-    Copyright (c) 2017 CEA LIST.
-   
-    All rights reserved. This program and the accompanying materials
-    are made available under the terms of the Eclipse Public License v1.0
-    which accompanies this distribution, and is available at
-    http://www.eclipse.org/legal/epl-v10.html
-   
-    Contributors:
-     Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr
-      - Initial API and Implementation
- -->
-
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 	<modelVersion>4.0.0</modelVersion>
diff --git a/gui/org.eclipse.efm.ui.resources/icons/Papyrus_16x16.gif b/gui/org.eclipse.efm.ui/resources/icons/Papyrus_16x16.gif
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/Papyrus_16x16.gif
rename to gui/org.eclipse.efm.ui/resources/icons/Papyrus_16x16.gif
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/Papyrus_32x32_t.gif b/gui/org.eclipse.efm.ui/resources/icons/Papyrus_32x32_t.gif
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/Papyrus_32x32_t.gif
rename to gui/org.eclipse.efm.ui/resources/icons/Papyrus_32x32_t.gif
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/Template.gif b/gui/org.eclipse.efm.ui/resources/icons/Template.gif
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/Template.gif
rename to gui/org.eclipse.efm.ui/resources/icons/Template.gif
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/add.gif b/gui/org.eclipse.efm.ui/resources/icons/add.gif
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/add.gif
rename to gui/org.eclipse.efm.ui/resources/icons/add.gif
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/alert_obj.png b/gui/org.eclipse.efm.ui/resources/icons/alert_obj.png
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/alert_obj.png
rename to gui/org.eclipse.efm.ui/resources/icons/alert_obj.png
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/commit.png b/gui/org.eclipse.efm.ui/resources/icons/commit.png
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/commit.png
rename to gui/org.eclipse.efm.ui/resources/icons/commit.png
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/debug_dial.png b/gui/org.eclipse.efm.ui/resources/icons/debug_dial.png
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/debug_dial.png
rename to gui/org.eclipse.efm.ui/resources/icons/debug_dial.png
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/debug_exc.png b/gui/org.eclipse.efm.ui/resources/icons/debug_exc.png
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/debug_exc.png
rename to gui/org.eclipse.efm.ui/resources/icons/debug_exc.png
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/error_st_obj.gif b/gui/org.eclipse.efm.ui/resources/icons/error_st_obj.gif
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/error_st_obj.gif
rename to gui/org.eclipse.efm.ui/resources/icons/error_st_obj.gif
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/genproject.gif b/gui/org.eclipse.efm.ui/resources/icons/genproject.gif
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/genproject.gif
rename to gui/org.eclipse.efm.ui/resources/icons/genproject.gif
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/graph.ico b/gui/org.eclipse.efm.ui/resources/icons/graph.ico
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/graph.ico
rename to gui/org.eclipse.efm.ui/resources/icons/graph.ico
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/help.png b/gui/org.eclipse.efm.ui/resources/icons/help.png
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/help.png
rename to gui/org.eclipse.efm.ui/resources/icons/help.png
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/incom_stat.gif b/gui/org.eclipse.efm.ui/resources/icons/incom_stat.gif
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/incom_stat.gif
rename to gui/org.eclipse.efm.ui/resources/icons/incom_stat.gif
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/library_obj.png b/gui/org.eclipse.efm.ui/resources/icons/library_obj.png
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/library_obj.png
rename to gui/org.eclipse.efm.ui/resources/icons/library_obj.png
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/overview.gif b/gui/org.eclipse.efm.ui/resources/icons/overview.gif
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/overview.gif
rename to gui/org.eclipse.efm.ui/resources/icons/overview.gif
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/pinned_ovr.gif b/gui/org.eclipse.efm.ui/resources/icons/pinned_ovr.gif
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/pinned_ovr.gif
rename to gui/org.eclipse.efm.ui/resources/icons/pinned_ovr.gif
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/pull.png b/gui/org.eclipse.efm.ui/resources/icons/pull.png
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/pull.png
rename to gui/org.eclipse.efm.ui/resources/icons/pull.png
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/push.png b/gui/org.eclipse.efm.ui/resources/icons/push.png
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/push.png
rename to gui/org.eclipse.efm.ui/resources/icons/push.png
Binary files differ
diff --git a/gui/org.eclipse.efm.ui/resources/icons/refresh_tab.png b/gui/org.eclipse.efm.ui/resources/icons/refresh_tab.png
new file mode 100644
index 0000000..3de2d8a
--- /dev/null
+++ b/gui/org.eclipse.efm.ui/resources/icons/refresh_tab.png
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/revert.gif b/gui/org.eclipse.efm.ui/resources/icons/revert.gif
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/revert.gif
rename to gui/org.eclipse.efm.ui/resources/icons/revert.gif
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/run_dial.png b/gui/org.eclipse.efm.ui/resources/icons/run_dial.png
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/run_dial.png
rename to gui/org.eclipse.efm.ui/resources/icons/run_dial.png
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/run_exc.gif b/gui/org.eclipse.efm.ui/resources/icons/run_exc.gif
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/run_exc.gif
rename to gui/org.eclipse.efm.ui/resources/icons/run_exc.gif
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/run_exc.png b/gui/org.eclipse.efm.ui/resources/icons/run_exc.png
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/run_exc.png
rename to gui/org.eclipse.efm.ui/resources/icons/run_exc.png
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/sample.gif b/gui/org.eclipse.efm.ui/resources/icons/sample.gif
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/sample.gif
rename to gui/org.eclipse.efm.ui/resources/icons/sample.gif
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/synced.gif b/gui/org.eclipse.efm.ui/resources/icons/synced.gif
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/synced.gif
rename to gui/org.eclipse.efm.ui/resources/icons/synced.gif
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/synchronize.png b/gui/org.eclipse.efm.ui/resources/icons/synchronize.png
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/synchronize.png
rename to gui/org.eclipse.efm.ui/resources/icons/synchronize.png
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.resources/icons/toc_link_obj.png b/gui/org.eclipse.efm.ui/resources/icons/toc_link_obj.png
similarity index 100%
rename from gui/org.eclipse.efm.ui.resources/icons/toc_link_obj.png
rename to gui/org.eclipse.efm.ui/resources/icons/toc_link_obj.png
Binary files differ
diff --git a/gui/org.eclipse.efm.ui.preferences_root/src/org/eclipse/efm/ui/runsession/preferences_root/EFMRootPreferencePage.java b/gui/org.eclipse.efm.ui/src/org/eclipse/efm/internal/ui/preferences/EFMRootPreferencePage.java
similarity index 94%
rename from gui/org.eclipse.efm.ui.preferences_root/src/org/eclipse/efm/ui/runsession/preferences_root/EFMRootPreferencePage.java
rename to gui/org.eclipse.efm.ui/src/org/eclipse/efm/internal/ui/preferences/EFMRootPreferencePage.java
index 53f2fa9..93edb7a 100644
--- a/gui/org.eclipse.efm.ui.preferences_root/src/org/eclipse/efm/ui/runsession/preferences_root/EFMRootPreferencePage.java
+++ b/gui/org.eclipse.efm.ui/src/org/eclipse/efm/internal/ui/preferences/EFMRootPreferencePage.java
@@ -7,8 +7,8 @@
  *

  * Contributors:

  *     Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - Initial API and implementation

- *******************************************************************************/

-package org.eclipse.efm.ui.runsession.preferences_root;

+ *******************************************************************************/
+package org.eclipse.efm.internal.ui.preferences;

 

 

 import org.eclipse.jface.preference.FieldEditorPreferencePage;

diff --git a/gui/org.eclipse.efm.ui.resources/src/org/eclipse/efm/ui/resources/HelpCoReferee.java b/gui/org.eclipse.efm.ui/src/org/eclipse/efm/ui/utils/HelpCoReferee.java
similarity index 92%
rename from gui/org.eclipse.efm.ui.resources/src/org/eclipse/efm/ui/resources/HelpCoReferee.java
rename to gui/org.eclipse.efm.ui/src/org/eclipse/efm/ui/utils/HelpCoReferee.java
index 6f07525..4f6e7f8 100644
--- a/gui/org.eclipse.efm.ui.resources/src/org/eclipse/efm/ui/resources/HelpCoReferee.java
+++ b/gui/org.eclipse.efm.ui/src/org/eclipse/efm/ui/utils/HelpCoReferee.java
@@ -9,11 +9,11 @@
  *     Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - Initial API and implementation

  *******************************************************************************/

 

-package org.eclipse.efm.ui.resources;

+package org.eclipse.efm.ui.utils;

 

 public class HelpCoReferee {

 	

-	public static final String HelpCoPluginID = "org.eclipse.efm.doc.helpcontents";

+	public static final String HelpCoPluginID = "org.eclipse.efm.modeling.doc.helpcontents";

 

 	public static final String efm_runconf_tabgroup = HelpCoPluginID + "." + "efm_runconf_tabgroup";

 	

diff --git a/gui/org.eclipse.efm.ui/src/org/eclipse/efm/ui/utils/ImageResources.java b/gui/org.eclipse.efm.ui/src/org/eclipse/efm/ui/utils/ImageResources.java
new file mode 100644
index 0000000..d094a1a
--- /dev/null
+++ b/gui/org.eclipse.efm.ui/src/org/eclipse/efm/ui/utils/ImageResources.java
@@ -0,0 +1,73 @@
+/*******************************************************************************

+ * Copyright (c) 2016 CEA LIST.

+ * All rights reserved. This program and the accompanying materials

+ * are made available under the terms of the Eclipse Public License v1.0

+ * which accompanies this distribution, and is available at

+ * http://www.eclipse.org/legal/epl-v10.html

+ *

+ * Contributors:

+ *     Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - Initial API and implementation

+ *******************************************************************************/

+package org.eclipse.efm.ui.utils;

+

+import java.net.MalformedURLException;

+import java.net.URL;

+

+import org.eclipse.jface.resource.ImageDescriptor;

+

+public class ImageResources {

+	

+	private static final String PLUGINS_ROOT = "platform:/plugin/";

+	

+	public static final String PLUGIN_ID = "org.eclipse.efm.ui";

+	

+	private static final String RESOURCES_PLUGIN_PATH = PLUGINS_ROOT + PLUGIN_ID + "/resources/";

+	

+	

+	public static final String FML_PROFILE_PATH = PLUGINS_ROOT +

+			"org.eclipse.efm.formalml/resources/profile/FormalML.profile.uml";

+	

+	

+	// Icons only below

+	private static final String ICONS_PLUGIN_PATH = RESOURCES_PLUGIN_PATH + "icons/";

+	

+	

+	public static final String IMAGE__HELP_ICON = ICONS_PLUGIN_PATH + "help.png";

+	

+	public static final String IMAGE__DIVERSITY_ICON = ICONS_PLUGIN_PATH + "diversity_icon.png";

+	

+	public static final String IMAGE__REVERT_ICON = ICONS_PLUGIN_PATH + "revert.gif";

+	

+	public static final String IMAGE__PUSH_ICON = ICONS_PLUGIN_PATH + "push.png";

+	

+	public static final String IMAGE__LAUNCHDEBUG_ICON = ICONS_PLUGIN_PATH + "debug_exc.png";

+	

+	public static final String IMAGE__LAUNCHRUN_ICON = ICONS_PLUGIN_PATH + "run_exc.png";

+	

+	

+	

+	public static final String IMAGE__DIALDEBUG_ICON = ICONS_PLUGIN_PATH + "debug_dial.png";

+	

+	public static final String IMAGE__DIALRUN_ICON = ICONS_PLUGIN_PATH + "run_dial.png";

+	

+	

+	

+	public static final String IMAGE__REFRESH_ICON = ICONS_PLUGIN_PATH + "refresh_tab.png";

+	

+	public static final String IMAGE__SYNCED_ICON = ICONS_PLUGIN_PATH + "synced.gif";

+

+	

+	// Helper/Util methods only below

+	

+	public static final ImageDescriptor getImageDescriptor(String imagePath) {

+		ImageDescriptor image_descriptor = null;

+		try {

+			image_descriptor = ImageDescriptor.createFromURL(new URL(imagePath));

+		} catch (MalformedURLException e) {

+			// TODO Auto-generated catch block

+			e.printStackTrace();

+		}

+		

+		return(image_descriptor);

+	}

+}

diff --git a/gui/pom.xml b/gui/pom.xml
index 67f69d8..b854be7 100644
--- a/gui/pom.xml
+++ b/gui/pom.xml
@@ -13,17 +13,13 @@
 	<description>This module contains the different plugins relative to the graphical user interface for efm-modeling</description>
 
 	<modules>
-		<module>org.eclipse.efm.papyrus.views.common</module>
-		<module>org.eclipse.efm.papyrus.views.property.concretesyntax</module>
-		<module>org.eclipse.efm.runconfiguration</module>
+		<module>org.eclipse.efm.editing.ui</module>
+		<module>org.eclipse.efm.modeling.ui</module>
+		<module>org.eclipse.efm.modeling.ui.newproject</module>
+		<module>org.eclipse.efm.modeling.ui.newproject.examples</module>
+		<module>org.eclipse.efm.modeling.ui.newproject.templates</module>
+		<module>org.eclipse.efm.modeling.ui.views.common</module>
+		<module>org.eclipse.efm.modeling.ui.views.property.tab.xlia</module>
 		<module>org.eclipse.efm.ui</module>
-		<module>org.eclipse.efm.ui.newproject.examples</module>
-		<module>org.eclipse.efm.ui.newproject.standalone</module>
-		<module>org.eclipse.efm.ui.newproject.templates</module>
-		<module>org.eclipse.efm.ui.preferences.runconfigurations</module>
-		<module>org.eclipse.efm.ui.preferences.xtext_root</module>
-		<module>org.eclipse.efm.ui.preferences_root</module>
-		<module>org.eclipse.efm.ui.resources</module>
-		<module>org.eclipse.efm.ui.views</module>
 	</modules>
 </project>