Papyrus GEFx Integration
The focus of this project is to integrate a GEFx Editor (Currently based on the GEF 5.x branch, available in Eclipse/Photon) with GMF Runtime and Papyrus
The idea is to provide an editor based on GEFx and JavaFX, while retaining the compatibility with existing Papyrus models (Semantic + Notation, CSS, Properties View, Model Explorer, GMF Genmodel...)
The project depends on GEFx (Currently, 5.0.2 / Photon.0 or 2018-09), Papyrus 4.x (Currently, [4.0.0, 4.1.0], Photon.0 or 2018-09) and E(fx)clipse ([3.3.0, 3.4.0], Photon.0 or 2018-09)
This project is still work-in-progress, and some parts of the code have been implemented a long time ago, while GEFx APIs were still moving a lot. Thus, these parts of the code may be disabled (Typically commented out) or broken. This is e.g. the case for Connections, as well as most interactions.
When everything is setup properly, you may open a Class Diagram from an existing Papyrus Model, via the Model Explorer: Right click > Open With > Diagram Editor (GEF4). If the Diagram only contains supported elements, here's what it might look like:
Side-by-Side in the same Papyrus Editor: GEF Legacy (Left), GEFx (Right)
Supported Diagrams & Elements
The editor is able to render the following elements:
- Compartments (Structure or List)
Connectors and Border Items are being refactored and may be broken.
Currently, only the Papyrus Class Diagram is supported, although older versions used to support StateMachines, Composite Structures and Components.
Most interactions have been disabled or broken (Or are simply missing), due to the (not so) recent GEFx changes related to Policies and Handlers. Partially supported interactions are:
- Move (But not reparent)
- Collapse/Expand compartment