diff options
Diffstat (limited to 'extraplugins')
2 files changed, 22 insertions, 3 deletions
diff --git a/extraplugins/migration/org.eclipse.papyrus.migration.rsa/transform/RSAStructureDiagram.qvto b/extraplugins/migration/org.eclipse.papyrus.migration.rsa/transform/RSAStructureDiagram.qvto index 3dab008f30f..237b6147bc1 100644 --- a/extraplugins/migration/org.eclipse.papyrus.migration.rsa/transform/RSAStructureDiagram.qvto +++ b/extraplugins/migration/org.eclipse.papyrus.migration.rsa/transform/RSAStructureDiagram.qvto @@ -8,7 +8,7 @@ * * Contributors: * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation - * Christian W. Damus - bugs 461980, 497841 + * Christian W. Damus - bugs 461980, 497841, 498282 *****************************************************************************/ import RSAToPapyrus; @@ -182,7 +182,8 @@ mapping UMLShape::toPapyrusShape() : Shape inherits Shape::toPapyrusShape when { /****** Adjustments to newly attached output views ******/ mapping inout Node::adjustNode() disjuncts - Node::adjustStructureCompartment + Node::adjustStructureCompartment, + Node::adjustPort ; mapping inout Node::adjustStructureCompartment() when { @@ -192,6 +193,16 @@ mapping inout Node::adjustStructureCompartment() when { self.children->select(type = '3069').map hoistPortNode(); } +mapping inout Node::adjustPort() when { + self.type = '3069' + and self.element.oclIsKindOf(Port) + and self.element.oclAsType(Port).isConjugated +} { + // If the port is conjugated, we need to enable the default visualization, + // not the colour (if any) imported from RSA + self.unset('fillColor'); +} + mapping inout Node::hoistPortNode() { self.parentNode().parentNode().children += self; diff --git a/extraplugins/migration/org.eclipse.papyrus.migration.rsa/transform/RSAToPapyrus.qvto b/extraplugins/migration/org.eclipse.papyrus.migration.rsa/transform/RSAToPapyrus.qvto index 2b9c756442d..2f762aaefb6 100644 --- a/extraplugins/migration/org.eclipse.papyrus.migration.rsa/transform/RSAToPapyrus.qvto +++ b/extraplugins/migration/org.eclipse.papyrus.migration.rsa/transform/RSAToPapyrus.qvto @@ -8,7 +8,7 @@ * * Contributors: * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation - * Christian W. Damus - bugs 461980, 496653, 497841 + * Christian W. Damus - bugs 461980, 496653, 497841, 498282 *****************************************************************************/ import org.eclipse.papyrus.m2m.qvto.UI; import org.eclipse.papyrus.m2m.qvto.NotationTypes; @@ -344,6 +344,14 @@ helper View::fail() : String { return ''; } +/** + * Unset the named feature of an object. + */ +helper OclAny::unset(feature : String) { + var eObject : EObject := self.oclAsType(EObject); + eObject.eUnset(eObject.eClass().getEStructuralFeature(feature)); +} + /** Generic mapping logic */ |