|
Re: Migrating GEF 3 project [message #1753912 is a reply to message #1753866] |
Sun, 12 February 2017 09:23   |
|
Hallo Ken,
the different components and their scope are documented in the reference documentation at https://github.com/eclipse/gef/wiki. While the documentation does not reflect the merger of MVC/MVC.FX (see http://nyssen.blogspot.de/2017/02/gef4-1-gef-5.html) yet, it should be a good starting point.
Besides, with respect to MVC, the logo example can pretty much be used as a reference, as we have tried to incorporate all directly supported 'features' there. In case you need to look into details, I would recommend to take a look at it.
Concerning tutorials, Frank Benoit has externally provided one MVC tutorial based on GEF4 at https://github.com/frankbenoit/gef4.mvc.tutorial. It could help you to get in touch with the concepts, while not being based on the current 5.0.0 code base. We have internally prepared an MVC Mindmap tutorial (based on 5.0.0 M5) that is not yet available, but should be published before Eclipse Converge (I will announce its availability here).
Best Regards,
Alexander
|
|
|
|
Re: Migrating GEF 3 project [message #1754856 is a reply to message #1754827] |
Thu, 23 February 2017 09:21   |
|
Hi Ken,
there is no GEF4 1.x MVC example that does not use JavaFX. In fact, all GEF4 1.x / GEF 5 examples use JavaFX. Moreover, with GEF 5 we dropped the visualization-agnostic abstraction layer, so that GEF 5 MVC actually requires JavaFX.
There are many arguments for migrating to JavaFX. Just to name a few from the top of my head:
* HW accelerated graphics
* Scene graph API
* Animation support
* CSS styling support
* Media (audio, video) playback support
* Properties & Binding
* up-to-date technology (IMHO one of the best 2D rendering/GUI APIs available)
=> less boilerplate code
=> faster development
=> prettier graphics
Best regards,
Matthias
|
|
|
Re: Migrating GEF 3 project [message #1754923 is a reply to message #1754856] |
Fri, 24 February 2017 06:26   |
Ken Keefe Messages: 41 Registered: April 2012 |
Member |
|
|
I'm trying to dive in to adding GEF 4.1 to a plugin in my e4 RCP application. I've been looking at the org.eclipse.gef4.mvc.examples.logo.ui plugin (although I understand that is a 3.x plugin in order to work with the workbench). I added the org.eclipse.gef4.fx.swt plugin dependency to my plugin and the org.eclipse.gef4.fx.swt feature to my feature based product. When I hit add required, the product also added org.eclipse.gef4.common and org.eclipse.fx.runtime.min.feature.
To get started, I just wanted to display the canvas. I created a part and added this composite to it:
import javax.inject.Inject;
import org.eclipse.gef4.fx.swt.canvas.IFXCanvasFactory;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Composite;
import javafx.embed.swt.FXCanvas;
public class AEGComposite extends Composite {
@Inject
private IFXCanvasFactory canvasFactory;
private FXCanvas canvas = null;
public AEGComposite(Composite parent, int style) {
super(parent, style);
setLayout(new FillLayout());
canvas = canvasFactory.createCanvas(this, SWT.NONE);
}
}
This comes from the code in AbstractFXView. This compiles with no problem, but when I try to run the product, I get this error:
org.osgi.framework.BundleException: Could not resolve module: edu.illinois.mobius.atomic.advise [1275]
Unresolved requirement: Require-Bundle: org.eclipse.gef4.fx.swt; bundle-version="1.0.1"
-> Bundle-SymbolicName: org.eclipse.gef4.fx.swt; bundle-version="1.0.1.201609060946"
org.eclipse.gef4.fx.swt [1279]
Unresolved requirement: Require-Bundle: org.eclipse.gef4.common; bundle-version="[1.0.0,2.0.0)"
-> Bundle-SymbolicName: org.eclipse.gef4.common; bundle-version="1.1.0.201609060946"
org.eclipse.gef4.common [1278]
Unresolved requirement: Import-Package: com.google.common.collect; version="[12.0.0,16.0.0)"
at org.eclipse.osgi.container.Module.start(Module.java:444)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1620)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1599)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1571)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1514)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1)
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)
I'm not sure where to find the package com.google.common.collect. How can I resolve this error?
|
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.02347 seconds