diff options
author | Ansgar Radermacher | 2013-11-12 12:08:47 +0000 |
---|---|---|
committer | Ansgar Radermacher | 2013-11-12 15:14:45 +0000 |
commit | 5e133bb518cd90ad8fbfbe364489f1ac2b19d1f7 (patch) | |
tree | 5ec1e9eeca625f1b8c9e05067080d1c441a5612f | |
parent | aafe5e09753190dd5a850e278efe84a9661af6cd (diff) | |
download | org.eclipse.papyrus-5e133bb518cd90ad8fbfbe364489f1ac2b19d1f7.tar.gz org.eclipse.papyrus-5e133bb518cd90ad8fbfbe364489f1ac2b19d1f7.tar.xz org.eclipse.papyrus-5e133bb518cd90ad8fbfbe364489f1ac2b19d1f7.zip |
- bug 420280 [QDesigner] refactoring: separation of user interface and transformation plugin: creation of UI plugin. Moving handlers, dialogs & icons to UI plugin
63 files changed, 1120 insertions, 743 deletions
diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/META-INF/MANIFEST.MF b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/META-INF/MANIFEST.MF index 97a10c9599d..0b05885a9d4 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/META-INF/MANIFEST.MF +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/META-INF/MANIFEST.MF @@ -1,24 +1,14 @@ Manifest-Version: 1.0
-Require-Bundle: org.eclipse.ui,
- org.eclipse.core.runtime,
+Require-Bundle: org.eclipse.core.runtime,
org.eclipse.emf.ecore,
org.eclipse.uml2.uml,
- org.eclipse.core.resources,
org.eclipse.ui.ide,
+ org.eclipse.core.resources,
org.eclipse.papyrus.fcm.profile;bundle-version="0.10.1",
- org.eclipse.emf.edit.ui,
org.eclipse.papyrus.marte.static.profile;bundle-version="0.10.1",
org.eclipse.papyrus.qompass.designer.vsl;bundle-version="0.10.1",
org.eclipse.papyrus.uml.modelexplorer.widgets;bundle-version="0.10.1",
org.eclipse.emf.compare;bundle-version="3.0.0",
- org.eclipse.papyrus.uml.diagram.common;bundle-version="0.10.1",
- org.eclipse.papyrus.infra.gmfdiag.widgets;bundle-version="0.10.1",
- org.eclipse.draw2d;bundle-version="3.8.0",
- org.eclipse.papyrus.uml.modelexplorer;bundle-version="0.10.1",
- org.eclipse.gef;bundle-version="3.8.0",
- org.eclipse.gmf.runtime.notation;bundle-version="1.5.0",
- org.eclipse.papyrus.uml.profile;bundle-version="0.10.1",
- org.eclipse.papyrus.uml.properties;bundle-version="0.10.1",
org.eclipse.papyrus.uml.tools;bundle-version="0.10.1",
org.eclipse.acceleo.engine;bundle-version="3.1.0",
org.eclipse.acceleo.parser;bundle-version="3.1.0",
@@ -32,15 +22,18 @@ Require-Bundle: org.eclipse.ui, org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.3.0",
org.eclipse.papyrus.infra.services.labelprovider;bundle-version="0.10.1",
org.eclipse.papyrus.uml.tools.utils;bundle-version="0.10.1",
- org.eclipse.papyrus.infra.widgets.toolbox;bundle-version="0.10.1"
+ org.eclipse.papyrus.infra.widgets.toolbox;bundle-version="0.10.1",
+ org.eclipse.papyrus.infra.core.log;bundle-version="0.10.1",
+ org.eclipse.ui
Export-Package: org.eclipse.papyrus.qompass.designer.core,
org.eclipse.papyrus.qompass.designer.core.acceleo,
+ org.eclipse.papyrus.qompass.designer.core.commands,
org.eclipse.papyrus.qompass.designer.core.deployment,
- org.eclipse.papyrus.qompass.designer.core.dialogs,
org.eclipse.papyrus.qompass.designer.core.extensions,
- org.eclipse.papyrus.qompass.designer.core.handlers,
+ org.eclipse.papyrus.qompass.designer.core.generate,
org.eclipse.papyrus.qompass.designer.core.listeners,
org.eclipse.papyrus.qompass.designer.core.preferences,
+ org.eclipse.papyrus.qompass.designer.core.sync,
org.eclipse.papyrus.qompass.designer.core.templates,
org.eclipse.papyrus.qompass.designer.core.transformations,
org.eclipse.papyrus.qompass.designer.core.transformations.filters
diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/build.acceleo b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/build.acceleo index c2307b2a091..3bf89823b72 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/build.acceleo +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/build.acceleo @@ -18,7 +18,7 @@ <acceleoCompiler sourceFolder="${target.folder}" outputFolder="${target.folder}" - dependencies="${target.folder}/../../org.eclipse.papyrus.fcm.profile;${target.folder}/../../org.eclipse.papyrus.qompass.designer.vsl;${target.folder}/../../org.eclipse.papyrus.cpp.profile;${target.folder}/../../org.eclipse.papyrus.acceleo;${target.folder}/../../org.eclipse.papyrus.uml.tools.utils;${target.folder}/../../org.eclipse.papyrus.infra.widgets.toolbox;" + dependencies="${target.folder}/../../org.eclipse.papyrus.fcm.profile;${target.folder}/../../org.eclipse.papyrus.infra.core.sasheditor;${target.folder}/../../org.eclipse.papyrus.infra.core.sasheditor.di;${target.folder}/../../org.eclipse.papyrus.qompass.designer.vsl;${target.folder}/../../org.eclipse.papyrus.cpp.profile;${target.folder}/../../org.eclipse.papyrus.acceleo;${target.folder}/../../org.eclipse.papyrus.uml.tools.utils;${target.folder}/../../org.eclipse.papyrus.infra.widgets.toolbox;" binaryResource="false" packagesToRegister=""> </acceleoCompiler> diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/plugin.xml b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/plugin.xml index 59b918a6ee9..3639bad5ebd 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/plugin.xml +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/plugin.xml @@ -11,355 +11,4 @@ realization="org.eclipse.papyrus.qompass.designer.core.listeners.ModelListener"> </listener> </extension> - <extension - point="org.eclipse.ui.commands"> - <command - categoryId="org.eclipse.papyrus.editor.category" - defaultHandler="org.eclipse.papyrus.qompass.designer.core.handlers.CreateDepPlanHandler" - description="Create deployment plan" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.CreateDepPlanCmd" - name="dummy"> - </command> - <command - categoryId="org.eclipse.papyrus.editor.category" - defaultHandler="org.eclipse.papyrus.qompass.designer.core.handlers.CreatePlatformHandler" - description="Create platform definition" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.CreatePlatformCmd" - name="dummy"> - </command> - <command - categoryId="org.eclipse.papyrus.editor.category" - defaultHandler="org.eclipse.papyrus.qompass.designer.core.handlers.InstantiateDepPlanHandler" - description="Generate deployment models and code from plan" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.InstantiateDepPlanCmd" - name="dummy"> - </command> - <command - categoryId="org.eclipse.papyrus.editor.category" - defaultHandler="org.eclipse.papyrus.qompass.designer.core.handlers.SyncHandler" - description="Synchronize derived elements" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.SyncCmd" - name="dummy"> - </command> - <command - categoryId="org.eclipse.papyrus.editor.category" - defaultHandler="org.eclipse.papyrus.qompass.designer.core.handlers.SelectConnectorHandler" - description="Choose connector type and implementation" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.SelectionConnectorCmd" - name="dummy"> - </command> - <command - categoryId="org.eclipse.papyrus.editor.category" - defaultHandler="org.eclipse.papyrus.qompass.designer.core.handlers.SelectContainerHandler" - description="Choose container properties" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.SelectionContainerCmd" - name="dummy"> - </command> - <command - categoryId="org.eclipse.papyrus.editor.category" - defaultHandler="org.eclipse.papyrus.qompass.designer.core.handlers.ConfigureInstanceHandler" - description="Configure instance" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.ConfigureInstanceCmd" - name="dummy"> - </command> - <command - categoryId="org.eclipse.papyrus.editor.category" - defaultHandler="org.eclipse.papyrus.qompass.designer.core.handlers.ConfigurePortHandler" - description="Configure ports" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.ConfigurePortsCmd" - name="dummy"> - </command> - <command - categoryId="org.eclipse.papyrus.editor.category" - defaultHandler="org.eclipse.papyrus.qompass.designer.core.handlers.AddProfileAndModelLibsHandler" - description="Add Qompass profiles and model libraries" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.AddProfileAndModelLibsCmd" - name="dummy"> - </command> - <command - categoryId="org.eclipse.papyrus.editor.category" - defaultHandler="org.eclipse.papyrus.qompass.designer.core.handlers.AllocateHandler" - description="Allocate to node" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.AllocateCmd" - name="dummy"> - </command> - </extension> - <extension - point="org.eclipse.ui.menus"> - <menuContribution - allPopups="true" - locationURI="popup:org.eclipse.papyrus.views.modelexplorer.modelexplorer.popup"> - <menu - icon="icons/Qompass-16x16.gif" - id="org.eclipse.papyrus.views.modelexplorer.popup.qompassdesigner" - label="Qompass Designer"> - </menu> - </menuContribution> - <menuContribution - allPopups="false" - locationURI="popup:org.eclipse.papyrus.views.modelexplorer.popup.qompassdesigner"> - <command - commandId="org.eclipse.papyrus.qompass.designer.core.menuActions.CreateDepPlanCmd" - icon="icons/depPlan.gif" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.CreateDepPlanMenu" - label="Qompass: Create deployment plan" - mnemonic="d" - mode="FORCE_TEXT" - style="push"> - <visibleWhen - checkEnabled="true"> - </visibleWhen> - </command> - <command - commandId="org.eclipse.papyrus.qompass.designer.core.menuActions.CreatePlatformCmd" - icon="icons/depPlan.gif" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.CreatePlatformMenu" - label="Qompass: Create platform definition" - mnemonic="d" - mode="FORCE_TEXT" - style="push"> - <visibleWhen - checkEnabled="true"> - </visibleWhen> - </command> - <command - commandId="org.eclipse.papyrus.qompass.designer.core.menuActions.SyncCmd" - icon="icons/sync.gif" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.SyncMenu" - label="Qompass: Synchronize derived elements" - mnemonic="s" - mode="FORCE_TEXT" - style="push"> - <visibleWhen - checkEnabled="true"> - </visibleWhen> - </command> - <command - commandId="org.eclipse.papyrus.qompass.designer.core.menuActions.InstantiateDepPlanCmd" - icon="icons/deploy.gif" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.CreateDepPlanMenu" - label="Qompass: Generate deployment models and code from plan" - mnemonic="g" - mode="FORCE_TEXT" - style="push"> - <visibleWhen - checkEnabled="true"> - </visibleWhen> - </command> - <command - commandId="org.eclipse.papyrus.qompass.designer.core.menuActions.SelectionConnectorCmd" - icon="icons/selConnector.gif" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.SelectionConnectorMenu" - label="Qompass: Show / choose connector type and implementation" - mnemonic="C" - mode="FORCE_TEXT" - style="push"> - <visibleWhen - checkEnabled="true"> - </visibleWhen> - </command> - <command - commandId="org.eclipse.papyrus.qompass.designer.core.menuActions.SelectionContainerCmd" - icon="icons/selContainer.gif" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.SelectionContainerMenu" - label="Qompass: Show / choose container properties" - mode="FORCE_TEXT" - style="push"> - <visibleWhen - checkEnabled="true"> - </visibleWhen> - </command> - <command - commandId="org.eclipse.papyrus.qompass.designer.core.menuActions.ConfigureInstanceCmd" - icon="icons/selContainer.gif" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.ConfigureInstanceMenu" - label="Qompass: Configure instance properties" - mode="FORCE_TEXT" - style="push"> - <visibleWhen - checkEnabled="true"> - </visibleWhen> - </command> - <command - commandId="org.eclipse.papyrus.qompass.designer.core.menuActions.ConfigurePortsCmd" - icon="icons/selContainer.gif" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.ConfigurePortsMenu" - label="Qompass: Configure ports" - mode="FORCE_TEXT" - style="push"> - <visibleWhen - checkEnabled="true"> - </visibleWhen> - </command> - <command - commandId="org.eclipse.papyrus.qompass.designer.core.menuActions.AddProfileAndModelLibsCmd" - icon="icons/Stereotype.gif" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.AddProfileAndModelLibsMenu" - label="Qompass: Add profiles and model libraries" - mnemonic="P" - mode="FORCE_TEXT" - style="push"> - <visibleWhen - checkEnabled="true"> - </visibleWhen> - </command> - <command - commandId="org.eclipse.papyrus.qompass.designer.core.menuActions.AllocateCmd" - icon="icons/allocation.gif" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.AllocateMenu" - label="Qompass: Allocate to node" - mnemonic="A" - mode="FORCE_TEXT" - style="push"> - <visibleWhen - checkEnabled="true"> - </visibleWhen> - </command> - </menuContribution> - <menuContribution - allPopups="true" - locationURI="popup:org.eclipse.gmf.runtime.diagram.ui.DiagramEditorContextMenu"> - <menu - icon="icons/Qompass-16x16.gif" - id="org.eclipse.gmf.runtime.diagram.ui.DiagramEditorContextMenu.qompassdesigner" - label="Qompass Designer"> - </menu> - </menuContribution> - <menuContribution - allPopups="false" - locationURI="popup:org.eclipse.gmf.runtime.diagram.ui.DiagramEditorContextMenu.qompassdesigner"> - <command - commandId="org.eclipse.papyrus.qompass.designer.core.menuActions.CreateDepPlanCmd" - icon="icons/depPlan.gif" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.CreateDepPlanMenu" - label="Qompass: Create deployment plan" - mnemonic="d" - mode="FORCE_TEXT" - style="push"> - <visibleWhen - checkEnabled="true"> - </visibleWhen> - </command> - <command - commandId="org.eclipse.papyrus.qompass.designer.core.menuActions.CreatePlatformCmd" - icon="icons/depPlan.gif" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.CreatePlatformMenu" - label="Qompass: Create platform definition" - mnemonic="d" - mode="FORCE_TEXT" - style="push"> - <visibleWhen - checkEnabled="true"> - </visibleWhen> - </command> - <command - commandId="org.eclipse.papyrus.qompass.designer.core.menuActions.SyncCmd" - icon="icons/sync.gif" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.SyncMenu" - label="Qompass: Synchronize derived elements" - mnemonic="s" - mode="FORCE_TEXT" - style="push"> - <visibleWhen - checkEnabled="true"> - </visibleWhen> - </command> - <command - commandId="org.eclipse.papyrus.qompass.designer.core.menuActions.InstantiateDepPlanCmd" - icon="icons/deploy.gif" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.CreateDepPlanMenu" - label="Qompass: Generate deployment models and code from plan" - mnemonic="g" - mode="FORCE_TEXT" - style="push"> - <visibleWhen - checkEnabled="true"> - </visibleWhen> - </command> - <command - commandId="org.eclipse.papyrus.qompass.designer.core.menuActions.SelectionConnectorCmd" - icon="icons/selConnector.gif" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.SelectionConnectorMenu" - label="Qompass: Show / choose connector type and implementation" - mnemonic="C" - mode="FORCE_TEXT" - style="push"> - <visibleWhen - checkEnabled="true"> - </visibleWhen> - </command> - <command - commandId="org.eclipse.papyrus.qompass.designer.core.menuActions.SelectionContainerCmd" - icon="icons/selContainer.gif" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.SelectionContainerMenu" - label="Qompass: Show / choose container properties" - mode="FORCE_TEXT" - style="push"> - <visibleWhen - checkEnabled="true"> - </visibleWhen> - </command> - <command - commandId="org.eclipse.papyrus.qompass.designer.core.menuActions.ConfigureInstanceCmd" - icon="icons/selContainer.gif" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.ConfigureInstanceMenu" - label="Qompass: Configure instance properties" - mode="FORCE_TEXT" - style="push"> - <visibleWhen - checkEnabled="true"> - </visibleWhen> - </command> - <command - commandId="org.eclipse.papyrus.qompass.designer.core.menuActions.ConfigurePortsCmd" - icon="icons/selContainer.gif" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.ConfigurePortsMenu" - label="Qompass: Configure ports" - mode="FORCE_TEXT" - style="push"> - <visibleWhen - checkEnabled="true"> - </visibleWhen> - </command> - <command - commandId="org.eclipse.papyrus.qompass.designer.core.menuActions.AddProfileAndModelLibsCmd" - icon="icons/Stereotype.gif" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.AddProfileAndModelLibsMenu" - label="Qompass: Add profiles and model libraries" - mnemonic="P" - mode="FORCE_TEXT" - style="push"> - <visibleWhen - checkEnabled="true"> - </visibleWhen> - </command> - <command - commandId="org.eclipse.papyrus.qompass.designer.core.menuActions.AllocateCmd" - icon="icons/allocation.gif" - id="org.eclipse.papyrus.qompass.designer.core.menuActions.AllocateMenu" - label="Qompass: Allocate to node" - mnemonic="A" - mode="FORCE_TEXT" - style="push"> - <visibleWhen - checkEnabled="true"> - </visibleWhen> - </command> - </menuContribution> - </extension> - <extension - point="org.eclipse.ui.preferencePages"> - <page - category="org.eclipse.papyrus.infra.core.sasheditor.preferences.generalcategory" - class="org.eclipse.papyrus.qompass.designer.core.preferences.QompassPreferencePage" - id="org.eclipse.papyrus.qompass.designer.core.preferences.QompassPreferencePage_ID" - name="Qompass preferences"> - </page> - </extension> - <extension - point="org.eclipse.core.runtime.preferences"> - <initializer - class="org.eclipse.papyrus.qompass.designer.core.preferences.QompassPreferenceInitializer"> - </initializer> - </extension> -</plugin> + </plugin> diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/Activator.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/Activator.java index d3971354858..8ed2fef34f5 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/Activator.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/Activator.java @@ -1,5 +1,6 @@ package org.eclipse.papyrus.qompass.designer.core; +import org.eclipse.papyrus.infra.core.log.LogHelper; import org.eclipse.ui.plugin.AbstractUIPlugin; import org.osgi.framework.BundleContext; @@ -14,6 +15,8 @@ public class Activator extends AbstractUIPlugin { // The shared instance private static Activator plugin; + public static LogHelper log; + /** * The constructor */ @@ -28,6 +31,9 @@ public class Activator extends AbstractUIPlugin { public void start(BundleContext context) throws Exception { super.start(context); plugin = this; + + // register the login helper + log = new LogHelper(plugin); } /* diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/CommandSupport.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/CommandSupport.java index 0eda4808f7b..7b610a4a82d 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/CommandSupport.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/CommandSupport.java @@ -19,9 +19,11 @@ import java.util.Collections; import org.eclipse.core.commands.ExecutionEvent; import org.eclipse.core.commands.ExecutionException; import org.eclipse.core.commands.operations.IOperationHistory; +import org.eclipse.core.commands.operations.IUndoableOperation; import org.eclipse.core.commands.operations.OperationHistoryFactory; import org.eclipse.core.runtime.IAdaptable; import org.eclipse.core.runtime.IProgressMonitor; +import org.eclipse.core.runtime.NullProgressMonitor; import org.eclipse.core.runtime.Status; import org.eclipse.emf.transaction.TransactionalEditingDomain; import org.eclipse.gmf.runtime.common.core.command.CommandResult; @@ -103,4 +105,13 @@ public class CommandSupport { } } + public static void exec(TransactionalEditingDomain domain, IUndoableOperation command) { + IOperationHistory history = OperationHistoryFactory.getOperationHistory(); + try { + history.execute(command, new NullProgressMonitor(), null); + } catch (ExecutionException e) { + e.printStackTrace(); + } + + } } diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/Utils.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/Utils.java index c5de6dc199a..7987650079c 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/Utils.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/Utils.java @@ -419,12 +419,12 @@ public class Utils { } public static boolean treatNoneAsComposite() { - IPreferenceStore store = org.eclipse.papyrus.qompass.designer.core.Activator.getDefault().getPreferenceStore(); + IPreferenceStore store = Activator.getDefault().getPreferenceStore(); return store.getBoolean(QompassPreferenceConstants.P_TREAT_NONE_AS_COMPOSITE); } public static boolean allAttributesAreConfigAttributs() { - IPreferenceStore store = org.eclipse.papyrus.qompass.designer.core.Activator.getDefault().getPreferenceStore(); + IPreferenceStore store = Activator.getDefault().getPreferenceStore(); return store.getBoolean(QompassPreferenceConstants.P_ALL_ATTRIBUTES_ARE_CONFIG_ATTRIBUTES); } diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/commands/AddMarteAndFcmProfile.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/commands/AddMarteAndFcmProfile.java new file mode 100644 index 00000000000..ab5c9203179 --- /dev/null +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/commands/AddMarteAndFcmProfile.java @@ -0,0 +1,148 @@ +/*******************************************************************************
+ * Copyright (c) 2011 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:
+ * CEA LIST - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.qompass.designer.core.commands;
+
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.emf.workspace.AbstractEMFOperation;
+import org.eclipse.papyrus.qompass.designer.core.Activator;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.Package;
+import org.eclipse.uml2.uml.PackageableElement;
+import org.eclipse.uml2.uml.Profile;
+
+/**
+ * This class adds the FCM profile, parts of the MARTE profile and required package imports to your model.
+ */
+public class AddMarteAndFcmProfile extends AbstractEMFOperation {
+
+ public AddMarteAndFcmProfile(Package selectedPkg, int applyCode, TransactionalEditingDomain domain) {
+ super(domain, CMD_LABEL);
+ this.selectedPkg = selectedPkg;
+ this.applyCode = applyCode;
+ }
+
+ public static final String CMD_LABEL = "Add MARTE/FCM profiles"; //$NON-NLS-1$
+
+ public static final String FCM_PROFILE_URI = "pathmap://FCM_PROFILES/FCM.profile.uml"; //$NON-NLS-1$
+
+ public static final String MARTE_PROFILE_URI = "pathmap://Papyrus_PROFILES/MARTE.profile.uml";//$NON-NLS-1$
+
+ static final String MARTE_FOUNDATIONS = "MARTE_Foundations"; //$NON-NLS-1$
+
+ static final String MARTE_F_ALLOC = "Alloc"; //$NON-NLS-1$
+
+ static final String MARTE_DESIGN_MODEL = "MARTE_DesignModel"; //$NON-NLS-1$
+
+ static final String MARTE_DM_HLAM ="HLAM"; //$NON-NLS-1$
+
+ static final String MARTE_DM_GCM ="GCM"; //$NON-NLS-1$
+
+ public static final int APPLY_FCM = 1;
+
+ public static final int APPLY_ALLOC = 2;
+
+ public static final int APPLY_HLAM_GCM = 4;
+
+ Package selectedPkg;
+
+ int applyCode;
+
+ public static Element getContent(URI uri, ResourceSet rs) {
+ // Resource resource = getTransactionalEditingDomain ().getResourceSet().getResource (uri, true);
+ Resource resource = rs.getResource(uri, true);
+ return getContent(resource);
+ }
+
+ public static Element getContent(Resource resource) {
+ EList<EObject> contentObj = resource.getContents();
+ if((contentObj.size() > 0) && (contentObj.get(0) instanceof Element)) {
+ return (Element)contentObj.get(0);
+ }
+ return null;
+ }
+
+ @Override
+ protected IStatus doExecute(IProgressMonitor monitor, IAdaptable info)
+ throws ExecutionException {
+ final ResourceSet resourceSet = selectedPkg.eResource().getResourceSet();
+
+ try {
+ /*
+ * // Apply UML Standard profile
+ * // Retrieve standard profile
+ * Profile umlStdProfile =
+ * (Profile) getContent (URI.createURI(UMLResource.STANDARD_PROFILE_URI));
+ * // Apply to new model
+ * umlModel.applyProfile(umlStdProfile);
+ */
+
+ if((applyCode & APPLY_FCM) != 0) {
+ // Retrieve FCM profile
+ Profile fcmProfile =
+ (Profile)getContent(URI.createURI(FCM_PROFILE_URI), resourceSet);
+
+ // Apply FCM profile and its nested profiles to new model
+ if(fcmProfile instanceof Profile) {
+ Profile profile = selectedPkg.getAppliedProfile(fcmProfile.getQualifiedName());
+ if((profile == null) && (!fcmProfile.getOwnedStereotypes().isEmpty())) {
+ selectedPkg.applyProfile(fcmProfile);
+ }
+ }
+ else {
+ Activator.log.debug("The FCM profile is not available."); //$NON-NLS-1$
+ }
+ }
+
+ if((applyCode & (APPLY_ALLOC | APPLY_HLAM_GCM)) != 0) {
+ // Retrieve MARTE profile
+ Profile marteProfile =
+ (Profile)getContent(URI.createURI(MARTE_PROFILE_URI), resourceSet);
+
+ // Apply MARTE::MARTE_DesignModel::HLAM
+ // & MARTE::MARTE_DesignModel::GCM
+ if(marteProfile != null) {
+ PackageableElement foundationModel = marteProfile.getPackagedElement(MARTE_FOUNDATIONS);
+ if((foundationModel instanceof Package) && ((applyCode & APPLY_ALLOC) != 0)) {
+ PackageableElement alloc = ((Package)foundationModel).getPackagedElement(MARTE_F_ALLOC);
+ selectedPkg.applyProfile((Profile)alloc);
+ }
+ PackageableElement designModel = marteProfile.getPackagedElement(MARTE_DESIGN_MODEL);
+ if((designModel instanceof Package) && ((applyCode & APPLY_HLAM_GCM) != 0)) {
+ PackageableElement hlam = ((Package)designModel).getPackagedElement(MARTE_DM_HLAM);
+ if(hlam instanceof Profile) {
+ selectedPkg.applyProfile((Profile)hlam);
+ }
+ PackageableElement gcm = ((Package)designModel).getPackagedElement(MARTE_DM_GCM);
+ if(gcm instanceof Profile) {
+ selectedPkg.applyProfile((Profile)gcm);
+ }
+ }
+ }
+ else {
+ Activator.log.debug("The MARTE profile is not available."); //$NON-NLS-1$
+ }
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return Status.OK_STATUS;
+ }
+}
diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/commands/AddQompassModelLibs.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/commands/AddQompassModelLibs.java new file mode 100644 index 00000000000..4ecde4a09b8 --- /dev/null +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/commands/AddQompassModelLibs.java @@ -0,0 +1,198 @@ +/*******************************************************************************
+ * Copyright (c) 2013 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:
+ * CEA LIST - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.qompass.designer.core.commands;
+
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.common.util.BasicEList;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.emf.workspace.AbstractEMFOperation;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.Package;
+import org.eclipse.uml2.uml.PackageImport;
+import org.eclipse.uml2.uml.UMLFactory;
+
+/**
+ * This class adds the FCM profile, parts of the MARTE profile and required package imports to your model.
+ */
+public class AddQompassModelLibs extends AbstractEMFOperation {
+
+ public AddQompassModelLibs(Package pkg, TransactionalEditingDomain domain) {
+ super(domain, CMD_LABEL);
+ selectedPkg = pkg;
+ availableImportPackages = null;
+ importList = null;
+ }
+
+ public static final String CMD_LABEL = "Add Qompass CORE libraries"; //$NON-NLS-1$
+
+ public static final String EC3M_BASIC_CALLS_URI = "pathmap://QML_CORE/core.uml"; //$NON-NLS-1$
+
+ public static final String EC3M_MARTE_CALLS_URI = "pathmap://QML_MARTE/marte.uml"; //$NON-NLS-1$
+
+ protected EList<PackageImport> importList;
+
+ protected EList<PackageImport> availableImportPackages;
+
+ protected Package selectedPkg;
+
+ /**
+ * Retrieve a model library from the repository
+ *
+ * @param uri
+ * the URI of the repository
+ *
+ * @return
+ */
+ public PackageImport getModelLibraryImportFromURI(URI uri, ResourceSet resourceSet) {
+ // Try to reach model
+ Element root = getContent(uri, resourceSet);
+ if(root instanceof Package) {
+
+ // Import model library
+ Package libToImport = (Package)root;
+ // create import package
+ PackageImport modelLibImport = UMLFactory.eINSTANCE.createPackageImport();
+ modelLibImport.setImportedPackage(libToImport);
+
+ return modelLibImport;
+ }
+ return null;
+ }
+
+ public static Element getContent(URI uri, ResourceSet rs) {
+ // Resource resource = getTransactionalEditingDomain ().getResourceSet().getResource (uri, true);
+ Resource resource = rs.getResource(uri, true);
+ return getContent(resource);
+ }
+
+ public static Element getContent(Resource resource) {
+ EList<EObject> contentObj = resource.getContents();
+ if((contentObj.size() > 0) && (contentObj.get(0) instanceof Element)) {
+ return (Element)contentObj.get(0);
+ }
+ return null;
+ }
+
+ /**
+ * Check whether a package import is already done
+ *
+ * @param selectedPkg
+ * @param pi
+ * @return
+ */
+ boolean isAlreadyImported(Package selectedPkg, PackageImport pi) {
+ for(PackageImport existingPI : selectedPkg.getPackageImports()) {
+ if((existingPI.getImportedPackage() == null) ||
+ (pi.getImportedPackage() == null)) {
+ // import package are null (should not happen?!)
+ continue;
+ }
+ if((existingPI.getImportedPackage().getName() == null) ||
+ (pi.getImportedPackage().getName() == null)) {
+ // import package name not set (should not happen?!)
+ continue;
+ } else if(existingPI.getImportedPackage().getName().equals(pi.getImportedPackage().getName())) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
+ */
+
+ /**
+ * Return a list of package-imports for standard Qompass model libraries
+ * @return
+ * @throws ExecutionException
+ */
+ public EList<PackageImport> getAvailableImportPackages() {
+ if (availableImportPackages != null) {
+ return availableImportPackages;
+ }
+ final ResourceSet resourceSet = selectedPkg.eResource().getResourceSet();
+ availableImportPackages = new BasicEList<PackageImport>();
+
+ PackageImport pi = getModelLibraryImportFromURI(URI.createURI(EC3M_BASIC_CALLS_URI), resourceSet);
+ if(pi != null) {
+ availableImportPackages.add(pi);
+ }
+ pi = getModelLibraryImportFromURI(URI.createURI(EC3M_MARTE_CALLS_URI), resourceSet);
+ if(pi != null) {
+ availableImportPackages.add(pi);
+ }
+ return availableImportPackages;
+ }
+
+ /**
+ * @return a list of package-imports that are already imported (within the selected pkg).
+ */
+ public EList<PackageImport> getAlreadyImportedPackages() {
+ EList<PackageImport> availablePackages = getAvailableImportPackages();
+ EList<PackageImport> selection = new BasicEList<PackageImport>();
+ for (PackageImport pi : availablePackages) {
+ if(isAlreadyImported(selectedPkg, pi)) {
+ selection.add(pi);
+ }
+ }
+ return selection;
+ }
+
+ /**
+ * Initialize import list. Must be called, before the command gets executed.
+ * @param importList a list of package-imports that will be added to the selectedPkg when
+ * the command gets executed.
+ */
+ public void setImportList(EList<PackageImport> importList) {
+ this.importList = importList;
+ }
+
+
+ /**
+ * Initialize import list. Must be called, before the command gets executed.
+ * Convenience method for dialogs that return an array.
+ *
+ * @param importArray an array of objects (which must contain package-imports) that will
+ * be added to the selectedPkg when the command gets executed.
+ */
+ public void setImportList(Object importArray[]) {
+ importList = new BasicEList<PackageImport>();
+ for (Object importPkg : importArray) {
+ if (importPkg instanceof PackageImport) {
+ importList.add((PackageImport) importPkg);
+ }
+ }
+ }
+
+ @Override
+ protected IStatus doExecute(IProgressMonitor monitor, IAdaptable info)
+ throws ExecutionException {
+
+ for(PackageImport pi : importList) {
+ if(!isAlreadyImported(selectedPkg, pi)) {
+ selectedPkg.getPackageImports().add(pi);
+ }
+ }
+ return Status.OK_STATUS;
+ }
+}
diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/deployment/DepCreation.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/deployment/DepCreation.java index 29711e65498..0714a05d50d 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/deployment/DepCreation.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/deployment/DepCreation.java @@ -205,7 +205,7 @@ public class DepCreation { // implementation) // TODO: don't know node yet => implementation choice is more // general than necessary - implementation = DepUtils.chooseImplementation(typeOrImplem, null, true); + implementation = DepUtils.chooseImplementation(typeOrImplem, null, null); } if(!(implementation instanceof Class)) { @@ -333,7 +333,7 @@ public class DepCreation { && (type instanceof Class)) { Class aggregateOrInterceptor = DepUtils.chooseImplementation( (Class)type, new BasicEList<InstanceSpecification>(), - false); + null); // is a configuration property, create slot if(first) { // add contExtImpl to list of classifiers that the instance diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/deployment/DepUtils.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/deployment/DepUtils.java index a42fcf6a3fb..5f7d8989ea3 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/deployment/DepUtils.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/deployment/DepUtils.java @@ -8,18 +8,14 @@ import org.eclipse.emf.common.util.EList; import org.eclipse.emf.common.util.UniqueEList; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.EStructuralFeature.Setting; -import org.eclipse.jface.viewers.ILabelProvider; -import org.eclipse.jface.viewers.LabelProvider; import org.eclipse.papyrus.FCM.CodeGenOptions; import org.eclipse.papyrus.FCM.DeploymentPlan; import org.eclipse.papyrus.FCM.ImplementationGroup; import org.eclipse.papyrus.FCM.ImplementationProperties; import org.eclipse.papyrus.FCM.InteractionComponent; import org.eclipse.papyrus.FCM.Target; -import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil; import org.eclipse.papyrus.qompass.designer.core.Utils; -import org.eclipse.swt.widgets.Shell; -import org.eclipse.ui.dialogs.ElementListSelectionDialog; +import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil; import org.eclipse.uml2.common.util.UML2Util; import org.eclipse.uml2.uml.AggregationKind; import org.eclipse.uml2.uml.Class; @@ -29,7 +25,6 @@ import org.eclipse.uml2.uml.Element; import org.eclipse.uml2.uml.Generalization; import org.eclipse.uml2.uml.InstanceSpecification; import org.eclipse.uml2.uml.InstanceValue; -import org.eclipse.uml2.uml.NamedElement; import org.eclipse.uml2.uml.Package; import org.eclipse.uml2.uml.PackageableElement; import org.eclipse.uml2.uml.Property; @@ -135,8 +130,13 @@ public class DepUtils { * (1) is already an implementation, simply return it * (2) is an implementation group, choose the first implementation that fits the requirements * (3) is a type: choose the first implementation among the heirs that fits the requirements + * + * @param componentType a component type or implementation (class, optionally abstract) + * @param nodes a set of instance specification representing nodes on which this component will be allocated + * @param interactive boolean indicating whether the choice should be done interactively + * @return a suitable implementation */ - public static Class chooseImplementation(Class componentType, EList<InstanceSpecification> nodes, boolean interactive) { + public static Class chooseImplementation(Class componentType, EList<InstanceSpecification> nodes, ImplementationChooser chooser) { // choose implementation automatically: get the first one that implements the passed type // get reference to component model, then search all classes contained in it. // TODO: assumption that implementations are in same package as type; @@ -179,28 +179,10 @@ public class DepUtils { return null; } else if(implList.size() == 1) { return implList.get(0); - } else if(interactive) { - // SelectionDialog = SelectionDialog. - ILabelProvider ilabel = new LabelProvider() { - - public String getText(Object element) { - return ((NamedElement)element).getQualifiedName(); - } - }; - ElementListSelectionDialog dialog = - new ElementListSelectionDialog(new Shell(), ilabel); - - dialog.setTitle("Multiple implementations found"); - dialog.setMessage("Select an implementation for component type " + componentType.getName()); - - dialog.setElements(implList.toArray()); - - dialog.open(); - Object[] selection = dialog.getResult(); - if(selection.length == 1) { - if(selection[0] instanceof Class) { - return (Class)selection[0]; - } + } else if(chooser != null) { + Class impl = chooser.chooseImplementation(componentType, implList); + if (impl != null) { + return impl; } } else if(implList.size() > 0) { return implList.get(0); diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/deployment/ImplementationChooser.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/deployment/ImplementationChooser.java new file mode 100644 index 00000000000..a2e86b39b30 --- /dev/null +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/deployment/ImplementationChooser.java @@ -0,0 +1,31 @@ +/***************************************************************************** + * Copyright (c) 2013 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: + * Ansgar Radermacher ansgar.radermacher@cea.fr + * + *****************************************************************************/ + +package org.eclipse.papyrus.qompass.designer.core.deployment; + +import org.eclipse.emf.common.util.EList; +import org.eclipse.uml2.uml.Class; + +/** + * Choose a component implementation for a given component type + */ +public interface ImplementationChooser { + /** + * Choose a component implementation from a list of available implementations + * @param componentType a (abstract) component + * @param implList a list of available component implementations + * @return the chosen implementation. + */ + public Class chooseImplementation(Class componentType, EList<Class> implList); +}; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/AddProfileAndModelLibsHandler.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/AddProfileAndModelLibsHandler.java deleted file mode 100644 index af25e7c2a56..00000000000 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/AddProfileAndModelLibsHandler.java +++ /dev/null @@ -1,291 +0,0 @@ -/*******************************************************************************
- * Copyright (c) 2011 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:
- * CEA LIST - initial API and implementation
- *******************************************************************************/
-package org.eclipse.papyrus.qompass.designer.core.handlers;
-
-import org.eclipse.core.commands.ExecutionEvent;
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.emf.common.command.CommandStack;
-import org.eclipse.emf.common.util.BasicEList;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.emf.transaction.RecordingCommand;
-import org.eclipse.emf.transaction.TransactionalEditingDomain;
-import org.eclipse.emf.transaction.util.TransactionUtil;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.viewers.ArrayContentProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.dialogs.ListSelectionDialog;
-import org.eclipse.uml2.uml.Element;
-import org.eclipse.uml2.uml.Package;
-import org.eclipse.uml2.uml.PackageImport;
-import org.eclipse.uml2.uml.PackageableElement;
-import org.eclipse.uml2.uml.Profile;
-import org.eclipse.uml2.uml.UMLFactory;
-
-/**
- * This class adds the FCM profile, parts of the MARTE profile and required package imports to your model.
- */
-public class AddProfileAndModelLibsHandler extends CmdHandler {
-
- public static final String FCM_PROFILE_URI = "pathmap://FCM_PROFILES/FCM.profile.uml"; //$NON-NLS-1$
-
- public static final String MARTE_PROFILE_URI = "pathmap://Papyrus_PROFILES/MARTE.profile.uml";//$NON-NLS-1$
-
- public static final String EC3M_BASIC_CALLS_URI = "pathmap://QML_CORE/core.uml"; //$NON-NLS-1$
-
- public static final String EC3M_MARTE_CALLS_URI = "pathmap://QML_MARTE/marte.uml"; //$NON-NLS-1$
-
- static final String MARTE_FOUNDATIONS = "MARTE_Foundations"; //$NON-NLS-1$
-
- static final String MARTE_F_ALLOC = "Alloc"; //$NON-NLS-1$
-
- static final String MARTE_DESIGN_MODEL = "MARTE_DesignModel"; //$NON-NLS-1$
-
- static final String MARTE_DM_HLAM ="HLAM"; //$NON-NLS-1$
-
- static final String MARTE_DM_GCM ="GCM"; //$NON-NLS-1$
-
- public static final int APPLY_FCM = 1;
-
- public static final int APPLY_ALLOC = 2;
-
- public static final int APPLY_HLAM_GCM = 4;
-
- /**
- * {@inheritDoc}
- */
- @Override
- public boolean isEnabled() {
- updateSelectedEObject();
- if(selectedEObject instanceof Package) {
- return true;
- }
- return false;
- }
-
- /**
- * Retrieve a model library from the repository
- *
- * @param uri
- * the URI of the repository
- *
- * @return
- */
- public PackageImport getModelLibraryImportFromURI(URI uri, ResourceSet resourceSet) {
- // Try to reach model
- Element root = getContent(uri, resourceSet);
- if(root instanceof Package) {
-
- // Import model library
- Package libToImport = (Package)root;
- // create import package
- PackageImport modelLibImport = UMLFactory.eINSTANCE.createPackageImport();
- modelLibImport.setImportedPackage(libToImport);
-
- return modelLibImport;
- }
- return null;
- }
-
- public static Element getContent(URI uri, ResourceSet rs) {
- // Resource resource = getTransactionalEditingDomain ().getResourceSet().getResource (uri, true);
- Resource resource = rs.getResource(uri, true);
- return getContent(resource);
- }
-
- public static Element getContent(Resource resource) {
- EList<EObject> contentObj = resource.getContents();
- if((contentObj.size() > 0) && (contentObj.get(0) instanceof Element)) {
- return (Element)contentObj.get(0);
- }
- return null;
- }
-
- /**
- * Check whether a package import is already done
- *
- * @param selectedPkg
- * @param pi
- * @return
- */
- boolean isAlreadyImported(Package selectedPkg, PackageImport pi) {
- for(PackageImport existingPI : selectedPkg.getPackageImports()) {
- if((existingPI.getImportedPackage() == null) ||
- (pi.getImportedPackage() == null)) {
- // import package are null (should not happen?!)
- continue;
- }
- if((existingPI.getImportedPackage().getName() == null) ||
- (pi.getImportedPackage().getName() == null)) {
- // import package name not set (should not happen?!)
- continue;
- } else if(existingPI.getImportedPackage().getName().equals(pi.getImportedPackage().getName())) {
- return true;
- }
- }
- return false;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
- */
- /**
- * {@inheritDoc}
- */
- public Object execute(ExecutionEvent event) throws ExecutionException {
- if(!(selectedEObject instanceof Package)) {
- return null;
- }
- final Package selectedPkg = (Package)selectedEObject;
-
- final TransactionalEditingDomain domain = TransactionUtil.getEditingDomain(selectedPkg);
- final ResourceSet resourceSet = selectedPkg.eResource().getResourceSet();
-
- CommandStack stack = domain.getCommandStack();
- PackageImport pi = getModelLibraryImportFromURI(URI.createURI(EC3M_BASIC_CALLS_URI), resourceSet);
- EList<Object> list = new BasicEList<Object>();
- EList<Object> selection = new BasicEList<Object>();
- if(pi != null) {
- list.add(pi);
- if(isAlreadyImported(selectedPkg, pi)) {
- selection.add(pi);
- }
- }
- pi = getModelLibraryImportFromURI(URI.createURI(EC3M_MARTE_CALLS_URI), resourceSet);
- if(pi != null) {
- list.add(pi);
- if(isAlreadyImported(selectedPkg, pi)) {
- selection.add(pi);
- }
- }
- final ListSelectionDialog dialog = new ListSelectionDialog(new Shell(),
- list.toArray(),
- new ArrayContentProvider(),
- new LabelProvider() {
-
- public String getText(Object pi) {
- return ((PackageImport)pi).getImportedPackage().getName();
- }
- },
- "Select Qompass model libraries for package import.\n" + //$NON-NLS-1$
- "Libraries that are already imported, are selected. Please note that additional\n" + //$NON-NLS-1$
- "Qompass model library might be loaded with the standard \"import registered library\" option\n" + //$NON-NLS-1$
- "\n" +//$NON-NLS-1$
- "Pressing \"Ok\" will continue with the application of the FCM profile and (parts of) the MARTE profile\n");//$NON-NLS-1$
-
- dialog.setTitle("Select import library"); //$NON-NLS-1$
- dialog.setInitialElementSelections(selection);
- // dialog.setElements (list.toArray ());
- int result = dialog.open();
- if(result == IDialogConstants.OK_ID) {
- stack.execute(new RecordingCommand(domain, "Add libraries and profiles") //$NON-NLS-1$
- {
- public void doExecute() {
- // add primitive types
- // create import package to primitiveType
- // PackageImport pi = getModelLibraryImportFromURI (URI.createURI(UMLResource.UML_PRIMITIVE_TYPES_LIBRARY_URI));
- // selectedPkg.getPackageImports().add(pi);
-
- for(Object obj : dialog.getResult()) {
- PackageImport pi = (PackageImport)obj;
- if(!isAlreadyImported(selectedPkg, pi)) {
- selectedPkg.getPackageImports().add(pi);
- }
- }
- addProfiles(selectedPkg, APPLY_FCM | APPLY_ALLOC | APPLY_HLAM_GCM);
- }
- });
- }
- return null;
- }
-
- public static void addProfiles(Package selectedPkg, int applyCode) {
-
- final ResourceSet resourceSet = selectedPkg.eResource().getResourceSet();
-
- try {
- /*
- * // Apply UML Standard profile
- * // Retrieve standard profile
- * Profile umlStdProfile =
- * (Profile) getContent (URI.createURI(UMLResource.STANDARD_PROFILE_URI));
- * // Apply to new model
- * umlModel.applyProfile(umlStdProfile);
- */
-
- if((applyCode & APPLY_FCM) != 0) {
- // Retrieve FCM profile
- Profile fcmProfile =
- (Profile)getContent(URI.createURI(FCM_PROFILE_URI), resourceSet);
-
- // Apply FCM profile and its nested profiles to new model
- if(fcmProfile instanceof Profile) {
- Profile profile = selectedPkg.getAppliedProfile(fcmProfile.getQualifiedName());
- if((profile == null) && (!fcmProfile.getOwnedStereotypes().isEmpty())) {
- selectedPkg.applyProfile(fcmProfile);
- }
- }
- else {
- MessageDialog.openWarning(new Shell(),
- "Warning", //$NON-NLS-1$
- "The FCM profile is not available."); //$NON-NLS-1$
- }
- }
-
- if((applyCode & (APPLY_ALLOC | APPLY_HLAM_GCM)) != 0) {
- // Retrieve MARTE profile
- Profile marteProfile =
- (Profile)getContent(URI.createURI(MARTE_PROFILE_URI), resourceSet);
-
- // Apply MARTE::MARTE_DesignModel::HLAM
- // & MARTE::MARTE_DesignModel::GCM
- if(marteProfile != null) {
- PackageableElement foundationModel = marteProfile.getPackagedElement(MARTE_FOUNDATIONS);
- if((foundationModel instanceof Package) && ((applyCode & APPLY_ALLOC) != 0)) {
- PackageableElement alloc = ((Package)foundationModel).getPackagedElement(MARTE_F_ALLOC);
-
- // if(selectedPkg.getAppliedProfile(alloc.getQualifiedName()) == null) {
- selectedPkg.applyProfile((Profile)alloc);
- // }
- }
- PackageableElement designModel = marteProfile.getPackagedElement(MARTE_DESIGN_MODEL);
- if((designModel instanceof Package) && ((applyCode & APPLY_HLAM_GCM) != 0)) {
- PackageableElement hlam = ((Package)designModel).getPackagedElement(MARTE_DM_HLAM);
- if(hlam instanceof Profile) {
- // if(selectedPkg.getAppliedProfile(hlam.getQualifiedName()) == null) {
- selectedPkg.applyProfile((Profile)hlam);
- // }
- }
- PackageableElement gcm = ((Package)designModel).getPackagedElement(MARTE_DM_GCM);
- if(gcm instanceof Profile) {
- // if(selectedPkg.getAppliedProfile(gcm.getQualifiedName()) == null) {
- selectedPkg.applyProfile((Profile)gcm);
- // }
- }
- }
- }
- else {
- MessageDialog.openWarning(new Shell(),
- "Warning", "The MARTE profile is not available."); //$NON-NLS-1$ //$NON-NLS-2$
- }
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
-}
diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/transformations/ConnectorReification.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/transformations/ConnectorReification.java index aa01548d8fa..4a37d6ca84d 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/transformations/ConnectorReification.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/transformations/ConnectorReification.java @@ -135,7 +135,7 @@ public class ConnectorReification { } // choose an implementation Class connectorImplemTemplate = DepUtils.chooseImplementation( - (Class)smConnectorPart.getType(), AllocUtils.getAllNodes(tmIS), false); + (Class)smConnectorPart.getType(), AllocUtils.getAllNodes(tmIS), null); TemplateBinding binding = ConnectorBinding.obtainBinding(tmComponent, smConnectorPart, connectorImplemTemplate, true); @@ -200,7 +200,7 @@ public class ConnectorReification { } // choose an implementation - Class connectorImplemTemplate = DepUtils.chooseImplementation(connType.getBase_Class(), AllocUtils.getAllNodes(tmIS), false); + Class connectorImplemTemplate = DepUtils.chooseImplementation(connType.getBase_Class(), AllocUtils.getAllNodes(tmIS), null); // ---- obtain binding & instantiate template type ... TemplateBinding binding = ConnectorBinding.obtainBinding(tmComponent, diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/transformations/InstantiateDepPlan.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/transformations/InstantiateDepPlan.java index 7197c307eff..1f2f17f21f3 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/transformations/InstantiateDepPlan.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/transformations/InstantiateDepPlan.java @@ -75,11 +75,27 @@ import org.eclipse.uml2.uml.util.UMLUtil; public class InstantiateDepPlan { /** + * The location of the temporary model (relative to current project). + * TODO: make configurable? + */ + public static final String TEMP_MODEL_FOLDER = "tmpModel"; //$NON-NLS-1$ + + /** + * Postfix of the temporary model (prefix = name of top-level package). + * TODO: make configurable? + */ + public static final String TEMP_MODEL_POSTFIX = "Tmp.uml"; //$NON-NLS-1$ + + + /** + * Instantiate a deployment plan, i.e. generate an intermediate model via a sequence of transformations * - * @param cdp - * @param monitor - * a progress monitor. - ** @param OOmodel + * @param cdpOrConfig a deployment plan (UML package) or a configuration (UML class) + * @param monitor a progress monitor. + + * @param project the current project. This information is used to store the intermediate model in + * a subfolder (tmpModel) of the current project + * @param genOptions select whether to produce an intermediate model only, also code, ... @see GenerationOptions */ public static void instantiate(Element cdpOrConfig, IProgressMonitor monitor, IProject project, int genOptions) { boolean OOmodel = true; @@ -183,7 +199,7 @@ public class InstantiateDepPlan { FlattenInteractionComponents.getInstance().flattenAssembly(newRootIS, null); - String tmpPath = tmpMM.getPath(project, "tmpModel", tmpModel.getName() + "Tmp.uml"); + String tmpPath = tmpMM.getPath(project, TEMP_MODEL_FOLDER, tmpModel.getName() + TEMP_MODEL_POSTFIX); tmpMM.saveModel(tmpPath); if(monitor.isCanceled()) { diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/.classpath b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/.classpath new file mode 100644 index 00000000000..098194ca4b7 --- /dev/null +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.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"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/.project b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/.project new file mode 100644 index 00000000000..ee60ec6da05 --- /dev/null +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/.project @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.papyrus.qompass.designer.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> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + </natures> +</projectDescription> diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/META-INF/MANIFEST.MF b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/META-INF/MANIFEST.MF new file mode 100644 index 00000000000..8ea125e487e --- /dev/null +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/META-INF/MANIFEST.MF @@ -0,0 +1,43 @@ +Bundle-ManifestVersion: 2 +Bundle-Name: %pluginName +Bundle-SymbolicName: org.eclipse.papyrus.qompass.designer.ui;singleton:=true +Bundle-Version: 0.10.1.qualifier +Bundle-Activator: org.eclipse.papyrus.qompass.designer.ui.Activator +Require-Bundle: org.eclipse.ui, + org.eclipse.core.runtime, + org.eclipse.emf.ecore, + org.eclipse.uml2.uml, + org.eclipse.core.resources, + org.eclipse.ui.ide, + org.eclipse.papyrus.fcm.profile;bundle-version="0.10.1", + org.eclipse.emf.edit.ui, + org.eclipse.papyrus.marte.static.profile;bundle-version="0.10.1", + org.eclipse.papyrus.qompass.designer.vsl;bundle-version="0.10.1", + org.eclipse.papyrus.uml.modelexplorer.widgets;bundle-version="0.10.1", + org.eclipse.emf.compare;bundle-version="3.0.0", + org.eclipse.papyrus.uml.diagram.common;bundle-version="0.10.1", + org.eclipse.papyrus.infra.gmfdiag.widgets;bundle-version="0.10.1", + org.eclipse.draw2d;bundle-version="3.8.0", + org.eclipse.papyrus.uml.modelexplorer;bundle-version="0.10.1", + org.eclipse.gef;bundle-version="3.8.0", + org.eclipse.gmf.runtime.notation;bundle-version="1.5.0", + org.eclipse.papyrus.uml.profile;bundle-version="0.10.1", + org.eclipse.papyrus.uml.properties;bundle-version="0.10.1", + org.eclipse.papyrus.uml.tools;bundle-version="0.10.1", + org.eclipse.acceleo.engine;bundle-version="3.1.0", + org.eclipse.acceleo.parser;bundle-version="3.1.0", + org.eclipse.papyrus.cpp.profile;bundle-version="0.10.1", + org.eclipse.papyrus.infra.core;bundle-version="0.10.1", + org.eclipse.gmf.runtime.common.core;bundle-version="1.7.0", + org.eclipse.gmf.runtime.emf.commands.core;bundle-version="1.4.0", + org.eclipse.papyrus.infra.widgets;bundle-version="0.10.1", + org.eclipse.papyrus.infra.emf;bundle-version="0.10.1", + org.eclipse.papyrus.acceleo;bundle-version="0.10.1", + org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.3.0", + org.eclipse.papyrus.infra.services.labelprovider;bundle-version="0.10.1", + org.eclipse.papyrus.uml.tools.utils;bundle-version="0.10.1", + org.eclipse.papyrus.infra.widgets.toolbox;bundle-version="0.10.1", + org.eclipse.papyrus.qompass.designer.core;bundle-version="0.10.1" +Bundle-ActivationPolicy: lazy +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Bundle-Vendor: %pluginProvider diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/build.properties b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/build.properties new file mode 100644 index 00000000000..34d2e4d2dad --- /dev/null +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/build.properties @@ -0,0 +1,4 @@ +source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + . diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/ADLInFlowPort.gif b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/ADLInFlowPort.gif Binary files differindex e2b32c65cac..e2b32c65cac 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/ADLInFlowPort.gif +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/ADLInFlowPort.gif diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/Qompass-16x16.gif b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/Qompass-16x16.gif Binary files differindex c47d52ad211..c47d52ad211 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/Qompass-16x16.gif +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/Qompass-16x16.gif diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/Stereotype.gif b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/Stereotype.gif Binary files differindex 145e5d589d8..145e5d589d8 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/Stereotype.gif +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/Stereotype.gif diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/allocation.gif b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/allocation.gif Binary files differindex ced634f9c9c..ced634f9c9c 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/allocation.gif +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/allocation.gif diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/depPlan.gif b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/depPlan.gif Binary files differindex 712a2485f8d..712a2485f8d 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/depPlan.gif +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/depPlan.gif diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/deploy.gif b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/deploy.gif Binary files differindex 7a7ced35f3d..7a7ced35f3d 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/deploy.gif +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/deploy.gif diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/ec3m-16x16.gif b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/ec3m-16x16.gif Binary files differindex 327caa73f59..327caa73f59 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/ec3m-16x16.gif +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/ec3m-16x16.gif diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/ec3m-32x32.gif b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/ec3m-32x32.gif Binary files differindex 9e1527b778f..9e1527b778f 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/ec3m-32x32.gif +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/ec3m-32x32.gif diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/sample.gif b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/sample.gif Binary files differindex 34fb3c9d8cb..34fb3c9d8cb 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/sample.gif +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/sample.gif diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/selConnector.gif b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/selConnector.gif Binary files differindex e47528e5447..e47528e5447 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/selConnector.gif +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/selConnector.gif diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/selContainer.gif b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/selContainer.gif Binary files differindex c16516c624b..c16516c624b 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/selContainer.gif +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/selContainer.gif diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/sync.gif b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/sync.gif Binary files differindex 5935eb3cbba..5935eb3cbba 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/icons/sync.gif +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/icons/sync.gif diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/plugin.xml b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/plugin.xml new file mode 100644 index 00000000000..db805d840f8 --- /dev/null +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/plugin.xml @@ -0,0 +1,355 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?eclipse version="3.2"?> +<plugin> + <extension + point="org.eclipse.ui.commands"> + <command + categoryId="org.eclipse.papyrus.editor.category" + defaultHandler="org.eclipse.papyrus.qompass.designer.ui.handlers.CreateDepPlanHandler" + description="Create deployment plan" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.CreateDepPlanCmd" + name="dummy"> + </command> + <command + categoryId="org.eclipse.papyrus.editor.category" + defaultHandler="org.eclipse.papyrus.qompass.designer.ui.handlers.CreatePlatformHandler" + description="Create platform definition" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.CreatePlatformCmd" + name="dummy"> + </command> + <command + categoryId="org.eclipse.papyrus.editor.category" + defaultHandler="org.eclipse.papyrus.qompass.designer.ui.handlers.InstantiateDepPlanHandler" + description="Generate deployment models and code from plan" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.InstantiateDepPlanCmd" + name="dummy"> + </command> + <command + categoryId="org.eclipse.papyrus.editor.category" + defaultHandler="org.eclipse.papyrus.qompass.designer.ui.handlers.SyncHandler" + description="Synchronize derived elements" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.SyncCmd" + name="dummy"> + </command> + <command + categoryId="org.eclipse.papyrus.editor.category" + defaultHandler="org.eclipse.papyrus.qompass.designer.ui.handlers.SelectConnectorHandler" + description="Choose connector type and implementation" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.SelectionConnectorCmd" + name="dummy"> + </command> + <command + categoryId="org.eclipse.papyrus.editor.category" + defaultHandler="org.eclipse.papyrus.qompass.designer.ui.handlers.SelectContainerHandler" + description="Choose container properties" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.SelectionContainerCmd" + name="dummy"> + </command> + <command + categoryId="org.eclipse.papyrus.editor.category" + defaultHandler="org.eclipse.papyrus.qompass.designer.ui.handlers.ConfigureInstanceHandler" + description="Configure instance" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.ConfigureInstanceCmd" + name="dummy"> + </command> + <command + categoryId="org.eclipse.papyrus.editor.category" + defaultHandler="org.eclipse.papyrus.qompass.designer.ui.handlers.ConfigurePortHandler" + description="Configure ports" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.ConfigurePortsCmd" + name="dummy"> + </command> + <command + categoryId="org.eclipse.papyrus.editor.category" + defaultHandler="org.eclipse.papyrus.qompass.designer.ui.handlers.AddProfileAndModelLibsHandler" + description="Add Qompass profiles and model libraries" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.AddProfileAndModelLibsCmd" + name="dummy"> + </command> + <command + categoryId="org.eclipse.papyrus.editor.category" + defaultHandler="org.eclipse.papyrus.qompass.designer.ui.handlers.AllocateHandler" + description="Allocate to node" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.AllocateCmd" + name="dummy"> + </command> + </extension> + <extension + point="org.eclipse.ui.menus"> + <menuContribution + allPopups="true" + locationURI="popup:org.eclipse.papyrus.views.modelexplorer.modelexplorer.popup"> + <menu + icon="icons/Qompass-16x16.gif" + id="org.eclipse.papyrus.views.modelexplorer.popup.qompassdesigner" + label="Qompass Designer"> + </menu> + </menuContribution> + <menuContribution + allPopups="false" + locationURI="popup:org.eclipse.papyrus.views.modelexplorer.popup.qompassdesigner"> + <command + commandId="org.eclipse.papyrus.qompass.designer.ui.menuActions.CreateDepPlanCmd" + icon="icons/depPlan.gif" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.CreateDepPlanMenu" + label="Qompass: Create deployment plan" + mnemonic="d" + mode="FORCE_TEXT" + style="push"> + <visibleWhen + checkEnabled="true"> + </visibleWhen> + </command> + <command + commandId="org.eclipse.papyrus.qompass.designer.ui.menuActions.CreatePlatformCmd" + icon="icons/depPlan.gif" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.CreatePlatformMenu" + label="Qompass: Create platform definition" + mnemonic="d" + mode="FORCE_TEXT" + style="push"> + <visibleWhen + checkEnabled="true"> + </visibleWhen> + </command> + <command + commandId="org.eclipse.papyrus.qompass.designer.ui.menuActions.SyncCmd" + icon="icons/sync.gif" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.SyncMenu" + label="Qompass: Synchronize derived elements" + mnemonic="s" + mode="FORCE_TEXT" + style="push"> + <visibleWhen + checkEnabled="true"> + </visibleWhen> + </command> + <command + commandId="org.eclipse.papyrus.qompass.designer.ui.menuActions.InstantiateDepPlanCmd" + icon="icons/deploy.gif" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.CreateDepPlanMenu" + label="Qompass: Generate deployment models and code from plan" + mnemonic="g" + mode="FORCE_TEXT" + style="push"> + <visibleWhen + checkEnabled="true"> + </visibleWhen> + </command> + <command + commandId="org.eclipse.papyrus.qompass.designer.ui.menuActions.SelectionConnectorCmd" + icon="icons/selConnector.gif" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.SelectionConnectorMenu" + label="Qompass: Show / choose connector type and implementation" + mnemonic="C" + mode="FORCE_TEXT" + style="push"> + <visibleWhen + checkEnabled="true"> + </visibleWhen> + </command> + <command + commandId="org.eclipse.papyrus.qompass.designer.ui.menuActions.SelectionContainerCmd" + icon="icons/selContainer.gif" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.SelectionContainerMenu" + label="Qompass: Show / choose container properties" + mode="FORCE_TEXT" + style="push"> + <visibleWhen + checkEnabled="true"> + </visibleWhen> + </command> + <command + commandId="org.eclipse.papyrus.qompass.designer.ui.menuActions.ConfigureInstanceCmd" + icon="icons/selContainer.gif" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.ConfigureInstanceMenu" + label="Qompass: Configure instance properties" + mode="FORCE_TEXT" + style="push"> + <visibleWhen + checkEnabled="true"> + </visibleWhen> + </command> + <command + commandId="org.eclipse.papyrus.qompass.designer.ui.menuActions.ConfigurePortsCmd" + icon="icons/selContainer.gif" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.ConfigurePortsMenu" + label="Qompass: Configure ports" + mode="FORCE_TEXT" + style="push"> + <visibleWhen + checkEnabled="true"> + </visibleWhen> + </command> + <command + commandId="org.eclipse.papyrus.qompass.designer.ui.menuActions.AddProfileAndModelLibsCmd" + icon="icons/Stereotype.gif" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.AddProfileAndModelLibsMenu" + label="Qompass: Add profiles and model libraries" + mnemonic="P" + mode="FORCE_TEXT" + style="push"> + <visibleWhen + checkEnabled="true"> + </visibleWhen> + </command> + <command + commandId="org.eclipse.papyrus.qompass.designer.ui.menuActions.AllocateCmd" + icon="icons/allocation.gif" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.AllocateMenu" + label="Qompass: Allocate to node" + mnemonic="A" + mode="FORCE_TEXT" + style="push"> + <visibleWhen + checkEnabled="true"> + </visibleWhen> + </command> + </menuContribution> + <menuContribution + allPopups="true" + locationURI="popup:org.eclipse.gmf.runtime.diagram.ui.DiagramEditorContextMenu"> + <menu + icon="icons/Qompass-16x16.gif" + id="org.eclipse.gmf.runtime.diagram.ui.DiagramEditorContextMenu.qompassdesigner" + label="Qompass Designer"> + </menu> + </menuContribution> + <menuContribution + allPopups="false" + locationURI="popup:org.eclipse.gmf.runtime.diagram.ui.DiagramEditorContextMenu.qompassdesigner"> + <command + commandId="org.eclipse.papyrus.qompass.designer.ui.menuActions.CreateDepPlanCmd" + icon="icons/depPlan.gif" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.CreateDepPlanMenu" + label="Qompass: Create deployment plan" + mnemonic="d" + mode="FORCE_TEXT" + style="push"> + <visibleWhen + checkEnabled="true"> + </visibleWhen> + </command> + <command + commandId="org.eclipse.papyrus.qompass.designer.ui.menuActions.CreatePlatformCmd" + icon="icons/depPlan.gif" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.CreatePlatformMenu" + label="Qompass: Create platform definition" + mnemonic="d" + mode="FORCE_TEXT" + style="push"> + <visibleWhen + checkEnabled="true"> + </visibleWhen> + </command> + <command + commandId="org.eclipse.papyrus.qompass.designer.ui.menuActions.SyncCmd" + icon="icons/sync.gif" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.SyncMenu" + label="Qompass: Synchronize derived elements" + mnemonic="s" + mode="FORCE_TEXT" + style="push"> + <visibleWhen + checkEnabled="true"> + </visibleWhen> + </command> + <command + commandId="org.eclipse.papyrus.qompass.designer.ui.menuActions.InstantiateDepPlanCmd" + icon="icons/deploy.gif" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.CreateDepPlanMenu" + label="Qompass: Generate deployment models and code from plan" + mnemonic="g" + mode="FORCE_TEXT" + style="push"> + <visibleWhen + checkEnabled="true"> + </visibleWhen> + </command> + <command + commandId="org.eclipse.papyrus.qompass.designer.ui.menuActions.SelectionConnectorCmd" + icon="icons/selConnector.gif" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.SelectionConnectorMenu" + label="Qompass: Show / choose connector type and implementation" + mnemonic="C" + mode="FORCE_TEXT" + style="push"> + <visibleWhen + checkEnabled="true"> + </visibleWhen> + </command> + <command + commandId="org.eclipse.papyrus.qompass.designer.ui.menuActions.SelectionContainerCmd" + icon="icons/selContainer.gif" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.SelectionContainerMenu" + label="Qompass: Show / choose container properties" + mode="FORCE_TEXT" + style="push"> + <visibleWhen + checkEnabled="true"> + </visibleWhen> + </command> + <command + commandId="org.eclipse.papyrus.qompass.designer.ui.menuActions.ConfigureInstanceCmd" + icon="icons/selContainer.gif" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.ConfigureInstanceMenu" + label="Qompass: Configure instance properties" + mode="FORCE_TEXT" + style="push"> + <visibleWhen + checkEnabled="true"> + </visibleWhen> + </command> + <command + commandId="org.eclipse.papyrus.qompass.designer.ui.menuActions.ConfigurePortsCmd" + icon="icons/selContainer.gif" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.ConfigurePortsMenu" + label="Qompass: Configure ports" + mode="FORCE_TEXT" + style="push"> + <visibleWhen + checkEnabled="true"> + </visibleWhen> + </command> + <command + commandId="org.eclipse.papyrus.qompass.designer.ui.menuActions.AddProfileAndModelLibsCmd" + icon="icons/Stereotype.gif" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.AddProfileAndModelLibsMenu" + label="Qompass: Add profiles and model libraries" + mnemonic="P" + mode="FORCE_TEXT" + style="push"> + <visibleWhen + checkEnabled="true"> + </visibleWhen> + </command> + <command + commandId="org.eclipse.papyrus.qompass.designer.ui.menuActions.AllocateCmd" + icon="icons/allocation.gif" + id="org.eclipse.papyrus.qompass.designer.ui.menuActions.AllocateMenu" + label="Qompass: Allocate to node" + mnemonic="A" + mode="FORCE_TEXT" + style="push"> + <visibleWhen + checkEnabled="true"> + </visibleWhen> + </command> + </menuContribution> + </extension> + <extension + point="org.eclipse.ui.preferencePages"> + <page + category="org.eclipse.papyrus.infra.core.sasheditor.preferences.generalcategory" + class="org.eclipse.papyrus.qompass.designer.ui.preferences.QompassPreferencePage" + id="org.eclipse.papyrus.qompass.designer.ui.preferences.QompassPreferencePage_ID" + name="Qompass preferences"> + </page> + </extension> + <extension + point="org.eclipse.core.runtime.preferences"> + <initializer + class="org.eclipse.papyrus.qompass.designer.ui.preferences.QompassPreferenceInitializer"> + </initializer> + </extension> +</plugin> diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/Activator.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/Activator.java new file mode 100644 index 00000000000..887e1767c9b --- /dev/null +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/Activator.java @@ -0,0 +1,50 @@ +package org.eclipse.papyrus.qompass.designer.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.papyrus.qompass.designer.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/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/AllocationDialog.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/AllocationDialog.java index 6f6c8ad5ac6..2a16c75c59a 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/AllocationDialog.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/AllocationDialog.java @@ -12,21 +12,23 @@ * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.dialogs; +package org.eclipse.papyrus.qompass.designer.ui.dialogs; import org.eclipse.draw2d.Label; import org.eclipse.emf.common.util.BasicEList; import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.workspace.AbstractEMFOperation; import org.eclipse.jface.dialogs.MessageDialog; import org.eclipse.papyrus.FCM.DeploymentPlan; import org.eclipse.papyrus.MARTE.MARTE_DesignModel.SRM.SW_Concurrency.SwSchedulableResource; -import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil; import org.eclipse.papyrus.infra.widgets.toolbox.utils.DialogUtils; +import org.eclipse.papyrus.qompass.designer.core.CommandSupport; import org.eclipse.papyrus.qompass.designer.core.Utils; +import org.eclipse.papyrus.qompass.designer.core.commands.AddMarteAndFcmProfile; import org.eclipse.papyrus.qompass.designer.core.deployment.AllocUtils; import org.eclipse.papyrus.qompass.designer.core.deployment.BootLoaderGen; import org.eclipse.papyrus.qompass.designer.core.deployment.DepUtils; -import org.eclipse.papyrus.qompass.designer.core.handlers.AddProfileAndModelLibsHandler; +import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil; import org.eclipse.swt.SWT; import org.eclipse.swt.events.SelectionAdapter; import org.eclipse.swt.events.SelectionEvent; @@ -282,7 +284,8 @@ public class AllocationDialog extends SelectionStatusDialog { Shell shell = new Shell(); if(MessageDialog.openQuestion(shell, "Error", "Stereotype application failed. The profile MARTE::Allocation is probably not applied. Try to apply it?")) { - AddProfileAndModelLibsHandler.addProfiles(Utils.getTop(is), AddProfileAndModelLibsHandler.APPLY_ALLOC); + AbstractEMFOperation applyProfile = new AddMarteAndFcmProfile(Utils.getTop(is), AddMarteAndFcmProfile.APPLY_ALLOC, null); + CommandSupport.exec(null, applyProfile); AllocUtils.allocate(is, newNode); } } diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/AttributeLabelProvider.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/AttributeLabelProvider.java index 19d019ebe2a..91a4e21413f 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/AttributeLabelProvider.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/AttributeLabelProvider.java @@ -12,7 +12,7 @@ * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.dialogs; +package org.eclipse.papyrus.qompass.designer.ui.dialogs; import org.eclipse.jface.viewers.LabelProvider; import org.eclipse.uml2.uml.Property; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/ChooseConfigOpt.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/ChooseConfigOpt.java index 4b763472049..e62a6e6e75e 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/ChooseConfigOpt.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/ChooseConfigOpt.java @@ -12,7 +12,7 @@ * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.dialogs; +package org.eclipse.papyrus.qompass.designer.ui.dialogs; import java.util.ArrayList; import java.util.Collections; @@ -21,11 +21,11 @@ import org.eclipse.emf.common.util.BasicEList; import org.eclipse.emf.common.util.EList; import org.eclipse.papyrus.FCM.ConfigOption; import org.eclipse.papyrus.FCM.ContainerRule; -import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil; import org.eclipse.papyrus.uml.profile.ui.dialogs.AlphabeticalViewerSorter; import org.eclipse.papyrus.uml.profile.ui.dialogs.ChooseSetAssistedDialog; import org.eclipse.papyrus.uml.profile.ui.dialogs.IChooseDialog; import org.eclipse.papyrus.uml.properties.profile.ui.dialogs.StereotypeQualifiedLabelProvider; +import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil; import org.eclipse.swt.SWT; import org.eclipse.swt.events.SelectionAdapter; import org.eclipse.swt.events.SelectionEvent; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/ChoosePorts.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/ChoosePorts.java index e74afffe840..703af08cb76 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/ChoosePorts.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/ChoosePorts.java @@ -12,7 +12,7 @@ * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.dialogs; +package org.eclipse.papyrus.qompass.designer.ui.dialogs; import java.util.ArrayList; import java.util.Collections; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/ConfigOptionLabelProvider.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/ConfigOptionLabelProvider.java index a4abbb83001..53359ee0a1e 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/ConfigOptionLabelProvider.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/ConfigOptionLabelProvider.java @@ -12,7 +12,7 @@ * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.dialogs; +package org.eclipse.papyrus.qompass.designer.ui.dialogs; import org.eclipse.jface.viewers.ITableLabelProvider; import org.eclipse.jface.viewers.LabelProvider; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/ConfigureInstanceDialog.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/ConfigureInstanceDialog.java index 0dd9cb7eb23..cbd7dc09f24 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/ConfigureInstanceDialog.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/ConfigureInstanceDialog.java @@ -12,7 +12,7 @@ * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.dialogs; +package org.eclipse.papyrus.qompass.designer.ui.dialogs; import org.eclipse.emf.common.util.BasicEList; import org.eclipse.emf.common.util.EList; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/ConfigurePortDialog.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/ConfigurePortDialog.java index b26d0ff49da..39f77865f31 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/ConfigurePortDialog.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/ConfigurePortDialog.java @@ -12,7 +12,7 @@ * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.dialogs; +package org.eclipse.papyrus.qompass.designer.ui.dialogs; import java.util.Collections; @@ -33,10 +33,10 @@ import org.eclipse.papyrus.infra.widgets.editors.TreeSelectorDialog; import org.eclipse.papyrus.infra.widgets.toolbox.utils.DialogUtils; import org.eclipse.papyrus.qompass.designer.core.Description; import org.eclipse.papyrus.qompass.designer.core.PortUtils; -import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil; import org.eclipse.papyrus.qompass.designer.core.Utils; import org.eclipse.papyrus.uml.tools.providers.ServiceEditFilteredContentProvider; import org.eclipse.papyrus.uml.tools.providers.UMLLabelProvider; +import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil; import org.eclipse.swt.SWT; import org.eclipse.swt.events.SelectionEvent; import org.eclipse.swt.events.SelectionListener; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/ConnectorSelectionDialog.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/ConnectorSelectionDialog.java index 5fbafd34a0a..443bb17eaaf 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/ConnectorSelectionDialog.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/ConnectorSelectionDialog.java @@ -12,7 +12,7 @@ * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.dialogs; +package org.eclipse.papyrus.qompass.designer.ui.dialogs; import java.util.Arrays; @@ -26,11 +26,11 @@ import org.eclipse.papyrus.FCM.InteractionComponent; import org.eclipse.papyrus.infra.widgets.toolbox.utils.DialogUtils; import org.eclipse.papyrus.qompass.designer.core.Description; import org.eclipse.papyrus.qompass.designer.core.Log; -import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil; import org.eclipse.papyrus.qompass.designer.core.Utils; import org.eclipse.papyrus.qompass.designer.core.templates.ConnectorBinding; import org.eclipse.papyrus.qompass.designer.core.transformations.TransformationException; import org.eclipse.papyrus.qompass.designer.core.transformations.TransformationRTException; +import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil; import org.eclipse.swt.SWT; import org.eclipse.swt.events.SelectionEvent; import org.eclipse.swt.events.SelectionListener; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/ContainerDialog.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/ContainerDialog.java index 517e41f84b3..40a9bfd5fd5 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/ContainerDialog.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/ContainerDialog.java @@ -12,7 +12,7 @@ * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.dialogs; +package org.eclipse.papyrus.qompass.designer.ui.dialogs; import org.eclipse.emf.common.util.EList; import org.eclipse.jface.viewers.ArrayContentProvider; @@ -27,8 +27,8 @@ import org.eclipse.papyrus.FCM.ContainerRule; import org.eclipse.papyrus.FCM.RuleApplication; import org.eclipse.papyrus.infra.widgets.toolbox.utils.DialogUtils; import org.eclipse.papyrus.qompass.designer.core.Description; -import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil; import org.eclipse.papyrus.qompass.designer.core.Utils; +import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil; import org.eclipse.swt.SWT; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/GenerationOptionsDialog.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/GenerationOptionsDialog.java index eecfc96b028..5a5898bea0c 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/GenerationOptionsDialog.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/GenerationOptionsDialog.java @@ -12,7 +12,7 @@ * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.dialogs; +package org.eclipse.papyrus.qompass.designer.ui.dialogs; import java.util.Arrays; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/InstanceLabelProvider.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/InstanceLabelProvider.java index 77f9174f9c5..d44997ffc99 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/InstanceLabelProvider.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/InstanceLabelProvider.java @@ -12,7 +12,7 @@ * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.dialogs; +package org.eclipse.papyrus.qompass.designer.ui.dialogs; import org.eclipse.jface.viewers.LabelProvider; import org.eclipse.uml2.uml.Element; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/InteractiveImplementationChooser.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/InteractiveImplementationChooser.java new file mode 100644 index 00000000000..f436e123c32 --- /dev/null +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/InteractiveImplementationChooser.java @@ -0,0 +1,53 @@ +/***************************************************************************** + * Copyright (c) 2013 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: + * Ansgar Radermacher ansgar.radermacher@cea.fr + * + *****************************************************************************/ + +package org.eclipse.papyrus.qompass.designer.ui.dialogs; + +import org.eclipse.emf.common.util.EList; +import org.eclipse.jface.viewers.ILabelProvider; +import org.eclipse.jface.viewers.LabelProvider; +import org.eclipse.papyrus.qompass.designer.core.deployment.ImplementationChooser; +import org.eclipse.swt.widgets.Shell; +import org.eclipse.ui.dialogs.ElementListSelectionDialog; +import org.eclipse.uml2.uml.Class; +import org.eclipse.uml2.uml.NamedElement; + +public class InteractiveImplementationChooser implements ImplementationChooser { + + public Class chooseImplementation(Class componentType, EList<Class> implList) { + // SelectionDialog = SelectionDialog. + ILabelProvider ilabel = new LabelProvider() { + + public String getText(Object element) { + return ((NamedElement)element).getQualifiedName(); + } + }; + ElementListSelectionDialog dialog = + new ElementListSelectionDialog(new Shell(), ilabel); + + dialog.setTitle("Multiple implementations found"); + dialog.setMessage("Select an implementation for component type " + componentType.getName()); + + dialog.setElements(implList.toArray()); + + dialog.open(); + Object[] selection = dialog.getResult(); + if(selection.length == 1) { + if(selection[0] instanceof Class) { + return (Class)selection[0]; + } + } + return null; + } +} diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/NameLabelProvider.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/NameLabelProvider.java index 917a3396753..410d73a0f7e 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/NameLabelProvider.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/NameLabelProvider.java @@ -12,7 +12,7 @@ * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.dialogs; +package org.eclipse.papyrus.qompass.designer.ui.dialogs; import org.eclipse.jface.viewers.LabelProvider; import org.eclipse.uml2.uml.NamedElement; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/PortLabelProvider.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/PortLabelProvider.java index 0df18d7076d..6e61151dcaa 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/PortLabelProvider.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/PortLabelProvider.java @@ -12,7 +12,7 @@ * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.dialogs; +package org.eclipse.papyrus.qompass.designer.ui.dialogs; import org.eclipse.jface.viewers.ITableLabelProvider; import org.eclipse.jface.viewers.LabelProvider; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/QNameLabelProvider.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/QNameLabelProvider.java index 4ec0e6e6338..eac26ff3b57 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/QNameLabelProvider.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/QNameLabelProvider.java @@ -12,7 +12,7 @@ * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.dialogs; +package org.eclipse.papyrus.qompass.designer.ui.dialogs; import org.eclipse.jface.viewers.LabelProvider; import org.eclipse.uml2.uml.NamedElement; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/RuleLabelProvider.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/RuleLabelProvider.java index 622b4e06154..8582431edf7 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/dialogs/RuleLabelProvider.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/dialogs/RuleLabelProvider.java @@ -12,7 +12,7 @@ * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.dialogs; +package org.eclipse.papyrus.qompass.designer.ui.dialogs; import org.eclipse.jface.viewers.LabelProvider; import org.eclipse.papyrus.FCM.ContainerRule; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/AddProfileAndModelLibsHandler.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/AddProfileAndModelLibsHandler.java new file mode 100644 index 00000000000..5e712ee7d82 --- /dev/null +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/AddProfileAndModelLibsHandler.java @@ -0,0 +1,89 @@ +/*******************************************************************************
+ * Copyright (c) 2011 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:
+ * CEA LIST - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.qompass.designer.ui.handlers;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.emf.transaction.util.TransactionUtil;
+import org.eclipse.jface.dialogs.IDialogConstants;
+import org.eclipse.jface.viewers.ArrayContentProvider;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.papyrus.qompass.designer.core.CommandSupport;
+import org.eclipse.papyrus.qompass.designer.core.commands.AddMarteAndFcmProfile;
+import org.eclipse.papyrus.qompass.designer.core.commands.AddQompassModelLibs;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.dialogs.ListSelectionDialog;
+import org.eclipse.uml2.uml.Package;
+import org.eclipse.uml2.uml.PackageImport;
+
+/**
+ * This class adds the FCM profile, parts of the MARTE profile and required package imports to your model.
+ */
+public class AddProfileAndModelLibsHandler extends CmdHandler {
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public boolean isEnabled() {
+ updateSelectedEObject();
+ if(selectedEObject instanceof Package) {
+ return true;
+ }
+ return false;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public Object execute(ExecutionEvent event) throws ExecutionException {
+ if(!(selectedEObject instanceof Package)) {
+ return null;
+ }
+ final Package selectedPkg = (Package)selectedEObject;
+
+ final TransactionalEditingDomain domain = TransactionUtil.getEditingDomain(selectedPkg);
+ AddMarteAndFcmProfile addProfiles = new AddMarteAndFcmProfile(selectedPkg,
+ AddMarteAndFcmProfile.APPLY_FCM | AddMarteAndFcmProfile.APPLY_ALLOC | AddMarteAndFcmProfile.APPLY_HLAM_GCM,
+ domain);
+ AddQompassModelLibs addModelLibs = new AddQompassModelLibs(selectedPkg, domain);
+
+ final ListSelectionDialog dialog = new ListSelectionDialog(new Shell(),
+ addModelLibs.getAvailableImportPackages().toArray(),
+ new ArrayContentProvider(),
+ new LabelProvider() {
+
+ public String getText(Object pi) {
+ return ((PackageImport)pi).getImportedPackage().getName();
+ }
+ },
+ "Select Qompass model libraries for package import.\n" + //$NON-NLS-1$
+ "Libraries that are already imported, are selected. Please note that additional\n" + //$NON-NLS-1$
+ "Qompass model library might be loaded with the standard \"import registered library\" option\n" + //$NON-NLS-1$
+ "\n" +//$NON-NLS-1$
+ "Pressing \"Ok\" will continue with the application of the FCM profile and (parts of) the MARTE profile\n");//$NON-NLS-1$
+
+ dialog.setTitle("Select import library"); //$NON-NLS-1$
+ dialog.setInitialElementSelections(addModelLibs.getAlreadyImportedPackages());
+ // dialog.setElements (list.toArray ());
+ int result = dialog.open();
+ if(result == IDialogConstants.OK_ID) {
+ addModelLibs.setImportList(dialog.getResult());
+ CommandSupport.exec(domain, addModelLibs);
+ CommandSupport.exec(domain, addProfiles);
+ // open dialog?
+ // MessageDialog.openWarning(new Shell(),
+ // "Warning", "The MARTE profile is not available."); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ return null;
+ }
+}
diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/AllocateHandler.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/AllocateHandler.java index cc4c9d26781..077f482700c 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/AllocateHandler.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/AllocateHandler.java @@ -7,7 +7,7 @@ * Ansgar Radermacher (CEA LIST) ansgar.radermacher@cea.fr - Initial API and implementation *******************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.handlers; +package org.eclipse.papyrus.qompass.designer.ui.handlers; import org.eclipse.core.commands.ExecutionEvent; import org.eclipse.core.commands.ExecutionException; @@ -18,7 +18,7 @@ import org.eclipse.papyrus.FCM.DeploymentPlan; import org.eclipse.papyrus.qompass.designer.core.CommandSupport; import org.eclipse.papyrus.qompass.designer.core.RunnableWithResult; import org.eclipse.papyrus.qompass.designer.core.deployment.DepUtils; -import org.eclipse.papyrus.qompass.designer.core.dialogs.AllocationDialog; +import org.eclipse.papyrus.qompass.designer.ui.dialogs.AllocationDialog; import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil; import org.eclipse.swt.widgets.Shell; import org.eclipse.uml2.uml.Package; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/CmdHandler.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/CmdHandler.java index 9a3cf254362..74a97f103e9 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/CmdHandler.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/CmdHandler.java @@ -10,7 +10,7 @@ * Ansgar Radermacher (CEA LIST) ansgar.radermacher@cea.fr - Initial API and implementation *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.handlers; +package org.eclipse.papyrus.qompass.designer.ui.handlers; import org.eclipse.core.commands.AbstractHandler; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/ConfigureInstanceHandler.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/ConfigureInstanceHandler.java index b51b678e158..cbed6ed411a 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/ConfigureInstanceHandler.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/ConfigureInstanceHandler.java @@ -7,7 +7,7 @@ * CEA LIST - initial API and implementation *******************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.handlers; +package org.eclipse.papyrus.qompass.designer.ui.handlers; import org.eclipse.core.commands.ExecutionEvent; import org.eclipse.core.commands.ExecutionException; @@ -15,7 +15,7 @@ import org.eclipse.gmf.runtime.common.core.command.CommandResult; import org.eclipse.jface.dialogs.IDialogConstants; import org.eclipse.papyrus.qompass.designer.core.CommandSupport; import org.eclipse.papyrus.qompass.designer.core.RunnableWithResult; -import org.eclipse.papyrus.qompass.designer.core.dialogs.ConfigureInstanceDialog; +import org.eclipse.papyrus.qompass.designer.ui.dialogs.ConfigureInstanceDialog; import org.eclipse.swt.widgets.Shell; import org.eclipse.uml2.uml.Class; import org.eclipse.uml2.uml.Connector; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/ConfigurePortHandler.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/ConfigurePortHandler.java index 6ab36ddef14..92ebd50aef9 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/ConfigurePortHandler.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/ConfigurePortHandler.java @@ -7,7 +7,7 @@ * CEA LIST - initial API and implementation *******************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.handlers; +package org.eclipse.papyrus.qompass.designer.ui.handlers; import org.eclipse.core.commands.ExecutionEvent; import org.eclipse.core.commands.ExecutionException; @@ -15,8 +15,8 @@ import org.eclipse.gmf.runtime.common.core.command.CommandResult; import org.eclipse.jface.dialogs.IDialogConstants; import org.eclipse.papyrus.qompass.designer.core.CommandSupport; import org.eclipse.papyrus.qompass.designer.core.RunnableWithResult; -import org.eclipse.papyrus.qompass.designer.core.dialogs.ConfigureInstanceDialog; -import org.eclipse.papyrus.qompass.designer.core.dialogs.ConfigurePortDialog; +import org.eclipse.papyrus.qompass.designer.ui.dialogs.ConfigureInstanceDialog; +import org.eclipse.papyrus.qompass.designer.ui.dialogs.ConfigurePortDialog; import org.eclipse.swt.widgets.Shell; import org.eclipse.uml2.uml.Class; import org.eclipse.uml2.uml.InstanceSpecification; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/CreateDepPlanHandler.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/CreateDepPlanHandler.java index 3700e2d1826..e74c4c43ed8 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/CreateDepPlanHandler.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/CreateDepPlanHandler.java @@ -12,7 +12,7 @@ * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.handlers; +package org.eclipse.papyrus.qompass.designer.ui.handlers; import org.eclipse.core.commands.ExecutionEvent; import org.eclipse.core.commands.ExecutionException; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/CreatePlatformHandler.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/CreatePlatformHandler.java index 7b88bee2511..5cf8b6d2739 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/CreatePlatformHandler.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/CreatePlatformHandler.java @@ -12,7 +12,7 @@ * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.handlers; +package org.eclipse.papyrus.qompass.designer.ui.handlers; import org.eclipse.core.commands.ExecutionEvent; import org.eclipse.core.commands.ExecutionException; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/GenCollaborationUseHandler.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/GenCollaborationUseHandler.java index f34cf3f07c7..2b826d6032d 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/GenCollaborationUseHandler.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/GenCollaborationUseHandler.java @@ -1,4 +1,4 @@ -package org.eclipse.papyrus.qompass.designer.core.handlers; +package org.eclipse.papyrus.qompass.designer.ui.handlers; import org.eclipse.core.commands.ExecutionEvent; import org.eclipse.core.commands.ExecutionException; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/GenConnectionPatternHandler.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/GenConnectionPatternHandler.java index 70aa09f4944..c967de0830e 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/GenConnectionPatternHandler.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/GenConnectionPatternHandler.java @@ -1,4 +1,4 @@ -package org.eclipse.papyrus.qompass.designer.core.handlers; +package org.eclipse.papyrus.qompass.designer.ui.handlers; import org.eclipse.core.commands.ExecutionEvent; import org.eclipse.core.commands.ExecutionException; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/InstantiateDepPlanHandler.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/InstantiateDepPlanHandler.java index 8a338286d38..7d7f0c4b67e 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/InstantiateDepPlanHandler.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/InstantiateDepPlanHandler.java @@ -12,7 +12,7 @@ * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.handlers; +package org.eclipse.papyrus.qompass.designer.ui.handlers; import org.eclipse.core.commands.ExecutionEvent; import org.eclipse.core.commands.ExecutionException; @@ -25,8 +25,8 @@ import org.eclipse.jface.dialogs.IDialogConstants; import org.eclipse.papyrus.FCM.Configuration; import org.eclipse.papyrus.FCM.DeploymentPlan; import org.eclipse.papyrus.qompass.designer.core.ProjectManagement; -import org.eclipse.papyrus.qompass.designer.core.dialogs.GenerationOptionsDialog; import org.eclipse.papyrus.qompass.designer.core.transformations.InstantiateDepPlan; +import org.eclipse.papyrus.qompass.designer.ui.dialogs.GenerationOptionsDialog; import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil; import org.eclipse.swt.widgets.Shell; import org.eclipse.uml2.uml.Class; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/SelectConnectorHandler.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/SelectConnectorHandler.java index c5f39ca93bc..32ac722e455 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/SelectConnectorHandler.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/SelectConnectorHandler.java @@ -7,14 +7,14 @@ * CEA LIST - initial API and implementation *******************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.handlers; +package org.eclipse.papyrus.qompass.designer.ui.handlers; import org.eclipse.core.commands.ExecutionEvent; import org.eclipse.core.commands.ExecutionException; import org.eclipse.jface.dialogs.IDialogConstants; import org.eclipse.papyrus.FCM.InteractionComponent; import org.eclipse.papyrus.qompass.designer.core.CommandSupport; -import org.eclipse.papyrus.qompass.designer.core.dialogs.ConnectorSelectionDialog; +import org.eclipse.papyrus.qompass.designer.ui.dialogs.ConnectorSelectionDialog; import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil; import org.eclipse.swt.widgets.Shell; import org.eclipse.uml2.uml.Class; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/SelectContainerHandler.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/SelectContainerHandler.java index fa802e1758d..27e253cabba 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/SelectContainerHandler.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/SelectContainerHandler.java @@ -7,7 +7,7 @@ * CEA LIST - initial API and implementation *******************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.handlers; +package org.eclipse.papyrus.qompass.designer.ui.handlers; import org.eclipse.core.commands.ExecutionEvent; import org.eclipse.core.commands.ExecutionException; @@ -15,7 +15,7 @@ import org.eclipse.gmf.runtime.common.core.command.CommandResult; import org.eclipse.jface.dialogs.IDialogConstants; import org.eclipse.papyrus.qompass.designer.core.CommandSupport; import org.eclipse.papyrus.qompass.designer.core.RunnableWithResult; -import org.eclipse.papyrus.qompass.designer.core.dialogs.ContainerDialog; +import org.eclipse.papyrus.qompass.designer.ui.dialogs.ContainerDialog; import org.eclipse.swt.widgets.Shell; import org.eclipse.uml2.uml.Class; import org.eclipse.uml2.uml.InstanceSpecification; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/SyncHandler.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/SyncHandler.java index 6d17b8f7d6c..310b5551478 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/handlers/SyncHandler.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/SyncHandler.java @@ -12,7 +12,7 @@ * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.handlers; +package org.eclipse.papyrus.qompass.designer.ui.handlers; import org.eclipse.core.commands.ExecutionEvent; import org.eclipse.core.commands.ExecutionException; diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/preferences/QompassPreferenceInitializer.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/preferences/QompassPreferenceInitializer.java index 572749c050a..7e957aaece3 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/preferences/QompassPreferenceInitializer.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/preferences/QompassPreferenceInitializer.java @@ -11,10 +11,11 @@ * CEA LIST - Initial API and implementation * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.preferences; +package org.eclipse.papyrus.qompass.designer.ui.preferences; import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer; import org.eclipse.jface.preference.IPreferenceStore; +import org.eclipse.papyrus.qompass.designer.core.preferences.QompassPreferenceConstants; /** * Class used to initialize default preference values. diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/preferences/QompassPreferencePage.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/preferences/QompassPreferencePage.java index 6fe09481cf3..378360824da 100644 --- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/preferences/QompassPreferencePage.java +++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/preferences/QompassPreferencePage.java @@ -11,15 +11,15 @@ * CEA LIST - Initial API and implementation * *****************************************************************************/ -package org.eclipse.papyrus.qompass.designer.core.preferences; +package org.eclipse.papyrus.qompass.designer.ui.preferences; import org.eclipse.jface.preference.BooleanFieldEditor; import org.eclipse.jface.preference.FieldEditorPreferencePage; import org.eclipse.jface.preference.StringFieldEditor; import org.eclipse.ui.IWorkbench; import org.eclipse.ui.IWorkbenchPreferencePage; - import org.eclipse.papyrus.qompass.designer.core.Activator; +import org.eclipse.papyrus.qompass.designer.core.preferences.QompassPreferenceConstants; /** * This class represents the EC3M preference page @@ -44,6 +44,7 @@ public class QompassPreferencePage * of preferences. Each field editor knows how to save and * restore itself. */ + @Override public void createFieldEditors() { addField(new BooleanFieldEditor( QompassPreferenceConstants.P_SHOW_PROV_REQ_AS_PORT_ICONS, |