August 21st, 2008
GMF, the Graphical Modeling Framework supports the creation of graphical editors. For beginners it is very hard to learn. The included wizard has a lot of disadvantages, but it is o.k. for a start. Furthermore the GMF models are very complex and hard to handle. There are different solutions to shorten the time needed for creating a graphical editor:
- … supports the development of GMF based editors using annotations in your metamodel (
*.ecore) – preferably generated using Emfatic. Dimitrios Kolovos has written a nice tutorial and created a screencast.
- Like in EuGENia – annotations in the metamodel are used to create a graphical editor. It is part of a complete tool chain for model transformations based on ATL. It is used for bootstrapping parts of ATLflow itself.
- … uses a completely different approach. The GMF models are created from template-like tree structures. A template consist of GMF elements – just ready for duplicating for each metamodel element it is associated with. It is recommended to have some experience with the GMF models, before starting with GenGMF. I developed it to support the creation of editors with a lot of metamodel elements.
Both annotation based solutions are not able to cover all the features possible with GMF, because the GMF models are created using the information stored in the metamodel. The template based approach GenGMF offers a lot more flexibility at the cost of a more complex model.