Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemi Schnekenburger2015-02-06 10:00:09 +0000
committerRemi Schnekenburger2015-02-06 10:00:09 +0000
commit6023882e6cdd3d0757e876d62a174334eec7223c (patch)
tree53a5a0ab22b49812a0a667a64c99fc3ad70f9ecf
parent9fc8acd1f3d122728b165de76e601af416e6e6d0 (diff)
downloadorg.eclipse.papyrus-bugs/458619-expansionRegion.tar.gz
org.eclipse.papyrus-bugs/458619-expansionRegion.tar.xz
org.eclipse.papyrus-bugs/458619-expansionRegion.zip
458619: Issues with Expansion region (can not create Input Expansionbugs/458619-expansionRegion
Node and can not embed expansion region in another expansion region) https://bugs.eclipse.org/bugs/show_bug.cgi?id=458619
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/advices/ExpansionNodeAsInputElementEditHelperAdvice.java49
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/advices/ExpansionNodeAsOutputElementEditHelperAdvice.java49
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/CustomDiagramDragDropEditPolicy.java1163
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/CustomExpansionRegionStructureCompartmentCreationEditPolicy.java38
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/CustomExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java49
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/plugin.xml4135
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/src/org/eclipse/papyrus/uml/diagram/activity/edit/parts/ExpansionRegionEditPart.java2965
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/src/org/eclipse/papyrus/uml/diagram/activity/edit/parts/ExpansionRegionStructuredActivityNodeContentCompartmentEditPart.java256
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/ExpansionRegionItemSemanticEditPolicy.java554
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java820
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/editpolicies/CommonDiagramDragDropEditPolicy.java17
11 files changed, 5155 insertions, 4940 deletions
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/advices/ExpansionNodeAsInputElementEditHelperAdvice.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/advices/ExpansionNodeAsInputElementEditHelperAdvice.java
new file mode 100644
index 00000000000..0c5bbe3ae6c
--- /dev/null
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/advices/ExpansionNodeAsInputElementEditHelperAdvice.java
@@ -0,0 +1,49 @@
+/*****************************************************************************
+ * 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:
+ * Remi Schnekenburger (CEA LIST) - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.activity.edit.advices;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.transaction.RecordingCommand;
+import org.eclipse.gmf.runtime.common.core.command.ICommand;
+import org.eclipse.gmf.runtime.emf.type.core.edithelper.AbstractEditHelperAdvice;
+import org.eclipse.gmf.runtime.emf.type.core.requests.ConfigureRequest;
+import org.eclipse.papyrus.commands.wrappers.EMFtoGMFCommandWrapper;
+import org.eclipse.uml2.uml.ExpansionNode;
+import org.eclipse.uml2.uml.ExpansionRegion;
+
+/**
+ * specific advice for expansion nodes as input element
+ */
+public class ExpansionNodeAsInputElementEditHelperAdvice extends AbstractEditHelperAdvice {
+
+ @Override
+ protected ICommand getBeforeConfigureCommand(ConfigureRequest request) {
+ EObject elementToConfigure = request.getElementToConfigure();
+ if(elementToConfigure instanceof ExpansionNode) {
+ final ExpansionNode node = ((ExpansionNode)elementToConfigure);
+ final EObject container = node.eContainer();
+ if(container instanceof ExpansionRegion) {
+ // add the element to the list of input elements
+ RecordingCommand command = new RecordingCommand(request.getEditingDomain(), "Adding node as an input element") {
+
+ @Override
+ protected void doExecute() {
+ ((ExpansionRegion)container).getInputElements().add(node);
+ }
+ };
+ return new EMFtoGMFCommandWrapper(command);
+ }
+ }
+ return super.getBeforeConfigureCommand(request);
+ }
+}
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/advices/ExpansionNodeAsOutputElementEditHelperAdvice.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/advices/ExpansionNodeAsOutputElementEditHelperAdvice.java
new file mode 100644
index 00000000000..8a062bd6f0f
--- /dev/null
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/advices/ExpansionNodeAsOutputElementEditHelperAdvice.java
@@ -0,0 +1,49 @@
+/*****************************************************************************
+ * 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:
+ * Remi Schnekenburger (CEA LIST) - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.activity.edit.advices;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.transaction.RecordingCommand;
+import org.eclipse.gmf.runtime.common.core.command.ICommand;
+import org.eclipse.gmf.runtime.emf.type.core.edithelper.AbstractEditHelperAdvice;
+import org.eclipse.gmf.runtime.emf.type.core.requests.ConfigureRequest;
+import org.eclipse.papyrus.commands.wrappers.EMFtoGMFCommandWrapper;
+import org.eclipse.uml2.uml.ExpansionNode;
+import org.eclipse.uml2.uml.ExpansionRegion;
+
+/**
+ * specific advice for expansion nodes as output element
+ */
+public class ExpansionNodeAsOutputElementEditHelperAdvice extends AbstractEditHelperAdvice {
+
+ @Override
+ protected ICommand getBeforeConfigureCommand(ConfigureRequest request) {
+ EObject elementToConfigure = request.getElementToConfigure();
+ if(elementToConfigure instanceof ExpansionNode) {
+ final ExpansionNode node = ((ExpansionNode)elementToConfigure);
+ final EObject container = node.eContainer();
+ if(container instanceof ExpansionRegion) {
+ // add the element to the list of input elements
+ RecordingCommand command = new RecordingCommand(request.getEditingDomain(), "Adding node as an output element") {
+
+ @Override
+ protected void doExecute() {
+ ((ExpansionRegion)container).getOutputElements().add(node);
+ }
+ };
+ return new EMFtoGMFCommandWrapper(command);
+ }
+ }
+ return super.getBeforeConfigureCommand(request);
+ }
+}
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/CustomDiagramDragDropEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/CustomDiagramDragDropEditPolicy.java
index 73868b03168..527c8570319 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/CustomDiagramDragDropEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/CustomDiagramDragDropEditPolicy.java
@@ -1,565 +1,598 @@
-/*****************************************************************************
- * Copyright (c) 2009 Atos Origin.
- *
- *
- * 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:
- * Atos Origin - Initial API and implementation
- *
- *****************************************************************************/
-package org.eclipse.papyrus.uml.diagram.activity.edit.policies;
-
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.geometry.Point;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.commands.Command;
-import org.eclipse.gef.commands.CompoundCommand;
-import org.eclipse.gef.commands.UnexecutableCommand;
-import org.eclipse.gef.requests.ChangeBoundsRequest;
-import org.eclipse.gmf.runtime.common.core.command.CompositeCommand;
-import org.eclipse.gmf.runtime.common.core.command.ICommand;
-import org.eclipse.gmf.runtime.diagram.core.util.ViewUtil;
-import org.eclipse.gmf.runtime.diagram.ui.commands.CreateCommand;
-import org.eclipse.gmf.runtime.diagram.ui.commands.ICommandProxy;
-import org.eclipse.gmf.runtime.diagram.ui.commands.SetBoundsCommand;
-import org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPart;
-import org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart;
-import org.eclipse.gmf.runtime.diagram.ui.editparts.LabelEditPart;
-import org.eclipse.gmf.runtime.diagram.ui.requests.CreateConnectionViewRequest;
-import org.eclipse.gmf.runtime.diagram.ui.requests.CreateViewRequest.ViewDescriptor;
-import org.eclipse.gmf.runtime.diagram.ui.requests.DropObjectsRequest;
-import org.eclipse.gmf.runtime.emf.core.util.EObjectAdapter;
-import org.eclipse.gmf.runtime.emf.type.core.IElementType;
-import org.eclipse.gmf.runtime.emf.type.core.IHintedType;
-import org.eclipse.gmf.runtime.notation.Edge;
-import org.eclipse.gmf.runtime.notation.Node;
-import org.eclipse.gmf.runtime.notation.View;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionLocalPostconditionEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionLocalPreconditionEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.CallBehaviorActionEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.CallOperationActionEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ConstraintAsLocalPostcondEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ConstraintAsLocalPrecondEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ControlFlowEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.DurationConstraintAsLocalPostcondEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.DurationConstraintAsLocalPrecondEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.IntervalConstraintAsLocalPostcondEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.IntervalConstraintAsLocalPrecondEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ObjectFlowEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OpaqueActionEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ReadSelfActionEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.TimeConstraintAsLocalPostcondEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.TimeConstraintAsLocalPrecondEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ValueSpecificationActionEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.helper.ActivityLinkMappingHelper;
-import org.eclipse.papyrus.uml.diagram.activity.part.UMLVisualIDRegistry;
-import org.eclipse.papyrus.uml.diagram.activity.providers.UMLElementTypes;
-import org.eclipse.papyrus.uml.diagram.common.commands.CommonDeferredCreateConnectionViewCommand;
-import org.eclipse.papyrus.uml.diagram.common.commands.SemanticAdapter;
-import org.eclipse.papyrus.uml.diagram.common.editpolicies.CommonDiagramDragDropEditPolicy;
-import org.eclipse.papyrus.uml.diagram.common.util.DiagramEditPartsUtil;
-import org.eclipse.uml2.uml.Action;
-import org.eclipse.uml2.uml.Activity;
-import org.eclipse.uml2.uml.ActivityEdge;
-import org.eclipse.uml2.uml.ActivityNode;
-import org.eclipse.uml2.uml.Behavior;
-import org.eclipse.uml2.uml.Constraint;
-import org.eclipse.uml2.uml.Element;
-import org.eclipse.uml2.uml.ObjectFlow;
-import org.eclipse.uml2.uml.StructuredActivityNode;
-
-/**
- * This class is used to execute the drag and drop from the outline. It can
- * manage the drop of nodes and binary links. To manage specific drop the method
- * CommonDiagramDragDropEditPolicy.getSpecificDropCommand has to be implemented
- */
-public class CustomDiagramDragDropEditPolicy extends CommonDiagramDragDropEditPolicy {
-
- /** DropActionLocalConditionsAfterActionCommand label */
- private static final String LABEL = "DropLocalConditions";
-
- /** Point to translate successive local conditions to avoid overlapping */
- private static final Point LOCAL_CONDITIONS_TRANSLATION_POINT = new Point(160, 0);
-
- /**
- * Instantiates a new custom diagram drag drop edit policy with the right
- * link mapping helper
- */
- public CustomDiagramDragDropEditPolicy() {
- super(ActivityLinkMappingHelper.getInstance());
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- protected Set<Integer> getDroppableElementVisualId() {
- Set<Integer> droppableElementsVisualID = new HashSet<Integer>();
- droppableElementsVisualID.add(OpaqueActionEditPart.VISUAL_ID);
- droppableElementsVisualID.add(CallBehaviorActionEditPart.VISUAL_ID);
- droppableElementsVisualID.add(CallOperationActionEditPart.VISUAL_ID);
- droppableElementsVisualID.add(TimeConstraintAsLocalPrecondEditPart.VISUAL_ID);
- droppableElementsVisualID.add(TimeConstraintAsLocalPostcondEditPart.VISUAL_ID);
- droppableElementsVisualID.add(DurationConstraintAsLocalPrecondEditPart.VISUAL_ID);
- droppableElementsVisualID.add(DurationConstraintAsLocalPostcondEditPart.VISUAL_ID);
- droppableElementsVisualID.add(IntervalConstraintAsLocalPrecondEditPart.VISUAL_ID);
- droppableElementsVisualID.add(IntervalConstraintAsLocalPostcondEditPart.VISUAL_ID);
- droppableElementsVisualID.add(ConstraintAsLocalPrecondEditPart.VISUAL_ID);
- droppableElementsVisualID.add(ConstraintAsLocalPostcondEditPart.VISUAL_ID);
- droppableElementsVisualID.add(ObjectFlowEditPart.VISUAL_ID);
- droppableElementsVisualID.add(ControlFlowEditPart.VISUAL_ID);
- droppableElementsVisualID.add(ValueSpecificationActionEditPart.VISUAL_ID);
- droppableElementsVisualID.add(ReadSelfActionEditPart.VISUAL_ID);
- return droppableElementsVisualID;
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- public IElementType getUMLElementType(int elementID) {
- return UMLElementTypes.getElementType(elementID);
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- public int getNodeVisualID(View containerView, EObject domainElement) {
- return UMLVisualIDRegistry.getNodeVisualID(containerView, domainElement);
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- public int getLinkWithClassVisualID(EObject domainElement) {
- return UMLVisualIDRegistry.getLinkWithClassVisualID(domainElement);
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- protected Command getSpecificDropCommand(DropObjectsRequest dropRequest, Element semanticElement, int nodeVISUALID, int linkVISUALID) {
- switch(nodeVISUALID) {
- case OpaqueActionEditPart.VISUAL_ID:
- case CallBehaviorActionEditPart.VISUAL_ID:
- case CallOperationActionEditPart.VISUAL_ID:
- case ValueSpecificationActionEditPart.VISUAL_ID:
- case ReadSelfActionEditPart.VISUAL_ID:
- return dropAction(dropRequest, semanticElement, nodeVISUALID);
- case TimeConstraintAsLocalPrecondEditPart.VISUAL_ID:
- case TimeConstraintAsLocalPostcondEditPart.VISUAL_ID:
- case DurationConstraintAsLocalPrecondEditPart.VISUAL_ID:
- case DurationConstraintAsLocalPostcondEditPart.VISUAL_ID:
- case IntervalConstraintAsLocalPrecondEditPart.VISUAL_ID:
- case IntervalConstraintAsLocalPostcondEditPart.VISUAL_ID:
- case ConstraintAsLocalPrecondEditPart.VISUAL_ID:
- case ConstraintAsLocalPostcondEditPart.VISUAL_ID:
- return dropActionLocalCondition(dropRequest, semanticElement, nodeVISUALID);
- }
- switch(linkVISUALID) {
- case ObjectFlowEditPart.VISUAL_ID:
- case ControlFlowEditPart.VISUAL_ID:
- return dropActivityEdge(dropRequest, semanticElement, linkVISUALID);
- }
- return super.getSpecificDropCommand(dropRequest, semanticElement, nodeVISUALID, linkVISUALID);
- }
-
- /**
- * Specific drop action for an action (with its local conditions)
- *
- * @param dropRequest
- * the drop request
- * @param semanticElement
- * the semantic link
- * @param nodeVISUALID
- * the node visual id
- *
- * @return the command for action
- */
- protected Command dropAction(final DropObjectsRequest dropRequest, final Element semanticElement, int nodeVISUALID) {
- // The element to drop is a node
- /*
- * Check if the element is contained in this new container.
- * A special case as to be handle for structured element as contained node are not contained by the reference OwnedElement
- */
- // Retrieve it's expected graphical parent
- EObject graphicalParent = ((GraphicalEditPart)getHost()).resolveSemanticElement();
- if(graphicalParent instanceof StructuredActivityNode) {
- if(!((StructuredActivityNode)graphicalParent).getNodes().contains(semanticElement)) {
- return UnexecutableCommand.INSTANCE;
- }
- } else if(graphicalParent instanceof Element) {
- if(!((Element)graphicalParent).getOwnedElements().contains(semanticElement)) {
- return UnexecutableCommand.INSTANCE;
- }
- }
- CompoundCommand globalCmd = new CompoundCommand();
- if(globalCmd.isEmpty()) {
- ICommand cmd = getDefaultDropNodeCommand(nodeVISUALID, dropRequest.getLocation(), semanticElement);
- globalCmd.add(new ICommandProxy(cmd));
- }
- // also drop local conditions
- DropActionLocalConditionsAfterActionCommand cmd = new DropActionLocalConditionsAfterActionCommand(dropRequest, semanticElement);
- globalCmd.add(cmd);
- return globalCmd;
- }
-
- /**
- * Specific drop action for an action's local condition
- *
- * @param dropRequest
- * the drop request
- * @param semanticElement
- * the semantic link
- * @param nodeVISUALID
- * the node visual id
- *
- * @return the command for local condition
- */
- protected Command dropActionLocalCondition(DropObjectsRequest dropRequest, Element semanticElement, int nodeVISUALID) {
- if(getHost() instanceof GraphicalEditPart) {
- // Adapt the location
- Point location = dropRequest.getLocation().getCopy();
- ((GraphicalEditPart)getHost()).getContentPane().translateToRelative(location);
- ((GraphicalEditPart)getHost()).getContentPane().translateFromParent(location);
- location.translate(((GraphicalEditPart)getHost()).getContentPane().getClientArea().getLocation().getNegated());
- location.y += 100;
- // Retrieve expected graphical parent
- EObject graphicalParent = ((GraphicalEditPart)getHost()).resolveSemanticElement();
- // verification of container differs from usually, condition is
- // graphically contained by the activity
- if(graphicalParent instanceof Activity) {
- // drop the constraint and its link to the action
- Element linkSource = semanticElement.getOwner();
- Element linkTarget = semanticElement;
- // check for existing link part
- for(Object targetView : DiagramEditPartsUtil.getEObjectViews(linkTarget)) {
- if(targetView instanceof View) {
- EditPart targetEditpart = DiagramEditPartsUtil.getEditPartFromView((View)targetView, getHost());
- if(targetEditpart instanceof ActionLocalPreconditionEditPart || targetEditpart instanceof ActionLocalPostconditionEditPart) {
- // condition link is already drawn.
- return UnexecutableCommand.INSTANCE;
- }
- }
- }
- if(TimeConstraintAsLocalPrecondEditPart.VISUAL_ID == nodeVISUALID || DurationConstraintAsLocalPrecondEditPart.VISUAL_ID == nodeVISUALID || IntervalConstraintAsLocalPrecondEditPart.VISUAL_ID == nodeVISUALID || ConstraintAsLocalPrecondEditPart.VISUAL_ID == nodeVISUALID) {
- return new ICommandProxy(dropBinaryLink(new CompositeCommand("drop Local Precondition link"), linkSource, linkTarget, ActionLocalPreconditionEditPart.VISUAL_ID, location, semanticElement));
- } else if(TimeConstraintAsLocalPostcondEditPart.VISUAL_ID == nodeVISUALID || DurationConstraintAsLocalPostcondEditPart.VISUAL_ID == nodeVISUALID || IntervalConstraintAsLocalPostcondEditPart.VISUAL_ID == nodeVISUALID || ConstraintAsLocalPostcondEditPart.VISUAL_ID == nodeVISUALID) {
- return new ICommandProxy(dropBinaryLink(new CompositeCommand("drop Local Postcondition link"), linkSource, linkTarget, ActionLocalPostconditionEditPart.VISUAL_ID, location, semanticElement));
- }
- }
- }
- return UnexecutableCommand.INSTANCE;
- }
-
- /**
- * the method provides command to create the binary link into the diagram.
- * If the source and the target views do not exist, these views will be
- * created.
- *
- * @param cc
- * the composite command that will contain the set of command to
- * create the binary link
- * @param source
- * the source the element source of the link
- * @param target
- * the target the element target of the link
- * @param linkVISUALID
- * the link VISUALID used to create the view
- * @param location
- * the location the location where the view will be be created
- * @param semanticLink
- * the semantic link that will be attached to the view
- *
- * @return the composite command
- */
- public CompositeCommand dropObjectFlowSpecification(CompositeCommand cc, ObjectFlow source, Behavior target, int linkVISUALID, int specificationVISUALID, Point location, Element semanticLink) {
- // look for editpart
- ObjectFlowEditPart sourceEditPart = lookForEdgePart(source);
- // look for editpart linked with the object flow
- GraphicalEditPart targetEditPart = null;
- if(sourceEditPart != null) {
- // TODO check that there is not already a representation linked to
- // the source object flow
- }
- // descriptor of the link
- CreateConnectionViewRequest.ConnectionViewDescriptor linkdescriptor = new CreateConnectionViewRequest.ConnectionViewDescriptor(getUMLElementType(linkVISUALID), ((IHintedType)getUMLElementType(linkVISUALID)).getSemanticHint(), getDiagramPreferencesHint());
- IAdaptable sourceAdapter = null;
- IAdaptable targetAdapter = null;
- if(sourceEditPart == null) {
- // creation of the node
- ViewDescriptor descriptor = new ViewDescriptor(new EObjectAdapter(source), Edge.class, null, ViewUtil.APPEND, true, ((IGraphicalEditPart)getHost()).getDiagramPreferencesHint());
- // get the command and execute it.
- CreateCommand nodeCreationCommand = new CreateCommand(((IGraphicalEditPart)getHost()).getEditingDomain(), descriptor, ((View)getHost().getModel()));
- cc.compose(nodeCreationCommand);
- SetBoundsCommand setBoundsCommand = new SetBoundsCommand(getEditingDomain(), "move", (IAdaptable)nodeCreationCommand.getCommandResult().getReturnValue(), new Point(location.x, location.y + 100));
- cc.compose(setBoundsCommand);
- sourceAdapter = (IAdaptable)nodeCreationCommand.getCommandResult().getReturnValue();
- } else {
- sourceAdapter = new SemanticAdapter(null, sourceEditPart.getModel());
- }
- if(targetEditPart == null) {
- // creation of the node
- String nodeSemanticHint = ((IHintedType)getUMLElementType(specificationVISUALID)).getSemanticHint();
- ViewDescriptor descriptor = new ViewDescriptor(new EObjectAdapter(target), Node.class, nodeSemanticHint, ViewUtil.APPEND, true, ((IGraphicalEditPart)getHost()).getDiagramPreferencesHint());
- // get the command and execute it.
- CreateCommand nodeCreationCommand = new CreateCommand(((IGraphicalEditPart)getHost()).getEditingDomain(), descriptor, ((View)getHost().getModel()));
- cc.compose(nodeCreationCommand);
- SetBoundsCommand setBoundsCommand = new SetBoundsCommand(getEditingDomain(), "move", (IAdaptable)nodeCreationCommand.getCommandResult().getReturnValue(), new Point(location.x, location.y - 100));
- cc.compose(setBoundsCommand);
- targetAdapter = (IAdaptable)nodeCreationCommand.getCommandResult().getReturnValue();
- } else {
- targetAdapter = new SemanticAdapter(null, targetEditPart.getModel());
- }
- CommonDeferredCreateConnectionViewCommand aLinkCommand = new CommonDeferredCreateConnectionViewCommand(getEditingDomain(), ((IHintedType)getUMLElementType(linkVISUALID)).getSemanticHint(), sourceAdapter, targetAdapter, getViewer(), getDiagramPreferencesHint(), linkdescriptor, null);
- aLinkCommand.setElement(semanticLink);
- cc.compose(aLinkCommand);
- return cc;
- }
-
- /**
- * Look for editPart from its semantic.
- *
- * @param semantic
- * the semantic
- *
- * @return the edits the part or null if not found
- */
- private ObjectFlowEditPart lookForEdgePart(EObject semantic) {
- Collection<EditPart> editPartSet = getHost().getViewer().getEditPartRegistry().values();
- Iterator<EditPart> editPartIterator = editPartSet.iterator();
- ObjectFlowEditPart existedEditPart = null;
- while(editPartIterator.hasNext() && existedEditPart == null) {
- EditPart currentEditPart = editPartIterator.next();
- if(currentEditPart instanceof ObjectFlowEditPart && semantic.equals(((ObjectFlowEditPart)currentEditPart).resolveSemanticElement())) {
- existedEditPart = (ObjectFlowEditPart)currentEditPart;
- }
- }
- return existedEditPart;
- }
-
- /**
- * Specific drop action for an activity edge
- *
- * @param dropRequest
- * the drop request
- * @param semanticLink
- * the semantic link
- * @param linkVISUALID
- * the link visual id
- *
- * @return the command for association
- */
- protected Command dropActivityEdge(DropObjectsRequest dropRequest, Element semanticLink, int linkVISUALID) {
- Collection<?> sources = ActivityLinkMappingHelper.getInstance().getSource(semanticLink);
- Collection<?> targets = ActivityLinkMappingHelper.getInstance().getTarget(semanticLink);
- if(sources.size() == 1 && targets.size() == 1) {
- ActivityNode source = (ActivityNode)sources.toArray()[0];
- ActivityNode target = (ActivityNode)targets.toArray()[0];
- CompositeCommand dropBinaryLink = dropBinaryLink(new CompositeCommand("drop Activity Edge"), source, target, linkVISUALID, dropRequest.getLocation(), semanticLink);
- // If the activity edge is interruptible edge we forbib to drag it outside the interuptible edge
- if(dropBinaryLink != null && semanticLink instanceof ActivityEdge && ((ActivityEdge)semanticLink).getInterrupts() != null) {
- if(!((ActivityEdge)semanticLink).getInterrupts().equals(((IGraphicalEditPart)getHost()).resolveSemanticElement())) {
- return UnexecutableCommand.INSTANCE;
- } else {
- return new ICommandProxy(getInterruptbleEdgeCommand(new CompositeCommand("drop Interruptible Activity Edge"), source, target, linkVISUALID, dropRequest.getLocation(), semanticLink));////$NON-NLS-0$
- }
- }
- return new ICommandProxy(dropBinaryLink);
- } else {
- return UnexecutableCommand.INSTANCE;
- }
- }
-
- /**
- * Get the command to drag and drop an interruptible Edge
- * Set the source inside the Interruptible Edge and set the target outside the interruptible edge
- *
- * @param dropBinaryLink
- * {@link CompositeCommand} to compose the newly created command
- * @param semanticLink
- * @param point
- * @param linkVISUALID
- * @param target
- * @param source
- */
- protected CompositeCommand getInterruptbleEdgeCommand(CompositeCommand cc, Element source, Element target, int linkVISUALID, Point location, Element semanticLink) {
- // look for editpart
- GraphicalEditPart sourceEditPart = (GraphicalEditPart)lookForEditPart(source);
- GraphicalEditPart targetEditPart = (GraphicalEditPart)lookForEditPart(target);
- // descriptor of the link
- CreateConnectionViewRequest.ConnectionViewDescriptor linkdescriptor = new CreateConnectionViewRequest.ConnectionViewDescriptor(getUMLElementType(linkVISUALID), ((IHintedType)getUMLElementType(linkVISUALID)).getSemanticHint(), getDiagramPreferencesHint());
- IAdaptable sourceAdapter = null;
- IAdaptable targetAdapter = null;
- if(sourceEditPart == null) {
- // creation of the node
- ViewDescriptor descriptor = new ViewDescriptor(new EObjectAdapter(source), Node.class, null, ViewUtil.APPEND, true, ((IGraphicalEditPart)getHost()).getDiagramPreferencesHint());
- // get the command and execute it.
- CreateCommand nodeCreationCommand = new CreateCommand(((IGraphicalEditPart)getHost()).getEditingDomain(), descriptor, ((View)getHost().getModel()));
- cc.compose(nodeCreationCommand);
- SetBoundsCommand setBoundsCommand = new SetBoundsCommand(getEditingDomain(), "move", (IAdaptable)nodeCreationCommand.getCommandResult().getReturnValue(), new Point(location.x, location.y)); //$NON-NLS-1$
- cc.compose(setBoundsCommand);
- sourceAdapter = (IAdaptable)nodeCreationCommand.getCommandResult().getReturnValue();
- } else {
- sourceAdapter = new SemanticAdapter(null, sourceEditPart.getModel());
- }
- if(targetEditPart == null) {
- // creation of the node
- ViewDescriptor descriptor = new ViewDescriptor(new EObjectAdapter(target), Node.class, null, ViewUtil.APPEND, true, ((IGraphicalEditPart)getHost()).getDiagramPreferencesHint());
- // get the command and execute it.
- CreateCommand nodeCreationCommand = new CreateCommand(((IGraphicalEditPart)getHost()).getEditingDomain(), descriptor, ((View)((View)((IGraphicalEditPart)getHost()).getTopGraphicEditPart().getModel()).eContainer()));
- cc.compose(nodeCreationCommand);
- IFigure interruptibleActivityRegionFigure = ((IGraphicalEditPart)getHost()).getFigure();
- interruptibleActivityRegionFigure.getBounds();
- Point targetPoint = location.getCopy();
- targetPoint.setX(targetPoint.x() + 50);
- interruptibleActivityRegionFigure.translateToAbsolute(targetPoint);
- while(interruptibleActivityRegionFigure.containsPoint(targetPoint)) {
- targetPoint.setX(targetPoint.x() + 50);
- }
- SetBoundsCommand setBoundsCommand = new SetBoundsCommand(getEditingDomain(), "move", (IAdaptable)nodeCreationCommand.getCommandResult().getReturnValue(), targetPoint); //$NON-NLS-1$
- cc.compose(setBoundsCommand);
- targetAdapter = (IAdaptable)nodeCreationCommand.getCommandResult().getReturnValue();
- } else {
- targetAdapter = new SemanticAdapter(null, targetEditPart.getModel());
- }
- CommonDeferredCreateConnectionViewCommand aLinkCommand = new CommonDeferredCreateConnectionViewCommand(getEditingDomain(), ((IHintedType)getUMLElementType(linkVISUALID)).getSemanticHint(), sourceAdapter, targetAdapter, getViewer(), getDiagramPreferencesHint(), linkdescriptor, null);
- aLinkCommand.setElement(semanticLink);
- cc.compose(aLinkCommand);
- return cc;
- }
-
- /**
- * Avoid selection of label edit parts
- *
- * @see org.eclipse.papyrus.uml.diagram.common.editpolicies.OldCommonDiagramDragDropEditPolicy#isEditPartTypeSuitableForEClass(java.lang.Class,
- * org.eclipse.emf.ecore.EClass)
- */
- @Override
- protected boolean isEditPartTypeSuitableForEClass(Class<? extends GraphicalEditPart> editPartClass, EClass eClass) {
- // avoid selecting a label instead of the activity node
- return !LabelEditPart.class.isAssignableFrom(editPartClass);
- }
-
- /**
- * This action enables to drop an action's local conditions when an action
- * is dropped. Check of the existing action view is run at execution time to
- * avoid duplication of the action's view. This action is an intern class
- * since it is narrowly linked with this edit policy properties and
- * operations
- */
- private class DropActionLocalConditionsAfterActionCommand extends Command {
-
- /** The drop request */
- private DropObjectsRequest request;
-
- /** The dropped action */
- private Element droppedAction;
-
- /** The command which have been executed (known at execution time) */
- private List<Command> executedCommands = new LinkedList<Command>();
-
- /**
- * Constructor.
- *
- * @param dropRequest
- * the initial request to drop elements
- * @param action
- * the dropped action (whose local conditions must follow)
- */
- public DropActionLocalConditionsAfterActionCommand(DropObjectsRequest dropRequest, Element action) {
- super(LABEL);
- request = dropRequest;
- droppedAction = action;
- }
-
- /**
- * This command can always execute, though it may have no effect
- *
- * @see org.eclipse.gef.commands.Command#canExecute()
- * @return true
- */
- @Override
- public boolean canExecute() {
- return true;
- }
-
- /**
- * Execute the command and drop each local condition view
- *
- * @see org.eclipse.gef.commands.Command#execute()
- */
- @Override
- public void execute() {
- // update request to unset the position, so that position is
- // automatically recomputed each time (to avoid superposition).
- Object hostView = getHost().getModel();
- if(hostView instanceof View) {
- if(droppedAction instanceof Action) {
- Point initialLocation = request.getLocation().getCopy();
- for(Constraint pre : ((Action)droppedAction).getLocalPreconditions()) {
- int visual = UMLVisualIDRegistry.getNodeVisualID((View)hostView, pre);
- Command localCmd = dropActionLocalCondition(request, pre, visual);
- if(localCmd != null && localCmd.canExecute()) {
- localCmd.execute();
- executedCommands.add(localCmd);
- // update the request's position to avoid conditions
- // superposition
- request.getLocation().translate(LOCAL_CONDITIONS_TRANSLATION_POINT);
- }
- }
- for(Constraint post : ((Action)droppedAction).getLocalPostconditions()) {
- int visual = UMLVisualIDRegistry.getNodeVisualID((View)hostView, post);
- Command localCmd = dropActionLocalCondition(request, post, visual);
- if(localCmd != null && localCmd.canExecute()) {
- localCmd.execute();
- executedCommands.add(localCmd);
- // update the request's position to avoid conditions
- // superposition
- request.getLocation().translate(LOCAL_CONDITIONS_TRANSLATION_POINT);
- }
- }
- // restore initial location
- request.getLocation().setLocation(initialLocation);
- }
- }
- }
-
- /**
- * Undo executed commands
- *
- * @see org.eclipse.gef.commands.Command#undo()
- */
- @Override
- public void undo() {
- // undo commands in the inverse order
- for(int i = executedCommands.size() - 1; i >= 0; i--) {
- Command cmd = executedCommands.get(i);
- cmd.undo();
- }
- executedCommands.clear();
- }
- }
-
- @Override
- protected Command getDropCommand(ChangeBoundsRequest request) {
- return super.getDropCommand(request);
- }
-}
+/*****************************************************************************
+ * Copyright (c) 2009 Atos Origin.
+ *
+ *
+ * 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:
+ * Atos Origin - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.activity.edit.policies;
+
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.draw2d.IFigure;
+import org.eclipse.draw2d.geometry.Point;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.gef.EditPart;
+import org.eclipse.gef.commands.Command;
+import org.eclipse.gef.commands.CompoundCommand;
+import org.eclipse.gef.commands.UnexecutableCommand;
+import org.eclipse.gef.requests.ChangeBoundsRequest;
+import org.eclipse.gmf.runtime.common.core.command.CompositeCommand;
+import org.eclipse.gmf.runtime.common.core.command.ICommand;
+import org.eclipse.gmf.runtime.diagram.core.util.ViewUtil;
+import org.eclipse.gmf.runtime.diagram.ui.commands.CreateCommand;
+import org.eclipse.gmf.runtime.diagram.ui.commands.ICommandProxy;
+import org.eclipse.gmf.runtime.diagram.ui.commands.SetBoundsCommand;
+import org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPart;
+import org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart;
+import org.eclipse.gmf.runtime.diagram.ui.editparts.LabelEditPart;
+import org.eclipse.gmf.runtime.diagram.ui.requests.CreateConnectionViewRequest;
+import org.eclipse.gmf.runtime.diagram.ui.requests.CreateViewRequest.ViewDescriptor;
+import org.eclipse.gmf.runtime.diagram.ui.requests.DropObjectsRequest;
+import org.eclipse.gmf.runtime.emf.core.util.EObjectAdapter;
+import org.eclipse.gmf.runtime.emf.type.core.IElementType;
+import org.eclipse.gmf.runtime.emf.type.core.IHintedType;
+import org.eclipse.gmf.runtime.notation.Edge;
+import org.eclipse.gmf.runtime.notation.Node;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionLocalPostconditionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionLocalPreconditionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.CallBehaviorActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.CallOperationActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ConstraintAsLocalPostcondEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ConstraintAsLocalPrecondEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ControlFlowEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.DurationConstraintAsLocalPostcondEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.DurationConstraintAsLocalPrecondEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ExpansionNodeAsInEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ExpansionNodeAsOutEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.IntervalConstraintAsLocalPostcondEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.IntervalConstraintAsLocalPrecondEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ObjectFlowEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OpaqueActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ReadSelfActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.TimeConstraintAsLocalPostcondEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.TimeConstraintAsLocalPrecondEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ValueSpecificationActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.helper.ActivityLinkMappingHelper;
+import org.eclipse.papyrus.uml.diagram.activity.part.UMLVisualIDRegistry;
+import org.eclipse.papyrus.uml.diagram.activity.providers.UMLElementTypes;
+import org.eclipse.papyrus.uml.diagram.common.commands.CommonDeferredCreateConnectionViewCommand;
+import org.eclipse.papyrus.uml.diagram.common.commands.SemanticAdapter;
+import org.eclipse.papyrus.uml.diagram.common.editpolicies.CommonDiagramDragDropEditPolicy;
+import org.eclipse.papyrus.uml.diagram.common.util.DiagramEditPartsUtil;
+import org.eclipse.uml2.uml.Action;
+import org.eclipse.uml2.uml.Activity;
+import org.eclipse.uml2.uml.ActivityEdge;
+import org.eclipse.uml2.uml.ActivityNode;
+import org.eclipse.uml2.uml.Behavior;
+import org.eclipse.uml2.uml.Constraint;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.ObjectFlow;
+import org.eclipse.uml2.uml.StructuredActivityNode;
+
+/**
+ * This class is used to execute the drag and drop from the outline. It can
+ * manage the drop of nodes and binary links. To manage specific drop the method
+ * CommonDiagramDragDropEditPolicy.getSpecificDropCommand has to be implemented
+ */
+public class CustomDiagramDragDropEditPolicy extends CommonDiagramDragDropEditPolicy {
+
+ /** DropActionLocalConditionsAfterActionCommand label */
+ private static final String LABEL = "DropLocalConditions";
+
+ /** Point to translate successive local conditions to avoid overlapping */
+ private static final Point LOCAL_CONDITIONS_TRANSLATION_POINT = new Point(160, 0);
+
+ /**
+ * Instantiates a new custom diagram drag drop edit policy with the right
+ * link mapping helper
+ */
+ public CustomDiagramDragDropEditPolicy() {
+ super(ActivityLinkMappingHelper.getInstance());
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ protected Set<Integer> getDroppableElementVisualId() {
+ Set<Integer> droppableElementsVisualID = new HashSet<Integer>();
+ droppableElementsVisualID.add(OpaqueActionEditPart.VISUAL_ID);
+ droppableElementsVisualID.add(CallBehaviorActionEditPart.VISUAL_ID);
+ droppableElementsVisualID.add(CallOperationActionEditPart.VISUAL_ID);
+ droppableElementsVisualID.add(TimeConstraintAsLocalPrecondEditPart.VISUAL_ID);
+ droppableElementsVisualID.add(TimeConstraintAsLocalPostcondEditPart.VISUAL_ID);
+ droppableElementsVisualID.add(DurationConstraintAsLocalPrecondEditPart.VISUAL_ID);
+ droppableElementsVisualID.add(DurationConstraintAsLocalPostcondEditPart.VISUAL_ID);
+ droppableElementsVisualID.add(IntervalConstraintAsLocalPrecondEditPart.VISUAL_ID);
+ droppableElementsVisualID.add(IntervalConstraintAsLocalPostcondEditPart.VISUAL_ID);
+ droppableElementsVisualID.add(ConstraintAsLocalPrecondEditPart.VISUAL_ID);
+ droppableElementsVisualID.add(ConstraintAsLocalPostcondEditPart.VISUAL_ID);
+ droppableElementsVisualID.add(ObjectFlowEditPart.VISUAL_ID);
+ droppableElementsVisualID.add(ControlFlowEditPart.VISUAL_ID);
+ droppableElementsVisualID.add(ValueSpecificationActionEditPart.VISUAL_ID);
+ droppableElementsVisualID.add(ReadSelfActionEditPart.VISUAL_ID);
+ droppableElementsVisualID.add(ExpansionNodeAsInEditPart.VISUAL_ID);
+ droppableElementsVisualID.add(ExpansionNodeAsOutEditPart.VISUAL_ID);
+ return droppableElementsVisualID;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public IElementType getUMLElementType(int elementID) {
+ return UMLElementTypes.getElementType(elementID);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public int getNodeVisualID(View containerView, EObject domainElement) {
+ return UMLVisualIDRegistry.getNodeVisualID(containerView, domainElement);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public int getLinkWithClassVisualID(EObject domainElement) {
+ return UMLVisualIDRegistry.getLinkWithClassVisualID(domainElement);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ protected Command getSpecificDropCommand(DropObjectsRequest dropRequest, Element semanticElement, int nodeVISUALID, int linkVISUALID) {
+ switch(nodeVISUALID) {
+ case OpaqueActionEditPart.VISUAL_ID:
+ case CallBehaviorActionEditPart.VISUAL_ID:
+ case CallOperationActionEditPart.VISUAL_ID:
+ case ValueSpecificationActionEditPart.VISUAL_ID:
+ case ReadSelfActionEditPart.VISUAL_ID:
+ return dropAction(dropRequest, semanticElement, nodeVISUALID);
+ case ExpansionNodeAsInEditPart.VISUAL_ID:
+ case ExpansionNodeAsOutEditPart.VISUAL_ID:
+ return dropExpansionNode(dropRequest, semanticElement, nodeVISUALID);
+ case TimeConstraintAsLocalPrecondEditPart.VISUAL_ID:
+ case TimeConstraintAsLocalPostcondEditPart.VISUAL_ID:
+ case DurationConstraintAsLocalPrecondEditPart.VISUAL_ID:
+ case DurationConstraintAsLocalPostcondEditPart.VISUAL_ID:
+ case IntervalConstraintAsLocalPrecondEditPart.VISUAL_ID:
+ case IntervalConstraintAsLocalPostcondEditPart.VISUAL_ID:
+ case ConstraintAsLocalPrecondEditPart.VISUAL_ID:
+ case ConstraintAsLocalPostcondEditPart.VISUAL_ID:
+ return dropActionLocalCondition(dropRequest, semanticElement, nodeVISUALID);
+ }
+ switch(linkVISUALID) {
+ case ObjectFlowEditPart.VISUAL_ID:
+ case ControlFlowEditPart.VISUAL_ID:
+ return dropActivityEdge(dropRequest, semanticElement, linkVISUALID);
+ }
+ return super.getSpecificDropCommand(dropRequest, semanticElement, nodeVISUALID, linkVISUALID);
+ }
+
+ protected Command dropExpansionNode(DropObjectsRequest dropRequest,
+ Element semanticElement, int nodeVISUALID) {
+ // The element to drop is a node
+ /*
+ * Check if the element is contained in this new container.
+ * A special case as to be handle for structured element as contained node are not contained by the reference OwnedElement
+ */
+ // Retrieve it's expected graphical parent
+ EObject graphicalParent = ((GraphicalEditPart)getHost()).resolveSemanticElement();
+ if(graphicalParent instanceof StructuredActivityNode) {
+ if(!((StructuredActivityNode)graphicalParent).getNodes().contains(semanticElement)) {
+ return UnexecutableCommand.INSTANCE;
+ }
+ } else if(graphicalParent instanceof Element) {
+ if(!((Element)graphicalParent).getOwnedElements().contains(semanticElement)) {
+ return UnexecutableCommand.INSTANCE;
+ }
+ }
+ CompoundCommand globalCmd = new CompoundCommand();
+ if(globalCmd.isEmpty()) {
+ ICommand cmd = getDefaultDropNodeCommand(nodeVISUALID, dropRequest.getLocation(), semanticElement);
+ globalCmd.add(new ICommandProxy(cmd));
+ }
+ return globalCmd;
+ }
+
+ /**
+ * Specific drop action for an action (with its local conditions)
+ *
+ * @param dropRequest
+ * the drop request
+ * @param semanticElement
+ * the semantic link
+ * @param nodeVISUALID
+ * the node visual id
+ *
+ * @return the command for action
+ */
+ protected Command dropAction(final DropObjectsRequest dropRequest, final Element semanticElement, int nodeVISUALID) {
+ // The element to drop is a node
+ /*
+ * Check if the element is contained in this new container.
+ * A special case as to be handle for structured element as contained node are not contained by the reference OwnedElement
+ */
+ // Retrieve it's expected graphical parent
+ EObject graphicalParent = ((GraphicalEditPart)getHost()).resolveSemanticElement();
+ if(graphicalParent instanceof StructuredActivityNode) {
+ if(!((StructuredActivityNode)graphicalParent).getNodes().contains(semanticElement)) {
+ return UnexecutableCommand.INSTANCE;
+ }
+ } else if(graphicalParent instanceof Element) {
+ if(!((Element)graphicalParent).getOwnedElements().contains(semanticElement)) {
+ return UnexecutableCommand.INSTANCE;
+ }
+ }
+ CompoundCommand globalCmd = new CompoundCommand();
+ if(globalCmd.isEmpty()) {
+ ICommand cmd = getDefaultDropNodeCommand(nodeVISUALID, dropRequest.getLocation(), semanticElement);
+ globalCmd.add(new ICommandProxy(cmd));
+ }
+ // also drop local conditions
+ DropActionLocalConditionsAfterActionCommand cmd = new DropActionLocalConditionsAfterActionCommand(dropRequest, semanticElement);
+ globalCmd.add(cmd);
+ return globalCmd;
+ }
+
+ /**
+ * Specific drop action for an action's local condition
+ *
+ * @param dropRequest
+ * the drop request
+ * @param semanticElement
+ * the semantic link
+ * @param nodeVISUALID
+ * the node visual id
+ *
+ * @return the command for local condition
+ */
+ protected Command dropActionLocalCondition(DropObjectsRequest dropRequest, Element semanticElement, int nodeVISUALID) {
+ if(getHost() instanceof GraphicalEditPart) {
+ // Adapt the location
+ Point location = dropRequest.getLocation().getCopy();
+ ((GraphicalEditPart)getHost()).getContentPane().translateToRelative(location);
+ ((GraphicalEditPart)getHost()).getContentPane().translateFromParent(location);
+ location.translate(((GraphicalEditPart)getHost()).getContentPane().getClientArea().getLocation().getNegated());
+ location.y += 100;
+ // Retrieve expected graphical parent
+ EObject graphicalParent = ((GraphicalEditPart)getHost()).resolveSemanticElement();
+ // verification of container differs from usually, condition is
+ // graphically contained by the activity
+ if(graphicalParent instanceof Activity) {
+ // drop the constraint and its link to the action
+ Element linkSource = semanticElement.getOwner();
+ Element linkTarget = semanticElement;
+ // check for existing link part
+ for(Object targetView : DiagramEditPartsUtil.getEObjectViews(linkTarget)) {
+ if(targetView instanceof View) {
+ EditPart targetEditpart = DiagramEditPartsUtil.getEditPartFromView((View)targetView, getHost());
+ if(targetEditpart instanceof ActionLocalPreconditionEditPart || targetEditpart instanceof ActionLocalPostconditionEditPart) {
+ // condition link is already drawn.
+ return UnexecutableCommand.INSTANCE;
+ }
+ }
+ }
+ if(TimeConstraintAsLocalPrecondEditPart.VISUAL_ID == nodeVISUALID || DurationConstraintAsLocalPrecondEditPart.VISUAL_ID == nodeVISUALID || IntervalConstraintAsLocalPrecondEditPart.VISUAL_ID == nodeVISUALID || ConstraintAsLocalPrecondEditPart.VISUAL_ID == nodeVISUALID) {
+ return new ICommandProxy(dropBinaryLink(new CompositeCommand("drop Local Precondition link"), linkSource, linkTarget, ActionLocalPreconditionEditPart.VISUAL_ID, location, semanticElement));
+ } else if(TimeConstraintAsLocalPostcondEditPart.VISUAL_ID == nodeVISUALID || DurationConstraintAsLocalPostcondEditPart.VISUAL_ID == nodeVISUALID || IntervalConstraintAsLocalPostcondEditPart.VISUAL_ID == nodeVISUALID || ConstraintAsLocalPostcondEditPart.VISUAL_ID == nodeVISUALID) {
+ return new ICommandProxy(dropBinaryLink(new CompositeCommand("drop Local Postcondition link"), linkSource, linkTarget, ActionLocalPostconditionEditPart.VISUAL_ID, location, semanticElement));
+ }
+ }
+ }
+ return UnexecutableCommand.INSTANCE;
+ }
+
+ /**
+ * the method provides command to create the binary link into the diagram.
+ * If the source and the target views do not exist, these views will be
+ * created.
+ *
+ * @param cc
+ * the composite command that will contain the set of command to
+ * create the binary link
+ * @param source
+ * the source the element source of the link
+ * @param target
+ * the target the element target of the link
+ * @param linkVISUALID
+ * the link VISUALID used to create the view
+ * @param location
+ * the location the location where the view will be be created
+ * @param semanticLink
+ * the semantic link that will be attached to the view
+ *
+ * @return the composite command
+ */
+ public CompositeCommand dropObjectFlowSpecification(CompositeCommand cc, ObjectFlow source, Behavior target, int linkVISUALID, int specificationVISUALID, Point location, Element semanticLink) {
+ // look for editpart
+ ObjectFlowEditPart sourceEditPart = lookForEdgePart(source);
+ // look for editpart linked with the object flow
+ GraphicalEditPart targetEditPart = null;
+ if(sourceEditPart != null) {
+ // TODO check that there is not already a representation linked to
+ // the source object flow
+ }
+ // descriptor of the link
+ CreateConnectionViewRequest.ConnectionViewDescriptor linkdescriptor = new CreateConnectionViewRequest.ConnectionViewDescriptor(getUMLElementType(linkVISUALID), ((IHintedType)getUMLElementType(linkVISUALID)).getSemanticHint(), getDiagramPreferencesHint());
+ IAdaptable sourceAdapter = null;
+ IAdaptable targetAdapter = null;
+ if(sourceEditPart == null) {
+ // creation of the node
+ ViewDescriptor descriptor = new ViewDescriptor(new EObjectAdapter(source), Edge.class, null, ViewUtil.APPEND, true, ((IGraphicalEditPart)getHost()).getDiagramPreferencesHint());
+ // get the command and execute it.
+ CreateCommand nodeCreationCommand = new CreateCommand(((IGraphicalEditPart)getHost()).getEditingDomain(), descriptor, ((View)getHost().getModel()));
+ cc.compose(nodeCreationCommand);
+ SetBoundsCommand setBoundsCommand = new SetBoundsCommand(getEditingDomain(), "move", (IAdaptable)nodeCreationCommand.getCommandResult().getReturnValue(), new Point(location.x, location.y + 100));
+ cc.compose(setBoundsCommand);
+ sourceAdapter = (IAdaptable)nodeCreationCommand.getCommandResult().getReturnValue();
+ } else {
+ sourceAdapter = new SemanticAdapter(null, sourceEditPart.getModel());
+ }
+ if(targetEditPart == null) {
+ // creation of the node
+ String nodeSemanticHint = ((IHintedType)getUMLElementType(specificationVISUALID)).getSemanticHint();
+ ViewDescriptor descriptor = new ViewDescriptor(new EObjectAdapter(target), Node.class, nodeSemanticHint, ViewUtil.APPEND, true, ((IGraphicalEditPart)getHost()).getDiagramPreferencesHint());
+ // get the command and execute it.
+ CreateCommand nodeCreationCommand = new CreateCommand(((IGraphicalEditPart)getHost()).getEditingDomain(), descriptor, ((View)getHost().getModel()));
+ cc.compose(nodeCreationCommand);
+ SetBoundsCommand setBoundsCommand = new SetBoundsCommand(getEditingDomain(), "move", (IAdaptable)nodeCreationCommand.getCommandResult().getReturnValue(), new Point(location.x, location.y - 100));
+ cc.compose(setBoundsCommand);
+ targetAdapter = (IAdaptable)nodeCreationCommand.getCommandResult().getReturnValue();
+ } else {
+ targetAdapter = new SemanticAdapter(null, targetEditPart.getModel());
+ }
+ CommonDeferredCreateConnectionViewCommand aLinkCommand = new CommonDeferredCreateConnectionViewCommand(getEditingDomain(), ((IHintedType)getUMLElementType(linkVISUALID)).getSemanticHint(), sourceAdapter, targetAdapter, getViewer(), getDiagramPreferencesHint(), linkdescriptor, null);
+ aLinkCommand.setElement(semanticLink);
+ cc.compose(aLinkCommand);
+ return cc;
+ }
+
+ /**
+ * Look for editPart from its semantic.
+ *
+ * @param semantic
+ * the semantic
+ *
+ * @return the edits the part or null if not found
+ */
+ private ObjectFlowEditPart lookForEdgePart(EObject semantic) {
+ Collection<EditPart> editPartSet = getHost().getViewer().getEditPartRegistry().values();
+ Iterator<EditPart> editPartIterator = editPartSet.iterator();
+ ObjectFlowEditPart existedEditPart = null;
+ while(editPartIterator.hasNext() && existedEditPart == null) {
+ EditPart currentEditPart = editPartIterator.next();
+ if(currentEditPart instanceof ObjectFlowEditPart && semantic.equals(((ObjectFlowEditPart)currentEditPart).resolveSemanticElement())) {
+ existedEditPart = (ObjectFlowEditPart)currentEditPart;
+ }
+ }
+ return existedEditPart;
+ }
+
+ /**
+ * Specific drop action for an activity edge
+ *
+ * @param dropRequest
+ * the drop request
+ * @param semanticLink
+ * the semantic link
+ * @param linkVISUALID
+ * the link visual id
+ *
+ * @return the command for association
+ */
+ protected Command dropActivityEdge(DropObjectsRequest dropRequest, Element semanticLink, int linkVISUALID) {
+ Collection<?> sources = ActivityLinkMappingHelper.getInstance().getSource(semanticLink);
+ Collection<?> targets = ActivityLinkMappingHelper.getInstance().getTarget(semanticLink);
+ if(sources.size() == 1 && targets.size() == 1) {
+ ActivityNode source = (ActivityNode)sources.toArray()[0];
+ ActivityNode target = (ActivityNode)targets.toArray()[0];
+ CompositeCommand dropBinaryLink = dropBinaryLink(new CompositeCommand("drop Activity Edge"), source, target, linkVISUALID, dropRequest.getLocation(), semanticLink);
+ // If the activity edge is interruptible edge we forbib to drag it outside the interuptible edge
+ if(dropBinaryLink != null && semanticLink instanceof ActivityEdge && ((ActivityEdge)semanticLink).getInterrupts() != null) {
+ if(!((ActivityEdge)semanticLink).getInterrupts().equals(((IGraphicalEditPart)getHost()).resolveSemanticElement())) {
+ return UnexecutableCommand.INSTANCE;
+ } else {
+ return new ICommandProxy(getInterruptbleEdgeCommand(new CompositeCommand("drop Interruptible Activity Edge"), source, target, linkVISUALID, dropRequest.getLocation(), semanticLink));////$NON-NLS-0$
+ }
+ }
+ return new ICommandProxy(dropBinaryLink);
+ } else {
+ return UnexecutableCommand.INSTANCE;
+ }
+ }
+
+ /**
+ * Get the command to drag and drop an interruptible Edge
+ * Set the source inside the Interruptible Edge and set the target outside the interruptible edge
+ *
+ * @param dropBinaryLink
+ * {@link CompositeCommand} to compose the newly created command
+ * @param semanticLink
+ * @param point
+ * @param linkVISUALID
+ * @param target
+ * @param source
+ */
+ protected CompositeCommand getInterruptbleEdgeCommand(CompositeCommand cc, Element source, Element target, int linkVISUALID, Point location, Element semanticLink) {
+ // look for editpart
+ GraphicalEditPart sourceEditPart = (GraphicalEditPart)lookForEditPart(source);
+ GraphicalEditPart targetEditPart = (GraphicalEditPart)lookForEditPart(target);
+ // descriptor of the link
+ CreateConnectionViewRequest.ConnectionViewDescriptor linkdescriptor = new CreateConnectionViewRequest.ConnectionViewDescriptor(getUMLElementType(linkVISUALID), ((IHintedType)getUMLElementType(linkVISUALID)).getSemanticHint(), getDiagramPreferencesHint());
+ IAdaptable sourceAdapter = null;
+ IAdaptable targetAdapter = null;
+ if(sourceEditPart == null) {
+ // creation of the node
+ ViewDescriptor descriptor = new ViewDescriptor(new EObjectAdapter(source), Node.class, null, ViewUtil.APPEND, true, ((IGraphicalEditPart)getHost()).getDiagramPreferencesHint());
+ // get the command and execute it.
+ CreateCommand nodeCreationCommand = new CreateCommand(((IGraphicalEditPart)getHost()).getEditingDomain(), descriptor, ((View)getHost().getModel()));
+ cc.compose(nodeCreationCommand);
+ SetBoundsCommand setBoundsCommand = new SetBoundsCommand(getEditingDomain(), "move", (IAdaptable)nodeCreationCommand.getCommandResult().getReturnValue(), new Point(location.x, location.y)); //$NON-NLS-1$
+ cc.compose(setBoundsCommand);
+ sourceAdapter = (IAdaptable)nodeCreationCommand.getCommandResult().getReturnValue();
+ } else {
+ sourceAdapter = new SemanticAdapter(null, sourceEditPart.getModel());
+ }
+ if(targetEditPart == null) {
+ // creation of the node
+ ViewDescriptor descriptor = new ViewDescriptor(new EObjectAdapter(target), Node.class, null, ViewUtil.APPEND, true, ((IGraphicalEditPart)getHost()).getDiagramPreferencesHint());
+ // get the command and execute it.
+ CreateCommand nodeCreationCommand = new CreateCommand(((IGraphicalEditPart)getHost()).getEditingDomain(), descriptor, ((View)((View)((IGraphicalEditPart)getHost()).getTopGraphicEditPart().getModel()).eContainer()));
+ cc.compose(nodeCreationCommand);
+ IFigure interruptibleActivityRegionFigure = ((IGraphicalEditPart)getHost()).getFigure();
+ interruptibleActivityRegionFigure.getBounds();
+ Point targetPoint = location.getCopy();
+ targetPoint.setX(targetPoint.x() + 50);
+ interruptibleActivityRegionFigure.translateToAbsolute(targetPoint);
+ while(interruptibleActivityRegionFigure.containsPoint(targetPoint)) {
+ targetPoint.setX(targetPoint.x() + 50);
+ }
+ SetBoundsCommand setBoundsCommand = new SetBoundsCommand(getEditingDomain(), "move", (IAdaptable)nodeCreationCommand.getCommandResult().getReturnValue(), targetPoint); //$NON-NLS-1$
+ cc.compose(setBoundsCommand);
+ targetAdapter = (IAdaptable)nodeCreationCommand.getCommandResult().getReturnValue();
+ } else {
+ targetAdapter = new SemanticAdapter(null, targetEditPart.getModel());
+ }
+ CommonDeferredCreateConnectionViewCommand aLinkCommand = new CommonDeferredCreateConnectionViewCommand(getEditingDomain(), ((IHintedType)getUMLElementType(linkVISUALID)).getSemanticHint(), sourceAdapter, targetAdapter, getViewer(), getDiagramPreferencesHint(), linkdescriptor, null);
+ aLinkCommand.setElement(semanticLink);
+ cc.compose(aLinkCommand);
+ return cc;
+ }
+
+ /**
+ * Avoid selection of label edit parts
+ *
+ * @see org.eclipse.papyrus.uml.diagram.common.editpolicies.OldCommonDiagramDragDropEditPolicy#isEditPartTypeSuitableForEClass(java.lang.Class,
+ * org.eclipse.emf.ecore.EClass)
+ */
+ @Override
+ protected boolean isEditPartTypeSuitableForEClass(Class<? extends GraphicalEditPart> editPartClass, EClass eClass) {
+ // avoid selecting a label instead of the activity node
+ return !LabelEditPart.class.isAssignableFrom(editPartClass);
+ }
+
+ /**
+ * This action enables to drop an action's local conditions when an action
+ * is dropped. Check of the existing action view is run at execution time to
+ * avoid duplication of the action's view. This action is an intern class
+ * since it is narrowly linked with this edit policy properties and
+ * operations
+ */
+ private class DropActionLocalConditionsAfterActionCommand extends Command {
+
+ /** The drop request */
+ private DropObjectsRequest request;
+
+ /** The dropped action */
+ private Element droppedAction;
+
+ /** The command which have been executed (known at execution time) */
+ private List<Command> executedCommands = new LinkedList<Command>();
+
+ /**
+ * Constructor.
+ *
+ * @param dropRequest
+ * the initial request to drop elements
+ * @param action
+ * the dropped action (whose local conditions must follow)
+ */
+ public DropActionLocalConditionsAfterActionCommand(DropObjectsRequest dropRequest, Element action) {
+ super(LABEL);
+ request = dropRequest;
+ droppedAction = action;
+ }
+
+ /**
+ * This command can always execute, though it may have no effect
+ *
+ * @see org.eclipse.gef.commands.Command#canExecute()
+ * @return true
+ */
+ @Override
+ public boolean canExecute() {
+ return true;
+ }
+
+ /**
+ * Execute the command and drop each local condition view
+ *
+ * @see org.eclipse.gef.commands.Command#execute()
+ */
+ @Override
+ public void execute() {
+ // update request to unset the position, so that position is
+ // automatically recomputed each time (to avoid superposition).
+ Object hostView = getHost().getModel();
+ if(hostView instanceof View) {
+ if(droppedAction instanceof Action) {
+ Point initialLocation = request.getLocation().getCopy();
+ for(Constraint pre : ((Action)droppedAction).getLocalPreconditions()) {
+ int visual = UMLVisualIDRegistry.getNodeVisualID((View)hostView, pre);
+ Command localCmd = dropActionLocalCondition(request, pre, visual);
+ if(localCmd != null && localCmd.canExecute()) {
+ localCmd.execute();
+ executedCommands.add(localCmd);
+ // update the request's position to avoid conditions
+ // superposition
+ request.getLocation().translate(LOCAL_CONDITIONS_TRANSLATION_POINT);
+ }
+ }
+ for(Constraint post : ((Action)droppedAction).getLocalPostconditions()) {
+ int visual = UMLVisualIDRegistry.getNodeVisualID((View)hostView, post);
+ Command localCmd = dropActionLocalCondition(request, post, visual);
+ if(localCmd != null && localCmd.canExecute()) {
+ localCmd.execute();
+ executedCommands.add(localCmd);
+ // update the request's position to avoid conditions
+ // superposition
+ request.getLocation().translate(LOCAL_CONDITIONS_TRANSLATION_POINT);
+ }
+ }
+ // restore initial location
+ request.getLocation().setLocation(initialLocation);
+ }
+ }
+ }
+
+ /**
+ * Undo executed commands
+ *
+ * @see org.eclipse.gef.commands.Command#undo()
+ */
+ @Override
+ public void undo() {
+ // undo commands in the inverse order
+ for(int i = executedCommands.size() - 1; i >= 0; i--) {
+ Command cmd = executedCommands.get(i);
+ cmd.undo();
+ }
+ executedCommands.clear();
+ }
+ }
+
+ @Override
+ protected Command getDropCommand(ChangeBoundsRequest request) {
+ return super.getDropCommand(request);
+ }
+}
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/CustomExpansionRegionStructureCompartmentCreationEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/CustomExpansionRegionStructureCompartmentCreationEditPolicy.java
new file mode 100644
index 00000000000..bee10fda46c
--- /dev/null
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/CustomExpansionRegionStructureCompartmentCreationEditPolicy.java
@@ -0,0 +1,38 @@
+/**
+ *
+ */
+package org.eclipse.papyrus.uml.diagram.activity.edit.policies;
+
+import org.eclipse.gef.EditPart;
+import org.eclipse.gef.Request;
+import org.eclipse.gmf.runtime.diagram.ui.requests.CreateViewRequest;
+import org.eclipse.papyrus.uml.diagram.common.editpolicies.PapyrusCreationEditPolicy;
+
+/**
+ *
+ */
+public class CustomExpansionRegionStructureCompartmentCreationEditPolicy extends PapyrusCreationEditPolicy {
+
+ @Override
+ public boolean understandsRequest(Request request) {
+ if(request instanceof CreateViewRequest) {
+ String hint = ((CreateViewRequest)request).getViewDescriptors().get(0).getSemanticHint();
+ if("3074".equals(hint) || "3075".equals(hint)) {
+ return true;
+ }
+ }
+ return super.understandsRequest(request);
+ }
+
+ @Override
+ public EditPart getTargetEditPart(Request request) {
+ if(request instanceof CreateViewRequest) {
+ String hint = ((CreateViewRequest)request).getViewDescriptors().get(0).getSemanticHint();
+ if("3074".equals(hint) || "3075".equals(hint)) {
+ return getHost().getParent();
+ }
+ }
+ return super.getTargetEditPart(request);
+ }
+
+} \ No newline at end of file
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/CustomExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/CustomExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
index ca195e0dc1d..625246b0893 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/CustomExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/custom-src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/CustomExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
@@ -1,16 +1,33 @@
-package org.eclipse.papyrus.uml.diagram.activity.edit.policies;
-
-import org.eclipse.gef.commands.Command;
-import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest;
-
-public class CustomExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy extends ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy {
-
- @Override
- protected Command getCreateCommand(CreateElementRequest req) {
- // handled by CreateActionLocalConditionEditPolicy, return null
- if(CreateActionLocalConditionEditPolicy.LOCAL_CONDITION_TYPES.contains(req.getElementType())) {
- return null;
- }
- return super.getCreateCommand(req);
- }
-}
+package org.eclipse.papyrus.uml.diagram.activity.edit.policies;
+
+import org.eclipse.gef.EditPart;
+import org.eclipse.gef.Request;
+import org.eclipse.gef.commands.Command;
+import org.eclipse.gmf.runtime.diagram.ui.requests.CreateViewRequest;
+import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest;
+
+public class CustomExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy extends ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy {
+
+ @Override
+ public EditPart getTargetEditPart(Request request) {
+ if(request instanceof CreateViewRequest) {
+ // for create request of expansion nodes (input & output elements, delegates to parent)
+ CreateViewRequest createViewRequest = (CreateViewRequest)request;
+ String semanticHint = createViewRequest.getViewDescriptors().get(0).getSemanticHint();
+ if("3074".equals(semanticHint) || "3075".equals(semanticHint)) {
+ return getHost().getParent();
+ }
+ }
+ return super.getTargetEditPart(request);
+ }
+
+ @Override
+ protected Command getCreateCommand(CreateElementRequest req) {
+ // handled by CreateActionLocalConditionEditPolicy, return null
+ if(CreateActionLocalConditionEditPolicy.LOCAL_CONDITION_TYPES.contains(req.getElementType())) {
+ return null;
+ }
+
+ return super.getCreateCommand(req);
+ }
+}
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/plugin.xml b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/plugin.xml
index 184e676f03f..d3aad06cb02 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/plugin.xml
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/plugin.xml
@@ -1,7 +1,7 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+<plugin>
+
<extension point="org.eclipse.ui.contexts" id="ui-context">
<?gmfgen generated="true"?>
<context
@@ -11,144 +11,144 @@
parentId="org.eclipse.gmf.runtime.diagram.ui.diagramContext">
</context>
</extension>
-
- <extension point="org.eclipse.gmf.runtime.common.ui.services.action.contributionItemProviders">
- <contributionItemProvider checkPluginLoaded="false" class="org.eclipse.papyrus.uml.diagram.activity.providers.ActivityDiagramContributionItemProvider">
- <Priority name="Low"/>
- <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
- <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart" policyClass="org.eclipse.papyrus.uml.diagram.activity.providers.ActivityDiagramContributionPolicyClass"/>
- <popupAction id="papyrus.restoreRelatedLinksAction" path="/navigateMenu/additions"/>
- </popupContribution>
- </contributionItemProvider>
- </extension>
-
- <extension
- point="org.eclipse.ui.commands">
- <command
- description="Create a new Activity Diagram"
- categoryId="org.eclipse.papyrus.editor.category"
- id="org.eclipse.papyrus.uml.diagram.activity.CreateActivityDiagramCommand"
- name="Create a new Activity Diagram">
- </command>
- </extension>
-
- <extension
- point="org.eclipse.ui.handlers">
- <handler
- class="org.eclipse.papyrus.uml.diagram.activity.CreateActivityDiagramWithNavigationHandler"
- commandId="org.eclipse.papyrus.uml.diagram.activity.CreateActivityDiagramCommand">
- <activeWhen>
- <with variable="activeEditorId">
- <equals value="org.eclipse.papyrus.infra.core.papyrusEditor"/>
- </with>
- </activeWhen>
- </handler>
- </extension>
-
-<extension
- point="org.eclipse.ui.menus">
-
- <menuContribution locationURI="toolbar:org.eclipse.ui.main.toolbar">
- <toolbar id="org.eclipse.papyrus.uml.diagram.ui.toolbar">
- <command commandId="org.eclipse.papyrus.uml.diagram.activity.CreateActivityDiagramCommand"
- icon="icons/obj16/Diagram_Activity.gif"
- label="Create a new Activity Diagram"
- style="push"
- tooltip="Create a new Activity Diagram">
- <visibleWhen>
- <reference definitionId="org.eclipse.papyrus.uml.diagram.common.IsPapyrusActiveWithUMLModel"/>
- </visibleWhen>
- </command>
- </toolbar>
- </menuContribution>
-
- <menuContribution locationURI="menu:org.eclipse.papyrus.ui.menu">
- <menu id="org.eclipse.papyrus.uml.diagram.ui.menu.diagrams"
- label="Diagrams">
- <command commandId="org.eclipse.papyrus.uml.diagram.activity.CreateActivityDiagramCommand"
- icon="icons/obj16/Diagram_Activity.gif"
- label="Create a new Activity Diagram"
- style="push"
- tooltip="Create a new Activity Diagram">
- <visibleWhen>
- <reference definitionId="org.eclipse.papyrus.uml.diagram.common.IsPapyrusActiveWithUMLModel"/>
- </visibleWhen>
- </command>
- </menu>
- </menuContribution>
-
- <menuContribution locationURI="popup:org.eclipse.papyrus.views.modelexplorer.popupmenu.creatediagram">
- <command commandId="org.eclipse.papyrus.uml.diagram.activity.CreateActivityDiagramCommand"
- icon="icons/obj16/Diagram_Activity.gif"
- label="Create a new Activity Diagram"
- style="push"
- tooltip="Create a new Activity Diagram">
- <visibleWhen>
- <reference definitionId="org.eclipse.papyrus.uml.diagram.common.IsPapyrusActiveWithUMLModel"/>
- </visibleWhen>
- </command>
- </menuContribution>
-
-</extension>
-
-
- <extension
- point="org.eclipse.papyrus.infra.core.papyrusDiagram">
- <editorDiagram
- contextId="com.cea.papyrus.gmf.editor.context"
- factoryClass="org.eclipse.papyrus.uml.diagram.activity.ActivityDiagramEditorFactory"
- icon="icons/obj16/Diagram_Activity.gif">
- </editorDiagram>
- <creationCommand
- creationCommandClass="org.eclipse.papyrus.uml.diagram.activity.CreateActivityDiagramCommand"
- creationCondition="org.eclipse.papyrus.uml.diagram.activity.ActivityDiagramCreationCondition"
- icon="icons/obj16/Diagram_Activity.gif"
- language="uml"
- id="org.eclipse.papyrus.uml.diagram.activity.CreateActivityDiagramCommand"
- label="UML Activity Diagram">
- </creationCommand>
- </extension>
-
-
- <extension point="org.eclipse.gmf.runtime.emf.ui.modelingAssistantProviders">
- <modelingAssistantProvider
- class="org.eclipse.papyrus.uml.diagram.activity.providers.UMLModelingAssistantProvider">
- <Priority
- name="Lowest">
- </Priority>
- </modelingAssistantProvider>
- </extension>
-
- <?gmfgen generated="true"?>
-
- <?gmfgen generated="true"?>
-
- <extension point="org.eclipse.ui.preferencePages" id="prefpages">
- <?gmfgen generated="true"?>
- <page
- id="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- name="PapyrusUMLActivityDiagram Diagram"
- category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.DiagramGeneralPreferencePage">
- </page>
+
+ <extension point="org.eclipse.gmf.runtime.common.ui.services.action.contributionItemProviders">
+ <contributionItemProvider checkPluginLoaded="false" class="org.eclipse.papyrus.uml.diagram.activity.providers.ActivityDiagramContributionItemProvider">
+ <Priority name="Low"/>
+ <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
+ <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart" policyClass="org.eclipse.papyrus.uml.diagram.activity.providers.ActivityDiagramContributionPolicyClass"/>
+ <popupAction id="papyrus.restoreRelatedLinksAction" path="/navigateMenu/additions"/>
+ </popupContribution>
+ </contributionItemProvider>
+ </extension>
+
+ <extension
+ point="org.eclipse.ui.commands">
+ <command
+ description="Create a new Activity Diagram"
+ categoryId="org.eclipse.papyrus.editor.category"
+ id="org.eclipse.papyrus.uml.diagram.activity.CreateActivityDiagramCommand"
+ name="Create a new Activity Diagram">
+ </command>
+ </extension>
+
+ <extension
+ point="org.eclipse.ui.handlers">
+ <handler
+ class="org.eclipse.papyrus.uml.diagram.activity.CreateActivityDiagramWithNavigationHandler"
+ commandId="org.eclipse.papyrus.uml.diagram.activity.CreateActivityDiagramCommand">
+ <activeWhen>
+ <with variable="activeEditorId">
+ <equals value="org.eclipse.papyrus.infra.core.papyrusEditor"/>
+ </with>
+ </activeWhen>
+ </handler>
+ </extension>
+
+<extension
+ point="org.eclipse.ui.menus">
+
+ <menuContribution locationURI="toolbar:org.eclipse.ui.main.toolbar">
+ <toolbar id="org.eclipse.papyrus.uml.diagram.ui.toolbar">
+ <command commandId="org.eclipse.papyrus.uml.diagram.activity.CreateActivityDiagramCommand"
+ icon="icons/obj16/Diagram_Activity.gif"
+ label="Create a new Activity Diagram"
+ style="push"
+ tooltip="Create a new Activity Diagram">
+ <visibleWhen>
+ <reference definitionId="org.eclipse.papyrus.uml.diagram.common.IsPapyrusActiveWithUMLModel"/>
+ </visibleWhen>
+ </command>
+ </toolbar>
+ </menuContribution>
+
+ <menuContribution locationURI="menu:org.eclipse.papyrus.ui.menu">
+ <menu id="org.eclipse.papyrus.uml.diagram.ui.menu.diagrams"
+ label="Diagrams">
+ <command commandId="org.eclipse.papyrus.uml.diagram.activity.CreateActivityDiagramCommand"
+ icon="icons/obj16/Diagram_Activity.gif"
+ label="Create a new Activity Diagram"
+ style="push"
+ tooltip="Create a new Activity Diagram">
+ <visibleWhen>
+ <reference definitionId="org.eclipse.papyrus.uml.diagram.common.IsPapyrusActiveWithUMLModel"/>
+ </visibleWhen>
+ </command>
+ </menu>
+ </menuContribution>
+
+ <menuContribution locationURI="popup:org.eclipse.papyrus.views.modelexplorer.popupmenu.creatediagram">
+ <command commandId="org.eclipse.papyrus.uml.diagram.activity.CreateActivityDiagramCommand"
+ icon="icons/obj16/Diagram_Activity.gif"
+ label="Create a new Activity Diagram"
+ style="push"
+ tooltip="Create a new Activity Diagram">
+ <visibleWhen>
+ <reference definitionId="org.eclipse.papyrus.uml.diagram.common.IsPapyrusActiveWithUMLModel"/>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+
+</extension>
+
+
+ <extension
+ point="org.eclipse.papyrus.infra.core.papyrusDiagram">
+ <editorDiagram
+ contextId="com.cea.papyrus.gmf.editor.context"
+ factoryClass="org.eclipse.papyrus.uml.diagram.activity.ActivityDiagramEditorFactory"
+ icon="icons/obj16/Diagram_Activity.gif">
+ </editorDiagram>
+ <creationCommand
+ creationCommandClass="org.eclipse.papyrus.uml.diagram.activity.CreateActivityDiagramCommand"
+ creationCondition="org.eclipse.papyrus.uml.diagram.activity.ActivityDiagramCreationCondition"
+ icon="icons/obj16/Diagram_Activity.gif"
+ language="uml"
+ id="org.eclipse.papyrus.uml.diagram.activity.CreateActivityDiagramCommand"
+ label="UML Activity Diagram">
+ </creationCommand>
+ </extension>
+
+
+ <extension point="org.eclipse.gmf.runtime.emf.ui.modelingAssistantProviders">
+ <modelingAssistantProvider
+ class="org.eclipse.papyrus.uml.diagram.activity.providers.UMLModelingAssistantProvider">
+ <Priority
+ name="Lowest">
+ </Priority>
+ </modelingAssistantProvider>
+ </extension>
+
+ <?gmfgen generated="true"?>
+
+ <?gmfgen generated="true"?>
+
+ <extension point="org.eclipse.ui.preferencePages" id="prefpages">
+ <?gmfgen generated="true"?>
+ <page
+ id="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ name="PapyrusUMLActivityDiagram Diagram"
+ category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.DiagramGeneralPreferencePage">
+ </page>
- <page
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.DiagramPrintingPreferencePage"
- name="%prefpage.org.eclipse.uml2.uml.diagram.printing"
- category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.DiagramPrintingPreferencePage">
- </page>
+ <page
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.DiagramPrintingPreferencePage"
+ name="%prefpage.org.eclipse.uml2.uml.diagram.printing"
+ category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.DiagramPrintingPreferencePage">
+ </page>
- <page
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.DiagramRulersAndGridPreferencePage"
- name="%prefpage.org.eclipse.uml2.uml.diagram.rulersAndGrid"
- category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.DiagramRulersAndGridPreferencePage">
- </page>
+ <page
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.DiagramRulersAndGridPreferencePage"
+ name="%prefpage.org.eclipse.uml2.uml.diagram.rulersAndGrid"
+ category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.DiagramRulersAndGridPreferencePage">
+ </page>
- </extension>
+ </extension>
<extension point="org.eclipse.ui.views.properties.tabbed.propertyContributor" id="prop-contrib">
<?gmfgen generated="true"?>
@@ -212,18 +212,18 @@
</propertySection>
</propertySections>
</extension>
-
-
-<?gmfgen generated="true"?>
-
- <extension point="org.eclipse.core.runtime.preferences">
- <?gmfgen generated="true"?>
- <initializer class="org.eclipse.papyrus.uml.diagram.activity.preferences.DiagramPreferenceInitializer"/>
- </extension>
- <extension point="org.eclipse.core.runtime.preferences">
- <?gmfgen generated="false"?>
- <initializer class="org.eclipse.papyrus.uml.diagram.activity.preferences.DiagramSpecificPreferenceInitializer"/>
- </extension>
+
+
+<?gmfgen generated="true"?>
+
+ <extension point="org.eclipse.core.runtime.preferences">
+ <?gmfgen generated="true"?>
+ <initializer class="org.eclipse.papyrus.uml.diagram.activity.preferences.DiagramPreferenceInitializer"/>
+ </extension>
+ <extension point="org.eclipse.core.runtime.preferences">
+ <?gmfgen generated="false"?>
+ <initializer class="org.eclipse.papyrus.uml.diagram.activity.preferences.DiagramSpecificPreferenceInitializer"/>
+ </extension>
<extension point="org.eclipse.gmf.runtime.diagram.core.viewProviders" id="view-provider">
<?gmfgen generated="true"?>
<viewProvider class="org.eclipse.papyrus.uml.diagram.activity.providers.UMLViewProvider">
@@ -1571,19 +1571,19 @@
<extension point="org.eclipse.ui.handlers" id="menu-handlers">
<?gmfgen generated="true"?>
</extension>
-<extension point="org.eclipse.gmf.runtime.common.ui.services.markerNavigationProviders" id="markers-navigation">
- <?gmfgen generated="true"?>
- <MarkerNavigationProvider class="org.eclipse.papyrus.uml.diagram.activity.providers.UMLMarkerNavigationProvider">
- <MarkerType name="org.eclipse.papyrus.uml.diagram.activity.diagnostic"/>
- <Priority name="Lowest"/>
- </MarkerNavigationProvider>
- </extension>
-
-<extension id="diagnostic" name="Papyrus activity editor Plugin problems" point="org.eclipse.core.resources.markers">
- <?gmfgen generated="true"?>
- <super type="org.eclipse.core.resources.problemmarker"/>
- <super type="org.eclipse.gmf.runtime.common.ui.services.marker"/>
- <persistent value="true"/>
+<extension point="org.eclipse.gmf.runtime.common.ui.services.markerNavigationProviders" id="markers-navigation">
+ <?gmfgen generated="true"?>
+ <MarkerNavigationProvider class="org.eclipse.papyrus.uml.diagram.activity.providers.UMLMarkerNavigationProvider">
+ <MarkerType name="org.eclipse.papyrus.uml.diagram.activity.diagnostic"/>
+ <Priority name="Lowest"/>
+ </MarkerNavigationProvider>
+ </extension>
+
+<extension id="diagnostic" name="Papyrus activity editor Plugin problems" point="org.eclipse.core.resources.markers">
+ <?gmfgen generated="true"?>
+ <super type="org.eclipse.core.resources.problemmarker"/>
+ <super type="org.eclipse.gmf.runtime.common.ui.services.marker"/>
+ <persistent value="true"/>
</extension><extension point="org.eclipse.emf.validation.constraintProviders">
<?gmfgen generated="true"?>
<category id="org.eclipse.uml2.uml.util.UMLValidator.validate" mandatory="false" name="validateUMLModel">
@@ -1760,8 +1760,8 @@
name="validateNotUnique"
mode="Live"
severity="ERROR" statusCode="200">
- <![CDATA[-- must be applied on corresponding parameter, if only it exists
-true
+ <![CDATA[-- must be applied on corresponding parameter, if only it exists
+true
--not self.isUnique]]>
<description><![CDATA[Object nodes are not unique typed elements]]></description>
<message><![CDATA[isUnique must be false for object nodes.]]></message>
@@ -1772,9 +1772,9 @@ true
name="validateSelectionBehavior"
mode="Batch"
severity="ERROR" statusCode="200">
- <![CDATA[-- must be applied on corresponding parameter, if only it exists
-true
---((not self.selection.oclIsUndefined()) implies self.isOrdered) and
+ <![CDATA[-- must be applied on corresponding parameter, if only it exists
+true
+--((not self.selection.oclIsUndefined()) implies self.isOrdered) and
--(self.isOrdered implies (not self.selection.oclIsUndefined()))]]>
<description><![CDATA[If an object node has a selection behavior, then the ordering of the object node is ordered, and vice versa.]]></description>
<message><![CDATA[isOrdered means there is a selection behavior for object nodes.]]></message>
@@ -1785,7 +1785,7 @@ true
name="validateObjectFlowEdges"
mode="Batch"
severity="ERROR" statusCode="200">
- <![CDATA[true
+ <![CDATA[true
-- Already checked by validateControlFlow_validateObjectNodes]]>
<description><![CDATA[All edges coming into or going out of object nodes must be object flow edges.]]></description>
<message><![CDATA[All edges coming into or going out of object nodes must be object flow edges.]]></message>
@@ -1834,7 +1834,7 @@ true
name="validateOneOutputPin"
mode="Live"
severity="ERROR" statusCode="200">
- <![CDATA[(not self.fromAction.oclIsUndefined()) implies
+ <![CDATA[(not self.fromAction.oclIsUndefined()) implies
self.fromAction.output->size() = 1]]>
<description><![CDATA[The fromAction of an action input pin must have exactly one output pin.]]></description>
<message><![CDATA[The fromAction of an action input pin must have exactly one output pin.]]></message>
@@ -1845,7 +1845,7 @@ self.fromAction.output->size() = 1]]>
name="validateInputPin"
mode="Live"
severity="ERROR" statusCode="200">
- <![CDATA[(not self.fromAction.oclIsUndefined()) implies
+ <![CDATA[(not self.fromAction.oclIsUndefined()) implies
self.fromAction.input->forAll(oclIsKindOf(ActionInputPin))]]>
<description><![CDATA[The fromAction of an action input pin must only have action input pins as input pins.]]></description>
<message><![CDATA[The fromAction of an action input pin must only have action input pins as input pins.]]></message>
@@ -1856,9 +1856,9 @@ self.fromAction.input->forAll(oclIsKindOf(ActionInputPin))]]>
name="validateNoControlOrDataFlow"
mode="Live"
severity="ERROR" statusCode="200">
- <![CDATA[(not self.fromAction.oclIsUndefined()) implies
-(self.fromAction.incoming->isEmpty() and self.fromAction.outgoing->isEmpty()
-and self.fromAction.input->forAll(incoming->isEmpty() and outgoing->isEmpty())
+ <![CDATA[(not self.fromAction.oclIsUndefined()) implies
+(self.fromAction.incoming->isEmpty() and self.fromAction.outgoing->isEmpty()
+and self.fromAction.input->forAll(incoming->isEmpty() and outgoing->isEmpty())
and self.fromAction.output->forAll(incoming->isEmpty() and outgoing->isEmpty()))]]>
<description><![CDATA[The fromAction of an action input pin cannot have control or data flows coming into or out of it or its pins.]]></description>
<message><![CDATA[The fromAction of an action input pin cannot have control or data flows coming into or out of it or its pins.]]></message>
@@ -1915,7 +1915,7 @@ and self.fromAction.output->forAll(incoming->isEmpty() and outgoing->isEmpty()))
name="validateOwned"
mode="Live"
severity="ERROR" statusCode="200">
- <![CDATA[self.owner.oclIsKindOf(Activity)
+ <![CDATA[self.owner.oclIsKindOf(Activity)
or self.owner.oclIsKindOf(ActivityGroup)]]>
<description><![CDATA[Activity edges may be owned only by activities or groups.]]></description>
<message><![CDATA[Activity edges may be owned only by activities or groups.]]></message>
@@ -1926,7 +1926,7 @@ or self.owner.oclIsKindOf(ActivityGroup)]]>
name="validateStructuredNode"
mode="Live"
severity="ERROR" statusCode="200">
- <![CDATA[true
+ <![CDATA[true
-- constraint is checked by the model structure]]>
<description><![CDATA[Activity edges may be owned by at most one structured node.]]></description>
<message><![CDATA[Activity edges may be owned by at most one structured node.]]></message>
@@ -1937,8 +1937,8 @@ or self.owner.oclIsKindOf(ActivityGroup)]]>
name="validateHasSourceAndTarget"
mode="Batch"
severity="ERROR" statusCode="200">
- <![CDATA[-- This constraint is implemented separately for not being in live mode.
--- Other constraints have been relaxed to supprot null source and target
+ <![CDATA[-- This constraint is implemented separately for not being in live mode.
+-- Other constraints have been relaxed to supprot null source and target
not self.source.oclIsUndefined() and not self.target.oclIsUndefined()]]>
<description><![CDATA[The source and target of an edge must be defined.]]></description>
<message><![CDATA[The source and target of an edge must be defined.]]></message>
@@ -1961,7 +1961,7 @@ not self.source.oclIsUndefined() and not self.target.oclIsUndefined()]]>
name="validateNoActions"
mode="Live"
severity="ERROR" statusCode="200">
- <![CDATA[(self.source.oclIsUndefined() or not self.source.oclIsKindOf(Action))
+ <![CDATA[(self.source.oclIsUndefined() or not self.source.oclIsKindOf(Action))
and (self.target.oclIsUndefined() or not self.target.oclIsKindOf(Action))]]>
<description><![CDATA[Object flows may not have actions at either end.]]></description>
<message><![CDATA[You can not link an action with an object flow]]></message>
@@ -2044,13 +2044,13 @@ and (self.target.oclIsUndefined() or not self.target.oclIsKindOf(Action))]]>
name="validateObjectNodes"
mode="Live"
severity="ERROR" statusCode="200">
- <![CDATA[(self.source.oclIsUndefined() or
- (self.source.oclIsKindOf(ObjectNode) implies
- self.source.oclAsType(ObjectNode).isControlType)
-) and
-(self.target.oclIsUndefined() or
- (self.target.oclIsKindOf(ObjectNode) implies
- self.target.oclAsType(ObjectNode).isControlType)
+ <![CDATA[(self.source.oclIsUndefined() or
+ (self.source.oclIsKindOf(ObjectNode) implies
+ self.source.oclAsType(ObjectNode).isControlType)
+) and
+(self.target.oclIsUndefined() or
+ (self.target.oclIsKindOf(ObjectNode) implies
+ self.target.oclAsType(ObjectNode).isControlType)
)]]>
<description><![CDATA[Control flows may not have object nodes at either end, except for object nodes with control type]]></description>
<message><![CDATA[You can not link an object node with a control flow (except if its control type is true).]]></message>
@@ -2063,8 +2063,8 @@ and (self.target.oclIsUndefined() or not self.target.oclIsKindOf(Action))]]>
name="validateIncomingOutgoingEdges"
mode="Batch"
severity="ERROR" statusCode="200">
- <![CDATA[self.outgoing->size() > 0 and
-self.incoming->size() > 0 and
+ <![CDATA[self.outgoing->size() > 0 and
+self.incoming->size() > 0 and
self.incoming->size() <= 2]]>
<description><![CDATA[A decision node has one or two incoming edges and at least one outgoing edge.]]></description>
<message><![CDATA[A decision node has one or two incoming edges and at least one outgoing edge.]]></message>
@@ -2075,9 +2075,9 @@ self.incoming->size() <= 2]]>
name="validateEdges"
mode="Batch"
severity="ERROR" statusCode="200">
- <![CDATA[(self.incoming->reject(i | i = self.decisionInputFlow)->forAll(oclIsKindOf(ObjectFlow)) and
- self.outgoing->forAll(oclIsKindOf(ObjectFlow)) ) or
-(self.incoming->reject(i | i = self.decisionInputFlow)->forAll(oclIsKindOf(ControlFlow)) and
+ <![CDATA[(self.incoming->reject(i | i = self.decisionInputFlow)->forAll(oclIsKindOf(ObjectFlow)) and
+ self.outgoing->forAll(oclIsKindOf(ObjectFlow)) ) or
+(self.incoming->reject(i | i = self.decisionInputFlow)->forAll(oclIsKindOf(ControlFlow)) and
self.outgoing->forAll(oclIsKindOf(ControlFlow)) )]]>
<description><![CDATA[The edges coming into and out of a decision node, other than the decision input flow (if any), must be either all object flows or all control flows.]]></description>
<message><![CDATA[Edges linking the decision node must have be of the same type (except decision input flow).]]></message>
@@ -2088,7 +2088,7 @@ self.incoming->size() <= 2]]>
name="validateDecisionInputFlowIncoming"
mode="Live"
severity="ERROR" statusCode="200">
- <![CDATA[(not self.decisionInputFlow.oclIsUndefined()) implies
+ <![CDATA[(not self.decisionInputFlow.oclIsUndefined()) implies
self.incoming->includes(self.decisionInputFlow)]]>
<description><![CDATA[The decisionInputFlow of a decision node must be an incoming edge of the decision node.]]></description>
<message><![CDATA[The decisionInputFlow of a decision node must be an incoming edge of the decision node.]]></message>
@@ -2099,12 +2099,12 @@ self.incoming->includes(self.decisionInputFlow)]]>
name="validateParameters"
mode="Live"
severity="ERROR" statusCode="200">
- <![CDATA[(not self.decisionInput.oclIsUndefined()) implies (
-self.decisionInput.ownedParameter->select(
- direction = ParameterDirectionKind::out or
- direction = ParameterDirectionKind::inout)->size() = 0
-and self.decisionInput.ownedParameter->select(
- direction = ParameterDirectionKind::return)->size() = 1
+ <![CDATA[(not self.decisionInput.oclIsUndefined()) implies (
+self.decisionInput.ownedParameter->select(
+ direction = ParameterDirectionKind::out or
+ direction = ParameterDirectionKind::inout)->size() = 0
+and self.decisionInput.ownedParameter->select(
+ direction = ParameterDirectionKind::return)->size() = 1
)]]>
<description><![CDATA[A decision input behavior has no output parameters, no in-out parameters and one return parameter.]]></description>
<message><![CDATA[A decision input behavior has no output parameters, no in-out parameters and one return parameter.]]></message>
@@ -2115,12 +2115,12 @@ and self.decisionInput.ownedParameter->select(
name="validateZeroInputParameters"
mode="Batch"
severity="ERROR" statusCode="200">
- <![CDATA[(not self.decisionInput.oclIsUndefined()) implies (
- (self.decisionInputFlow.oclIsUndefined() and
- self.incoming->select(i | i.oclIsKindOf(ControlFlow))->size() = 1
- ) implies
- self.decisionInput.ownedParameter->select(
- direction = ParameterDirectionKind::_in)->size() = 0
+ <![CDATA[(not self.decisionInput.oclIsUndefined()) implies (
+ (self.decisionInputFlow.oclIsUndefined() and
+ self.incoming->select(i | i.oclIsKindOf(ControlFlow))->size() = 1
+ ) implies
+ self.decisionInput.ownedParameter->select(
+ direction = ParameterDirectionKind::_in)->size() = 0
)]]>
<description><![CDATA[If the decision node has no decision input flow and an incoming control flow, then a decision input behavior has zero input parameters.]]></description>
<message><![CDATA[If the decision node has no decision input flow and an incoming control flow, then a decision input behavior has zero input parameters.]]></message>
@@ -2173,9 +2173,9 @@ and self.decisionInput.ownedParameter->select(
name="validateEdges"
mode="Batch"
severity="ERROR" statusCode="200">
- <![CDATA[(self.outgoing->exists(e | e.oclIsKindOf(ObjectFlow)) implies
- self.incoming->forAll(e | e.oclIsKindOf(ObjectFlow))) and
-(self.outgoing->exists(e | e.oclIsKindOf(ControlFlow)) implies
+ <![CDATA[(self.outgoing->exists(e | e.oclIsKindOf(ObjectFlow)) implies
+ self.incoming->forAll(e | e.oclIsKindOf(ObjectFlow))) and
+(self.outgoing->exists(e | e.oclIsKindOf(ControlFlow)) implies
self.incoming->forAll(e | e.oclIsKindOf(ControlFlow)))]]>
<description><![CDATA[The edges coming into and out of a merge node must be either all object flows or all control flows.]]></description>
<message><![CDATA[The edges coming into and out of a merge node must be either all object flows or all control flows.]]></message>
@@ -2198,9 +2198,9 @@ and self.decisionInput.ownedParameter->select(
name="validateEdges"
mode="Batch"
severity="ERROR" statusCode="200">
- <![CDATA[(self.incoming->exists(e | e.oclIsKindOf(ObjectFlow)) implies
- self.outgoing->forAll(e | e.oclIsKindOf(ObjectFlow))) and
-(self.incoming->exists(e | e.oclIsKindOf(ControlFlow)) implies
+ <![CDATA[(self.incoming->exists(e | e.oclIsKindOf(ObjectFlow)) implies
+ self.outgoing->forAll(e | e.oclIsKindOf(ObjectFlow))) and
+(self.incoming->exists(e | e.oclIsKindOf(ControlFlow)) implies
self.outgoing->forAll(e | e.oclIsKindOf(ControlFlow)))]]>
<description><![CDATA[The edges coming into and out of a fork node must be either all object flows or all control flows.]]></description>
<message><![CDATA[The edges coming into and out of a fork node must be either all object flows or all control flows.]]></message>
@@ -2223,9 +2223,9 @@ and self.decisionInput.ownedParameter->select(
name="validateIncomingObjectFlow"
mode="Batch"
severity="ERROR" statusCode="200">
- <![CDATA[(self.incoming->select(e | e.oclIsKindOf(ObjectFlow))->notEmpty() implies
- self.outgoing->exists(e | e.oclIsKindOf(ObjectFlow))) and
-(self.incoming->select(e | e.oclIsKindOf(ObjectFlow))->isEmpty() implies
+ <![CDATA[(self.incoming->select(e | e.oclIsKindOf(ObjectFlow))->notEmpty() implies
+ self.outgoing->exists(e | e.oclIsKindOf(ObjectFlow))) and
+(self.incoming->select(e | e.oclIsKindOf(ObjectFlow))->isEmpty() implies
self.outgoing->exists(e | e.oclIsKindOf(ControlFlow)))]]>
<description><![CDATA[If a join node has an incoming object flow, it must have an outgoing object flow, otherwise, it must have an outgoing control flow.]]></description>
<message><![CDATA[If a join node has an incoming object flow, it must have an outgoing object flow, otherwise, it must have an outgoing control flow.]]></message>
@@ -2238,7 +2238,7 @@ and self.decisionInput.ownedParameter->select(
name="validateIncomingOrOutgoing"
mode="Live"
severity="ERROR" statusCode="200">
- <![CDATA[(self.incoming->notEmpty() implies self.outgoing->isEmpty()) and
+ <![CDATA[(self.incoming->notEmpty() implies self.outgoing->isEmpty()) and
(self.outgoing->notEmpty() implies self.incoming->isEmpty())]]>
<description><![CDATA[An activity parameter node must not have both incoming and outgoing edges.]]></description>
<message><![CDATA[An activity parameter node must not have both incoming and outgoing edges.]]></message>
@@ -2349,7 +2349,7 @@ and self.decisionInput.ownedParameter->select(
name="validateValideTypeOwningFeature"
mode="Batch"
severity="ERROR" statusCode="200">
- <![CDATA[self.structuralFeature.featuringClassifier.oclAsType(Type)->includes(self.object.type) or
+ <![CDATA[self.structuralFeature.featuringClassifier.oclAsType(Type)->includes(self.object.type) or
self.structuralFeature.oclAsType(Property).opposite.type = self.object.type]]>
<description><![CDATA[Check that the structural feature must either be owned by the type of the object input pin, or it must be an owned end of a binary]]></description>
<message><![CDATA[The structural feature must either be owned by the type of the object input pin, or it must be an owned end of a binary]]></message>
@@ -2568,1905 +2568,1924 @@ self.structuralFeature.oclAsType(Property).opposite.type = self.object.type]]>
</binding>
</extension>
-
-<extension point="org.eclipse.emf.validation.constraintProviders">
- <?gmfgen generated="false"?>
- <category id="org.eclipse.uml2.uml.util.UMLValidator.validate/pinAndParameterSynchronization" mandatory="false" name="validatePinAndParameterSynchronization">
- <![CDATA[Validate that Pin and corresponding Parameter are correctly synchronized]]>
- </category>
- <constraintProvider cache="true">
- <package namespaceUri="http://www.eclipse.org/uml2/4.0.0/UML"/>
- <constraints categories="org.eclipse.uml2.uml.util.UMLValidator.validate/pinAndParameterSynchronization">
- <constraint id="org.eclipse.papyrus.uml.diagram.activity.helper.PinAndParameterSynchronizer"
- lang="Java"
- name="PinAndParameterSynchronizer"
- class="org.eclipse.papyrus.uml.diagram.activity.helper.PinAndParameterSynchronizer"
+
+<extension point="org.eclipse.emf.validation.constraintProviders">
+ <?gmfgen generated="false"?>
+ <category id="org.eclipse.uml2.uml.util.UMLValidator.validate/pinAndParameterSynchronization" mandatory="false" name="validatePinAndParameterSynchronization">
+ <![CDATA[Validate that Pin and corresponding Parameter are correctly synchronized]]>
+ </category>
+ <constraintProvider cache="true">
+ <package namespaceUri="http://www.eclipse.org/uml2/4.0.0/UML"/>
+ <constraints categories="org.eclipse.uml2.uml.util.UMLValidator.validate/pinAndParameterSynchronization">
+ <constraint id="org.eclipse.papyrus.uml.diagram.activity.helper.PinAndParameterSynchronizer"
+ lang="Java"
+ name="PinAndParameterSynchronizer"
+ class="org.eclipse.papyrus.uml.diagram.activity.helper.PinAndParameterSynchronizer"
mode="Live"
severity="ERROR" statusCode="200">
- <description><![CDATA[Action's Pins and invoked object's Parameters are synchronized]]></description>
- <message><![CDATA[Action's Pins must correspond to the called object's Parameters]]></message>
- <target class="uml.Pin"/>
- <target class="uml.Parameter"/>
- <target class="uml.Property"/>
- <target class="uml.CallOperationAction"/>
- <target class="uml.Operation"/>
- <target class="uml.CallBehaviorAction"/>
- <target class="uml.Behavior"/>
- <target class="uml.ValueSpecification"/>
- <target class="uml.SendSignalAction"/>
- <target class="uml.Signal"/>
- <target class="uml.SendObjectAction"/>
- <target class="uml.BroadcastSignalAction"/>
+ <description><![CDATA[Action's Pins and invoked object's Parameters are synchronized]]></description>
+ <message><![CDATA[Action's Pins must correspond to the called object's Parameters]]></message>
+ <target class="uml.Pin"/>
+ <target class="uml.Parameter"/>
+ <target class="uml.Property"/>
+ <target class="uml.CallOperationAction"/>
+ <target class="uml.Operation"/>
+ <target class="uml.CallBehaviorAction"/>
+ <target class="uml.Behavior"/>
+ <target class="uml.ValueSpecification"/>
+ <target class="uml.SendSignalAction"/>
+ <target class="uml.Signal"/>
+ <target class="uml.SendObjectAction"/>
+ <target class="uml.BroadcastSignalAction"/>
</constraint>
- </constraints>
- </constraintProvider>
- </extension>
-
- <extension point="org.eclipse.emf.validation.constraintBindings">
- <?gmfgen generated="false"?>
- <clientContext default="false" id="org.eclipse.papyrus.uml.diagram.activityDefaultCtx">
- <selector class="org.eclipse.papyrus.uml.diagram.activity.providers.UMLValidationProvider$DefaultCtx"/>
- </clientContext>
- <binding context="org.eclipse.papyrus.uml.diagram.activityDefaultCtx">
- <constraint ref="org.eclipse.papyrus.uml.diagram.activity.helper.PinAndParameterSynchronizer"/>
- </binding>
-
- </extension>
-
- <extension point="org.eclipse.emf.validation.constraintProviders">
- <?gmfgen generated="false"?>
- <category id="org.eclipse.uml2.uml.util.UMLValidator.validate/activityParameterAndParameterSynchronization" mandatory="false" name="synchronizeActivityParameterAndParameter">
- <![CDATA[Validate that Activity Parameter Node and corresponding Parameter type are correctly synchronized]]>
- </category>
- <constraintProvider cache="true">
- <package namespaceUri="http://www.eclipse.org/uml2/3.0.0/UML"/>
- <constraints categories="org.eclipse.uml2.uml.util.UMLValidator.validate/activityParameterAndParameterSynchronization">
- <constraint id="org.eclipse.papyrus.uml.diagram.activity.helper.ActivityParameterAndParameterSynchronizer"
- lang="Java"
- name="ActivityParameterAndParameterSynchronizer"
- class="org.eclipse.papyrus.uml.diagram.activity.helper.ActivityParameterAndParameterSynchronizer"
+ </constraints>
+ </constraintProvider>
+ </extension>
+
+ <extension point="org.eclipse.emf.validation.constraintBindings">
+ <?gmfgen generated="false"?>
+ <clientContext default="false" id="org.eclipse.papyrus.uml.diagram.activityDefaultCtx">
+ <selector class="org.eclipse.papyrus.uml.diagram.activity.providers.UMLValidationProvider$DefaultCtx"/>
+ </clientContext>
+ <binding context="org.eclipse.papyrus.uml.diagram.activityDefaultCtx">
+ <constraint ref="org.eclipse.papyrus.uml.diagram.activity.helper.PinAndParameterSynchronizer"/>
+ </binding>
+
+ </extension>
+
+ <extension point="org.eclipse.emf.validation.constraintProviders">
+ <?gmfgen generated="false"?>
+ <category id="org.eclipse.uml2.uml.util.UMLValidator.validate/activityParameterAndParameterSynchronization" mandatory="false" name="synchronizeActivityParameterAndParameter">
+ <![CDATA[Validate that Activity Parameter Node and corresponding Parameter type are correctly synchronized]]>
+ </category>
+ <constraintProvider cache="true">
+ <package namespaceUri="http://www.eclipse.org/uml2/3.0.0/UML"/>
+ <constraints categories="org.eclipse.uml2.uml.util.UMLValidator.validate/activityParameterAndParameterSynchronization">
+ <constraint id="org.eclipse.papyrus.uml.diagram.activity.helper.ActivityParameterAndParameterSynchronizer"
+ lang="Java"
+ name="ActivityParameterAndParameterSynchronizer"
+ class="org.eclipse.papyrus.uml.diagram.activity.helper.ActivityParameterAndParameterSynchronizer"
mode="Live"
severity="ERROR" statusCode="200">
- <description><![CDATA[Validate that Activity Parameter Node and corresponding Parameter type are correctly synchronized]]></description>
- <message>Activity parameter node must be synchronized with its parameter.</message>
- <target class="uml.Activity"/>
- <target class="uml.Parameter"/>
- <target class="uml.ActivityParameterNode"/>
+ <description><![CDATA[Validate that Activity Parameter Node and corresponding Parameter type are correctly synchronized]]></description>
+ <message>Activity parameter node must be synchronized with its parameter.</message>
+ <target class="uml.Activity"/>
+ <target class="uml.Parameter"/>
+ <target class="uml.ActivityParameterNode"/>
</constraint>
- </constraints>
- </constraintProvider>
- </extension>
-
- <extension point="org.eclipse.emf.validation.constraintBindings">
- <?gmfgen generated="false"?>
- <clientContext default="false" id="org.eclipse.papyrus.uml.diagram.activityDefaultCtx">
- <selector class="org.eclipse.papyrus.uml.diagram.activity.providers.UMLValidationProvider$DefaultCtx"/>
- </clientContext>
- <binding context="org.eclipse.papyrus.uml.diagram.activityDefaultCtx">
- <constraint ref="org.eclipse.papyrus.uml.diagram.activity.helper.ActivityParameterAndParameterSynchronizer"/>
- </binding>
-
- </extension>
-
- <extension
- point="org.eclipse.ui.views.properties.tabbed.propertySections">
- <propertySections
- contributorId="TreeOutlinePage">
- <propertySection
- class="org.eclipse.papyrus.uml.diagram.activity.tabbedproperties.appearance.SwitchSegmentDirectionSection"
- filter="org.eclipse.papyrus.uml.diagram.activity.tabbedproperties.appearance.SwitchSegmentDirectionSectionFilter"
- id="org.eclipse.papyrus.tabbedproperties.appearance.switchSegmentDirectionSection"
- tab="org.eclipse.papyrus.tabbedproperties.appearance.appearancetab">
- </propertySection>
- </propertySections>
- </extension>
- <!--
- <extension
- point="org.eclipse.papyrus.uml.diagram.common.groups.groupcontainment"
- name="ActivityGroup"
- id="org.eclipse.papyrus.uml.diagram.activity.activitygroup">
- <modelContainer editPartType="org.eclipse.papyrus.uml.diagram.activity.edit.parts.StructuredActivityNodeStructuredActivityNodeContentCompartmentEditPart"
- descriptor="org.eclipse.papyrus.uml.diagram.activity.groupcontainment.StructuredActivityNodeContainment"/>
- <modelContainer
- descriptor="org.eclipse.papyrus.uml.diagram.activity.groupcontainment.ConditionalNodeContainment"
- editPartType="org.eclipse.papyrus.uml.diagram.activity.edit.parts.ConditionalNodeStructuredActivityNodeContentCompartmentEditPart">
- </modelContainer>
- <modelContainer
- descriptor="org.eclipse.papyrus.uml.diagram.activity.groupcontainment.ExpansionRegionContainment"
- editPartType="org.eclipse.papyrus.uml.diagram.activity.edit.parts.ExpansionRegionStructuredActivityNodeContentCompartmentEditPart">
- </modelContainer>
- <modelContainer
- descriptor="org.eclipse.papyrus.uml.diagram.activity.groupcontainment.LoopNodeContainment"
- editPartType="org.eclipse.papyrus.uml.diagram.activity.edit.parts.LoopNodeStructuredActivityNodeContentCompartmentEditPart">
- </modelContainer>
- <modelContainer
- descriptor="org.eclipse.papyrus.uml.diagram.activity.groupcontainment.SequenceNodeContainment"
- editPartType="org.eclipse.papyrus.uml.diagram.activity.edit.parts.SequenceNodeStructuredActivityNodeContentCompartmentEditPart">
- </modelContainer>
- <referenceContainer
- descriptor="org.eclipse.papyrus.uml.diagram.activity.groupcontainment.InterruptibleActivityRegionContainment"
- editPartType="org.eclipse.papyrus.uml.diagram.activity.edit.parts.InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentEditPart"/>
- <referenceContainer
- descriptor="org.eclipse.papyrus.uml.diagram.activity.groupcontainment.ActivityPartitionContainment"
- editPartType="org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityPartitionActivityPartitionContentCompartmentEditPart"/>
- </extension>
- -->
-<extension id="validationDecoratorProvider" name="ValidationDecorations" point="org.eclipse.gmf.runtime.diagram.ui.decoratorProviders">
- <?gmfgen generated="true"?>
- <decoratorProvider class="org.eclipse.papyrus.uml.diagram.activity.providers.UMLValidationDecoratorProvider">
- <Priority name="Lowest"/>
- <object class="org.eclipse.gmf.runtime.diagram.ui.editparts.IPrimaryEditPart(org.eclipse.gmf.runtime.diagram.ui)" id="PRIMARY_VIEW"/>
- <context decoratorTargets="PRIMARY_VIEW"/>
- </decoratorProvider>
- </extension>
-
+ </constraints>
+ </constraintProvider>
+ </extension>
+
+ <extension point="org.eclipse.emf.validation.constraintBindings">
+ <?gmfgen generated="false"?>
+ <clientContext default="false" id="org.eclipse.papyrus.uml.diagram.activityDefaultCtx">
+ <selector class="org.eclipse.papyrus.uml.diagram.activity.providers.UMLValidationProvider$DefaultCtx"/>
+ </clientContext>
+ <binding context="org.eclipse.papyrus.uml.diagram.activityDefaultCtx">
+ <constraint ref="org.eclipse.papyrus.uml.diagram.activity.helper.ActivityParameterAndParameterSynchronizer"/>
+ </binding>
+
+ </extension>
+
+ <extension
+ point="org.eclipse.ui.views.properties.tabbed.propertySections">
+ <propertySections
+ contributorId="TreeOutlinePage">
+ <propertySection
+ class="org.eclipse.papyrus.uml.diagram.activity.tabbedproperties.appearance.SwitchSegmentDirectionSection"
+ filter="org.eclipse.papyrus.uml.diagram.activity.tabbedproperties.appearance.SwitchSegmentDirectionSectionFilter"
+ id="org.eclipse.papyrus.tabbedproperties.appearance.switchSegmentDirectionSection"
+ tab="org.eclipse.papyrus.tabbedproperties.appearance.appearancetab">
+ </propertySection>
+ </propertySections>
+ </extension>
+ <!--
+ <extension
+ point="org.eclipse.papyrus.uml.diagram.common.groups.groupcontainment"
+ name="ActivityGroup"
+ id="org.eclipse.papyrus.uml.diagram.activity.activitygroup">
+ <modelContainer editPartType="org.eclipse.papyrus.uml.diagram.activity.edit.parts.StructuredActivityNodeStructuredActivityNodeContentCompartmentEditPart"
+ descriptor="org.eclipse.papyrus.uml.diagram.activity.groupcontainment.StructuredActivityNodeContainment"/>
+ <modelContainer
+ descriptor="org.eclipse.papyrus.uml.diagram.activity.groupcontainment.ConditionalNodeContainment"
+ editPartType="org.eclipse.papyrus.uml.diagram.activity.edit.parts.ConditionalNodeStructuredActivityNodeContentCompartmentEditPart">
+ </modelContainer>
+ <modelContainer
+ descriptor="org.eclipse.papyrus.uml.diagram.activity.groupcontainment.ExpansionRegionContainment"
+ editPartType="org.eclipse.papyrus.uml.diagram.activity.edit.parts.ExpansionRegionStructuredActivityNodeContentCompartmentEditPart">
+ </modelContainer>
+ <modelContainer
+ descriptor="org.eclipse.papyrus.uml.diagram.activity.groupcontainment.LoopNodeContainment"
+ editPartType="org.eclipse.papyrus.uml.diagram.activity.edit.parts.LoopNodeStructuredActivityNodeContentCompartmentEditPart">
+ </modelContainer>
+ <modelContainer
+ descriptor="org.eclipse.papyrus.uml.diagram.activity.groupcontainment.SequenceNodeContainment"
+ editPartType="org.eclipse.papyrus.uml.diagram.activity.edit.parts.SequenceNodeStructuredActivityNodeContentCompartmentEditPart">
+ </modelContainer>
+ <referenceContainer
+ descriptor="org.eclipse.papyrus.uml.diagram.activity.groupcontainment.InterruptibleActivityRegionContainment"
+ editPartType="org.eclipse.papyrus.uml.diagram.activity.edit.parts.InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentEditPart"/>
+ <referenceContainer
+ descriptor="org.eclipse.papyrus.uml.diagram.activity.groupcontainment.ActivityPartitionContainment"
+ editPartType="org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityPartitionActivityPartitionContentCompartmentEditPart"/>
+ </extension>
+ -->
+<extension id="validationDecoratorProvider" name="ValidationDecorations" point="org.eclipse.gmf.runtime.diagram.ui.decoratorProviders">
+ <?gmfgen generated="true"?>
+ <decoratorProvider class="org.eclipse.papyrus.uml.diagram.activity.providers.UMLValidationDecoratorProvider">
+ <Priority name="Lowest"/>
+ <object class="org.eclipse.gmf.runtime.diagram.ui.editparts.IPrimaryEditPart(org.eclipse.gmf.runtime.diagram.ui)" id="PRIMARY_VIEW"/>
+ <context decoratorTargets="PRIMARY_VIEW"/>
+ </decoratorProvider>
+ </extension>
+
<extension point="org.eclipse.emf.validation.ui.UIRegisteredClientContext">
<?gmfgen generated="true"?>
<clientContext id="org.eclipse.papyrus.uml.diagram.activityDefaultCtx"/>
</extension>
-
-<extension point="org.eclipse.ui.preferencePages">
-
-
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.ShapeNamedElementPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.ShapeNamedElementPreferencePage"
- name="ShapeNamedElement Node" />
+
+<extension point="org.eclipse.ui.preferencePages">
+
+
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.ShapeNamedElementPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.ShapeNamedElementPreferencePage"
+ name="ShapeNamedElement Node" />
+
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.TimeConstraintPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.TimeConstraintPreferencePage"
+ name="TimeConstraint Node" />
+
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.ExpansionNodePreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.ExpansionNodePreferencePage"
+ name="ExpansionNode Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.TimeConstraintPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.TimeConstraintPreferencePage"
- name="TimeConstraint Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.ValuePinPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.ValuePinPreferencePage"
+ name="ValuePin Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.ExpansionNodePreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.ExpansionNodePreferencePage"
- name="ExpansionNode Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.CentralBufferNodePreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.CentralBufferNodePreferencePage"
+ name="CentralBufferNode Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.ValuePinPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.ValuePinPreferencePage"
- name="ValuePin Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.ReadStructuralFeatureActionPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.ReadStructuralFeatureActionPreferencePage"
+ name="ReadStructuralFeatureAction Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.CentralBufferNodePreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.CentralBufferNodePreferencePage"
- name="CentralBufferNode Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.LoopNodePreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.LoopNodePreferencePage"
+ name="LoopNode Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.ReadStructuralFeatureActionPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.ReadStructuralFeatureActionPreferencePage"
- name="ReadStructuralFeatureAction Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.MergeNodePreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.MergeNodePreferencePage"
+ name="MergeNode Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.LoopNodePreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.LoopNodePreferencePage"
- name="LoopNode Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.ActionInputPinPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.ActionInputPinPreferencePage"
+ name="ActionInputPin Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.MergeNodePreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.MergeNodePreferencePage"
- name="MergeNode Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.CreateObjectActionPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.CreateObjectActionPreferencePage"
+ name="CreateObjectAction Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.ActionInputPinPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.ActionInputPinPreferencePage"
- name="ActionInputPin Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.CallOperationActionPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.CallOperationActionPreferencePage"
+ name="CallOperationAction Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.CreateObjectActionPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.CreateObjectActionPreferencePage"
- name="CreateObjectAction Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.CallBehaviorActionPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.CallBehaviorActionPreferencePage"
+ name="CallBehaviorAction Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.CallOperationActionPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.CallOperationActionPreferencePage"
- name="CallOperationAction Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.BroadcastSignalActionPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.BroadcastSignalActionPreferencePage"
+ name="BroadcastSignalAction Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.CallBehaviorActionPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.CallBehaviorActionPreferencePage"
- name="CallBehaviorAction Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.ActivityPartitionPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.ActivityPartitionPreferencePage"
+ name="ActivityPartition Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.BroadcastSignalActionPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.BroadcastSignalActionPreferencePage"
- name="BroadcastSignalAction Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.InputPinPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.InputPinPreferencePage"
+ name="InputPin Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.ActivityPartitionPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.ActivityPartitionPreferencePage"
- name="ActivityPartition Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.SendObjectActionPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.SendObjectActionPreferencePage"
+ name="SendObjectAction Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.InputPinPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.InputPinPreferencePage"
- name="InputPin Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.InitialNodePreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.InitialNodePreferencePage"
+ name="InitialNode Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.SendObjectActionPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.SendObjectActionPreferencePage"
- name="SendObjectAction Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.OutputPinPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.OutputPinPreferencePage"
+ name="OutputPin Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.InitialNodePreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.InitialNodePreferencePage"
- name="InitialNode Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.AddVariableValueActionPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.AddVariableValueActionPreferencePage"
+ name="AddVariableValueAction Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.OutputPinPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.OutputPinPreferencePage"
- name="OutputPin Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.CommentPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.CommentPreferencePage"
+ name="Comment Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.AddVariableValueActionPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.AddVariableValueActionPreferencePage"
- name="AddVariableValueAction Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.DurationConstraintPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.DurationConstraintPreferencePage"
+ name="DurationConstraint Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.CommentPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.CommentPreferencePage"
- name="Comment Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.StructuredActivityNodePreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.StructuredActivityNodePreferencePage"
+ name="StructuredActivityNode Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.DurationConstraintPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.DurationConstraintPreferencePage"
- name="DurationConstraint Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.SequenceNodePreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.SequenceNodePreferencePage"
+ name="SequenceNode Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.StructuredActivityNodePreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.StructuredActivityNodePreferencePage"
- name="StructuredActivityNode Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.ActivityParameterNodePreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.ActivityParameterNodePreferencePage"
+ name="ActivityParameterNode Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.SequenceNodePreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.SequenceNodePreferencePage"
- name="SequenceNode Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.ActivityPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.ActivityPreferencePage"
+ name="Activity Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.ActivityParameterNodePreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.ActivityParameterNodePreferencePage"
- name="ActivityParameterNode Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.OpaqueActionPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.OpaqueActionPreferencePage"
+ name="OpaqueAction Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.ActivityPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.ActivityPreferencePage"
- name="Activity Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.DecisionNodePreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.DecisionNodePreferencePage"
+ name="DecisionNode Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.OpaqueActionPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.OpaqueActionPreferencePage"
- name="OpaqueAction Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.ValueSpecificationActionPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.ValueSpecificationActionPreferencePage"
+ name="ValueSpecificationAction Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.DecisionNodePreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.DecisionNodePreferencePage"
- name="DecisionNode Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.JoinNodePreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.JoinNodePreferencePage"
+ name="JoinNode Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.ValueSpecificationActionPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.ValueSpecificationActionPreferencePage"
- name="ValueSpecificationAction Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.ConstraintPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.ConstraintPreferencePage"
+ name="Constraint Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.JoinNodePreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.JoinNodePreferencePage"
- name="JoinNode Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.SendSignalActionPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.SendSignalActionPreferencePage"
+ name="SendSignalAction Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.ConstraintPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.ConstraintPreferencePage"
- name="Constraint Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.FlowFinalNodePreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.FlowFinalNodePreferencePage"
+ name="FlowFinalNode Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.SendSignalActionPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.SendSignalActionPreferencePage"
- name="SendSignalAction Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.InterruptibleActivityRegionPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.InterruptibleActivityRegionPreferencePage"
+ name="InterruptibleActivityRegion Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.FlowFinalNodePreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.FlowFinalNodePreferencePage"
- name="FlowFinalNode Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.IntervalConstraintPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.IntervalConstraintPreferencePage"
+ name="IntervalConstraint Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.InterruptibleActivityRegionPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.InterruptibleActivityRegionPreferencePage"
- name="InterruptibleActivityRegion Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.ReadSelfActionPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.ReadSelfActionPreferencePage"
+ name="ReadSelfAction Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.IntervalConstraintPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.IntervalConstraintPreferencePage"
- name="IntervalConstraint Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.DataStoreNodePreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.DataStoreNodePreferencePage"
+ name="DataStoreNode Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.ReadSelfActionPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.ReadSelfActionPreferencePage"
- name="ReadSelfAction Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.ActivityFinalNodePreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.ActivityFinalNodePreferencePage"
+ name="ActivityFinalNode Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.DataStoreNodePreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.DataStoreNodePreferencePage"
- name="DataStoreNode Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.ReadVariableActionPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.ReadVariableActionPreferencePage"
+ name="ReadVariableAction Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.ActivityFinalNodePreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.ActivityFinalNodePreferencePage"
- name="ActivityFinalNode Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.ParameterPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.ParameterPreferencePage"
+ name="Parameter Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.ReadVariableActionPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.ReadVariableActionPreferencePage"
- name="ReadVariableAction Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.ExpansionRegionPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.ExpansionRegionPreferencePage"
+ name="ExpansionRegion Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.ParameterPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.ParameterPreferencePage"
- name="Parameter Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.AcceptEventActionPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.AcceptEventActionPreferencePage"
+ name="AcceptEventAction Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.ExpansionRegionPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.ExpansionRegionPreferencePage"
- name="ExpansionRegion Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.DestroyObjectActionPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.DestroyObjectActionPreferencePage"
+ name="DestroyObjectAction Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.AcceptEventActionPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.AcceptEventActionPreferencePage"
- name="AcceptEventAction Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.AddStructuralFeatureValueActionPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.AddStructuralFeatureValueActionPreferencePage"
+ name="AddStructuralFeatureValueAction Node" />
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.DestroyObjectActionPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.DestroyObjectActionPreferencePage"
- name="DestroyObjectAction Node" />
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.ForkNodePreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.ForkNodePreferencePage"
+ name="ForkNode Node" />
+
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.ConditionalNodePreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.ConditionalNodePreferencePage"
+ name="ConditionalNode Node" />
+
+
+
+
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.ControlFlowPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.ControlFlowPreferencePage"
+ name="ControlFlow Link" />
+
+
+
+
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.ExceptionHandlerPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.ExceptionHandlerPreferencePage"
+ name="ExceptionHandler Link" />
+
+
+
+ <?gmfgen generated="true"?>
+ <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
+ class="org.eclipse.papyrus.uml.diagram.activity.preferences.ObjectFlowPreferencePage"
+ id="org.eclipse.papyrus.uml.diagram.activity.preferences.ObjectFlowPreferencePage"
+ name="ObjectFlow Link" />
+
+
+</extension>
+<extension
+ id="Papyrus activity editor Plugin.palettedefinition"
+ name="Papyrus activity editor Plugin Predefined Entries"
+ point="org.eclipse.gmf.runtime.diagram.ui.paletteProviders">
+
+ <?gmfgen generated="true"?>
+ <paletteProvider class="org.eclipse.gmf.runtime.diagram.ui.providers.DefaultPaletteProvider">
+ <Priority name="Lowest"/>
+ <contribution
+ factoryClass="org.eclipse.papyrus.uml.diagram.activity.part.UMLPaletteFactory">
+ <predefinedEntry id="standardGroup/noteStack/noteTool" remove="true"/>
+ <predefinedEntry id="standardGroup/noteStack/textTool" remove="true"/>
+ <predefinedEntry id="standardGroup/noteStack/noteattachmentTool" remove="true"/>
+ <entry
+ defineOnly="true"
+ description="Create an Activity Partition"
+ id="createActivityPartition1CreationTool"
+ kind="tool"
+ label="Activity Partition"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ActivityPartition.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ActivityPartition.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create an Interruptible Activity Region"
+ id="createInterruptibleActivityRegion2CreationTool"
+ kind="tool"
+ label="Interruptible Activity Region"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/InterruptibleActivityRegion.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/InterruptibleActivityRegion.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create an Initial node"
+ id="createInitialnode1CreationTool"
+ kind="tool"
+ label="Initial node"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/InitialNode.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/InitialNode.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create an Activity final node"
+ id="createActivityfinal2CreationTool"
+ kind="tool"
+ label="Activity final"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ActivityFinalNode.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ActivityFinalNode.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Flow final node"
+ id="createFlowfinal3CreationTool"
+ kind="tool"
+ label="Flow final"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/FlowFinalNode.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/FlowFinalNode.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Decision node"
+ id="createDecisionnode4CreationTool"
+ kind="tool"
+ label="Decision node"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DecisionNode.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DecisionNode.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Merge node"
+ id="createMergenode5CreationTool"
+ kind="tool"
+ label="Merge node"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/MergeNode.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/MergeNode.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Merge node"
+ id="createJoinnode6CreationTool"
+ kind="tool"
+ label="Join node"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/JoinNode.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/JoinNode.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Fork node"
+ id="createForknode7CreationTool"
+ kind="tool"
+ label="Fork node"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ForkNode.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ForkNode.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create an Activity"
+ id="createActivity1CreationTool"
+ kind="tool"
+ label="Activity"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Activity.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Activity.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create an Activity Parameter Node"
+ id="createActivityParameterNode2CreationTool"
+ kind="tool"
+ label="Activity Parameter Node"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ActivityParameterNode.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ActivityParameterNode.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Central Buffer Node"
+ id="createCentralBufferNode3CreationTool"
+ kind="tool"
+ label="Central Buffer Node"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DataStoreNode.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DataStoreNode.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Data Store Node"
+ id="createDataStoreNode4CreationTool"
+ kind="tool"
+ label="Data Store Node"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DataStoreNode.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DataStoreNode.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Comment"
+ id="createComment5CreationTool"
+ kind="tool"
+ label="Comment"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Comment.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Comment.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Cosntraint"
+ id="createConstraint6CreationTool"
+ kind="tool"
+ label="Constraint"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Constraint.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Constraint.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Control Flow"
+ id="createControlFlow1CreationTool"
+ kind="tool"
+ label="Control Flow"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ControlFlow.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ControlFlow.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create an Exception Handler"
+ id="createExceptionHandler2CreationTool"
+ kind="tool"
+ label="Exception Handler"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ExceptionHandler.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ExceptionHandler.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create an Object Flow"
+ id="createObjectFlow3CreationTool"
+ kind="tool"
+ label="Object Flow"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ObjectFlow.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ObjectFlow.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create of a link for comment"
+ id="createLink4CreationTool"
+ kind="tool"
+ label="Link"
+ large_icon="icons/obj16/Link.gif"
+ path=""
+ small_icon="icons/obj16/Link.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Constraint as Local Precondition for an Action"
+ id="createLocalPreconditionConstraint1CreationTool"
+ kind="tool"
+ label="Local Precondition Constraint"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Constraint.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Constraint.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create an Interval Constraint as Local Precondition for an Action"
+ id="createLocalPreconditionIntervalConstraint3CreationTool"
+ kind="tool"
+ label="Local Precondition Interval Constraint"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/IntervalConstraint.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/IntervalConstraint.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Duration Constraint as Local Precondition for an Action"
+ id="createLocalPreconditionDurationConstraint4CreationTool"
+ kind="tool"
+ label="Local Precondition Duration Constraint"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DurationConstraint.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DurationConstraint.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Time Constraint as Local Precondition for an Action"
+ id="createLocalPreconditionTimeConstraint5CreationTool"
+ kind="tool"
+ label="Local Precondition Time Constraint"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/TimeConstraint.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/TimeConstraint.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Constraint as Local Postcondition for an Action"
+ id="createLocalPostconditionConstraint6CreationTool"
+ kind="tool"
+ label="Local Postcondition Constraint"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Constraint.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Constraint.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create an Interval Constraint as Local Postcondition for an Action"
+ id="createLocalPostconditionIntervalConstraint8CreationTool"
+ kind="tool"
+ label="Local Postcondition Interval Constraint"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/IntervalConstraint.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/IntervalConstraint.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Duration Constraint as Local Postcondition for an Action"
+ id="createLocalPostconditionDurationConstraint9CreationTool"
+ kind="tool"
+ label="Local Postcondition Duration Constraint"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DurationConstraint.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DurationConstraint.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Time Constraint as Local Postcondition for an Action"
+ id="createLocalPostconditionTimeConstraint10CreationTool"
+ kind="tool"
+ label="Local Postcondition Time Constraint"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/TimeConstraint.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/TimeConstraint.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create an Output Pin"
+ id="createOutputPin1CreationTool"
+ kind="tool"
+ label="Output Pin"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/OutputPin.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/OutputPin.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create an Input Pin"
+ id="createInputPin2CreationTool"
+ kind="tool"
+ label="Input Pin"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/InputPin.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/InputPin.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create an Action Input Pin"
+ id="createActionInputPin3CreationTool"
+ kind="tool"
+ label="Action Input Pin"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ActionInputPin.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ActionInputPin.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Value Pin"
+ id="createValuePin4CreationTool"
+ kind="tool"
+ label="Value Pin"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ValuePin.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ValuePin.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create an Expansion Region"
+ id="createExpansionRegion1CreationTool"
+ kind="tool"
+ label="Expansion Region"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ExpansionRegion.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ExpansionRegion.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create an Expansion Node as Input of an Expansion Region"
+ id="createInputExpansionNode2CreationTool"
+ kind="tool"
+ label="Input Expansion Node"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ExpansionNode.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ExpansionNode.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create an Expansion Node as Output of an Expansion Region"
+ id="createOutputExpansionNode3CreationTool"
+ kind="tool"
+ label="Output Expansion Node"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ExpansionNode.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ExpansionNode.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Broadcast Signal Action"
+ id="createBroadcastSignalAction1CreationTool"
+ kind="tool"
+ label="Broadcast Signal Action"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/BroadcastSignalAction.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/BroadcastSignalAction.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create an Call Behavior Action node"
+ id="createCallBehaviorAction2CreationTool"
+ kind="tool"
+ label="Call Behavior Action"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/CallBehaviorAction.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/CallBehaviorAction.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Call Operation Action node"
+ id="createCallOperationAction3CreationTool"
+ kind="tool"
+ label="Call Operation Action"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/CallOperationAction.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/CallOperationAction.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Send Object Action node"
+ id="createSendObjectAction4CreationTool"
+ kind="tool"
+ label="Send Object Action"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/SendObjectAction.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/SendObjectAction.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Send Signal Action node"
+ id="createSendSignalAction5CreationTool"
+ kind="tool"
+ label="Send Signal Action"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/SendSignalAction.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/SendSignalAction.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Create Object Action"
+ id="createCreateObjectAction1CreationTool"
+ kind="tool"
+ label="Create Object Action"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/CreateObjectAction.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/CreateObjectAction.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Destroy Object Action"
+ id="createDestroyObjectAction2CreationTool"
+ kind="tool"
+ label="Destroy Object Action"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DestroyObjectAction.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DestroyObjectAction.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a ReadSelfAction"
+ id="createReadSelfAction3CreationTool"
+ kind="tool"
+ label="ReadSelfAction"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ReadSelfAction.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ReadSelfAction.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Structured Activity Node"
+ id="createStructuredActivityNode1CreationTool"
+ kind="tool"
+ label="Structured Activity Node"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/StructuredActivityNode.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/StructuredActivityNode.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Loop Node"
+ id="createLoopNode2CreationTool"
+ kind="tool"
+ label="Loop Node"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/LoopNode.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/LoopNode.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Sequence Node"
+ id="createSequenceNode3CreationTool"
+ kind="tool"
+ label="Sequence Node"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/SequenceNode.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/SequenceNode.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Conditional Node"
+ id="createConditionalNode4CreationTool"
+ kind="tool"
+ label="Conditional Node"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ConditionalNode.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ConditionalNode.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create Read Structural Feature Action"
+ id="createReadStructuralFeatureAction1CreationTool"
+ kind="tool"
+ label="Read Structural Feature Action"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ReadStructuralFeatureAction.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ReadStructuralFeatureAction.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create Add Structural Feature Value Action"
+ id="createAddStructuralFeatureValueAction2CreationTool"
+ kind="tool"
+ label="Add Structural Feature Value Action"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/AddStructuralFeatureValueAction.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/AddStructuralFeatureValueAction.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create Add Structural Feature Value Action"
+ id="createAddStructuralFeatureValueAction3CreationTool"
+ kind="tool"
+ label="Add Structural Feature Value Action"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/AddStructuralFeatureValueAction.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/AddStructuralFeatureValueAction.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create Read Structural Feature Action"
+ id="createReadStructuralFeatureAction4CreationTool"
+ kind="tool"
+ label="Read Structural Feature Action"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ReadStructuralFeatureAction.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ReadStructuralFeatureAction.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create Add Variable Value Action"
+ id="createAddVariableValueAction1CreationTool"
+ kind="tool"
+ label="Add Variable Value Action"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/AddVariableValueAction.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/AddVariableValueAction.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Read Variable Action"
+ id="createReadVariableAction2CreationTool"
+ kind="tool"
+ label="Read Variable Action"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ReadVariableAction.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ReadVariableAction.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create an Opaque Action node"
+ id="createOpaqueAction1CreationTool"
+ kind="tool"
+ label="Opaque Action"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/OpaqueAction.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/OpaqueAction.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create a Value Specification Action node"
+ id="createValueSpecificationAction2CreationTool"
+ kind="tool"
+ label="Value Specification Action"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ValueSpecificationAction.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ValueSpecificationAction.gif">
+ </entry>
+ <entry
+ defineOnly="true"
+ description="Create an Accept Event Action node"
+ id="createAcceptEventAction1CreationTool"
+ kind="tool"
+ label="Accept Event Action"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/AcceptEventAction.gif"
+ path=""
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/AcceptEventAction.gif">
+ </entry>
+
+ </contribution>
+ </paletteProvider>
+
+ </extension>
+
+
+<extension
+ point="org.eclipse.gmf.runtime.diagram.ui.editpolicyProviders">
+ <editpolicyProvider
+ class="org.eclipse.papyrus.uml.diagram.activity.activitygroup.GroupEditPolicyProvider">
+ <Priority
+ name="Low">
+ </Priority>
+ </editpolicyProvider>
+</extension>
+<extension
+ point="org.eclipse.emf.transaction.listeners">
+ <listener
+ class="org.eclipse.papyrus.uml.diagram.activity.listeners.InterruptibleEdgeListener">
+ <editingDomain
+ id="org.eclipse.papyrus.SharedEditingDomainID">
+ </editingDomain></listener>
+ <listener
+ class="org.eclipse.papyrus.uml.diagram.activity.listeners.ExceptionHandlerListener">
+ <editingDomain
+ id="org.eclipse.papyrus.SharedEditingDomainID">
+ </editingDomain>
+ </listener>
+ <listener
+ class="org.eclipse.papyrus.uml.diagram.activity.listeners.InInterruptibleActivityRegionListener">
+ <editingDomain
+ id="org.eclipse.papyrus.SharedEditingDomainID">
+ </editingDomain>
+ </listener>
+ <listener
+ class="org.eclipse.papyrus.uml.diagram.activity.listeners.ObjectNodeListener">
+ <editingDomain
+ id="org.eclipse.papyrus.SharedEditingDomainID">
+ </editingDomain>
+ </listener>
+ <listener
+ class="org.eclipse.papyrus.uml.diagram.activity.listeners.ObjectFlowListener">
+ <editingDomain
+ id="org.eclipse.papyrus.SharedEditingDomainID">
+ </editingDomain>
+ </listener>
+ </extension>
+
+ <extension
+ point="org.eclipse.gmf.runtime.diagram.ui.editpartProviders">
+ <editpartProvider
+ class="org.eclipse.papyrus.uml.diagram.activity.providers.CustomUMLEditPartProvider">
+ <Priority
+ name="Highest">
+ </Priority>
+ <object
+ class="org.eclipse.gmf.runtime.notation.Diagram"
+ id="generated-diagram">
+ <method
+ name="getType()"
+ value="PapyrusUMLActivityDiagram">
+ </method>
+ </object>
+ <object
+ class="org.eclipse.gmf.runtime.notation.Node"
+ id="generated-nodes">
+ <method
+ name="getType()">
+ </method>
+ </object>
+ <object
+ class="org.eclipse.gmf.runtime.notation.Edge"
+ id="generated-links">
+ <method
+ name="getType()">
+ </method>
+ </object>
+ <object
+ class="org.eclipse.gmf.runtime.notation.Node"
+ id="generated-labels">
+ <method
+ name="getType()">
+ </method>
+ </object>
+ <object
+ class="org.eclipse.gmf.runtime.notation.Node"
+ id="generated-compartments">
+ <method
+ name="getType()">
+ </method>
+ </object>
+ <context
+ views="generated-diagram,generated-nodes,generated-links,generated-labels,generated-compartments">
+ </context>
+ </editpartProvider>
+</extension>
+
+<extension point="org.eclipse.gmf.runtime.diagram.core.viewProviders" id="view-provider">
+ <viewProvider class="org.eclipse.papyrus.uml.diagram.activity.providers.CustomUMLViewProvider">
+ <Priority name="Medium"/>
+ <context viewClass="org.eclipse.gmf.runtime.notation.Diagram" semanticHints="PapyrusUMLActivityDiagram"/>
+ <context viewClass="org.eclipse.gmf.runtime.notation.Node"/>
+ <context viewClass="org.eclipse.gmf.runtime.notation.Edge"/>
+ </viewProvider>
+ </extension>
+
+
+ <extension
+ point="org.eclipse.ui.commands">
+ <command
+ description="Synchronize pins and parameters"
+ categoryId="org.eclipse.papyrus.editor.category"
+ id="org.eclipse.papyrus.uml.diagram.activity.SynchronizePinsParametersCommand"
+ name="Synchronize pins and parameters">
+ </command>
+ </extension>
+
+<extension
+ point="org.eclipse.ui.commands">
+ <command
+ categoryId="org.eclipse.papyrus.editor.category"
+ description="Global Synchronize pins and parameters"
+ id="org.eclipse.papyrus.uml.diagram.activity.GlobalSynchronizePinsParametersCommand"
+ name="Global Synchronize pins and parameters">
+ </command>
+</extension>
+
+<extension
+ point="org.eclipse.ui.handlers">
+ <handler
+ class="org.eclipse.papyrus.uml.diagram.activity.handlers.SynchronizePinsParametersHandler"
+ commandId="org.eclipse.papyrus.uml.diagram.activity.SynchronizePinsParametersCommand">
+ </handler>
+ </extension>
+
+<extension
+ point="org.eclipse.ui.handlers">
+ <handler
+ class="org.eclipse.papyrus.uml.diagram.activity.handlers.GlobalSynchronizePinsParametersHandler"
+ commandId="org.eclipse.papyrus.uml.diagram.activity.GlobalSynchronizePinsParametersCommand">
+ </handler>
+</extension>
+
+<!-- Defnition for seleciton is call action and editor is papyrus -->
+ <extension
+ point="org.eclipse.core.expressions.definitions">
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.AddStructuralFeatureValueActionPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.AddStructuralFeatureValueActionPreferencePage"
- name="AddStructuralFeatureValueAction Node" />
+ <definition id="org.eclipse.papyrus.diagram.common.IsCallAction">
+ <and>
+
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.ForkNodePreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.ForkNodePreferencePage"
- name="ForkNode Node" />
+ <with variable="selection">
+ <test property="org.eclipse.papyrus.UMLCallActionTester.isCallAction" value="true"
+ forcePluginActivation="true"/>
+ </with>
+
+ </and>
+ </definition>
+ </extension>
+
+<!--Test for selection of a call Action -->
+ <extension
+ point="org.eclipse.core.expressions.propertyTesters">
+ <propertyTester
+ class="org.eclipse.papyrus.uml.diagram.activity.testers.UMLCallActionTester"
+ id="org.eclipse.papyrus.UMLCallActionTester"
+ namespace="org.eclipse.papyrus.UMLCallActionTester"
+ properties="isCallAction"
+ type="org.eclipse.jface.viewers.ISelection">
+ </propertyTester>
+ </extension>
+
+<extension
+ point="org.eclipse.ui.menus">
+
+ <menuContribution locationURI="popup:org.eclipse.gmf.runtime.diagram.ui.DiagramEditorContextMenu?endof=fileMenu"
+ allPopups="false">
+ <command
+ commandId="org.eclipse.papyrus.uml.diagram.activity.SynchronizePinsParametersCommand"
+ icon="icons/obj16/RefreshPin.png"
+ label="Synchronize pins and parameters"
+ mnemonic="Synchronize pins and parameters of the current selection"
+ style="push">
+ <visibleWhen>
+ <and>
+
+ <reference
+ definitionId="org.eclipse.papyrus.diagram.common.IsCallAction">
+ </reference>
+
+ </and>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ <menuContribution
+ allPopups="false"
+ locationURI="popup:org.eclipse.papyrus.views.modelexplorer.modelexplorer.popup">
+ <command
+ commandId="org.eclipse.papyrus.uml.diagram.activity.SynchronizePinsParametersCommand"
+ icon="icons/obj16/RefreshPin.png"
+ label="Synchronize pins and parameters"
+ mnemonic="Synchronize pins and parameters of the current selection"
+ style="push">
+ <visibleWhen>
+ <and>
+ <reference
+ definitionId="org.eclipse.papyrus.diagram.common.IsCallAction">
+ </reference>
+ </and>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+</extension>
+<extension
+ point="org.eclipse.ui.views.properties.tabbed.propertyTabs">
+ <propertyTabs
+ contributorId="TreeOutlinePage">
+ <propertyTab
+ category="org.eclipse.papyrus"
+ id="org.eclipse.papyrus.tabbedproperties.appearance.appearancetab"
+ label="Appearance">
+ </propertyTab>
+ </propertyTabs>
+</extension>
+
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.ConditionalNodePreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.ConditionalNodePreferencePage"
- name="ConditionalNode Node" />
-
-
-
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.ControlFlowPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.ControlFlowPreferencePage"
- name="ControlFlow Link" />
-
-
-
-
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.ExceptionHandlerPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.ExceptionHandlerPreferencePage"
- name="ExceptionHandler Link" />
-
-
-
- <?gmfgen generated="true"?>
- <page category="org.eclipse.papyrus.infra.gmfdiag.preferences.diagrams.PapyrusUMLActivityDiagram"
- class="org.eclipse.papyrus.uml.diagram.activity.preferences.ObjectFlowPreferencePage"
- id="org.eclipse.papyrus.uml.diagram.activity.preferences.ObjectFlowPreferencePage"
- name="ObjectFlow Link" />
-
-
-</extension>
-<extension
- id="Papyrus activity editor Plugin.palettedefinition"
- name="Papyrus activity editor Plugin Predefined Entries"
- point="org.eclipse.gmf.runtime.diagram.ui.paletteProviders">
-
- <?gmfgen generated="true"?>
- <paletteProvider class="org.eclipse.gmf.runtime.diagram.ui.providers.DefaultPaletteProvider">
- <Priority name="Lowest"/>
- <contribution
- factoryClass="org.eclipse.papyrus.uml.diagram.activity.part.UMLPaletteFactory">
- <predefinedEntry id="standardGroup/noteStack/noteTool" remove="true"/>
- <predefinedEntry id="standardGroup/noteStack/textTool" remove="true"/>
- <predefinedEntry id="standardGroup/noteStack/noteattachmentTool" remove="true"/>
- <entry
- defineOnly="true"
- description="Create an Activity Partition"
- id="createActivityPartition1CreationTool"
- kind="tool"
- label="Activity Partition"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ActivityPartition.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ActivityPartition.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create an Interruptible Activity Region"
- id="createInterruptibleActivityRegion2CreationTool"
- kind="tool"
- label="Interruptible Activity Region"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/InterruptibleActivityRegion.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/InterruptibleActivityRegion.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create an Initial node"
- id="createInitialnode1CreationTool"
- kind="tool"
- label="Initial node"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/InitialNode.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/InitialNode.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create an Activity final node"
- id="createActivityfinal2CreationTool"
- kind="tool"
- label="Activity final"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ActivityFinalNode.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ActivityFinalNode.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Flow final node"
- id="createFlowfinal3CreationTool"
- kind="tool"
- label="Flow final"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/FlowFinalNode.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/FlowFinalNode.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Decision node"
- id="createDecisionnode4CreationTool"
- kind="tool"
- label="Decision node"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DecisionNode.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DecisionNode.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Merge node"
- id="createMergenode5CreationTool"
- kind="tool"
- label="Merge node"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/MergeNode.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/MergeNode.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Merge node"
- id="createJoinnode6CreationTool"
- kind="tool"
- label="Join node"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/JoinNode.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/JoinNode.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Fork node"
- id="createForknode7CreationTool"
- kind="tool"
- label="Fork node"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ForkNode.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ForkNode.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create an Activity"
- id="createActivity1CreationTool"
- kind="tool"
- label="Activity"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Activity.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Activity.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create an Activity Parameter Node"
- id="createActivityParameterNode2CreationTool"
- kind="tool"
- label="Activity Parameter Node"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ActivityParameterNode.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ActivityParameterNode.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Central Buffer Node"
- id="createCentralBufferNode3CreationTool"
- kind="tool"
- label="Central Buffer Node"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DataStoreNode.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DataStoreNode.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Data Store Node"
- id="createDataStoreNode4CreationTool"
- kind="tool"
- label="Data Store Node"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DataStoreNode.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DataStoreNode.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Comment"
- id="createComment5CreationTool"
- kind="tool"
- label="Comment"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Comment.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Comment.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Cosntraint"
- id="createConstraint6CreationTool"
- kind="tool"
- label="Constraint"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Constraint.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Constraint.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Control Flow"
- id="createControlFlow1CreationTool"
- kind="tool"
- label="Control Flow"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ControlFlow.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ControlFlow.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create an Exception Handler"
- id="createExceptionHandler2CreationTool"
- kind="tool"
- label="Exception Handler"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ExceptionHandler.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ExceptionHandler.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create an Object Flow"
- id="createObjectFlow3CreationTool"
- kind="tool"
- label="Object Flow"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ObjectFlow.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ObjectFlow.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create of a link for comment"
- id="createLink4CreationTool"
- kind="tool"
- label="Link"
- large_icon="icons/obj16/Link.gif"
- path=""
- small_icon="icons/obj16/Link.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Constraint as Local Precondition for an Action"
- id="createLocalPreconditionConstraint1CreationTool"
- kind="tool"
- label="Local Precondition Constraint"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Constraint.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Constraint.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create an Interval Constraint as Local Precondition for an Action"
- id="createLocalPreconditionIntervalConstraint3CreationTool"
- kind="tool"
- label="Local Precondition Interval Constraint"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/IntervalConstraint.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/IntervalConstraint.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Duration Constraint as Local Precondition for an Action"
- id="createLocalPreconditionDurationConstraint4CreationTool"
- kind="tool"
- label="Local Precondition Duration Constraint"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DurationConstraint.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DurationConstraint.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Time Constraint as Local Precondition for an Action"
- id="createLocalPreconditionTimeConstraint5CreationTool"
- kind="tool"
- label="Local Precondition Time Constraint"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/TimeConstraint.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/TimeConstraint.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Constraint as Local Postcondition for an Action"
- id="createLocalPostconditionConstraint6CreationTool"
- kind="tool"
- label="Local Postcondition Constraint"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Constraint.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Constraint.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create an Interval Constraint as Local Postcondition for an Action"
- id="createLocalPostconditionIntervalConstraint8CreationTool"
- kind="tool"
- label="Local Postcondition Interval Constraint"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/IntervalConstraint.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/IntervalConstraint.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Duration Constraint as Local Postcondition for an Action"
- id="createLocalPostconditionDurationConstraint9CreationTool"
- kind="tool"
- label="Local Postcondition Duration Constraint"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DurationConstraint.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DurationConstraint.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Time Constraint as Local Postcondition for an Action"
- id="createLocalPostconditionTimeConstraint10CreationTool"
- kind="tool"
- label="Local Postcondition Time Constraint"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/TimeConstraint.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/TimeConstraint.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create an Output Pin"
- id="createOutputPin1CreationTool"
- kind="tool"
- label="Output Pin"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/OutputPin.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/OutputPin.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create an Input Pin"
- id="createInputPin2CreationTool"
- kind="tool"
- label="Input Pin"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/InputPin.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/InputPin.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create an Action Input Pin"
- id="createActionInputPin3CreationTool"
- kind="tool"
- label="Action Input Pin"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ActionInputPin.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ActionInputPin.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Value Pin"
- id="createValuePin4CreationTool"
- kind="tool"
- label="Value Pin"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ValuePin.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ValuePin.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create an Expansion Region"
- id="createExpansionRegion1CreationTool"
- kind="tool"
- label="Expansion Region"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ExpansionRegion.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ExpansionRegion.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create an Expansion Node as Input of an Expansion Region"
- id="createInputExpansionNode2CreationTool"
- kind="tool"
- label="Input Expansion Node"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ExpansionNode.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ExpansionNode.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create an Expansion Node as Output of an Expansion Region"
- id="createOutputExpansionNode3CreationTool"
- kind="tool"
- label="Output Expansion Node"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ExpansionNode.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ExpansionNode.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Broadcast Signal Action"
- id="createBroadcastSignalAction1CreationTool"
- kind="tool"
- label="Broadcast Signal Action"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/BroadcastSignalAction.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/BroadcastSignalAction.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create an Call Behavior Action node"
- id="createCallBehaviorAction2CreationTool"
- kind="tool"
- label="Call Behavior Action"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/CallBehaviorAction.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/CallBehaviorAction.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Call Operation Action node"
- id="createCallOperationAction3CreationTool"
- kind="tool"
- label="Call Operation Action"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/CallOperationAction.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/CallOperationAction.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Send Object Action node"
- id="createSendObjectAction4CreationTool"
- kind="tool"
- label="Send Object Action"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/SendObjectAction.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/SendObjectAction.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Send Signal Action node"
- id="createSendSignalAction5CreationTool"
- kind="tool"
- label="Send Signal Action"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/SendSignalAction.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/SendSignalAction.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Create Object Action"
- id="createCreateObjectAction1CreationTool"
- kind="tool"
- label="Create Object Action"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/CreateObjectAction.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/CreateObjectAction.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Destroy Object Action"
- id="createDestroyObjectAction2CreationTool"
- kind="tool"
- label="Destroy Object Action"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DestroyObjectAction.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/DestroyObjectAction.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a ReadSelfAction"
- id="createReadSelfAction3CreationTool"
- kind="tool"
- label="ReadSelfAction"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ReadSelfAction.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ReadSelfAction.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Structured Activity Node"
- id="createStructuredActivityNode1CreationTool"
- kind="tool"
- label="Structured Activity Node"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/StructuredActivityNode.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/StructuredActivityNode.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Loop Node"
- id="createLoopNode2CreationTool"
- kind="tool"
- label="Loop Node"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/LoopNode.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/LoopNode.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Sequence Node"
- id="createSequenceNode3CreationTool"
- kind="tool"
- label="Sequence Node"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/SequenceNode.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/SequenceNode.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Conditional Node"
- id="createConditionalNode4CreationTool"
- kind="tool"
- label="Conditional Node"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ConditionalNode.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ConditionalNode.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create Read Structural Feature Action"
- id="createReadStructuralFeatureAction1CreationTool"
- kind="tool"
- label="Read Structural Feature Action"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ReadStructuralFeatureAction.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ReadStructuralFeatureAction.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create Add Structural Feature Value Action"
- id="createAddStructuralFeatureValueAction2CreationTool"
- kind="tool"
- label="Add Structural Feature Value Action"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/AddStructuralFeatureValueAction.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/AddStructuralFeatureValueAction.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create Add Structural Feature Value Action"
- id="createAddStructuralFeatureValueAction3CreationTool"
- kind="tool"
- label="Add Structural Feature Value Action"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/AddStructuralFeatureValueAction.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/AddStructuralFeatureValueAction.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create Read Structural Feature Action"
- id="createReadStructuralFeatureAction4CreationTool"
- kind="tool"
- label="Read Structural Feature Action"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ReadStructuralFeatureAction.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ReadStructuralFeatureAction.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create Add Variable Value Action"
- id="createAddVariableValueAction1CreationTool"
- kind="tool"
- label="Add Variable Value Action"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/AddVariableValueAction.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/AddVariableValueAction.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Read Variable Action"
- id="createReadVariableAction2CreationTool"
- kind="tool"
- label="Read Variable Action"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ReadVariableAction.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ReadVariableAction.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create an Opaque Action node"
- id="createOpaqueAction1CreationTool"
- kind="tool"
- label="Opaque Action"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/OpaqueAction.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/OpaqueAction.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create a Value Specification Action node"
- id="createValueSpecificationAction2CreationTool"
- kind="tool"
- label="Value Specification Action"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ValueSpecificationAction.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/ValueSpecificationAction.gif">
- </entry>
- <entry
- defineOnly="true"
- description="Create an Accept Event Action node"
- id="createAcceptEventAction1CreationTool"
- kind="tool"
- label="Accept Event Action"
- large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/AcceptEventAction.gif"
- path=""
- small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/AcceptEventAction.gif">
- </entry>
-
- </contribution>
- </paletteProvider>
-
- </extension>
-
-
-<extension
- point="org.eclipse.gmf.runtime.diagram.ui.editpolicyProviders">
- <editpolicyProvider
- class="org.eclipse.papyrus.uml.diagram.activity.activitygroup.GroupEditPolicyProvider">
- <Priority
- name="Low">
- </Priority>
- </editpolicyProvider>
-</extension>
-<extension
- point="org.eclipse.emf.transaction.listeners">
- <listener
- class="org.eclipse.papyrus.uml.diagram.activity.listeners.InterruptibleEdgeListener">
- <editingDomain
- id="org.eclipse.papyrus.SharedEditingDomainID">
- </editingDomain></listener>
- <listener
- class="org.eclipse.papyrus.uml.diagram.activity.listeners.ExceptionHandlerListener">
- <editingDomain
- id="org.eclipse.papyrus.SharedEditingDomainID">
- </editingDomain>
- </listener>
- <listener
- class="org.eclipse.papyrus.uml.diagram.activity.listeners.InInterruptibleActivityRegionListener">
- <editingDomain
- id="org.eclipse.papyrus.SharedEditingDomainID">
- </editingDomain>
- </listener>
- <listener
- class="org.eclipse.papyrus.uml.diagram.activity.listeners.ObjectNodeListener">
- <editingDomain
- id="org.eclipse.papyrus.SharedEditingDomainID">
- </editingDomain>
- </listener>
- <listener
- class="org.eclipse.papyrus.uml.diagram.activity.listeners.ObjectFlowListener">
- <editingDomain
- id="org.eclipse.papyrus.SharedEditingDomainID">
- </editingDomain>
- </listener>
- </extension>
-
- <extension
- point="org.eclipse.gmf.runtime.diagram.ui.editpartProviders">
- <editpartProvider
- class="org.eclipse.papyrus.uml.diagram.activity.providers.CustomUMLEditPartProvider">
- <Priority
- name="Highest">
- </Priority>
- <object
- class="org.eclipse.gmf.runtime.notation.Diagram"
- id="generated-diagram">
- <method
- name="getType()"
- value="PapyrusUMLActivityDiagram">
- </method>
- </object>
- <object
- class="org.eclipse.gmf.runtime.notation.Node"
- id="generated-nodes">
- <method
- name="getType()">
- </method>
- </object>
- <object
- class="org.eclipse.gmf.runtime.notation.Edge"
- id="generated-links">
- <method
- name="getType()">
- </method>
- </object>
- <object
- class="org.eclipse.gmf.runtime.notation.Node"
- id="generated-labels">
- <method
- name="getType()">
- </method>
- </object>
- <object
- class="org.eclipse.gmf.runtime.notation.Node"
- id="generated-compartments">
- <method
- name="getType()">
- </method>
- </object>
- <context
- views="generated-diagram,generated-nodes,generated-links,generated-labels,generated-compartments">
- </context>
- </editpartProvider>
-</extension>
-
-<extension point="org.eclipse.gmf.runtime.diagram.core.viewProviders" id="view-provider">
- <viewProvider class="org.eclipse.papyrus.uml.diagram.activity.providers.CustomUMLViewProvider">
- <Priority name="Medium"/>
- <context viewClass="org.eclipse.gmf.runtime.notation.Diagram" semanticHints="PapyrusUMLActivityDiagram"/>
- <context viewClass="org.eclipse.gmf.runtime.notation.Node"/>
- <context viewClass="org.eclipse.gmf.runtime.notation.Edge"/>
- </viewProvider>
- </extension>
-
-
- <extension
- point="org.eclipse.ui.commands">
- <command
- description="Synchronize pins and parameters"
- categoryId="org.eclipse.papyrus.editor.category"
- id="org.eclipse.papyrus.uml.diagram.activity.SynchronizePinsParametersCommand"
- name="Synchronize pins and parameters">
- </command>
- </extension>
-
-<extension
- point="org.eclipse.ui.commands">
- <command
- categoryId="org.eclipse.papyrus.editor.category"
- description="Global Synchronize pins and parameters"
- id="org.eclipse.papyrus.uml.diagram.activity.GlobalSynchronizePinsParametersCommand"
- name="Global Synchronize pins and parameters">
- </command>
-</extension>
-
-<extension
- point="org.eclipse.ui.handlers">
- <handler
- class="org.eclipse.papyrus.uml.diagram.activity.handlers.SynchronizePinsParametersHandler"
- commandId="org.eclipse.papyrus.uml.diagram.activity.SynchronizePinsParametersCommand">
- </handler>
- </extension>
-
-<extension
- point="org.eclipse.ui.handlers">
- <handler
- class="org.eclipse.papyrus.uml.diagram.activity.handlers.GlobalSynchronizePinsParametersHandler"
- commandId="org.eclipse.papyrus.uml.diagram.activity.GlobalSynchronizePinsParametersCommand">
- </handler>
-</extension>
-
-<!-- Defnition for seleciton is call action and editor is papyrus -->
- <extension
- point="org.eclipse.core.expressions.definitions">
-
- <definition id="org.eclipse.papyrus.diagram.common.IsCallAction">
- <and>
-
-
- <with variable="selection">
- <test property="org.eclipse.papyrus.UMLCallActionTester.isCallAction" value="true"
- forcePluginActivation="true"/>
- </with>
-
- </and>
- </definition>
- </extension>
-
-<!--Test for selection of a call Action -->
- <extension
- point="org.eclipse.core.expressions.propertyTesters">
- <propertyTester
- class="org.eclipse.papyrus.uml.diagram.activity.testers.UMLCallActionTester"
- id="org.eclipse.papyrus.UMLCallActionTester"
- namespace="org.eclipse.papyrus.UMLCallActionTester"
- properties="isCallAction"
- type="org.eclipse.jface.viewers.ISelection">
- </propertyTester>
- </extension>
-
-<extension
- point="org.eclipse.ui.menus">
-
- <menuContribution locationURI="popup:org.eclipse.gmf.runtime.diagram.ui.DiagramEditorContextMenu?endof=fileMenu"
- allPopups="false">
- <command
- commandId="org.eclipse.papyrus.uml.diagram.activity.SynchronizePinsParametersCommand"
- icon="icons/obj16/RefreshPin.png"
- label="Synchronize pins and parameters"
- mnemonic="Synchronize pins and parameters of the current selection"
- style="push">
- <visibleWhen>
- <and>
-
- <reference
- definitionId="org.eclipse.papyrus.diagram.common.IsCallAction">
- </reference>
-
- </and>
- </visibleWhen>
- </command>
- </menuContribution>
- <menuContribution
- allPopups="false"
- locationURI="popup:org.eclipse.papyrus.views.modelexplorer.modelexplorer.popup">
- <command
- commandId="org.eclipse.papyrus.uml.diagram.activity.SynchronizePinsParametersCommand"
- icon="icons/obj16/RefreshPin.png"
- label="Synchronize pins and parameters"
- mnemonic="Synchronize pins and parameters of the current selection"
- style="push">
- <visibleWhen>
- <and>
- <reference
- definitionId="org.eclipse.papyrus.diagram.common.IsCallAction">
- </reference>
- </and>
- </visibleWhen>
- </command>
- </menuContribution>
-</extension>
-<extension
- point="org.eclipse.ui.views.properties.tabbed.propertyTabs">
- <propertyTabs
- contributorId="TreeOutlinePage">
- <propertyTab
- category="org.eclipse.papyrus"
- id="org.eclipse.papyrus.tabbedproperties.appearance.appearancetab"
- label="Appearance">
- </propertyTab>
- </propertyTabs>
-</extension>
-
-
-
<!-- Specific Edit Helper for Activity Node -->
- <!-- optionally, specify keybindings -->
- <!--specific palette-->
-<extension
- id="Papyrus activity editor Plugin.standard"
- name="Papyrus activity editor Plugin Standard Palette"
- point="org.eclipse.gmf.runtime.diagram.ui.paletteProviders">
-
- <?gmfgen generated="true"?>
- <paletteProvider class="org.eclipse.gmf.runtime.diagram.ui.providers.DefaultPaletteProvider">
- <Priority name="Low"/>
- <contribution
- factoryClass="org.eclipse.papyrus.uml.diagram.activity.part.UMLPaletteFactory">
- <predefinedEntry id="standardGroup/noteStack/noteTool" remove="true"/>
- <predefinedEntry id="standardGroup/noteStack/textTool" remove="true"/>
- <predefinedEntry id="standardGroup/noteStack/noteattachmentTool" remove="true"/>
- <entry
- id="createNodes3Group"
- kind="drawer"
- label="Nodes"
- large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
- path="/"
- small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
- <expand
- force="true">
- </expand>
- </entry>
- <predefinedEntry
- id="createActivity1CreationTool"
- path="/createNodes3Group">
- </predefinedEntry>
- <predefinedEntry
- id="createActivityParameterNode2CreationTool"
- path="/createNodes3Group">
- </predefinedEntry>
- <predefinedEntry
- id="createCentralBufferNode3CreationTool"
- path="/createNodes3Group">
- </predefinedEntry>
- <predefinedEntry
- id="createDataStoreNode4CreationTool"
- path="/createNodes3Group">
- </predefinedEntry>
- <predefinedEntry
- id="createComment5CreationTool"
- path="/createNodes3Group">
- </predefinedEntry>
- <entry
- description="ActivityGroup"
- id="createActivityGroupGroup"
- kind="stack"
- label="ActivityGroup"
- large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
- path="/createNodes3Group"
- small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
- <expand
- force="true">
- </expand>
- </entry>
-
- <predefinedEntry
- id="createActivityPartition1CreationTool"
- path="/createNodes3Group/createActivityGroupGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createInterruptibleActivityRegion2CreationTool"
- path="/createNodes3Group/createActivityGroupGroup">
- </predefinedEntry>
-
- <entry
- description="ControlNodes"
- id="createControlNodesGroup"
- kind="stack"
- label="ControlNodes"
- large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
- path="/createNodes3Group"
- small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
- <expand
- force="true">
- </expand>
- </entry>
-
- <predefinedEntry
- id="createInitialnode1CreationTool"
- path="/createNodes3Group/createControlNodesGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createActivityfinal2CreationTool"
- path="/createNodes3Group/createControlNodesGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createFlowfinal3CreationTool"
- path="/createNodes3Group/createControlNodesGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createDecisionnode4CreationTool"
- path="/createNodes3Group/createControlNodesGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createMergenode5CreationTool"
- path="/createNodes3Group/createControlNodesGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createJoinnode6CreationTool"
- path="/createNodes3Group/createControlNodesGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createForknode7CreationTool"
- path="/createNodes3Group/createControlNodesGroup">
- </predefinedEntry>
-
-
-
- <entry
- description=""
- id="createEdges4Group"
- kind="drawer"
- label="Edges"
- large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
- path="/"
- small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
- <expand
- force="true">
- </expand>
- </entry>
-
- <predefinedEntry
- id="createControlFlow1CreationTool"
- path="/createEdges4Group">
- </predefinedEntry>
- <predefinedEntry
- id="createExceptionHandler2CreationTool"
- path="/createEdges4Group">
- </predefinedEntry>
- <predefinedEntry
- id="createObjectFlow3CreationTool"
- path="/createEdges4Group">
- </predefinedEntry>
- <predefinedEntry
- id="createLink4CreationTool"
- path="/createEdges4Group">
- </predefinedEntry>
-
- <entry
- description="Constraints"
- id="createConstraintsGroup"
- kind="stack"
- label="Constraints"
- large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
- path="/createNodes3Group"
- small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
- <expand
- force="false">
- </expand>
- </entry>
- <entry
- description="Pins"
- id="createPinsGroup"
- kind="stack"
- label="Pins"
- large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
- path="/createNodes3Group"
- small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
- <expand
- force="true">
- </expand>
- </entry>
-
- <predefinedEntry
- id="createOutputPin1CreationTool"
- path="/createNodes3Group/createPinsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createInputPin2CreationTool"
- path="/createNodes3Group/createPinsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createActionInputPin3CreationTool"
- path="/createNodes3Group/createPinsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createValuePin4CreationTool"
- path="/createNodes3Group/createPinsGroup">
- </predefinedEntry>
-
- <entry
- description="ExpansionRegions"
- id="createExpansionRegionsGroup"
- kind="stack"
- label="ExpansionRegions"
- large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
- path="/createNodes3Group"
- small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
- <expand
- force="true">
- </expand>
- </entry>
-
- <predefinedEntry
- id="createExpansionRegion1CreationTool"
- path="/createNodes3Group/createExpansionRegionsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createInputExpansionNode2CreationTool"
- path="/createNodes3Group/createExpansionRegionsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createOutputExpansionNode3CreationTool"
- path="/createNodes3Group/createExpansionRegionsGroup">
- </predefinedEntry>
-
- <entry
- description="InvocationActions"
- id="InvocationActionsGroup"
- kind="stack"
- label="InvocationActions"
- large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
- path="/createNodes3Group"
- small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
- <expand
- force="true">
- </expand>
- </entry>
-
- <predefinedEntry
- id="createBroadcastSignalAction1CreationTool"
- path="/createNodes3Group/InvocationActionsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createCallBehaviorAction2CreationTool"
- path="/createNodes3Group/InvocationActionsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createCallOperationAction3CreationTool"
- path="/createNodes3Group/InvocationActionsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createSendObjectAction4CreationTool"
- path="/createNodes3Group/InvocationActionsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createSendSignalAction5CreationTool"
- path="/createNodes3Group/InvocationActionsGroup">
- </predefinedEntry>
-
- <entry
- description="ObjectActions"
- id="createObjectActionsGroup"
- kind="stack"
- label="ObjectActions"
- large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
- path="/createNodes3Group"
- small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
- <expand
- force="true">
- </expand>
- </entry>
-
- <predefinedEntry
- id="createCreateObjectAction1CreationTool"
- path="/createNodes3Group/createObjectActionsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createDestroyObjectAction2CreationTool"
- path="/createNodes3Group/createObjectActionsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createReadSelfAction3CreationTool"
- path="/createNodes3Group/createObjectActionsGroup">
- </predefinedEntry>
-
- <entry
- description="StructuredActions"
- id="createStructuredActionsGroup"
- kind="stack"
- label="StructuredActions"
- large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
- path="/createNodes3Group"
- small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
- <expand
- force="true">
- </expand>
- </entry>
-
- <predefinedEntry
- id="createStructuredActivityNode1CreationTool"
- path="/createNodes3Group/createStructuredActionsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createLoopNode2CreationTool"
- path="/createNodes3Group/createStructuredActionsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createSequenceNode3CreationTool"
- path="/createNodes3Group/createStructuredActionsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createConditionalNode4CreationTool"
- path="/createNodes3Group/createStructuredActionsGroup">
- </predefinedEntry>
-
- <entry
- description="StructuralFeatureActions"
- id="createStructuralFeatureActionsGroup"
- kind="stack"
- label="StructuralFeatureActions"
- large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
- path="/createNodes3Group"
- small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
- <expand
- force="true">
- </expand>
- </entry>
-
- <predefinedEntry
- id="createReadStructuralFeatureAction1CreationTool"
- path="/createNodes3Group/createStructuralFeatureActionsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createAddStructuralFeatureValueAction2CreationTool"
- path="/createNodes3Group/createStructuralFeatureActionsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createAddStructuralFeatureValueAction3CreationTool"
- path="/createNodes3Group/createStructuralFeatureActionsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createReadStructuralFeatureAction4CreationTool"
- path="/createNodes3Group/createStructuralFeatureActionsGroup">
- </predefinedEntry>
-
- <entry
- description="VariableActions"
- id="createVariableActionsGroup"
- kind="stack"
- label="VariableActions"
- large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
- path="/createNodes3Group"
- small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
- <expand
- force="true">
- </expand>
- </entry>
-
- <predefinedEntry
- id="createAddVariableValueAction1CreationTool"
- path="/createNodes3Group/createVariableActionsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createReadVariableAction2CreationTool"
- path="/createNodes3Group/createVariableActionsGroup">
- </predefinedEntry>
-
- <entry
- description="MiscellaneousActions"
- id="createOtherActionsGroup"
- kind="stack"
- label="MiscellaneousActions"
- large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
- path="/createNodes3Group"
- small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
- <expand
- force="true">
- </expand>
- </entry>
-
- <predefinedEntry
- id="createOpaqueAction1CreationTool"
- path="/createNodes3Group/createOtherActionsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createValueSpecificationAction2CreationTool"
- path="/createNodes3Group/createOtherActionsGroup">
- </predefinedEntry>
-
- <entry
- description="AcceptEventActions"
- id="createAcceptEventActions14Group"
- kind="stack"
- label="AcceptEventActions"
- large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
- path="/createNodes3Group"
- small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
- <expand
- force="true">
- </expand>
- </entry>
-
- <predefinedEntry
- id="createAcceptEventAction1CreationTool"
- path="/createNodes3Group/createAcceptEventActions14Group">
- </predefinedEntry>
- <predefinedEntry
- id="createConstraint6CreationTool"
- path="/createNodes3Group/createConstraintsGroup">
- </predefinedEntry>
-
- <predefinedEntry
- id="createLocalPreconditionConstraint1CreationTool"
- path="/createNodes3Group/createConstraintsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createLocalPreconditionInteractionConstraint2CreationTool"
- path="/createNodes3Group/createConstraintsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createLocalPreconditionIntervalConstraint3CreationTool"
- path="/createNodes3Group/createConstraintsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createLocalPreconditionDurationConstraint4CreationTool"
- path="/createNodes3Group/createConstraintsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createLocalPreconditionTimeConstraint5CreationTool"
- path="/createNodes3Group/createConstraintsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createLocalPostconditionConstraint6CreationTool"
- path="/createNodes3Group/createConstraintsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createLocalPostconditionInteractionConstraint7CreationTool"
- path="/createNodes3Group/createConstraintsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createLocalPostconditionIntervalConstraint8CreationTool"
- path="/createNodes3Group/createConstraintsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createLocalPostconditionDurationConstraint9CreationTool"
- path="/createNodes3Group/createConstraintsGroup">
- </predefinedEntry>
- <predefinedEntry
- id="createLocalPostconditionTimeConstraint10CreationTool"
- path="/createNodes3Group/createConstraintsGroup">
- </predefinedEntry>
-
-
-
-
- </contribution>
- <editor id="org.eclipse.papyrus.uml.diagram.activity"/>
- </paletteProvider>
-
- </extension>
-
-
- <!-- Diagram specific advices -->
-<extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypes">
-
- <metamodel nsURI="http://www.eclipse.org/uml2/4.0.0/UML">
-
- <!-- specific advices (pop up on creation) -->
- <adviceBinding id="org.eclipse.papyrus.uml.diagram.activity.edit.advices.CallBehaviorActionEditHelperAdvice" class="org.eclipse.papyrus.uml.diagram.activity.edit.advices.CallBehaviorActionEditHelperAdvice" inheritance="none" typeId="org.eclipse.papyrus.uml.diagram.activity.CallBehaviorAction_3008"/>
- <adviceBinding id="org.eclipse.papyrus.uml.diagram.activity.edit.advices.CallOperationActionEditHelperAdvice" class="org.eclipse.papyrus.uml.diagram.activity.edit.advices.CallOperationActionEditHelperAdvice" inheritance="all" typeId="org.eclipse.papyrus.uml.diagram.activity.CallOperationAction_3010"/>
- <adviceBinding id="org.eclipse.papyrus.uml.diagram.activity.edit.advices.SendSignalActionEditHelperAdvice" class="org.eclipse.papyrus.uml.diagram.activity.edit.advices.SendSignalActionEditHelperAdvice" inheritance="all" typeId="org.eclipse.papyrus.uml.diagram.activity.SendSignalAction_3052"/>
-
- </metamodel>
-</extension>
-
-<!-- UML ElementType bindings to Papyrus shared IClientContext -->
-<extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypeBindings">
-
- <!-- Bindings declaration to shared IClientContext -->
- <binding context="org.eclipse.papyrus.infra.services.edit.TypeContext">
- <elementType ref="org.eclipse.papyrus.uml.diagram.activity.edit.advices.CallBehaviorActionEditHelperAdvice"></elementType>
- <elementType ref="org.eclipse.papyrus.uml.diagram.activity.edit.advices.CallOperationActionEditHelperAdvice"></elementType>
- <elementType ref="org.eclipse.papyrus.uml.diagram.activity.edit.advices.SendSignalActionEditHelperAdvice"></elementType>
- </binding>
-
-</extension>
-<extension point="org.eclipse.papyrus.infra.gmfdiag.common.notationTypesMapping">
- <diagramMappings diagramID="PapyrusUMLActivityDiagram">
- <mapping type="PapyrusUMLActivityDiagram" humanReadableType="ActivityDiagram"/>
-
- <mapping
- humanReadableType="ActivityFigureParameter"
- type="7001">
- </mapping>
-
- <mapping
- humanReadableType="ActivityFigurePrecondition"
- type="7002">
- </mapping>
-
- <mapping
- humanReadableType="ActivityFigurePostCondtion"
- type="7003">
- </mapping>
-
- <mapping
- humanReadableType="ActivityFigureContent"
- type="7004">
- </mapping>
-
- <mapping
- humanReadableType="StructuredActivityNodeContent"
- type="7008">
- </mapping>
-
- <mapping
- humanReadableType="StructuredActivityNodeContent"
- type="7009">
- </mapping>
-
- <mapping
- humanReadableType="StructuredActivityNodeContent"
- type="7010">
- </mapping>
-
- <mapping
- humanReadableType="StructuredActivityNodeContent"
- type="7012">
- </mapping>
-
- <mapping
- humanReadableType="StructuredActivityNodeContent"
- type="7005">
- </mapping>
-
- <mapping
- humanReadableType="ActivityPartitionContent"
- type="7006">
- </mapping>
-
- <mapping
- humanReadableType="InterruptibleActivityRegionContent"
- type="7007">
- </mapping>
-
- <mapping
- humanReadableType="ActivityFigureParameter"
- type="7014">
- </mapping>
-
- <mapping
- humanReadableType="ActivityFigurePrecondition"
- type="7015">
- </mapping>
-
- <mapping
- humanReadableType="ActivityFigurePostCondtion"
- type="7016">
- </mapping>
-
- <mapping
- humanReadableType="ActivityFigureContent"
- type="7013">
- </mapping>
-
-
-
-
-
-
-
- <mapping
- humanReadableType="Name"
- type="6001">
- </mapping>
-
- <mapping
- humanReadableType="Weight"
- type="6002">
- </mapping>
-
- <mapping
- humanReadableType="Selection"
- type="6005">
- </mapping>
-
- <mapping
- humanReadableType="Transformation"
- type="6006">
- </mapping>
-
- <mapping
- humanReadableType="DecisionInputFlow"
- type="6007">
- </mapping>
-
- <mapping
- humanReadableType="Guard"
- type="6008">
- </mapping>
-
- <mapping
- humanReadableType="Stereotype"
- type="6010">
- </mapping>
-
-
-
- <mapping
- humanReadableType="Name"
- type="6003">
- </mapping>
-
- <mapping
- humanReadableType="Weight"
- type="6004">
- </mapping>
-
- <mapping
- humanReadableType="Guard"
- type="6009">
- </mapping>
-
- <mapping
- humanReadableType="Stereotype"
- type="6011">
- </mapping>
-
-
-
-
-
-
-
-
- </diagramMappings>
- </extension>
-</plugin>
+ <!-- optionally, specify keybindings -->
+ <!--specific palette-->
+<extension
+ id="Papyrus activity editor Plugin.standard"
+ name="Papyrus activity editor Plugin Standard Palette"
+ point="org.eclipse.gmf.runtime.diagram.ui.paletteProviders">
+
+ <?gmfgen generated="true"?>
+ <paletteProvider class="org.eclipse.gmf.runtime.diagram.ui.providers.DefaultPaletteProvider">
+ <Priority name="Low"/>
+ <contribution
+ factoryClass="org.eclipse.papyrus.uml.diagram.activity.part.UMLPaletteFactory">
+ <predefinedEntry id="standardGroup/noteStack/noteTool" remove="true"/>
+ <predefinedEntry id="standardGroup/noteStack/textTool" remove="true"/>
+ <predefinedEntry id="standardGroup/noteStack/noteattachmentTool" remove="true"/>
+ <entry
+ id="createNodes3Group"
+ kind="drawer"
+ label="Nodes"
+ large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
+ path="/"
+ small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
+ <expand
+ force="true">
+ </expand>
+ </entry>
+ <predefinedEntry
+ id="createActivity1CreationTool"
+ path="/createNodes3Group">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createActivityParameterNode2CreationTool"
+ path="/createNodes3Group">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createCentralBufferNode3CreationTool"
+ path="/createNodes3Group">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createDataStoreNode4CreationTool"
+ path="/createNodes3Group">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createComment5CreationTool"
+ path="/createNodes3Group">
+ </predefinedEntry>
+ <entry
+ description="ActivityGroup"
+ id="createActivityGroupGroup"
+ kind="stack"
+ label="ActivityGroup"
+ large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
+ path="/createNodes3Group"
+ small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
+ <expand
+ force="true">
+ </expand>
+ </entry>
+
+ <predefinedEntry
+ id="createActivityPartition1CreationTool"
+ path="/createNodes3Group/createActivityGroupGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createInterruptibleActivityRegion2CreationTool"
+ path="/createNodes3Group/createActivityGroupGroup">
+ </predefinedEntry>
+
+ <entry
+ description="ControlNodes"
+ id="createControlNodesGroup"
+ kind="stack"
+ label="ControlNodes"
+ large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
+ path="/createNodes3Group"
+ small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
+ <expand
+ force="true">
+ </expand>
+ </entry>
+
+ <predefinedEntry
+ id="createInitialnode1CreationTool"
+ path="/createNodes3Group/createControlNodesGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createActivityfinal2CreationTool"
+ path="/createNodes3Group/createControlNodesGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createFlowfinal3CreationTool"
+ path="/createNodes3Group/createControlNodesGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createDecisionnode4CreationTool"
+ path="/createNodes3Group/createControlNodesGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createMergenode5CreationTool"
+ path="/createNodes3Group/createControlNodesGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createJoinnode6CreationTool"
+ path="/createNodes3Group/createControlNodesGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createForknode7CreationTool"
+ path="/createNodes3Group/createControlNodesGroup">
+ </predefinedEntry>
+
+
+
+ <entry
+ description=""
+ id="createEdges4Group"
+ kind="drawer"
+ label="Edges"
+ large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
+ path="/"
+ small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
+ <expand
+ force="true">
+ </expand>
+ </entry>
+
+ <predefinedEntry
+ id="createControlFlow1CreationTool"
+ path="/createEdges4Group">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createExceptionHandler2CreationTool"
+ path="/createEdges4Group">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createObjectFlow3CreationTool"
+ path="/createEdges4Group">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createLink4CreationTool"
+ path="/createEdges4Group">
+ </predefinedEntry>
+
+ <entry
+ description="Constraints"
+ id="createConstraintsGroup"
+ kind="stack"
+ label="Constraints"
+ large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
+ path="/createNodes3Group"
+ small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
+ <expand
+ force="false">
+ </expand>
+ </entry>
+ <entry
+ description="Pins"
+ id="createPinsGroup"
+ kind="stack"
+ label="Pins"
+ large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
+ path="/createNodes3Group"
+ small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
+ <expand
+ force="true">
+ </expand>
+ </entry>
+
+ <predefinedEntry
+ id="createOutputPin1CreationTool"
+ path="/createNodes3Group/createPinsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createInputPin2CreationTool"
+ path="/createNodes3Group/createPinsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createActionInputPin3CreationTool"
+ path="/createNodes3Group/createPinsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createValuePin4CreationTool"
+ path="/createNodes3Group/createPinsGroup">
+ </predefinedEntry>
+
+ <entry
+ description="ExpansionRegions"
+ id="createExpansionRegionsGroup"
+ kind="stack"
+ label="ExpansionRegions"
+ large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
+ path="/createNodes3Group"
+ small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
+ <expand
+ force="true">
+ </expand>
+ </entry>
+
+ <predefinedEntry
+ id="createExpansionRegion1CreationTool"
+ path="/createNodes3Group/createExpansionRegionsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createInputExpansionNode2CreationTool"
+ path="/createNodes3Group/createExpansionRegionsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createOutputExpansionNode3CreationTool"
+ path="/createNodes3Group/createExpansionRegionsGroup">
+ </predefinedEntry>
+
+ <entry
+ description="InvocationActions"
+ id="InvocationActionsGroup"
+ kind="stack"
+ label="InvocationActions"
+ large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
+ path="/createNodes3Group"
+ small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
+ <expand
+ force="true">
+ </expand>
+ </entry>
+
+ <predefinedEntry
+ id="createBroadcastSignalAction1CreationTool"
+ path="/createNodes3Group/InvocationActionsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createCallBehaviorAction2CreationTool"
+ path="/createNodes3Group/InvocationActionsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createCallOperationAction3CreationTool"
+ path="/createNodes3Group/InvocationActionsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createSendObjectAction4CreationTool"
+ path="/createNodes3Group/InvocationActionsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createSendSignalAction5CreationTool"
+ path="/createNodes3Group/InvocationActionsGroup">
+ </predefinedEntry>
+
+ <entry
+ description="ObjectActions"
+ id="createObjectActionsGroup"
+ kind="stack"
+ label="ObjectActions"
+ large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
+ path="/createNodes3Group"
+ small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
+ <expand
+ force="true">
+ </expand>
+ </entry>
+
+ <predefinedEntry
+ id="createCreateObjectAction1CreationTool"
+ path="/createNodes3Group/createObjectActionsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createDestroyObjectAction2CreationTool"
+ path="/createNodes3Group/createObjectActionsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createReadSelfAction3CreationTool"
+ path="/createNodes3Group/createObjectActionsGroup">
+ </predefinedEntry>
+
+ <entry
+ description="StructuredActions"
+ id="createStructuredActionsGroup"
+ kind="stack"
+ label="StructuredActions"
+ large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
+ path="/createNodes3Group"
+ small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
+ <expand
+ force="true">
+ </expand>
+ </entry>
+
+ <predefinedEntry
+ id="createStructuredActivityNode1CreationTool"
+ path="/createNodes3Group/createStructuredActionsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createLoopNode2CreationTool"
+ path="/createNodes3Group/createStructuredActionsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createSequenceNode3CreationTool"
+ path="/createNodes3Group/createStructuredActionsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createConditionalNode4CreationTool"
+ path="/createNodes3Group/createStructuredActionsGroup">
+ </predefinedEntry>
+
+ <entry
+ description="StructuralFeatureActions"
+ id="createStructuralFeatureActionsGroup"
+ kind="stack"
+ label="StructuralFeatureActions"
+ large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
+ path="/createNodes3Group"
+ small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
+ <expand
+ force="true">
+ </expand>
+ </entry>
+
+ <predefinedEntry
+ id="createReadStructuralFeatureAction1CreationTool"
+ path="/createNodes3Group/createStructuralFeatureActionsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createAddStructuralFeatureValueAction2CreationTool"
+ path="/createNodes3Group/createStructuralFeatureActionsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createAddStructuralFeatureValueAction3CreationTool"
+ path="/createNodes3Group/createStructuralFeatureActionsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createReadStructuralFeatureAction4CreationTool"
+ path="/createNodes3Group/createStructuralFeatureActionsGroup">
+ </predefinedEntry>
+
+ <entry
+ description="VariableActions"
+ id="createVariableActionsGroup"
+ kind="stack"
+ label="VariableActions"
+ large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
+ path="/createNodes3Group"
+ small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
+ <expand
+ force="true">
+ </expand>
+ </entry>
+
+ <predefinedEntry
+ id="createAddVariableValueAction1CreationTool"
+ path="/createNodes3Group/createVariableActionsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createReadVariableAction2CreationTool"
+ path="/createNodes3Group/createVariableActionsGroup">
+ </predefinedEntry>
+
+ <entry
+ description="MiscellaneousActions"
+ id="createOtherActionsGroup"
+ kind="stack"
+ label="MiscellaneousActions"
+ large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
+ path="/createNodes3Group"
+ small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
+ <expand
+ force="true">
+ </expand>
+ </entry>
+
+ <predefinedEntry
+ id="createOpaqueAction1CreationTool"
+ path="/createNodes3Group/createOtherActionsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createValueSpecificationAction2CreationTool"
+ path="/createNodes3Group/createOtherActionsGroup">
+ </predefinedEntry>
+
+ <entry
+ description="AcceptEventActions"
+ id="createAcceptEventActions14Group"
+ kind="stack"
+ label="AcceptEventActions"
+ large_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif"
+ path="/createNodes3Group"
+ small_icon="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
+ <expand
+ force="true">
+ </expand>
+ </entry>
+
+ <predefinedEntry
+ id="createAcceptEventAction1CreationTool"
+ path="/createNodes3Group/createAcceptEventActions14Group">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createConstraint6CreationTool"
+ path="/createNodes3Group/createConstraintsGroup">
+ </predefinedEntry>
+
+ <predefinedEntry
+ id="createLocalPreconditionConstraint1CreationTool"
+ path="/createNodes3Group/createConstraintsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createLocalPreconditionInteractionConstraint2CreationTool"
+ path="/createNodes3Group/createConstraintsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createLocalPreconditionIntervalConstraint3CreationTool"
+ path="/createNodes3Group/createConstraintsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createLocalPreconditionDurationConstraint4CreationTool"
+ path="/createNodes3Group/createConstraintsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createLocalPreconditionTimeConstraint5CreationTool"
+ path="/createNodes3Group/createConstraintsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createLocalPostconditionConstraint6CreationTool"
+ path="/createNodes3Group/createConstraintsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createLocalPostconditionInteractionConstraint7CreationTool"
+ path="/createNodes3Group/createConstraintsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createLocalPostconditionIntervalConstraint8CreationTool"
+ path="/createNodes3Group/createConstraintsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createLocalPostconditionDurationConstraint9CreationTool"
+ path="/createNodes3Group/createConstraintsGroup">
+ </predefinedEntry>
+ <predefinedEntry
+ id="createLocalPostconditionTimeConstraint10CreationTool"
+ path="/createNodes3Group/createConstraintsGroup">
+ </predefinedEntry>
+
+
+
+
+ </contribution>
+ <editor id="org.eclipse.papyrus.uml.diagram.activity"/>
+ </paletteProvider>
+
+ </extension>
+
+
+ <!-- Diagram specific advices -->
+<extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypes">
+
+ <metamodel nsURI="http://www.eclipse.org/uml2/4.0.0/UML">
+
+ <!-- specific advices (pop up on creation) -->
+ <adviceBinding id="org.eclipse.papyrus.uml.diagram.activity.edit.advices.CallBehaviorActionEditHelperAdvice" class="org.eclipse.papyrus.uml.diagram.activity.edit.advices.CallBehaviorActionEditHelperAdvice" inheritance="none" typeId="org.eclipse.papyrus.uml.diagram.activity.CallBehaviorAction_3008"/>
+ <adviceBinding id="org.eclipse.papyrus.uml.diagram.activity.edit.advices.CallOperationActionEditHelperAdvice" class="org.eclipse.papyrus.uml.diagram.activity.edit.advices.CallOperationActionEditHelperAdvice" inheritance="all" typeId="org.eclipse.papyrus.uml.diagram.activity.CallOperationAction_3010"/>
+ <adviceBinding id="org.eclipse.papyrus.uml.diagram.activity.edit.advices.SendSignalActionEditHelperAdvice" class="org.eclipse.papyrus.uml.diagram.activity.edit.advices.SendSignalActionEditHelperAdvice" inheritance="all" typeId="org.eclipse.papyrus.uml.diagram.activity.SendSignalAction_3052"/>
+
+ </metamodel>
+</extension>
+
+<extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypes">
+ <metamodel nsURI="http://www.eclipse.org/uml2/4.0.0/UML">
+ <!-- specific advices - expansion region as in or out -->
+ <adviceBinding id="org.eclipse.papyrus.uml.diagram.activity.edit.advices.ExpansionNodeAsInputElementEditHelperAdvice" class="org.eclipse.papyrus.uml.diagram.activity.edit.advices.ExpansionNodeAsInputElementEditHelperAdvice" inheritance="none" typeId="org.eclipse.papyrus.uml.diagram.activity.ExpansionNode_3074"/>
+ <adviceBinding id="org.eclipse.papyrus.uml.diagram.activity.edit.advices.ExpansionNodeAsOutputElementEditHelperAdvice" class="org.eclipse.papyrus.uml.diagram.activity.edit.advices.ExpansionNodeAsOutputElementEditHelperAdvice" inheritance="none" typeId="org.eclipse.papyrus.uml.diagram.activity.ExpansionNode_3075"/>
+ </metamodel>
+</extension>
+
+<!-- UML ElementType bindings to Papyrus shared IClientContext -->
+<extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypeBindings">
+
+ <!-- Bindings declaration to shared IClientContext -->
+ <binding context="org.eclipse.papyrus.infra.services.edit.TypeContext">
+ <elementType ref="org.eclipse.papyrus.uml.diagram.activity.edit.advices.ExpansionNodeAsInputElementEditHelperAdvice"></elementType>
+ <elementType ref="org.eclipse.papyrus.uml.diagram.activity.edit.advices.ExpansionNodeAsOutputElementEditHelperAdvice"></elementType>
+ </binding>
+
+</extension>
+
+<!-- UML ElementType bindings to Papyrus shared IClientContext -->
+<extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypeBindings">
+
+ <!-- Bindings declaration to shared IClientContext -->
+ <binding context="org.eclipse.papyrus.infra.services.edit.TypeContext">
+ <elementType ref="org.eclipse.papyrus.uml.diagram.activity.edit.advices.CallBehaviorActionEditHelperAdvice"></elementType>
+ <elementType ref="org.eclipse.papyrus.uml.diagram.activity.edit.advices.CallOperationActionEditHelperAdvice"></elementType>
+ <elementType ref="org.eclipse.papyrus.uml.diagram.activity.edit.advices.SendSignalActionEditHelperAdvice"></elementType>
+ </binding>
+
+</extension>
+<extension point="org.eclipse.papyrus.infra.gmfdiag.common.notationTypesMapping">
+ <diagramMappings diagramID="PapyrusUMLActivityDiagram">
+ <mapping type="PapyrusUMLActivityDiagram" humanReadableType="ActivityDiagram"/>
+
+ <mapping
+ humanReadableType="ActivityFigureParameter"
+ type="7001">
+ </mapping>
+
+ <mapping
+ humanReadableType="ActivityFigurePrecondition"
+ type="7002">
+ </mapping>
+
+ <mapping
+ humanReadableType="ActivityFigurePostCondtion"
+ type="7003">
+ </mapping>
+
+ <mapping
+ humanReadableType="ActivityFigureContent"
+ type="7004">
+ </mapping>
+
+ <mapping
+ humanReadableType="StructuredActivityNodeContent"
+ type="7008">
+ </mapping>
+
+ <mapping
+ humanReadableType="StructuredActivityNodeContent"
+ type="7009">
+ </mapping>
+
+ <mapping
+ humanReadableType="StructuredActivityNodeContent"
+ type="7010">
+ </mapping>
+
+ <mapping
+ humanReadableType="StructuredActivityNodeContent"
+ type="7012">
+ </mapping>
+
+ <mapping
+ humanReadableType="StructuredActivityNodeContent"
+ type="7005">
+ </mapping>
+
+ <mapping
+ humanReadableType="ActivityPartitionContent"
+ type="7006">
+ </mapping>
+
+ <mapping
+ humanReadableType="InterruptibleActivityRegionContent"
+ type="7007">
+ </mapping>
+
+ <mapping
+ humanReadableType="ActivityFigureParameter"
+ type="7014">
+ </mapping>
+
+ <mapping
+ humanReadableType="ActivityFigurePrecondition"
+ type="7015">
+ </mapping>
+
+ <mapping
+ humanReadableType="ActivityFigurePostCondtion"
+ type="7016">
+ </mapping>
+
+ <mapping
+ humanReadableType="ActivityFigureContent"
+ type="7013">
+ </mapping>
+
+
+
+
+
+
+
+ <mapping
+ humanReadableType="Name"
+ type="6001">
+ </mapping>
+
+ <mapping
+ humanReadableType="Weight"
+ type="6002">
+ </mapping>
+
+ <mapping
+ humanReadableType="Selection"
+ type="6005">
+ </mapping>
+
+ <mapping
+ humanReadableType="Transformation"
+ type="6006">
+ </mapping>
+
+ <mapping
+ humanReadableType="DecisionInputFlow"
+ type="6007">
+ </mapping>
+
+ <mapping
+ humanReadableType="Guard"
+ type="6008">
+ </mapping>
+
+ <mapping
+ humanReadableType="Stereotype"
+ type="6010">
+ </mapping>
+
+
+
+ <mapping
+ humanReadableType="Name"
+ type="6003">
+ </mapping>
+
+ <mapping
+ humanReadableType="Weight"
+ type="6004">
+ </mapping>
+
+ <mapping
+ humanReadableType="Guard"
+ type="6009">
+ </mapping>
+
+ <mapping
+ humanReadableType="Stereotype"
+ type="6011">
+ </mapping>
+
+
+
+
+
+
+
+
+ </diagramMappings>
+ </extension>
+</plugin>
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/src/org/eclipse/papyrus/uml/diagram/activity/edit/parts/ExpansionRegionEditPart.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/src/org/eclipse/papyrus/uml/diagram/activity/edit/parts/ExpansionRegionEditPart.java
index c6ccd961179..25bdeb904a2 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/src/org/eclipse/papyrus/uml/diagram/activity/edit/parts/ExpansionRegionEditPart.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/src/org/eclipse/papyrus/uml/diagram/activity/edit/parts/ExpansionRegionEditPart.java
@@ -1,1482 +1,1483 @@
-/*****************************************************************************
- * Copyright (c) 2010 Atos Origin.
- *
- *
- * 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:
- * Atos Origin - Initial API and implementation
- *
- *****************************************************************************/
-package org.eclipse.papyrus.uml.diagram.activity.edit.parts;
-
-import java.util.ArrayList;
-import java.util.LinkedList;
-import java.util.List;
-
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.PositionConstants;
-import org.eclipse.draw2d.Shape;
-import org.eclipse.draw2d.StackLayout;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.EditPolicy;
-import org.eclipse.gef.Request;
-import org.eclipse.gef.commands.Command;
-import org.eclipse.gef.editpolicies.LayoutEditPolicy;
-import org.eclipse.gef.editpolicies.NonResizableEditPolicy;
-import org.eclipse.gef.requests.CreateRequest;
-import org.eclipse.gmf.runtime.diagram.ui.editparts.IBorderItemEditPart;
-import org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart;
-import org.eclipse.gmf.runtime.diagram.ui.editpolicies.DragDropEditPolicy;
-import org.eclipse.gmf.runtime.diagram.ui.editpolicies.EditPolicyRoles;
-import org.eclipse.gmf.runtime.diagram.ui.figures.IBorderItemLocator;
-import org.eclipse.gmf.runtime.draw2d.ui.figures.ConstrainedToolbarLayout;
-import org.eclipse.gmf.runtime.draw2d.ui.figures.FigureUtilities;
-import org.eclipse.gmf.runtime.emf.type.core.IElementType;
-import org.eclipse.gmf.runtime.gef.ui.figures.DefaultSizeNodeFigure;
-import org.eclipse.gmf.runtime.gef.ui.figures.NodeFigure;
-import org.eclipse.gmf.runtime.notation.NotationPackage;
-import org.eclipse.gmf.runtime.notation.View;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.preference.PreferenceConverter;
-import org.eclipse.papyrus.infra.gmfdiag.preferences.utils.GradientPreferenceConverter;
-import org.eclipse.papyrus.infra.gmfdiag.common.preferences.PreferencesConstantsHelper;
-import org.eclipse.papyrus.uml.diagram.activity.draw2d.StructuredActivityNodeFigure;
-import org.eclipse.papyrus.uml.diagram.activity.edit.policies.ExpansionRegionItemSemanticEditPolicy;
-import org.eclipse.papyrus.uml.diagram.activity.edit.policies.OpenDiagramEditPolicy;
-import org.eclipse.papyrus.uml.diagram.activity.locator.ExpansionNodePositionLocator;
-import org.eclipse.papyrus.uml.diagram.activity.part.UMLDiagramEditorPlugin;
-import org.eclipse.papyrus.uml.diagram.activity.part.UMLVisualIDRegistry;
-import org.eclipse.papyrus.uml.diagram.activity.providers.UMLElementTypes;
-import org.eclipse.papyrus.uml.diagram.common.editparts.UMLNodeEditPart;
-import org.eclipse.papyrus.uml.diagram.common.editpolicies.AppliedStereotypeLabelDisplayEditPolicy;
-import org.eclipse.papyrus.uml.diagram.common.editpolicies.AppliedStereotypeNodeLabelDisplayEditPolicy;
-import org.eclipse.papyrus.uml.diagram.common.editpolicies.BorderItemResizableEditPolicy;
-import org.eclipse.papyrus.uml.diagram.common.editpolicies.PapyrusCreationEditPolicy;
-import org.eclipse.papyrus.uml.diagram.common.editpolicies.ShowHideCompartmentEditPolicy;
-import org.eclipse.papyrus.uml.diagram.common.helper.PreferenceInitializerForElementHelper;
-import org.eclipse.swt.graphics.Color;
-
-/**
- * @generated
- */
-public class ExpansionRegionEditPart extends UMLNodeEditPart {
-
- /**
- * @generated
- */
- public static final int VISUAL_ID = 3070;
-
- /**
- * @generated
- */
- protected IFigure contentPane;
-
- /**
- * @generated
- */
- protected IFigure primaryShape;
-
- /**
- * @generated
- */
- public ExpansionRegionEditPart(View view) {
- super(view);
- }
-
- /**
- * @generated
- */
- protected void createDefaultEditPolicies() {
- installEditPolicy(EditPolicyRoles.CREATION_ROLE, new PapyrusCreationEditPolicy());
- super.createDefaultEditPolicies();
- installEditPolicy(EditPolicyRoles.SEMANTIC_ROLE, new ExpansionRegionItemSemanticEditPolicy());
- installEditPolicy(EditPolicyRoles.DRAG_DROP_ROLE, new DragDropEditPolicy());
- //in Papyrus diagrams are not strongly synchronised
- //installEditPolicy(org.eclipse.gmf.runtime.diagram.ui.editpolicies.EditPolicyRoles.CANONICAL_ROLE, new org.eclipse.papyrus.uml.diagram.activity.edit.policies.ExpansionRegionCanonicalEditPolicy());
- installEditPolicy(EditPolicy.LAYOUT_ROLE, createLayoutEditPolicy());
- installEditPolicy(EditPolicyRoles.OPEN_ROLE, new OpenDiagramEditPolicy());
- installEditPolicy(ShowHideCompartmentEditPolicy.SHOW_HIDE_COMPARTMENT_POLICY, new ShowHideCompartmentEditPolicy());
- installEditPolicy(AppliedStereotypeLabelDisplayEditPolicy.STEREOTYPE_LABEL_POLICY, new AppliedStereotypeNodeLabelDisplayEditPolicy());
- // XXX need an SCR to runtime to have another abstract superclass that would let children add reasonable editpolicies
- // removeEditPolicy(org.eclipse.gmf.runtime.diagram.ui.editpolicies.EditPolicyRoles.CONNECTION_HANDLES_ROLE);
- }
-
- /**
- * Papyrus codeGen
- *
- * @generated
- **/
- protected void handleNotificationEvent(Notification event) {
- super.handleNotificationEvent(event);
- }
-
- /**
- * @generated
- */
- protected LayoutEditPolicy createLayoutEditPolicy() {
- org.eclipse.gmf.runtime.diagram.ui.editpolicies.LayoutEditPolicy lep = new org.eclipse.gmf.runtime.diagram.ui.editpolicies.LayoutEditPolicy() {
-
- protected EditPolicy createChildEditPolicy(EditPart child) {
- View childView = (View)child.getModel();
- switch(UMLVisualIDRegistry.getVisualID(childView)) {
- case ExpansionNodeAsInEditPart.VISUAL_ID:
- case ExpansionNodeAsOutEditPart.VISUAL_ID:
- return new BorderItemResizableEditPolicy();
- }
- EditPolicy result = child.getEditPolicy(EditPolicy.PRIMARY_DRAG_ROLE);
- if(result == null) {
- result = new NonResizableEditPolicy();
- }
- return result;
- }
-
- protected Command getMoveChildrenCommand(Request request) {
- return null;
- }
-
- protected Command getCreateCommand(CreateRequest request) {
- return null;
- }
- };
- return lep;
- }
-
- /**
- * @generated
- */
- protected IFigure createNodeShape() {
- return primaryShape = new StructuredActivityNodeFigure();
- }
-
- /**
- * @generated
- */
- public StructuredActivityNodeFigure getPrimaryShape() {
- return (StructuredActivityNodeFigure)primaryShape;
- }
-
- /**
- * @generated
- */
- protected boolean addFixedChild(EditPart childEditPart) {
- if(childEditPart instanceof ExpansionRegionKeywordEditPart) {
- ((ExpansionRegionKeywordEditPart)childEditPart).setLabel(getPrimaryShape().getNameLabel());
- return true;
- }
- if(childEditPart instanceof ExpansionRegionStructuredActivityNodeContentCompartmentEditPart) {
- IFigure pane = getPrimaryShape().getStructuredActivityNodeCompartment();
- setupContentPane(pane); // FIXME each comparment should handle his content pane in his own way
- pane.add(((ExpansionRegionStructuredActivityNodeContentCompartmentEditPart)childEditPart).getFigure());
- return true;
- }
- //Papyrus Gencode :Affixed Expansion Node locator for Activity
- if(childEditPart instanceof ExpansionNodeAsInEditPart) {
- IBorderItemLocator locator = new ExpansionNodePositionLocator(getMainFigure(), PositionConstants.NORTH);
- getBorderedFigure().getBorderItemContainer().add(((ExpansionNodeAsInEditPart)childEditPart).getFigure(), locator);
- return true;
- }
- //Papyrus Gencode :Affixed Expansion Node locator for Activity
- if(childEditPart instanceof ExpansionNodeAsOutEditPart) {
- IBorderItemLocator locator = new ExpansionNodePositionLocator(getMainFigure(), PositionConstants.SOUTH);
- getBorderedFigure().getBorderItemContainer().add(((ExpansionNodeAsOutEditPart)childEditPart).getFigure(), locator);
- return true;
- }
- return false;
- }
-
- /**
- * @generated
- */
- protected boolean removeFixedChild(EditPart childEditPart) {
- if(childEditPart instanceof ExpansionRegionKeywordEditPart) {
- return true;
- }
- if(childEditPart instanceof ExpansionRegionStructuredActivityNodeContentCompartmentEditPart) {
- IFigure pane = getPrimaryShape().getStructuredActivityNodeCompartment();
- pane.remove(((ExpansionRegionStructuredActivityNodeContentCompartmentEditPart)childEditPart).getFigure());
- return true;
- }
- if(childEditPart instanceof ExpansionNodeAsInEditPart) {
- getBorderedFigure().getBorderItemContainer().remove(((ExpansionNodeAsInEditPart)childEditPart).getFigure());
- return true;
- }
- if(childEditPart instanceof ExpansionNodeAsOutEditPart) {
- getBorderedFigure().getBorderItemContainer().remove(((ExpansionNodeAsOutEditPart)childEditPart).getFigure());
- return true;
- }
- return false;
- }
-
- /**
- * @generated
- */
- protected void addChildVisual(EditPart childEditPart, int index) {
- if(addFixedChild(childEditPart)) {
- return;
- }
- super.addChildVisual(childEditPart, -1);
- }
-
- /**
- * @generated
- */
- protected void removeChildVisual(EditPart childEditPart) {
- if(removeFixedChild(childEditPart)) {
- return;
- }
- super.removeChildVisual(childEditPart);
- }
-
- /**
- * @generated
- */
- protected IFigure getContentPaneFor(IGraphicalEditPart editPart) {
- if(editPart instanceof ExpansionRegionStructuredActivityNodeContentCompartmentEditPart) {
- return getPrimaryShape().getStructuredActivityNodeCompartment();
- }
- if(editPart instanceof IBorderItemEditPart) {
- return getBorderedFigure().getBorderItemContainer();
- }
- return getContentPane();
- }
-
- /**
- * @generated
- */
- protected NodeFigure createNodePlate() {
- String prefElementId = "ExpansionRegion";
- IPreferenceStore store = UMLDiagramEditorPlugin.getInstance().getPreferenceStore();
- String preferenceConstantWitdh = PreferenceInitializerForElementHelper.getpreferenceKey(getNotationView(), prefElementId, PreferencesConstantsHelper.WIDTH);
- String preferenceConstantHeight = PreferenceInitializerForElementHelper.getpreferenceKey(getNotationView(), prefElementId, PreferencesConstantsHelper.HEIGHT);
- DefaultSizeNodeFigure result = new DefaultSizeNodeFigure(store.getInt(preferenceConstantWitdh), store.getInt(preferenceConstantHeight));
- return result;
- }
-
- /**
- * Creates figure for this edit part.
- *
- * Body of this method does not depend on settings in generation model
- * so you may safely remove <i>generated</i> tag and modify it.
- *
- * @generated
- */
- protected NodeFigure createMainFigure() {
- NodeFigure figure = createNodePlate();
- figure.setLayoutManager(new StackLayout());
- IFigure shape = createNodeShape();
- figure.add(shape);
- contentPane = setupContentPane(shape);
- return figure;
- }
-
- /**
- * Default implementation treats passed figure as content pane.
- * Respects layout one may have set for generated figure.
- *
- * @param nodeShape
- * instance of generated figure class
- * @generated
- */
- protected IFigure setupContentPane(IFigure nodeShape) {
- if(nodeShape.getLayoutManager() == null) {
- ConstrainedToolbarLayout layout = new ConstrainedToolbarLayout();
- layout.setSpacing(5);
- nodeShape.setLayoutManager(layout);
- }
- return nodeShape; // use nodeShape itself as contentPane
- }
-
- /**
- * @generated
- */
- public IFigure getContentPane() {
- if(contentPane != null) {
- return contentPane;
- }
- return super.getContentPane();
- }
-
- /**
- * @generated
- */
- protected void setForegroundColor(Color color) {
- if(primaryShape != null) {
- primaryShape.setForegroundColor(color);
- }
- }
-
- /**
- * @generated
- */
- protected void setLineWidth(int width) {
- if(primaryShape instanceof Shape) {
- ((Shape)primaryShape).setLineWidth(width);
- }
- }
-
- /**
- * @generated
- */
- protected void setLineType(int style) {
- if(primaryShape instanceof Shape) {
- ((Shape)primaryShape).setLineStyle(style);
- }
- }
-
- /**
- * @generated
- */
- public EditPart getPrimaryChildEditPart() {
- return getChildBySemanticHint(UMLVisualIDRegistry.getType(ExpansionRegionKeywordEditPart.VISUAL_ID));
- }
-
- /**
- * @generated
- */
- public List<IElementType> getMARelTypesOnSource() {
- ArrayList<IElementType> types = new ArrayList<IElementType>(5);
- types.add(UMLElementTypes.ActionLocalPrecondition_4001);
- types.add(UMLElementTypes.ActionLocalPostcondition_4002);
- types.add(UMLElementTypes.ObjectFlow_4003);
- types.add(UMLElementTypes.ControlFlow_4004);
- types.add(UMLElementTypes.ExceptionHandler_4005);
- return types;
- }
-
- /**
- * @generated
- */
- public List<IElementType> getMARelTypesOnSourceAndTarget(IGraphicalEditPart targetEditPart) {
- LinkedList<IElementType> types = new LinkedList<IElementType>();
- if(targetEditPart instanceof DurationConstraintAsLocalPrecondEditPart) {
- types.add(UMLElementTypes.ActionLocalPrecondition_4001);
- }
- if(targetEditPart instanceof DurationConstraintAsLocalPostcondEditPart) {
- types.add(UMLElementTypes.ActionLocalPrecondition_4001);
- }
- if(targetEditPart instanceof TimeConstraintAsLocalPrecondEditPart) {
- types.add(UMLElementTypes.ActionLocalPrecondition_4001);
- }
- if(targetEditPart instanceof TimeConstraintAsLocalPostcondEditPart) {
- types.add(UMLElementTypes.ActionLocalPrecondition_4001);
- }
- if(targetEditPart instanceof IntervalConstraintAsLocalPrecondEditPart) {
- types.add(UMLElementTypes.ActionLocalPrecondition_4001);
- }
- if(targetEditPart instanceof IntervalConstraintAsLocalPostcondEditPart) {
- types.add(UMLElementTypes.ActionLocalPrecondition_4001);
- }
- if(targetEditPart instanceof ConstraintAsLocalPrecondEditPart) {
- types.add(UMLElementTypes.ActionLocalPrecondition_4001);
- }
- if(targetEditPart instanceof ConstraintAsLocalPostcondEditPart) {
- types.add(UMLElementTypes.ActionLocalPrecondition_4001);
- }
- if(targetEditPart instanceof ConstraintEditPartCN) {
- types.add(UMLElementTypes.ActionLocalPrecondition_4001);
- }
- if(targetEditPart instanceof DurationConstraintAsLocalPrecondEditPart) {
- types.add(UMLElementTypes.ActionLocalPostcondition_4002);
- }
- if(targetEditPart instanceof DurationConstraintAsLocalPostcondEditPart) {
- types.add(UMLElementTypes.ActionLocalPostcondition_4002);
- }
- if(targetEditPart instanceof TimeConstraintAsLocalPrecondEditPart) {
- types.add(UMLElementTypes.ActionLocalPostcondition_4002);
- }
- if(targetEditPart instanceof TimeConstraintAsLocalPostcondEditPart) {
- types.add(UMLElementTypes.ActionLocalPostcondition_4002);
- }
- if(targetEditPart instanceof IntervalConstraintAsLocalPrecondEditPart) {
- types.add(UMLElementTypes.ActionLocalPostcondition_4002);
- }
- if(targetEditPart instanceof IntervalConstraintAsLocalPostcondEditPart) {
- types.add(UMLElementTypes.ActionLocalPostcondition_4002);
- }
- if(targetEditPart instanceof ConstraintAsLocalPrecondEditPart) {
- types.add(UMLElementTypes.ActionLocalPostcondition_4002);
- }
- if(targetEditPart instanceof ConstraintAsLocalPostcondEditPart) {
- types.add(UMLElementTypes.ActionLocalPostcondition_4002);
- }
- if(targetEditPart instanceof ConstraintEditPartCN) {
- types.add(UMLElementTypes.ActionLocalPostcondition_4002);
- }
- if(targetEditPart instanceof InitialNodeEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ActivityFinalNodeEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof FlowFinalNodeEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof OpaqueActionEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ValuePinInOpaqueActEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ActionInputPinInOpaqueActEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof InputPinInOpaqueActEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof OutputPinInOpaqueActEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof CallBehaviorActionEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ValuePinInCallBeActEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ActionInputPinInCallBeActEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof InputPinInCallBeActEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof OutputPinInCallBeActEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof CallOperationActionEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ActionInputPinInCallOpActEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ValuePinInCallOpActEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof InputPinInCallOpActEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof OutputPinInCallOpActEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ValuePinInCallOpActAsTargetEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ActionInputPinInCallOpActAsTargetEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof InputPinInCallOpActAsTargetEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof DecisionNodeEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof MergeNodeEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ForkNodeEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof JoinNodeEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof DataStoreNodeEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof SendObjectActionEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ValuePinInSendObjActAsReqEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ActionInputPinInSendObjActAsReqEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof InputPinInSendObjActAsReqEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ValuePinInSendObjActAsTargetEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ActionInputPinInSendObjActAsTargetEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof InputPinInSendObjActAsTargetEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof SendSignalActionEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ActionInputPinInSendSigActEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ValuePinInSendSigActEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof InputPinInSendSigActEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ValuePinInSendSigActAsTargetEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ActionInputPinInSendSigActAsTargetEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof InputPinInSendSigActAsTargetEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ActivityParameterNodeEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof AcceptEventActionEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof OutputPinInAcceptEventActionEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ValueSpecificationActionEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof OutputPinInValSpecActEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ConditionalNodeEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.ExpansionRegionEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ExpansionNodeAsInEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ExpansionNodeAsOutEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof LoopNodeEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof OutputPinInLoopNodeAsBodyOutputEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof OutputPinInLoopNodeAsLoopVariableEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof OutputPinInLoopNodeAsResultEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof SequenceNodeEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof StructuredActivityNodeEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof InputPinInLoopNodeAsVariableEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ReadSelfActionEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ReadSelfActionOutputPinEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof CreateObjectActionEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof OutputPinInCreateObjectActionAsResultEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ReadStructuralFeatureActionEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof InputPinInReadStructuralFeatureAsObjectEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof OutputPinInReadStructuralFeatureAsResultEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof AddStructuralFeatureValueActionEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof InputPinInAddStructuralFeatureValueActionAsObjectEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof InputPinInAddStructuralFeatureValueActionAsValueEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof OutputPinInAddStructuralFeatureValueActionAsResultEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof DestroyObjectActionEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof InputPinInDestroyObjectActionEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof ReadVariableActionEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof OutputPinInReadVariableActionAsResultEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof AddVariableValueActionEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof InputPinInAddVariableValueActionAsInsertAtEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof InputPinInAddVariableValueActionAsValueEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof BroadcastSignalActionEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof InputPinInBroadcastSignalActionEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof CentralBufferNodeEditPart) {
- types.add(UMLElementTypes.ObjectFlow_4003);
- }
- if(targetEditPart instanceof InitialNodeEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ActivityFinalNodeEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof FlowFinalNodeEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof OpaqueActionEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ValuePinInOpaqueActEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ActionInputPinInOpaqueActEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof InputPinInOpaqueActEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof OutputPinInOpaqueActEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof CallBehaviorActionEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ValuePinInCallBeActEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ActionInputPinInCallBeActEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof InputPinInCallBeActEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof OutputPinInCallBeActEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof CallOperationActionEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ActionInputPinInCallOpActEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ValuePinInCallOpActEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof InputPinInCallOpActEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof OutputPinInCallOpActEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ValuePinInCallOpActAsTargetEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ActionInputPinInCallOpActAsTargetEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof InputPinInCallOpActAsTargetEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof DecisionNodeEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof MergeNodeEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ForkNodeEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof JoinNodeEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof DataStoreNodeEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof SendObjectActionEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ValuePinInSendObjActAsReqEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ActionInputPinInSendObjActAsReqEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof InputPinInSendObjActAsReqEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ValuePinInSendObjActAsTargetEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ActionInputPinInSendObjActAsTargetEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof InputPinInSendObjActAsTargetEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof SendSignalActionEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ActionInputPinInSendSigActEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ValuePinInSendSigActEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof InputPinInSendSigActEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ValuePinInSendSigActAsTargetEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ActionInputPinInSendSigActAsTargetEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof InputPinInSendSigActAsTargetEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ActivityParameterNodeEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof AcceptEventActionEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof OutputPinInAcceptEventActionEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ValueSpecificationActionEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof OutputPinInValSpecActEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ConditionalNodeEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.ExpansionRegionEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ExpansionNodeAsInEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ExpansionNodeAsOutEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof LoopNodeEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof OutputPinInLoopNodeAsBodyOutputEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof OutputPinInLoopNodeAsLoopVariableEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof OutputPinInLoopNodeAsResultEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof SequenceNodeEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof StructuredActivityNodeEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof InputPinInLoopNodeAsVariableEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ReadSelfActionEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ReadSelfActionOutputPinEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof CreateObjectActionEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof OutputPinInCreateObjectActionAsResultEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ReadStructuralFeatureActionEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof InputPinInReadStructuralFeatureAsObjectEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof OutputPinInReadStructuralFeatureAsResultEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof AddStructuralFeatureValueActionEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof InputPinInAddStructuralFeatureValueActionAsObjectEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof InputPinInAddStructuralFeatureValueActionAsValueEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof OutputPinInAddStructuralFeatureValueActionAsResultEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof DestroyObjectActionEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof InputPinInDestroyObjectActionEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ReadVariableActionEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof OutputPinInReadVariableActionAsResultEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof AddVariableValueActionEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof InputPinInAddVariableValueActionAsInsertAtEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof InputPinInAddVariableValueActionAsValueEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof BroadcastSignalActionEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof InputPinInBroadcastSignalActionEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof CentralBufferNodeEditPart) {
- types.add(UMLElementTypes.ControlFlow_4004);
- }
- if(targetEditPart instanceof ValuePinInOpaqueActEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof ActionInputPinInOpaqueActEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof InputPinInOpaqueActEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof OutputPinInOpaqueActEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof ValuePinInCallBeActEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof ActionInputPinInCallBeActEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof InputPinInCallBeActEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof OutputPinInCallBeActEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof ActionInputPinInCallOpActEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof ValuePinInCallOpActEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof InputPinInCallOpActEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof OutputPinInCallOpActEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof ValuePinInCallOpActAsTargetEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof ActionInputPinInCallOpActAsTargetEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof InputPinInCallOpActAsTargetEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof DataStoreNodeEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof ValuePinInSendObjActAsReqEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof ActionInputPinInSendObjActAsReqEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof InputPinInSendObjActAsReqEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof ValuePinInSendObjActAsTargetEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof ActionInputPinInSendObjActAsTargetEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof InputPinInSendObjActAsTargetEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof ActionInputPinInSendSigActEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof ValuePinInSendSigActEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof InputPinInSendSigActEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof ValuePinInSendSigActAsTargetEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof ActionInputPinInSendSigActAsTargetEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof InputPinInSendSigActAsTargetEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof ActivityParameterNodeEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof OutputPinInAcceptEventActionEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof OutputPinInValSpecActEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof ExpansionNodeAsInEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof ExpansionNodeAsOutEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof OutputPinInLoopNodeAsBodyOutputEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof OutputPinInLoopNodeAsLoopVariableEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof OutputPinInLoopNodeAsResultEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof InputPinInLoopNodeAsVariableEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof ReadSelfActionOutputPinEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof OutputPinInCreateObjectActionAsResultEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof InputPinInReadStructuralFeatureAsObjectEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof OutputPinInReadStructuralFeatureAsResultEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof InputPinInAddStructuralFeatureValueActionAsObjectEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof InputPinInAddStructuralFeatureValueActionAsValueEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof OutputPinInAddStructuralFeatureValueActionAsResultEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof InputPinInDestroyObjectActionEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof OutputPinInReadVariableActionAsResultEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof InputPinInAddVariableValueActionAsInsertAtEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof InputPinInAddVariableValueActionAsValueEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof InputPinInBroadcastSignalActionEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- if(targetEditPart instanceof CentralBufferNodeEditPart) {
- types.add(UMLElementTypes.ExceptionHandler_4005);
- }
- return types;
- }
-
- /**
- * @generated
- */
- public List<IElementType> getMATypesForTarget(IElementType relationshipType) {
- LinkedList<IElementType> types = new LinkedList<IElementType>();
- if(relationshipType == UMLElementTypes.ActionLocalPrecondition_4001) {
- types.add(UMLElementTypes.DurationConstraint_3034);
- types.add(UMLElementTypes.DurationConstraint_3035);
- types.add(UMLElementTypes.TimeConstraint_3036);
- types.add(UMLElementTypes.TimeConstraint_3037);
- types.add(UMLElementTypes.IntervalConstraint_3032);
- types.add(UMLElementTypes.IntervalConstraint_3033);
- types.add(UMLElementTypes.Constraint_3011);
- types.add(UMLElementTypes.Constraint_3012);
- types.add(UMLElementTypes.Constraint_3112);
- } else if(relationshipType == UMLElementTypes.ActionLocalPostcondition_4002) {
- types.add(UMLElementTypes.DurationConstraint_3034);
- types.add(UMLElementTypes.DurationConstraint_3035);
- types.add(UMLElementTypes.TimeConstraint_3036);
- types.add(UMLElementTypes.TimeConstraint_3037);
- types.add(UMLElementTypes.IntervalConstraint_3032);
- types.add(UMLElementTypes.IntervalConstraint_3033);
- types.add(UMLElementTypes.Constraint_3011);
- types.add(UMLElementTypes.Constraint_3012);
- types.add(UMLElementTypes.Constraint_3112);
- } else if(relationshipType == UMLElementTypes.ObjectFlow_4003) {
- types.add(UMLElementTypes.InitialNode_3004);
- types.add(UMLElementTypes.ActivityFinalNode_3005);
- types.add(UMLElementTypes.FlowFinalNode_3006);
- types.add(UMLElementTypes.OpaqueAction_3007);
- types.add(UMLElementTypes.ValuePin_3015);
- types.add(UMLElementTypes.ActionInputPin_3016);
- types.add(UMLElementTypes.InputPin_3013);
- types.add(UMLElementTypes.OutputPin_3014);
- types.add(UMLElementTypes.CallBehaviorAction_3008);
- types.add(UMLElementTypes.ValuePin_3017);
- types.add(UMLElementTypes.ActionInputPin_3018);
- types.add(UMLElementTypes.InputPin_3019);
- types.add(UMLElementTypes.OutputPin_3020);
- types.add(UMLElementTypes.CallOperationAction_3010);
- types.add(UMLElementTypes.ActionInputPin_3021);
- types.add(UMLElementTypes.ValuePin_3022);
- types.add(UMLElementTypes.InputPin_3023);
- types.add(UMLElementTypes.OutputPin_3024);
- types.add(UMLElementTypes.ValuePin_3025);
- types.add(UMLElementTypes.ActionInputPin_3026);
- types.add(UMLElementTypes.InputPin_3027);
- types.add(UMLElementTypes.DecisionNode_3038);
- types.add(UMLElementTypes.MergeNode_3039);
- types.add(UMLElementTypes.ForkNode_3040);
- types.add(UMLElementTypes.JoinNode_3041);
- types.add(UMLElementTypes.DataStoreNode_3078);
- types.add(UMLElementTypes.SendObjectAction_3042);
- types.add(UMLElementTypes.ValuePin_3046);
- types.add(UMLElementTypes.ActionInputPin_3047);
- types.add(UMLElementTypes.InputPin_3048);
- types.add(UMLElementTypes.ValuePin_3049);
- types.add(UMLElementTypes.ActionInputPin_3050);
- types.add(UMLElementTypes.InputPin_3051);
- types.add(UMLElementTypes.SendSignalAction_3052);
- types.add(UMLElementTypes.ActionInputPin_3053);
- types.add(UMLElementTypes.ValuePin_3054);
- types.add(UMLElementTypes.InputPin_3055);
- types.add(UMLElementTypes.ValuePin_3060);
- types.add(UMLElementTypes.ActionInputPin_3061);
- types.add(UMLElementTypes.InputPin_3062);
- types.add(UMLElementTypes.ActivityParameterNode_3059);
- types.add(UMLElementTypes.AcceptEventAction_3063);
- types.add(UMLElementTypes.OutputPin_3064);
- types.add(UMLElementTypes.ValueSpecificationAction_3076);
- types.add(UMLElementTypes.OutputPin_3077);
- types.add(UMLElementTypes.ConditionalNode_3069);
- types.add(UMLElementTypes.ExpansionRegion_3070);
- types.add(UMLElementTypes.ExpansionNode_3074);
- types.add(UMLElementTypes.ExpansionNode_3075);
- types.add(UMLElementTypes.LoopNode_3071);
- types.add(UMLElementTypes.OutputPin_3109);
- types.add(UMLElementTypes.OutputPin_3110);
- types.add(UMLElementTypes.OutputPin_3111);
- types.add(UMLElementTypes.SequenceNode_3073);
- types.add(UMLElementTypes.StructuredActivityNode_3065);
- types.add(UMLElementTypes.InputPin_3105);
- types.add(UMLElementTypes.ReadSelfAction_3081);
- types.add(UMLElementTypes.OutputPin_3084);
- types.add(UMLElementTypes.CreateObjectAction_3086);
- types.add(UMLElementTypes.OutputPin_3087);
- types.add(UMLElementTypes.ReadStructuralFeatureAction_3088);
- types.add(UMLElementTypes.InputPin_3089);
- types.add(UMLElementTypes.OutputPin_3090);
- types.add(UMLElementTypes.AddStructuralFeatureValueAction_3091);
- types.add(UMLElementTypes.InputPin_3092);
- types.add(UMLElementTypes.InputPin_3093);
- types.add(UMLElementTypes.OutputPin_3094);
- types.add(UMLElementTypes.DestroyObjectAction_3095);
- types.add(UMLElementTypes.InputPin_3096);
- types.add(UMLElementTypes.ReadVariableAction_3097);
- types.add(UMLElementTypes.OutputPin_3098);
- types.add(UMLElementTypes.AddVariableValueAction_3099);
- types.add(UMLElementTypes.InputPin_3100);
- types.add(UMLElementTypes.InputPin_3101);
- types.add(UMLElementTypes.BroadcastSignalAction_3102);
- types.add(UMLElementTypes.InputPin_3103);
- types.add(UMLElementTypes.CentralBufferNode_3104);
- } else if(relationshipType == UMLElementTypes.ControlFlow_4004) {
- types.add(UMLElementTypes.InitialNode_3004);
- types.add(UMLElementTypes.ActivityFinalNode_3005);
- types.add(UMLElementTypes.FlowFinalNode_3006);
- types.add(UMLElementTypes.OpaqueAction_3007);
- types.add(UMLElementTypes.ValuePin_3015);
- types.add(UMLElementTypes.ActionInputPin_3016);
- types.add(UMLElementTypes.InputPin_3013);
- types.add(UMLElementTypes.OutputPin_3014);
- types.add(UMLElementTypes.CallBehaviorAction_3008);
- types.add(UMLElementTypes.ValuePin_3017);
- types.add(UMLElementTypes.ActionInputPin_3018);
- types.add(UMLElementTypes.InputPin_3019);
- types.add(UMLElementTypes.OutputPin_3020);
- types.add(UMLElementTypes.CallOperationAction_3010);
- types.add(UMLElementTypes.ActionInputPin_3021);
- types.add(UMLElementTypes.ValuePin_3022);
- types.add(UMLElementTypes.InputPin_3023);
- types.add(UMLElementTypes.OutputPin_3024);
- types.add(UMLElementTypes.ValuePin_3025);
- types.add(UMLElementTypes.ActionInputPin_3026);
- types.add(UMLElementTypes.InputPin_3027);
- types.add(UMLElementTypes.DecisionNode_3038);
- types.add(UMLElementTypes.MergeNode_3039);
- types.add(UMLElementTypes.ForkNode_3040);
- types.add(UMLElementTypes.JoinNode_3041);
- types.add(UMLElementTypes.DataStoreNode_3078);
- types.add(UMLElementTypes.SendObjectAction_3042);
- types.add(UMLElementTypes.ValuePin_3046);
- types.add(UMLElementTypes.ActionInputPin_3047);
- types.add(UMLElementTypes.InputPin_3048);
- types.add(UMLElementTypes.ValuePin_3049);
- types.add(UMLElementTypes.ActionInputPin_3050);
- types.add(UMLElementTypes.InputPin_3051);
- types.add(UMLElementTypes.SendSignalAction_3052);
- types.add(UMLElementTypes.ActionInputPin_3053);
- types.add(UMLElementTypes.ValuePin_3054);
- types.add(UMLElementTypes.InputPin_3055);
- types.add(UMLElementTypes.ValuePin_3060);
- types.add(UMLElementTypes.ActionInputPin_3061);
- types.add(UMLElementTypes.InputPin_3062);
- types.add(UMLElementTypes.ActivityParameterNode_3059);
- types.add(UMLElementTypes.AcceptEventAction_3063);
- types.add(UMLElementTypes.OutputPin_3064);
- types.add(UMLElementTypes.ValueSpecificationAction_3076);
- types.add(UMLElementTypes.OutputPin_3077);
- types.add(UMLElementTypes.ConditionalNode_3069);
- types.add(UMLElementTypes.ExpansionRegion_3070);
- types.add(UMLElementTypes.ExpansionNode_3074);
- types.add(UMLElementTypes.ExpansionNode_3075);
- types.add(UMLElementTypes.LoopNode_3071);
- types.add(UMLElementTypes.OutputPin_3109);
- types.add(UMLElementTypes.OutputPin_3110);
- types.add(UMLElementTypes.OutputPin_3111);
- types.add(UMLElementTypes.SequenceNode_3073);
- types.add(UMLElementTypes.StructuredActivityNode_3065);
- types.add(UMLElementTypes.InputPin_3105);
- types.add(UMLElementTypes.ReadSelfAction_3081);
- types.add(UMLElementTypes.OutputPin_3084);
- types.add(UMLElementTypes.CreateObjectAction_3086);
- types.add(UMLElementTypes.OutputPin_3087);
- types.add(UMLElementTypes.ReadStructuralFeatureAction_3088);
- types.add(UMLElementTypes.InputPin_3089);
- types.add(UMLElementTypes.OutputPin_3090);
- types.add(UMLElementTypes.AddStructuralFeatureValueAction_3091);
- types.add(UMLElementTypes.InputPin_3092);
- types.add(UMLElementTypes.InputPin_3093);
- types.add(UMLElementTypes.OutputPin_3094);
- types.add(UMLElementTypes.DestroyObjectAction_3095);
- types.add(UMLElementTypes.InputPin_3096);
- types.add(UMLElementTypes.ReadVariableAction_3097);
- types.add(UMLElementTypes.OutputPin_3098);
- types.add(UMLElementTypes.AddVariableValueAction_3099);
- types.add(UMLElementTypes.InputPin_3100);
- types.add(UMLElementTypes.InputPin_3101);
- types.add(UMLElementTypes.BroadcastSignalAction_3102);
- types.add(UMLElementTypes.InputPin_3103);
- types.add(UMLElementTypes.CentralBufferNode_3104);
- } else if(relationshipType == UMLElementTypes.ExceptionHandler_4005) {
- types.add(UMLElementTypes.ValuePin_3015);
- types.add(UMLElementTypes.ActionInputPin_3016);
- types.add(UMLElementTypes.InputPin_3013);
- types.add(UMLElementTypes.OutputPin_3014);
- types.add(UMLElementTypes.ValuePin_3017);
- types.add(UMLElementTypes.ActionInputPin_3018);
- types.add(UMLElementTypes.InputPin_3019);
- types.add(UMLElementTypes.OutputPin_3020);
- types.add(UMLElementTypes.ActionInputPin_3021);
- types.add(UMLElementTypes.ValuePin_3022);
- types.add(UMLElementTypes.InputPin_3023);
- types.add(UMLElementTypes.OutputPin_3024);
- types.add(UMLElementTypes.ValuePin_3025);
- types.add(UMLElementTypes.ActionInputPin_3026);
- types.add(UMLElementTypes.InputPin_3027);
- types.add(UMLElementTypes.DataStoreNode_3078);
- types.add(UMLElementTypes.ValuePin_3046);
- types.add(UMLElementTypes.ActionInputPin_3047);
- types.add(UMLElementTypes.InputPin_3048);
- types.add(UMLElementTypes.ValuePin_3049);
- types.add(UMLElementTypes.ActionInputPin_3050);
- types.add(UMLElementTypes.InputPin_3051);
- types.add(UMLElementTypes.ActionInputPin_3053);
- types.add(UMLElementTypes.ValuePin_3054);
- types.add(UMLElementTypes.InputPin_3055);
- types.add(UMLElementTypes.ValuePin_3060);
- types.add(UMLElementTypes.ActionInputPin_3061);
- types.add(UMLElementTypes.InputPin_3062);
- types.add(UMLElementTypes.ActivityParameterNode_3059);
- types.add(UMLElementTypes.OutputPin_3064);
- types.add(UMLElementTypes.OutputPin_3077);
- types.add(UMLElementTypes.ExpansionNode_3074);
- types.add(UMLElementTypes.ExpansionNode_3075);
- types.add(UMLElementTypes.OutputPin_3109);
- types.add(UMLElementTypes.OutputPin_3110);
- types.add(UMLElementTypes.OutputPin_3111);
- types.add(UMLElementTypes.InputPin_3105);
- types.add(UMLElementTypes.OutputPin_3084);
- types.add(UMLElementTypes.OutputPin_3087);
- types.add(UMLElementTypes.InputPin_3089);
- types.add(UMLElementTypes.OutputPin_3090);
- types.add(UMLElementTypes.InputPin_3092);
- types.add(UMLElementTypes.InputPin_3093);
- types.add(UMLElementTypes.OutputPin_3094);
- types.add(UMLElementTypes.InputPin_3096);
- types.add(UMLElementTypes.OutputPin_3098);
- types.add(UMLElementTypes.InputPin_3100);
- types.add(UMLElementTypes.InputPin_3101);
- types.add(UMLElementTypes.InputPin_3103);
- types.add(UMLElementTypes.CentralBufferNode_3104);
- }
- return types;
- }
-
- /**
- * @generated
- */
- public List<IElementType> getMARelTypesOnTarget() {
- ArrayList<IElementType> types = new ArrayList<IElementType>(4);
- types.add(UMLElementTypes.ObjectFlow_4003);
- types.add(UMLElementTypes.ControlFlow_4004);
- types.add(UMLElementTypes.CommentAnnotatedElement_4006);
- types.add(UMLElementTypes.ConstraintConstrainedElement_4007);
- return types;
- }
-
- /**
- * @generated
- */
- public List<IElementType> getMATypesForSource(IElementType relationshipType) {
- LinkedList<IElementType> types = new LinkedList<IElementType>();
- if(relationshipType == UMLElementTypes.ObjectFlow_4003) {
- types.add(UMLElementTypes.InitialNode_3004);
- types.add(UMLElementTypes.ActivityFinalNode_3005);
- types.add(UMLElementTypes.FlowFinalNode_3006);
- types.add(UMLElementTypes.OpaqueAction_3007);
- types.add(UMLElementTypes.ValuePin_3015);
- types.add(UMLElementTypes.ActionInputPin_3016);
- types.add(UMLElementTypes.InputPin_3013);
- types.add(UMLElementTypes.OutputPin_3014);
- types.add(UMLElementTypes.CallBehaviorAction_3008);
- types.add(UMLElementTypes.ValuePin_3017);
- types.add(UMLElementTypes.ActionInputPin_3018);
- types.add(UMLElementTypes.InputPin_3019);
- types.add(UMLElementTypes.OutputPin_3020);
- types.add(UMLElementTypes.CallOperationAction_3010);
- types.add(UMLElementTypes.ActionInputPin_3021);
- types.add(UMLElementTypes.ValuePin_3022);
- types.add(UMLElementTypes.InputPin_3023);
- types.add(UMLElementTypes.OutputPin_3024);
- types.add(UMLElementTypes.ValuePin_3025);
- types.add(UMLElementTypes.ActionInputPin_3026);
- types.add(UMLElementTypes.InputPin_3027);
- types.add(UMLElementTypes.DecisionNode_3038);
- types.add(UMLElementTypes.MergeNode_3039);
- types.add(UMLElementTypes.ForkNode_3040);
- types.add(UMLElementTypes.JoinNode_3041);
- types.add(UMLElementTypes.DataStoreNode_3078);
- types.add(UMLElementTypes.SendObjectAction_3042);
- types.add(UMLElementTypes.ValuePin_3046);
- types.add(UMLElementTypes.ActionInputPin_3047);
- types.add(UMLElementTypes.InputPin_3048);
- types.add(UMLElementTypes.ValuePin_3049);
- types.add(UMLElementTypes.ActionInputPin_3050);
- types.add(UMLElementTypes.InputPin_3051);
- types.add(UMLElementTypes.SendSignalAction_3052);
- types.add(UMLElementTypes.ActionInputPin_3053);
- types.add(UMLElementTypes.ValuePin_3054);
- types.add(UMLElementTypes.InputPin_3055);
- types.add(UMLElementTypes.ValuePin_3060);
- types.add(UMLElementTypes.ActionInputPin_3061);
- types.add(UMLElementTypes.InputPin_3062);
- types.add(UMLElementTypes.ActivityParameterNode_3059);
- types.add(UMLElementTypes.AcceptEventAction_3063);
- types.add(UMLElementTypes.OutputPin_3064);
- types.add(UMLElementTypes.ValueSpecificationAction_3076);
- types.add(UMLElementTypes.OutputPin_3077);
- types.add(UMLElementTypes.ConditionalNode_3069);
- types.add(UMLElementTypes.ExpansionRegion_3070);
- types.add(UMLElementTypes.ExpansionNode_3074);
- types.add(UMLElementTypes.ExpansionNode_3075);
- types.add(UMLElementTypes.LoopNode_3071);
- types.add(UMLElementTypes.OutputPin_3109);
- types.add(UMLElementTypes.OutputPin_3110);
- types.add(UMLElementTypes.OutputPin_3111);
- types.add(UMLElementTypes.SequenceNode_3073);
- types.add(UMLElementTypes.StructuredActivityNode_3065);
- types.add(UMLElementTypes.InputPin_3105);
- types.add(UMLElementTypes.ReadSelfAction_3081);
- types.add(UMLElementTypes.OutputPin_3084);
- types.add(UMLElementTypes.CreateObjectAction_3086);
- types.add(UMLElementTypes.OutputPin_3087);
- types.add(UMLElementTypes.ReadStructuralFeatureAction_3088);
- types.add(UMLElementTypes.InputPin_3089);
- types.add(UMLElementTypes.OutputPin_3090);
- types.add(UMLElementTypes.AddStructuralFeatureValueAction_3091);
- types.add(UMLElementTypes.InputPin_3092);
- types.add(UMLElementTypes.InputPin_3093);
- types.add(UMLElementTypes.OutputPin_3094);
- types.add(UMLElementTypes.DestroyObjectAction_3095);
- types.add(UMLElementTypes.InputPin_3096);
- types.add(UMLElementTypes.ReadVariableAction_3097);
- types.add(UMLElementTypes.OutputPin_3098);
- types.add(UMLElementTypes.AddVariableValueAction_3099);
- types.add(UMLElementTypes.InputPin_3100);
- types.add(UMLElementTypes.InputPin_3101);
- types.add(UMLElementTypes.BroadcastSignalAction_3102);
- types.add(UMLElementTypes.InputPin_3103);
- types.add(UMLElementTypes.CentralBufferNode_3104);
- } else if(relationshipType == UMLElementTypes.ControlFlow_4004) {
- types.add(UMLElementTypes.InitialNode_3004);
- types.add(UMLElementTypes.ActivityFinalNode_3005);
- types.add(UMLElementTypes.FlowFinalNode_3006);
- types.add(UMLElementTypes.OpaqueAction_3007);
- types.add(UMLElementTypes.ValuePin_3015);
- types.add(UMLElementTypes.ActionInputPin_3016);
- types.add(UMLElementTypes.InputPin_3013);
- types.add(UMLElementTypes.OutputPin_3014);
- types.add(UMLElementTypes.CallBehaviorAction_3008);
- types.add(UMLElementTypes.ValuePin_3017);
- types.add(UMLElementTypes.ActionInputPin_3018);
- types.add(UMLElementTypes.InputPin_3019);
- types.add(UMLElementTypes.OutputPin_3020);
- types.add(UMLElementTypes.CallOperationAction_3010);
- types.add(UMLElementTypes.ActionInputPin_3021);
- types.add(UMLElementTypes.ValuePin_3022);
- types.add(UMLElementTypes.InputPin_3023);
- types.add(UMLElementTypes.OutputPin_3024);
- types.add(UMLElementTypes.ValuePin_3025);
- types.add(UMLElementTypes.ActionInputPin_3026);
- types.add(UMLElementTypes.InputPin_3027);
- types.add(UMLElementTypes.DecisionNode_3038);
- types.add(UMLElementTypes.MergeNode_3039);
- types.add(UMLElementTypes.ForkNode_3040);
- types.add(UMLElementTypes.JoinNode_3041);
- types.add(UMLElementTypes.DataStoreNode_3078);
- types.add(UMLElementTypes.SendObjectAction_3042);
- types.add(UMLElementTypes.ValuePin_3046);
- types.add(UMLElementTypes.ActionInputPin_3047);
- types.add(UMLElementTypes.InputPin_3048);
- types.add(UMLElementTypes.ValuePin_3049);
- types.add(UMLElementTypes.ActionInputPin_3050);
- types.add(UMLElementTypes.InputPin_3051);
- types.add(UMLElementTypes.SendSignalAction_3052);
- types.add(UMLElementTypes.ActionInputPin_3053);
- types.add(UMLElementTypes.ValuePin_3054);
- types.add(UMLElementTypes.InputPin_3055);
- types.add(UMLElementTypes.ValuePin_3060);
- types.add(UMLElementTypes.ActionInputPin_3061);
- types.add(UMLElementTypes.InputPin_3062);
- types.add(UMLElementTypes.ActivityParameterNode_3059);
- types.add(UMLElementTypes.AcceptEventAction_3063);
- types.add(UMLElementTypes.OutputPin_3064);
- types.add(UMLElementTypes.ValueSpecificationAction_3076);
- types.add(UMLElementTypes.OutputPin_3077);
- types.add(UMLElementTypes.ConditionalNode_3069);
- types.add(UMLElementTypes.ExpansionRegion_3070);
- types.add(UMLElementTypes.ExpansionNode_3074);
- types.add(UMLElementTypes.ExpansionNode_3075);
- types.add(UMLElementTypes.LoopNode_3071);
- types.add(UMLElementTypes.OutputPin_3109);
- types.add(UMLElementTypes.OutputPin_3110);
- types.add(UMLElementTypes.OutputPin_3111);
- types.add(UMLElementTypes.SequenceNode_3073);
- types.add(UMLElementTypes.StructuredActivityNode_3065);
- types.add(UMLElementTypes.InputPin_3105);
- types.add(UMLElementTypes.ReadSelfAction_3081);
- types.add(UMLElementTypes.OutputPin_3084);
- types.add(UMLElementTypes.CreateObjectAction_3086);
- types.add(UMLElementTypes.OutputPin_3087);
- types.add(UMLElementTypes.ReadStructuralFeatureAction_3088);
- types.add(UMLElementTypes.InputPin_3089);
- types.add(UMLElementTypes.OutputPin_3090);
- types.add(UMLElementTypes.AddStructuralFeatureValueAction_3091);
- types.add(UMLElementTypes.InputPin_3092);
- types.add(UMLElementTypes.InputPin_3093);
- types.add(UMLElementTypes.OutputPin_3094);
- types.add(UMLElementTypes.DestroyObjectAction_3095);
- types.add(UMLElementTypes.InputPin_3096);
- types.add(UMLElementTypes.ReadVariableAction_3097);
- types.add(UMLElementTypes.OutputPin_3098);
- types.add(UMLElementTypes.AddVariableValueAction_3099);
- types.add(UMLElementTypes.InputPin_3100);
- types.add(UMLElementTypes.InputPin_3101);
- types.add(UMLElementTypes.BroadcastSignalAction_3102);
- types.add(UMLElementTypes.InputPin_3103);
- types.add(UMLElementTypes.CentralBufferNode_3104);
- } else if(relationshipType == UMLElementTypes.CommentAnnotatedElement_4006) {
- types.add(UMLElementTypes.Comment_3080);
- } else if(relationshipType == UMLElementTypes.ConstraintConstrainedElement_4007) {
- types.add(UMLElementTypes.DurationConstraint_3034);
- types.add(UMLElementTypes.DurationConstraint_3035);
- types.add(UMLElementTypes.TimeConstraint_3036);
- types.add(UMLElementTypes.TimeConstraint_3037);
- types.add(UMLElementTypes.IntervalConstraint_3032);
- types.add(UMLElementTypes.IntervalConstraint_3033);
- types.add(UMLElementTypes.Constraint_3011);
- types.add(UMLElementTypes.Constraint_3012);
- types.add(UMLElementTypes.Constraint_3112);
- }
- return types;
- }
-
- /**
- * @generated
- */
- @Override
- public Object getPreferredValue(EStructuralFeature feature) {
- IPreferenceStore preferenceStore = (IPreferenceStore)getDiagramPreferencesHint().getPreferenceStore();
- Object result = null;
- if(feature == NotationPackage.eINSTANCE.getLineStyle_LineColor() || feature == NotationPackage.eINSTANCE.getFontStyle_FontColor() || feature == NotationPackage.eINSTANCE.getFillStyle_FillColor()) {
- String prefColor = null;
- if(feature == NotationPackage.eINSTANCE.getLineStyle_LineColor()) {
- prefColor = PreferencesConstantsHelper.getElementConstant("ExpansionRegion", PreferencesConstantsHelper.COLOR_LINE);
- } else if(feature == NotationPackage.eINSTANCE.getFontStyle_FontColor()) {
- prefColor = PreferencesConstantsHelper.getElementConstant("ExpansionRegion", PreferencesConstantsHelper.COLOR_FONT);
- } else if(feature == NotationPackage.eINSTANCE.getFillStyle_FillColor()) {
- prefColor = PreferencesConstantsHelper.getElementConstant("ExpansionRegion", PreferencesConstantsHelper.COLOR_FILL);
- }
- result = FigureUtilities.RGBToInteger(PreferenceConverter.getColor((IPreferenceStore)preferenceStore, prefColor));
- } else if(feature == NotationPackage.eINSTANCE.getFillStyle_Transparency() || feature == NotationPackage.eINSTANCE.getFillStyle_Gradient()) {
- String prefGradient = PreferencesConstantsHelper.getElementConstant("ExpansionRegion", PreferencesConstantsHelper.COLOR_GRADIENT);
- GradientPreferenceConverter gradientPreferenceConverter = new GradientPreferenceConverter(preferenceStore.getString(prefGradient));
- if(feature == NotationPackage.eINSTANCE.getFillStyle_Transparency()) {
- result = new Integer(gradientPreferenceConverter.getTransparency());
- } else if(feature == NotationPackage.eINSTANCE.getFillStyle_Gradient()) {
- result = gradientPreferenceConverter.getGradientData();
- }
- }
- if(result == null) {
- result = getStructuralFeatureValue(feature);
- }
- return result;
- }
-}
+/*****************************************************************************
+ * Copyright (c) 2010 Atos Origin.
+ *
+ *
+ * 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:
+ * Atos Origin - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.activity.edit.parts;
+
+import java.util.ArrayList;
+import java.util.LinkedList;
+import java.util.List;
+
+import org.eclipse.draw2d.IFigure;
+import org.eclipse.draw2d.PositionConstants;
+import org.eclipse.draw2d.Shape;
+import org.eclipse.draw2d.StackLayout;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gef.EditPart;
+import org.eclipse.gef.EditPolicy;
+import org.eclipse.gef.Request;
+import org.eclipse.gef.commands.Command;
+import org.eclipse.gef.editpolicies.LayoutEditPolicy;
+import org.eclipse.gef.editpolicies.NonResizableEditPolicy;
+import org.eclipse.gef.requests.CreateRequest;
+import org.eclipse.gmf.runtime.diagram.ui.editparts.IBorderItemEditPart;
+import org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart;
+import org.eclipse.gmf.runtime.diagram.ui.editpolicies.DragDropEditPolicy;
+import org.eclipse.gmf.runtime.diagram.ui.editpolicies.EditPolicyRoles;
+import org.eclipse.gmf.runtime.diagram.ui.figures.IBorderItemLocator;
+import org.eclipse.gmf.runtime.draw2d.ui.figures.ConstrainedToolbarLayout;
+import org.eclipse.gmf.runtime.draw2d.ui.figures.FigureUtilities;
+import org.eclipse.gmf.runtime.emf.type.core.IElementType;
+import org.eclipse.gmf.runtime.gef.ui.figures.DefaultSizeNodeFigure;
+import org.eclipse.gmf.runtime.gef.ui.figures.NodeFigure;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.jface.preference.IPreferenceStore;
+import org.eclipse.jface.preference.PreferenceConverter;
+import org.eclipse.papyrus.infra.gmfdiag.preferences.utils.GradientPreferenceConverter;
+import org.eclipse.papyrus.infra.gmfdiag.common.preferences.PreferencesConstantsHelper;
+import org.eclipse.papyrus.uml.diagram.activity.draw2d.StructuredActivityNodeFigure;
+import org.eclipse.papyrus.uml.diagram.activity.edit.policies.CustomDiagramDragDropEditPolicy;
+import org.eclipse.papyrus.uml.diagram.activity.edit.policies.ExpansionRegionItemSemanticEditPolicy;
+import org.eclipse.papyrus.uml.diagram.activity.edit.policies.OpenDiagramEditPolicy;
+import org.eclipse.papyrus.uml.diagram.activity.locator.ExpansionNodePositionLocator;
+import org.eclipse.papyrus.uml.diagram.activity.part.UMLDiagramEditorPlugin;
+import org.eclipse.papyrus.uml.diagram.activity.part.UMLVisualIDRegistry;
+import org.eclipse.papyrus.uml.diagram.activity.providers.UMLElementTypes;
+import org.eclipse.papyrus.uml.diagram.common.editparts.UMLNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.common.editpolicies.AppliedStereotypeLabelDisplayEditPolicy;
+import org.eclipse.papyrus.uml.diagram.common.editpolicies.AppliedStereotypeNodeLabelDisplayEditPolicy;
+import org.eclipse.papyrus.uml.diagram.common.editpolicies.BorderItemResizableEditPolicy;
+import org.eclipse.papyrus.uml.diagram.common.editpolicies.PapyrusCreationEditPolicy;
+import org.eclipse.papyrus.uml.diagram.common.editpolicies.ShowHideCompartmentEditPolicy;
+import org.eclipse.papyrus.uml.diagram.common.helper.PreferenceInitializerForElementHelper;
+import org.eclipse.swt.graphics.Color;
+
+/**
+ * @generated
+ */
+public class ExpansionRegionEditPart extends UMLNodeEditPart {
+
+ /**
+ * @generated
+ */
+ public static final int VISUAL_ID = 3070;
+
+ /**
+ * @generated
+ */
+ protected IFigure contentPane;
+
+ /**
+ * @generated
+ */
+ protected IFigure primaryShape;
+
+ /**
+ * @generated
+ */
+ public ExpansionRegionEditPart(View view) {
+ super(view);
+ }
+
+ /**
+ * @generated
+ */
+ protected void createDefaultEditPolicies() {
+ installEditPolicy(EditPolicyRoles.CREATION_ROLE, new PapyrusCreationEditPolicy());
+ super.createDefaultEditPolicies();
+ installEditPolicy(EditPolicyRoles.SEMANTIC_ROLE, new ExpansionRegionItemSemanticEditPolicy());
+ installEditPolicy(EditPolicyRoles.DRAG_DROP_ROLE, new CustomDiagramDragDropEditPolicy());
+ //in Papyrus diagrams are not strongly synchronised
+ //installEditPolicy(org.eclipse.gmf.runtime.diagram.ui.editpolicies.EditPolicyRoles.CANONICAL_ROLE, new org.eclipse.papyrus.uml.diagram.activity.edit.policies.ExpansionRegionCanonicalEditPolicy());
+ installEditPolicy(EditPolicy.LAYOUT_ROLE, createLayoutEditPolicy());
+ installEditPolicy(EditPolicyRoles.OPEN_ROLE, new OpenDiagramEditPolicy());
+ installEditPolicy(ShowHideCompartmentEditPolicy.SHOW_HIDE_COMPARTMENT_POLICY, new ShowHideCompartmentEditPolicy());
+ installEditPolicy(AppliedStereotypeLabelDisplayEditPolicy.STEREOTYPE_LABEL_POLICY, new AppliedStereotypeNodeLabelDisplayEditPolicy());
+ // XXX need an SCR to runtime to have another abstract superclass that would let children add reasonable editpolicies
+ // removeEditPolicy(org.eclipse.gmf.runtime.diagram.ui.editpolicies.EditPolicyRoles.CONNECTION_HANDLES_ROLE);
+ }
+
+ /**
+ * Papyrus codeGen
+ *
+ * @generated
+ **/
+ protected void handleNotificationEvent(Notification event) {
+ super.handleNotificationEvent(event);
+ }
+
+ /**
+ * @generated
+ */
+ protected LayoutEditPolicy createLayoutEditPolicy() {
+ org.eclipse.gmf.runtime.diagram.ui.editpolicies.LayoutEditPolicy lep = new org.eclipse.gmf.runtime.diagram.ui.editpolicies.LayoutEditPolicy() {
+
+ protected EditPolicy createChildEditPolicy(EditPart child) {
+ View childView = (View)child.getModel();
+ switch(UMLVisualIDRegistry.getVisualID(childView)) {
+ case ExpansionNodeAsInEditPart.VISUAL_ID:
+ case ExpansionNodeAsOutEditPart.VISUAL_ID:
+ return new BorderItemResizableEditPolicy();
+ }
+ EditPolicy result = child.getEditPolicy(EditPolicy.PRIMARY_DRAG_ROLE);
+ if(result == null) {
+ result = new NonResizableEditPolicy();
+ }
+ return result;
+ }
+
+ protected Command getMoveChildrenCommand(Request request) {
+ return null;
+ }
+
+ protected Command getCreateCommand(CreateRequest request) {
+ return null;
+ }
+ };
+ return lep;
+ }
+
+ /**
+ * @generated
+ */
+ protected IFigure createNodeShape() {
+ return primaryShape = new StructuredActivityNodeFigure();
+ }
+
+ /**
+ * @generated
+ */
+ public StructuredActivityNodeFigure getPrimaryShape() {
+ return (StructuredActivityNodeFigure)primaryShape;
+ }
+
+ /**
+ * @generated
+ */
+ protected boolean addFixedChild(EditPart childEditPart) {
+ if(childEditPart instanceof ExpansionRegionKeywordEditPart) {
+ ((ExpansionRegionKeywordEditPart)childEditPart).setLabel(getPrimaryShape().getNameLabel());
+ return true;
+ }
+ if(childEditPart instanceof ExpansionRegionStructuredActivityNodeContentCompartmentEditPart) {
+ IFigure pane = getPrimaryShape().getStructuredActivityNodeCompartment();
+ setupContentPane(pane); // FIXME each comparment should handle his content pane in his own way
+ pane.add(((ExpansionRegionStructuredActivityNodeContentCompartmentEditPart)childEditPart).getFigure());
+ return true;
+ }
+ //Papyrus Gencode :Affixed Expansion Node locator for Activity
+ if(childEditPart instanceof ExpansionNodeAsInEditPart) {
+ IBorderItemLocator locator = new ExpansionNodePositionLocator(getMainFigure(), PositionConstants.NORTH);
+ getBorderedFigure().getBorderItemContainer().add(((ExpansionNodeAsInEditPart)childEditPart).getFigure(), locator);
+ return true;
+ }
+ //Papyrus Gencode :Affixed Expansion Node locator for Activity
+ if(childEditPart instanceof ExpansionNodeAsOutEditPart) {
+ IBorderItemLocator locator = new ExpansionNodePositionLocator(getMainFigure(), PositionConstants.SOUTH);
+ getBorderedFigure().getBorderItemContainer().add(((ExpansionNodeAsOutEditPart)childEditPart).getFigure(), locator);
+ return true;
+ }
+ return false;
+ }
+
+ /**
+ * @generated
+ */
+ protected boolean removeFixedChild(EditPart childEditPart) {
+ if(childEditPart instanceof ExpansionRegionKeywordEditPart) {
+ return true;
+ }
+ if(childEditPart instanceof ExpansionRegionStructuredActivityNodeContentCompartmentEditPart) {
+ IFigure pane = getPrimaryShape().getStructuredActivityNodeCompartment();
+ pane.remove(((ExpansionRegionStructuredActivityNodeContentCompartmentEditPart)childEditPart).getFigure());
+ return true;
+ }
+ if(childEditPart instanceof ExpansionNodeAsInEditPart) {
+ getBorderedFigure().getBorderItemContainer().remove(((ExpansionNodeAsInEditPart)childEditPart).getFigure());
+ return true;
+ }
+ if(childEditPart instanceof ExpansionNodeAsOutEditPart) {
+ getBorderedFigure().getBorderItemContainer().remove(((ExpansionNodeAsOutEditPart)childEditPart).getFigure());
+ return true;
+ }
+ return false;
+ }
+
+ /**
+ * @generated
+ */
+ protected void addChildVisual(EditPart childEditPart, int index) {
+ if(addFixedChild(childEditPart)) {
+ return;
+ }
+ super.addChildVisual(childEditPart, -1);
+ }
+
+ /**
+ * @generated
+ */
+ protected void removeChildVisual(EditPart childEditPart) {
+ if(removeFixedChild(childEditPart)) {
+ return;
+ }
+ super.removeChildVisual(childEditPart);
+ }
+
+ /**
+ * @generated
+ */
+ protected IFigure getContentPaneFor(IGraphicalEditPart editPart) {
+ if(editPart instanceof ExpansionRegionStructuredActivityNodeContentCompartmentEditPart) {
+ return getPrimaryShape().getStructuredActivityNodeCompartment();
+ }
+ if(editPart instanceof IBorderItemEditPart) {
+ return getBorderedFigure().getBorderItemContainer();
+ }
+ return getContentPane();
+ }
+
+ /**
+ * @generated
+ */
+ protected NodeFigure createNodePlate() {
+ String prefElementId = "ExpansionRegion";
+ IPreferenceStore store = UMLDiagramEditorPlugin.getInstance().getPreferenceStore();
+ String preferenceConstantWitdh = PreferenceInitializerForElementHelper.getpreferenceKey(getNotationView(), prefElementId, PreferencesConstantsHelper.WIDTH);
+ String preferenceConstantHeight = PreferenceInitializerForElementHelper.getpreferenceKey(getNotationView(), prefElementId, PreferencesConstantsHelper.HEIGHT);
+ DefaultSizeNodeFigure result = new DefaultSizeNodeFigure(store.getInt(preferenceConstantWitdh), store.getInt(preferenceConstantHeight));
+ return result;
+ }
+
+ /**
+ * Creates figure for this edit part.
+ *
+ * Body of this method does not depend on settings in generation model
+ * so you may safely remove <i>generated</i> tag and modify it.
+ *
+ * @generated
+ */
+ protected NodeFigure createMainFigure() {
+ NodeFigure figure = createNodePlate();
+ figure.setLayoutManager(new StackLayout());
+ IFigure shape = createNodeShape();
+ figure.add(shape);
+ contentPane = setupContentPane(shape);
+ return figure;
+ }
+
+ /**
+ * Default implementation treats passed figure as content pane.
+ * Respects layout one may have set for generated figure.
+ *
+ * @param nodeShape
+ * instance of generated figure class
+ * @generated
+ */
+ protected IFigure setupContentPane(IFigure nodeShape) {
+ if(nodeShape.getLayoutManager() == null) {
+ ConstrainedToolbarLayout layout = new ConstrainedToolbarLayout();
+ layout.setSpacing(5);
+ nodeShape.setLayoutManager(layout);
+ }
+ return nodeShape; // use nodeShape itself as contentPane
+ }
+
+ /**
+ * @generated
+ */
+ public IFigure getContentPane() {
+ if(contentPane != null) {
+ return contentPane;
+ }
+ return super.getContentPane();
+ }
+
+ /**
+ * @generated
+ */
+ protected void setForegroundColor(Color color) {
+ if(primaryShape != null) {
+ primaryShape.setForegroundColor(color);
+ }
+ }
+
+ /**
+ * @generated
+ */
+ protected void setLineWidth(int width) {
+ if(primaryShape instanceof Shape) {
+ ((Shape)primaryShape).setLineWidth(width);
+ }
+ }
+
+ /**
+ * @generated
+ */
+ protected void setLineType(int style) {
+ if(primaryShape instanceof Shape) {
+ ((Shape)primaryShape).setLineStyle(style);
+ }
+ }
+
+ /**
+ * @generated
+ */
+ public EditPart getPrimaryChildEditPart() {
+ return getChildBySemanticHint(UMLVisualIDRegistry.getType(ExpansionRegionKeywordEditPart.VISUAL_ID));
+ }
+
+ /**
+ * @generated
+ */
+ public List<IElementType> getMARelTypesOnSource() {
+ ArrayList<IElementType> types = new ArrayList<IElementType>(5);
+ types.add(UMLElementTypes.ActionLocalPrecondition_4001);
+ types.add(UMLElementTypes.ActionLocalPostcondition_4002);
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ types.add(UMLElementTypes.ControlFlow_4004);
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ return types;
+ }
+
+ /**
+ * @generated
+ */
+ public List<IElementType> getMARelTypesOnSourceAndTarget(IGraphicalEditPart targetEditPart) {
+ LinkedList<IElementType> types = new LinkedList<IElementType>();
+ if(targetEditPart instanceof DurationConstraintAsLocalPrecondEditPart) {
+ types.add(UMLElementTypes.ActionLocalPrecondition_4001);
+ }
+ if(targetEditPart instanceof DurationConstraintAsLocalPostcondEditPart) {
+ types.add(UMLElementTypes.ActionLocalPrecondition_4001);
+ }
+ if(targetEditPart instanceof TimeConstraintAsLocalPrecondEditPart) {
+ types.add(UMLElementTypes.ActionLocalPrecondition_4001);
+ }
+ if(targetEditPart instanceof TimeConstraintAsLocalPostcondEditPart) {
+ types.add(UMLElementTypes.ActionLocalPrecondition_4001);
+ }
+ if(targetEditPart instanceof IntervalConstraintAsLocalPrecondEditPart) {
+ types.add(UMLElementTypes.ActionLocalPrecondition_4001);
+ }
+ if(targetEditPart instanceof IntervalConstraintAsLocalPostcondEditPart) {
+ types.add(UMLElementTypes.ActionLocalPrecondition_4001);
+ }
+ if(targetEditPart instanceof ConstraintAsLocalPrecondEditPart) {
+ types.add(UMLElementTypes.ActionLocalPrecondition_4001);
+ }
+ if(targetEditPart instanceof ConstraintAsLocalPostcondEditPart) {
+ types.add(UMLElementTypes.ActionLocalPrecondition_4001);
+ }
+ if(targetEditPart instanceof ConstraintEditPartCN) {
+ types.add(UMLElementTypes.ActionLocalPrecondition_4001);
+ }
+ if(targetEditPart instanceof DurationConstraintAsLocalPrecondEditPart) {
+ types.add(UMLElementTypes.ActionLocalPostcondition_4002);
+ }
+ if(targetEditPart instanceof DurationConstraintAsLocalPostcondEditPart) {
+ types.add(UMLElementTypes.ActionLocalPostcondition_4002);
+ }
+ if(targetEditPart instanceof TimeConstraintAsLocalPrecondEditPart) {
+ types.add(UMLElementTypes.ActionLocalPostcondition_4002);
+ }
+ if(targetEditPart instanceof TimeConstraintAsLocalPostcondEditPart) {
+ types.add(UMLElementTypes.ActionLocalPostcondition_4002);
+ }
+ if(targetEditPart instanceof IntervalConstraintAsLocalPrecondEditPart) {
+ types.add(UMLElementTypes.ActionLocalPostcondition_4002);
+ }
+ if(targetEditPart instanceof IntervalConstraintAsLocalPostcondEditPart) {
+ types.add(UMLElementTypes.ActionLocalPostcondition_4002);
+ }
+ if(targetEditPart instanceof ConstraintAsLocalPrecondEditPart) {
+ types.add(UMLElementTypes.ActionLocalPostcondition_4002);
+ }
+ if(targetEditPart instanceof ConstraintAsLocalPostcondEditPart) {
+ types.add(UMLElementTypes.ActionLocalPostcondition_4002);
+ }
+ if(targetEditPart instanceof ConstraintEditPartCN) {
+ types.add(UMLElementTypes.ActionLocalPostcondition_4002);
+ }
+ if(targetEditPart instanceof InitialNodeEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ActivityFinalNodeEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof FlowFinalNodeEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof OpaqueActionEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ValuePinInOpaqueActEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ActionInputPinInOpaqueActEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof InputPinInOpaqueActEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof OutputPinInOpaqueActEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof CallBehaviorActionEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ValuePinInCallBeActEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ActionInputPinInCallBeActEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof InputPinInCallBeActEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof OutputPinInCallBeActEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof CallOperationActionEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ActionInputPinInCallOpActEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ValuePinInCallOpActEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof InputPinInCallOpActEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof OutputPinInCallOpActEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ValuePinInCallOpActAsTargetEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ActionInputPinInCallOpActAsTargetEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof InputPinInCallOpActAsTargetEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof DecisionNodeEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof MergeNodeEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ForkNodeEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof JoinNodeEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof DataStoreNodeEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof SendObjectActionEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ValuePinInSendObjActAsReqEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ActionInputPinInSendObjActAsReqEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof InputPinInSendObjActAsReqEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ValuePinInSendObjActAsTargetEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ActionInputPinInSendObjActAsTargetEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof InputPinInSendObjActAsTargetEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof SendSignalActionEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ActionInputPinInSendSigActEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ValuePinInSendSigActEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof InputPinInSendSigActEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ValuePinInSendSigActAsTargetEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ActionInputPinInSendSigActAsTargetEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof InputPinInSendSigActAsTargetEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ActivityParameterNodeEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof AcceptEventActionEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof OutputPinInAcceptEventActionEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ValueSpecificationActionEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof OutputPinInValSpecActEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ConditionalNodeEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.ExpansionRegionEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ExpansionNodeAsInEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ExpansionNodeAsOutEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof LoopNodeEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof OutputPinInLoopNodeAsBodyOutputEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof OutputPinInLoopNodeAsLoopVariableEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof OutputPinInLoopNodeAsResultEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof SequenceNodeEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof StructuredActivityNodeEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof InputPinInLoopNodeAsVariableEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ReadSelfActionEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ReadSelfActionOutputPinEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof CreateObjectActionEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof OutputPinInCreateObjectActionAsResultEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ReadStructuralFeatureActionEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof InputPinInReadStructuralFeatureAsObjectEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof OutputPinInReadStructuralFeatureAsResultEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof AddStructuralFeatureValueActionEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof InputPinInAddStructuralFeatureValueActionAsObjectEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof InputPinInAddStructuralFeatureValueActionAsValueEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof OutputPinInAddStructuralFeatureValueActionAsResultEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof DestroyObjectActionEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof InputPinInDestroyObjectActionEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof ReadVariableActionEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof OutputPinInReadVariableActionAsResultEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof AddVariableValueActionEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof InputPinInAddVariableValueActionAsInsertAtEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof InputPinInAddVariableValueActionAsValueEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof BroadcastSignalActionEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof InputPinInBroadcastSignalActionEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof CentralBufferNodeEditPart) {
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ }
+ if(targetEditPart instanceof InitialNodeEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ActivityFinalNodeEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof FlowFinalNodeEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof OpaqueActionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ValuePinInOpaqueActEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ActionInputPinInOpaqueActEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof InputPinInOpaqueActEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof OutputPinInOpaqueActEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof CallBehaviorActionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ValuePinInCallBeActEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ActionInputPinInCallBeActEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof InputPinInCallBeActEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof OutputPinInCallBeActEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof CallOperationActionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ActionInputPinInCallOpActEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ValuePinInCallOpActEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof InputPinInCallOpActEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof OutputPinInCallOpActEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ValuePinInCallOpActAsTargetEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ActionInputPinInCallOpActAsTargetEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof InputPinInCallOpActAsTargetEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof DecisionNodeEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof MergeNodeEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ForkNodeEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof JoinNodeEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof DataStoreNodeEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof SendObjectActionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ValuePinInSendObjActAsReqEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ActionInputPinInSendObjActAsReqEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof InputPinInSendObjActAsReqEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ValuePinInSendObjActAsTargetEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ActionInputPinInSendObjActAsTargetEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof InputPinInSendObjActAsTargetEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof SendSignalActionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ActionInputPinInSendSigActEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ValuePinInSendSigActEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof InputPinInSendSigActEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ValuePinInSendSigActAsTargetEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ActionInputPinInSendSigActAsTargetEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof InputPinInSendSigActAsTargetEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ActivityParameterNodeEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof AcceptEventActionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof OutputPinInAcceptEventActionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ValueSpecificationActionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof OutputPinInValSpecActEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ConditionalNodeEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.ExpansionRegionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ExpansionNodeAsInEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ExpansionNodeAsOutEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof LoopNodeEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof OutputPinInLoopNodeAsBodyOutputEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof OutputPinInLoopNodeAsLoopVariableEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof OutputPinInLoopNodeAsResultEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof SequenceNodeEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof StructuredActivityNodeEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof InputPinInLoopNodeAsVariableEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ReadSelfActionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ReadSelfActionOutputPinEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof CreateObjectActionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof OutputPinInCreateObjectActionAsResultEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ReadStructuralFeatureActionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof InputPinInReadStructuralFeatureAsObjectEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof OutputPinInReadStructuralFeatureAsResultEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof AddStructuralFeatureValueActionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof InputPinInAddStructuralFeatureValueActionAsObjectEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof InputPinInAddStructuralFeatureValueActionAsValueEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof OutputPinInAddStructuralFeatureValueActionAsResultEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof DestroyObjectActionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof InputPinInDestroyObjectActionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ReadVariableActionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof OutputPinInReadVariableActionAsResultEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof AddVariableValueActionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof InputPinInAddVariableValueActionAsInsertAtEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof InputPinInAddVariableValueActionAsValueEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof BroadcastSignalActionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof InputPinInBroadcastSignalActionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof CentralBufferNodeEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof ValuePinInOpaqueActEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof ActionInputPinInOpaqueActEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof InputPinInOpaqueActEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof OutputPinInOpaqueActEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof ValuePinInCallBeActEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof ActionInputPinInCallBeActEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof InputPinInCallBeActEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof OutputPinInCallBeActEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof ActionInputPinInCallOpActEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof ValuePinInCallOpActEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof InputPinInCallOpActEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof OutputPinInCallOpActEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof ValuePinInCallOpActAsTargetEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof ActionInputPinInCallOpActAsTargetEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof InputPinInCallOpActAsTargetEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof DataStoreNodeEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof ValuePinInSendObjActAsReqEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof ActionInputPinInSendObjActAsReqEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof InputPinInSendObjActAsReqEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof ValuePinInSendObjActAsTargetEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof ActionInputPinInSendObjActAsTargetEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof InputPinInSendObjActAsTargetEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof ActionInputPinInSendSigActEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof ValuePinInSendSigActEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof InputPinInSendSigActEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof ValuePinInSendSigActAsTargetEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof ActionInputPinInSendSigActAsTargetEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof InputPinInSendSigActAsTargetEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof ActivityParameterNodeEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof OutputPinInAcceptEventActionEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof OutputPinInValSpecActEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof ExpansionNodeAsInEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof ExpansionNodeAsOutEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof OutputPinInLoopNodeAsBodyOutputEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof OutputPinInLoopNodeAsLoopVariableEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof OutputPinInLoopNodeAsResultEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof InputPinInLoopNodeAsVariableEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof ReadSelfActionOutputPinEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof OutputPinInCreateObjectActionAsResultEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof InputPinInReadStructuralFeatureAsObjectEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof OutputPinInReadStructuralFeatureAsResultEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof InputPinInAddStructuralFeatureValueActionAsObjectEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof InputPinInAddStructuralFeatureValueActionAsValueEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof OutputPinInAddStructuralFeatureValueActionAsResultEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof InputPinInDestroyObjectActionEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof OutputPinInReadVariableActionAsResultEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof InputPinInAddVariableValueActionAsInsertAtEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof InputPinInAddVariableValueActionAsValueEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof InputPinInBroadcastSignalActionEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ if(targetEditPart instanceof CentralBufferNodeEditPart) {
+ types.add(UMLElementTypes.ExceptionHandler_4005);
+ }
+ return types;
+ }
+
+ /**
+ * @generated
+ */
+ public List<IElementType> getMATypesForTarget(IElementType relationshipType) {
+ LinkedList<IElementType> types = new LinkedList<IElementType>();
+ if(relationshipType == UMLElementTypes.ActionLocalPrecondition_4001) {
+ types.add(UMLElementTypes.DurationConstraint_3034);
+ types.add(UMLElementTypes.DurationConstraint_3035);
+ types.add(UMLElementTypes.TimeConstraint_3036);
+ types.add(UMLElementTypes.TimeConstraint_3037);
+ types.add(UMLElementTypes.IntervalConstraint_3032);
+ types.add(UMLElementTypes.IntervalConstraint_3033);
+ types.add(UMLElementTypes.Constraint_3011);
+ types.add(UMLElementTypes.Constraint_3012);
+ types.add(UMLElementTypes.Constraint_3112);
+ } else if(relationshipType == UMLElementTypes.ActionLocalPostcondition_4002) {
+ types.add(UMLElementTypes.DurationConstraint_3034);
+ types.add(UMLElementTypes.DurationConstraint_3035);
+ types.add(UMLElementTypes.TimeConstraint_3036);
+ types.add(UMLElementTypes.TimeConstraint_3037);
+ types.add(UMLElementTypes.IntervalConstraint_3032);
+ types.add(UMLElementTypes.IntervalConstraint_3033);
+ types.add(UMLElementTypes.Constraint_3011);
+ types.add(UMLElementTypes.Constraint_3012);
+ types.add(UMLElementTypes.Constraint_3112);
+ } else if(relationshipType == UMLElementTypes.ObjectFlow_4003) {
+ types.add(UMLElementTypes.InitialNode_3004);
+ types.add(UMLElementTypes.ActivityFinalNode_3005);
+ types.add(UMLElementTypes.FlowFinalNode_3006);
+ types.add(UMLElementTypes.OpaqueAction_3007);
+ types.add(UMLElementTypes.ValuePin_3015);
+ types.add(UMLElementTypes.ActionInputPin_3016);
+ types.add(UMLElementTypes.InputPin_3013);
+ types.add(UMLElementTypes.OutputPin_3014);
+ types.add(UMLElementTypes.CallBehaviorAction_3008);
+ types.add(UMLElementTypes.ValuePin_3017);
+ types.add(UMLElementTypes.ActionInputPin_3018);
+ types.add(UMLElementTypes.InputPin_3019);
+ types.add(UMLElementTypes.OutputPin_3020);
+ types.add(UMLElementTypes.CallOperationAction_3010);
+ types.add(UMLElementTypes.ActionInputPin_3021);
+ types.add(UMLElementTypes.ValuePin_3022);
+ types.add(UMLElementTypes.InputPin_3023);
+ types.add(UMLElementTypes.OutputPin_3024);
+ types.add(UMLElementTypes.ValuePin_3025);
+ types.add(UMLElementTypes.ActionInputPin_3026);
+ types.add(UMLElementTypes.InputPin_3027);
+ types.add(UMLElementTypes.DecisionNode_3038);
+ types.add(UMLElementTypes.MergeNode_3039);
+ types.add(UMLElementTypes.ForkNode_3040);
+ types.add(UMLElementTypes.JoinNode_3041);
+ types.add(UMLElementTypes.DataStoreNode_3078);
+ types.add(UMLElementTypes.SendObjectAction_3042);
+ types.add(UMLElementTypes.ValuePin_3046);
+ types.add(UMLElementTypes.ActionInputPin_3047);
+ types.add(UMLElementTypes.InputPin_3048);
+ types.add(UMLElementTypes.ValuePin_3049);
+ types.add(UMLElementTypes.ActionInputPin_3050);
+ types.add(UMLElementTypes.InputPin_3051);
+ types.add(UMLElementTypes.SendSignalAction_3052);
+ types.add(UMLElementTypes.ActionInputPin_3053);
+ types.add(UMLElementTypes.ValuePin_3054);
+ types.add(UMLElementTypes.InputPin_3055);
+ types.add(UMLElementTypes.ValuePin_3060);
+ types.add(UMLElementTypes.ActionInputPin_3061);
+ types.add(UMLElementTypes.InputPin_3062);
+ types.add(UMLElementTypes.ActivityParameterNode_3059);
+ types.add(UMLElementTypes.AcceptEventAction_3063);
+ types.add(UMLElementTypes.OutputPin_3064);
+ types.add(UMLElementTypes.ValueSpecificationAction_3076);
+ types.add(UMLElementTypes.OutputPin_3077);
+ types.add(UMLElementTypes.ConditionalNode_3069);
+ types.add(UMLElementTypes.ExpansionRegion_3070);
+ types.add(UMLElementTypes.ExpansionNode_3074);
+ types.add(UMLElementTypes.ExpansionNode_3075);
+ types.add(UMLElementTypes.LoopNode_3071);
+ types.add(UMLElementTypes.OutputPin_3109);
+ types.add(UMLElementTypes.OutputPin_3110);
+ types.add(UMLElementTypes.OutputPin_3111);
+ types.add(UMLElementTypes.SequenceNode_3073);
+ types.add(UMLElementTypes.StructuredActivityNode_3065);
+ types.add(UMLElementTypes.InputPin_3105);
+ types.add(UMLElementTypes.ReadSelfAction_3081);
+ types.add(UMLElementTypes.OutputPin_3084);
+ types.add(UMLElementTypes.CreateObjectAction_3086);
+ types.add(UMLElementTypes.OutputPin_3087);
+ types.add(UMLElementTypes.ReadStructuralFeatureAction_3088);
+ types.add(UMLElementTypes.InputPin_3089);
+ types.add(UMLElementTypes.OutputPin_3090);
+ types.add(UMLElementTypes.AddStructuralFeatureValueAction_3091);
+ types.add(UMLElementTypes.InputPin_3092);
+ types.add(UMLElementTypes.InputPin_3093);
+ types.add(UMLElementTypes.OutputPin_3094);
+ types.add(UMLElementTypes.DestroyObjectAction_3095);
+ types.add(UMLElementTypes.InputPin_3096);
+ types.add(UMLElementTypes.ReadVariableAction_3097);
+ types.add(UMLElementTypes.OutputPin_3098);
+ types.add(UMLElementTypes.AddVariableValueAction_3099);
+ types.add(UMLElementTypes.InputPin_3100);
+ types.add(UMLElementTypes.InputPin_3101);
+ types.add(UMLElementTypes.BroadcastSignalAction_3102);
+ types.add(UMLElementTypes.InputPin_3103);
+ types.add(UMLElementTypes.CentralBufferNode_3104);
+ } else if(relationshipType == UMLElementTypes.ControlFlow_4004) {
+ types.add(UMLElementTypes.InitialNode_3004);
+ types.add(UMLElementTypes.ActivityFinalNode_3005);
+ types.add(UMLElementTypes.FlowFinalNode_3006);
+ types.add(UMLElementTypes.OpaqueAction_3007);
+ types.add(UMLElementTypes.ValuePin_3015);
+ types.add(UMLElementTypes.ActionInputPin_3016);
+ types.add(UMLElementTypes.InputPin_3013);
+ types.add(UMLElementTypes.OutputPin_3014);
+ types.add(UMLElementTypes.CallBehaviorAction_3008);
+ types.add(UMLElementTypes.ValuePin_3017);
+ types.add(UMLElementTypes.ActionInputPin_3018);
+ types.add(UMLElementTypes.InputPin_3019);
+ types.add(UMLElementTypes.OutputPin_3020);
+ types.add(UMLElementTypes.CallOperationAction_3010);
+ types.add(UMLElementTypes.ActionInputPin_3021);
+ types.add(UMLElementTypes.ValuePin_3022);
+ types.add(UMLElementTypes.InputPin_3023);
+ types.add(UMLElementTypes.OutputPin_3024);
+ types.add(UMLElementTypes.ValuePin_3025);
+ types.add(UMLElementTypes.ActionInputPin_3026);
+ types.add(UMLElementTypes.InputPin_3027);
+ types.add(UMLElementTypes.DecisionNode_3038);
+ types.add(UMLElementTypes.MergeNode_3039);
+ types.add(UMLElementTypes.ForkNode_3040);
+ types.add(UMLElementTypes.JoinNode_3041);
+ types.add(UMLElementTypes.DataStoreNode_3078);
+ types.add(UMLElementTypes.SendObjectAction_3042);
+ types.add(UMLElementTypes.ValuePin_3046);
+ types.add(UMLElementTypes.ActionInputPin_3047);
+ types.add(UMLElementTypes.InputPin_3048);
+ types.add(UMLElementTypes.ValuePin_3049);
+ types.add(UMLElementTypes.ActionInputPin_3050);
+ types.add(UMLElementTypes.InputPin_3051);
+ types.add(UMLElementTypes.SendSignalAction_3052);
+ types.add(UMLElementTypes.ActionInputPin_3053);
+ types.add(UMLElementTypes.ValuePin_3054);
+ types.add(UMLElementTypes.InputPin_3055);
+ types.add(UMLElementTypes.ValuePin_3060);
+ types.add(UMLElementTypes.ActionInputPin_3061);
+ types.add(UMLElementTypes.InputPin_3062);
+ types.add(UMLElementTypes.ActivityParameterNode_3059);
+ types.add(UMLElementTypes.AcceptEventAction_3063);
+ types.add(UMLElementTypes.OutputPin_3064);
+ types.add(UMLElementTypes.ValueSpecificationAction_3076);
+ types.add(UMLElementTypes.OutputPin_3077);
+ types.add(UMLElementTypes.ConditionalNode_3069);
+ types.add(UMLElementTypes.ExpansionRegion_3070);
+ types.add(UMLElementTypes.ExpansionNode_3074);
+ types.add(UMLElementTypes.ExpansionNode_3075);
+ types.add(UMLElementTypes.LoopNode_3071);
+ types.add(UMLElementTypes.OutputPin_3109);
+ types.add(UMLElementTypes.OutputPin_3110);
+ types.add(UMLElementTypes.OutputPin_3111);
+ types.add(UMLElementTypes.SequenceNode_3073);
+ types.add(UMLElementTypes.StructuredActivityNode_3065);
+ types.add(UMLElementTypes.InputPin_3105);
+ types.add(UMLElementTypes.ReadSelfAction_3081);
+ types.add(UMLElementTypes.OutputPin_3084);
+ types.add(UMLElementTypes.CreateObjectAction_3086);
+ types.add(UMLElementTypes.OutputPin_3087);
+ types.add(UMLElementTypes.ReadStructuralFeatureAction_3088);
+ types.add(UMLElementTypes.InputPin_3089);
+ types.add(UMLElementTypes.OutputPin_3090);
+ types.add(UMLElementTypes.AddStructuralFeatureValueAction_3091);
+ types.add(UMLElementTypes.InputPin_3092);
+ types.add(UMLElementTypes.InputPin_3093);
+ types.add(UMLElementTypes.OutputPin_3094);
+ types.add(UMLElementTypes.DestroyObjectAction_3095);
+ types.add(UMLElementTypes.InputPin_3096);
+ types.add(UMLElementTypes.ReadVariableAction_3097);
+ types.add(UMLElementTypes.OutputPin_3098);
+ types.add(UMLElementTypes.AddVariableValueAction_3099);
+ types.add(UMLElementTypes.InputPin_3100);
+ types.add(UMLElementTypes.InputPin_3101);
+ types.add(UMLElementTypes.BroadcastSignalAction_3102);
+ types.add(UMLElementTypes.InputPin_3103);
+ types.add(UMLElementTypes.CentralBufferNode_3104);
+ } else if(relationshipType == UMLElementTypes.ExceptionHandler_4005) {
+ types.add(UMLElementTypes.ValuePin_3015);
+ types.add(UMLElementTypes.ActionInputPin_3016);
+ types.add(UMLElementTypes.InputPin_3013);
+ types.add(UMLElementTypes.OutputPin_3014);
+ types.add(UMLElementTypes.ValuePin_3017);
+ types.add(UMLElementTypes.ActionInputPin_3018);
+ types.add(UMLElementTypes.InputPin_3019);
+ types.add(UMLElementTypes.OutputPin_3020);
+ types.add(UMLElementTypes.ActionInputPin_3021);
+ types.add(UMLElementTypes.ValuePin_3022);
+ types.add(UMLElementTypes.InputPin_3023);
+ types.add(UMLElementTypes.OutputPin_3024);
+ types.add(UMLElementTypes.ValuePin_3025);
+ types.add(UMLElementTypes.ActionInputPin_3026);
+ types.add(UMLElementTypes.InputPin_3027);
+ types.add(UMLElementTypes.DataStoreNode_3078);
+ types.add(UMLElementTypes.ValuePin_3046);
+ types.add(UMLElementTypes.ActionInputPin_3047);
+ types.add(UMLElementTypes.InputPin_3048);
+ types.add(UMLElementTypes.ValuePin_3049);
+ types.add(UMLElementTypes.ActionInputPin_3050);
+ types.add(UMLElementTypes.InputPin_3051);
+ types.add(UMLElementTypes.ActionInputPin_3053);
+ types.add(UMLElementTypes.ValuePin_3054);
+ types.add(UMLElementTypes.InputPin_3055);
+ types.add(UMLElementTypes.ValuePin_3060);
+ types.add(UMLElementTypes.ActionInputPin_3061);
+ types.add(UMLElementTypes.InputPin_3062);
+ types.add(UMLElementTypes.ActivityParameterNode_3059);
+ types.add(UMLElementTypes.OutputPin_3064);
+ types.add(UMLElementTypes.OutputPin_3077);
+ types.add(UMLElementTypes.ExpansionNode_3074);
+ types.add(UMLElementTypes.ExpansionNode_3075);
+ types.add(UMLElementTypes.OutputPin_3109);
+ types.add(UMLElementTypes.OutputPin_3110);
+ types.add(UMLElementTypes.OutputPin_3111);
+ types.add(UMLElementTypes.InputPin_3105);
+ types.add(UMLElementTypes.OutputPin_3084);
+ types.add(UMLElementTypes.OutputPin_3087);
+ types.add(UMLElementTypes.InputPin_3089);
+ types.add(UMLElementTypes.OutputPin_3090);
+ types.add(UMLElementTypes.InputPin_3092);
+ types.add(UMLElementTypes.InputPin_3093);
+ types.add(UMLElementTypes.OutputPin_3094);
+ types.add(UMLElementTypes.InputPin_3096);
+ types.add(UMLElementTypes.OutputPin_3098);
+ types.add(UMLElementTypes.InputPin_3100);
+ types.add(UMLElementTypes.InputPin_3101);
+ types.add(UMLElementTypes.InputPin_3103);
+ types.add(UMLElementTypes.CentralBufferNode_3104);
+ }
+ return types;
+ }
+
+ /**
+ * @generated
+ */
+ public List<IElementType> getMARelTypesOnTarget() {
+ ArrayList<IElementType> types = new ArrayList<IElementType>(4);
+ types.add(UMLElementTypes.ObjectFlow_4003);
+ types.add(UMLElementTypes.ControlFlow_4004);
+ types.add(UMLElementTypes.CommentAnnotatedElement_4006);
+ types.add(UMLElementTypes.ConstraintConstrainedElement_4007);
+ return types;
+ }
+
+ /**
+ * @generated
+ */
+ public List<IElementType> getMATypesForSource(IElementType relationshipType) {
+ LinkedList<IElementType> types = new LinkedList<IElementType>();
+ if(relationshipType == UMLElementTypes.ObjectFlow_4003) {
+ types.add(UMLElementTypes.InitialNode_3004);
+ types.add(UMLElementTypes.ActivityFinalNode_3005);
+ types.add(UMLElementTypes.FlowFinalNode_3006);
+ types.add(UMLElementTypes.OpaqueAction_3007);
+ types.add(UMLElementTypes.ValuePin_3015);
+ types.add(UMLElementTypes.ActionInputPin_3016);
+ types.add(UMLElementTypes.InputPin_3013);
+ types.add(UMLElementTypes.OutputPin_3014);
+ types.add(UMLElementTypes.CallBehaviorAction_3008);
+ types.add(UMLElementTypes.ValuePin_3017);
+ types.add(UMLElementTypes.ActionInputPin_3018);
+ types.add(UMLElementTypes.InputPin_3019);
+ types.add(UMLElementTypes.OutputPin_3020);
+ types.add(UMLElementTypes.CallOperationAction_3010);
+ types.add(UMLElementTypes.ActionInputPin_3021);
+ types.add(UMLElementTypes.ValuePin_3022);
+ types.add(UMLElementTypes.InputPin_3023);
+ types.add(UMLElementTypes.OutputPin_3024);
+ types.add(UMLElementTypes.ValuePin_3025);
+ types.add(UMLElementTypes.ActionInputPin_3026);
+ types.add(UMLElementTypes.InputPin_3027);
+ types.add(UMLElementTypes.DecisionNode_3038);
+ types.add(UMLElementTypes.MergeNode_3039);
+ types.add(UMLElementTypes.ForkNode_3040);
+ types.add(UMLElementTypes.JoinNode_3041);
+ types.add(UMLElementTypes.DataStoreNode_3078);
+ types.add(UMLElementTypes.SendObjectAction_3042);
+ types.add(UMLElementTypes.ValuePin_3046);
+ types.add(UMLElementTypes.ActionInputPin_3047);
+ types.add(UMLElementTypes.InputPin_3048);
+ types.add(UMLElementTypes.ValuePin_3049);
+ types.add(UMLElementTypes.ActionInputPin_3050);
+ types.add(UMLElementTypes.InputPin_3051);
+ types.add(UMLElementTypes.SendSignalAction_3052);
+ types.add(UMLElementTypes.ActionInputPin_3053);
+ types.add(UMLElementTypes.ValuePin_3054);
+ types.add(UMLElementTypes.InputPin_3055);
+ types.add(UMLElementTypes.ValuePin_3060);
+ types.add(UMLElementTypes.ActionInputPin_3061);
+ types.add(UMLElementTypes.InputPin_3062);
+ types.add(UMLElementTypes.ActivityParameterNode_3059);
+ types.add(UMLElementTypes.AcceptEventAction_3063);
+ types.add(UMLElementTypes.OutputPin_3064);
+ types.add(UMLElementTypes.ValueSpecificationAction_3076);
+ types.add(UMLElementTypes.OutputPin_3077);
+ types.add(UMLElementTypes.ConditionalNode_3069);
+ types.add(UMLElementTypes.ExpansionRegion_3070);
+ types.add(UMLElementTypes.ExpansionNode_3074);
+ types.add(UMLElementTypes.ExpansionNode_3075);
+ types.add(UMLElementTypes.LoopNode_3071);
+ types.add(UMLElementTypes.OutputPin_3109);
+ types.add(UMLElementTypes.OutputPin_3110);
+ types.add(UMLElementTypes.OutputPin_3111);
+ types.add(UMLElementTypes.SequenceNode_3073);
+ types.add(UMLElementTypes.StructuredActivityNode_3065);
+ types.add(UMLElementTypes.InputPin_3105);
+ types.add(UMLElementTypes.ReadSelfAction_3081);
+ types.add(UMLElementTypes.OutputPin_3084);
+ types.add(UMLElementTypes.CreateObjectAction_3086);
+ types.add(UMLElementTypes.OutputPin_3087);
+ types.add(UMLElementTypes.ReadStructuralFeatureAction_3088);
+ types.add(UMLElementTypes.InputPin_3089);
+ types.add(UMLElementTypes.OutputPin_3090);
+ types.add(UMLElementTypes.AddStructuralFeatureValueAction_3091);
+ types.add(UMLElementTypes.InputPin_3092);
+ types.add(UMLElementTypes.InputPin_3093);
+ types.add(UMLElementTypes.OutputPin_3094);
+ types.add(UMLElementTypes.DestroyObjectAction_3095);
+ types.add(UMLElementTypes.InputPin_3096);
+ types.add(UMLElementTypes.ReadVariableAction_3097);
+ types.add(UMLElementTypes.OutputPin_3098);
+ types.add(UMLElementTypes.AddVariableValueAction_3099);
+ types.add(UMLElementTypes.InputPin_3100);
+ types.add(UMLElementTypes.InputPin_3101);
+ types.add(UMLElementTypes.BroadcastSignalAction_3102);
+ types.add(UMLElementTypes.InputPin_3103);
+ types.add(UMLElementTypes.CentralBufferNode_3104);
+ } else if(relationshipType == UMLElementTypes.ControlFlow_4004) {
+ types.add(UMLElementTypes.InitialNode_3004);
+ types.add(UMLElementTypes.ActivityFinalNode_3005);
+ types.add(UMLElementTypes.FlowFinalNode_3006);
+ types.add(UMLElementTypes.OpaqueAction_3007);
+ types.add(UMLElementTypes.ValuePin_3015);
+ types.add(UMLElementTypes.ActionInputPin_3016);
+ types.add(UMLElementTypes.InputPin_3013);
+ types.add(UMLElementTypes.OutputPin_3014);
+ types.add(UMLElementTypes.CallBehaviorAction_3008);
+ types.add(UMLElementTypes.ValuePin_3017);
+ types.add(UMLElementTypes.ActionInputPin_3018);
+ types.add(UMLElementTypes.InputPin_3019);
+ types.add(UMLElementTypes.OutputPin_3020);
+ types.add(UMLElementTypes.CallOperationAction_3010);
+ types.add(UMLElementTypes.ActionInputPin_3021);
+ types.add(UMLElementTypes.ValuePin_3022);
+ types.add(UMLElementTypes.InputPin_3023);
+ types.add(UMLElementTypes.OutputPin_3024);
+ types.add(UMLElementTypes.ValuePin_3025);
+ types.add(UMLElementTypes.ActionInputPin_3026);
+ types.add(UMLElementTypes.InputPin_3027);
+ types.add(UMLElementTypes.DecisionNode_3038);
+ types.add(UMLElementTypes.MergeNode_3039);
+ types.add(UMLElementTypes.ForkNode_3040);
+ types.add(UMLElementTypes.JoinNode_3041);
+ types.add(UMLElementTypes.DataStoreNode_3078);
+ types.add(UMLElementTypes.SendObjectAction_3042);
+ types.add(UMLElementTypes.ValuePin_3046);
+ types.add(UMLElementTypes.ActionInputPin_3047);
+ types.add(UMLElementTypes.InputPin_3048);
+ types.add(UMLElementTypes.ValuePin_3049);
+ types.add(UMLElementTypes.ActionInputPin_3050);
+ types.add(UMLElementTypes.InputPin_3051);
+ types.add(UMLElementTypes.SendSignalAction_3052);
+ types.add(UMLElementTypes.ActionInputPin_3053);
+ types.add(UMLElementTypes.ValuePin_3054);
+ types.add(UMLElementTypes.InputPin_3055);
+ types.add(UMLElementTypes.ValuePin_3060);
+ types.add(UMLElementTypes.ActionInputPin_3061);
+ types.add(UMLElementTypes.InputPin_3062);
+ types.add(UMLElementTypes.ActivityParameterNode_3059);
+ types.add(UMLElementTypes.AcceptEventAction_3063);
+ types.add(UMLElementTypes.OutputPin_3064);
+ types.add(UMLElementTypes.ValueSpecificationAction_3076);
+ types.add(UMLElementTypes.OutputPin_3077);
+ types.add(UMLElementTypes.ConditionalNode_3069);
+ types.add(UMLElementTypes.ExpansionRegion_3070);
+ types.add(UMLElementTypes.ExpansionNode_3074);
+ types.add(UMLElementTypes.ExpansionNode_3075);
+ types.add(UMLElementTypes.LoopNode_3071);
+ types.add(UMLElementTypes.OutputPin_3109);
+ types.add(UMLElementTypes.OutputPin_3110);
+ types.add(UMLElementTypes.OutputPin_3111);
+ types.add(UMLElementTypes.SequenceNode_3073);
+ types.add(UMLElementTypes.StructuredActivityNode_3065);
+ types.add(UMLElementTypes.InputPin_3105);
+ types.add(UMLElementTypes.ReadSelfAction_3081);
+ types.add(UMLElementTypes.OutputPin_3084);
+ types.add(UMLElementTypes.CreateObjectAction_3086);
+ types.add(UMLElementTypes.OutputPin_3087);
+ types.add(UMLElementTypes.ReadStructuralFeatureAction_3088);
+ types.add(UMLElementTypes.InputPin_3089);
+ types.add(UMLElementTypes.OutputPin_3090);
+ types.add(UMLElementTypes.AddStructuralFeatureValueAction_3091);
+ types.add(UMLElementTypes.InputPin_3092);
+ types.add(UMLElementTypes.InputPin_3093);
+ types.add(UMLElementTypes.OutputPin_3094);
+ types.add(UMLElementTypes.DestroyObjectAction_3095);
+ types.add(UMLElementTypes.InputPin_3096);
+ types.add(UMLElementTypes.ReadVariableAction_3097);
+ types.add(UMLElementTypes.OutputPin_3098);
+ types.add(UMLElementTypes.AddVariableValueAction_3099);
+ types.add(UMLElementTypes.InputPin_3100);
+ types.add(UMLElementTypes.InputPin_3101);
+ types.add(UMLElementTypes.BroadcastSignalAction_3102);
+ types.add(UMLElementTypes.InputPin_3103);
+ types.add(UMLElementTypes.CentralBufferNode_3104);
+ } else if(relationshipType == UMLElementTypes.CommentAnnotatedElement_4006) {
+ types.add(UMLElementTypes.Comment_3080);
+ } else if(relationshipType == UMLElementTypes.ConstraintConstrainedElement_4007) {
+ types.add(UMLElementTypes.DurationConstraint_3034);
+ types.add(UMLElementTypes.DurationConstraint_3035);
+ types.add(UMLElementTypes.TimeConstraint_3036);
+ types.add(UMLElementTypes.TimeConstraint_3037);
+ types.add(UMLElementTypes.IntervalConstraint_3032);
+ types.add(UMLElementTypes.IntervalConstraint_3033);
+ types.add(UMLElementTypes.Constraint_3011);
+ types.add(UMLElementTypes.Constraint_3012);
+ types.add(UMLElementTypes.Constraint_3112);
+ }
+ return types;
+ }
+
+ /**
+ * @generated
+ */
+ @Override
+ public Object getPreferredValue(EStructuralFeature feature) {
+ IPreferenceStore preferenceStore = (IPreferenceStore)getDiagramPreferencesHint().getPreferenceStore();
+ Object result = null;
+ if(feature == NotationPackage.eINSTANCE.getLineStyle_LineColor() || feature == NotationPackage.eINSTANCE.getFontStyle_FontColor() || feature == NotationPackage.eINSTANCE.getFillStyle_FillColor()) {
+ String prefColor = null;
+ if(feature == NotationPackage.eINSTANCE.getLineStyle_LineColor()) {
+ prefColor = PreferencesConstantsHelper.getElementConstant("ExpansionRegion", PreferencesConstantsHelper.COLOR_LINE);
+ } else if(feature == NotationPackage.eINSTANCE.getFontStyle_FontColor()) {
+ prefColor = PreferencesConstantsHelper.getElementConstant("ExpansionRegion", PreferencesConstantsHelper.COLOR_FONT);
+ } else if(feature == NotationPackage.eINSTANCE.getFillStyle_FillColor()) {
+ prefColor = PreferencesConstantsHelper.getElementConstant("ExpansionRegion", PreferencesConstantsHelper.COLOR_FILL);
+ }
+ result = FigureUtilities.RGBToInteger(PreferenceConverter.getColor((IPreferenceStore)preferenceStore, prefColor));
+ } else if(feature == NotationPackage.eINSTANCE.getFillStyle_Transparency() || feature == NotationPackage.eINSTANCE.getFillStyle_Gradient()) {
+ String prefGradient = PreferencesConstantsHelper.getElementConstant("ExpansionRegion", PreferencesConstantsHelper.COLOR_GRADIENT);
+ GradientPreferenceConverter gradientPreferenceConverter = new GradientPreferenceConverter(preferenceStore.getString(prefGradient));
+ if(feature == NotationPackage.eINSTANCE.getFillStyle_Transparency()) {
+ result = new Integer(gradientPreferenceConverter.getTransparency());
+ } else if(feature == NotationPackage.eINSTANCE.getFillStyle_Gradient()) {
+ result = gradientPreferenceConverter.getGradientData();
+ }
+ }
+ if(result == null) {
+ result = getStructuralFeatureValue(feature);
+ }
+ return result;
+ }
+}
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/src/org/eclipse/papyrus/uml/diagram/activity/edit/parts/ExpansionRegionStructuredActivityNodeContentCompartmentEditPart.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/src/org/eclipse/papyrus/uml/diagram/activity/edit/parts/ExpansionRegionStructuredActivityNodeContentCompartmentEditPart.java
index 95ff0931c1f..dd6d021cba0 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/src/org/eclipse/papyrus/uml/diagram/activity/edit/parts/ExpansionRegionStructuredActivityNodeContentCompartmentEditPart.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/src/org/eclipse/papyrus/uml/diagram/activity/edit/parts/ExpansionRegionStructuredActivityNodeContentCompartmentEditPart.java
@@ -1,128 +1,128 @@
-/*****************************************************************************
- * Copyright (c) 2010 Atos Origin.
- *
- *
- * 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:
- * Atos Origin - Initial API and implementation
- *
- *****************************************************************************/
-package org.eclipse.papyrus.uml.diagram.activity.edit.parts;
-
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.geometry.Dimension;
-import org.eclipse.draw2d.geometry.Point;
-import org.eclipse.draw2d.geometry.Rectangle;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.gef.GraphicalEditPart;
-import org.eclipse.gmf.runtime.diagram.ui.editparts.ShapeCompartmentEditPart;
-import org.eclipse.gmf.runtime.diagram.ui.editpolicies.DragDropEditPolicy;
-import org.eclipse.gmf.runtime.diagram.ui.editpolicies.EditPolicyRoles;
-import org.eclipse.gmf.runtime.diagram.ui.figures.ResizableCompartmentFigure;
-import org.eclipse.gmf.runtime.draw2d.ui.figures.ConstrainedToolbarLayout;
-import org.eclipse.gmf.runtime.notation.NotationPackage;
-import org.eclipse.gmf.runtime.notation.View;
-import org.eclipse.papyrus.uml.diagram.activity.edit.policies.ActivityGroupCustomDragAndDropEditPolicy;
-import org.eclipse.papyrus.uml.diagram.activity.edit.policies.CustomExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy;
-import org.eclipse.papyrus.uml.diagram.activity.edit.policies.ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy;
-import org.eclipse.papyrus.uml.diagram.activity.edit.policies.RemoveOrphanViewPolicy;
-import org.eclipse.papyrus.uml.diagram.activity.part.Messages;
-import org.eclipse.papyrus.uml.diagram.common.editpolicies.DuplicatePasteEditPolicy;
-import org.eclipse.papyrus.uml.diagram.common.editpolicies.PapyrusCreationEditPolicy;
-
-/**
- * @generated
- */
-public class ExpansionRegionStructuredActivityNodeContentCompartmentEditPart extends ShapeCompartmentEditPart {
-
- /**
- * @generated
- */
- public static final int VISUAL_ID = 7009;
-
- /**
- * @generated
- */
- public ExpansionRegionStructuredActivityNodeContentCompartmentEditPart(View view) {
- super(view);
- }
-
- /**
- * @generated
- */
- public String getCompartmentName() {
- return Messages.ExpansionRegionStructuredActivityNodeContentCompartmentEditPart_title;
- }
-
- /**
- * @generated NOT (remove the top border)
- */
- public IFigure createFigure() {
- ResizableCompartmentFigure result = (ResizableCompartmentFigure)super.createFigure();
- result.setTitleVisibility(false);
- // remove the top border
- result.setBorder(null);
- return result;
- }
-
- /**
- * @generated
- */
- protected void createDefaultEditPolicies() {
- super.createDefaultEditPolicies();
- installEditPolicy(EditPolicyRoles.SEMANTIC_ROLE, new ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy());
- installEditPolicy(EditPolicyRoles.CREATION_ROLE, new PapyrusCreationEditPolicy());
- installEditPolicy(EditPolicyRoles.DRAG_DROP_ROLE, new DragDropEditPolicy());
- installEditPolicy(DuplicatePasteEditPolicy.PASTE_ROLE, new DuplicatePasteEditPolicy());
- //in Papyrus diagrams are not strongly synchronised
- //installEditPolicy(org.eclipse.gmf.runtime.diagram.ui.editpolicies.EditPolicyRoles.CANONICAL_ROLE, new org.eclipse.papyrus.uml.diagram.activity.edit.policies.ExpansionRegionStructuredActivityNodeContentCompartmentCanonicalEditPolicy());
- installEditPolicy(EditPolicyRoles.DRAG_DROP_ROLE, new ActivityGroupCustomDragAndDropEditPolicy());
- installEditPolicy("RemoveOrphanView", new RemoveOrphanViewPolicy()); //$NON-NLS-1$
- installEditPolicy(EditPolicyRoles.SEMANTIC_ROLE, new CustomExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy());
- }
-
- /**
- * @generated
- */
- protected void setRatio(Double ratio) {
- if(getFigure().getParent().getLayoutManager() instanceof ConstrainedToolbarLayout) {
- super.setRatio(ratio);
- }
- }
-
- /**
- * @generated
- */
- protected void handleNotificationEvent(Notification notification) {
- Object feature = notification.getFeature();
- if(NotationPackage.eINSTANCE.getSize_Width().equals(feature) || NotationPackage.eINSTANCE.getSize_Height().equals(feature) || NotationPackage.eINSTANCE.getLocation_X().equals(feature) || NotationPackage.eINSTANCE.getLocation_Y().equals(feature)) {
- refreshBounds();
- }
- super.handleNotificationEvent(notification);
- }
-
- /**
- * @generated
- */
- protected void refreshBounds() {
- int width = ((Integer)getStructuralFeatureValue(NotationPackage.eINSTANCE.getSize_Width())).intValue();
- int height = ((Integer)getStructuralFeatureValue(NotationPackage.eINSTANCE.getSize_Height())).intValue();
- Dimension size = new Dimension(width, height);
- int x = ((Integer)getStructuralFeatureValue(NotationPackage.eINSTANCE.getLocation_X())).intValue();
- int y = ((Integer)getStructuralFeatureValue(NotationPackage.eINSTANCE.getLocation_Y())).intValue();
- Point loc = new Point(x, y);
- ((GraphicalEditPart)getParent()).setLayoutConstraint(this, getFigure(), new Rectangle(loc, size));
- }
-
- /**
- * @generated
- */
- protected void refreshVisuals() {
- super.refreshVisuals();
- refreshBounds();
- }
-}
+/*****************************************************************************
+ * Copyright (c) 2010 Atos Origin.
+ *
+ *
+ * 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:
+ * Atos Origin - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.activity.edit.parts;
+
+import org.eclipse.draw2d.IFigure;
+import org.eclipse.draw2d.geometry.Dimension;
+import org.eclipse.draw2d.geometry.Point;
+import org.eclipse.draw2d.geometry.Rectangle;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.gef.GraphicalEditPart;
+import org.eclipse.gmf.runtime.diagram.ui.editparts.ShapeCompartmentEditPart;
+import org.eclipse.gmf.runtime.diagram.ui.editpolicies.DragDropEditPolicy;
+import org.eclipse.gmf.runtime.diagram.ui.editpolicies.EditPolicyRoles;
+import org.eclipse.gmf.runtime.diagram.ui.figures.ResizableCompartmentFigure;
+import org.eclipse.gmf.runtime.draw2d.ui.figures.ConstrainedToolbarLayout;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.uml.diagram.activity.edit.policies.ActivityGroupCustomDragAndDropEditPolicy;
+import org.eclipse.papyrus.uml.diagram.activity.edit.policies.CustomExpansionRegionStructureCompartmentCreationEditPolicy;
+import org.eclipse.papyrus.uml.diagram.activity.edit.policies.CustomExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy;
+import org.eclipse.papyrus.uml.diagram.activity.edit.policies.ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy;
+import org.eclipse.papyrus.uml.diagram.activity.edit.policies.RemoveOrphanViewPolicy;
+import org.eclipse.papyrus.uml.diagram.activity.part.Messages;
+import org.eclipse.papyrus.uml.diagram.common.editpolicies.DuplicatePasteEditPolicy;
+
+/**
+ * @generated
+ */
+public class ExpansionRegionStructuredActivityNodeContentCompartmentEditPart extends ShapeCompartmentEditPart {
+
+ /**
+ * @generated
+ */
+ public static final int VISUAL_ID = 7009;
+
+ /**
+ * @generated
+ */
+ public ExpansionRegionStructuredActivityNodeContentCompartmentEditPart(View view) {
+ super(view);
+ }
+
+ /**
+ * @generated
+ */
+ public String getCompartmentName() {
+ return Messages.ExpansionRegionStructuredActivityNodeContentCompartmentEditPart_title;
+ }
+
+ /**
+ * @generated NOT (remove the top border)
+ */
+ public IFigure createFigure() {
+ ResizableCompartmentFigure result = (ResizableCompartmentFigure)super.createFigure();
+ result.setTitleVisibility(false);
+ // remove the top border
+ result.setBorder(null);
+ return result;
+ }
+
+ /**
+ * @generated
+ */
+ protected void createDefaultEditPolicies() {
+ super.createDefaultEditPolicies();
+ installEditPolicy(EditPolicyRoles.SEMANTIC_ROLE, new ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy());
+ installEditPolicy(EditPolicyRoles.CREATION_ROLE, new CustomExpansionRegionStructureCompartmentCreationEditPolicy());
+ installEditPolicy(EditPolicyRoles.DRAG_DROP_ROLE, new DragDropEditPolicy());
+ installEditPolicy(DuplicatePasteEditPolicy.PASTE_ROLE, new DuplicatePasteEditPolicy());
+ //in Papyrus diagrams are not strongly synchronised
+ //installEditPolicy(org.eclipse.gmf.runtime.diagram.ui.editpolicies.EditPolicyRoles.CANONICAL_ROLE, new org.eclipse.papyrus.uml.diagram.activity.edit.policies.ExpansionRegionStructuredActivityNodeContentCompartmentCanonicalEditPolicy());
+ installEditPolicy(EditPolicyRoles.DRAG_DROP_ROLE, new ActivityGroupCustomDragAndDropEditPolicy());
+ installEditPolicy("RemoveOrphanView", new RemoveOrphanViewPolicy()); //$NON-NLS-1$
+ installEditPolicy(EditPolicyRoles.SEMANTIC_ROLE, new CustomExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy());
+ }
+
+ /**
+ * @generated
+ */
+ protected void setRatio(Double ratio) {
+ if(getFigure().getParent().getLayoutManager() instanceof ConstrainedToolbarLayout) {
+ super.setRatio(ratio);
+ }
+ }
+
+ /**
+ * @generated
+ */
+ protected void handleNotificationEvent(Notification notification) {
+ Object feature = notification.getFeature();
+ if(NotationPackage.eINSTANCE.getSize_Width().equals(feature) || NotationPackage.eINSTANCE.getSize_Height().equals(feature) || NotationPackage.eINSTANCE.getLocation_X().equals(feature) || NotationPackage.eINSTANCE.getLocation_Y().equals(feature)) {
+ refreshBounds();
+ }
+ super.handleNotificationEvent(notification);
+ }
+
+ /**
+ * @generated
+ */
+ protected void refreshBounds() {
+ int width = ((Integer)getStructuralFeatureValue(NotationPackage.eINSTANCE.getSize_Width())).intValue();
+ int height = ((Integer)getStructuralFeatureValue(NotationPackage.eINSTANCE.getSize_Height())).intValue();
+ Dimension size = new Dimension(width, height);
+ int x = ((Integer)getStructuralFeatureValue(NotationPackage.eINSTANCE.getLocation_X())).intValue();
+ int y = ((Integer)getStructuralFeatureValue(NotationPackage.eINSTANCE.getLocation_Y())).intValue();
+ Point loc = new Point(x, y);
+ ((GraphicalEditPart)getParent()).setLayoutConstraint(this, getFigure(), new Rectangle(loc, size));
+ }
+
+ /**
+ * @generated
+ */
+ protected void refreshVisuals() {
+ super.refreshVisuals();
+ refreshBounds();
+ }
+}
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/ExpansionRegionItemSemanticEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/ExpansionRegionItemSemanticEditPolicy.java
index 85154da1dfc..6a0daaf2efc 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/ExpansionRegionItemSemanticEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/ExpansionRegionItemSemanticEditPolicy.java
@@ -1,277 +1,277 @@
-/*****************************************************************************
- * Copyright (c) 2010 Atos Origin.
- *
- *
- * 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:
- * Atos Origin - Initial API and implementation
- *
- *****************************************************************************/
-package org.eclipse.papyrus.uml.diagram.activity.edit.policies;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EReference;
-import org.eclipse.gef.commands.Command;
-import org.eclipse.gef.commands.UnexecutableCommand;
-import org.eclipse.gmf.runtime.common.core.command.ICommand;
-import org.eclipse.gmf.runtime.diagram.ui.commands.ICommandProxy;
-import org.eclipse.gmf.runtime.emf.type.core.IElementType;
-import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest;
-import org.eclipse.gmf.runtime.emf.type.core.requests.CreateRelationshipRequest;
-import org.eclipse.gmf.runtime.emf.type.core.requests.DestroyElementRequest;
-import org.eclipse.gmf.runtime.emf.type.core.requests.ReorientReferenceRelationshipRequest;
-import org.eclipse.gmf.runtime.emf.type.core.requests.ReorientRelationshipRequest;
-import org.eclipse.papyrus.infra.extendedtypes.types.IExtendedHintedElementType;
-import org.eclipse.papyrus.infra.extendedtypes.util.ElementTypeUtils;
-import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils;
-import org.eclipse.papyrus.infra.services.edit.service.IElementEditService;
-import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ActionLocalPostconditionCreateCommand;
-import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ActionLocalPostconditionReorientCommand;
-import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ActionLocalPreconditionCreateCommand;
-import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ActionLocalPreconditionReorientCommand;
-import org.eclipse.papyrus.uml.diagram.activity.edit.commands.CommentLinkCreateCommand;
-import org.eclipse.papyrus.uml.diagram.activity.edit.commands.CommentLinkReorientCommand;
-import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ConstraintConstrainedElementCreateCommand;
-import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ConstraintConstrainedElementReorientCommand;
-import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ControlFlowCreateCommand;
-import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ControlFlowReorientCommand;
-import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ExceptionHandlerCreateCommand;
-import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ExceptionHandlerReorientCommand;
-import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ObjectFlowCreateCommand;
-import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ObjectFlowReorientCommand;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionLocalPostconditionEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionLocalPreconditionEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.CommentLinkEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ConstraintConstrainedElementEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ControlFlowEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ExceptionHandlerEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ObjectFlowEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.providers.UMLElementTypes;
-import org.eclipse.uml2.uml.UMLPackage;
-
-/**
- * @generated
- */
-public class ExpansionRegionItemSemanticEditPolicy extends UMLBaseItemSemanticEditPolicy {
-
- /**
- * @generated
- */
- public ExpansionRegionItemSemanticEditPolicy() {
- super(UMLElementTypes.ExpansionRegion_3070);
- }
-
- /**
- * @generated
- */
- protected Command getCreateCommand(CreateElementRequest req) {
- IElementType requestElementType = req.getElementType();
- if(requestElementType == null) {
- return super.getCreateCommand(req);
- }
- IElementType baseElementType = requestElementType;
- boolean isExtendedType = false;
- if(requestElementType instanceof IExtendedHintedElementType) {
- baseElementType = ElementTypeUtils.getClosestDiagramType(requestElementType);
- if(baseElementType != null) {
- isExtendedType = true;
- } else {
- // no reference element type ID. using the closest super element type to give more opportunities, but can lead to bugs.
- baseElementType = ElementTypeUtils.findClosestNonExtendedElementType((IExtendedHintedElementType)requestElementType);
- isExtendedType = true;
- }
- }
- if(UMLElementTypes.ExpansionNode_3074 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getExpansionRegion_InputElement();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.ExpansionNode_3075 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getExpansionRegion_OutputElement();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- return super.getCreateCommand(req);
- }
-
- /**
- * @generated
- */
- protected Command getDestroyElementCommand(DestroyElementRequest req) {
- EObject selectedEObject = req.getElementToDestroy();
- IElementEditService provider = ElementEditServiceUtils.getCommandProvider(selectedEObject);
- if(provider != null) {
- // Retrieve delete command from the Element Edit service
- ICommand deleteCommand = provider.getEditCommand(req);
- if(deleteCommand != null) {
- return new ICommandProxy(deleteCommand);
- }
- }
- return UnexecutableCommand.INSTANCE;
- }
-
- /**
- * @generated
- */
- protected Command getStartCreateRelationshipCommand(CreateRelationshipRequest req) {
- IElementType requestElementType = req.getElementType();
- if(requestElementType == null) {
- return null;
- }
- IElementType baseElementType = requestElementType;
- boolean isExtendedType = false;
- if(requestElementType instanceof IExtendedHintedElementType) {
- baseElementType = ElementTypeUtils.getClosestDiagramType(requestElementType);
- if(baseElementType != null) {
- isExtendedType = true;
- } else {
- // no reference element type ID. using the closest super element type to give more opportunities, but can lead to bugs.
- baseElementType = ElementTypeUtils.findClosestNonExtendedElementType((IExtendedHintedElementType)requestElementType);
- isExtendedType = true;
- }
- }
- if(UMLElementTypes.ActionLocalPrecondition_4001 == baseElementType) {
- if(isExtendedType) {
- return getExtendedStartCreateRelationshipCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(new ActionLocalPreconditionCreateCommand(req, req.getSource(), req.getTarget()));
- }
- if(UMLElementTypes.ActionLocalPostcondition_4002 == baseElementType) {
- if(isExtendedType) {
- return getExtendedStartCreateRelationshipCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(new ActionLocalPostconditionCreateCommand(req, req.getSource(), req.getTarget()));
- }
- if(UMLElementTypes.ObjectFlow_4003 == baseElementType) {
- if(isExtendedType) {
- return getExtendedStartCreateRelationshipCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(new ObjectFlowCreateCommand(req, req.getSource(), req.getTarget()));
- }
- if(UMLElementTypes.ControlFlow_4004 == baseElementType) {
- if(isExtendedType) {
- return getExtendedStartCreateRelationshipCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(new ControlFlowCreateCommand(req, req.getSource(), req.getTarget()));
- }
- if(UMLElementTypes.ExceptionHandler_4005 == baseElementType) {
- if(isExtendedType) {
- return getExtendedStartCreateRelationshipCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(new ExceptionHandlerCreateCommand(req, req.getSource(), req.getTarget()));
- }
- if(UMLElementTypes.CommentAnnotatedElement_4006 == baseElementType) {
- return null;
- }
- if(UMLElementTypes.ConstraintConstrainedElement_4007 == baseElementType) {
- return null;
- }
- return null;
- }
-
- /**
- * @generated
- */
- protected Command getCompleteCreateRelationshipCommand(CreateRelationshipRequest req) {
- IElementType requestElementType = req.getElementType();
- if(requestElementType == null) {
- return null;
- }
- IElementType baseElementType = requestElementType;
- boolean isExtendedType = false;
- if(requestElementType instanceof IExtendedHintedElementType) {
- baseElementType = ElementTypeUtils.getClosestDiagramType(requestElementType);
- if(baseElementType != null) {
- isExtendedType = true;
- } else {
- // no reference element type ID. using the closest super element type to give more opportunities, but can lead to bugs.
- baseElementType = ElementTypeUtils.findClosestNonExtendedElementType((IExtendedHintedElementType)requestElementType);
- isExtendedType = true;
- }
- }
- if(UMLElementTypes.ActionLocalPrecondition_4001 == baseElementType) {
- return null;
- }
- if(UMLElementTypes.ActionLocalPostcondition_4002 == baseElementType) {
- return null;
- }
- if(UMLElementTypes.ObjectFlow_4003 == baseElementType) {
- if(isExtendedType) {
- return getExtendedCompleteCreateRelationshipCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(new ObjectFlowCreateCommand(req, req.getSource(), req.getTarget()));
- }
- if(UMLElementTypes.ControlFlow_4004 == baseElementType) {
- if(isExtendedType) {
- return getExtendedCompleteCreateRelationshipCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(new ControlFlowCreateCommand(req, req.getSource(), req.getTarget()));
- }
- if(UMLElementTypes.ExceptionHandler_4005 == baseElementType) {
- return null;
- }
- if(UMLElementTypes.CommentAnnotatedElement_4006 == baseElementType) {
- if(isExtendedType) {
- return getExtendedCompleteCreateRelationshipCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(new CommentLinkCreateCommand(req, req.getSource(), req.getTarget()));
- }
- if(UMLElementTypes.ConstraintConstrainedElement_4007 == baseElementType) {
- if(isExtendedType) {
- return getExtendedCompleteCreateRelationshipCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(new ConstraintConstrainedElementCreateCommand(req, req.getSource(), req.getTarget()));
- }
- return null;
- }
-
- /**
- * Returns command to reorient EClass based link. New link target or source
- * should be the domain model element associated with this node.
- *
- * @generated
- */
- protected Command getReorientRelationshipCommand(ReorientRelationshipRequest req) {
- switch(getVisualID(req)) {
- case ObjectFlowEditPart.VISUAL_ID:
- return getGEFWrapper(new ObjectFlowReorientCommand(req));
- case ControlFlowEditPart.VISUAL_ID:
- return getGEFWrapper(new ControlFlowReorientCommand(req));
- case ExceptionHandlerEditPart.VISUAL_ID:
- return getGEFWrapper(new ExceptionHandlerReorientCommand(req));
- }
- return super.getReorientRelationshipCommand(req);
- }
-
- /**
- * Returns command to reorient EReference based link. New link target or source
- * should be the domain model element associated with this node.
- *
- * @generated
- */
- protected Command getReorientReferenceRelationshipCommand(ReorientReferenceRelationshipRequest req) {
- switch(getVisualID(req)) {
- case ActionLocalPreconditionEditPart.VISUAL_ID:
- return getGEFWrapper(new ActionLocalPreconditionReorientCommand(req));
- case ActionLocalPostconditionEditPart.VISUAL_ID:
- return getGEFWrapper(new ActionLocalPostconditionReorientCommand(req));
- case CommentLinkEditPart.VISUAL_ID:
- return getGEFWrapper(new CommentLinkReorientCommand(req));
- case ConstraintConstrainedElementEditPart.VISUAL_ID:
- return getGEFWrapper(new ConstraintConstrainedElementReorientCommand(req));
- }
- return super.getReorientReferenceRelationshipCommand(req);
- }
-}
+/*****************************************************************************
+ * Copyright (c) 2010 Atos Origin.
+ *
+ *
+ * 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:
+ * Atos Origin - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.activity.edit.policies;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.gef.commands.Command;
+import org.eclipse.gef.commands.UnexecutableCommand;
+import org.eclipse.gmf.runtime.common.core.command.ICommand;
+import org.eclipse.gmf.runtime.diagram.ui.commands.ICommandProxy;
+import org.eclipse.gmf.runtime.emf.type.core.IElementType;
+import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest;
+import org.eclipse.gmf.runtime.emf.type.core.requests.CreateRelationshipRequest;
+import org.eclipse.gmf.runtime.emf.type.core.requests.DestroyElementRequest;
+import org.eclipse.gmf.runtime.emf.type.core.requests.ReorientReferenceRelationshipRequest;
+import org.eclipse.gmf.runtime.emf.type.core.requests.ReorientRelationshipRequest;
+import org.eclipse.papyrus.infra.extendedtypes.types.IExtendedHintedElementType;
+import org.eclipse.papyrus.infra.extendedtypes.util.ElementTypeUtils;
+import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils;
+import org.eclipse.papyrus.infra.services.edit.service.IElementEditService;
+import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ActionLocalPostconditionCreateCommand;
+import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ActionLocalPostconditionReorientCommand;
+import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ActionLocalPreconditionCreateCommand;
+import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ActionLocalPreconditionReorientCommand;
+import org.eclipse.papyrus.uml.diagram.activity.edit.commands.CommentLinkCreateCommand;
+import org.eclipse.papyrus.uml.diagram.activity.edit.commands.CommentLinkReorientCommand;
+import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ConstraintConstrainedElementCreateCommand;
+import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ConstraintConstrainedElementReorientCommand;
+import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ControlFlowCreateCommand;
+import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ControlFlowReorientCommand;
+import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ExceptionHandlerCreateCommand;
+import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ExceptionHandlerReorientCommand;
+import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ObjectFlowCreateCommand;
+import org.eclipse.papyrus.uml.diagram.activity.edit.commands.ObjectFlowReorientCommand;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionLocalPostconditionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionLocalPreconditionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.CommentLinkEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ConstraintConstrainedElementEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ControlFlowEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ExceptionHandlerEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ObjectFlowEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.providers.UMLElementTypes;
+import org.eclipse.uml2.uml.UMLPackage;
+
+/**
+ * @generated
+ */
+public class ExpansionRegionItemSemanticEditPolicy extends UMLBaseItemSemanticEditPolicy {
+
+ /**
+ * @generated
+ */
+ public ExpansionRegionItemSemanticEditPolicy() {
+ super(UMLElementTypes.ExpansionRegion_3070);
+ }
+
+ /**
+ * @generated
+ */
+ protected Command getCreateCommand(CreateElementRequest req) {
+ IElementType requestElementType = req.getElementType();
+ if(requestElementType == null) {
+ return super.getCreateCommand(req);
+ }
+ IElementType baseElementType = requestElementType;
+ boolean isExtendedType = false;
+ if(requestElementType instanceof IExtendedHintedElementType) {
+ baseElementType = ElementTypeUtils.getClosestDiagramType(requestElementType);
+ if(baseElementType != null) {
+ isExtendedType = true;
+ } else {
+ // no reference element type ID. using the closest super element type to give more opportunities, but can lead to bugs.
+ baseElementType = ElementTypeUtils.findClosestNonExtendedElementType((IExtendedHintedElementType)requestElementType);
+ isExtendedType = true;
+ }
+ }
+ if(UMLElementTypes.ExpansionNode_3074 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getStructuredActivityNode_Node();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.ExpansionNode_3075 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getStructuredActivityNode_Node();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ return super.getCreateCommand(req);
+ }
+
+ /**
+ * @generated
+ */
+ protected Command getDestroyElementCommand(DestroyElementRequest req) {
+ EObject selectedEObject = req.getElementToDestroy();
+ IElementEditService provider = ElementEditServiceUtils.getCommandProvider(selectedEObject);
+ if(provider != null) {
+ // Retrieve delete command from the Element Edit service
+ ICommand deleteCommand = provider.getEditCommand(req);
+ if(deleteCommand != null) {
+ return new ICommandProxy(deleteCommand);
+ }
+ }
+ return UnexecutableCommand.INSTANCE;
+ }
+
+ /**
+ * @generated
+ */
+ protected Command getStartCreateRelationshipCommand(CreateRelationshipRequest req) {
+ IElementType requestElementType = req.getElementType();
+ if(requestElementType == null) {
+ return null;
+ }
+ IElementType baseElementType = requestElementType;
+ boolean isExtendedType = false;
+ if(requestElementType instanceof IExtendedHintedElementType) {
+ baseElementType = ElementTypeUtils.getClosestDiagramType(requestElementType);
+ if(baseElementType != null) {
+ isExtendedType = true;
+ } else {
+ // no reference element type ID. using the closest super element type to give more opportunities, but can lead to bugs.
+ baseElementType = ElementTypeUtils.findClosestNonExtendedElementType((IExtendedHintedElementType)requestElementType);
+ isExtendedType = true;
+ }
+ }
+ if(UMLElementTypes.ActionLocalPrecondition_4001 == baseElementType) {
+ if(isExtendedType) {
+ return getExtendedStartCreateRelationshipCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(new ActionLocalPreconditionCreateCommand(req, req.getSource(), req.getTarget()));
+ }
+ if(UMLElementTypes.ActionLocalPostcondition_4002 == baseElementType) {
+ if(isExtendedType) {
+ return getExtendedStartCreateRelationshipCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(new ActionLocalPostconditionCreateCommand(req, req.getSource(), req.getTarget()));
+ }
+ if(UMLElementTypes.ObjectFlow_4003 == baseElementType) {
+ if(isExtendedType) {
+ return getExtendedStartCreateRelationshipCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(new ObjectFlowCreateCommand(req, req.getSource(), req.getTarget()));
+ }
+ if(UMLElementTypes.ControlFlow_4004 == baseElementType) {
+ if(isExtendedType) {
+ return getExtendedStartCreateRelationshipCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(new ControlFlowCreateCommand(req, req.getSource(), req.getTarget()));
+ }
+ if(UMLElementTypes.ExceptionHandler_4005 == baseElementType) {
+ if(isExtendedType) {
+ return getExtendedStartCreateRelationshipCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(new ExceptionHandlerCreateCommand(req, req.getSource(), req.getTarget()));
+ }
+ if(UMLElementTypes.CommentAnnotatedElement_4006 == baseElementType) {
+ return null;
+ }
+ if(UMLElementTypes.ConstraintConstrainedElement_4007 == baseElementType) {
+ return null;
+ }
+ return null;
+ }
+
+ /**
+ * @generated
+ */
+ protected Command getCompleteCreateRelationshipCommand(CreateRelationshipRequest req) {
+ IElementType requestElementType = req.getElementType();
+ if(requestElementType == null) {
+ return null;
+ }
+ IElementType baseElementType = requestElementType;
+ boolean isExtendedType = false;
+ if(requestElementType instanceof IExtendedHintedElementType) {
+ baseElementType = ElementTypeUtils.getClosestDiagramType(requestElementType);
+ if(baseElementType != null) {
+ isExtendedType = true;
+ } else {
+ // no reference element type ID. using the closest super element type to give more opportunities, but can lead to bugs.
+ baseElementType = ElementTypeUtils.findClosestNonExtendedElementType((IExtendedHintedElementType)requestElementType);
+ isExtendedType = true;
+ }
+ }
+ if(UMLElementTypes.ActionLocalPrecondition_4001 == baseElementType) {
+ return null;
+ }
+ if(UMLElementTypes.ActionLocalPostcondition_4002 == baseElementType) {
+ return null;
+ }
+ if(UMLElementTypes.ObjectFlow_4003 == baseElementType) {
+ if(isExtendedType) {
+ return getExtendedCompleteCreateRelationshipCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(new ObjectFlowCreateCommand(req, req.getSource(), req.getTarget()));
+ }
+ if(UMLElementTypes.ControlFlow_4004 == baseElementType) {
+ if(isExtendedType) {
+ return getExtendedCompleteCreateRelationshipCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(new ControlFlowCreateCommand(req, req.getSource(), req.getTarget()));
+ }
+ if(UMLElementTypes.ExceptionHandler_4005 == baseElementType) {
+ return null;
+ }
+ if(UMLElementTypes.CommentAnnotatedElement_4006 == baseElementType) {
+ if(isExtendedType) {
+ return getExtendedCompleteCreateRelationshipCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(new CommentLinkCreateCommand(req, req.getSource(), req.getTarget()));
+ }
+ if(UMLElementTypes.ConstraintConstrainedElement_4007 == baseElementType) {
+ if(isExtendedType) {
+ return getExtendedCompleteCreateRelationshipCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(new ConstraintConstrainedElementCreateCommand(req, req.getSource(), req.getTarget()));
+ }
+ return null;
+ }
+
+ /**
+ * Returns command to reorient EClass based link. New link target or source
+ * should be the domain model element associated with this node.
+ *
+ * @generated
+ */
+ protected Command getReorientRelationshipCommand(ReorientRelationshipRequest req) {
+ switch(getVisualID(req)) {
+ case ObjectFlowEditPart.VISUAL_ID:
+ return getGEFWrapper(new ObjectFlowReorientCommand(req));
+ case ControlFlowEditPart.VISUAL_ID:
+ return getGEFWrapper(new ControlFlowReorientCommand(req));
+ case ExceptionHandlerEditPart.VISUAL_ID:
+ return getGEFWrapper(new ExceptionHandlerReorientCommand(req));
+ }
+ return super.getReorientRelationshipCommand(req);
+ }
+
+ /**
+ * Returns command to reorient EReference based link. New link target or source
+ * should be the domain model element associated with this node.
+ *
+ * @generated
+ */
+ protected Command getReorientReferenceRelationshipCommand(ReorientReferenceRelationshipRequest req) {
+ switch(getVisualID(req)) {
+ case ActionLocalPreconditionEditPart.VISUAL_ID:
+ return getGEFWrapper(new ActionLocalPreconditionReorientCommand(req));
+ case ActionLocalPostconditionEditPart.VISUAL_ID:
+ return getGEFWrapper(new ActionLocalPostconditionReorientCommand(req));
+ case CommentLinkEditPart.VISUAL_ID:
+ return getGEFWrapper(new CommentLinkReorientCommand(req));
+ case ConstraintConstrainedElementEditPart.VISUAL_ID:
+ return getGEFWrapper(new ConstraintConstrainedElementReorientCommand(req));
+ }
+ return super.getReorientReferenceRelationshipCommand(req);
+ }
+}
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
index b35a50b5096..b1a52ef2698 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.activity/src/org/eclipse/papyrus/uml/diagram/activity/edit/policies/ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
@@ -1,410 +1,410 @@
-/*****************************************************************************
- * Copyright (c) 2010 Atos Origin.
- *
- *
- * 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:
- * Atos Origin - Initial API and implementation
- *
- *****************************************************************************/
-package org.eclipse.papyrus.uml.diagram.activity.edit.policies;
-
-import org.eclipse.emf.ecore.EReference;
-import org.eclipse.gef.commands.Command;
-import org.eclipse.gmf.runtime.emf.type.core.IElementType;
-import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest;
-import org.eclipse.papyrus.infra.extendedtypes.types.IExtendedHintedElementType;
-import org.eclipse.papyrus.infra.extendedtypes.util.ElementTypeUtils;
-import org.eclipse.papyrus.uml.diagram.activity.providers.UMLElementTypes;
-import org.eclipse.uml2.uml.UMLPackage;
-
-/**
- * @generated
- */
-public class ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy extends UMLBaseItemSemanticEditPolicy {
-
- /**
- * @generated
- */
- public ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy() {
- super(UMLElementTypes.ExpansionRegion_3070);
- }
-
- /**
- * @generated
- */
- protected Command getCreateCommand(CreateElementRequest req) {
- IElementType requestElementType = req.getElementType();
- if(requestElementType == null) {
- return super.getCreateCommand(req);
- }
- IElementType baseElementType = requestElementType;
- boolean isExtendedType = false;
- if(requestElementType instanceof IExtendedHintedElementType) {
- baseElementType = ElementTypeUtils.getClosestDiagramType(requestElementType);
- if(baseElementType != null) {
- isExtendedType = true;
- } else {
- // no reference element type ID. using the closest super element type to give more opportunities, but can lead to bugs.
- baseElementType = ElementTypeUtils.findClosestNonExtendedElementType((IExtendedHintedElementType)requestElementType);
- isExtendedType = true;
- }
- }
- if(UMLElementTypes.InitialNode_3004 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.ActivityFinalNode_3005 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.FlowFinalNode_3006 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.OpaqueAction_3007 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.CallBehaviorAction_3008 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.CallOperationAction_3010 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.DecisionNode_3038 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.MergeNode_3039 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.ForkNode_3040 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.JoinNode_3041 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.DataStoreNode_3078 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.SendObjectAction_3042 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.SendSignalAction_3052 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.AcceptEventAction_3063 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.ValueSpecificationAction_3076 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.ConditionalNode_3069 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedGroup();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.ExpansionRegion_3070 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedGroup();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.LoopNode_3071 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedGroup();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.SequenceNode_3073 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedGroup();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.StructuredActivityNode_3065 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedGroup();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.ReadSelfAction_3081 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.DurationConstraint_3034 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getAction_LocalPrecondition();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.DurationConstraint_3035 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getAction_LocalPostcondition();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.TimeConstraint_3036 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getAction_LocalPrecondition();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.TimeConstraint_3037 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getAction_LocalPostcondition();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.IntervalConstraint_3032 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getAction_LocalPrecondition();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.IntervalConstraint_3033 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getAction_LocalPostcondition();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.Constraint_3011 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getAction_LocalPrecondition();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.Constraint_3012 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getAction_LocalPostcondition();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.CreateObjectAction_3086 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.ReadStructuralFeatureAction_3088 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.AddStructuralFeatureValueAction_3091 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.DestroyObjectAction_3095 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.ReadVariableAction_3097 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.AddVariableValueAction_3099 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.BroadcastSignalAction_3102 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.CentralBufferNode_3104 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.Comment_3080 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getElement_OwnedComment();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- if(UMLElementTypes.Constraint_3112 == baseElementType) {
- // adjust the containment feature
- EReference containmentFeature = UMLPackage.eINSTANCE.getNamespace_OwnedRule();
- req.setContainmentFeature(containmentFeature);
- if(isExtendedType) {
- return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
- }
- return getGEFWrapper(getSemanticCreationCommand(req));
- }
- return super.getCreateCommand(req);
- }
-}
+/*****************************************************************************
+ * Copyright (c) 2010 Atos Origin.
+ *
+ *
+ * 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:
+ * Atos Origin - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.activity.edit.policies;
+
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.gef.commands.Command;
+import org.eclipse.gmf.runtime.emf.type.core.IElementType;
+import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest;
+import org.eclipse.papyrus.infra.extendedtypes.types.IExtendedHintedElementType;
+import org.eclipse.papyrus.infra.extendedtypes.util.ElementTypeUtils;
+import org.eclipse.papyrus.uml.diagram.activity.providers.UMLElementTypes;
+import org.eclipse.uml2.uml.UMLPackage;
+
+/**
+ * @generated
+ */
+public class ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy extends UMLBaseItemSemanticEditPolicy {
+
+ /**
+ * @generated
+ */
+ public ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy() {
+ super(UMLElementTypes.ExpansionRegion_3070);
+ }
+
+ /**
+ * @generated
+ */
+ protected Command getCreateCommand(CreateElementRequest req) {
+ IElementType requestElementType = req.getElementType();
+ if(requestElementType == null) {
+ return super.getCreateCommand(req);
+ }
+ IElementType baseElementType = requestElementType;
+ boolean isExtendedType = false;
+ if(requestElementType instanceof IExtendedHintedElementType) {
+ baseElementType = ElementTypeUtils.getClosestDiagramType(requestElementType);
+ if(baseElementType != null) {
+ isExtendedType = true;
+ } else {
+ // no reference element type ID. using the closest super element type to give more opportunities, but can lead to bugs.
+ baseElementType = ElementTypeUtils.findClosestNonExtendedElementType((IExtendedHintedElementType)requestElementType);
+ isExtendedType = true;
+ }
+ }
+ if(UMLElementTypes.InitialNode_3004 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.ActivityFinalNode_3005 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.FlowFinalNode_3006 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.OpaqueAction_3007 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.CallBehaviorAction_3008 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.CallOperationAction_3010 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.DecisionNode_3038 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.MergeNode_3039 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.ForkNode_3040 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.JoinNode_3041 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.DataStoreNode_3078 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.SendObjectAction_3042 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.SendSignalAction_3052 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.AcceptEventAction_3063 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.ValueSpecificationAction_3076 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.ConditionalNode_3069 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedGroup();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.ExpansionRegion_3070 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getStructuredActivityNode_Node();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.LoopNode_3071 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedGroup();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.SequenceNode_3073 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedGroup();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.StructuredActivityNode_3065 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedGroup();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.ReadSelfAction_3081 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.DurationConstraint_3034 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getAction_LocalPrecondition();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.DurationConstraint_3035 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getAction_LocalPostcondition();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.TimeConstraint_3036 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getAction_LocalPrecondition();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.TimeConstraint_3037 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getAction_LocalPostcondition();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.IntervalConstraint_3032 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getAction_LocalPrecondition();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.IntervalConstraint_3033 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getAction_LocalPostcondition();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.Constraint_3011 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getAction_LocalPrecondition();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.Constraint_3012 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getAction_LocalPostcondition();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.CreateObjectAction_3086 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.ReadStructuralFeatureAction_3088 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.AddStructuralFeatureValueAction_3091 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.DestroyObjectAction_3095 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.ReadVariableAction_3097 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.AddVariableValueAction_3099 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.BroadcastSignalAction_3102 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.CentralBufferNode_3104 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getActivity_OwnedNode();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.Comment_3080 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getElement_OwnedComment();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ if(UMLElementTypes.Constraint_3112 == baseElementType) {
+ // adjust the containment feature
+ EReference containmentFeature = UMLPackage.eINSTANCE.getNamespace_OwnedRule();
+ req.setContainmentFeature(containmentFeature);
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ return getGEFWrapper(getSemanticCreationCommand(req));
+ }
+ return super.getCreateCommand(req);
+ }
+}
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/editpolicies/CommonDiagramDragDropEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/editpolicies/CommonDiagramDragDropEditPolicy.java
index ed28e175964..7fe7d4b93df 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/editpolicies/CommonDiagramDragDropEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/editpolicies/CommonDiagramDragDropEditPolicy.java
@@ -27,6 +27,7 @@ import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.transaction.TransactionalEditingDomain;
import org.eclipse.gef.EditPart;
import org.eclipse.gef.EditPartViewer;
+import org.eclipse.gef.Request;
import org.eclipse.gef.commands.Command;
import org.eclipse.gef.commands.CompoundCommand;
import org.eclipse.gef.commands.UnexecutableCommand;
@@ -123,7 +124,7 @@ public abstract class CommonDiagramDragDropEditPolicy extends DiagramDragDropEdi
Command createCommand = getHost().getCommand(createViewRequest);
return createCommand;
}
-
+
/**
* the method provides command to create the binary link into the diagram.
* If the source and the target views do not exist, these views will be
@@ -248,14 +249,22 @@ public abstract class CommonDiagramDragDropEditPolicy extends DiagramDragDropEdi
// Create a view request from the drop request and then forward getting
// the command for that.
- CompositeCommand cc = new CompositeCommand("Drop"); //$NON-NLS-1$
+ CompositeCommand cc = null;
Iterator<?> iter = dropRequest.getObjects().iterator();
while(iter.hasNext()) {
EObject droppedObject = (EObject)iter.next();
- cc.add(getDropObjectCommand(dropRequest, droppedObject));
+ IUndoableOperation operation= getDropObjectCommand(dropRequest, droppedObject);
+ if(operation !=null) {
+ if(cc==null) {
+ cc = new CompositeCommand("Drop"); //$NON-NLS-1$
+ }
+ cc.add(operation);
+ }
+ }
+ if(cc==null) {
+ return null;
}
-
return new ICommandProxy(cc);
}

Back to the top