diff options
3 files changed, 18 insertions, 2 deletions
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.statemachine/custom-src/org/eclipse/papyrus/uml/diagram/statemachine/custom/helpers/advice/PseudostateKindInitializerAdvice.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.statemachine/custom-src/org/eclipse/papyrus/uml/diagram/statemachine/custom/helpers/advice/PseudostateKindInitializerAdvice.java index e19e5973712..39750353094 100644 --- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.statemachine/custom-src/org/eclipse/papyrus/uml/diagram/statemachine/custom/helpers/advice/PseudostateKindInitializerAdvice.java +++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.statemachine/custom-src/org/eclipse/papyrus/uml/diagram/statemachine/custom/helpers/advice/PseudostateKindInitializerAdvice.java @@ -79,6 +79,12 @@ public class PseudostateKindInitializerAdvice extends AbstractEditHelperAdvice { if (UMLElementTypes.Pseudostate_15000.equals(type) || superTypes.contains(UMLElementTypes.Pseudostate_15000)) {
return PseudostateKind.TERMINATE_LITERAL;
}
+ if (UMLElementTypes.Pseudostate_16000.equals(type) || superTypes.contains(UMLElementTypes.Pseudostate_16000)) {
+ return PseudostateKind.ENTRY_POINT_LITERAL;
+ }
+ if (UMLElementTypes.Pseudostate_17000.equals(type) || superTypes.contains(UMLElementTypes.Pseudostate_17000)) {
+ return PseudostateKind.EXIT_POINT_LITERAL;
+ }
return null;
}
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.statemachine/model/stateMachineDiagram.elementtypesconfigurations b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.statemachine/model/stateMachineDiagram.elementtypesconfigurations index c194cf3019b..09133d46bc8 100644 --- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.statemachine/model/stateMachineDiagram.elementtypesconfigurations +++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.statemachine/model/stateMachineDiagram.elementtypesconfigurations @@ -83,11 +83,11 @@ </elementTypeConfigurations>
<elementTypeConfigurations xsi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="_whcvIMeDEeSwP_9Vn5UnWg" name="Pseudostate" identifier="org.eclipse.papyrus.uml.diagram.statemachine.Pseudostate_16000" hint="16000">
<iconEntry xmi:id="_whcvIceDEeSwP_9Vn5UnWg" iconPath="/icons/full/obj16/Pseudostate.gif" bundleId="org.eclipse.uml2.uml.edit"/>
- <specializedTypesID>org.eclipse.papyrus.uml.Pseudostate</specializedTypesID>
+ <specializedTypesID>org.eclipse.papyrus.uml.BasePseudostateType</specializedTypesID>
</elementTypeConfigurations>
<elementTypeConfigurations xsi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="_whd9QMeDEeSwP_9Vn5UnWg" name="Pseudostate" identifier="org.eclipse.papyrus.uml.diagram.statemachine.Pseudostate_17000" hint="17000">
<iconEntry xmi:id="_whd9QceDEeSwP_9Vn5UnWg" iconPath="/icons/full/obj16/Pseudostate.gif" bundleId="org.eclipse.uml2.uml.edit"/>
- <specializedTypesID>org.eclipse.papyrus.uml.Pseudostate</specializedTypesID>
+ <specializedTypesID>org.eclipse.papyrus.uml.BasePseudostateType</specializedTypesID>
</elementTypeConfigurations>
<elementTypeConfigurations xsi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="_whH_AMeDEeSwP_9Vn5UnWg" name="Region" identifier="org.eclipse.papyrus.uml.diagram.statemachine.Region_3000" hint="3000">
<iconEntry xmi:id="_whH_AceDEeSwP_9Vn5UnWg" iconPath="/icons/full/obj16/Region.gif" bundleId="org.eclipse.uml2.uml.edit"/>
diff --git a/tests/junit/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.statemachine.tests/src/org/eclipse/papyrus/uml/diagram/statemachine/tests/canonical/TestSemantic.java b/tests/junit/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.statemachine.tests/src/org/eclipse/papyrus/uml/diagram/statemachine/tests/canonical/TestSemantic.java index 16e6978810b..b4632e4d575 100644 --- a/tests/junit/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.statemachine.tests/src/org/eclipse/papyrus/uml/diagram/statemachine/tests/canonical/TestSemantic.java +++ b/tests/junit/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.statemachine.tests/src/org/eclipse/papyrus/uml/diagram/statemachine/tests/canonical/TestSemantic.java @@ -264,6 +264,16 @@ public class TestSemantic extends BaseTestCase { } @Test + public void testEntryPointJunctionKind() { + checkPseudostateKind(PseudostateEntryPointEditPart.VISUAL_ID, PseudostateKind.ENTRY_POINT_LITERAL, "EntryPoint"); + } + + @Test + public void testPseudostateExitPointKind() { + checkPseudostateKind(PseudostateExitPointEditPart.VISUAL_ID, PseudostateKind.EXIT_POINT_LITERAL, "ExitPoint"); + } + + @Test public void testPseudostateTerminateKind() { checkPseudostateKind(PseudostateTerminateEditPart.VISUAL_ID, PseudostateKind.TERMINATE_LITERAL, "Terminate"); } |