Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian W. Damus2015-02-11 22:48:29 +0000
committerChristian W. Damus2015-02-11 22:48:29 +0000
commita970bab6673faa4b184de307bc6f8b43b7c3dda0 (patch)
tree4837dfaa9b19589a07dd23cc2c9b58fe80fb080f /plugins/developer/org.eclipse.papyrus.dev.assistants.codegen/src/org/eclipse/papyrus/dev/assistants/codegen/generator
parent683c5eecdd2399f86e6a4bfbba01165da4a2dc61 (diff)
downloadorg.eclipse.papyrus-a970bab6673faa4b184de307bc6f8b43b7c3dda0.tar.gz
org.eclipse.papyrus-a970bab6673faa4b184de307bc6f8b43b7c3dda0.tar.xz
org.eclipse.papyrus-a970bab6673faa4b184de307bc6f8b43b7c3dda0.zip
Bug 451230: Modeling assistants customization for profiles
https://bugs.eclipse.org/bugs/show_bug.cgi?id=451230 Add a relationshipTypes subset of the elementTypes collection of the assistant provider to reliably determine which element types are relationships, because deriving this from the modeled connection assistants would omit element types for which there is no assistant. Update the assistants-model generators to reliably generate the relationshipTypes collection based on (a) links defined in the GMFGen model or (b) UML metaclasses conforming to Relationship in a profile. Re-generate the Class and Use Case assistants models.
Diffstat (limited to 'plugins/developer/org.eclipse.papyrus.dev.assistants.codegen/src/org/eclipse/papyrus/dev/assistants/codegen/generator')
-rw-r--r--plugins/developer/org.eclipse.papyrus.dev.assistants.codegen/src/org/eclipse/papyrus/dev/assistants/codegen/generator/ModelingAssistantProviderRule.xtend4
1 files changed, 3 insertions, 1 deletions
diff --git a/plugins/developer/org.eclipse.papyrus.dev.assistants.codegen/src/org/eclipse/papyrus/dev/assistants/codegen/generator/ModelingAssistantProviderRule.xtend b/plugins/developer/org.eclipse.papyrus.dev.assistants.codegen/src/org/eclipse/papyrus/dev/assistants/codegen/generator/ModelingAssistantProviderRule.xtend
index 2f5530fdf7d..d6e4ef71e3e 100644
--- a/plugins/developer/org.eclipse.papyrus.dev.assistants.codegen/src/org/eclipse/papyrus/dev/assistants/codegen/generator/ModelingAssistantProviderRule.xtend
+++ b/plugins/developer/org.eclipse.papyrus.dev.assistants.codegen/src/org/eclipse/papyrus/dev/assistants/codegen/generator/ModelingAssistantProviderRule.xtend
@@ -42,6 +42,7 @@ class ModelingAssistantProviderRule extends org.eclipse.papyrus.uml.profile.assi
// Popup assistants to create non-relationships
popupAssistants.add(type.toPopupAssistant)
} else {
+ relationshipTypeIDs.add(type.identifier)
connectionAssistants.add(type.toConnectionAssistant)
}
]
@@ -50,7 +51,8 @@ class ModelingAssistantProviderRule extends org.eclipse.papyrus.uml.profile.assi
def create createModelingAssistantProvider toModelingAssistantProvider(GenEditorGenerator editor) {
name = editor.modelID
elementTypeIDs.addAll(editor.diagram.validNodes.map[elementType?.uniqueIdentifier].filterNull)
- elementTypeIDs.addAll(editor.diagram.validLinks.map[elementType?.uniqueIdentifier].filterNull)
+ relationshipTypeIDs.addAll(editor.diagram.validLinks.map[elementType?.uniqueIdentifier].filterNull)
+ elementTypeIDs.addAll(relationshipTypeIDs)
popupAssistants.addAll(editor.diagram.validNodes.map[toPopupAssistant])
connectionAssistants.addAll(editor.diagram.validLinks.map[toConnectionAssistant])

Back to the top