Create Analysis Common UI.

Change-Id: I85aba5bd8d78b270a0f433d635ba9d3f56a85dac
diff --git a/analysis/common/org.polarsys.esf.analysis.common.ui/.classpath b/analysis/common/org.polarsys.esf.analysis.common.ui/.classpath
new file mode 100644
index 0000000..d97031b
--- /dev/null
+++ b/analysis/common/org.polarsys.esf.analysis.common.ui/.classpath
@@ -0,0 +1,7 @@
+<?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.7"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="src" path="src/main/java"/>
+	<classpathentry kind="output" path="target/classes/"/>
+</classpath>
diff --git a/analysis/common/org.polarsys.esf.analysis.common.ui/.project b/analysis/common/org.polarsys.esf.analysis.common.ui/.project
new file mode 100644
index 0000000..11a7716
--- /dev/null
+++ b/analysis/common/org.polarsys.esf.analysis.common.ui/.project
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.polarsys.esf.analysis.common.ui</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>net.sf.eclipsecs.core.CheckstyleBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+	</natures>
+</projectDescription>
diff --git a/analysis/common/org.polarsys.esf.analysis.common.ui/.settings/org.eclipse.jdt.core.prefs b/analysis/common/org.polarsys.esf.analysis.common.ui/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..f42de36
--- /dev/null
+++ b/analysis/common/org.polarsys.esf.analysis.common.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+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/analysis/common/org.polarsys.esf.analysis.common.ui/META-INF/MANIFEST.MF b/analysis/common/org.polarsys.esf.analysis.common.ui/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..0e121ce
--- /dev/null
+++ b/analysis/common/org.polarsys.esf.analysis.common.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,14 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-Vendor: %Bundle-Vendor
+Bundle-Localization: src/main/resources/properties/plugin
+Bundle-SymbolicName: org.polarsys.esf.analysis.common.ui;singleton:=true
+Bundle-Version: 0.7.0.qualifier
+Bundle-Activator: org.polarsys.esf.analysis.common.ui.ESFAnalysisCommonUIActivator$Implementation
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.emf.common,
+ org.eclipse.emf.common.ui
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Bundle-ActivationPolicy: lazy
diff --git a/analysis/common/org.polarsys.esf.analysis.common.ui/about.html b/analysis/common/org.polarsys.esf.analysis.common.ui/about.html
new file mode 100644
index 0000000..d35d5ae
--- /dev/null
+++ b/analysis/common/org.polarsys.esf.analysis.common.ui/about.html
@@ -0,0 +1,28 @@
+<!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/analysis/common/org.polarsys.esf.analysis.common.ui/build.properties b/analysis/common/org.polarsys.esf.analysis.common.ui/build.properties
new file mode 100644
index 0000000..7eba2d7
--- /dev/null
+++ b/analysis/common/org.polarsys.esf.analysis.common.ui/build.properties
@@ -0,0 +1,7 @@
+source.. = src/main/java/
+output.. = target/classes/
+bin.includes = META-INF/,\
+               .,\
+               about.html,\
+               src/main/resources/,\
+               plugin.xml
diff --git a/analysis/common/org.polarsys.esf.analysis.common.ui/plugin.xml b/analysis/common/org.polarsys.esf.analysis.common.ui/plugin.xml
new file mode 100644
index 0000000..a10f44e
--- /dev/null
+++ b/analysis/common/org.polarsys.esf.analysis.common.ui/plugin.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+   <extension
+         point="org.eclipse.ui.menus">
+      <menuContribution
+            allPopups="false"
+            locationURI="popup:org.eclipse.papyrus.views.modelexplorer.modelexplorer.popup">
+         <menu
+               icon="platform:/plugin/org.polarsys.esf.analysis.common.resources.graphical/src/main/resources/icons/icon_esfalanalysis_tools_menu.png"
+               id="org.polarsys.esf.analysis.common.ui.analysis.tools.modelexplorer.menu"
+               label="%menucontext.analysis.ui.analysis.tools.menu.label">
+         </menu>
+      </menuContribution>
+      <menuContribution
+            allPopups="false"
+            locationURI="popup:org.eclipse.papyrus.infra.nattable.widget.menu?after=general.separator">
+         <menu
+               icon="platform:/plugin/org.polarsys.esf.analysis.common.resources.graphical/src/main/resources/icons/icon_esfalanalysis_tools_menu.png"
+               id="org.polarsys.esf.analysis.common.ui.analysis.tools.table.menu"
+               label="%menucontext.analysis.ui.analysis.tools.menu.label">
+         </menu>
+      </menuContribution>
+   </extension>
+
+</plugin>
diff --git a/analysis/common/org.polarsys.esf.analysis.common.ui/pom.xml b/analysis/common/org.polarsys.esf.analysis.common.ui/pom.xml
new file mode 100644
index 0000000..c2b6327
--- /dev/null
+++ b/analysis/common/org.polarsys.esf.analysis.common.ui/pom.xml
@@ -0,0 +1,20 @@
+<?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/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  
+  <parent>
+    <groupId>org.polarsys.esf</groupId>
+    <artifactId>esf-tools.analysis.common</artifactId>
+    <version>0.7.0-SNAPSHOT</version>
+  </parent>
+  
+  <groupId>org.polarsys.esf</groupId>
+  <artifactId>org.polarsys.esf.analysis.common.ui</artifactId>
+  <packaging>eclipse-plugin</packaging>
+  <name>ESF Analysis Common UI</name>
+  <description>ESF Analysis Coomon UI description.</description>
+
+</project>
\ No newline at end of file
diff --git a/analysis/common/org.polarsys.esf.analysis.common.ui/src/main/java/org/polarsys/esf/analysis/common/ui/ESFAnalysisCommonUIActivator.java b/analysis/common/org.polarsys.esf.analysis.common.ui/src/main/java/org/polarsys/esf/analysis/common/ui/ESFAnalysisCommonUIActivator.java
new file mode 100644
index 0000000..6f3e4ee
--- /dev/null
+++ b/analysis/common/org.polarsys.esf.analysis.common.ui/src/main/java/org/polarsys/esf/analysis/common/ui/ESFAnalysisCommonUIActivator.java
@@ -0,0 +1,74 @@
+/*******************************************************************************
+ * Copyright (c) 2016 ALL4TEC & 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:
+ *     ALL4TEC & CEA LIST - initial API and implementation
+ ******************************************************************************/
+package org.polarsys.esf.analysis.common.ui;
+
+import org.eclipse.emf.common.EMFPlugin;
+import org.eclipse.emf.common.ui.EclipseUIPlugin;
+import org.eclipse.emf.common.util.ResourceLocator;
+
+/**
+ * The activator class controls the plug-in life cycle.
+ *
+ * @author $Author: ymunoz $
+ * @version $Revision: 168 $
+ */
+public class ESFAnalysisCommonUIActivator  extends EMFPlugin {
+
+    /** Keep track of the encapsulating singleton. */
+    public static final ESFAnalysisCommonUIActivator INSTANCE = new ESFAnalysisCommonUIActivator();
+
+    /** Keep track of the implementation singleton. */
+    private static Implementation sPlugin = null;
+
+    /**
+     * Create the instance.
+     */
+    public ESFAnalysisCommonUIActivator() {
+        super(new ResourceLocator[] {});
+    }
+
+    /**
+     * Returns the singleton instance of the Eclipse plugin.
+     *
+     * @return The singleton instance.
+     */
+    @Override
+    public ResourceLocator getPluginResourceLocator() {
+        return sPlugin;
+    }
+
+    /**
+     * Returns the singleton instance of the Eclipse plugin.
+     *
+     * @return The singleton instance.
+     */
+    public static Implementation getPlugin() {
+        return sPlugin;
+    }
+
+    /**
+     * The actual implementation of the Eclipse <b>UIPlugin</b>.
+     */
+    public static class Implementation
+        extends EclipseUIPlugin {
+
+        /**
+         * Creates an instance.
+         */
+        public Implementation() {
+            super();
+
+            // Remember the static instance.
+            sPlugin = this;
+
+        }
+    }
+}
diff --git a/analysis/common/org.polarsys.esf.analysis.common.ui/src/main/resources/properties/plugin.properties b/analysis/common/org.polarsys.esf.analysis.common.ui/src/main/resources/properties/plugin.properties
new file mode 100644
index 0000000..3de6935
--- /dev/null
+++ b/analysis/common/org.polarsys.esf.analysis.common.ui/src/main/resources/properties/plugin.properties
@@ -0,0 +1,5 @@
+#Properties file for org.polarsys.esf.analysis.common.ui
+Bundle-Name=ESF Analysis Common UI
+Bundle-Vendor=PolarSys
+
+menucontext.analysis.ui.analysis.tools.menu.label = ESF Analysis Tools
diff --git a/analysis/common/pom.xml b/analysis/common/pom.xml
new file mode 100644
index 0000000..1a210c8
--- /dev/null
+++ b/analysis/common/pom.xml
@@ -0,0 +1,27 @@
+<?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/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  
+  <!-- PROJECT DESCRIPTION -->
+  <parent>
+    <groupId>org.polarsys.esf</groupId>
+    <artifactId>esf-tools.analysis</artifactId>
+    <version>0.7.0-SNAPSHOT</version>
+  </parent>
+  
+  <groupId>org.polarsys.esf</groupId>
+  <artifactId>esf-tools.analysis.common</artifactId>
+  <packaging>pom</packaging>
+  <name>ESF Tolls Analysis Common</name>
+  <description>ESF Tools Analysis Common description</description>
+  
+  <!-- MODULES -->  
+  <modules>
+	<module>resources</module>
+	<module>org.polarsys.esf.analysis.common.ui</module>
+  </modules>
+  
+</project>
diff --git a/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/.classpath b/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/.classpath
new file mode 100644
index 0000000..d97031b
--- /dev/null
+++ b/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/.classpath
@@ -0,0 +1,7 @@
+<?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.7"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="src" path="src/main/java"/>
+	<classpathentry kind="output" path="target/classes/"/>
+</classpath>
diff --git a/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/.project b/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/.project
new file mode 100644
index 0000000..1d23b0a
--- /dev/null
+++ b/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/.project
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.polarsys.esf.analysis.common.resources.graphical</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>net.sf.eclipsecs.core.CheckstyleBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+	</natures>
+</projectDescription>
diff --git a/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/.settings/org.eclipse.jdt.core.prefs b/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..f42de36
--- /dev/null
+++ b/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+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/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/META-INF/MANIFEST.MF b/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..0109295
--- /dev/null
+++ b/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/META-INF/MANIFEST.MF
@@ -0,0 +1,15 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-Localization: src/main/resources/properties/plugin
+Bundle-SymbolicName: org.polarsys.esf.analysis.common.resources.graphical
+Bundle-Version: 0.7.0.qualifier
+Bundle-Activator: org.polarsys.esf.analysis.common.resources.graphical.ESFAnalysisCommonResourcesGraphicalActivator$Implementation
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.emf.common,
+ org.eclipse.emf.common.ui,
+ org.eclipse.emf.ecore
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Bundle-ActivationPolicy: lazy
+Bundle-Vendor: %Bundle-Vendor
diff --git a/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/about.html b/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/about.html
new file mode 100644
index 0000000..d35d5ae
--- /dev/null
+++ b/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/about.html
@@ -0,0 +1,28 @@
+<!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/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/build.properties b/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/build.properties
new file mode 100644
index 0000000..b92e0e7
--- /dev/null
+++ b/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/build.properties
@@ -0,0 +1,6 @@
+source.. = src/main/java/
+output.. = target/classes/
+bin.includes = META-INF/,\
+               .,\
+               src/main/resources/,\
+               about.html
diff --git a/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/pom.xml b/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/pom.xml
new file mode 100644
index 0000000..eccefe0
--- /dev/null
+++ b/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/pom.xml
@@ -0,0 +1,20 @@
+<?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/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  
+  <parent>
+    <groupId>org.polarsys.esf</groupId>
+    <artifactId>esf-tools.analysis.common.resources</artifactId>
+    <version>0.7.0-SNAPSHOT</version>
+  </parent>
+  
+  <groupId>org.polarsys.esf</groupId>
+  <artifactId>org.polarsys.esf.analysis.common.resources.graphical</artifactId>
+  <packaging>eclipse-plugin</packaging>
+  <name>ESF Analsysis Common Graphical Resources</name>
+  <description>ESF Analsysis Common Graphical Resources description.</description>
+
+</project>
\ No newline at end of file
diff --git a/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/src/main/java/org/polarsys/esf/analysis/common/resources/graphical/ESFAnalysisCommonResourcesGraphicalActivator.java b/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/src/main/java/org/polarsys/esf/analysis/common/resources/graphical/ESFAnalysisCommonResourcesGraphicalActivator.java
new file mode 100644
index 0000000..c68d280
--- /dev/null
+++ b/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/src/main/java/org/polarsys/esf/analysis/common/resources/graphical/ESFAnalysisCommonResourcesGraphicalActivator.java
@@ -0,0 +1,123 @@
+/*******************************************************************************
+ * Copyright (c) 2016 ALL4TEC & 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:
+ *     ALL4TEC & CEA LIST - initial API and implementation
+ ******************************************************************************/
+package org.polarsys.esf.analysis.common.resources.graphical;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.common.EMFPlugin;
+import org.eclipse.emf.common.ui.EclipseUIPlugin;
+import org.eclipse.emf.common.util.ResourceLocator;
+
+/**
+ * The activator class controls the plug-in life cycle.
+ *
+ * @author $Author: ymunoz $
+ * @version $Revision: 168 $
+ */
+public class ESFAnalysisCommonResourcesGraphicalActivator
+    extends EMFPlugin {
+
+    /** The plug-in ID. */
+    public static final String PLUGIN_ID = "org.polarsys.esf.analysis.common.resources.graphical"; //$NON-NLS-1$
+
+    /** Keep track of this singleton activator. */
+    private static final ESFAnalysisCommonResourcesGraphicalActivator INSTANCE =
+        new ESFAnalysisCommonResourcesGraphicalActivator();
+
+    /** The shared instance of this plugin. */
+    private static Implementation sPlugin = null;
+
+    /**
+     * The default constructor.
+     */
+    public ESFAnalysisCommonResourcesGraphicalActivator() {
+        super(new ResourceLocator[] {});
+    }
+
+    /**
+     * Returns the singleton instance of the Eclipse plugin.
+     *
+     * @return The singleton instance.
+     */
+    @Override
+    public ResourceLocator getPluginResourceLocator() {
+        return sPlugin;
+    }
+
+    /**
+     * Returns the shared instance.
+     *
+     * @return The shared instance
+     */
+    public static Implementation getPlugin() {
+        return sPlugin;
+    }
+
+    /**
+     * Create an Error status with the data given in parameter and log it.
+     *
+     * @param pMessage The message to log
+     * @param pException The exception to log
+     */
+    public static void logError(final String pMessage, final Exception pException) {
+        // Create the Error status
+        IStatus vStatus = new Status(IStatus.ERROR, PLUGIN_ID, IStatus.ERROR, pMessage, pException);
+
+        // Log it
+        INSTANCE.log(vStatus);
+    }
+
+    /**
+     * Create a Warning status with the data given in parameter and log it.
+     *
+     * @param pMessage The message to log
+     * @param pException The exception to log
+     */
+    public static void logWarning(final String pMessage, final Exception pException) {
+        // Create the Warning status
+        IStatus vStatus = new Status(IStatus.WARNING, PLUGIN_ID, IStatus.WARNING, pMessage, pException);
+
+        // Log it
+        INSTANCE.log(vStatus);
+    }
+
+    /**
+     * Create an Info status with the data given in parameter and log it.
+     *
+     * @param pMessage The message to log
+     * @param pException The exception to log
+     */
+    public static void logInfo(final String pMessage, final Exception pException) {
+        // Create the Info status
+        IStatus vStatus = new Status(IStatus.INFO, PLUGIN_ID, IStatus.INFO, pMessage, pException);
+
+        // Log it
+        INSTANCE.log(vStatus);
+    }
+
+    /**
+     * The actual implementation of the Eclipse <b>UIPlugin</b>.
+     */
+    public static class Implementation
+        extends EclipseUIPlugin {
+
+        /**
+         * Default constructor.
+         */
+        public Implementation() {
+            super();
+
+            // Remember the static instance
+            sPlugin = this;
+        }
+    }
+
+}
diff --git a/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/src/main/resources/icons/icon_esfalanalysis_tools_menu.png b/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/src/main/resources/icons/icon_esfalanalysis_tools_menu.png
new file mode 100644
index 0000000..cf3d97f
--- /dev/null
+++ b/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/src/main/resources/icons/icon_esfalanalysis_tools_menu.png
Binary files differ
diff --git a/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/src/main/resources/properties/plugin.properties b/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/src/main/resources/properties/plugin.properties
new file mode 100644
index 0000000..430f758
--- /dev/null
+++ b/analysis/common/resources/org.polarsys.esf.analysis.common.resources.graphical/src/main/resources/properties/plugin.properties
@@ -0,0 +1,3 @@
+#Properties file for org.polarsys.esf.analysis.common.resources.graphical
+Bundle-Name=ESF Analysis Common Graphical Resources
+Bundle-Vendor=PolarSys
diff --git a/analysis/common/resources/pom.xml b/analysis/common/resources/pom.xml
new file mode 100644
index 0000000..335fbe9
--- /dev/null
+++ b/analysis/common/resources/pom.xml
@@ -0,0 +1,26 @@
+<?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/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  
+  <!-- PROJECT DESCRIPTION -->
+  <parent>
+    <groupId>org.polarsys.esf</groupId>
+    <artifactId>esf-tools.analysis.common</artifactId>
+    <version>0.7.0-SNAPSHOT</version>
+  </parent>
+  
+  <groupId>org.polarsys.esf</groupId>
+  <artifactId>esf-tools.analysis.common.resources</artifactId>
+  <packaging>pom</packaging>
+  <name>ESF Analysis Common Resources</name>
+  <description>ESF Analysis Common Resources description.</description>
+  
+  <!-- MODULES -->  
+  <modules>
+    <module>org.polarsys.esf.analysis.common.resources.graphical</module>
+  </modules>
+  
+</project>
\ No newline at end of file
diff --git a/analysis/fmea/execution/org.polarsys.esf.fmea.execution.ui/plugin.xml b/analysis/fmea/execution/org.polarsys.esf.fmea.execution.ui/plugin.xml
index efa6dc4..081bd43 100644
--- a/analysis/fmea/execution/org.polarsys.esf.fmea.execution.ui/plugin.xml
+++ b/analysis/fmea/execution/org.polarsys.esf.fmea.execution.ui/plugin.xml
@@ -112,48 +112,56 @@
             allPopups="false"
             locationURI="popup:org.eclipse.papyrus.views.modelexplorer.modelexplorer.popup">
          <menu
-               icon="platform:/plugin/org.polarsys.esf.fmea.resources.graphical/src/main/resources/icons/icon_esffmea_menu.png"
-               id="org.polarsys.esf.fmea.execution.ui.menu"
-               label="%menucontext.execution.ui.menu.label">
-            <command
-                  commandId="org.polarsys.esf.fmea.execution.ui.new.fmea.command"
-                  label="%menucontext.execution.ui.new.fmea.label"
-                  style="push">
-            </command>
-            <command
-                  commandId="org.polarsys.esf.fmea.execution.ui.create.sfailuremode.command"
-                  label="%menucontext.execution.ui.create.sfailuremode.label"
-                  style="push">
-            </command>
-            <command
-                  commandId="org.polarsys.esf.fmea.execution.ui.create.fmea.table.command"
-                  label="%menucontext.execution.ui.create.fmea.table.label"
-                  style="push">
-            </command>
+               id="org.polarsys.esf.analysis.common.ui.analysis.tools.modelexplorer.menu"
+               label="%menucontext.analysis.ui.analysis.tools.menu.label">
+            <menu
+                  icon="platform:/plugin/org.polarsys.esf.fmea.resources.graphical/src/main/resources/icons/icon_esffmea_menu.png"
+                  id="org.polarsys.esf.fmea.execution.ui.menu"
+                  label="%menucontext.execution.ui.menu.label">
+               <command
+                     commandId="org.polarsys.esf.fmea.execution.ui.new.fmea.command"
+                     label="%menucontext.execution.ui.new.fmea.label"
+                     style="push">
+               </command>
+               <command
+                     commandId="org.polarsys.esf.fmea.execution.ui.create.sfailuremode.command"
+                     label="%menucontext.execution.ui.create.sfailuremode.label"
+                     style="push">
+               </command>
+               <command
+                     commandId="org.polarsys.esf.fmea.execution.ui.create.fmea.table.command"
+                     label="%menucontext.execution.ui.create.fmea.table.label"
+                     style="push">
+               </command>
+            </menu>
          </menu>
       </menuContribution>
       <menuContribution
             allPopups="false"
             locationURI="popup:org.eclipse.papyrus.infra.nattable.widget.menu?after=general.separator">
          <menu
-               icon="platform:/plugin/org.polarsys.esf.fmea.resources.graphical/src/main/resources/icons/icon_esffmea_menu.png"
-               id="org.polarsys.esf..execution.ui.table.menu"
-               label="%menucontext.execution.ui.menu.label">
-            <command
-                  commandId="org.polarsys.esf.fmea.execution.ui.table.create.sfailuremode.command"
-                  label="%menucontext.execution.ui.create.sfailuremode.label"
-                  style="push">
-            </command>
-            <visibleWhen
-                  checkEnabled="false">
-               <with
-                     variable="selection">
-                  <test
-                        property="org.eclipse.papyrus.infra.nattable.tester.isNattableWidget"
-                        value="true">
-                  </test>
-               </with>
-            </visibleWhen>
+               id="org.polarsys.esf.analysis.common.ui.analysis.tools.table.menu"
+               label="%menucontext.analysis.ui.analysis.tools.menu.label">
+            <menu
+                  icon="platform:/plugin/org.polarsys.esf.fmea.resources.graphical/src/main/resources/icons/icon_esffmea_menu.png"
+                  id="org.polarsys.esf..execution.ui.table.menu"
+                  label="%menucontext.execution.ui.menu.label">
+               <command
+                     commandId="org.polarsys.esf.fmea.execution.ui.table.create.sfailuremode.command"
+                     label="%menucontext.execution.ui.create.sfailuremode.label"
+                     style="push">
+               </command>
+               <visibleWhen
+                     checkEnabled="false">
+                  <with
+                        variable="selection">
+                     <test
+                           property="org.eclipse.papyrus.infra.nattable.tester.isNattableWidget"
+                           value="true">
+                     </test>
+                  </with>
+               </visibleWhen>
+            </menu>
          </menu>
       </menuContribution>
    </extension>
diff --git a/analysis/fmea/execution/org.polarsys.esf.fmea.execution.ui/src/main/resources/properties/plugin.properties b/analysis/fmea/execution/org.polarsys.esf.fmea.execution.ui/src/main/resources/properties/plugin.properties
index 2ffc84e..340a499 100644
--- a/analysis/fmea/execution/org.polarsys.esf.fmea.execution.ui/src/main/resources/properties/plugin.properties
+++ b/analysis/fmea/execution/org.polarsys.esf.fmea.execution.ui/src/main/resources/properties/plugin.properties
@@ -2,6 +2,8 @@
 Bundle-Name=FMEA Execution UI
 Bundle-Vendor=PolarSys
 
+menucontext.analysis.ui.analysis.tools.menu.label = ESF Analysis Tools
+
 menucontext.execution.ui.menu.label = ESF FMEA
 menucontext.execution.ui.new.fmea.label = Start new FMEA
 menucontext.execution.ui.new.fmea.description = Start new FMEA
diff --git a/analysis/localanalysis/execution/org.polarsys.esf.localanalysis.execution.ui/plugin.xml b/analysis/localanalysis/execution/org.polarsys.esf.localanalysis.execution.ui/plugin.xml
index 50844c8..8775c2a 100644
--- a/analysis/localanalysis/execution/org.polarsys.esf.localanalysis.execution.ui/plugin.xml
+++ b/analysis/localanalysis/execution/org.polarsys.esf.localanalysis.execution.ui/plugin.xml
@@ -258,58 +258,62 @@
             allPopups="false"
             locationURI="popup:org.eclipse.papyrus.views.modelexplorer.modelexplorer.popup">
          <menu
-               icon="platform:/plugin/org.polarsys.esf.localanalysis.resources.graphical/src/main/resources/icons/icon_esflocalanalysis_menu.png"
-               id="org.polarsys.esf.localanalysis.execution.ui.menu"
-               label="%menucontext.execution.ui.menu.label">
-            <command
-                  commandId="org.polarsys.esf.localanalysis.execution.ui.new.localanalysis.command"
-                  label="%menucontext.execution.ui.new.localanalysis.label"
-                  style="push">
-            </command>
-            <command
-                  commandId="org.polarsys.esf.localanalysis.execution.ui.create.esflocalanalysis.diagram.command"
-                  label="%menucontext.execution.ui.create.esflocalanalysis.diagram.label"
-                  style="push">
-            </command>
+               id="org.polarsys.esf.analysis.common.ui.analysis.tools.modelexplorer.menu"
+               label="%menucontext.analysis.ui.analysis.tools.menu.label">
             <menu
-                  icon="platform:/plugin/org.polarsys.esf.localanalysis.resources.graphical/src/main/resources/icons/profile/icon_sfearedeventslibrary.png"
-                  id="org.polarsys.esf.localanalysis.execution.ui.menu.sfearedevent.newchild"
-                  label="%menucontext.execution.ui.menu.sfearedevent.newchild.label">
-                   <command
-                  commandId="org.polarsys.esf.localanalysis.execution.ui.create.sfearedeventslibrary.command"
-                  label="%menucontext.execution.ui.create.sfearedeventslibrary.label"
-                  style="push">
-            </command>
-            <command
-                  commandId="org.polarsys.esf.localanalysis.execution.ui.create.sfearedeventsfamily.command"
-                  label="%menucontext.execution.ui.create.sfearedeventsfamily.label"
-                  style="push">
-            </command>
-            <command
-                  commandId="org.polarsys.esf.localanalysis.execution.ui.create.sfearedevent.command"
-                  label="%menucontext.execution.ui.create.sfearedevent.label"
-                  style="push">
-            </command>
-            </menu>
-            <menu
-                  icon="platform:/plugin/org.polarsys.esf.localanalysis.resources.graphical/src/main/resources/icons/profile/icon_ssystemeventslibrary.png"
-                  id="org.polarsys.esf.localanalysis.execution.ui.menu.ssystemevent.newchild"
-                  label="%menucontext.execution.ui.menu.ssystemevent.newchild.label">
-                   <command
-                  commandId="org.polarsys.esf.localanalysis.execution.ui.create.ssystemeventslibrary.command"
-                  label="%menucontext.execution.ui.create.ssystemeventslibrary.label"
-                  style="push">
-            </command>
-            <command
-                  commandId="org.polarsys.esf.localanalysis.execution.ui.create.ssystemeventtype.command"
-                  label="%menucontext.execution.ui.create.ssystemeventtype.label"
-                  style="push">
-            </command>
-            <command
-                  commandId="org.polarsys.esf.localanalysis.execution.ui.create.ssystemeventslibrary.table.command"
-                  label="%menucontext.execution.ui.create.ssystemeventslibrary.table.label"
-                  style="push">
-            </command>
+                  icon="platform:/plugin/org.polarsys.esf.localanalysis.resources.graphical/src/main/resources/icons/icon_esflocalanalysis_menu.png"
+                  id="org.polarsys.esf.localanalysis.execution.ui.menu"
+                  label="%menucontext.execution.ui.menu.label">
+               <command
+                     commandId="org.polarsys.esf.localanalysis.execution.ui.new.localanalysis.command"
+                     label="%menucontext.execution.ui.new.localanalysis.label"
+                     style="push">
+               </command>
+               <command
+                     commandId="org.polarsys.esf.localanalysis.execution.ui.create.esflocalanalysis.diagram.command"
+                     label="%menucontext.execution.ui.create.esflocalanalysis.diagram.label"
+                     style="push">
+               </command>
+               <menu
+                     icon="platform:/plugin/org.polarsys.esf.localanalysis.resources.graphical/src/main/resources/icons/profile/icon_sfearedeventslibrary.png"
+                     id="org.polarsys.esf.localanalysis.execution.ui.menu.sfearedevent.newchild"
+                     label="%menucontext.execution.ui.menu.sfearedevent.newchild.label">
+                  <command
+                        commandId="org.polarsys.esf.localanalysis.execution.ui.create.sfearedeventslibrary.command"
+                        label="%menucontext.execution.ui.create.sfearedeventslibrary.label"
+                        style="push">
+                  </command>
+                  <command
+                        commandId="org.polarsys.esf.localanalysis.execution.ui.create.sfearedeventsfamily.command"
+                        label="%menucontext.execution.ui.create.sfearedeventsfamily.label"
+                        style="push">
+                  </command>
+                  <command
+                        commandId="org.polarsys.esf.localanalysis.execution.ui.create.sfearedevent.command"
+                        label="%menucontext.execution.ui.create.sfearedevent.label"
+                        style="push">
+                  </command>
+               </menu>
+               <menu
+                     icon="platform:/plugin/org.polarsys.esf.localanalysis.resources.graphical/src/main/resources/icons/profile/icon_ssystemeventslibrary.png"
+                     id="org.polarsys.esf.localanalysis.execution.ui.menu.ssystemevent.newchild"
+                     label="%menucontext.execution.ui.menu.ssystemevent.newchild.label">
+                  <command
+                        commandId="org.polarsys.esf.localanalysis.execution.ui.create.ssystemeventslibrary.command"
+                        label="%menucontext.execution.ui.create.ssystemeventslibrary.label"
+                        style="push">
+                  </command>
+                  <command
+                        commandId="org.polarsys.esf.localanalysis.execution.ui.create.ssystemeventtype.command"
+                        label="%menucontext.execution.ui.create.ssystemeventtype.label"
+                        style="push">
+                  </command>
+                  <command
+                        commandId="org.polarsys.esf.localanalysis.execution.ui.create.ssystemeventslibrary.table.command"
+                        label="%menucontext.execution.ui.create.ssystemeventslibrary.table.label"
+                        style="push">
+                  </command>
+               </menu>
             </menu>
          </menu>
       </menuContribution>
@@ -317,24 +321,28 @@
             allPopups="false"
             locationURI="popup:org.eclipse.papyrus.infra.nattable.widget.menu?after=general.separator">
          <menu
-               icon="platform:/plugin/org.polarsys.esf.localanalysis.resources.graphical/src/main/resources/icons/icon_esflocalanalysis_menu.png"
-               id="org.polarsys.esf.localanalysis.execution.ui.table.menu"
-               label="%menucontext.execution.ui.menu.label">
-            <command
-                  commandId="org.polarsys.esf.localanalysis.execution.ui.table.create.ssystemeventtype.command"
-                  label="%menucontext.execution.ui.create.ssystemeventtype.label"
-                  style="push">
-            </command>
-            <visibleWhen
-                  checkEnabled="false">
-               <with
-                     variable="selection">
-                  <test
-                        property="org.eclipse.papyrus.infra.nattable.tester.isNattableWidget"
-                        value="true">
-                  </test>
-               </with>
-            </visibleWhen>
+               id="org.polarsys.esf.analysis.common.ui.analysis.tools.table.menu"
+               label="%menucontext.analysis.ui.analysis.tools.menu.label">
+            <menu
+                  icon="platform:/plugin/org.polarsys.esf.localanalysis.resources.graphical/src/main/resources/icons/icon_esflocalanalysis_menu.png"
+                  id="org.polarsys.esf.localanalysis.execution.ui.table.menu"
+                  label="%menucontext.execution.ui.menu.label">
+               <command
+                     commandId="org.polarsys.esf.localanalysis.execution.ui.table.create.ssystemeventtype.command"
+                     label="%menucontext.execution.ui.create.ssystemeventtype.label"
+                     style="push">
+               </command>
+               <visibleWhen
+                     checkEnabled="false">
+                  <with
+                        variable="selection">
+                     <test
+                           property="org.eclipse.papyrus.infra.nattable.tester.isNattableWidget"
+                           value="true">
+                     </test>
+                  </with>
+               </visibleWhen>
+            </menu>
          </menu>
       </menuContribution>
    </extension>
diff --git a/analysis/localanalysis/execution/org.polarsys.esf.localanalysis.execution.ui/src/main/resources/properties/plugin.properties b/analysis/localanalysis/execution/org.polarsys.esf.localanalysis.execution.ui/src/main/resources/properties/plugin.properties
index 9ec8d38..c34ae23 100644
--- a/analysis/localanalysis/execution/org.polarsys.esf.localanalysis.execution.ui/src/main/resources/properties/plugin.properties
+++ b/analysis/localanalysis/execution/org.polarsys.esf.localanalysis.execution.ui/src/main/resources/properties/plugin.properties
@@ -2,6 +2,8 @@
 Bundle-Name=Local Analysis Execution UI
 Bundle-Vendor=PolarSys
 
+menucontext.analysis.ui.analysis.tools.menu.label = ESF Analysis Tools
+
 menucontext.execution.ui.menu.label = ESF Local Analysis
 menucontext.execution.ui.new.localanalysis.label = Start new Local Analysis
 menucontext.execution.ui.new.localanalysis.description = Start new Local Analysis
diff --git a/analysis/pom.xml b/analysis/pom.xml
index ba12e3f..47d0378 100644
--- a/analysis/pom.xml
+++ b/analysis/pom.xml
@@ -20,6 +20,7 @@
   
   <!-- MODULES -->  
   <modules>
+	<module>common</module>
 	<module>fmea</module>
     <module>localanalysis</module>
   </modules>