diff options
Diffstat (limited to 'plugins/developer/org.eclipse.papyrus.def/xtend/aspects/impl/parsers/ParserProvider.xtend')
-rw-r--r-- | plugins/developer/org.eclipse.papyrus.def/xtend/aspects/impl/parsers/ParserProvider.xtend | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/plugins/developer/org.eclipse.papyrus.def/xtend/aspects/impl/parsers/ParserProvider.xtend b/plugins/developer/org.eclipse.papyrus.def/xtend/aspects/impl/parsers/ParserProvider.xtend index 03dc1d64c19..927e0195a6b 100644 --- a/plugins/developer/org.eclipse.papyrus.def/xtend/aspects/impl/parsers/ParserProvider.xtend +++ b/plugins/developer/org.eclipse.papyrus.def/xtend/aspects/impl/parsers/ParserProvider.xtend @@ -131,4 +131,23 @@ import xpt.providers.ParserUtils_qvto «ENDIF» ''' + override def getParserByVisualIdMethod(GenParsers it) ''' + «generatedMemberComment()» + protected org.eclipse.gmf.runtime.common.ui.services.parser.IParser getParser(String visualID) { + if (visualID != null) { + switch (visualID) { + «FOR node : editorGen.diagram.topLevelNodes» + «dispatch_getParsers(node)» + «ENDFOR» + «FOR node : editorGen.diagram.childNodes» + «dispatch_getParsers(node)» + «ENDFOR» + «FOR link : editorGen.diagram.links» + «dispatch_getParsers(link)» + «ENDFOR» + } + } + return null; + } + ''' } |