We are redesigning a few of our applications to a new custom framework. Now we want a stage to reuse the Eclipse RCP application GUI and redesign the backend (without using Eclipse RCP framework). So we can easily switch the GUI part to JavaFX. Is it possible to only use the GUI parts of the Eclipse RCP framework without using the Eclipse RCP framework?
We don't want all the Eclipse RCP configuration crap in our new projects and we only need the full GUI layer.
Everything in an Eclipse RCP is an Eclipse/OSGi plug-in and depends on the OSGi plug-in system to work.
If you depend on existing 3.x compatibility mode plug-ins then you are stuck using the 3.x style RCP.
If you don't depend on 3.x mode plug-ins you may be able to use the e4 style RCP which can set up to look any way you like and can be written using JavaFX instead of SWT using the e(fx)clipse code.
No, you cannot use the Eclipse RCP framework without using the Eclipse RCP framework. You might want to look at e(fx)clipse which allows you to sue the Eclipse RCP framework with a Java FX layer
Related
I am going to develop a Java application using Eclipse RCP, In fact I am new with this framework. My main problem is about this two issues:
If RCP plugins (if I am right) supports RTL UI and Languages?
Is there any set of UI components to be able to use them in desktop application? such as ribons and so on which exists for other languages like C#
I have searched a lot but could not find any good sources to answer these questions,
Thanks very much
An Eclipse RCP gets the same set of controls that Eclipse itself uses (since Eclipse is just an example of an Eclipse RCP). These are the SWT and Jface controls plus things Eclipse builds on top of those controls.
SWT support RTL, LTR, and mixed directions. Eclipse RCPs and plugins can support multiple languages with different directions (including different icons for each langauge).
For Eclipse e4 style RCPs you can also use JavaFX.
Some time ago I created a graphical editor with GMF ( xsd->ecore->emf->gmf).
Additionally I created plugins with different views, launchers (debugger) and more.
All those plugins were created with Eclipse Helios.
Now, I would like to create a RCP application out of my plugins.
I did a lot of internet research but still do not really understand how to begin.
I read this tutorial (http://www.vogella.com/tutorials/EclipseRCP/article.html#plugin_creatinge4) but I am still not sure what to do.
If I would do as told in this tutorial, I would have to build all the windows, editors, menus and so on manually, correct ?
And if so, how to get those default eclipse features in my RCP application, like: Create an empty project, starting my "New Diagram" Wizard, double click the diagram file in the project view to open the editor...and so on...
Do I really have to build all those features manually with the Application Model file ??
I really could use some pointers to the right direction.
Thanks in advance!
The tutorial you have found is describing the new e4 API. This does not support a lot of the older 3.x compatibility APIs so it is not suitable for using to build a RCP which uses plugins based on 3.x. The e4 API is good for building new RCPs which don't use 3.x plugins.
Instead you can still build a 3.x style RCP, see this tutorial for more details on doing that. The 3.x style RCP will continue to be supported for a long time.
I have existing java application where GUI had mainly built using Swing and prefuse API (http://prefuse.org/).
I want to develop eclipse plugin for this application. I have read in vogella tutorial that SWT is prefer to use for plugin development.
My problem is that if I should use SWT, then how can I convert each swing and prefuse API component to SWT?
PS: If I use existing GUI in my eclipse plugin project, then when I run the plugin as "Eclipse Application", it display GUI outside eclipse which I am not sure is correct behaviour for plugin development.
The http://wiki.eclipse.org/Albireo_Project might help:
"The Albireo project builds on the SWT_AWT bridge to provide more complete Swing/SWT integration, resulting in a better "out-of-the-box" experience and more credibility for the entire notion of Swing/SWT integration."
Extend the SwingControl and implement createSwingComponent() and getLayoutAncestor().
http://eclipsesrc.appspot.com/jsrcs/org.eclipse.albireo/org.eclipse.albireo.core/src/org/eclipse/albireo/core/SwingControl.java.html
Can somebody help me on how content assist works in eclipse and how I mimic that functionality for my desktop java application?
Thanks!
Eclipse is built on SWT and JFace, in other words, it's part of the UI toolkit Eclipse interface is based on. Since you have a average desktop application I assume your program's GUI is Swing and I don't know about content proposals in the Swing toolkit.
Some links on the Eclipse Platform (<- overall name for technologies like SWT, JFace, more general plugin development):
Eclipse Wiki: JFace
Eclipse Wiki: JFace UI Framework -> Field Assist
Can I use Eclipse RCP framework with google's window builder pro for desktop application development.
I also want to know more about Eclipse RCP, what are the advantages when comapared to swing.
Yes you can use WindowBuilder Pro for Eclipse RCP development. Window Builder Pro has great support for SWT, JFace, and Eclipse RCP specific stuff like Views and Perspectives for example you can create perspectives in visual editor.
For second questions
You can directly compare Swing and Eclipse RCP, Swing equivalent is SWT, and they have comparable features. SWT has better OS native widgets look.
SWT is set of widgets that you can use. On top of SWT JFace is built- JFace is set of high level frameworks for MVC, wizards, databinding, working with table/treeview,combos ...
On top of SWT and JFace is Eclipse RCP is built which provides application framework for plugins, with support for extensions, perspectives/views,actions, menus, and basically for extendability.
As your first question, yes, WindowBuilder Pro can create SWT code.
As for the second, there are a lot of comparisons on the pros and cons of Swing vs RCP, and the core verdict is that It Depends. Personally I would reccomend going thr RCP route for any major work, but keep in mind that it's a complete stack and not just a widget toolkit, and the things you will need to learn are correspondingly more.