Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrschnekenbu2013-06-10 10:05:03 +0000
committerrschnekenbu2013-06-10 10:05:03 +0000
commita69b0445f8d08bbac803e298cd4ef32a9ebc3f42 (patch)
treee848af0eb1efa56a43bd3ca5a24d09eb39889a27 /incoming
parentbb94ae8b692abf99b6e8889bd790dc8b38e8f836 (diff)
downloadorg.eclipse.papyrus-a69b0445f8d08bbac803e298cd4ef32a9ebc3f42.tar.gz
org.eclipse.papyrus-a69b0445f8d08bbac803e298cd4ef32a9ebc3f42.tar.xz
org.eclipse.papyrus-a69b0445f8d08bbac803e298cd4ef32a9ebc3f42.zip
407049: [Interaction Overview] Papyrus shall support UML2 interaction overview diagram
https://bugs.eclipse.org/bugs/show_bug.cgi?id=407049 => second version of the diagram, with support of the screenshots of the behavioral diagrams inside the interaction overview diagram
Diffstat (limited to 'incoming')
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/META-INF/MANIFEST.MF28
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/build.properties5
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/messages.properties16
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/model/UML.InteractionOverview.idgen2
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/palettes/interactionoverviewdiagram.palette.xml4
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/plugin.gen.xml2
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/plugin.xml116
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/Activator.java7
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/InteractionOverviewDiagramForMultiEditor.java2
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policy/InteractionOverviewDiagramDragDropEditPolicy.java36
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/CustomUMLParserProvider.java34
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/ElementTypes.java2
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/InheritedActivityDiagramViewProvider.java1525
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/InteractionOverviewDiagramEditPartProvider.java2
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/InteractionOverviewDiagramEditPolicyProvider.java4
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/InteractionOverviewDiagramCreationCondition.java2
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/advices/CallBehaviorActionAsInteractionEditHelperAdvice.java71
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/advices/CallBehaviorActionAsInteractionUseEditHelperAdvice.java70
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/commands/CallBehaviorActionAsInteractionUseCreateCommand.java7
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/commands/CreateSnapshotForInteractionFromRefreshCommand.java184
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/commands/CreateSnapshotForInteractionFromViewDescriptorCommand.java204
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/dialogs/CreateInteractionUseDialog.java18
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CallBehaviorActionAsInteractionEditPart.java1003
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CustomActivityEditPartTN.java7
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CustomInteractionUseEditPartCN.java1
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CustomInteractionUseNameEditPart.java2
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CustomUMLInteractionOverviewEditPartFactory.java35
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/ActivityContentCompartmentCreationEditPolicy.java58
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/ActivityContentCompartmentItemSemanticEditPolicy.java17
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomActivityCNContentCompartmentItemSemanticEditPolicy.java6
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy.java5
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java5
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java5
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomInteractionOverviewDiagramCreationEditPolicy.java3
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomInteractionOverviewDiagramDragAndDropEditPolicy.java24
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomInterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy.java6
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomLoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java5
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomSequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java5
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomStructuredActivityNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java5
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/figures/ActivityAsInteractionFigure.java22
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/figures/InteractionUseFigure.java22
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/figures/InteractionWithSnapshotFigure.java118
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/parser/CustomCallBehaviorActionParser.java23
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/part/CustomIODPaletteFactory.java41
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/part/Messages.java25
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/part/UMLVisualIDRegistry.java166
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/preferences/IInteractionOverviewPreferenceConstants.java3
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/CustomEditPartProvider.java2
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/CustomEditPolicyProvider.java85
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/CustomViewProvider.java80
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/DiagramContentProvider.java107
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/ElementInitializers.java41
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/UMLElementTypes.java183
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/utils/CallBehaviorUtil.java156
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/utils/CreateDiagramImage.java303
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/utils/DiagramUtils.java46
-rw-r--r--incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/utils/URIUtils.java24
57 files changed, 3238 insertions, 1742 deletions
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/META-INF/MANIFEST.MF b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/META-INF/MANIFEST.MF
index 9c2c2c9ed43..39906c39e4e 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/META-INF/MANIFEST.MF
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/META-INF/MANIFEST.MF
@@ -29,20 +29,22 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.ui.navigator;bundle-version="3.5.200",
org.eclipse.papyrus.infra.extendedtypes;bundle-version="0.10.0",
com.google.guava;bundle-version="10.0.1",
- org.eclipse.gmf.tooling.runtime;bundle-version="3.1.0"
+ org.eclipse.papyrus.infra.gmfdiag.css;bundle-version="0.10.0",
+ org.eclipse.papyrus.sysml.diagram.common;bundle-version="0.10.0",
+ org.eclipse.papyrus.infra.widgets.toolbox;bundle-version="0.10.0",
+ org.eclipse.gmf.runtime.diagram.ui.render;bundle-version="1.6.0",
+ org.eclipse.papyrus.uml.diagram.sequence;bundle-version="0.10.0";resolution:=optional,
+ org.eclipse.papyrus.uml.diagram.stereotype.edition;bundle-version="0.10.0",
+ org.eclipse.gmf.tooling.runtime;bundle-version="3.1.0",
+ org.eclipse.gmf.runtime.draw2d.ui.render;bundle-version="1.4.1",
+ org.eclipse.papyrus.uml.tools.utils;bundle-version="0.10.0",
+ org.eclipse.papyrus.infra.emf;bundle-version="0.10.0",
+ org.eclipse.papyrus.uml.diagram.modelexplorer;bundle-version="0.10.0",
+ org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.3.0",
+ org.eclipse.papyrus.infra.services.labelprovider;bundle-version="0.10.0",
+ org.eclipse.papyrus.uml.diagram.communication;bundle-version="0.10.0"
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Bundle-ActivationPolicy: lazy
Bundle-Vendor: %providerName
Export-Package: org.eclipse.papyrus.uml.diagram.interactionoverview,
- org.eclipse.papyrus.uml.diagram.interactionoverview.edit.commands,
- org.eclipse.papyrus.uml.diagram.interactionoverview.edit.dialogs,
- org.eclipse.papyrus.uml.diagram.interactionoverview.edit.part,
- org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policies,
- org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policy,
- org.eclipse.papyrus.uml.diagram.interactionoverview.factory,
- org.eclipse.papyrus.uml.diagram.interactionoverview.figures,
- org.eclipse.papyrus.uml.diagram.interactionoverview.parser,
- org.eclipse.papyrus.uml.diagram.interactionoverview.part,
- org.eclipse.papyrus.uml.diagram.interactionoverview.preferences,
- org.eclipse.papyrus.uml.diagram.interactionoverview.provider
-Bundle-Localization: plugin
+ org.eclipse.papyrus.uml.diagram.interactionoverview.edit.part
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/build.properties b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/build.properties
index 917db3bf688..42ded34702d 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/build.properties
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/build.properties
@@ -7,7 +7,4 @@ bin.includes = META-INF/,\
palettes/,\
icons/,\
about.html,\
- plugin.properties,\
- messages.properties
-src.includes = about.html
-
+ plugin.properties \ No newline at end of file
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/messages.properties b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/messages.properties
index 0edd3525a82..49a633cdf92 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/messages.properties
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/messages.properties
@@ -1,7 +1,19 @@
-CustomInteractionOverviewDiagramCreationEditPolicy_CreateActivity
+CustomInteractionOverviewDiagramCreationEditPolicy_CreateActivity=Create Activity
CreateCallActionDialog_BehaviorInvocationCreationTitle=Create a new InteractionUse
CreateCallActionDialog_BehaviorInvocationCreationHelp=<form><p>InteractionUse is a call action that invokes an interaction</p></form>
CreateCallActionDialog_BehaviorInvocationSelectionTitle=Or assign an existing one
CreateCallActionDialog_BehaviorTitle=Create a new InteractionUse
CreateCallActionDialog_SelectBehavior=Select InteractionUse
-CreateCallActionDialog_CreateBehavior=Create InteractionUse \ No newline at end of file
+CreateCallActionDialog_CreateBehavior=Create InteractionUse
+CallBehaviorActionAsInteractionEditHelperAdvice_ConfigureCreatedInteraction=Configure created Interaction
+CallBehaviorActionAsInteractionUseEditHelperAdvice_ConfigureCreatedInteraction=Configure created InteractionUse
+CreateSnapshotForInteractionFromRefreshCommand_CreateSnapshotForRefresh=Create Snapshot from a refresh
+CreateSnapshotForInteractionFromViewDescriptorCommand_CreateSnapshotForRefresh=Create Snapshot from a view constructor
+CreateInteractionUseDialog_InteractionUsePrefix=InteractionUse_
+ActivityContentCompartmentCreationEditPolicy_CreateCallBehaviorActionAsInteractionCommand=Create CallBehaviorAction As Interaction
+CustomIODPaletteFactory_createCallBehaviorActionAsInteractionCreationTool=Create CallBehaviorAction As Interaction Creation Tool
+CreateDiagramImage_LifelineDialogTitle=Select Lifelines
+CreateDiagramImage_LifelineDialogMessage=Select Lifelines
+CreateDiagramImage_MultipleValueSelectorDialog=Lifeline Dialog
+CreateSnapshotForInteractionFromViewDescriptorCommand_DiagramSelectorTitle=Select diagram
+CreateSnapshotForInteractionFromViewDescriptorCommand_DiagramSelectorMessage=Select diagram \ No newline at end of file
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/model/UML.InteractionOverview.idgen b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/model/UML.InteractionOverview.idgen
index 16bc2b352be..9193e78576c 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/model/UML.InteractionOverview.idgen
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/model/UML.InteractionOverview.idgen
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<idgen:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:gmfgen="http://www.eclipse.org/gmf/2009/GenModel" xmlns:idgen="http://www.eclipse.org/papyrus/0.7.0/idgen" name="InteractionOverviewDiagram" type="InteractionOverviewDiagram" icon="" label="Interaction Overview Diagram" language="uml" javaPackagePrefix="org.eclipse.papyrus.uml.diagram.interactionoverview" javaClassPrefix="InteractionOverviewDiagram" createCommandLabel="Create a new Interaction Overview Diagram">
+<idgen:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:gmfgen="http://www.eclipse.org/gmf/2009/GenModel" xmlns:idgen="http://www.eclipse.org/papyrus/0.7.0/idgen" name="InteractionOverviewDiagram" type="PapyrusUMLInteractionOverviewDiagram" icon="" label="Interaction Overview Diagram" language="uml" javaPackagePrefix="org.eclipse.papyrus.uml.diagram.interactionoverview" javaClassPrefix="InteractionOverviewDiagram" createCommandLabel="Create a new Interaction Overview Diagram">
<diagramEditPart name="InteractionOverviewDiagramEditPart">
<behaviors javaClassQualifiedName="org.eclipse.papyrus.uml.diagram.common.editpolicies.DuplicatePasteEditPolicy" key="DuplicatePasteEditPolicy.PASTE_ROLE"/>
<behaviors javaClassQualifiedName="org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policies.CustomInteractionOverviewDiagramCreationEditPolicy" key="org.eclipse.gmf.runtime.diagram.ui.editpolicies.EditPolicyRoles.CREATION_ROLE"/>
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/palettes/interactionoverviewdiagram.palette.xml b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/palettes/interactionoverviewdiagram.palette.xml
index a777629bca7..857a1c1984a 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/palettes/interactionoverviewdiagram.palette.xml
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/palettes/interactionoverviewdiagram.palette.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<paletteDefinition>
<content>
- <drawer id="internalblock.drawer.nodes" name="Nodes" iconpath="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
+ <drawer id="interactionoverview.drawer.nodes" name="Nodes" iconpath="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
<aspectTool
description="Create a new Activity"
id="interactionoverviewdiagram.tool.activity"
@@ -87,7 +87,7 @@
refToolId="createConstraint6CreationTool">
</aspectTool>
</drawer>
- <drawer id="internalblock.drawer.edges" name="Edges" iconpath="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
+ <drawer id="interactionoverview.drawer.edges" name="Edges" iconpath="platform:/plugin/org.eclipse.gmf.runtime.diagram.ui/icons/group.gif">
<aspectTool
description="Create a new CommentAnnotatedElement"
id="interactionoverviewdiagram.tool.commentannotatedelement"
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/plugin.gen.xml b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/plugin.gen.xml
index b6f09eb2a4a..544dec3e9dd 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/plugin.gen.xml
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/plugin.gen.xml
@@ -512,7 +512,7 @@
</object>
<context
- views="ACTIVITY_FINAL_NODE_CN, CALL_BEHAVIOR_ACTION_CN, COMMENT_CN, CONDITIONAL_NODE_CN, DECISION_NODE_CN, FLOW_FINAL_NODE_CN, FORK_NODE_CN, INITIAL_NODE_CN, JOIN_NODE_CN, LOOP_NODE_CN, MERGE_NODE_CN, NAMED_ELEMENT_CN, ACTIVITY, SEQUENCE_NODE_CN, CONSTRAINT_CN"/>
+ views="ACTIVITY_FINAL_NODE_CN, CALL_BEHAVIOR_ACTION_CN, COMMENT_CN, CONDITIONAL_NODE_CN, DECISION_NODE_CN, FLOW_FINAL_NODE_CN, FORK_NODE_CN, INITIAL_NODE_CN, JOIN_NODE_CN, LOOP_NODE_CN, MERGE_NODE_CN, SHAPE_NAMED_ELEMENT_CN, ACTIVITY, SEQUENCE_NODE_CN, CONSTRAINT_CN"/>
<context views="ACTIVITY_PARAMETER_CLN, ACTIVITY_CONSTRAINT_CLN, ACTIVITY_CONSTRAINT_CLN"/>
<context views="COMMENT_ANNOTATED_ELEMENT, CONTROL_FLOW"/>
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/plugin.xml b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/plugin.xml
index 828fa484dd1..b346663dcc2 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/plugin.xml
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/plugin.xml
@@ -106,18 +106,21 @@
<Priority name="Low"/>
<!-- Specify diagram this palette tools relate to -->
- <editor id="org.eclipse.papyrus.uml.diagram.interactionoverview"/>
+ <editor
+ id="org.eclipse.papyrus.uml.diagram.interactionoverview"/>
</paletteDefinition>
</extension>
<!-- Diagram view providers declaration -->
<extension point="org.eclipse.gmf.runtime.diagram.core.viewProviders">
<!-- Diagram view provider -->
- <viewProvider class="org.eclipse.papyrus.uml.diagram.interactionoverview.provider.CustomViewProvider">
- <Priority name="Low"/>
+ <viewProvider class="org.eclipse.papyrus.uml.diagram.interactionoverview.provider.InteractionOverviewDiagramViewProvider">
+ <Priority name="Medium"/>
<context
viewClass="org.eclipse.gmf.runtime.notation.Diagram"
semanticHints=""/>
+
+
</viewProvider>
<!-- ViewProvider for inherited elements (from ActivityDiagram ViewProvider) -->
@@ -334,6 +337,31 @@
elements="uml.ControlFlow"/>
</viewProvider>
+ <viewProvider
+ class="org.eclipse.papyrus.uml.diagram.interactionoverview.provider.CustomViewProvider">
+ <Priority
+ name="High">
+ </Priority>
+ <context
+ viewClass="org.eclipse.gmf.runtime.notation.Node"
+ semanticHints="5000"/>
+
+ <!-- "4006" = COMMENT_ANNOTATED_ELEMENT "4004" = CONTROL_FLOW -->
+
+ <object
+ id="elementtype.node"
+ class="org.eclipse.papyrus.gmf.diagram.common.commands.ISemanticHintAdapter(org.eclipse.papyrus.sysml.diagram.common)">
+
+ <method
+ name="getSemanticHint()"
+ value="5000">
+ </method>
+ </object>
+ <context
+ viewClass="org.eclipse.gmf.runtime.notation.Node"
+ elements="elementtype.node"/>
+
+ </viewProvider>
</extension>
<!-- Diagram edit part providers declaration -->
@@ -455,7 +483,7 @@
class="org.eclipse.gmf.runtime.notation.Node">
<method
name="getType()"
- value="5001, 5002, 7001, 7002, 7003, 7004, 2001"/>
+ value="5001, 5002, 7001, 7002, 7003, 7004"/>
</object>
<object
id="SEQUENCE_NODE_CN"
@@ -513,7 +541,7 @@
</object>
<context
- views="ACTIVITY_FINAL_NODE_CN, CALL_BEHAVIOR_ACTION_CN, COMMENT_CN, CONDITIONAL_NODE_CN, DECISION_NODE_CN, FLOW_FINAL_NODE_CN, FORK_NODE_CN, INITIAL_NODE_CN, JOIN_NODE_CN, LOOP_NODE_CN, MERGE_NODE_CN, SEQUENCE_NODE_CN, CONSTRAINT_CN, ACTIVITY"/>
+ views="ACTIVITY_FINAL_NODE_CN, CALL_BEHAVIOR_ACTION_CN, COMMENT_CN, CONDITIONAL_NODE_CN, DECISION_NODE_CN, FLOW_FINAL_NODE_CN, FORK_NODE_CN, INITIAL_NODE_CN, JOIN_NODE_CN, LOOP_NODE_CN, MERGE_NODE_CN, SHAPE_NAMED_ELEMENT_CN, SEQUENCE_NODE_CN, CONSTRAINT_CN"/>
<context views="ACTIVITY_PARAMETER_CLN, ACTIVITY_CONSTRAINT_CLN, ACTIVITY_CONSTRAINT_CLN"/>
<context views="COMMENT_ANNOTATED_ELEMENT, CONTROL_FLOW"/>
@@ -527,12 +555,12 @@
class="org.eclipse.papyrus.uml.diagram.interactionoverview.provider.CustomEditPartProvider">
<Priority name="Medium"/>
<object
- class="org.eclipse.gmf.runtime.notation.Node(org.eclipse.gmf.runtime.notation)"
- id="customized-edit-parts">
+ class="org.eclipse.gmf.runtime.notation.Node"
+ id="ACTIVITY">
<!-- 2001 = ActivityEditPartTN -->
<method name="getType()" value="2001"/>
</object>
- <context views="customized-edit-parts"/>
+ <context views="ACTIVITY"/>
</editpartProvider>
</extension>
@@ -718,6 +746,78 @@
<Priority name="Low"/>
</ParserProvider>
</extension>
+ <extension
+ id="org.eclipse.papyrus.uml.diagram.timing.palettedefinition"
+ name="Papyrus Interaction Overview Diagram (Incubation) Predefined Entries"
+ point="org.eclipse.gmf.runtime.diagram.ui.paletteProviders">
+ <paletteProvider
+ class="org.eclipse.gmf.runtime.diagram.ui.providers.DefaultPaletteProvider">
+ <Priority
+ name="Medium">
+ </Priority>
+ <contribution
+ factoryClass="org.eclipse.papyrus.uml.diagram.interactionoverview.part.CustomIODPaletteFactory">
+ <entry
+ defineOnly="false"
+ description="Create a new Interaction with snapshot"
+ id="createCallBehaviorActionAsInteractionCreationTool"
+ kind="tool"
+ label="Interaction"
+ large_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Interaction.gif"
+ path="/interactionoverview.drawer.nodes/"
+ small_icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Interaction.gif">
+ path="/InteractionSnapshotGroup">
+ </entry>
+ </contribution>
+ <editor
+ id="org.eclipse.papyrus.uml.diagram.interactionoverview">
+ </editor>
+ </paletteProvider>
+ </extension>
+ <extension
+ point="org.eclipse.gmf.runtime.emf.type.core.elementTypes">
+ <metamodel
+ nsURI="http://www.eclipse.org/uml2/4.0.0/UML">
+ <specializationType
+ edithelperadvice="org.eclipse.papyrus.uml.diagram.interactionoverview.edit.advices.CallBehaviorActionAsInteractionEditHelperAdvice"
+ id="org.eclipse.papyrus.uml.diagram.interactionoverview.CallBehaviorAction_5000"
+ kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
+ name="%metatype.name.CallBehaviorAction_5000">
+ <specializes
+ id="org.eclipse.papyrus.uml.diagram.activity.CallBehaviorAction_3008">
+ </specializes>
+ <param
+ name="semanticHint"
+ value="5000">
+ </param>
+ </specializationType>
+ <adviceBinding
+ class="org.eclipse.papyrus.uml.diagram.interactionoverview.edit.advices.CallBehaviorActionAsInteractionUseEditHelperAdvice"
+ id="org.eclipse.papyrus.uml.diagram.interactionoverview.edit.advices.CallBehaviorActionAsInteractionUseEditHelperAdvice"
+ inheritance="none"
+ typeId="org.eclipse.papyrus.uml.diagram.activity.CallBehaviorAction_3008">
+ </adviceBinding>
+ </metamodel>
+ </extension>
+ <extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypeBindings" id="element-types-bindings">
+ <?gmfgen generated="true"?>
+ <clientContext id="org.eclipse.papyrus.uml.diagram.activity.TypeContext">
+ <enablement>
+ <test
+ property="org.eclipse.gmf.runtime.emf.core.editingDomain"
+ value="org.eclipse.papyrus.uml.diagram.activity.EditingDomain"/>
+ </enablement>
+ </clientContext>
+ <binding context="org.eclipse.papyrus.infra.services.edit.TypeContext">
+ <elementType ref="org.eclipse.papyrus.uml.diagram.interactionoverview.CallBehaviorAction_5000"/>
+ <advice
+ ref="org.eclipse.papyrus.uml.diagram.interactionoverview.edit.advices.CallBehaviorActionAsInteractionEditHelperAdvice">
+ </advice>
+ <advice
+ ref="org.eclipse.papyrus.uml.diagram.interactionoverview.edit.advices.CallBehaviorActionAsInteractionUseEditHelperAdvice">
+ </advice>
+ </binding>
+ </extension>
<!-- Insert custom extensions here. -->
<!-- // End of user code -->
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/Activator.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/Activator.java
index e91c104d089..3f1691343ce 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/Activator.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/Activator.java
@@ -15,6 +15,7 @@ import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.papyrus.infra.core.log.LogHelper;
import org.eclipse.papyrus.uml.diagram.interactionoverview.preferences.InteractionOverviewDiagramPreferenceInitializer;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.provider.ElementInitializers;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.osgi.framework.BundleContext;
@@ -107,4 +108,10 @@ public class Activator extends AbstractUIPlugin {
final IPreferenceStore store = org.eclipse.papyrus.infra.gmfdiag.preferences.Activator.getDefault().getPreferenceStore();
return store;
}
+
+ private ElementInitializers initializers;
+
+ public ElementInitializers getElementInitializers() {
+ return initializers;
+ }
}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/InteractionOverviewDiagramForMultiEditor.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/InteractionOverviewDiagramForMultiEditor.java
index e216a113df2..0047f955a54 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/InteractionOverviewDiagramForMultiEditor.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/InteractionOverviewDiagramForMultiEditor.java
@@ -36,7 +36,7 @@ public class InteractionOverviewDiagramForMultiEditor extends InteractionOvervie
/**
* The location of diagram icon in the plug-in
*/
- private static final String DIAG_IMG_PATH = "icons/obj16/interactionOverviewDiagram.gif"; //$NON-NLS-1$
+ private static final String DIAG_IMG_PATH = "";
/**
* The image descriptor of the diagram icon
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policy/InteractionOverviewDiagramDragDropEditPolicy.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policy/InteractionOverviewDiagramDragDropEditPolicy.java
index afa0e6cc736..4cffd5c2b37 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policy/InteractionOverviewDiagramDragDropEditPolicy.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policy/InteractionOverviewDiagramDragDropEditPolicy.java
@@ -10,42 +10,40 @@
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policy;
+import java.util.Collections;
+import java.util.Set;
+
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.gmf.runtime.notation.View;
-import org.eclipse.papyrus.uml.diagram.activity.edit.policies.CustomDiagramDragDropEditPolicy;
-import org.eclipse.papyrus.uml.diagram.interactionoverview.provider.GraphicalTypeRegistry;
-import org.eclipse.papyrus.uml.diagram.interactionoverview.provider.IGraphicalTypeRegistry;
+import org.eclipse.gmf.runtime.common.core.command.ICommand;
+import org.eclipse.gmf.runtime.diagram.ui.requests.DropObjectsRequest;
+import org.eclipse.papyrus.gmf.diagram.common.edit.policy.CommonDiagramDragDropEditPolicy;
/**
* Customization of the DND edit policy for the InteractionOverviewDiagram
* Diagram
*/
-public class InteractionOverviewDiagramDragDropEditPolicy extends CustomDiagramDragDropEditPolicy {
+public class InteractionOverviewDiagramDragDropEditPolicy extends CommonDiagramDragDropEditPolicy {
- /** Local graphical type registry */
- protected IGraphicalTypeRegistry registry = new GraphicalTypeRegistry();
+ /** Default constructor. */
+ public InteractionOverviewDiagramDragDropEditPolicy() {
+ super(null);
+ // registry = new CustomGraphicalTypeRegistry();
+ }
/**
* {@inheritDoc}
*/
@Override
- public int getNodeVisualID(final View containerView, final EObject domainElement) {
- final String domainType = registry.getNodeGraphicalType(domainElement, containerView.getType());
- if(IGraphicalTypeRegistry.UNDEFINED_TYPE.equals(domainType)) {
- return -1; // undefined
- }
- return new Integer(domainType);
+ protected Set<String> getSpecificDropBehaviorTypes() {
+ return Collections.emptySet();
}
/**
* {@inheritDoc}
*/
@Override
- public int getLinkWithClassVisualID(final EObject domainElement) {
- final String domainType = registry.getEdgeGraphicalType(domainElement);
- if(IGraphicalTypeRegistry.UNDEFINED_TYPE.equals(domainType)) {
- return -1; // undefined
- }
- return new Integer(domainType);
+ protected ICommand getUnknownDropCommand(final DropObjectsRequest dropRequest, final EObject droppedEObject) {
+
+ return super.getUnknownDropCommand(dropRequest, droppedEObject);
}
}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/CustomUMLParserProvider.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/CustomUMLParserProvider.java
index dbbbed3aded..21b1153288f 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/CustomUMLParserProvider.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/CustomUMLParserProvider.java
@@ -10,47 +10,13 @@
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.interactionoverview.provider;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.gmf.runtime.common.core.service.IOperation;
-import org.eclipse.gmf.runtime.common.ui.services.parser.GetParserOperation;
import org.eclipse.gmf.runtime.common.ui.services.parser.IParser;
-import org.eclipse.gmf.runtime.notation.Diagram;
import org.eclipse.papyrus.uml.diagram.activity.edit.parts.CallBehaviorActionNameEditPart;
-import org.eclipse.papyrus.uml.diagram.activity.providers.UMLElementTypes;
import org.eclipse.papyrus.uml.diagram.activity.providers.UMLParserProvider;
import org.eclipse.papyrus.uml.diagram.interactionoverview.parser.CustomCallBehaviorActionParser;
-
public class CustomUMLParserProvider extends UMLParserProvider {
- @Override
- public boolean provides(IOperation operation) {
- if(operation instanceof GetParserOperation) {
- IAdaptable hint = ((GetParserOperation)operation).getHint();
-
- if(hint!=null) {
- Diagram diagram = (Diagram)hint.getAdapter(Diagram.class);
- if(diagram!=null) {
- if(ElementTypes.DIAGRAM_ID.equals(diagram.getType())) {
- if(UMLElementTypes.getElement(hint) == null) {
- return false;
- }
- return getParser(hint) != null;
- } else {
- return false;
- }
- } else {
- return false;
- }
- } else {
- return false;
- }
- }
- return super.provides(operation);
- }
-
-
-
/**
* @see org.eclipse.papyrus.uml.diagram.activity.providers.UMLParserProvider#getParser(int)
*
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/ElementTypes.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/ElementTypes.java
index 876d5976549..6261ffd5674 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/ElementTypes.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/ElementTypes.java
@@ -20,7 +20,7 @@ public class ElementTypes extends AbstractElementTypeEnumerator {
/** ********************************************************* */
/** Interaction Overview Diagram :: Diagram */
- public static final String DIAGRAM_ID = "InteractionOverviewDiagram"; //$NON-NLS-1$
+ public static final String DIAGRAM_ID = "PapyrusUMLInteractionOverviewDiagram"; //$NON-NLS-1$
/** ********************************************************* */
/** Interaction Overview Diagram - ActivityDiagram related elements */
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/InheritedActivityDiagramViewProvider.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/InheritedActivityDiagramViewProvider.java
index 0641607717f..2b7cf92c854 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/InheritedActivityDiagramViewProvider.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/InheritedActivityDiagramViewProvider.java
@@ -150,123 +150,7 @@ public class InheritedActivityDiagramViewProvider extends CustomUMLViewProvider
final IElementType elementType = (IElementType)op.getSemanticAdapter().getAdapter(IElementType.class);
if(elementType == ElementTypes.ACTIVITY_FINAL_NODE_CN) {
- // node:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenChildNodeImpl@1b2c55c7
- // (visualID: 3005, editPartClassName: ActivityFinalNodeEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityFinalNodeItemSemanticEditPolicy,
- // notationViewFactoryClassName: ActivityFinalNodeViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityFinalNodeCanonicalEditPolicy)
- // (primaryDragEditPolicyQualifiedClassName: null,
- // graphicalNodeEditPolicyClassName:
- // ActivityFinalNodeGraphicalNodeEditPolicy, createCommandClassName:
- // ActivityFinalNodeCreateCommand)
- // containers:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@db986d8
- // (visualID: 7004, editPartClassName:
- // ActivityActivityContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityActivityContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityActivityContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@68bbc547
- // (visualID: 7013, editPartClassName:
- // ActivityCNContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityCNContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityCNContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@20266003
- // (visualID: 7008, editPartClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7f94ee08
- // (visualID: 7009, editPartClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7a083b7b
- // (visualID: 7010, editPartClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3fc5ba30
- // (visualID: 7012, editPartClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@a9790a8
- // (visualID: 7005, editPartClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@649a0b06
- // (visualID: 7006, editPartClassName:
- // ActivityPartitionActivityPartitionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityPartitionActivityPartitionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentCanonicalEditPolicy)
- // (title: ActivityPartitionContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3d49ea83
- // (visualID: 7007, editPartClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentCanonicalEditPolicy)
- // (title: InterruptibleActivityRegionContentCompartment,
- // canCollapse: false, hideIfEmpty: true, needsTitle: false,
- // listLayout: false)
- // nodeRef:
- // org.eclipse.papyrus.generation.diagram.idgen.impl.GenNodeRefImpl@533dc18
- // (name: null) (customPreferencePage: null, generatePreferencePage:
- // true, generateTool: true)
+
if(ElementTypes.ACTIVITY_COMPARTMENT_ACTIVITY_FIGURE_CONTENT_HINT.equals(containerGraphicalType)) {
return true;
}
@@ -281,123 +165,7 @@ public class InheritedActivityDiagramViewProvider extends CustomUMLViewProvider
}
}
if(elementType == ElementTypes.CALL_BEHAVIOR_ACTION_CN) {
- // node:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenChildNodeImpl@2c768384
- // (visualID: 3008, editPartClassName: CallBehaviorActionEditPart,
- // itemSemanticEditPolicyClassName:
- // CallBehaviorActionItemSemanticEditPolicy,
- // notationViewFactoryClassName: CallBehaviorActionViewFactory)
- // (canonicalEditPolicyClassName:
- // CallBehaviorActionCanonicalEditPolicy)
- // (primaryDragEditPolicyQualifiedClassName: null,
- // graphicalNodeEditPolicyClassName:
- // CallBehaviorActionGraphicalNodeEditPolicy,
- // createCommandClassName: CallBehaviorActionCreateCommand)
- // containers:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@db986d8
- // (visualID: 7004, editPartClassName:
- // ActivityActivityContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityActivityContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityActivityContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@68bbc547
- // (visualID: 7013, editPartClassName:
- // ActivityCNContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityCNContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityCNContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@20266003
- // (visualID: 7008, editPartClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7f94ee08
- // (visualID: 7009, editPartClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7a083b7b
- // (visualID: 7010, editPartClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3fc5ba30
- // (visualID: 7012, editPartClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@a9790a8
- // (visualID: 7005, editPartClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@649a0b06
- // (visualID: 7006, editPartClassName:
- // ActivityPartitionActivityPartitionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityPartitionActivityPartitionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentCanonicalEditPolicy)
- // (title: ActivityPartitionContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3d49ea83
- // (visualID: 7007, editPartClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentCanonicalEditPolicy)
- // (title: InterruptibleActivityRegionContentCompartment,
- // canCollapse: false, hideIfEmpty: true, needsTitle: false,
- // listLayout: false)
- // nodeRef:
- // org.eclipse.papyrus.generation.diagram.idgen.impl.GenNodeRefImpl@fb6ae53
- // (name: null) (customPreferencePage: null, generatePreferencePage:
- // true, generateTool: true)
+
if(ElementTypes.ACTIVITY_COMPARTMENT_ACTIVITY_FIGURE_CONTENT_HINT.equals(containerGraphicalType)) {
return true;
}
@@ -412,120 +180,7 @@ public class InheritedActivityDiagramViewProvider extends CustomUMLViewProvider
}
}
if(elementType == ElementTypes.COMMENT_CN) {
- // node:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenChildNodeImpl@6b8ef251
- // (visualID: 3080, editPartClassName: CommentEditPartCN,
- // itemSemanticEditPolicyClassName: CommentItemSemanticEditPolicy,
- // notationViewFactoryClassName: CommentViewFactory)
- // (canonicalEditPolicyClassName: CommentCanonicalEditPolicy)
- // (primaryDragEditPolicyQualifiedClassName: null,
- // graphicalNodeEditPolicyClassName: CommentGraphicalNodeEditPolicy,
- // createCommandClassName: CommentCreateCommand)
- // containers:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@db986d8
- // (visualID: 7004, editPartClassName:
- // ActivityActivityContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityActivityContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityActivityContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@68bbc547
- // (visualID: 7013, editPartClassName:
- // ActivityCNContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityCNContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityCNContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@a9790a8
- // (visualID: 7005, editPartClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@20266003
- // (visualID: 7008, editPartClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7f94ee08
- // (visualID: 7009, editPartClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7a083b7b
- // (visualID: 7010, editPartClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3fc5ba30
- // (visualID: 7012, editPartClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@649a0b06
- // (visualID: 7006, editPartClassName:
- // ActivityPartitionActivityPartitionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityPartitionActivityPartitionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentCanonicalEditPolicy)
- // (title: ActivityPartitionContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3d49ea83
- // (visualID: 7007, editPartClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentCanonicalEditPolicy)
- // (title: InterruptibleActivityRegionContentCompartment,
- // canCollapse: false, hideIfEmpty: true, needsTitle: false,
- // listLayout: false)
- // nodeRef:
- // org.eclipse.papyrus.generation.diagram.idgen.impl.GenNodeRefImpl@226ed334
- // (name: null) (customPreferencePage: null, generatePreferencePage:
- // true, generateTool: true)
+
if(ElementTypes.ACTIVITY_COMPARTMENT_ACTIVITY_FIGURE_CONTENT_HINT.equals(containerGraphicalType)) {
return true;
}
@@ -540,123 +195,7 @@ public class InheritedActivityDiagramViewProvider extends CustomUMLViewProvider
}
}
if(elementType == ElementTypes.CONDITIONAL_NODE_CN) {
- // node:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenChildNodeImpl@52545b0f
- // (visualID: 3069, editPartClassName: ConditionalNodeEditPart,
- // itemSemanticEditPolicyClassName:
- // ConditionalNodeItemSemanticEditPolicy,
- // notationViewFactoryClassName: ConditionalNodeViewFactory)
- // (canonicalEditPolicyClassName:
- // ConditionalNodeCanonicalEditPolicy)
- // (primaryDragEditPolicyQualifiedClassName: null,
- // graphicalNodeEditPolicyClassName:
- // ConditionalNodeGraphicalNodeEditPolicy, createCommandClassName:
- // ConditionalNodeCreateCommand)
- // containers:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@db986d8
- // (visualID: 7004, editPartClassName:
- // ActivityActivityContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityActivityContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityActivityContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@68bbc547
- // (visualID: 7013, editPartClassName:
- // ActivityCNContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityCNContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityCNContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@20266003
- // (visualID: 7008, editPartClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7f94ee08
- // (visualID: 7009, editPartClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7a083b7b
- // (visualID: 7010, editPartClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3fc5ba30
- // (visualID: 7012, editPartClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@a9790a8
- // (visualID: 7005, editPartClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@649a0b06
- // (visualID: 7006, editPartClassName:
- // ActivityPartitionActivityPartitionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityPartitionActivityPartitionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentCanonicalEditPolicy)
- // (title: ActivityPartitionContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3d49ea83
- // (visualID: 7007, editPartClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentCanonicalEditPolicy)
- // (title: InterruptibleActivityRegionContentCompartment,
- // canCollapse: false, hideIfEmpty: true, needsTitle: false,
- // listLayout: false)
- // nodeRef:
- // org.eclipse.papyrus.generation.diagram.idgen.impl.GenNodeRefImpl@19ec0c95
- // (name: null) (customPreferencePage: null, generatePreferencePage:
- // true, generateTool: true)
+
if(ElementTypes.ACTIVITY_COMPARTMENT_ACTIVITY_FIGURE_CONTENT_HINT.equals(containerGraphicalType)) {
return true;
}
@@ -671,122 +210,7 @@ public class InheritedActivityDiagramViewProvider extends CustomUMLViewProvider
}
}
if(elementType == ElementTypes.DECISION_NODE_CN) {
- // node:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenChildNodeImpl@637950d4
- // (visualID: 3038, editPartClassName: DecisionNodeEditPart,
- // itemSemanticEditPolicyClassName:
- // DecisionNodeItemSemanticEditPolicy, notationViewFactoryClassName:
- // DecisionNodeViewFactory) (canonicalEditPolicyClassName:
- // DecisionNodeCanonicalEditPolicy)
- // (primaryDragEditPolicyQualifiedClassName: null,
- // graphicalNodeEditPolicyClassName:
- // DecisionNodeGraphicalNodeEditPolicy, createCommandClassName:
- // DecisionNodeCreateCommand)
- // containers:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@db986d8
- // (visualID: 7004, editPartClassName:
- // ActivityActivityContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityActivityContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityActivityContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@68bbc547
- // (visualID: 7013, editPartClassName:
- // ActivityCNContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityCNContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityCNContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@20266003
- // (visualID: 7008, editPartClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7f94ee08
- // (visualID: 7009, editPartClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7a083b7b
- // (visualID: 7010, editPartClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3fc5ba30
- // (visualID: 7012, editPartClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@a9790a8
- // (visualID: 7005, editPartClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@649a0b06
- // (visualID: 7006, editPartClassName:
- // ActivityPartitionActivityPartitionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityPartitionActivityPartitionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentCanonicalEditPolicy)
- // (title: ActivityPartitionContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3d49ea83
- // (visualID: 7007, editPartClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentCanonicalEditPolicy)
- // (title: InterruptibleActivityRegionContentCompartment,
- // canCollapse: false, hideIfEmpty: true, needsTitle: false,
- // listLayout: false)
- // nodeRef:
- // org.eclipse.papyrus.generation.diagram.idgen.impl.GenNodeRefImpl@582e177e
- // (name: null) (customPreferencePage: null, generatePreferencePage:
- // true, generateTool: true)
+
if(ElementTypes.ACTIVITY_COMPARTMENT_ACTIVITY_FIGURE_CONTENT_HINT.equals(containerGraphicalType)) {
return true;
}
@@ -801,122 +225,7 @@ public class InheritedActivityDiagramViewProvider extends CustomUMLViewProvider
}
}
if(elementType == ElementTypes.FLOW_FINAL_NODE_CN) {
- // node:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenChildNodeImpl@5d34de68
- // (visualID: 3006, editPartClassName: FlowFinalNodeEditPart,
- // itemSemanticEditPolicyClassName:
- // FlowFinalNodeItemSemanticEditPolicy,
- // notationViewFactoryClassName: FlowFinalNodeViewFactory)
- // (canonicalEditPolicyClassName: FlowFinalNodeCanonicalEditPolicy)
- // (primaryDragEditPolicyQualifiedClassName: null,
- // graphicalNodeEditPolicyClassName:
- // FlowFinalNodeGraphicalNodeEditPolicy, createCommandClassName:
- // FlowFinalNodeCreateCommand)
- // containers:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@db986d8
- // (visualID: 7004, editPartClassName:
- // ActivityActivityContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityActivityContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityActivityContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@68bbc547
- // (visualID: 7013, editPartClassName:
- // ActivityCNContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityCNContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityCNContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@20266003
- // (visualID: 7008, editPartClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7f94ee08
- // (visualID: 7009, editPartClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7a083b7b
- // (visualID: 7010, editPartClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3fc5ba30
- // (visualID: 7012, editPartClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@a9790a8
- // (visualID: 7005, editPartClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@649a0b06
- // (visualID: 7006, editPartClassName:
- // ActivityPartitionActivityPartitionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityPartitionActivityPartitionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentCanonicalEditPolicy)
- // (title: ActivityPartitionContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3d49ea83
- // (visualID: 7007, editPartClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentCanonicalEditPolicy)
- // (title: InterruptibleActivityRegionContentCompartment,
- // canCollapse: false, hideIfEmpty: true, needsTitle: false,
- // listLayout: false)
- // nodeRef:
- // org.eclipse.papyrus.generation.diagram.idgen.impl.GenNodeRefImpl@3a087e6c
- // (name: null) (customPreferencePage: null, generatePreferencePage:
- // true, generateTool: true)
+
if(ElementTypes.ACTIVITY_COMPARTMENT_ACTIVITY_FIGURE_CONTENT_HINT.equals(containerGraphicalType)) {
return true;
}
@@ -931,121 +240,7 @@ public class InheritedActivityDiagramViewProvider extends CustomUMLViewProvider
}
}
if(elementType == ElementTypes.FORK_NODE_CN) {
- // node:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenChildNodeImpl@4a03cc69
- // (visualID: 3040, editPartClassName: ForkNodeEditPart,
- // itemSemanticEditPolicyClassName: ForkNodeItemSemanticEditPolicy,
- // notationViewFactoryClassName: ForkNodeViewFactory)
- // (canonicalEditPolicyClassName: ForkNodeCanonicalEditPolicy)
- // (primaryDragEditPolicyQualifiedClassName: null,
- // graphicalNodeEditPolicyClassName:
- // ForkNodeGraphicalNodeEditPolicy, createCommandClassName:
- // ForkNodeCreateCommand)
- // containers:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@db986d8
- // (visualID: 7004, editPartClassName:
- // ActivityActivityContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityActivityContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityActivityContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@68bbc547
- // (visualID: 7013, editPartClassName:
- // ActivityCNContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityCNContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityCNContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@20266003
- // (visualID: 7008, editPartClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7f94ee08
- // (visualID: 7009, editPartClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7a083b7b
- // (visualID: 7010, editPartClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3fc5ba30
- // (visualID: 7012, editPartClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@a9790a8
- // (visualID: 7005, editPartClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@649a0b06
- // (visualID: 7006, editPartClassName:
- // ActivityPartitionActivityPartitionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityPartitionActivityPartitionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentCanonicalEditPolicy)
- // (title: ActivityPartitionContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3d49ea83
- // (visualID: 7007, editPartClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentCanonicalEditPolicy)
- // (title: InterruptibleActivityRegionContentCompartment,
- // canCollapse: false, hideIfEmpty: true, needsTitle: false,
- // listLayout: false)
- // nodeRef:
- // org.eclipse.papyrus.generation.diagram.idgen.impl.GenNodeRefImpl@3a40238
- // (name: ) (customPreferencePage: null, generatePreferencePage:
- // true, generateTool: true)
+
if(ElementTypes.ACTIVITY_COMPARTMENT_ACTIVITY_FIGURE_CONTENT_HINT.equals(containerGraphicalType)) {
return true;
}
@@ -1060,122 +255,7 @@ public class InheritedActivityDiagramViewProvider extends CustomUMLViewProvider
}
}
if(elementType == ElementTypes.INITIAL_NODE_CN) {
- // node:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenChildNodeImpl@7894a07a
- // (visualID: 3004, editPartClassName: InitialNodeEditPart,
- // itemSemanticEditPolicyClassName:
- // InitialNodeItemSemanticEditPolicy, notationViewFactoryClassName:
- // InitialNodeViewFactory) (canonicalEditPolicyClassName:
- // InitialNodeCanonicalEditPolicy)
- // (primaryDragEditPolicyQualifiedClassName: null,
- // graphicalNodeEditPolicyClassName:
- // InitialNodeGraphicalNodeEditPolicy, createCommandClassName:
- // InitialNodeCreateCommand)
- // containers:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@db986d8
- // (visualID: 7004, editPartClassName:
- // ActivityActivityContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityActivityContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityActivityContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@68bbc547
- // (visualID: 7013, editPartClassName:
- // ActivityCNContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityCNContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityCNContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@20266003
- // (visualID: 7008, editPartClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7f94ee08
- // (visualID: 7009, editPartClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7a083b7b
- // (visualID: 7010, editPartClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3fc5ba30
- // (visualID: 7012, editPartClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@a9790a8
- // (visualID: 7005, editPartClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@649a0b06
- // (visualID: 7006, editPartClassName:
- // ActivityPartitionActivityPartitionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityPartitionActivityPartitionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentCanonicalEditPolicy)
- // (title: ActivityPartitionContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3d49ea83
- // (visualID: 7007, editPartClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentCanonicalEditPolicy)
- // (title: InterruptibleActivityRegionContentCompartment,
- // canCollapse: false, hideIfEmpty: true, needsTitle: false,
- // listLayout: false)
- // nodeRef:
- // org.eclipse.papyrus.generation.diagram.idgen.impl.GenNodeRefImpl@48dac66
- // (name: null) (customPreferencePage: null, generatePreferencePage:
- // true, generateTool: true)
+
if(ElementTypes.ACTIVITY_COMPARTMENT_ACTIVITY_FIGURE_CONTENT_HINT.equals(containerGraphicalType)) {
return true;
}
@@ -1190,121 +270,7 @@ public class InheritedActivityDiagramViewProvider extends CustomUMLViewProvider
}
}
if(elementType == ElementTypes.JOIN_NODE_CN) {
- // node:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenChildNodeImpl@61f1aec
- // (visualID: 3041, editPartClassName: JoinNodeEditPart,
- // itemSemanticEditPolicyClassName: JoinNodeItemSemanticEditPolicy,
- // notationViewFactoryClassName: JoinNodeViewFactory)
- // (canonicalEditPolicyClassName: JoinNodeCanonicalEditPolicy)
- // (primaryDragEditPolicyQualifiedClassName: null,
- // graphicalNodeEditPolicyClassName:
- // JoinNodeGraphicalNodeEditPolicy, createCommandClassName:
- // JoinNodeCreateCommand)
- // containers:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@db986d8
- // (visualID: 7004, editPartClassName:
- // ActivityActivityContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityActivityContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityActivityContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@68bbc547
- // (visualID: 7013, editPartClassName:
- // ActivityCNContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityCNContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityCNContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@20266003
- // (visualID: 7008, editPartClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7f94ee08
- // (visualID: 7009, editPartClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7a083b7b
- // (visualID: 7010, editPartClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3fc5ba30
- // (visualID: 7012, editPartClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@a9790a8
- // (visualID: 7005, editPartClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@649a0b06
- // (visualID: 7006, editPartClassName:
- // ActivityPartitionActivityPartitionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityPartitionActivityPartitionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentCanonicalEditPolicy)
- // (title: ActivityPartitionContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3d49ea83
- // (visualID: 7007, editPartClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentCanonicalEditPolicy)
- // (title: InterruptibleActivityRegionContentCompartment,
- // canCollapse: false, hideIfEmpty: true, needsTitle: false,
- // listLayout: false)
- // nodeRef:
- // org.eclipse.papyrus.generation.diagram.idgen.impl.GenNodeRefImpl@71315edf
- // (name: null) (customPreferencePage: null, generatePreferencePage:
- // true, generateTool: true)
+
if(ElementTypes.ACTIVITY_COMPARTMENT_ACTIVITY_FIGURE_CONTENT_HINT.equals(containerGraphicalType)) {
return true;
}
@@ -1319,121 +285,7 @@ public class InheritedActivityDiagramViewProvider extends CustomUMLViewProvider
}
}
if(elementType == ElementTypes.LOOP_NODE_CN) {
- // node:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenChildNodeImpl@59c87ef9
- // (visualID: 3071, editPartClassName: LoopNodeEditPart,
- // itemSemanticEditPolicyClassName: LoopNodeItemSemanticEditPolicy,
- // notationViewFactoryClassName: LoopNodeViewFactory)
- // (canonicalEditPolicyClassName: LoopNodeCanonicalEditPolicy)
- // (primaryDragEditPolicyQualifiedClassName: null,
- // graphicalNodeEditPolicyClassName:
- // LoopNodeGraphicalNodeEditPolicy, createCommandClassName:
- // LoopNodeCreateCommand)
- // containers:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@db986d8
- // (visualID: 7004, editPartClassName:
- // ActivityActivityContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityActivityContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityActivityContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@68bbc547
- // (visualID: 7013, editPartClassName:
- // ActivityCNContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityCNContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityCNContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@20266003
- // (visualID: 7008, editPartClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7f94ee08
- // (visualID: 7009, editPartClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7a083b7b
- // (visualID: 7010, editPartClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3fc5ba30
- // (visualID: 7012, editPartClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@a9790a8
- // (visualID: 7005, editPartClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@649a0b06
- // (visualID: 7006, editPartClassName:
- // ActivityPartitionActivityPartitionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityPartitionActivityPartitionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentCanonicalEditPolicy)
- // (title: ActivityPartitionContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3d49ea83
- // (visualID: 7007, editPartClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentCanonicalEditPolicy)
- // (title: InterruptibleActivityRegionContentCompartment,
- // canCollapse: false, hideIfEmpty: true, needsTitle: false,
- // listLayout: false)
- // nodeRef:
- // org.eclipse.papyrus.generation.diagram.idgen.impl.GenNodeRefImpl@604bbc87
- // (name: null) (customPreferencePage: null, generatePreferencePage:
- // true, generateTool: true)
+
if(ElementTypes.ACTIVITY_COMPARTMENT_ACTIVITY_FIGURE_CONTENT_HINT.equals(containerGraphicalType)) {
return true;
}
@@ -1448,121 +300,7 @@ public class InheritedActivityDiagramViewProvider extends CustomUMLViewProvider
}
}
if(elementType == ElementTypes.MERGE_NODE_CN) {
- // node:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenChildNodeImpl@3819222f
- // (visualID: 3039, editPartClassName: MergeNodeEditPart,
- // itemSemanticEditPolicyClassName: MergeNodeItemSemanticEditPolicy,
- // notationViewFactoryClassName: MergeNodeViewFactory)
- // (canonicalEditPolicyClassName: MergeNodeCanonicalEditPolicy)
- // (primaryDragEditPolicyQualifiedClassName: null,
- // graphicalNodeEditPolicyClassName:
- // MergeNodeGraphicalNodeEditPolicy, createCommandClassName:
- // MergeNodeCreateCommand)
- // containers:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@db986d8
- // (visualID: 7004, editPartClassName:
- // ActivityActivityContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityActivityContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityActivityContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@68bbc547
- // (visualID: 7013, editPartClassName:
- // ActivityCNContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityCNContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityCNContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@20266003
- // (visualID: 7008, editPartClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7f94ee08
- // (visualID: 7009, editPartClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7a083b7b
- // (visualID: 7010, editPartClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3fc5ba30
- // (visualID: 7012, editPartClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@a9790a8
- // (visualID: 7005, editPartClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@649a0b06
- // (visualID: 7006, editPartClassName:
- // ActivityPartitionActivityPartitionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityPartitionActivityPartitionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentCanonicalEditPolicy)
- // (title: ActivityPartitionContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3d49ea83
- // (visualID: 7007, editPartClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentCanonicalEditPolicy)
- // (title: InterruptibleActivityRegionContentCompartment,
- // canCollapse: false, hideIfEmpty: true, needsTitle: false,
- // listLayout: false)
- // nodeRef:
- // org.eclipse.papyrus.generation.diagram.idgen.impl.GenNodeRefImpl@c467475
- // (name: null) (customPreferencePage: null, generatePreferencePage:
- // true, generateTool: true)
+
if(ElementTypes.ACTIVITY_COMPARTMENT_ACTIVITY_FIGURE_CONTENT_HINT.equals(containerGraphicalType)) {
return true;
}
@@ -1577,23 +315,7 @@ public class InheritedActivityDiagramViewProvider extends CustomUMLViewProvider
}
}
if(elementType == ElementTypes.SHAPE_NAMED_ELEMENT_CN) {
- // node:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenChildNodeImpl@c12dc5f
- // (visualID: 3085, editPartClassName: ShapeNamedElementEditPart,
- // itemSemanticEditPolicyClassName:
- // ShapeNamedElementItemSemanticEditPolicy,
- // notationViewFactoryClassName: null)
- // (canonicalEditPolicyClassName:
- // ShapeNamedElementCanonicalEditPolicy)
- // (primaryDragEditPolicyQualifiedClassName: null,
- // graphicalNodeEditPolicyClassName:
- // ShapeNamedElementGraphicalNodeEditPolicy, createCommandClassName:
- // ShapeNamedElementCreateCommand)
- // containers:
- // nodeRef:
- // org.eclipse.papyrus.generation.diagram.idgen.impl.GenNodeRefImpl@6587b39e
- // (name: null) (customPreferencePage: null, generatePreferencePage:
- // true, generateTool: true)
+
}
if(elementType == ElementTypes.ACTIVITY) {
if(ElementTypes.DIAGRAM_ID.equals(containerGraphicalType)) {
@@ -1601,122 +323,7 @@ public class InheritedActivityDiagramViewProvider extends CustomUMLViewProvider
}
}
if(elementType == ElementTypes.SEQUENCE_NODE_CN) {
- // node:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenChildNodeImpl@37a34401
- // (visualID: 3073, editPartClassName: SequenceNodeEditPart,
- // itemSemanticEditPolicyClassName:
- // SequenceNodeItemSemanticEditPolicy, notationViewFactoryClassName:
- // SequenceNodeViewFactory) (canonicalEditPolicyClassName:
- // SequenceNodeCanonicalEditPolicy)
- // (primaryDragEditPolicyQualifiedClassName: null,
- // graphicalNodeEditPolicyClassName:
- // SequenceNodeGraphicalNodeEditPolicy, createCommandClassName:
- // SequenceNodeCreateCommand)
- // containers:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@db986d8
- // (visualID: 7004, editPartClassName:
- // ActivityActivityContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityActivityContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityActivityContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@68bbc547
- // (visualID: 7013, editPartClassName:
- // ActivityCNContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityCNContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityCNContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@20266003
- // (visualID: 7008, editPartClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7f94ee08
- // (visualID: 7009, editPartClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7a083b7b
- // (visualID: 7010, editPartClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3fc5ba30
- // (visualID: 7012, editPartClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@a9790a8
- // (visualID: 7005, editPartClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@649a0b06
- // (visualID: 7006, editPartClassName:
- // ActivityPartitionActivityPartitionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityPartitionActivityPartitionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentCanonicalEditPolicy)
- // (title: ActivityPartitionContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3d49ea83
- // (visualID: 7007, editPartClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentCanonicalEditPolicy)
- // (title: InterruptibleActivityRegionContentCompartment,
- // canCollapse: false, hideIfEmpty: true, needsTitle: false,
- // listLayout: false)
- // nodeRef:
- // org.eclipse.papyrus.generation.diagram.idgen.impl.GenNodeRefImpl@66e0c7d2
- // (name: null) (customPreferencePage: null, generatePreferencePage:
- // true, generateTool: true)
+
if(ElementTypes.ACTIVITY_COMPARTMENT_ACTIVITY_FIGURE_CONTENT_HINT.equals(containerGraphicalType)) {
return true;
}
@@ -1731,111 +338,7 @@ public class InheritedActivityDiagramViewProvider extends CustomUMLViewProvider
}
}
if(elementType == ElementTypes.CONSTRAINT_CN) {
- // node:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenChildNodeImpl@1d69a67
- // (visualID: 3112, editPartClassName: ConstraintEditPartCN,
- // itemSemanticEditPolicyClassName:
- // ConstraintItemSemanticEditPolicyCN, notationViewFactoryClassName:
- // null) (canonicalEditPolicyClassName:
- // ConstraintCanonicalEditPolicyCN)
- // (primaryDragEditPolicyQualifiedClassName: null,
- // graphicalNodeEditPolicyClassName:
- // ConstraintGraphicalNodeEditPolicyCN, createCommandClassName:
- // ConstraintCreateCommandCN)
- // containers:
- // org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@db986d8
- // (visualID: 7004, editPartClassName:
- // ActivityActivityContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityActivityContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityActivityContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityActivityContentCompartmentCanonicalEditPolicy) (title:
- // ActivityFigureContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@20266003
- // (visualID: 7008, editPartClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ConditionalNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7f94ee08
- // (visualID: 7009, editPartClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ExpansionRegionStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@7a083b7b
- // (visualID: 7010, editPartClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // LoopNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3fc5ba30
- // (visualID: 7012, editPartClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // SequenceNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@a9790a8
- // (visualID: 7005, editPartClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // StructuredActivityNodeStructuredActivityNodeContentCompartmentCanonicalEditPolicy)
- // (title: StructuredActivityNodeContentCompartment, canCollapse:
- // false, hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@649a0b06
- // (visualID: 7006, editPartClassName:
- // ActivityPartitionActivityPartitionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // ActivityPartitionActivityPartitionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // ActivityPartitionActivityPartitionContentCompartmentCanonicalEditPolicy)
- // (title: ActivityPartitionContentCompartment, canCollapse: false,
- // hideIfEmpty: true, needsTitle: false, listLayout:
- // false)org.eclipse.gmf.codegen.gmfgen.impl.GenCompartmentImpl@3d49ea83
- // (visualID: 7007, editPartClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentEditPart,
- // itemSemanticEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy,
- // notationViewFactoryClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentViewFactory)
- // (canonicalEditPolicyClassName:
- // InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentCanonicalEditPolicy)
- // (title: InterruptibleActivityRegionContentCompartment,
- // canCollapse: false, hideIfEmpty: true, needsTitle: false,
- // listLayout: false)
- // nodeRef:
- // org.eclipse.papyrus.generation.diagram.idgen.impl.GenNodeRefImpl@2f5ee0c2
- // (name: ) (customPreferencePage: null, generatePreferencePage:
- // true, generateTool: true)
+
if(ElementTypes.ACTIVITY_COMPARTMENT_ACTIVITY_FIGURE_CONTENT_HINT.equals(containerGraphicalType)) {
return true;
}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/InteractionOverviewDiagramEditPartProvider.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/InteractionOverviewDiagramEditPartProvider.java
index 2492f9b9c27..317f5ef98bf 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/InteractionOverviewDiagramEditPartProvider.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/InteractionOverviewDiagramEditPartProvider.java
@@ -28,7 +28,7 @@ public class InteractionOverviewDiagramEditPartProvider extends UMLEditPartProvi
// Ensure current diagram is InteractionOverviewDiagram Diagram
if(ElementTypes.DIAGRAM_ID.equals(view.getType())) {
return true;
- }
+ }
}
return false;
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/InteractionOverviewDiagramEditPolicyProvider.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/InteractionOverviewDiagramEditPolicyProvider.java
index 835b37ed9d6..db4f96eaa58 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/InteractionOverviewDiagramEditPolicyProvider.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src-gen/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/InteractionOverviewDiagramEditPolicyProvider.java
@@ -17,7 +17,7 @@ import org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPart;
import org.eclipse.gmf.runtime.diagram.ui.editpolicies.EditPolicyRoles;
import org.eclipse.gmf.runtime.diagram.ui.services.editpolicy.CreateEditPoliciesOperation;
import org.eclipse.gmf.runtime.diagram.ui.services.editpolicy.IEditPolicyProvider;
-import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policy.InteractionOverviewDiagramDragDropEditPolicy;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policies.CustomInteractionOverviewDiagramDragAndDropEditPolicy;
public class InteractionOverviewDiagramEditPolicyProvider extends AbstractProvider implements IEditPolicyProvider {
@@ -104,7 +104,7 @@ public class InteractionOverviewDiagramEditPolicyProvider extends AbstractProvid
}
public void createEditPolicies(final EditPart editPart) {
- editPart.installEditPolicy(EditPolicyRoles.DRAG_DROP_ROLE, new InteractionOverviewDiagramDragDropEditPolicy());
+ editPart.installEditPolicy(EditPolicyRoles.DRAG_DROP_ROLE, new CustomInteractionOverviewDiagramDragAndDropEditPolicy());
}
}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/InteractionOverviewDiagramCreationCondition.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/InteractionOverviewDiagramCreationCondition.java
index c9e5056ea02..e4c56fa5e8e 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/InteractionOverviewDiagramCreationCondition.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/InteractionOverviewDiagramCreationCondition.java
@@ -14,7 +14,7 @@ import org.eclipse.emf.ecore.EObject;
import org.eclipse.papyrus.infra.core.extension.commands.PerspectiveContextDependence;
/**
- * PackageDiagramCreationCondition class allows to check if a Class diagram can
+ * PackageDiagramCreationCondition class allows to check if a Interaction Overview diagram can
* be added to the selected element.
*/
public class InteractionOverviewDiagramCreationCondition extends PerspectiveContextDependence {
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/advices/CallBehaviorActionAsInteractionEditHelperAdvice.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/advices/CallBehaviorActionAsInteractionEditHelperAdvice.java
new file mode 100644
index 00000000000..6da64e81fa5
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/advices/CallBehaviorActionAsInteractionEditHelperAdvice.java
@@ -0,0 +1,71 @@
+/*****************************************************************************
+ * 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
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.interactionoverview.edit.advices;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.gmf.runtime.common.core.command.CompositeCommand;
+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.gmf.runtime.emf.type.core.requests.IEditCommandRequest;
+import org.eclipse.gmf.runtime.emf.type.core.requests.SetRequest;
+import org.eclipse.jface.dialogs.IDialogConstants;
+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.advices.CallBehaviorActionEditHelperAdvice;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.dialogs.CreateInteractionUseDialog;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.part.Messages;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.uml2.uml.Activity;
+import org.eclipse.uml2.uml.Behavior;
+import org.eclipse.uml2.uml.InvocationAction;
+import org.eclipse.uml2.uml.UMLPackage;
+
+
+public class CallBehaviorActionAsInteractionEditHelperAdvice extends AbstractEditHelperAdvice {
+
+ public static String CALL_BEHAVIOR_ACTION_AS_INTERACTION = "CallBehaviorActionAsInteraction";
+
+ @Override
+ protected ICommand getBeforeConfigureCommand(final ConfigureRequest request) {
+ // get the activity containing the new element
+ Activity parentActivity = null;
+ EObject parent = request.getElementToConfigure();
+ while(parent != null && parentActivity == null) {
+ if(parent instanceof Activity) {
+ parentActivity = (Activity)parent;
+ }
+ parent = parent.eContainer();
+ }
+ if(CALL_BEHAVIOR_ACTION_AS_INTERACTION.equals(request.getParameter(CallBehaviorActionEditHelperAdvice.POPUP_TYPE))) {
+ final CreateInteractionUseDialog dialog = new CreateInteractionUseDialog(Display.getDefault().getActiveShell(), parentActivity, (InvocationAction)request.getElementToConfigure());
+ if(IDialogConstants.OK_ID == dialog.open()) {
+ // initialize the invoked element (no need to use a command, since action is being created)
+ final CompositeCommand command = new CompositeCommand(Messages.CallBehaviorActionAsInteractionEditHelperAdvice_ConfigureCreatedInteraction);
+ final IElementEditService service = ElementEditServiceUtils.getCommandProvider(request.getElementToConfigure());
+ final EObject behavior = dialog.getSelectedInvoked();
+ if(behavior instanceof Behavior) {
+ final SetRequest setBehaviorRequest = new SetRequest(request.getElementToConfigure(), UMLPackage.eINSTANCE.getCallBehaviorAction_Behavior(), behavior);
+ command.add(service.getEditCommand(setBehaviorRequest));
+ }
+ // initialize synchronous
+ return command;
+ }
+ }
+ return null;
+ }
+
+ @Override
+ public void configureRequest(final IEditCommandRequest request) {
+ request.getParameters().put(CallBehaviorActionEditHelperAdvice.POPUP_TYPE, CALL_BEHAVIOR_ACTION_AS_INTERACTION);
+ }
+
+}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/advices/CallBehaviorActionAsInteractionUseEditHelperAdvice.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/advices/CallBehaviorActionAsInteractionUseEditHelperAdvice.java
new file mode 100644
index 00000000000..a92ec7164c9
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/advices/CallBehaviorActionAsInteractionUseEditHelperAdvice.java
@@ -0,0 +1,70 @@
+/*****************************************************************************
+ * 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
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.interactionoverview.edit.advices;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.gmf.runtime.common.core.command.CompositeCommand;
+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.gmf.runtime.emf.type.core.requests.IEditCommandRequest;
+import org.eclipse.gmf.runtime.emf.type.core.requests.SetRequest;
+import org.eclipse.jface.dialogs.IDialogConstants;
+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.advices.CallBehaviorActionEditHelperAdvice;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.dialogs.CreateInteractionUseDialog;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.part.Messages;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.uml2.uml.Activity;
+import org.eclipse.uml2.uml.Behavior;
+import org.eclipse.uml2.uml.InvocationAction;
+import org.eclipse.uml2.uml.UMLPackage;
+
+
+public class CallBehaviorActionAsInteractionUseEditHelperAdvice extends AbstractEditHelperAdvice {
+
+ public static String CALL_BEHAVIOR_ACTION_AS_INTERACTION_USE = "CallBehaviorActionAsInteractionUse";
+
+ @Override
+ protected ICommand getBeforeConfigureCommand(final ConfigureRequest request) {
+ // get the activity containing the new element
+ Activity parentActivity = null;
+ EObject parent = request.getElementToConfigure();
+ while(parent != null && parentActivity == null) {
+ if(parent instanceof Activity) {
+ parentActivity = (Activity)parent;
+ }
+ parent = parent.eContainer();
+ }
+ if(CALL_BEHAVIOR_ACTION_AS_INTERACTION_USE.equals(request.getParameter(CallBehaviorActionEditHelperAdvice.POPUP_TYPE))) {
+ final CreateInteractionUseDialog dialog = new CreateInteractionUseDialog(Display.getDefault().getActiveShell(), parentActivity, (InvocationAction)request.getElementToConfigure());
+ if(IDialogConstants.OK_ID == dialog.open()) {
+ // initialize the invoked element (no need to use a command, since action is being created)
+ final CompositeCommand command = new CompositeCommand(Messages.CallBehaviorActionAsInteractionUseEditHelperAdvice_ConfigureCreatedInteraction);
+ final IElementEditService service = ElementEditServiceUtils.getCommandProvider(request.getElementToConfigure());
+ final EObject behavior = dialog.getSelectedInvoked();
+ if(behavior instanceof Behavior) {
+ final SetRequest setBehaviorRequest = new SetRequest(request.getElementToConfigure(), UMLPackage.eINSTANCE.getCallBehaviorAction_Behavior(), behavior);
+ command.add(service.getEditCommand(setBehaviorRequest));
+ }
+ // initialize synchronous
+ return command;
+ }
+ }
+ return null;
+ }
+
+ @Override
+ public void configureRequest(final IEditCommandRequest request) {
+ request.getParameters().put(CallBehaviorActionEditHelperAdvice.POPUP_TYPE, CALL_BEHAVIOR_ACTION_AS_INTERACTION_USE);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/commands/CallBehaviorActionAsInteractionUseCreateCommand.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/commands/CallBehaviorActionAsInteractionUseCreateCommand.java
index 6fda9e06225..d939e9e0191 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/commands/CallBehaviorActionAsInteractionUseCreateCommand.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/commands/CallBehaviorActionAsInteractionUseCreateCommand.java
@@ -26,10 +26,8 @@ import org.eclipse.uml2.uml.Behavior;
import org.eclipse.uml2.uml.CallBehaviorAction;
import org.eclipse.uml2.uml.UMLFactory;
-
public class CallBehaviorActionAsInteractionUseCreateCommand extends CallBehaviorActionCreateCommand {
-
public CallBehaviorActionAsInteractionUseCreateCommand(final CreateElementRequest req) {
super(req);
}
@@ -56,7 +54,8 @@ public class CallBehaviorActionAsInteractionUseCreateCommand extends CallBehavio
final CallBehaviorAction newElement = UMLFactory.eINSTANCE.createCallBehaviorAction();
final CreateInteractionUseDialog dialog = new CreateInteractionUseDialog(Display.getDefault().getActiveShell(), parentActivity, newElement);
if(IDialogConstants.OK_ID == dialog.open()) {
- // initialize the invoked element (no need to use a command, since action is being created)
+ // initialize the invoked element (no need to use a command, since
+ // action is being created)
final EObject behavior = dialog.getSelectedInvoked();
if(behavior instanceof Behavior) {
newElement.setBehavior((Behavior)behavior);
@@ -65,8 +64,6 @@ public class CallBehaviorActionAsInteractionUseCreateCommand extends CallBehavio
return CommandResult.newCancelledCommandResult();
}
initAndExecuteEmfCommand(newElement);
- // Activity owner = (Activity)getElementToEdit();
- // owner.getNodes().add(newElement);
ElementInitializers.getInstance().init_CallBehaviorAction_3008(newElement);
doConfigure(newElement, monitor, info);
((CreateElementRequest)getRequest()).setNewElement(newElement);
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/commands/CreateSnapshotForInteractionFromRefreshCommand.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/commands/CreateSnapshotForInteractionFromRefreshCommand.java
new file mode 100644
index 00000000000..28549391647
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/commands/CreateSnapshotForInteractionFromRefreshCommand.java
@@ -0,0 +1,184 @@
+/*****************************************************************************
+ * 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
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.interactionoverview.edit.commands;
+
+import java.util.Iterator;
+
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.draw2d.IFigure;
+import org.eclipse.draw2d.ImageFigure;
+import org.eclipse.emf.common.util.TreeIterator;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.ecore.util.EcoreUtil.Copier;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.emf.transaction.util.TransactionUtil;
+import org.eclipse.gef.EditPart;
+import org.eclipse.gmf.runtime.common.core.command.CommandResult;
+import org.eclipse.gmf.runtime.diagram.core.preferences.PreferencesHint;
+import org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPart;
+import org.eclipse.gmf.runtime.emf.commands.core.command.AbstractTransactionalCommand;
+import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.uml.diagram.communication.edit.parts.ModelEditPart;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.Activator;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.part.InteractionOverviewDiagramEditPart;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.figures.InteractionWithSnapshotFigure;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.part.Messages;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.utils.CallBehaviorUtil;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.utils.CreateDiagramImage;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.utils.DiagramUtils;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.utils.URIUtils;
+import org.eclipse.papyrus.uml.diagram.sequence.edit.parts.PackageEditPart;
+import org.eclipse.papyrus.uml.diagram.sequence.part.UMLDiagramEditorPlugin;
+import org.eclipse.papyrus.uml.diagram.timing.edit.parts.TimingDiagramEditPart;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.uml2.uml.Behavior;
+import org.eclipse.uml2.uml.CallBehaviorAction;
+
+
+public class CreateSnapshotForInteractionFromRefreshCommand extends AbstractTransactionalCommand {
+
+ View callBehaviorView;
+
+ CallBehaviorAction callBehaviorAction;
+
+ GraphicalEditPart host;
+
+ public CreateSnapshotForInteractionFromRefreshCommand(final TransactionalEditingDomain editingDomain, final View callBehaviorActionView, final GraphicalEditPart host) {
+ super(editingDomain, Messages.CreateSnapshotForInteractionFromRefreshCommand_CreateSnapshotForRefresh, null);
+ this.callBehaviorView = callBehaviorActionView;
+ this.callBehaviorAction = (CallBehaviorAction)callBehaviorActionView.getElement();
+ this.host = host;
+ }
+
+ @Override
+ public boolean canExecute() {
+ return true;
+ }
+
+ public static CreateSnapshotForInteractionFromRefreshCommand create(final View callBehaviorActionView, final GraphicalEditPart host) {
+ return new CreateSnapshotForInteractionFromRefreshCommand(TransactionUtil.getEditingDomain(callBehaviorActionView.getElement()), callBehaviorActionView, host);
+ }
+
+ @Override
+ protected CommandResult doExecuteWithResult(final IProgressMonitor monitor, final IAdaptable info) throws ExecutionException {
+
+ final Behavior behavior = callBehaviorAction.getBehavior();
+ final Diagram diagram = findSequenceDiagram();
+ final ResourceSet resourceSet = behavior.eResource().getResourceSet();
+
+ Resource newResource = null;
+ Diagram cloneDiagram = null;
+ try {
+ newResource = resourceSet.createResource(org.eclipse.emf.common.util.URI.createURI(URIUtils.getTimestampedURI()));
+
+ final Copier copier = new Copier();
+ cloneDiagram = (Diagram)copier.copy(diagram);
+ copier.copyReferences();
+ final TreeIterator<EObject> eObjects = diagram.eAllContents();
+ while(eObjects.hasNext()) {
+ final EObject eObject = eObjects.next();
+ copier.copy(eObject);
+ copier.copyReferences();
+ }
+ newResource.getContents().add(cloneDiagram);
+ final GraphicalEditPart behaviorEditPart = findBehaviorEditPart(host, callBehaviorAction);
+ final IFigure borderedNodeImage = behaviorEditPart.getFigure();
+ final IFigure callActionBehaviorImage = findInteractionWithSnapshotInFigure(borderedNodeImage);
+ if(callActionBehaviorImage instanceof InteractionWithSnapshotFigure) {
+
+ final ImageFigure imageFigure = ((InteractionWithSnapshotFigure)callActionBehaviorImage).getImageFigure();
+ if(imageFigure.getImage() == null) {
+ ///test sur le bound
+ final PreferencesHint preferenceHint = getReferenceHint(diagram.getType());
+ final Image image = CreateDiagramImage.getDiagramImage(cloneDiagram, preferenceHint, imageFigure, callBehaviorView);
+
+
+ ((InteractionWithSnapshotFigure)callActionBehaviorImage).setSnapshot(image);
+ }
+ }
+ } finally {
+ if(newResource != null) {
+ resourceSet.getResources().remove(newResource);
+ }
+ if(cloneDiagram != null) {
+ cloneDiagram.unsetElement();
+ EcoreUtil.delete(cloneDiagram, true);
+ }
+ }
+
+ return CommandResult.newOKCommandResult();
+ }
+
+ private PreferencesHint getReferenceHint(final String type) {
+ if(PackageEditPart.MODEL_ID.equals(type)) {
+ return UMLDiagramEditorPlugin.DIAGRAM_PREFERENCES_HINT;
+ } else if(TimingDiagramEditPart.MODEL_ID.equals(type)) {
+ return org.eclipse.papyrus.uml.diagram.timing.part.UMLDiagramEditorPlugin.DIAGRAM_PREFERENCES_HINT;
+ } else if(InteractionOverviewDiagramEditPart.MODEL_ID.equals(type)) {
+ return Activator.DIAGRAM_PREFERENCES_HINT;
+ } else if(ModelEditPart.MODEL_ID.equals(type)) {
+ return org.eclipse.papyrus.uml.diagram.communication.part.UMLDiagramEditorPlugin.DIAGRAM_PREFERENCES_HINT;
+ }
+ return null;
+ }
+
+ private GraphicalEditPart findBehaviorEditPart(final EditPart parentEditPart, final CallBehaviorAction callBehaviorAction) {
+ for(final Object child : parentEditPart.getChildren()) {
+ if(child instanceof GraphicalEditPart) {
+ final GraphicalEditPart editPartChild = (GraphicalEditPart)child;
+ if(editPartChild.resolveSemanticElement() == callBehaviorAction) {
+ return editPartChild;
+ }
+ }
+ }
+ return null;
+ }
+
+ private IFigure findInteractionWithSnapshotInFigure(final IFigure containerFigure) {
+ for(final Object childFigureAsObject : containerFigure.getChildren()) {
+ if(childFigureAsObject instanceof IFigure) {
+ final IFigure childFigure = (IFigure)childFigureAsObject;
+ if(childFigure instanceof InteractionWithSnapshotFigure) {
+ return childFigure;
+ } else {
+ if(!childFigure.getChildren().isEmpty()) {
+ return findInteractionWithSnapshotInFigure(childFigure);
+ }
+ }
+ }
+ }
+ return null;
+ }
+
+ private Diagram findSequenceDiagram() {
+ final String uuidDiagram = CallBehaviorUtil.getDiagramLinked(callBehaviorView);
+ if(uuidDiagram != null && !uuidDiagram.equals("")) {
+ final ResourceSet resourceSet = callBehaviorAction.eResource().getResourceSet();
+ final Iterator<?> ite = resourceSet.getAllContents();
+ while(ite.hasNext()) {
+ final Object eObject = ite.next();
+ if(eObject instanceof Diagram) {
+ final Diagram diagram = (Diagram)eObject;
+ if(uuidDiagram.equals(DiagramUtils.getUUIDForSnapshot(diagram))) {
+ return diagram;
+ }
+ }
+ }
+ }
+ return null;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/commands/CreateSnapshotForInteractionFromViewDescriptorCommand.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/commands/CreateSnapshotForInteractionFromViewDescriptorCommand.java
new file mode 100644
index 00000000000..b6d5acb0937
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/commands/CreateSnapshotForInteractionFromViewDescriptorCommand.java
@@ -0,0 +1,204 @@
+/*****************************************************************************
+ * 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
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.interactionoverview.edit.commands;
+
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.draw2d.IFigure;
+import org.eclipse.draw2d.ImageFigure;
+import org.eclipse.emf.common.util.TreeIterator;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.ecore.util.EcoreUtil.Copier;
+import org.eclipse.emf.facet.infra.browser.uicore.internal.model.ModelElementItem;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.emf.workspace.AbstractEMFOperation;
+import org.eclipse.gef.EditPart;
+import org.eclipse.gmf.runtime.common.core.command.CommandResult;
+import org.eclipse.gmf.runtime.common.core.command.ICommand;
+import org.eclipse.gmf.runtime.diagram.core.preferences.PreferencesHint;
+import org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPart;
+import org.eclipse.gmf.runtime.diagram.ui.requests.CreateViewRequest.ViewDescriptor;
+import org.eclipse.gmf.runtime.emf.commands.core.command.AbstractTransactionalCommand;
+import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.infra.core.editor.IMultiDiagramEditor;
+import org.eclipse.papyrus.infra.core.services.ServiceException;
+import org.eclipse.papyrus.infra.core.services.ServicesRegistry;
+import org.eclipse.papyrus.infra.services.labelprovider.service.LabelProviderService;
+import org.eclipse.papyrus.infra.widgets.editors.TreeSelectorDialog;
+import org.eclipse.papyrus.uml.diagram.activity.edit.part.CustomActivityActivityContentCompartmentEditPart;
+import org.eclipse.papyrus.uml.diagram.communication.edit.parts.ModelEditPart;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.Activator;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.part.InteractionOverviewDiagramEditPart;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.figures.InteractionWithSnapshotFigure;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.part.Messages;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.provider.DiagramContentProvider;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.utils.CallBehaviorUtil;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.utils.CreateDiagramImage;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.utils.URIUtils;
+import org.eclipse.papyrus.uml.diagram.sequence.edit.parts.PackageEditPart;
+import org.eclipse.papyrus.uml.diagram.sequence.part.UMLDiagramEditorPlugin;
+import org.eclipse.papyrus.uml.diagram.timing.edit.parts.TimingDiagramEditPart;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.uml2.uml.Behavior;
+import org.eclipse.uml2.uml.CallBehaviorAction;
+import org.eclipse.uml2.uml.Interaction;
+
+
+public class CreateSnapshotForInteractionFromViewDescriptorCommand extends AbstractTransactionalCommand {
+
+ ICommand createElementCommand;
+
+ GraphicalEditPart host;
+
+ public CreateSnapshotForInteractionFromViewDescriptorCommand(final TransactionalEditingDomain editingDomain, final ICommand createElementCommand, final GraphicalEditPart host) {
+ super(editingDomain, Messages.CreateSnapshotForInteractionFromViewDescriptorCommand_CreateSnapshotForRefresh, null);
+ this.createElementCommand = createElementCommand;
+ this.host = host;
+ }
+
+ @Override
+ public boolean canExecute() {
+ return true;
+ }
+
+ public static CreateSnapshotForInteractionFromViewDescriptorCommand create(final ICommand createElementCommand, final GraphicalEditPart host) {
+ return new CreateSnapshotForInteractionFromViewDescriptorCommand(((AbstractEMFOperation)createElementCommand).getEditingDomain(), createElementCommand, host);
+ }
+
+ @Override
+ protected CommandResult doExecuteWithResult(final IProgressMonitor monitor, final IAdaptable info) throws ExecutionException {
+ final CommandResult commandResult = createElementCommand.getCommandResult();
+ final Object resultAsObject = commandResult.getReturnValue();
+ if(resultAsObject instanceof ViewDescriptor) {
+ final ViewDescriptor viewDescriptor = (ViewDescriptor)resultAsObject;
+ final View callBehaviorActionView = (View)viewDescriptor.getAdapter(View.class);
+
+ if(host instanceof CustomActivityActivityContentCompartmentEditPart) {
+
+ final CallBehaviorAction callBehaviorAction = (CallBehaviorAction)callBehaviorActionView.getElement();
+ final Behavior behavior = callBehaviorAction.getBehavior();
+ final Diagram diagram = findSequenceDiagram((Interaction)behavior);
+ final ResourceSet resourceSet = behavior.eResource().getResourceSet();
+
+ Resource newResource = null;
+ Diagram cloneDiagram = null;
+ try {
+ newResource = resourceSet.createResource(org.eclipse.emf.common.util.URI.createURI(URIUtils.getTimestampedURI()));
+
+ final Copier copier = new Copier();
+ cloneDiagram = (Diagram)copier.copy(diagram);
+ copier.copyReferences();
+ final TreeIterator<EObject> eObjects = diagram.eAllContents();
+ while(eObjects.hasNext()) {
+ final EObject eObject = eObjects.next();
+ copier.copy(eObject);
+ copier.copyReferences();
+ }
+ newResource.getContents().add(cloneDiagram);
+ final GraphicalEditPart behaviorEditPart = findBehaviorEditPart(host, callBehaviorAction);
+ final IFigure borderedNodeImage = behaviorEditPart.getFigure();
+ final IFigure callActionBehaviorImage = findInteractionWithSnapshotInFigure(borderedNodeImage);
+ if(callActionBehaviorImage instanceof InteractionWithSnapshotFigure) {
+
+ final ImageFigure imageFigure = ((InteractionWithSnapshotFigure)callActionBehaviorImage).getImageFigure();
+ final PreferencesHint preferenceHint = getReferenceHint(diagram.getType());
+ final Image image = CreateDiagramImage.getDiagramImage(cloneDiagram, preferenceHint, imageFigure, callBehaviorActionView);
+
+
+ ((InteractionWithSnapshotFigure)callActionBehaviorImage).setSnapshot(image);
+ }
+ CallBehaviorUtil.setDiagramLinked(callBehaviorActionView, diagram);
+ behaviorEditPart.refresh();
+ } finally {
+ if(newResource != null) {
+ resourceSet.getResources().remove(newResource);
+ }
+ if(cloneDiagram != null) {
+ cloneDiagram.unsetElement();
+ EcoreUtil.delete(cloneDiagram, true);
+ }
+ }
+ }
+ }
+ return CommandResult.newOKCommandResult();
+ }
+
+ private PreferencesHint getReferenceHint(final String type) {
+ if(PackageEditPart.MODEL_ID.equals(type)) {
+ return UMLDiagramEditorPlugin.DIAGRAM_PREFERENCES_HINT;
+ } else if(TimingDiagramEditPart.MODEL_ID.equals(type)) {
+ return org.eclipse.papyrus.uml.diagram.timing.part.UMLDiagramEditorPlugin.DIAGRAM_PREFERENCES_HINT;
+ } else if(InteractionOverviewDiagramEditPart.MODEL_ID.equals(type)) {
+ return Activator.DIAGRAM_PREFERENCES_HINT;
+ } else if(ModelEditPart.MODEL_ID.equals(type)) {
+ return org.eclipse.papyrus.uml.diagram.communication.part.UMLDiagramEditorPlugin.DIAGRAM_PREFERENCES_HINT;
+ }
+ return null;
+ }
+
+ private GraphicalEditPart findBehaviorEditPart(final EditPart parentEditPart, final CallBehaviorAction callBehaviorAction) {
+ for(final Object child : parentEditPart.getChildren()) {
+ if(child instanceof GraphicalEditPart) {
+ final GraphicalEditPart editPartChild = (GraphicalEditPart)child;
+ if(editPartChild.resolveSemanticElement() == callBehaviorAction) {
+ return editPartChild;
+ }
+ }
+ }
+ return null;
+ }
+
+ private IFigure findInteractionWithSnapshotInFigure(final IFigure containerFigure) {
+ for(final Object childFigureAsObject : containerFigure.getChildren()) {
+ if(childFigureAsObject instanceof IFigure) {
+ final IFigure childFigure = (IFigure)childFigureAsObject;
+ if(childFigure instanceof InteractionWithSnapshotFigure) {
+ return childFigure;
+ } else {
+ if(!childFigure.getChildren().isEmpty()) {
+ return findInteractionWithSnapshotInFigure(childFigure);
+ }
+ }
+ }
+ }
+ return null;
+ }
+
+ private Diagram findSequenceDiagram(final Interaction interaction) {
+
+ final TreeSelectorDialog dialog = new TreeSelectorDialog(Display.getDefault().getActiveShell());
+ final ServicesRegistry servicesRegistry = ((IMultiDiagramEditor)(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor())).getServicesRegistry();
+
+ dialog.setContentProvider(new DiagramContentProvider(interaction));
+ dialog.setInput(servicesRegistry);
+ try {
+ dialog.setLabelProvider(servicesRegistry.getService(LabelProviderService.class).getLabelProvider());
+ } catch (final ServiceException e) {
+ Activator.log.error(e);
+ }
+ dialog.setMessage(Messages.CreateSnapshotForInteractionFromViewDescriptorCommand_DiagramSelectorMessage);
+ dialog.setTitle(Messages.CreateSnapshotForInteractionFromViewDescriptorCommand_DiagramSelectorTitle);
+ if(dialog.open() == org.eclipse.jface.window.Window.OK) {
+ final Object[] result = dialog.getResult();
+ if(result != null && result.length > 0 && result[0] instanceof ModelElementItem)
+ return (Diagram)(((ModelElementItem)result[0]).getEObject());
+ }
+
+ return null;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/dialogs/CreateInteractionUseDialog.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/dialogs/CreateInteractionUseDialog.java
index b9246d23892..02c4c8b3926 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/dialogs/CreateInteractionUseDialog.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/dialogs/CreateInteractionUseDialog.java
@@ -38,7 +38,6 @@ import org.eclipse.uml2.uml.UMLPackage;
import com.google.common.collect.Sets;
-
public class CreateInteractionUseDialog extends CreateInvocationActionDialog {
public CreateInteractionUseDialog(final Shell shell, final Activity owner, final InvocationAction newAction) {
@@ -148,7 +147,7 @@ public class CreateInteractionUseDialog extends CreateInvocationActionDialog {
*/
@Override
protected void okPressed() {
- boolean isSelectionSelected = selectionRadio.getSelection();
+ final boolean isSelectionSelected = selectionRadio.getSelection();
// create element if needed
if(!isSelectionSelected) {
selectedInvoked = UMLFactory.eINSTANCE.createInteraction();
@@ -158,23 +157,22 @@ public class CreateInteractionUseDialog extends CreateInvocationActionDialog {
addInvokedInParent(selectedParent, selectedInvoked);
}
- //InteractionUse
- InteractionUse interactionUse = UMLFactory.eINSTANCE.createInteractionUse();
+ // InteractionUse
+ final InteractionUse interactionUse = UMLFactory.eINSTANCE.createInteractionUse();
interactionUse.setRefersTo((Interaction)selectedInvoked);
- interactionUse.setName("InteractionUse_" + ((Interaction)selectedInvoked).getName());
+ interactionUse.setName(Messages.CreateInteractionUseDialog_InteractionUsePrefix + ((Interaction)selectedInvoked).getName());
addInvokedInParent(selectedInvoked, interactionUse);
-
// store user choices in preference
- IPreferenceStore prefStore = UMLDiagramEditorPlugin.getInstance().getPreferenceStore();
+ final IPreferenceStore prefStore = UMLDiagramEditorPlugin.getInstance().getPreferenceStore();
// store choice between selection and creation
prefStore.setValue(getSelectionIsDefaultPreference(), isSelectionSelected);
if(!isSelectionSelected) {
// store the owner choice
- String ressUri = selectedParent.eResource().getURI().toString();
- String parentURI = selectedParent.eResource().getURIFragment(selectedParent);
- String prefValue = String.format(MAP_FORMAT, ressUri, parentURI);
+ final String ressUri = selectedParent.eResource().getURI().toString();
+ final String parentURI = selectedParent.eResource().getURIFragment(selectedParent);
+ final String prefValue = String.format(MAP_FORMAT, ressUri, parentURI);
prefStore.setValue(getCreationDefaultOwnerPreference(), prefValue);
}
setReturnCode(OK);
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CallBehaviorActionAsInteractionEditPart.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CallBehaviorActionAsInteractionEditPart.java
new file mode 100644
index 00000000000..84aa04b9d83
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CallBehaviorActionAsInteractionEditPart.java
@@ -0,0 +1,1003 @@
+/*****************************************************************************
+ * 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
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.interactionoverview.edit.part;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.draw2d.IFigure;
+import org.eclipse.draw2d.Shape;
+import org.eclipse.draw2d.StackLayout;
+import org.eclipse.draw2d.geometry.Rectangle;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.transaction.Transaction;
+import org.eclipse.emf.transaction.impl.InternalTransaction;
+import org.eclipse.emf.transaction.impl.InternalTransactionalEditingDomain;
+import org.eclipse.gef.EditPart;
+import org.eclipse.gef.EditPolicy;
+import org.eclipse.gef.Request;
+import org.eclipse.gef.RequestConstants;
+import org.eclipse.gef.commands.Command;
+import org.eclipse.gef.commands.CompoundCommand;
+import org.eclipse.gef.editpolicies.LayoutEditPolicy;
+import org.eclipse.gef.editpolicies.NonResizableEditPolicy;
+import org.eclipse.gef.requests.ChangeBoundsRequest;
+import org.eclipse.gef.requests.CreateRequest;
+import org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPart;
+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.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.preferences.utils.PreferenceConstantHelper;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.AcceptEventActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionInputPinInCallBeActEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionInputPinInCallOpActAsTargetEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionInputPinInCallOpActEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionInputPinInOpaqueActEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionInputPinInSendObjActAsReqEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionInputPinInSendObjActAsTargetEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionInputPinInSendSigActAsTargetEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActionInputPinInSendSigActEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityFinalNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityParameterNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.AddStructuralFeatureValueActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.AddVariableValueActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.BroadcastSignalActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.CallBehaviorActionNameEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.CallOperationActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.CentralBufferNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ConditionalNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.CreateObjectActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.DataStoreNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.DecisionNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.DestroyObjectActionEditPart;
+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.ExpansionRegionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.FlowFinalNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ForkNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InitialNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInAddStructuralFeatureValueActionAsObjectEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInAddStructuralFeatureValueActionAsValueEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInAddVariableValueActionAsInsertAtEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInAddVariableValueActionAsValueEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInBroadcastSignalActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInCallBeActEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInCallOpActAsTargetEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInCallOpActEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInDestroyObjectActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInLoopNodeAsVariableEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInOpaqueActEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInReadStructuralFeatureAsObjectEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInSendObjActAsReqEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInSendObjActAsTargetEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInSendSigActAsTargetEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInSendSigActEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.JoinNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.LoopNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.MergeNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OpaqueActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInAcceptEventActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInAddStructuralFeatureValueActionAsResultEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInCallBeActEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInCallOpActEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInCreateObjectActionAsResultEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInLoopNodeAsBodyOutputEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInLoopNodeAsLoopVariableEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInLoopNodeAsResultEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInOpaqueActEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInReadStructuralFeatureAsResultEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInReadVariableActionAsResultEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInValSpecActEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ReadSelfActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ReadSelfActionOutputPinEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ReadStructuralFeatureActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ReadVariableActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.SendObjectActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.SendSignalActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.SequenceNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.StructuredActivityNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ValuePinInCallBeActEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ValuePinInCallOpActAsTargetEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ValuePinInCallOpActEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ValuePinInOpaqueActEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ValuePinInSendObjActAsReqEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ValuePinInSendObjActAsTargetEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ValuePinInSendSigActAsTargetEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ValuePinInSendSigActEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ValueSpecificationActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.policies.ActivityDiagramChangeStereotypedShapeEditpolicy;
+import org.eclipse.papyrus.uml.diagram.activity.edit.policies.CallBehaviorActionCanonicalEditPolicy;
+import org.eclipse.papyrus.uml.diagram.activity.edit.policies.CallBehaviorActionItemSemanticEditPolicy;
+import org.eclipse.papyrus.uml.diagram.activity.edit.policies.CreateActionLocalConditionEditPolicy;
+import org.eclipse.papyrus.uml.diagram.activity.edit.policies.CustomDiagramDragDropEditPolicy;
+import org.eclipse.papyrus.uml.diagram.activity.edit.policies.DeleteActionViewEditPolicy;
+import org.eclipse.papyrus.uml.diagram.activity.edit.policies.OpenDiagramEditPolicy;
+import org.eclipse.papyrus.uml.diagram.activity.figures.CallBehaviorActionFigure;
+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.NamedElementEditPart;
+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.ChangeStereotypedShapeEditPolicy;
+import org.eclipse.papyrus.uml.diagram.common.editpolicies.PapyrusCreationEditPolicy;
+import org.eclipse.papyrus.uml.diagram.common.helper.PreferenceInitializerForElementHelper;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.Activator;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.commands.CreateSnapshotForInteractionFromRefreshCommand;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.figures.InteractionWithSnapshotFigure;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.utils.CallBehaviorUtil;
+import org.eclipse.papyrus.uml.diagram.timing.custom.edit.commands.RefreshCommandForUndo;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.uml2.uml.Activity;
+import org.eclipse.uml2.uml.CallBehaviorAction;
+import org.eclipse.uml2.uml.UMLPackage;
+
+
+public class CallBehaviorActionAsInteractionEditPart extends NamedElementEditPart {
+
+ public static final int VISUAL_ID = 5000;
+
+ public CallBehaviorActionAsInteractionEditPart(final View view) {
+ super(view);
+ // TODO Auto-generated constructor stub
+ }
+
+ /**
+ * @generated
+ */
+ protected IFigure contentPane;
+
+ /**
+ * @generated
+ */
+ protected IFigure primaryShape;
+
+ /**
+ * @generated
+ */
+ @Override
+ protected void createDefaultEditPolicies() {
+ super.createDefaultEditPolicies();
+ installEditPolicy(EditPolicyRoles.DRAG_DROP_ROLE, new DragDropEditPolicy());
+ installEditPolicy(EditPolicyRoles.CREATION_ROLE, new PapyrusCreationEditPolicy());
+ installEditPolicy(EditPolicyRoles.SEMANTIC_ROLE, new CallBehaviorActionItemSemanticEditPolicy());
+ //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.CallBehaviorActionCanonicalEditPolicy());
+ installEditPolicy(EditPolicy.LAYOUT_ROLE, createLayoutEditPolicy());
+ installEditPolicy(EditPolicyRoles.OPEN_ROLE, new OpenDiagramEditPolicy());
+ installEditPolicy(RequestConstants.REQ_CREATE, new CreateActionLocalConditionEditPolicy());
+ installEditPolicy(RequestConstants.REQ_DELETE, new DeleteActionViewEditPolicy());
+ installEditPolicy(EditPolicyRoles.CANONICAL_ROLE, new CallBehaviorActionCanonicalEditPolicy());
+ installEditPolicy(AppliedStereotypeLabelDisplayEditPolicy.STEREOTYPE_LABEL_POLICY, new AppliedStereotypeNodeLabelDisplayEditPolicy());
+ installEditPolicy(ChangeStereotypedShapeEditPolicy.CHANGE_SHAPE_POLICY, new ActivityDiagramChangeStereotypedShapeEditpolicy());
+ installEditPolicy(EditPolicyRoles.DRAG_DROP_ROLE, new CustomDiagramDragDropEditPolicy());
+ // 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
+ **/
+ @Override
+ protected void handleNotificationEvent(final Notification event) {
+ super.handleNotificationEvent(event);
+ //Add/Remove the RakeFigure when an Activity is selected as behavior or deselected
+ if(resolveSemanticElement() != null) {
+ if(resolveSemanticElement() instanceof CallBehaviorAction && resolveSemanticElement().equals(event.getNotifier()) && event.getFeature().equals(UMLPackage.eINSTANCE.getCallBehaviorAction_Behavior())) {
+ final CallBehaviorAction action = (CallBehaviorAction)resolveSemanticElement();
+ if(action.getBehavior() instanceof Activity) {
+ getPrimaryShape().displayRake(true);
+ } else {
+ getPrimaryShape().displayRake(false);
+ };
+ refreshVisuals();
+ }
+ }
+ }
+
+ /**
+ * @generated
+ */
+ protected LayoutEditPolicy createLayoutEditPolicy() {
+ final org.eclipse.gmf.runtime.diagram.ui.editpolicies.LayoutEditPolicy lep = new org.eclipse.gmf.runtime.diagram.ui.editpolicies.LayoutEditPolicy() {
+
+ @Override
+ protected EditPolicy createChildEditPolicy(final EditPart child) {
+ final View childView = (View)child.getModel();
+ switch(UMLVisualIDRegistry.getVisualID(childView)) {
+ case ValuePinInCallBeActEditPart.VISUAL_ID:
+ case ActionInputPinInCallBeActEditPart.VISUAL_ID:
+ case InputPinInCallBeActEditPart.VISUAL_ID:
+ case OutputPinInCallBeActEditPart.VISUAL_ID:
+ return new BorderItemResizableEditPolicy();
+ }
+ EditPolicy result = child.getEditPolicy(EditPolicy.PRIMARY_DRAG_ROLE);
+ if(result == null) {
+ result = new NonResizableEditPolicy();
+ }
+ return result;
+ }
+
+ @Override
+ protected Command getMoveChildrenCommand(final Request request) {
+ return null;
+ }
+
+ @Override
+ protected Command getCreateCommand(final CreateRequest request) {
+ return null;
+ }
+ };
+ return lep;
+ }
+
+ /**
+ * @generated
+ */
+ protected IFigure createNodeShape() {
+ return primaryShape = new InteractionWithSnapshotFigure();
+ }
+
+ /**
+ * @generated
+ */
+ @Override
+ public CallBehaviorActionFigure getPrimaryShape() {
+ return (CallBehaviorActionFigure)primaryShape;
+ }
+
+ /**
+ * @generated
+ */
+ protected boolean addFixedChild(final EditPart childEditPart) {
+
+ return false;
+ }
+
+ /**
+ * @generated
+ */
+ protected boolean removeFixedChild(final EditPart childEditPart) {
+
+ return false;
+ }
+
+ /**
+ * @generated
+ */
+ @Override
+ protected void addChildVisual(final EditPart childEditPart, final int index) {
+ if(addFixedChild(childEditPart)) {
+ return;
+ }
+ super.addChildVisual(childEditPart, -1);
+ }
+
+ /**
+ * @generated
+ */
+ @Override
+ protected void removeChildVisual(final EditPart childEditPart) {
+ if(removeFixedChild(childEditPart)) {
+ return;
+ }
+ super.removeChildVisual(childEditPart);
+ }
+
+ /**
+ * @generated
+ */
+ @Override
+ protected IFigure getContentPaneFor(final IGraphicalEditPart editPart) {
+ if(editPart instanceof IBorderItemEditPart) {
+ return getBorderedFigure().getBorderItemContainer();
+ }
+ return getContentPane();
+ }
+
+ /**
+ * @generated
+ */
+ protected NodeFigure createNodePlate() {
+ final String prefElementId = "CallBehaviorAction";
+ final IPreferenceStore store = UMLDiagramEditorPlugin.getInstance().getPreferenceStore();
+ final String preferenceConstantWitdh = PreferenceInitializerForElementHelper.getpreferenceKey(getNotationView(), prefElementId, PreferenceConstantHelper.WIDTH);
+ final String preferenceConstantHeight = PreferenceInitializerForElementHelper.getpreferenceKey(getNotationView(), prefElementId, PreferenceConstantHelper.HEIGHT);
+ final 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
+ */
+ @Override
+ protected NodeFigure createMainFigure() {
+ final NodeFigure figure = createNodePlate();
+ figure.setLayoutManager(new StackLayout());
+ final IFigure shape = createNodeShape();
+ figure.add(shape);
+ contentPane = setupContentPane(shape);
+ return figure;
+ }
+
+ /**
+ * Refresh the children parts, including the rake if necessary
+ *
+ * @see org.eclipse.gef.editparts.AbstractEditPart#refreshChildren()
+ * @generated NOT
+ */
+ @Override
+ protected void refreshChildren() {
+ super.refreshChildren();
+ // add the rake if behavior is an activity
+ if(resolveSemanticElement() instanceof CallBehaviorAction) {
+ final CallBehaviorAction action = (CallBehaviorAction)resolveSemanticElement();
+ if(action.getBehavior() instanceof Activity) {
+ getPrimaryShape().displayRake(true);
+ } else {
+ getPrimaryShape().displayRake(false);
+ }
+ }
+ }
+
+ /**
+ * 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(final IFigure nodeShape) {
+ if(nodeShape.getLayoutManager() == null) {
+ final ConstrainedToolbarLayout layout = new ConstrainedToolbarLayout();
+ layout.setSpacing(5);
+ nodeShape.setLayoutManager(layout);
+ }
+ return nodeShape; // use nodeShape itself as contentPane
+ }
+
+ /**
+ * @generated
+ */
+ @Override
+ public IFigure getContentPane() {
+ if(contentPane != null) {
+ return contentPane;
+ }
+ return super.getContentPane();
+ }
+
+ /**
+ * @generated
+ */
+ @Override
+ protected void setForegroundColor(final Color color) {
+ if(primaryShape != null) {
+ primaryShape.setForegroundColor(color);
+ }
+ }
+
+ /**
+ * @generated
+ */
+ @Override
+ protected void setLineWidth(final int width) {
+ if(primaryShape instanceof Shape) {
+ ((Shape)primaryShape).setLineWidth(width);
+ }
+ }
+
+ /**
+ * @generated
+ */
+ @Override
+ protected void setLineType(final int style) {
+ if(primaryShape instanceof Shape) {
+ ((Shape)primaryShape).setLineStyle(style);
+ }
+ }
+
+ /**
+ * @generated
+ */
+ @Override
+ public EditPart getPrimaryChildEditPart() {
+ return getChildBySemanticHint(UMLVisualIDRegistry.getType(CallBehaviorActionNameEditPart.VISUAL_ID));
+ }
+
+ /**
+ * @generated
+ */
+ public List<IElementType> getMARelTypesOnSource() {
+ final ArrayList<IElementType> types = new ArrayList<IElementType>(2);
+ types.add(UMLElementTypes.ControlFlow_4004);
+ return types;
+ }
+
+ /**
+ * @generated
+ */
+ public List<IElementType> getMARelTypesOnSourceAndTarget(final IGraphicalEditPart targetEditPart) {
+ final LinkedList<IElementType> types = new LinkedList<IElementType>();
+
+ if(targetEditPart instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.CallBehaviorActionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ if(targetEditPart instanceof CallBehaviorActionAsInteractionEditPart) {
+ types.add(UMLElementTypes.ControlFlow_4004);
+ }
+ 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 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 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);
+ }
+ return types;
+ }
+
+ /**
+ * @generated
+ */
+ public List<IElementType> getMATypesForTarget(final IElementType relationshipType) {
+ final LinkedList<IElementType> types = new LinkedList<IElementType>();
+ 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);
+ types.add(org.eclipse.papyrus.uml.diagram.interactionoverview.provider.UMLElementTypes.CallBehaviorAction_5000);
+ }
+ return types;
+ }
+
+ /**
+ * @generated
+ */
+ public List<IElementType> getMARelTypesOnTarget() {
+ final ArrayList<IElementType> types = new ArrayList<IElementType>(3);
+ types.add(UMLElementTypes.ControlFlow_4004);
+ types.add(UMLElementTypes.CommentAnnotatedElement_4006);
+ types.add(UMLElementTypes.ConstraintConstrainedElement_4007);
+ return types;
+ }
+
+ /**
+ * @generated
+ */
+ public List<IElementType> getMATypesForSource(final IElementType relationshipType) {
+ final LinkedList<IElementType> types = new LinkedList<IElementType>();
+ 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);
+ types.add(org.eclipse.papyrus.uml.diagram.interactionoverview.provider.UMLElementTypes.CallBehaviorAction_5000);
+ } 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(final EStructuralFeature feature) {
+ final 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 = PreferenceConstantHelper.getElementConstant("CallBehaviorAction", PreferenceConstantHelper.COLOR_LINE);
+ } else if(feature == NotationPackage.eINSTANCE.getFontStyle_FontColor()) {
+ prefColor = PreferenceConstantHelper.getElementConstant("CallBehaviorAction", PreferenceConstantHelper.COLOR_FONT);
+ } else if(feature == NotationPackage.eINSTANCE.getFillStyle_FillColor()) {
+ prefColor = PreferenceConstantHelper.getElementConstant("CallBehaviorAction", PreferenceConstantHelper.COLOR_FILL);
+ }
+ result = FigureUtilities.RGBToInteger(PreferenceConverter.getColor(preferenceStore, prefColor));
+ } else if(feature == NotationPackage.eINSTANCE.getFillStyle_Transparency() || feature == NotationPackage.eINSTANCE.getFillStyle_Gradient()) {
+ final String prefGradient = PreferenceConstantHelper.getElementConstant("CallBehaviorAction", PreferenceConstantHelper.COLOR_GRADIENT);
+ final 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;
+ }
+
+ @Override
+ public Command getCommand(final Request _request) {
+ // TODO Auto-generated method stub
+ if(_request instanceof ChangeBoundsRequest) {
+ final ChangeBoundsRequest request = (ChangeBoundsRequest)_request;
+ final CompoundCommand compoundCommand = new CompoundCommand();
+ compoundCommand.add(new RefreshCommandForUndo(this));
+ compoundCommand.add(new Command() {
+
+ @Override
+ public void execute() {
+ final Rectangle newBound = request.getTransformedRectangle(primaryShape.getBounds());
+ ((InteractionWithSnapshotFigure)primaryShape).updateSnapshot(new Rectangle(newBound.x, newBound.y, newBound.width, newBound.height - 15));
+ }
+ });
+ compoundCommand.add(super.getCommand(request));
+
+ return compoundCommand;
+ }
+ return super.getCommand(_request);
+ }
+
+ @Override
+ public void refresh() {
+ super.refresh();
+ if(((InteractionWithSnapshotFigure)primaryShape).getImageFigure() != null && isValidFromRefresh()) {
+ if(((InteractionWithSnapshotFigure)primaryShape).getImageFigure().getImage() == null) {
+
+ try {
+
+ final CreateSnapshotForInteractionFromRefreshCommand command = CreateSnapshotForInteractionFromRefreshCommand.create((View)getModel(), (GraphicalEditPart)getParent());
+ //use to avoid to put it in the command stack
+ final Map<String, Boolean> options = new HashMap<String, Boolean>();
+ options.put(Transaction.OPTION_UNPROTECTED, Boolean.TRUE);
+ final InternalTransactionalEditingDomain editingDomain = (InternalTransactionalEditingDomain)getEditingDomain();
+ try {
+ if(editingDomain.getActiveTransaction() == null) {
+ //Should not happen
+ final InternalTransaction transaction = editingDomain.startTransaction(false, options);
+ command.execute(null, null);
+ transaction.commit();
+ } else {
+ final InternalTransaction activeTransaction = editingDomain.getActiveTransaction();
+ if(activeTransaction.isReadOnly()) {
+ editingDomain.deactivate(activeTransaction);
+ try {
+ final InternalTransaction it = editingDomain.startTransaction(false, options);
+ command.execute(null, null);
+ it.commit();
+ } finally {
+ editingDomain.activate(activeTransaction);
+ }
+ } else {
+ command.execute(null, null);
+ }
+ }
+
+ final InternalTransaction it = ((InternalTransactionalEditingDomain)getEditingDomain()).startTransaction(false, options);
+ command.execute(null, null);
+ it.commit();
+ } catch (final Exception e) {
+ Activator.log.error(e);
+ }
+
+ } catch (final Exception e) {
+ Activator.log.error(e);
+ }
+ }
+ if(!((InteractionWithSnapshotFigure)primaryShape).isImageSizeFitsImageFigure()) {
+
+ final Rectangle bounds = new Rectangle(0, 0, primaryShape.getBounds().width, primaryShape.getBounds().height - 15);
+ ((InteractionWithSnapshotFigure)primaryShape).updateSnapshot(bounds);
+ }
+ }
+ }
+
+ private boolean isValidFromRefresh() {
+ final View callBehaviorActionView = (View)getModel();
+ return CallBehaviorUtil.getDiagramLinked(callBehaviorActionView) != null && !CallBehaviorUtil.getDiagramLinked(callBehaviorActionView).equals("");
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CustomActivityEditPartTN.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CustomActivityEditPartTN.java
index 6a505e34481..0727ea7f576 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CustomActivityEditPartTN.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CustomActivityEditPartTN.java
@@ -26,11 +26,4 @@ public class CustomActivityEditPartTN extends ActivityEditPart {
protected IFigure createNodeShape() {
return primaryShape = new ActivityAsInteractionFigure();
}
-
- @Override
- protected void createDefaultEditPolicies() {
- super.createDefaultEditPolicies();
- //removeEditPolicy(EditPolicyRoles.SEMANTIC_ROLE);
- //installEditPolicy(EditPolicyRoles.SEMANTIC_ROLE, new ActivityContentCompartmentItemSemanticEditPolicy());
- }
}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CustomInteractionUseEditPartCN.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CustomInteractionUseEditPartCN.java
index 09b82b73bf0..a1600257e3f 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CustomInteractionUseEditPartCN.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CustomInteractionUseEditPartCN.java
@@ -15,7 +15,6 @@ import org.eclipse.gmf.runtime.notation.View;
import org.eclipse.papyrus.uml.diagram.activity.edit.parts.CallBehaviorActionEditPart;
import org.eclipse.papyrus.uml.diagram.interactionoverview.figures.InteractionUseFigure;
-
public class CustomInteractionUseEditPartCN extends CallBehaviorActionEditPart {
public CustomInteractionUseEditPartCN(final View view) {
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CustomInteractionUseNameEditPart.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CustomInteractionUseNameEditPart.java
index 16971211eaa..55f018b52f6 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CustomInteractionUseNameEditPart.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CustomInteractionUseNameEditPart.java
@@ -17,7 +17,6 @@ import org.eclipse.papyrus.uml.diagram.activity.part.UMLVisualIDRegistry;
import org.eclipse.papyrus.uml.diagram.activity.providers.UMLElementTypes;
import org.eclipse.papyrus.uml.diagram.activity.providers.UMLParserProvider;
-
public class CustomInteractionUseNameEditPart extends CallBehaviorActionNameEditPart {
/**
@@ -38,7 +37,6 @@ public class CustomInteractionUseNameEditPart extends CallBehaviorActionNameEdit
public CustomInteractionUseNameEditPart(final View view) {
super(view);
- // TODO Auto-generated constructor stub
}
}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CustomUMLInteractionOverviewEditPartFactory.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CustomUMLInteractionOverviewEditPartFactory.java
index 3d4403391bd..39dc400c178 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CustomUMLInteractionOverviewEditPartFactory.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/part/CustomUMLInteractionOverviewEditPartFactory.java
@@ -23,18 +23,29 @@ public class CustomUMLInteractionOverviewEditPartFactory extends CustomUMLEditPa
public EditPart createEditPart(final EditPart context, final Object model) {
if(model instanceof View) {
final View view = (View)model;
- final int visualID = org.eclipse.papyrus.uml.diagram.activity.part.UMLVisualIDRegistry.getVisualID(view);
- switch(visualID) {
- case ActivityEditPart.VISUAL_ID:// 2001
- return new CustomActivityEditPartTN(view);
- case CallBehaviorActionEditPart.VISUAL_ID:// 3008
- return new CustomInteractionUseEditPartCN(view);
- case CallBehaviorActionNameEditPart.VISUAL_ID:
- return new CustomInteractionUseNameEditPart(view);// 5004
- default:
- // when adding cases to this switch, also add the corresponding
- // IDs in the extension
- // org.eclipse.gmf.runtime.diagram.ui.editpartProviders
+ int visualID = org.eclipse.papyrus.uml.diagram.activity.part.UMLVisualIDRegistry.getVisualID(view);
+ if(visualID != -1) {
+ switch(visualID) {
+ case ActivityEditPart.VISUAL_ID:// 2001
+ return new CustomActivityEditPartTN(view);
+ case CallBehaviorActionEditPart.VISUAL_ID:// 3008
+ return new CustomInteractionUseEditPartCN(view);
+ case CallBehaviorActionNameEditPart.VISUAL_ID:
+ return new CustomInteractionUseNameEditPart(view);// 5004
+ case CallBehaviorActionAsInteractionEditPart.VISUAL_ID:
+ return new CallBehaviorActionAsInteractionEditPart(view);//5000
+ default:
+ // when adding cases to this switch, also add the corresponding
+ // IDs in the extension
+ // org.eclipse.gmf.runtime.diagram.ui.editpartProviders
+ }
+ } else {
+ visualID = org.eclipse.papyrus.uml.diagram.activity.part.UMLVisualIDRegistry.getVisualID(view);
+ switch(visualID) {
+ case CallBehaviorActionAsInteractionEditPart.VISUAL_ID:
+ return new CallBehaviorActionAsInteractionEditPart(view);//5000
+ default:
+ }
}
}
return super.createEditPart(context, model);
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/ActivityContentCompartmentCreationEditPolicy.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/ActivityContentCompartmentCreationEditPolicy.java
new file mode 100644
index 00000000000..2c81b12abda
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/ActivityContentCompartmentCreationEditPolicy.java
@@ -0,0 +1,58 @@
+/*****************************************************************************
+ * 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
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policies;
+
+import java.util.List;
+
+import org.eclipse.gef.commands.Command;
+import org.eclipse.gef.commands.CompoundCommand;
+import org.eclipse.gmf.runtime.diagram.ui.commands.ICommandProxy;
+import org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPart;
+import org.eclipse.gmf.runtime.diagram.ui.requests.CreateViewAndElementRequest;
+import org.eclipse.gmf.runtime.diagram.ui.requests.CreateViewRequest;
+import org.eclipse.gmf.runtime.diagram.ui.requests.CreateViewRequest.ViewDescriptor;
+import org.eclipse.papyrus.uml.diagram.common.editpolicies.PapyrusCreationEditPolicy;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.commands.CreateSnapshotForInteractionFromViewDescriptorCommand;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.part.CallBehaviorActionAsInteractionEditPart;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.part.Messages;
+import org.eclipse.papyrus.uml.diagram.timing.custom.edit.commands.RefreshCommandForDo;
+
+
+public class ActivityContentCompartmentCreationEditPolicy extends PapyrusCreationEditPolicy {
+
+
+ @Override
+ protected Command getCreateCommand(final CreateViewRequest request) {
+ final ICommandProxy superCommand = (ICommandProxy)super.getCreateCommand(request);
+ final List<? extends ViewDescriptor> viewDescriptors = request.getViewDescriptors();
+ if(request instanceof CreateViewAndElementRequest && viewDescriptors.size() == 1) {
+ final String semanticHint = viewDescriptors.get(0).getSemanticHint();
+ if(Integer.toString(CallBehaviorActionAsInteractionEditPart.VISUAL_ID).equals(semanticHint)) {
+ return getCreateCallBehaviorActionAsInteractionCommand(request, superCommand);
+ }
+ } else if(request instanceof CreateViewRequest && viewDescriptors.size() == 1) {
+ final String semanticHint = viewDescriptors.get(0).getSemanticHint();
+ if(Integer.toString(CallBehaviorActionAsInteractionEditPart.VISUAL_ID).equals(semanticHint)) {
+ return getCreateCallBehaviorActionAsInteractionCommand(request, superCommand);
+ }
+ }
+ return superCommand;
+ }
+
+ protected Command getCreateCallBehaviorActionAsInteractionCommand(final CreateViewRequest request, final ICommandProxy superCommand) {
+ final CompoundCommand compoundCommand = new CompoundCommand(Messages.ActivityContentCompartmentCreationEditPolicy_CreateCallBehaviorActionAsInteractionCommand);
+ compoundCommand.add(superCommand);
+ compoundCommand.add(new ICommandProxy(CreateSnapshotForInteractionFromViewDescriptorCommand.create(superCommand.getICommand(), (GraphicalEditPart)getHost())));
+ compoundCommand.add(new RefreshCommandForDo((org.eclipse.gef.GraphicalEditPart)getHost()));
+ return compoundCommand;
+ }
+
+}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/ActivityContentCompartmentItemSemanticEditPolicy.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/ActivityContentCompartmentItemSemanticEditPolicy.java
index 74e6b550d8b..7bbbead7c35 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/ActivityContentCompartmentItemSemanticEditPolicy.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/ActivityContentCompartmentItemSemanticEditPolicy.java
@@ -10,7 +10,9 @@
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policies;
+import org.eclipse.gef.GraphicalEditPart;
import org.eclipse.gef.commands.Command;
+import org.eclipse.gef.commands.CompoundCommand;
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;
@@ -18,10 +20,11 @@ import org.eclipse.papyrus.infra.extendedtypes.util.ElementTypeUtils;
import org.eclipse.papyrus.uml.diagram.activity.edit.policies.ActivityCNContentCompartmentItemSemanticEditPolicy;
import org.eclipse.papyrus.uml.diagram.activity.providers.UMLElementTypes;
import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.commands.CallBehaviorActionAsInteractionUseCreateCommand;
-
+import org.eclipse.papyrus.uml.diagram.timing.custom.edit.commands.RefreshCommandForDo;
public class ActivityContentCompartmentItemSemanticEditPolicy extends ActivityCNContentCompartmentItemSemanticEditPolicy {
+ @Override
protected Command getCreateCommand(final CreateElementRequest req) {
final IElementType requestElementType = req.getElementType();
if(requestElementType == null) {
@@ -34,7 +37,8 @@ public class ActivityContentCompartmentItemSemanticEditPolicy extends ActivityCN
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.
+ // 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;
}
@@ -45,6 +49,15 @@ public class ActivityContentCompartmentItemSemanticEditPolicy extends ActivityCN
}
return getGEFWrapper(new CallBehaviorActionAsInteractionUseCreateCommand(req));
}
+ if(org.eclipse.papyrus.uml.diagram.interactionoverview.provider.UMLElementTypes.CallBehaviorAction_5000 == baseElementType) {
+ if(isExtendedType) {
+ return getExtendedTypeCreationCommand(req, (IExtendedHintedElementType)requestElementType);
+ }
+ final CompoundCommand compoundCommand = new CompoundCommand();
+ compoundCommand.add(getGEFWrapper(getSemanticCreationCommand(req)));
+ compoundCommand.add(new RefreshCommandForDo((GraphicalEditPart)getHost()));
+ return compoundCommand;
+ }
return super.getCreateCommand(req);
}
}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomActivityCNContentCompartmentItemSemanticEditPolicy.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomActivityCNContentCompartmentItemSemanticEditPolicy.java
index f14ed0987a1..2af65dd1490 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomActivityCNContentCompartmentItemSemanticEditPolicy.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomActivityCNContentCompartmentItemSemanticEditPolicy.java
@@ -19,10 +19,9 @@ import org.eclipse.papyrus.uml.diagram.activity.edit.policies.ActivityCNContentC
import org.eclipse.papyrus.uml.diagram.activity.providers.UMLElementTypes;
import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.commands.CallBehaviorActionAsInteractionUseCreateCommand;
-
public class CustomActivityCNContentCompartmentItemSemanticEditPolicy extends ActivityCNContentCompartmentItemSemanticEditPolicy {
-
+ @Override
protected Command getCreateCommand(final CreateElementRequest req) {
final IElementType requestElementType = req.getElementType();
if(requestElementType == null) {
@@ -35,7 +34,8 @@ public class CustomActivityCNContentCompartmentItemSemanticEditPolicy extends Ac
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.
+ // 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;
}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy.java
index ec1deec5fd3..88fe5b1da8c 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy.java
@@ -19,9 +19,9 @@ import org.eclipse.papyrus.uml.diagram.activity.edit.policies.ActivityPartitionA
import org.eclipse.papyrus.uml.diagram.activity.providers.UMLElementTypes;
import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.commands.CallBehaviorActionAsInteractionUseCreateCommand;
-
public class CustomActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy extends ActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy {
+ @Override
protected Command getCreateCommand(final CreateElementRequest req) {
final IElementType requestElementType = req.getElementType();
if(requestElementType == null) {
@@ -34,7 +34,8 @@ public class CustomActivityPartitionActivityPartitionContentCompartmentItemSeman
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.
+ // 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;
}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
index 8407692617b..8a8a76353b5 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
@@ -19,9 +19,9 @@ import org.eclipse.papyrus.uml.diagram.activity.edit.policies.ConditionalNodeStr
import org.eclipse.papyrus.uml.diagram.activity.providers.UMLElementTypes;
import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.commands.CallBehaviorActionAsInteractionUseCreateCommand;
-
public class CustomConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy extends ConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy {
+ @Override
protected Command getCreateCommand(final CreateElementRequest req) {
final IElementType requestElementType = req.getElementType();
if(requestElementType == null) {
@@ -34,7 +34,8 @@ public class CustomConditionalNodeStructuredActivityNodeContentCompartmentItemSe
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.
+ // 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;
}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
index 9c36e9eb909..054fba2a98e 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
@@ -19,9 +19,9 @@ import org.eclipse.papyrus.uml.diagram.activity.edit.policies.ExpansionRegionStr
import org.eclipse.papyrus.uml.diagram.activity.providers.UMLElementTypes;
import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.commands.CallBehaviorActionAsInteractionUseCreateCommand;
-
public class CustomExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy extends ExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy {
+ @Override
protected Command getCreateCommand(final CreateElementRequest req) {
final IElementType requestElementType = req.getElementType();
if(requestElementType == null) {
@@ -34,7 +34,8 @@ public class CustomExpansionRegionStructuredActivityNodeContentCompartmentItemSe
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.
+ // 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;
}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomInteractionOverviewDiagramCreationEditPolicy.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomInteractionOverviewDiagramCreationEditPolicy.java
index f1e907954dd..6c6207e2920 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomInteractionOverviewDiagramCreationEditPolicy.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomInteractionOverviewDiagramCreationEditPolicy.java
@@ -12,8 +12,6 @@ package org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policies;
import java.util.List;
-import org.eclipse.emf.transaction.TransactionalEditingDomain;
-import org.eclipse.emf.transaction.util.TransactionUtil;
import org.eclipse.gef.commands.Command;
import org.eclipse.gef.commands.CompoundCommand;
import org.eclipse.gmf.runtime.diagram.ui.requests.CreateViewAndElementRequest;
@@ -35,7 +33,6 @@ public class CustomInteractionOverviewDiagramCreationEditPolicy extends PapyrusC
if(request instanceof CreateViewAndElementRequest && viewDescriptors.size() == 1) {
final String semanticHint = viewDescriptors.get(0).getSemanticHint();
if(Integer.toString(ActivityEditPart.VISUAL_ID).equals(semanticHint)) {
- final TransactionalEditingDomain editingDomain = TransactionUtil.getEditingDomain(getHost().getModel());
final CompoundCommand compoundCommand = new CompoundCommand(Messages.CustomInteractionOverviewDiagramCreationEditPolicy_CreateActivity);
compoundCommand.add(superCommand);
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomInteractionOverviewDiagramDragAndDropEditPolicy.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomInteractionOverviewDiagramDragAndDropEditPolicy.java
new file mode 100644
index 00000000000..6a9a401ea6b
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomInteractionOverviewDiagramDragAndDropEditPolicy.java
@@ -0,0 +1,24 @@
+/*****************************************************************************
+ * 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
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policies;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.uml.diagram.activity.edit.policies.CustomDiagramDragDropEditPolicy;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.part.UMLVisualIDRegistry;
+
+public class CustomInteractionOverviewDiagramDragAndDropEditPolicy extends CustomDiagramDragDropEditPolicy {
+
+ @Override
+ public int getNodeVisualID(final View containerView, final EObject domainElement) {
+ return UMLVisualIDRegistry.customGetNodeVisualID(containerView, domainElement);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomInterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomInterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy.java
index 7aaa98d2334..2ced1c161f1 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomInterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomInterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy.java
@@ -19,10 +19,9 @@ import org.eclipse.papyrus.uml.diagram.activity.edit.policies.InterruptibleActiv
import org.eclipse.papyrus.uml.diagram.activity.providers.UMLElementTypes;
import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.commands.CallBehaviorActionAsInteractionUseCreateCommand;
-
public class CustomInterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy extends InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy {
-
+ @Override
protected Command getCreateCommand(final CreateElementRequest req) {
final IElementType requestElementType = req.getElementType();
if(requestElementType == null) {
@@ -35,7 +34,8 @@ public class CustomInterruptibleActivityRegionInterruptibleActivityRegionContent
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.
+ // 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;
}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomLoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomLoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
index f1285f80ff8..36f77fec3bc 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomLoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomLoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
@@ -19,9 +19,9 @@ import org.eclipse.papyrus.uml.diagram.activity.edit.policies.LoopNodeStructured
import org.eclipse.papyrus.uml.diagram.activity.providers.UMLElementTypes;
import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.commands.CallBehaviorActionAsInteractionUseCreateCommand;
-
public class CustomLoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy extends LoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy {
+ @Override
protected Command getCreateCommand(final CreateElementRequest req) {
final IElementType requestElementType = req.getElementType();
if(requestElementType == null) {
@@ -34,7 +34,8 @@ public class CustomLoopNodeStructuredActivityNodeContentCompartmentItemSemanticE
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.
+ // 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;
}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomSequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomSequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
index 737d50b344c..bdd8cd75ce0 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomSequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomSequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
@@ -19,9 +19,9 @@ import org.eclipse.papyrus.uml.diagram.activity.edit.policies.SequenceNodeStruct
import org.eclipse.papyrus.uml.diagram.activity.providers.UMLElementTypes;
import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.commands.CallBehaviorActionAsInteractionUseCreateCommand;
-
public class CustomSequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy extends SequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy {
+ @Override
protected Command getCreateCommand(final CreateElementRequest req) {
final IElementType requestElementType = req.getElementType();
if(requestElementType == null) {
@@ -34,7 +34,8 @@ public class CustomSequenceNodeStructuredActivityNodeContentCompartmentItemSeman
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.
+ // 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;
}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomStructuredActivityNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomStructuredActivityNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
index 172cf6ad955..8bd32a553d9 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomStructuredActivityNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/edit/policies/CustomStructuredActivityNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy.java
@@ -19,9 +19,9 @@ import org.eclipse.papyrus.uml.diagram.activity.edit.policies.StructuredActivity
import org.eclipse.papyrus.uml.diagram.activity.providers.UMLElementTypes;
import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.commands.CallBehaviorActionAsInteractionUseCreateCommand;
-
public class CustomStructuredActivityNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy extends StructuredActivityNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy {
+ @Override
protected Command getCreateCommand(final CreateElementRequest req) {
final IElementType requestElementType = req.getElementType();
if(requestElementType == null) {
@@ -34,7 +34,8 @@ public class CustomStructuredActivityNodeStructuredActivityNodeContentCompartmen
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.
+ // 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;
}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/figures/ActivityAsInteractionFigure.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/figures/ActivityAsInteractionFigure.java
index a339a3f9aac..96745eaa1d4 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/figures/ActivityAsInteractionFigure.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/figures/ActivityAsInteractionFigure.java
@@ -42,7 +42,6 @@ public class ActivityAsInteractionFigure extends ActivityFigure {
protected void createContents() {
add(createInteractionFigureHeader());
add(createContentPane());
- final int childrenSize = getChildren().size();
setLayoutManager(new ActivityLayoutManager());
}
@@ -189,27 +188,6 @@ public class ActivityAsInteractionFigure extends ActivityFigure {
pscontainer.y = getPostconditionFigure().getBounds().y + getPostconditionFigure().getBounds().height + GAP_Y;
getStereotypePropertiesContent().setBounds(pscontainer);
}
- // // place parameter
- // // replace compartment stereotype properties
- // if(getStereotypePropertiesContent() != null) {
- // Rectangle paramBoundcontainer =
- // getParameterFigure().getBounds().getCopy();
- // paramBoundcontainer.y =
- // getStereotypePropertiesContent().getBounds().getBottomLeft().y;
- // getParameterFigure().setBounds(paramBoundcontainer);
- // if(getParameterFigure().getChildren().size() > 0) {
- // ((IFigure)interactionContentPane.getChildren().get(0)).setBounds(paramBoundcontainer);
- // }
- // } else {
- // Rectangle paramBoundcontainer =
- // getParameterFigure().getBounds().getCopy();
- // paramBoundcontainer.y =
- // getNameLabel().getBounds().getBottomLeft().y;
- // getParameterFigure().setBounds(paramBoundcontainer);
- // if(getParameterFigure().getChildren().size() > 0) {
- // ((IFigure)interactionContentPane.getChildren().get(0)).setBounds(paramBoundcontainer);;
- // }
- // }
}
}
}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/figures/InteractionUseFigure.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/figures/InteractionUseFigure.java
index e724f108111..9ad18473203 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/figures/InteractionUseFigure.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/figures/InteractionUseFigure.java
@@ -27,17 +27,17 @@ import org.eclipse.papyrus.uml.diagram.common.draw2d.CenterLayout;
import org.eclipse.papyrus.uml.diagram.common.draw2d.InteractionFigure;
import org.eclipse.papyrus.uml.diagram.common.draw2d.LeftToolbarLayout;
-
public class InteractionUseFigure extends CallBehaviorActionFigure {
+ protected static String HEADER_NAME = "Ref";
- private WrappingLabel interactionHeader;
+ protected WrappingLabel interactionHeader;
- private RectangleFigure interactionLabelContainer;
+ protected RectangleFigure interactionLabelContainer;
- private RectangleFigure interactionContentPane;
+ protected RectangleFigure interactionContentPane;
- private WrappingLabel interactionNameLabel;
+ protected WrappingLabel interactionNameLabel;
public InteractionUseFigure() {
createContents();
@@ -50,7 +50,7 @@ public class InteractionUseFigure extends CallBehaviorActionFigure {
setLayoutManager(new InteractionUseLayoutManager());
}
- private class InteractionUseLayoutManager extends AbstractLayout {
+ protected class InteractionUseLayoutManager extends AbstractLayout {
public void layout(final IFigure container) {
final List childrenList = container.getChildren();
@@ -61,9 +61,7 @@ public class InteractionUseFigure extends CallBehaviorActionFigure {
bound.setSize(((IFigure)childrenList.get(i)).getPreferredSize());
if(i > 0) {
bound.y = ((IFigure)childrenList.get(i - 1)).getBounds().getBottomLeft().y + 1;
- // bound.x = getBounds().x + GAP_X;
} else {
- // bound.x = getBounds().x + GAP_X;
bound.y = getBounds().y;
}
((IFigure)childrenList.get(i)).setBounds(bound);
@@ -74,8 +72,7 @@ public class InteractionUseFigure extends CallBehaviorActionFigure {
@Override
protected Dimension calculatePreferredSize(final IFigure container, final int wHint, final int hHint) {
- // TODO Auto-generated method stub
- return null;
+ return new Dimension(-1, -1);
}
}
@@ -86,7 +83,7 @@ public class InteractionUseFigure extends CallBehaviorActionFigure {
interactionContentPane = new RectangleFigure();
// Margin allow to add message easily
interactionContentPane.setBorder(new MarginBorder(5, 5, 5, 5));
- interactionContentPane.setFill(true);
+ interactionContentPane.setFill(false);
interactionContentPane.setOutline(false);
interactionContentPane.setLayoutManager(new CenterLayout());
interactionContentPane.add(interactionNameLabel);
@@ -105,7 +102,8 @@ public class InteractionUseFigure extends CallBehaviorActionFigure {
return new Dimension(preferredSize.width + 2, preferredSize.height + 2);
}
};
- interactionHeader.setText("Ref");
+
+ interactionHeader.setText(HEADER_NAME);
final InteractionFigure interactionFigure = new InteractionFigure();
interactionFigure.setBorder(new MarginBorder(3, 3, 3, 3));
interactionFigure.setLayoutManager(new LeftToolbarLayout());
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/figures/InteractionWithSnapshotFigure.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/figures/InteractionWithSnapshotFigure.java
new file mode 100644
index 00000000000..fbc9340188d
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/figures/InteractionWithSnapshotFigure.java
@@ -0,0 +1,118 @@
+/*****************************************************************************
+ * 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
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.interactionoverview.figures;
+
+import java.util.List;
+
+import org.eclipse.draw2d.AbstractLayout;
+import org.eclipse.draw2d.IFigure;
+import org.eclipse.draw2d.ImageFigure;
+import org.eclipse.draw2d.geometry.Dimension;
+import org.eclipse.draw2d.geometry.Rectangle;
+import org.eclipse.gmf.runtime.draw2d.ui.figures.WrappingLabel;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.utils.CreateDiagramImage;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.widgets.Display;
+
+
+public class InteractionWithSnapshotFigure extends InteractionUseFigure {
+
+ protected static String HEADER_NAME = "SD";
+
+ protected ImageFigure imageFigure;
+
+ protected Image originalSnapshot;
+
+ protected Image currentSnapshot;
+
+ public InteractionWithSnapshotFigure() {
+ this.corner = 0;
+ originalSnapshot = null;
+ currentSnapshot = null;
+ }
+
+ @Override
+ protected void createContents() {
+ add(createInteractionFigureHeader());
+ add(createImagePane());
+ setLayoutManager(new InteractionLayoutManager());
+ interactionHeader.setText(HEADER_NAME);
+ }
+
+ protected class InteractionLayoutManager extends AbstractLayout {
+
+ public void layout(final IFigure container) {
+ final List childrenList = container.getChildren();
+ for(int i = 0; i < container.getChildren().size(); i++) {
+ final IFigure currentFigure = (IFigure)childrenList.get(i);
+ if(currentFigure.equals(interactionLabelContainer) || currentFigure.equals(imageFigure)) {
+ final Rectangle bound = new Rectangle(((IFigure)childrenList.get(i)).getBounds());
+ bound.setSize(((IFigure)childrenList.get(i)).getPreferredSize());
+ if(i > 0) {
+ bound.y = ((IFigure)childrenList.get(i - 1)).getBounds().getBottomLeft().y + 1;
+ } else {
+ bound.y = getBounds().y;
+ }
+ ((IFigure)childrenList.get(i)).setBounds(bound);
+
+ }
+ }
+
+ }
+
+ @Override
+ protected Dimension calculatePreferredSize(final IFigure container, final int wHint, final int hHint) {
+ return new Dimension(-1, -1);
+ }
+
+ }
+
+ @Override
+ public WrappingLabel getNameLabel() {
+ return interactionHeader;
+ }
+
+ protected IFigure createImagePane() {
+ return imageFigure = new ImageFigure();
+ }
+
+
+ public void setSnapshot(final Image image) {
+ if(image != null) {
+ originalSnapshot = image;
+ currentSnapshot = new Image(Display.getDefault(), image, SWT.IMAGE_COPY);
+ imageFigure.setImage(image);
+ }
+ }
+
+ public void updateSnapshot(final Rectangle newBounds) {
+ if(originalSnapshot != null) {
+ final Image newImage = CreateDiagramImage.resize(originalSnapshot, newBounds.width, newBounds.height);
+ imageFigure.setImage(newImage);
+ currentSnapshot.dispose();
+ currentSnapshot = newImage;
+ }
+ }
+
+ public ImageFigure getImageFigure() {
+ return imageFigure;
+ }
+
+ public boolean isImageSizeFitsImageFigure() {
+ return (isImageFigureHasBound() && getBounds().width == imageFigure.getBounds().height);
+ }
+
+ private boolean isImageFigureHasBound() {
+ return imageFigure.getBounds().height != 0 && imageFigure.getBounds().width != 0;
+ }
+
+}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/parser/CustomCallBehaviorActionParser.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/parser/CustomCallBehaviorActionParser.java
index 91b373b9f4d..dd189b64539 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/parser/CustomCallBehaviorActionParser.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/parser/CustomCallBehaviorActionParser.java
@@ -23,7 +23,6 @@ import org.eclipse.uml2.uml.CallBehaviorAction;
import org.eclipse.uml2.uml.Interaction;
import org.eclipse.uml2.uml.UMLPackage;
-
public class CustomCallBehaviorActionParser extends CallBehaviorActionParser {
public CustomCallBehaviorActionParser() {
@@ -31,10 +30,10 @@ public class CustomCallBehaviorActionParser extends CallBehaviorActionParser {
}
@Override
- public String getPrintString(IAdaptable element, int flags) {
- Object obj = element.getAdapter(EObject.class);
+ public String getPrintString(final IAdaptable element, final int flags) {
+ final Object obj = element.getAdapter(EObject.class);
if(obj instanceof CallBehaviorAction) {
- CallBehaviorAction action = (CallBehaviorAction)obj;
+ final CallBehaviorAction action = (CallBehaviorAction)obj;
String behaviorName = "";
if(action.getBehavior() != null && action.getBehavior().getName() != null) {
behaviorName = action.getBehavior().getName();
@@ -48,10 +47,10 @@ public class CustomCallBehaviorActionParser extends CallBehaviorActionParser {
}
@Override
- public String getEditString(IAdaptable element, int flags) {
- Object obj = element.getAdapter(EObject.class);
+ public String getEditString(final IAdaptable element, final int flags) {
+ final Object obj = element.getAdapter(EObject.class);
if(obj instanceof CallBehaviorAction) {
- CallBehaviorAction action = (CallBehaviorAction)obj;
+ final CallBehaviorAction action = (CallBehaviorAction)obj;
String behaviorName = "";
if(action.getBehavior() != null && action.getBehavior().getName() != null) {
behaviorName = action.getBehavior().getName();
@@ -65,18 +64,18 @@ public class CustomCallBehaviorActionParser extends CallBehaviorActionParser {
}
@Override
- public ICommand getParseCommand(IAdaptable adapter, String newString, int flags) {
+ public ICommand getParseCommand(final IAdaptable adapter, final String newString, final int flags) {
if(newString == null) {
return UnexecutableCommand.INSTANCE;
}
- EObject element = (EObject)adapter.getAdapter(EObject.class);
- TransactionalEditingDomain editingDomain = TransactionUtil.getEditingDomain(element);
+ final EObject element = (EObject)adapter.getAdapter(EObject.class);
+ final TransactionalEditingDomain editingDomain = TransactionUtil.getEditingDomain(element);
if(editingDomain == null) {
return UnexecutableCommand.INSTANCE;
}
- CompositeTransactionalCommand command = new CompositeTransactionalCommand(editingDomain, "Set Values"); //$NON-NLS-1$
+ final CompositeTransactionalCommand command = new CompositeTransactionalCommand(editingDomain, "Set Values"); //$NON-NLS-1$
if(element instanceof CallBehaviorAction) {
- Interaction interactionUse = (Interaction)(((CallBehaviorAction)element).getBehavior());
+ final Interaction interactionUse = (Interaction)(((CallBehaviorAction)element).getBehavior());
command.compose(getModificationCommand(interactionUse, UMLPackage.eINSTANCE.getNamedElement_Name(), newString));
}
return command;
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/part/CustomIODPaletteFactory.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/part/CustomIODPaletteFactory.java
new file mode 100644
index 00000000000..979620958a4
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/part/CustomIODPaletteFactory.java
@@ -0,0 +1,41 @@
+/*****************************************************************************
+ * 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
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.interactionoverview.part;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.gef.Tool;
+import org.eclipse.gmf.runtime.emf.type.core.IElementType;
+import org.eclipse.papyrus.uml.diagram.activity.part.UMLPaletteFactory;
+import org.eclipse.papyrus.uml.diagram.common.service.AspectUnspecifiedTypeCreationTool;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.provider.UMLElementTypes;
+
+
+public class CustomIODPaletteFactory extends UMLPaletteFactory {
+
+ private final static String CREATECALLBEHAVIORACTIONASCREATIONTOOL = "createCallBehaviorActionAsInteractionCreationTool"; //$NON-NLS-1$
+
+ @Override
+ public Tool createTool(final String toolId) {
+ if(toolId.equals(CREATECALLBEHAVIORACTIONASCREATIONTOOL)) {
+ return createCallBehaviorActionAsInteractionCreationTool();
+ }
+ return super.createTool(toolId);
+ }
+
+ private static Tool createCallBehaviorActionAsInteractionCreationTool() {
+ final List<IElementType> types = new ArrayList<IElementType>(1);
+ types.add(UMLElementTypes.CallBehaviorAction_5000);
+ final Tool tool = new AspectUnspecifiedTypeCreationTool(types);
+ return tool;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/part/Messages.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/part/Messages.java
index cf30d2ce85e..fbc994c327b 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/part/Messages.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/part/Messages.java
@@ -12,11 +12,8 @@ package org.eclipse.papyrus.uml.diagram.interactionoverview.part;
import org.eclipse.osgi.util.NLS;
-
public class Messages extends NLS {
- private static final String BUNDLE_NAME = "org.eclipse.papyrus.uml.diagram.interactionoverview.messages"; //$NON-NLS-1$
-
static {
NLS.initializeMessages("messages", Messages.class); //$NON-NLS-1$
}
@@ -37,4 +34,26 @@ public class Messages extends NLS {
public static String CreateCallActionDialog_CreateBehavior;
public static String CreateCallActionDialog_SelectBehavior;
+
+ public static String CallBehaviorActionAsInteractionEditHelperAdvice_ConfigureCreatedInteraction;
+
+ public static String CallBehaviorActionAsInteractionUseEditHelperAdvice_ConfigureCreatedInteraction;
+
+ public static String CreateSnapshotForInteractionFromRefreshCommand_CreateSnapshotForRefresh;
+
+ public static String CreateSnapshotForInteractionFromViewDescriptorCommand_CreateSnapshotForRefresh;
+
+ public static String CreateInteractionUseDialog_InteractionUsePrefix;
+
+ public static String ActivityContentCompartmentCreationEditPolicy_CreateCallBehaviorActionAsInteractionCommand;
+
+ public static String CreateDiagramImage_LifelineDialogTitle;
+
+ public static String CreateDiagramImage_LifelineDialogMessage;
+
+ public static String CreateDiagramImage_MultipleValueSelectorDialog;
+
+ public static String CreateSnapshotForInteractionFromViewDescriptorCommand_DiagramSelectorTitle;
+
+ public static String CreateSnapshotForInteractionFromViewDescriptorCommand_DiagramSelectorMessage;
}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/part/UMLVisualIDRegistry.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/part/UMLVisualIDRegistry.java
index 03ea891d7c4..a126ef2d4cd 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/part/UMLVisualIDRegistry.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/part/UMLVisualIDRegistry.java
@@ -10,9 +10,46 @@
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.interactionoverview.part;
+import org.eclipse.emf.ecore.EObject;
import org.eclipse.gmf.runtime.notation.Diagram;
import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityActivityContentCompartmentEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityActivityParametersCompartmentEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityActivityPostConditionsCompartmentEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityActivityPreConditionsCompartmentEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityDiagramEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityEditPartCN;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityFinalNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityParameterNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityPartitionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.CallBehaviorActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.CommentEditPartCN;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ConditionalNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ConstraintEditPartCN;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ConstraintInActivityAsPostcondEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ConstraintInActivityAsPrecondEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.DecisionNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ExpansionRegionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.FlowFinalNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ForkNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InitialNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InputPinInLoopNodeAsVariableEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InterruptibleActivityRegionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.JoinNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.LoopNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.MergeNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInLoopNodeAsBodyOutputEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInLoopNodeAsLoopVariableEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.OutputPinInLoopNodeAsResultEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.ParameterEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.SequenceNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.StructuredActivityNodeEditPart;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.part.CallBehaviorActionAsInteractionEditPart;
import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.part.InteractionOverviewDiagramEditPart;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.utils.CallBehaviorUtil;
+import org.eclipse.uml2.uml.CallBehaviorAction;
+import org.eclipse.uml2.uml.UMLPackage;
public class UMLVisualIDRegistry extends org.eclipse.papyrus.uml.diagram.activity.part.UMLVisualIDRegistry {
@@ -20,10 +57,13 @@ public class UMLVisualIDRegistry extends org.eclipse.papyrus.uml.diagram.activit
super();
}
- public static boolean canCreateNode(final View containerView, final int nodeVisualID) {
+ public static int customGetNodeVisualID(final View containerView, final EObject domainElement) {
+ if(domainElement == null) {
+ return -1;
+ }
final String containerModelID = org.eclipse.papyrus.uml.diagram.activity.part.UMLVisualIDRegistry.getModelID(containerView);
if(!InteractionOverviewDiagramEditPart.MODEL_ID.equals(containerModelID)) {
- return false;
+ return -1;
}
int containerVisualID;
if(InteractionOverviewDiagramEditPart.MODEL_ID.equals(containerModelID)) {
@@ -32,10 +72,128 @@ public class UMLVisualIDRegistry extends org.eclipse.papyrus.uml.diagram.activit
if(containerView instanceof Diagram) {
containerVisualID = InteractionOverviewDiagramEditPart.VISUAL_ID;
} else {
- return false;
+ return -1;
}
}
+ switch(containerVisualID) {
+ case ActivityDiagramEditPart.VISUAL_ID:
+ if(UMLPackage.eINSTANCE.getActivity().isSuperTypeOf(domainElement.eClass())) {
+ return ActivityEditPart.VISUAL_ID;
+ }
+ break;
+ case ActivityEditPart.VISUAL_ID:
+ if(UMLPackage.eINSTANCE.getActivityParameterNode().isSuperTypeOf(domainElement.eClass())) {
+ return ActivityParameterNodeEditPart.VISUAL_ID;
+ }
+ break;
+ case LoopNodeEditPart.VISUAL_ID:
+ if(UMLPackage.eINSTANCE.getInputPin().isSuperTypeOf(domainElement.eClass())) {
+ return InputPinInLoopNodeAsVariableEditPart.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getOutputPin().isSuperTypeOf(domainElement.eClass())) {
+ return OutputPinInLoopNodeAsResultEditPart.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getOutputPin().isSuperTypeOf(domainElement.eClass())) {
+ return OutputPinInLoopNodeAsBodyOutputEditPart.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getOutputPin().isSuperTypeOf(domainElement.eClass())) {
+ return OutputPinInLoopNodeAsLoopVariableEditPart.VISUAL_ID;
+ }
+ break;
+ case ActivityEditPartCN.VISUAL_ID:
+ if(UMLPackage.eINSTANCE.getActivityParameterNode().isSuperTypeOf(domainElement.eClass())) {
+ return ActivityParameterNodeEditPart.VISUAL_ID;
+ }
+ break;
+ case ActivityActivityParametersCompartmentEditPart.VISUAL_ID:
+ if(UMLPackage.eINSTANCE.getParameter().isSuperTypeOf(domainElement.eClass())) {
+ return ParameterEditPart.VISUAL_ID;
+ }
+ break;
+ case ActivityActivityPreConditionsCompartmentEditPart.VISUAL_ID:
+ if(UMLPackage.eINSTANCE.getConstraint().isSuperTypeOf(domainElement.eClass())) {
+ return ConstraintInActivityAsPrecondEditPart.VISUAL_ID;
+ }
+ break;
+ case ActivityActivityPostConditionsCompartmentEditPart.VISUAL_ID:
+ if(UMLPackage.eINSTANCE.getConstraint().isSuperTypeOf(domainElement.eClass())) {
+ return ConstraintInActivityAsPostcondEditPart.VISUAL_ID;
+ }
+ break;
+ case ActivityActivityContentCompartmentEditPart.VISUAL_ID:
+ if(UMLPackage.eINSTANCE.getInitialNode().isSuperTypeOf(domainElement.eClass())) {
+ return InitialNodeEditPart.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getActivityFinalNode().isSuperTypeOf(domainElement.eClass())) {
+ return ActivityFinalNodeEditPart.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getFlowFinalNode().isSuperTypeOf(domainElement.eClass())) {
+ return FlowFinalNodeEditPart.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getCallBehaviorAction().isSuperTypeOf(domainElement.eClass()) && isInteractionUse_3008(containerView, (CallBehaviorAction)domainElement)) {
+ return CallBehaviorActionEditPart.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getCallBehaviorAction().isSuperTypeOf(domainElement.eClass()) && isInteraction_5000(containerView, (CallBehaviorAction)domainElement)) {
+ return CallBehaviorActionAsInteractionEditPart.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getDecisionNode().isSuperTypeOf(domainElement.eClass())) {
+ return DecisionNodeEditPart.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getMergeNode().isSuperTypeOf(domainElement.eClass())) {
+ return MergeNodeEditPart.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getForkNode().isSuperTypeOf(domainElement.eClass())) {
+ return ForkNodeEditPart.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getJoinNode().isSuperTypeOf(domainElement.eClass())) {
+ return JoinNodeEditPart.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getConditionalNode().isSuperTypeOf(domainElement.eClass())) {
+ return ConditionalNodeEditPart.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getExpansionRegion().isSuperTypeOf(domainElement.eClass())) {
+ return ExpansionRegionEditPart.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getLoopNode().isSuperTypeOf(domainElement.eClass())) {
+ return LoopNodeEditPart.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getSequenceNode().isSuperTypeOf(domainElement.eClass())) {
+ return SequenceNodeEditPart.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getStructuredActivityNode().isSuperTypeOf(domainElement.eClass())) {
+ return StructuredActivityNodeEditPart.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getActivityPartition().isSuperTypeOf(domainElement.eClass())) {
+ return ActivityPartitionEditPart.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getInterruptibleActivityRegion().isSuperTypeOf(domainElement.eClass())) {
+ return InterruptibleActivityRegionEditPart.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getComment().isSuperTypeOf(domainElement.eClass())) {
+ return CommentEditPartCN.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getActivity().isSuperTypeOf(domainElement.eClass())) {
+ return ActivityEditPartCN.VISUAL_ID;
+ }
+ if(UMLPackage.eINSTANCE.getConstraint().isSuperTypeOf(domainElement.eClass())) {
+ return ConstraintEditPartCN.VISUAL_ID;
+ }
+ break;
+ }
+ return -1;
+ }
+
+ private static boolean isInteractionUse_3008(final View containerView, final CallBehaviorAction domainElement) {
+
+ return CallBehaviorUtil.getCallBehaviorType(domainElement) == CallBehaviorUtil.CallBehaviorActionType.use;
+ }
+
+ /**
+ * @generated
+ */
+
+ private static boolean isInteraction_5000(final View containerView, final CallBehaviorAction domainElement) {
- return false;
+ return CallBehaviorUtil.getCallBehaviorType(domainElement) == CallBehaviorUtil.CallBehaviorActionType.snapshot;
}
}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/preferences/IInteractionOverviewPreferenceConstants.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/preferences/IInteractionOverviewPreferenceConstants.java
index 914da2b8904..fbc5f539504 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/preferences/IInteractionOverviewPreferenceConstants.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/preferences/IInteractionOverviewPreferenceConstants.java
@@ -10,11 +10,8 @@
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.interactionoverview.preferences;
-
-
public interface IInteractionOverviewPreferenceConstants {
-
public static final String PREF_NEW_INTERACTION_USE_SELECT_AS_DEFAULT = "org.eclipse.papyrus.uml.diagram.interactionoverview.InteractionUse.CreateDialog.selectAsDefault"; //$NON-NLS-1$
public static final String PREF_NEW_INTERACTION_USE_CREATION_OWNER = "org.eclipse.papyrus.uml.diagram.interactionoverview.InteractionUse.CreateDialog.owner"; //$NON-NLS-1$
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/CustomEditPartProvider.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/CustomEditPartProvider.java
index 4fde324859a..c0e8324ac5b 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/CustomEditPartProvider.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/CustomEditPartProvider.java
@@ -12,7 +12,7 @@ package org.eclipse.papyrus.uml.diagram.interactionoverview.provider;
import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.part.CustomUMLInteractionOverviewEditPartFactory;
-public class CustomEditPartProvider extends InteractionOverviewDiagramEditPartProvider {
+public class CustomEditPartProvider extends InheritedActivityDiagramEditPartProvider {
public CustomEditPartProvider() {
setFactory(new CustomUMLInteractionOverviewEditPartFactory());
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/CustomEditPolicyProvider.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/CustomEditPolicyProvider.java
index de032dd72fd..80588c444a8 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/CustomEditPolicyProvider.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/CustomEditPolicyProvider.java
@@ -24,11 +24,14 @@ import org.eclipse.papyrus.uml.diagram.activity.edit.parts.InterruptibleActivity
import org.eclipse.papyrus.uml.diagram.activity.edit.parts.LoopNodeStructuredActivityNodeContentCompartmentEditPart;
import org.eclipse.papyrus.uml.diagram.activity.edit.parts.SequenceNodeStructuredActivityNodeContentCompartmentEditPart;
import org.eclipse.papyrus.uml.diagram.activity.edit.parts.StructuredActivityNodeStructuredActivityNodeContentCompartmentEditPart;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.part.InteractionOverviewDiagramEditPart;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policies.ActivityContentCompartmentCreationEditPolicy;
import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policies.ActivityContentCompartmentItemSemanticEditPolicy;
import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policies.CustomActivityCNContentCompartmentItemSemanticEditPolicy;
import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policies.CustomActivityPartitionActivityPartitionContentCompartmentItemSemanticEditPolicy;
import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policies.CustomConditionalNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy;
import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policies.CustomExpansionRegionStructuredActivityNodeContentCompartmentItemSemanticEditPolicy;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policies.CustomInteractionOverviewDiagramDragAndDropEditPolicy;
import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policies.CustomInterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentItemSemanticEditPolicy;
import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policies.CustomLoopNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy;
import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policies.CustomSequenceNodeStructuredActivityNodeContentCompartmentItemSemanticEditPolicy;
@@ -37,53 +40,86 @@ import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.policies.CustomS
public class CustomEditPolicyProvider extends InteractionOverviewDiagramEditPolicyProvider {
@Override
- public boolean provides(IOperation operation) {
+ public boolean provides(final IOperation operation) {
- CreateEditPoliciesOperation epOperation = (CreateEditPoliciesOperation)operation;
+ final CreateEditPoliciesOperation epOperation = (CreateEditPoliciesOperation)operation;
if(!(epOperation.getEditPart() instanceof IGraphicalEditPart)) {
return false;
}
// Make sure this concern Internal Block Diagram only
- IGraphicalEditPart gep = (IGraphicalEditPart)epOperation.getEditPart();
- String diagramType = gep.getNotationView().getDiagram().getType();
+ final IGraphicalEditPart gep = (IGraphicalEditPart)epOperation.getEditPart();
+ final String diagramType = gep.getNotationView().getDiagram().getType();
if(!ElementTypes.DIAGRAM_ID.equals(diagramType)) {
return false;
}
-
- if(gep instanceof ActivityActivityContentCompartmentEditPart) {
+ if(gep instanceof InteractionOverviewDiagramEditPart) {
return true;
}
-
- if(gep instanceof ActivityCNContentCompartmentEditPart) {
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityFinalNodeEditPart) {
return true;
}
-
- if(gep instanceof ActivityPartitionActivityPartitionContentCompartmentEditPart) {
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.CallBehaviorActionEditPart) {
return true;
}
-
- if(gep instanceof ConditionalNodeStructuredActivityNodeContentCompartmentEditPart) {
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.CommentEditPartCN) {
return true;
}
-
- if(gep instanceof ExpansionRegionStructuredActivityNodeContentCompartmentEditPart) {
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.ConditionalNodeEditPart) {
return true;
}
-
- if(gep instanceof InterruptibleActivityRegionInterruptibleActivityRegionContentCompartmentEditPart) {
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.ConditionalNodeStructuredActivityNodeContentCompartmentEditPart) {
return true;
}
-
- if(gep instanceof LoopNodeStructuredActivityNodeContentCompartmentEditPart) {
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.DecisionNodeEditPart) {
return true;
}
-
- if(gep instanceof SequenceNodeStructuredActivityNodeContentCompartmentEditPart) {
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.FlowFinalNodeEditPart) {
return true;
}
-
- if(gep instanceof StructuredActivityNodeStructuredActivityNodeContentCompartmentEditPart) {
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.ForkNodeEditPart) {
+ return true;
+ }
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.InitialNodeEditPart) {
+ return true;
+ }
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.JoinNodeEditPart) {
+ return true;
+ }
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.LoopNodeEditPart) {
+ return true;
+ }
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.LoopNodeStructuredActivityNodeContentCompartmentEditPart) {
+ return true;
+ }
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.MergeNodeEditPart) {
+ return true;
+ }
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.ShapeNamedElementEditPart) {
+ return true;
+ }
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityEditPart) {
+ return true;
+ }
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityActivityParametersCompartmentEditPart) {
+ return true;
+ }
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityActivityPreConditionsCompartmentEditPart) {
+ return true;
+ }
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityActivityPostConditionsCompartmentEditPart) {
+ return true;
+ }
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.ActivityActivityContentCompartmentEditPart) {
+ return true;
+ }
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.SequenceNodeEditPart) {
+ return true;
+ }
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.SequenceNodeStructuredActivityNodeContentCompartmentEditPart) {
+ return true;
+ }
+ if(gep instanceof org.eclipse.papyrus.uml.diagram.activity.edit.parts.ConstraintEditPartCN) {
return true;
}
@@ -91,11 +127,14 @@ public class CustomEditPolicyProvider extends InteractionOverviewDiagramEditPoli
}
@Override
- public void createEditPolicies(EditPart editPart) {
+ public void createEditPolicies(final EditPart editPart) {
super.createEditPolicies(editPart);
+ editPart.installEditPolicy(EditPolicyRoles.DRAG_DROP_ROLE, new CustomInteractionOverviewDiagramDragAndDropEditPolicy());
+
if(editPart instanceof ActivityActivityContentCompartmentEditPart) {
editPart.installEditPolicy(EditPolicyRoles.SEMANTIC_ROLE, new ActivityContentCompartmentItemSemanticEditPolicy());
+ editPart.installEditPolicy(EditPolicyRoles.CREATION_ROLE, new ActivityContentCompartmentCreationEditPolicy());
}
if(editPart instanceof ActivityCNContentCompartmentEditPart) {
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/CustomViewProvider.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/CustomViewProvider.java
index d6164984974..4383a265461 100644
--- a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/CustomViewProvider.java
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/CustomViewProvider.java
@@ -10,6 +10,84 @@
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.interactionoverview.provider;
-public class CustomViewProvider extends InteractionOverviewDiagramViewProvider {
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.gmf.runtime.diagram.core.preferences.PreferencesHint;
+import org.eclipse.gmf.runtime.diagram.core.services.view.CreateNodeViewOperation;
+import org.eclipse.gmf.runtime.diagram.core.util.ViewUtil;
+import org.eclipse.gmf.runtime.emf.type.core.IElementType;
+import org.eclipse.gmf.runtime.notation.Node;
+import org.eclipse.gmf.runtime.notation.NotationFactory;
+import org.eclipse.gmf.runtime.notation.Shape;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.jface.preference.IPreferenceStore;
+import org.eclipse.papyrus.uml.diagram.activity.part.UMLVisualIDRegistry;
+import org.eclipse.papyrus.uml.diagram.common.helper.PreferenceInitializerForElementHelper;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.part.CallBehaviorActionAsInteractionEditPart;
+public class CustomViewProvider extends InheritedActivityDiagramViewProvider {
+
+ @Override
+ protected boolean provides(final CreateNodeViewOperation op) {
+ // Must have a container
+ if(op.getContainerView() == null) {
+ return false;
+ }
+ // Get the type of the container
+ final String containerGraphicalType = op.getContainerView().getType();
+
+ // This provider is registered for InteractionOverviewDiagram Diagram
+ // only
+ final String diagramType = op.getContainerView().getDiagram().getType();
+ if(!ElementTypes.DIAGRAM_ID.equals(diagramType)) {
+ return false;
+ }
+
+ // /////////////////////////////////////////////////////////////////////
+ // Test possibility to provide a view based on the ElementType and its
+ // expected container.
+ // /////////////////////////////////////////////////////////////////////
+
+ final IElementType elementType = (IElementType)op.getSemanticAdapter().getAdapter(IElementType.class);
+ if(elementType == UMLElementTypes.CallBehaviorAction_5000) {
+
+ if(ElementTypes.ACTIVITY_COMPARTMENT_ACTIVITY_FIGURE_CONTENT_HINT.equals(containerGraphicalType)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ @Override
+ public Node createNode(final IAdaptable semanticAdapter, final View containerView, final String semanticHint, final int index, final boolean persisted, final PreferencesHint preferencesHint) {
+ final EObject domainElement = getSemanticElement(semanticAdapter);
+ final int visualID;
+ if(semanticHint == null) {
+ visualID = UMLVisualIDRegistry.getNodeVisualID(containerView, domainElement);
+ } else {
+ visualID = UMLVisualIDRegistry.getVisualID(semanticHint);
+ }
+ switch(visualID) {
+ case CallBehaviorActionAsInteractionEditPart.VISUAL_ID:
+ return createCallBehaviorAction_5000(domainElement, containerView, index, persisted, preferencesHint);
+ // can't happen, provided #provides(CreateNodeViewOperation) is correct
+ }
+ return null;
+
+ }
+
+ public Node createCallBehaviorAction_5000(final EObject domainElement, final View containerView, final int index, final boolean persisted, final PreferencesHint preferencesHint) {
+ final Shape node = NotationFactory.eINSTANCE.createShape();
+ node.setLayoutConstraint(NotationFactory.eINSTANCE.createBounds());
+ node.setType(UMLVisualIDRegistry.getType(CallBehaviorActionAsInteractionEditPart.VISUAL_ID));
+ ViewUtil.insertChildView(containerView, node, index, persisted);
+ node.setElement(domainElement);
+ // initializeFromPreferences
+ final IPreferenceStore prefStore = (IPreferenceStore)preferencesHint.getPreferenceStore();
+ PreferenceInitializerForElementHelper.initForegroundFromPrefs(node, prefStore, "CallBehaviorAction");
+ PreferenceInitializerForElementHelper.initFontStyleFromPrefs(node, prefStore, "CallBehaviorAction");
+ PreferenceInitializerForElementHelper.initBackgroundFromPrefs(node, prefStore, "CallBehaviorAction");
+ PreferenceInitializerForElementHelper.initCompartmentsStatusFromPrefs(node, prefStore, "CallBehaviorAction");
+ return node;
+ }
}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/DiagramContentProvider.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/DiagramContentProvider.java
new file mode 100644
index 00000000000..64fa53f0d59
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/DiagramContentProvider.java
@@ -0,0 +1,107 @@
+/*****************************************************************************
+ * 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
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.interactionoverview.provider;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.facet.infra.browser.uicore.internal.model.ModelElementItem;
+import org.eclipse.papyrus.infra.core.resource.ModelUtils;
+import org.eclipse.papyrus.infra.core.sasheditor.contentprovider.IPageManager;
+import org.eclipse.papyrus.infra.core.services.ServicesRegistry;
+import org.eclipse.papyrus.infra.emf.providers.MoDiscoContentProvider;
+import org.eclipse.papyrus.infra.gmfdiag.css.notation.CSSDiagram;
+import org.eclipse.papyrus.infra.widgets.providers.IHierarchicContentProvider;
+import org.eclipse.papyrus.uml.diagram.communication.edit.parts.ModelEditPart;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.Activator;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.part.InteractionOverviewDiagramEditPart;
+import org.eclipse.papyrus.uml.diagram.sequence.edit.parts.PackageEditPart;
+import org.eclipse.papyrus.uml.diagram.timing.edit.parts.TimingDiagramEditPart;
+import org.eclipse.uml2.uml.Activity;
+import org.eclipse.uml2.uml.Interaction;
+
+/**
+ *
+ * this content provider is used to display diagrams and their contents
+ *
+ */
+@Deprecated
+public class DiagramContentProvider extends MoDiscoContentProvider implements IHierarchicContentProvider {
+
+ private final Interaction interaction;
+
+ public DiagramContentProvider(final Interaction interation) {
+ super();
+ this.interaction = interation;
+ }
+
+ @Override
+ public EObject[] getRootElements(final Object inputElement) {
+
+ try {
+ if(!(inputElement instanceof ServicesRegistry)) {
+ return null;
+ }
+
+ final ServicesRegistry servicesRegistry = (ServicesRegistry)inputElement;
+
+ modelSet = ModelUtils.getModelSetChecked(servicesRegistry);
+ pageMngr = servicesRegistry.getService(IPageManager.class);
+
+ final ArrayList<EObject> result = new ArrayList<EObject>();
+ final List<Object> list = pageMngr.allPages();
+ for(int i = 0; i < list.size(); i++) {
+ final Object element = pageMngr.allPages().get(i);
+ if(element instanceof CSSDiagram && isValidDiagram((CSSDiagram)element)) {
+ result.add((EObject)pageMngr.allPages().get(i));
+ }
+ }
+
+ final EObject[] eObject = new EObject[result.size()];
+ return result.toArray(eObject);
+
+ } catch (final Exception e) {
+ Activator.log.error(e);
+ }
+
+ return new EObject[0];
+ }
+
+ private boolean isValidDiagram(final CSSDiagram diagram) {
+ //seqDiagram or comDiagram
+ if(diagram.getType().equals(PackageEditPart.MODEL_ID) || diagram.getType().equals(ModelEditPart.MODEL_ID)) {
+ if(diagram.getElement().equals(interaction)) {
+ return true;
+ }
+ //timing Diagram
+ } else if(diagram.getType().equals(TimingDiagramEditPart.MODEL_ID)) {
+ return true;
+ //InteractionOverviewDiagram
+ } else if(diagram.getType().equals(InteractionOverviewDiagramEditPart.MODEL_ID)) {
+ if(diagram.getElement() instanceof Activity) {
+ if(((Activity)diagram.getElement()).getOwnedBehaviors().contains(interaction)) {
+ return true;
+ }
+ }
+ }
+ return false;
+ }
+
+ public boolean isValidValue(final Object element) {
+ if(element instanceof ModelElementItem) {
+ final ModelElementItem item = (ModelElementItem)element;
+ return isValidDiagram((CSSDiagram)item.getEObject());
+ } else {
+ return false;
+ }
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/ElementInitializers.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/ElementInitializers.java
new file mode 100644
index 00000000000..22e4edd4ae7
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/ElementInitializers.java
@@ -0,0 +1,41 @@
+/*****************************************************************************
+ * 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
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.interactionoverview.provider;
+
+import org.eclipse.papyrus.uml.diagram.activity.part.UMLDiagramEditorPlugin;
+import org.eclipse.papyrus.uml.diagram.common.actions.LabelHelper;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.Activator;
+import org.eclipse.uml2.uml.CallBehaviorAction;
+
+
+public class ElementInitializers extends org.eclipse.papyrus.uml.diagram.activity.providers.ElementInitializers {
+
+ public static ElementInitializers getInstance() {
+ ElementInitializers cached = Activator.getInstance().getElementInitializers();
+ if(cached == null) {
+ UMLDiagramEditorPlugin.getInstance().setElementInitializers(cached = new ElementInitializers());
+ }
+ return cached;
+ }
+
+ public void init_CallBehaviorAction_5000(final CallBehaviorAction instance) {
+ try {
+ final Object value_0 = name_CallBehaviorAction_5000(instance);
+ instance.setName((String)value_0);
+ } catch (final RuntimeException e) {
+ UMLDiagramEditorPlugin.getInstance().logError("Element initialization failed", e); //$NON-NLS-1$
+ }
+ }
+
+ private String name_CallBehaviorAction_5000(final CallBehaviorAction self) {
+ return LabelHelper.INSTANCE.findName(self.eContainer(), self);
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/UMLElementTypes.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/UMLElementTypes.java
new file mode 100644
index 00000000000..4611477558b
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/provider/UMLElementTypes.java
@@ -0,0 +1,183 @@
+/*****************************************************************************
+ * 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
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.interactionoverview.provider;
+
+import java.util.HashSet;
+import java.util.IdentityHashMap;
+import java.util.Map;
+import java.util.Set;
+
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.ENamedElement;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.emf.type.core.ElementTypeRegistry;
+import org.eclipse.gmf.runtime.emf.type.core.IElementType;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.jface.resource.ImageRegistry;
+import org.eclipse.papyrus.uml.diagram.activity.part.UMLDiagramEditorPlugin;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.part.CallBehaviorActionAsInteractionEditPart;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.uml2.uml.UMLPackage;
+
+
+public class UMLElementTypes {
+
+ private UMLElementTypes() {
+ }
+
+ private static Map<IElementType, ENamedElement> elements;
+
+ private static ImageRegistry imageRegistry;
+
+ private static Set<IElementType> KNOWN_ELEMENT_TYPES;
+
+ public static final IElementType CallBehaviorAction_5000 = getElementType("org.eclipse.papyrus.uml.diagram.interactionoverview.CallBehaviorAction_5000"); //$NON-NLS-1$
+
+
+ private static ImageRegistry getImageRegistry() {
+ if(imageRegistry == null) {
+ imageRegistry = new ImageRegistry();
+ }
+ return imageRegistry;
+ }
+
+ /**
+ * @generated
+ */
+ private static String getImageRegistryKey(final ENamedElement element) {
+ return element.getName();
+ }
+
+ /**
+ * @generated
+ */
+ private static ImageDescriptor getProvidedImageDescriptor(ENamedElement element) {
+ if(element instanceof EStructuralFeature) {
+ final EStructuralFeature feature = ((EStructuralFeature)element);
+ final EClass eContainingClass = feature.getEContainingClass();
+ final EClassifier eType = feature.getEType();
+ if(eContainingClass != null && !eContainingClass.isAbstract()) {
+ element = eContainingClass;
+ } else if(eType instanceof EClass && !((EClass)eType).isAbstract()) {
+ element = eType;
+ }
+ }
+ if(element instanceof EClass) {
+ final EClass eClass = (EClass)element;
+ if(!eClass.isAbstract()) {
+ return UMLDiagramEditorPlugin.getInstance().getItemImageDescriptor(eClass.getEPackage().getEFactoryInstance().create(eClass));
+ }
+ }
+ // TODO : support structural features
+ return null;
+ }
+
+ /**
+ * @generated
+ */
+ public static ImageDescriptor getImageDescriptor(final ENamedElement element) {
+ final String key = getImageRegistryKey(element);
+ ImageDescriptor imageDescriptor = getImageRegistry().getDescriptor(key);
+ if(imageDescriptor == null) {
+ imageDescriptor = getProvidedImageDescriptor(element);
+ if(imageDescriptor == null) {
+ imageDescriptor = ImageDescriptor.getMissingImageDescriptor();
+ }
+ getImageRegistry().put(key, imageDescriptor);
+ }
+ return imageDescriptor;
+ }
+
+ /**
+ * @generated
+ */
+ public static Image getImage(final ENamedElement element) {
+ final String key = getImageRegistryKey(element);
+ Image image = getImageRegistry().get(key);
+ if(image == null) {
+ ImageDescriptor imageDescriptor = getProvidedImageDescriptor(element);
+ if(imageDescriptor == null) {
+ imageDescriptor = ImageDescriptor.getMissingImageDescriptor();
+ }
+ getImageRegistry().put(key, imageDescriptor);
+ image = getImageRegistry().get(key);
+ }
+ return image;
+ }
+
+ /**
+ * @generated
+ */
+ public static ImageDescriptor getImageDescriptor(final IAdaptable hint) {
+ final ENamedElement element = getElement(hint);
+ if(element == null) {
+ return null;
+ }
+ return getImageDescriptor(element);
+ }
+
+ /**
+ * @generated
+ */
+ public static Image getImage(final IAdaptable hint) {
+ final ENamedElement element = getElement(hint);
+ if(element == null) {
+ return null;
+ }
+ return getImage(element);
+ }
+
+ /**
+ * Returns 'type' of the ecore object associated with the hint.
+ *
+ * @generated
+ */
+ public static ENamedElement getElement(final IAdaptable hint) {
+ final Object type = hint.getAdapter(IElementType.class);
+ if(elements == null) {
+ elements = new IdentityHashMap<IElementType, ENamedElement>();
+ elements.put(CallBehaviorAction_5000, UMLPackage.eINSTANCE.getCallBehaviorAction());
+ }
+ return elements.get(type);
+ }
+
+ /**
+ * @generated
+ */
+ private static IElementType getElementType(final String id) {
+ return ElementTypeRegistry.getInstance().getType(id);
+ }
+
+ /**
+ * @generated
+ */
+ public static boolean isKnownElementType(final IElementType elementType) {
+ if(KNOWN_ELEMENT_TYPES == null) {
+ KNOWN_ELEMENT_TYPES = new HashSet<IElementType>();
+ KNOWN_ELEMENT_TYPES.add(CallBehaviorAction_5000);
+ }
+ return KNOWN_ELEMENT_TYPES.contains(elementType);
+ }
+
+ /**
+ * @generated
+ */
+ public static IElementType getElementType(final int visualID) {
+ switch(visualID) {
+ case CallBehaviorActionAsInteractionEditPart.VISUAL_ID:
+ return CallBehaviorAction_5000;
+
+ }
+ return null;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/utils/CallBehaviorUtil.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/utils/CallBehaviorUtil.java
new file mode 100644
index 00000000000..2ce5776c92c
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/utils/CallBehaviorUtil.java
@@ -0,0 +1,156 @@
+/*****************************************************************************
+ * 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
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.interactionoverview.utils;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EAnnotation;
+import org.eclipse.emf.ecore.EcoreFactory;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.gef.EditPart;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.uml.diagram.activity.edit.parts.CallBehaviorActionEditPart;
+import org.eclipse.papyrus.uml.diagram.activity.part.UMLVisualIDRegistry;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.part.CallBehaviorActionAsInteractionEditPart;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.edit.part.CustomInteractionUseEditPartCN;
+import org.eclipse.uml2.uml.CallBehaviorAction;
+
+
+public class CallBehaviorUtil {
+
+ public enum CallBehaviorActionType {
+ use, snapshot
+ }
+
+ /** The key for the EAnnotation on a Lifeline that indicates whether the Lifeline is a compact or full lifeline */
+ private static final String CALL_BEHAVIOR_ACTION_ANNOTATION = "org.eclipse.papyrus.uml.diagram.interactionoverview.callbehavioraction"; //$NON-NLS-1$
+
+ private static final String CALL_BEHAVIOR_ACTION_TYPE = "type"; //$NON-NLS-1$
+
+ public static final String DIAGRAM_UUID_AS_INTERACTION_SNAPSHOT = "diagramUUIDForSnapshot";
+
+ public static final String LIFELINE_QUALIFIED_NAME = "lifelineQualifiedNames";
+
+ public static final String IS_BEHAVIOR_NEW = "isBehaviorNew";
+
+ private CallBehaviorUtil() {
+ // utility class
+ }
+
+ /**
+ * Get the type of the given lifeline
+ *
+ * @param callBehaviorAction
+ * the lifeline whose type to get
+ * @return the type
+ */
+ public static CallBehaviorActionType getCallBehaviorType(final CallBehaviorAction callBehaviorAction) {
+ final EAnnotation eAnnotation = callBehaviorAction.getEAnnotation(CALL_BEHAVIOR_ACTION_ANNOTATION);
+ if(eAnnotation != null) {
+ final String type = eAnnotation.getDetails().get(CALL_BEHAVIOR_ACTION_TYPE);
+ if(type != null) {
+ return CallBehaviorActionType.valueOf(type);
+ }
+ }
+ // a non-annotated Lifeline is full by default
+ return CallBehaviorActionType.snapshot;
+ }
+
+ public static void setLifelineType(final CallBehaviorAction callBehaviorAction, final CallBehaviorActionType callBehaviorActionType) {
+ EAnnotation eAnnotation = callBehaviorAction.getEAnnotation(CALL_BEHAVIOR_ACTION_ANNOTATION);
+ if(eAnnotation == null) {
+ eAnnotation = EcoreFactory.eINSTANCE.createEAnnotation();
+ eAnnotation.setSource(CALL_BEHAVIOR_ACTION_ANNOTATION);
+ callBehaviorAction.getEAnnotations().add(eAnnotation);
+ }
+ eAnnotation.getDetails().put(CALL_BEHAVIOR_ACTION_TYPE, callBehaviorActionType.name());
+ }
+
+ public static boolean isCallBehaviorActionEditPart(final int visualID) {
+ return visualID == CallBehaviorActionEditPart.VISUAL_ID || visualID == CallBehaviorActionAsInteractionEditPart.VISUAL_ID;
+ }
+
+ public static boolean isCallBehaviorActionEditPart(final EditPart editPart) {
+ return editPart instanceof CustomInteractionUseEditPartCN || editPart instanceof CallBehaviorActionAsInteractionEditPart;
+ }
+
+ public static boolean isCallBehaviorActionView(final View view) {
+ int visualID = UMLVisualIDRegistry.getVisualID(view);
+ if(visualID == -1) {
+ visualID = UMLVisualIDRegistry.getVisualID(view);
+ }
+ return isCallBehaviorActionEditPart(visualID);
+ }
+
+
+
+ public static String getDiagramLinked(final View callBehaviorActionView) {
+
+ final EAnnotation annotation = callBehaviorActionView.getEAnnotation(CALL_BEHAVIOR_ACTION_ANNOTATION);
+ if(annotation != null) {
+ return annotation.getDetails().get(DIAGRAM_UUID_AS_INTERACTION_SNAPSHOT);
+ }
+ return "";
+ }
+
+ public static void setDiagramLinked(final View callBehaviorActionView, final View diagramView) {
+
+ EAnnotation annotation = callBehaviorActionView.getEAnnotation(CALL_BEHAVIOR_ACTION_ANNOTATION);
+ if(annotation == null) {
+ annotation = EcoreFactory.eINSTANCE.createEAnnotation();
+ annotation.setSource(CALL_BEHAVIOR_ACTION_ANNOTATION);
+ callBehaviorActionView.getEAnnotations().add(annotation);
+ }
+ if(annotation.getDetails().get(DIAGRAM_UUID_AS_INTERACTION_SNAPSHOT) != null) {
+ annotation.getDetails().clear();
+ }
+
+ String uuidDiagram = DiagramUtils.getUUIDForSnapshot(diagramView);
+ if(uuidDiagram == null || uuidDiagram.equals("")) {
+ uuidDiagram = EcoreUtil.generateUUID();
+ DiagramUtils.setUUID(diagramView, uuidDiagram);
+ }
+ annotation.getDetails().put(DIAGRAM_UUID_AS_INTERACTION_SNAPSHOT, uuidDiagram);
+ }
+
+ public static List<String> getRemovedLifelinesQualifiedNames(final View callBehaviorActionView) {
+ final EAnnotation eAnnotation = callBehaviorActionView.getEAnnotation(LIFELINE_QUALIFIED_NAME);
+ if(eAnnotation != null) {
+ return new ArrayList<String>(eAnnotation.getDetails().keySet());
+ }
+ return new ArrayList<String>();
+ }
+
+ public static void addLifelineQualifiedNames(final View callBehaviorActionView, final String qualifiedName) {
+ EAnnotation eAnnotation = callBehaviorActionView.getEAnnotation(LIFELINE_QUALIFIED_NAME);
+ if(eAnnotation == null) {
+ eAnnotation = EcoreFactory.eINSTANCE.createEAnnotation();
+ eAnnotation.setSource(LIFELINE_QUALIFIED_NAME);
+ callBehaviorActionView.getEAnnotations().add(eAnnotation);
+ }
+ eAnnotation.getDetails().put(qualifiedName, "");
+ }
+
+ public static boolean isBehaviorNew(final View callBehaviorActionView) {
+ return callBehaviorActionView.getEAnnotation(IS_BEHAVIOR_NEW) == null;
+ }
+
+ public static void setBehaviorAsNonNew(final View callBehaviorActionView) {
+ EAnnotation eAnnotation = callBehaviorActionView.getEAnnotation(IS_BEHAVIOR_NEW);
+ if(eAnnotation == null) {
+ eAnnotation = EcoreFactory.eINSTANCE.createEAnnotation();
+ eAnnotation.setSource(IS_BEHAVIOR_NEW);
+ callBehaviorActionView.getEAnnotations().add(eAnnotation);
+ }
+ }
+
+}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/utils/CreateDiagramImage.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/utils/CreateDiagramImage.java
new file mode 100644
index 00000000000..a2834771325
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/utils/CreateDiagramImage.java
@@ -0,0 +1,303 @@
+/*****************************************************************************
+ * 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
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.interactionoverview.utils;
+
+import java.awt.image.BufferedImage;
+import java.awt.image.ColorModel;
+import java.awt.image.DirectColorModel;
+import java.awt.image.IndexColorModel;
+import java.awt.image.WritableRaster;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Iterator;
+import java.util.List;
+
+import org.eclipse.draw2d.ImageFigure;
+import org.eclipse.gef.GraphicalEditPart;
+import org.eclipse.gmf.runtime.diagram.core.preferences.PreferencesHint;
+import org.eclipse.gmf.runtime.diagram.ui.OffscreenEditPartFactory;
+import org.eclipse.gmf.runtime.diagram.ui.editparts.DiagramEditPart;
+import org.eclipse.gmf.runtime.diagram.ui.render.clipboard.DiagramGenerator;
+import org.eclipse.gmf.runtime.diagram.ui.render.clipboard.DiagramImageGenerator;
+import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.jface.viewers.ILabelProvider;
+import org.eclipse.papyrus.infra.core.editor.IMultiDiagramEditor;
+import org.eclipse.papyrus.infra.core.services.ServiceException;
+import org.eclipse.papyrus.infra.core.services.ServicesRegistry;
+import org.eclipse.papyrus.infra.services.labelprovider.service.LabelProviderService;
+import org.eclipse.papyrus.infra.widgets.editors.MultipleValueSelectorDialog;
+import org.eclipse.papyrus.infra.widgets.providers.FilteredContentProvider;
+import org.eclipse.papyrus.infra.widgets.providers.IStaticContentProvider;
+import org.eclipse.papyrus.infra.widgets.providers.StaticContentProvider;
+import org.eclipse.papyrus.infra.widgets.selectors.ReferenceSelector;
+import org.eclipse.papyrus.uml.diagram.communication.edit.parts.LifelineEditPartCN;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.Activator;
+import org.eclipse.papyrus.uml.diagram.interactionoverview.part.Messages;
+import org.eclipse.papyrus.uml.diagram.sequence.edit.parts.LifelineEditPart;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.graphics.ImageData;
+import org.eclipse.swt.graphics.PaletteData;
+import org.eclipse.swt.graphics.RGB;
+import org.eclipse.swt.graphics.Rectangle;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.uml2.uml.Lifeline;
+import org.eclipse.uml2.uml.NamedElement;
+
+public class CreateDiagramImage {
+
+ public static Image getDiagramImage(final Diagram diagram, final PreferencesHint preferencesHint, final ImageFigure imageFigure, final View callBehaviorActionView) {
+ Image image = null;
+
+ final DiagramEditPart diagramEditPart = OffscreenEditPartFactory.getInstance().createDiagramEditPart(diagram, new Shell(), preferencesHint);
+ if(diagramEditPart != null) {
+ image = getDiagramImage(diagramEditPart, imageFigure, callBehaviorActionView);
+ diagramEditPart.deactivate();
+ }
+ return image;
+ }
+
+ public static Image getDiagramImage(final DiagramEditPart diagramEP, final ImageFigure imageFigure, final View callBehaviorActionView) {
+
+ final List<GraphicalEditPart> editParts = diagramEP.getPrimaryEditParts();
+ getAllChildren(diagramEP, editParts);
+ final List<GraphicalEditPart> lifelines = getAllLifeline(editParts);
+
+ final DiagramGenerator gen = new DiagramImageGenerator(diagramEP);
+
+ if(CallBehaviorUtil.isBehaviorNew(callBehaviorActionView)) {
+ CallBehaviorUtil.setBehaviorAsNonNew(callBehaviorActionView);
+ final List selectedLifelines = Arrays.asList(selectLifelines(lifelines));
+ final List removedLifeline = new ArrayList(lifelines);
+ removedLifeline.removeAll(selectedLifelines);
+ final List removedLifelineCopyForIterate = new ArrayList(removedLifeline);
+ for(final Iterator iterator = removedLifelineCopyForIterate.iterator(); iterator.hasNext();) {
+ final Object object = iterator.next();
+ getAllChildren((GraphicalEditPart)object, removedLifeline);
+ }
+ final List<GraphicalEditPart> filteredEditParts = new ArrayList<GraphicalEditPart>(editParts);
+
+ for(final Iterator iterator = editParts.iterator(); iterator.hasNext();) {
+ final GraphicalEditPart graphicalEditPart = (GraphicalEditPart)iterator.next();
+ if(removedLifeline.contains(graphicalEditPart)) {
+ graphicalEditPart.getFigure().setVisible(false);
+ final View view = (View)graphicalEditPart.getModel();
+ if(view.getElement() != null && view.getElement() instanceof NamedElement) {
+ CallBehaviorUtil.addLifelineQualifiedNames(callBehaviorActionView, ((NamedElement)(view.getElement())).getQualifiedName());
+ }
+
+ }
+ }
+ } else {
+ final List<String> qualifiedNames = CallBehaviorUtil.getRemovedLifelinesQualifiedNames(callBehaviorActionView);
+ for(final Iterator iterator = editParts.iterator(); iterator.hasNext();) {
+ final GraphicalEditPart graphicalEditPart = (GraphicalEditPart)iterator.next();
+ final View view = (View)graphicalEditPart.getModel();
+ if(view.getElement() != null && view.getElement() instanceof Lifeline) {
+ final String qualifiedName = ((Lifeline)(view.getElement())).getQualifiedName();
+ if(qualifiedNames.contains(qualifiedName)) {
+ graphicalEditPart.getFigure().setVisible(false);
+ }
+ }
+ }
+ }
+
+ final Rectangle rectangle = gen.calculateImageRectangle(diagramEP.getPrimaryEditParts());
+ final ImageDescriptor descriptor = gen.createSWTImageDescriptorForDiagram();
+
+ return resize(descriptor.createImage(), rectangle.width, rectangle.height);
+
+ }
+
+ private static Object[] selectLifelines(final List<GraphicalEditPart> lifelines) {
+
+ final ServicesRegistry servicesRegistry = ((IMultiDiagramEditor)(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor())).getServicesRegistry();
+
+ final ReferenceSelector referenceSelector = new ReferenceSelector(true);
+
+ final IStaticContentProvider semanticProvider = new StaticContentProvider(lifelines.toArray());
+ final FilteredContentProvider filteredProvider = new FilteredContentProvider(semanticProvider);
+ referenceSelector.setContentProvider(filteredProvider);
+
+ MultipleValueSelectorDialog dialog = null;
+
+ ILabelProvider serv = null;
+ try {
+ serv = servicesRegistry.getService(LabelProviderService.class).getLabelProvider();
+ } catch (final ServiceException e) {
+ Activator.log.error("LabelProviderServiceNotFound", e);
+ }
+
+ referenceSelector.setLabelProvider(serv);
+ dialog = new MultipleValueSelectorDialog(Display.getDefault().getActiveShell(), referenceSelector, Messages.CreateDiagramImage_MultipleValueSelectorDialog, true, false, -1);
+
+ dialog.setLabelProvider(serv);
+ dialog.setMessage(Messages.CreateDiagramImage_LifelineDialogMessage);
+ dialog.setTitle(Messages.CreateDiagramImage_LifelineDialogTitle);
+ dialog.setInitialElementSelections(lifelines);
+
+ if(dialog.open() == org.eclipse.jface.window.Window.OK) {
+ final Object[] result = dialog.getResult();
+ if(result != null && result.length > 0)
+ return result;
+ }
+ return new Object[0];
+ }
+
+ private static List<GraphicalEditPart> getAllLifeline(final List<GraphicalEditPart> editParts) {
+ final List<GraphicalEditPart> allChild = new ArrayList<GraphicalEditPart>();
+ for(final Iterator iterator = editParts.iterator(); iterator.hasNext();) {
+ final GraphicalEditPart editPart = (GraphicalEditPart)iterator.next();
+ getAllChildren(editPart, allChild);
+ }
+ final List<GraphicalEditPart> lifelines = new ArrayList<GraphicalEditPart>();
+ for(final Iterator iterator = allChild.iterator(); iterator.hasNext();) {
+ final GraphicalEditPart graphicalEditPart = (GraphicalEditPart)iterator.next();
+ if(isValidLifelineEditPart(graphicalEditPart)) {
+ lifelines.add(graphicalEditPart);
+ }
+ }
+ return lifelines;
+ }
+
+ private static boolean isValidLifelineEditPart(final GraphicalEditPart graphicalEditPart) {
+ if(graphicalEditPart instanceof LifelineEditPart || graphicalEditPart instanceof LifelineEditPartCN || graphicalEditPart instanceof org.eclipse.papyrus.uml.diagram.timing.edit.parts.LifelineEditPart) {
+ return true;
+ }
+ return false;
+ }
+
+ private static List<GraphicalEditPart> getAllChildren(final GraphicalEditPart ep, final List<GraphicalEditPart> result) {
+
+ for(final Object object : ep.getChildren()) {
+ final GraphicalEditPart gep = (GraphicalEditPart)object;
+ if(!result.contains(gep)) {
+ result.add(gep);
+ }
+ if(!gep.getChildren().isEmpty()) {
+ getAllChildren(gep, result);
+ }
+ }
+ return result;
+ }
+
+ public static org.eclipse.swt.graphics.Image resize(final org.eclipse.swt.graphics.Image image, final int newWidth, final int newHeight) {
+
+ // convert to buffered image
+ BufferedImage img = convertToAWT(image.getImageData());
+
+ final java.awt.Image scaledImage = img.getScaledInstance(newWidth, newHeight, java.awt.Image.SCALE_AREA_AVERAGING);
+
+ // convert the scaled image back to a buffered image
+ img = new BufferedImage(newWidth, newHeight, BufferedImage.TYPE_INT_RGB);
+ img.getGraphics().drawImage(scaledImage, 0, 0, null);
+
+ // reconstruct swt image
+ final ImageData imageData = convertToSWT(img);
+ return new org.eclipse.swt.graphics.Image(Display.getDefault(), imageData);
+ }
+
+ public static BufferedImage convertToAWT(final ImageData data) {
+ ColorModel colorModel = null;
+ final PaletteData palette = data.palette;
+ if(palette.isDirect) {
+ colorModel = new DirectColorModel(data.depth, palette.redMask, palette.greenMask, palette.blueMask);
+ final BufferedImage bufferedImage = new BufferedImage(colorModel, colorModel.createCompatibleWritableRaster(data.width, data.height), false, null);
+ final WritableRaster raster = bufferedImage.getRaster();
+ final int[] pixelArray = new int[3];
+ for(int y = 0; y < data.height; y++) {
+ for(int x = 0; x < data.width; x++) {
+ final int pixel = data.getPixel(x, y);
+ final RGB rgb = palette.getRGB(pixel);
+ pixelArray[0] = rgb.red;
+ pixelArray[1] = rgb.green;
+ pixelArray[2] = rgb.blue;
+ raster.setPixels(x, y, 1, 1, pixelArray);
+ }
+ }
+ return bufferedImage;
+ } else {
+ final RGB[] rgbs = palette.getRGBs();
+ final byte[] red = new byte[rgbs.length];
+ final byte[] green = new byte[rgbs.length];
+ final byte[] blue = new byte[rgbs.length];
+ for(int i = 0; i < rgbs.length; i++) {
+ final RGB rgb = rgbs[i];
+ red[i] = (byte)rgb.red;
+ green[i] = (byte)rgb.green;
+ blue[i] = (byte)rgb.blue;
+ }
+ if(data.transparentPixel != -1) {
+ colorModel = new IndexColorModel(data.depth, rgbs.length, red, green, blue, data.transparentPixel);
+ } else {
+ colorModel = new IndexColorModel(data.depth, rgbs.length, red, green, blue);
+ }
+ final BufferedImage bufferedImage = new BufferedImage(colorModel, colorModel.createCompatibleWritableRaster(data.width, data.height), false, null);
+ final WritableRaster raster = bufferedImage.getRaster();
+ final int[] pixelArray = new int[1];
+ for(int y = 0; y < data.height; y++) {
+ for(int x = 0; x < data.width; x++) {
+ final int pixel = data.getPixel(x, y);
+ pixelArray[0] = pixel;
+ raster.setPixel(x, y, pixelArray);
+ }
+ }
+ return bufferedImage;
+ }
+ }
+
+ public static ImageData convertToSWT(final BufferedImage bufferedImage) {
+ if(bufferedImage.getColorModel() instanceof DirectColorModel) {
+ final DirectColorModel colorModel = (DirectColorModel)bufferedImage.getColorModel();
+ final PaletteData palette = new PaletteData(colorModel.getRedMask(), colorModel.getGreenMask(), colorModel.getBlueMask());
+ final ImageData data = new ImageData(bufferedImage.getWidth(), bufferedImage.getHeight(), colorModel.getPixelSize(), palette);
+ final WritableRaster raster = bufferedImage.getRaster();
+ final int[] pixelArray = new int[3];
+ for(int y = 0; y < data.height; y++) {
+ for(int x = 0; x < data.width; x++) {
+ raster.getPixel(x, y, pixelArray);
+ final int pixel = palette.getPixel(new RGB(pixelArray[0], pixelArray[1], pixelArray[2]));
+ data.setPixel(x, y, pixel);
+ }
+ }
+ return data;
+ } else if(bufferedImage.getColorModel() instanceof IndexColorModel) {
+ final IndexColorModel colorModel = (IndexColorModel)bufferedImage.getColorModel();
+ final int size = colorModel.getMapSize();
+ final byte[] reds = new byte[size];
+ final byte[] greens = new byte[size];
+ final byte[] blues = new byte[size];
+ colorModel.getReds(reds);
+ colorModel.getGreens(greens);
+ colorModel.getBlues(blues);
+ final RGB[] rgbs = new RGB[size];
+ for(int i = 0; i < rgbs.length; i++) {
+ rgbs[i] = new RGB(reds[i] & 0xFF, greens[i] & 0xFF, blues[i] & 0xFF);
+ }
+ final PaletteData palette = new PaletteData(rgbs);
+ final ImageData data = new ImageData(bufferedImage.getWidth(), bufferedImage.getHeight(), colorModel.getPixelSize(), palette);
+ data.transparentPixel = colorModel.getTransparentPixel();
+ final WritableRaster raster = bufferedImage.getRaster();
+ final int[] pixelArray = new int[1];
+ for(int y = 0; y < data.height; y++) {
+ for(int x = 0; x < data.width; x++) {
+ raster.getPixel(x, y, pixelArray);
+ data.setPixel(x, y, pixelArray[0]);
+ }
+ }
+ return data;
+ }
+ return null;
+ }
+}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/utils/DiagramUtils.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/utils/DiagramUtils.java
new file mode 100644
index 00000000000..753b65ce4c3
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/utils/DiagramUtils.java
@@ -0,0 +1,46 @@
+/*****************************************************************************
+ * 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
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.interactionoverview.utils;
+
+import org.eclipse.emf.ecore.EAnnotation;
+import org.eclipse.emf.ecore.EcoreFactory;
+import org.eclipse.gmf.runtime.notation.View;
+
+
+public class DiagramUtils {
+
+ public static final String DIAGRAM_ANNOTATION = "diagramAnnotation";
+
+ public static final String UUID = "uuid";
+
+ public static void setUUID(final View diagramView, final String uuidDiagram) {
+ EAnnotation annotation = diagramView.getEAnnotation(DIAGRAM_ANNOTATION);
+ if(annotation == null) {
+ annotation = EcoreFactory.eINSTANCE.createEAnnotation();
+ annotation.setSource(DIAGRAM_ANNOTATION);
+ diagramView.getEAnnotations().add(annotation);
+ }
+ if(annotation.getDetails().get(UUID) != null) {
+ annotation.getDetails().clear();
+ }
+ annotation.getDetails().put(UUID, uuidDiagram);
+ }
+
+ public static String getUUIDForSnapshot(final View diagramView) {
+
+ final EAnnotation annotation = diagramView.getEAnnotation(DIAGRAM_ANNOTATION);
+ if(annotation != null) {
+ return annotation.getDetails().get(UUID);
+ }
+ return "";
+ }
+
+}
diff --git a/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/utils/URIUtils.java b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/utils/URIUtils.java
new file mode 100644
index 00000000000..68cf01485ee
--- /dev/null
+++ b/incoming/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/utils/URIUtils.java
@@ -0,0 +1,24 @@
+/*****************************************************************************
+ * 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
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.diagram.interactionoverview.utils;
+
+
+public class URIUtils {
+
+
+ private static final String PREFIX = "platform:/resource/";
+
+ private static final String SUFFIX = "/model.notation";
+
+ public static String getTimestampedURI() {
+ return PREFIX + System.currentTimeMillis() + SUFFIX;
+ }
+}

Back to the top