diff options
author | Christian W. Damus | 2015-02-11 22:48:29 +0000 |
---|---|---|
committer | Christian W. Damus | 2015-02-11 22:48:29 +0000 |
commit | a970bab6673faa4b184de307bc6f8b43b7c3dda0 (patch) | |
tree | 4837dfaa9b19589a07dd23cc2c9b58fe80fb080f /plugins/developer/org.eclipse.papyrus.dev.assistants.codegen/src/org/eclipse/papyrus/dev/assistants/codegen/generator | |
parent | 683c5eecdd2399f86e6a4bfbba01165da4a2dc61 (diff) | |
download | org.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.xtend | 4 |
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]) |