Eclipse PMF focuses in fact on high level presentation modeling concepts on GUI by ignoring the displaying technology artifacts such as appearence, layouts and data binding support. It allows each technology to make its specific connection with this framework.
The purpose of this framework is to provide the basic functional concepts of user interaction in a PIM level UI modeling language. The language can be extended in two ways:
- Higher level patterns can be defined using PMF itself and used as language extensions
- Transformations/Generators from the PIM level model to specific UI technology platforms
Each displaying technology such as XUL, eclipse SWT/Jface/workbench, JSF, SWT, Swing, GWT, Ajax, Silverlight or others, can extend this framework to implement a specific generator for producing executable codes in Java or in declarative language.
Precisely, PMF provides following components:
- An EMF-based foundation that covers the basic functional concepts of user interaction.
- Examples of higher level patterns like Master/Detail using the basic PMF concepts
- Template engines' integration for code generation via EGF
Two integrations as demonstration samples are proposed (integrations with other UI solution will be explored after the first release):
- Eclipse XWT for eclipse
- Web application via Angular JS
This framework is not a specific UI framework for a displaying technology, neither a specific UI Markup language. It is a high level modeling framework to design the data presentation scenario/pattern and user interactions.