Bug 372171 - [GEF4] Investigate support for Eclipse 4.x Application Platform
Summary: [GEF4] Investigate support for Eclipse 4.x Application Platform
Status: NEW
Alias: None
Product: GEF
Classification: Tools
Component: Misc (show other bugs)
Version: unspecified   Edit
Hardware: All All
: P3 normal with 9 votes (vote)
Target Milestone: ---   Edit
Assignee: gef-inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on: 491750
Blocks:
  Show dependency tree
 
Reported: 2012-02-21 17:27 EST by Alexander Nyßen CLA
Modified: 2016-04-15 01:53 EDT (History)
17 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Nyßen CLA 2012-02-21 17:27:09 EST
When refactoring Zest and GEF (MVC) it has be ensured that both frameworks become directly usable in the context of the new Eclipse 4.x Application Platform (without having to stick to the 3.x compatibility layer). While there might be additional issues involved, this at least implies that those parts of the current code base, which have direct dependencies to the Eclipse 3.x Workbench API, are cut free and transferred into separate plug-ins.
Comment 1 Fredrik Attebrant CLA 2012-09-03 04:03:23 EDT
Any update on this work?
Comment 2 Phil Beauvoir CLA 2013-03-23 11:03:11 EDT
Is this still planned?
Comment 3 Alexander Nyßen CLA 2013-03-24 19:48:53 EDT
Yes it is. However, we are not yet at a point where we can replace/migrate GEF (MVC), where this will then be an issue. Up to now, we are concerned with migrating/replacing the Draw2d and Zest related parts of GEF. You can find further information on the wiki pages: http://wiki.eclipse.org/GEF/GEF4.
Comment 4 Alexander Nyßen CLA 2014-08-20 16:40:40 EDT
As demonstrated by the standalone examples we provide for MVC.FX and Zest.FX, both frameworks can be used even outside of the Eclipse UI. As such, direct usage within the Eclipse 4.x Application Platform should actually be possible. We should investigate whether we should provide (a possibly very thin) integration layer as we currently do for the 3.x workbench, or whether that is not needed (because everything could already be performed via respective bindings).
Comment 5 Alexander Nyßen CLA 2015-05-16 12:18:22 EDT
Some update on this one:

The org.eclipse.core.commands dependency of the MVC, MVC.FX, and Zest.FX bundles seems to be the only one from our standalone bundles to a bundle contained in the compatibility layer. To achieve the pure e4 integration goal, we would thus at least have to investigate, whether this dependency could be replaced with some pure e4-based counterpart.

The MVC.UI, MVC.FX.UI, and Zest.FX.UI bundles, which realize the Eclipse integration for the MVC.FX, MVC.FX, Zest.FX bundles in addition specify dependencies to org.eclipse.ui, org.eclipse.ui.views, and org.eclipse.ui.workbench (Zest.FX.UI only), which seem to be part of the compatibility layer as well. IMHO this seems to be tolerable as a starting point (pure e4 applications would have to avoid them).
Comment 6 Alex Tugarev CLA 2015-08-18 06:02:33 EDT
The 'org.eclipse.core.commands' is not part of the compatibility layer, instead it is used in Eclipse 4 Applications directly. Its only dependency is 'org.eclipse.equinox.common'.

Have a look at 'org.eclipse.e4.ui.internal.workbench.addons.CommandProcessingAddon' from 'org.eclipse.e4.ui.workbench', which consumes commands in the model (from ECommandService) and feeds them into the core command service (CommandManager).

By the way, JFace also depends on 'org.eclipse.core.commands'.

Apparently MVC, MVC.FX, and Zest.FX can be used in pure Eclipse 4 Applications.
Comment 7 Alexander Nyßen CLA 2015-08-18 06:40:32 EDT
Thanks for clarifying this, Alex. That means we will only have to investigate, whether the UI-integration we provide can be adopted to use pure e4 mechanisms.
Comment 8 Alexander Nyßen CLA 2016-04-15 01:53:05 EDT
An e4 port of the MVC logo example has been produced as of bug #491750. We can probably infer from it, how the UI integration could be adjusted (if required at all).