diff options
author | Aurelien Didier | 2021-12-02 09:27:59 +0000 |
---|---|---|
committer | vincent lorenzo | 2021-12-03 13:22:40 +0000 |
commit | 9d5c35562a1b0118b2525edbc5a907b692752f83 (patch) | |
tree | 5a2509c0cdd13e0679e0850b9a421f67d444f28c | |
parent | 35593b7a30163aa245c8c0a079fef4c6e6cac9f4 (diff) | |
download | org.eclipse.papyrus-9d5c35562a1b0118b2525edbc5a907b692752f83.tar.gz org.eclipse.papyrus-9d5c35562a1b0118b2525edbc5a907b692752f83.tar.xz org.eclipse.papyrus-9d5c35562a1b0118b2525edbc5a907b692752f83.zip |
Correct Drag and Drop problems in class diagram.
Change-Id: Ic0861bb6cc9efef5303c58aaa5a0d4e0fcf6e1c9
Signed-off-by: Aurelien Didier <aurelien.didier51@gmail.com>
3 files changed, 103 insertions, 21 deletions
diff --git a/plugins/uml/sirius/org.eclipse.papyrus.uml.sirius.common.diagram/src/org/eclipse/papyrus/uml/sirius/common/diagram/SiriusEditPolicyProvider.java b/plugins/uml/sirius/org.eclipse.papyrus.uml.sirius.common.diagram/src/org/eclipse/papyrus/uml/sirius/common/diagram/SiriusEditPolicyProvider.java index 3c8a534e428..95955323640 100644 --- a/plugins/uml/sirius/org.eclipse.papyrus.uml.sirius.common.diagram/src/org/eclipse/papyrus/uml/sirius/common/diagram/SiriusEditPolicyProvider.java +++ b/plugins/uml/sirius/org.eclipse.papyrus.uml.sirius.common.diagram/src/org/eclipse/papyrus/uml/sirius/common/diagram/SiriusEditPolicyProvider.java @@ -9,22 +9,23 @@ * SPDX-License-Identifier: EPL-2.0 * * Contributors: - * Aurelien Didier (ARTAL) - aurelien.didier51@gmail.com - Initial API and others + * Aurélien Didier (ARTAL) - aurelien.didier51@gmail.com - Initial API and implementation *****************************************************************************/ package org.eclipse.papyrus.uml.sirius.common.diagram; import org.eclipse.emf.ecore.EObject; import org.eclipse.gef.EditPart; import org.eclipse.gmf.runtime.diagram.ui.editpolicies.EditPolicyRoles; +import org.eclipse.gmf.runtime.notation.Diagram; import org.eclipse.gmf.runtime.notation.impl.NodeImpl; import org.eclipse.sirius.diagram.DragAndDropTarget; import org.eclipse.sirius.diagram.ui.graphical.edit.policies.SiriusContainerDropPolicy; import org.eclipse.sirius.diagram.ui.internal.edit.policies.AbstractCreateEditPolicyProvider; /** - * The Class MyCreateEditPolicyProvider. + * The Class SiriusEditPolicyProvider. * - * @author Aurélien Didier (Artal Technologies) + * @author Aurélien Didier (Artal Technologies) */ @SuppressWarnings("restriction") public class SiriusEditPolicyProvider extends AbstractCreateEditPolicyProvider { @@ -32,7 +33,8 @@ public class SiriusEditPolicyProvider extends AbstractCreateEditPolicyProvider { /** * Creates the edit policies. * - * @param arg0 the arg 0 + * @param editpart + * the editpart * @see org.eclipse.gmf.runtime.diagram.ui.services.editpolicy.IEditPolicyProvider#createEditPolicies(org.eclipse.gef.EditPart) */ @@ -44,14 +46,14 @@ public class SiriusEditPolicyProvider extends AbstractCreateEditPolicyProvider { /** * Checks if is valid edit part. * - * @param editPart the edit part + * @param editPart + * the edit part * @return true, if is valid edit part * @see org.eclipse.sirius.diagram.ui.internal.edit.policies.AbstractCreateEditPolicyProvider#isValidEditPart(org.eclipse.gef.EditPart) */ @Override protected boolean isValidEditPart(EditPart editPart) { - Object model = editPart.getModel(); if (model instanceof NodeImpl) { EObject element = ((NodeImpl) model).getElement(); @@ -59,6 +61,13 @@ public class SiriusEditPolicyProvider extends AbstractCreateEditPolicyProvider { return true; } } + if (model instanceof Diagram) { + EObject element = ((Diagram) model).getElement(); + if (element instanceof DragAndDropTarget) { + return true; + } + } + return false; } diff --git a/plugins/uml/sirius/org.eclipse.papyrus.uml.sirius.common.diagram/src/org/eclipse/papyrus/uml/sirius/common/diagram/hyperlink/NavigationEditPolicyProvider.java b/plugins/uml/sirius/org.eclipse.papyrus.uml.sirius.common.diagram/src/org/eclipse/papyrus/uml/sirius/common/diagram/hyperlink/NavigationEditPolicyProvider.java index dfb834cd075..bb15fed4b5f 100644 --- a/plugins/uml/sirius/org.eclipse.papyrus.uml.sirius.common.diagram/src/org/eclipse/papyrus/uml/sirius/common/diagram/hyperlink/NavigationEditPolicyProvider.java +++ b/plugins/uml/sirius/org.eclipse.papyrus.uml.sirius.common.diagram/src/org/eclipse/papyrus/uml/sirius/common/diagram/hyperlink/NavigationEditPolicyProvider.java @@ -18,7 +18,6 @@ import org.eclipse.gef.EditPart; import org.eclipse.gmf.runtime.diagram.ui.editpolicies.EditPolicyRoles; import org.eclipse.gmf.runtime.notation.impl.NodeImpl; import org.eclipse.sirius.diagram.DNode; -import org.eclipse.sirius.diagram.ui.graphical.edit.policies.SiriusContainerDropPolicy; import org.eclipse.sirius.diagram.ui.internal.edit.policies.AbstractCreateEditPolicyProvider; import org.eclipse.uml2.uml.Element; diff --git a/plugins/uml/sirius/org.eclipse.papyrus.uml.sirius.sequence.diagram/description/papyrus_sequence.odesign b/plugins/uml/sirius/org.eclipse.papyrus.uml.sirius.sequence.diagram/description/papyrus_sequence.odesign index 092a998d3ec..74e3963957d 100644 --- a/plugins/uml/sirius/org.eclipse.papyrus.uml.sirius.sequence.diagram/description/papyrus_sequence.odesign +++ b/plugins/uml/sirius/org.eclipse.papyrus.uml.sirius.sequence.diagram/description/papyrus_sequence.odesign @@ -84,15 +84,8 @@ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> </style> </nodeMappings> - <nodeMappings name="Comment" deletionDescription="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@toolSections.0/@subSections[name='edit']/@ownedTools[name='Comment']" labelDirectEdit="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@toolSections.1/@ownedTools[name='CommentEdit']" semanticCandidatesExpression="feature:ownedComment" createElements="false" domainClass="Comment"> - <style xsi:type="style:NoteDescription" labelSize="12" labelExpression="feature:body" labelPosition="node" resizeKind="NSEW"> - <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='yellow']"/> - <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> - <color xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='light_yellow']"/> - </style> - </nodeMappings> - <nodeMappings name="Constraint" preconditionExpression="aql:not self.oclIsTypeOf(uml::InteractionConstraint)" labelDirectEdit="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@toolSections.0/@subSections[name='edit']/@ownedTools[name='ConstraintEdit']" createElements="false" domainClass="Constraint"> - <style xsi:type="style:NoteDescription" labelSize="12" labelExpression="service:getConstraintLabel()" labelPosition="node" resizeKind="NSEW" color="//@userColorsPalettes[name='UMLPalette']/@entries[name='ConstrainedColor']"> + <nodeMappings name="Constraint" preconditionExpression="aql:not self.oclIsTypeOf(uml::InteractionConstraint)" labelDirectEdit="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@toolSections.0/@subSections[name='edit']/@ownedTools[name='ConstraintEdit']" domainClass="Constraint"> + <style xsi:type="style:NoteDescription" labelSize="12" labelExpression="service:getConstraintLabel()" sizeComputationExpression="9" labelPosition="node" resizeKind="NSEW" color="//@userColorsPalettes[name='UMLPalette']/@entries[name='ConstrainedColor']"> <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> </style> @@ -193,7 +186,7 @@ </centerLabelStyleDescription> </style> </edgeMappings> - <edgeMappings name="Comment Link" labelDirectEdit="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@toolSections.0/@subSections[name='edit']/@ownedTools[name='Rename']" sourceMapping="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='Comment']" targetMapping="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='Comment'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='Constraint'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@containerMappings[name='SD_CombinedFragment'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@containerMappings[name='SD_CombinedFragment']/@subContainerMappings[name='SD_Operand'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='CreateMessage'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='DeleteMessage'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='Duration%20Constraint'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='DurationObservation'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='Gate'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='GeneralOrdering'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@containerMappings[name='InteractionUse'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='LostFound'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='MessageFound'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='MessageLost'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='MessageReply'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='Observation'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline']/@borderedNodeMappings[name='SD_ExecutionSpecificationNode'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline']/@borderedNodeMappings[name='SD_ExecutionSpecificationNode']/@borderedNodeMappings[name='TimeConstraint'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline']/@borderedNodeMappings[name='SD_ExecutionSpecificationNode']/@borderedNodeMappings[name='TimeObservation'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline']/@borderedNodeMappings[name='SD_LifelineEOL'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline']/@borderedNodeMappings[name='StateInvariant'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='SD_Message']" targetFinderExpression="aql:self.targetFinderExpression()" reconnections="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@toolSections.0/@subSections[name='edit']/@ownedTools[name='Reconnect%20Source%20Link'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@toolSections.0/@subSections[name='edit']/@ownedTools[name='Reconnect%20Target%20Link']"> + <edgeMappings name="Comment Link" labelDirectEdit="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@toolSections.0/@subSections[name='edit']/@ownedTools[name='Rename']" targetMapping="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='Constraint'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@containerMappings[name='SD_CombinedFragment'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@containerMappings[name='SD_CombinedFragment']/@subContainerMappings[name='SD_Operand'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='CreateMessage'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='DeleteMessage'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='Duration%20Constraint'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='DurationObservation'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='Gate'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='GeneralOrdering'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@containerMappings[name='InteractionUse'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='LostFound'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='MessageFound'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='MessageLost'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='MessageReply'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='Observation'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline']/@borderedNodeMappings[name='SD_ExecutionSpecificationNode'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline']/@borderedNodeMappings[name='SD_ExecutionSpecificationNode']/@borderedNodeMappings[name='TimeConstraint'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline']/@borderedNodeMappings[name='SD_ExecutionSpecificationNode']/@borderedNodeMappings[name='TimeObservation'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline']/@borderedNodeMappings[name='SD_LifelineEOL'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline']/@borderedNodeMappings[name='StateInvariant'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='SD_Message']" targetFinderExpression="aql:self.targetFinderExpression()" reconnections="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@toolSections.0/@subSections[name='edit']/@ownedTools[name='Reconnect%20Source%20Link'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@toolSections.0/@subSections[name='edit']/@ownedTools[name='Reconnect%20Target%20Link']"> <style lineStyle="dot" targetArrow="NoDecoration"> <strokeColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='gray']"/> <centerLabelStyleDescription labelSize="12"> @@ -201,7 +194,7 @@ </centerLabelStyleDescription> </style> </edgeMappings> - <edgeMappings name="Constraint Link" labelDirectEdit="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@toolSections.0/@subSections[name='edit']/@ownedTools[name='Rename']" sourceMapping="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='Constraint']" targetMapping="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='Comment'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='Constraint'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@containerMappings[name='SD_CombinedFragment'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@containerMappings[name='SD_CombinedFragment']/@subContainerMappings[name='SD_Operand'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='CreateMessage'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='DeleteMessage'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='Duration%20Constraint'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='DurationObservation'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='Gate'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='GeneralOrdering'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@containerMappings[name='InteractionUse'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='LostFound'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='MessageFound'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='MessageLost'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='MessageReply'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='Observation'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline']/@borderedNodeMappings[name='SD_ExecutionSpecificationNode'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline']/@borderedNodeMappings[name='SD_ExecutionSpecificationNode']/@borderedNodeMappings[name='TimeConstraint'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline']/@borderedNodeMappings[name='SD_ExecutionSpecificationNode']/@borderedNodeMappings[name='TimeObservation'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline']/@borderedNodeMappings[name='SD_LifelineEOL'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline']/@borderedNodeMappings[name='StateInvariant'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='SD_Message']" targetFinderExpression="aql:self.targetFinderExpression()" reconnections="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@toolSections.0/@subSections[name='edit']/@ownedTools[name='Reconnect%20Source%20Link'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@toolSections.0/@subSections[name='edit']/@ownedTools[name='Reconnect%20Target%20Link']"> + <edgeMappings name="Constraint Link" labelDirectEdit="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@toolSections.0/@subSections[name='edit']/@ownedTools[name='Rename']" sourceMapping="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='Constraint']" targetMapping="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='Constraint'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@containerMappings[name='SD_CombinedFragment'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@containerMappings[name='SD_CombinedFragment']/@subContainerMappings[name='SD_Operand'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='CreateMessage'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='DeleteMessage'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='Duration%20Constraint'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='DurationObservation'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='Gate'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='GeneralOrdering'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@containerMappings[name='InteractionUse'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='LostFound'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='MessageFound'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='MessageLost'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='MessageReply'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='Observation'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline']/@borderedNodeMappings[name='SD_ExecutionSpecificationNode'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline']/@borderedNodeMappings[name='SD_ExecutionSpecificationNode']/@borderedNodeMappings[name='TimeConstraint'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline']/@borderedNodeMappings[name='SD_ExecutionSpecificationNode']/@borderedNodeMappings[name='TimeObservation'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline']/@borderedNodeMappings[name='SD_LifelineEOL'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='SD_LifelineRole']/@borderedNodeMappings[name='SD_Lifeline']/@borderedNodeMappings[name='StateInvariant'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@edgeMappings[name='SD_Message']" targetFinderExpression="aql:self.targetFinderExpression()" reconnections="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@toolSections.0/@subSections[name='edit']/@ownedTools[name='Reconnect%20Source%20Link'] //@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@toolSections.0/@subSections[name='edit']/@ownedTools[name='Reconnect%20Target%20Link']"> <style lineStyle="dot" targetArrow="NoDecoration"> <strokeColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='gray']"/> <centerLabelStyleDescription labelSize="12"> @@ -584,7 +577,7 @@ <startingEndPredecessor name="startingEndPredecessor"/> <finishingEndPredecessor name="finishingEndPredecessor"/> </ownedTools> - <ownedTools xsi:type="tool_2:NodeCreationDescription" name="Comment" nodeMappings="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@defaultLayer/@nodeMappings[name='Comment']" iconPath="/org.eclipse.papyrus.uml.sirius.sequence.diagram/icons/Comment.gif"> + <ownedTools xsi:type="tool_2:NodeCreationDescription" name="Comment" iconPath="/org.eclipse.papyrus.uml.sirius.sequence.diagram/icons/Comment.gif"> <variable name="container"/> <viewVariable name="containerView"/> <initialOperation> @@ -791,8 +784,65 @@ </vsmElementCustomizations> </customization> </defaultLayer> - <additionalLayers name="Comments"> - <toolSections name="Comments"/> + <additionalLayers name="Common" optional="false"> + <nodeMappings name="Bendpoint" semanticCandidatesExpression="aql:diagram.getCommonBendpointsToDraw()" synchronizationLock="true" domainClass="uml.Element"> + <style xsi:type="style:DotDescription" labelSize="12" showIcon="false" labelExpression="" hideLabelByDefault="true" sizeComputationExpression="aql:self.getBenpointDiameter()"> + <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + <backgroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + </style> + </nodeMappings> + <nodeMappings name="Hyperlink" preconditionExpression="aql:self.isNotSemanticElement()" semanticCandidatesExpression="aql:self.allAvailableViews()" createElements="false" doubleClickDescription="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@additionalLayers[name='Common']/@toolSections.0/@ownedTools[name='Hyperlink%20View']" domainClass="EObject"> + <style xsi:type="style:SquareDescription" labelSize="12" labelPosition="node" resizeKind="NSEW"> + <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + <color xsi:type="description:UserFixedColor" href="../../org.eclipse.papyrus.uml.sirius.clazz.diagram/description/papyrus_class.odesign#//@userColorsPalettes[name=null]/@entries[name='CustomBlue']"/> + </style> + </nodeMappings> + <toolSections name="Common"> + <ownedTools xsi:type="tool_2:DoubleClickDescription" name="Open Hyperlink"> + <element name="element"/> + <elementView name="elementView"/> + <initialOperation> + <firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="aql:elementView.createOrOpenHyperlink()"/> + </initialOperation> + </ownedTools> + <ownedTools xsi:type="tool_2:DeleteElementDescription" name="PapyrusDelete"> + <element name="element"/> + <elementView name="elementView"/> + <containerView name="containerView"/> + <initialOperation> + <firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="aql:element.deleteElement(elementView)"/> + </initialOperation> + </ownedTools> + <ownedTools xsi:type="tool_1:PopupMenu" name="Sirius View Deletion"> + <menuItemDescription xsi:type="tool_1:OperationAction" name="Delete View"> + <view name="views"/> + <initialOperation> + <firstModelOperations xsi:type="tool_1:DeleteView"/> + </initialOperation> + </menuItemDescription> + </ownedTools> + <ownedTools xsi:type="tool_2:ContainerDropDescription" name="AddHyperlinkView" precondition="aql:element.isNotSemanticElement()" mappings="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@additionalLayers[name='Common']/@nodeMappings[name='Hyperlink']" dragSource="PROJECT_EXPLORER"> + <oldContainer name="oldSemanticContainer"/> + <newContainer name="newSemanticContainer"/> + <element name="element"/> + <newViewContainer name="newContainerView"/> + <initialOperation> + <firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="var:element"> + <subModelOperations xsi:type="tool_2:CreateView" mapping="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@additionalLayers[name='Common']/@nodeMappings[name='Hyperlink']" containerViewExpression="aql:newContainerView"/> + </firstModelOperations> + </initialOperation> + </ownedTools> + <ownedTools xsi:type="tool_2:DoubleClickDescription" name="Hyperlink View" mappings="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@additionalLayers[name='Common']/@nodeMappings[name='Hyperlink']"> + <element name="element"/> + <elementView name="elementView"/> + <initialOperation/> + </ownedTools> + </toolSections> + <decorationDescriptionsSet> + <decorationDescriptions xsi:type="description:SemanticBasedDecoration"/> + </decorationDescriptionsSet> </additionalLayers> <additionalLayers name="Informations" icon="/org.eclipse.sirius.ui/icons/full/others/information.gif"> <nodeMappings name="LifelineComment" preconditionExpression="aql:self.clientDependency->size()>0 or self.represents.eContainer()->size() > 0" deletionDescription="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@additionalLayers[name='Informations']/@toolSections.0/@ownedTools[name='LifelineCommentDelete']" labelDirectEdit="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@additionalLayers[name='Informations']/@toolSections.0/@ownedTools[name='LifelineCommentEditLabel']" semanticCandidatesExpression="feature:lifeline" semanticElements="var:self" domainClass="uml.Lifeline"> @@ -825,6 +875,30 @@ </ownedTools> </toolSections> </additionalLayers> + <additionalLayers name="Comment" activeByDefault="true"> + <nodeMappings name="Comment" semanticCandidatesExpression="feature:ownedComment" createElements="false" domainClass="uml.Comment"> + <deletionDescription href="../../org.eclipse.papyrus.uml.sirius.clazz.diagram/description/papyrus_class.odesign#//@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@additionalLayers[name='Common']/@toolSections.0/@ownedTools[name='PapyrusDelete']"/> + <labelDirectEdit href="../../org.eclipse.papyrus.uml.sirius.clazz.diagram/description/papyrus_class.odesign#//@ownedViewpoints[name='ClassDiagram']/@ownedRepresentations[name='ClassDiagram']/@defaultLayer/@toolSections.2/@ownedTools[name='CommentEdit']"/> + <style xsi:type="style:NoteDescription" labelSize="9" showIcon="false" labelExpression="feature:body" sizeComputationExpression="9" labelPosition="node" resizeKind="NSEW"> + <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> + <color xsi:type="description:UserFixedColor" href="../../org.eclipse.papyrus.uml.sirius.clazz.diagram/description/papyrus_class.odesign#//@userColorsPalettes[name=null]/@entries[name='CustomYellow']"/> + </style> + </nodeMappings> + <toolSections name="Nodes"> + <ownedTools xsi:type="tool_2:NodeCreationDescription" documentation="Create a new literal" name="Comment" nodeMappings="//@ownedViewpoints[name='SequenceDiagram']/@ownedRepresentations[name='SequenceDiagram']/@additionalLayers[name='Comment']/@nodeMappings[name='Comment']" iconPath="/org.eclipse.papyrus.uml.diagram.common/icons/obj16/Comment.gif"> + <variable name="container"/> + <viewVariable name="containerView"/> + <initialOperation> + <firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="aql:container"> + <subModelOperations xsi:type="tool_1:CreateInstance" typeName="uml.Comment" referenceName="ownedComment"> + <subModelOperations xsi:type="tool_1:SetValue" featureName="name" valueExpression="service:computeDefaultName"/> + </subModelOperations> + </firstModelOperations> + </initialOperation> + </ownedTools> + </toolSections> + </additionalLayers> </ownedRepresentations> <ownedJavaExtensions qualifiedClassName="org.eclipse.papyrus.uml.sirius.sequence.diagram.services.SequenceDiagramServices"/> <ownedJavaExtensions qualifiedClassName="org.eclipse.papyrus.uml.sirius.common.diagram.core.services.AbstractDiagramServices"/> |