Good idea / Bad idea (/other ideas ?) - eclipse-rcp

I have recently been asked to make an Eclipse Rcp view that would be "pretty".
In that purpose I had fist looked at Java2D (after my boss advised me so) before the client's query turned to be more like
"It would be smooth if you could do some flash or something ..."
From there JavaFx seemed appealing to me however I never had a chance to use it before. I then were wondering if before to dive "head first" anyone (who would have preferably used it seriously) had any advice, warning or any constructive comment to do about using this product in an RCP view (so based on SWT).
I really long to know if JavaFx meets it's promises.
Thanks in advance and have a good day !
[EDIT]I dont want an Eclipse Fancy skinning or to make views appear with light effects or in a CompizFusion way,
What I want is to display fancy animations and pretty visual effects within a specific view that will be called sometimes. (Sorry I wasn't clear in the first place :s)[/EDIT]
*I'll pass on the "What's pretty and what's not ?" and other "Tastes are a personnal thing" debates, here "pretty" simply means to qualify a view containing convoluted transparancies and subtle animations ...

Eclipse RCP can also be customized in the way it looks, e.g. when you dont want to have the Eclipsi-L&F. Its called Presentation API, I saw a quite amazing UI once in a presentation but I cannot find it right now. Anyway, I just want to point you the direction, since I personally havent used this API (yet).
There are also some "skins" available for download.
Nebula
MP3 Manager
EDIT: Just found the slides. It goes quite into detail, but when you have a look at the last slide...it doesnt look like the Eclipse you know :-)

JavaFX uses Swing as default layout engine, so you'll gain nothing using it rather than Java2D.
On the other hand, using either your home-grown toolkit or Swing is generally a bad idea when working with Eclipse, as it already embeds the SWT toolkit. The main advantage of SWT over Swing is that it use the OS native widgets. Using another toolkit will lead to the following issues:
Poor integration with Eclipse look&feel.
Poor integration with Eclipse views and editors management.

The answer is simple. No, you can't use JavaFX yet. The problem is that JFX script can't be embedded into Swing nor Eclipse SWT. We already know about such an issues. (The is some kind of hack how to embed JFX into Swing APP only.)

Related

Create an application GUI by Javafx

everyone.
My name is Nick, a totally newbie to Javafx. Recently, our team has been running a project and we would love making GUI by Javafx. I am being stuck at the moment. The following is what's in our imagination:
After reading some documentations, here what I've got:
I really appreciate if someone could help give me some hints to get things done. This is an academic project. Thanks so much for your valuable time.
Best Regards
I would recommend using Scenebuilder tool. It is a WYSIWYG GUI editor provided especially for the purposes like yours.
Look at this links.. using this you don't want design manually.. with netbeans you can design just by drag and drop content what you want.
Scene builder is also good tool to design your system at a stretch.
JavaFX Scene Builder
A Visual Layout Tool for JavaFX Applications
First of all take a look at this. so you can get through easily in javaFX.
Java GUI Applications Learning Trail
After looking all this.. then any problem occurs then ask here..
Thanks..

Porting wxPython to SWT/JFace

I use some nice controls/widgets in a simple wxPython app I developed taking inspiration from the sample demo. Call it my prototype.
I am now ready to migrate my prototype to Java/SWT.
Some controls are just not there.. or.. at least.. I could not find them.
Is there anything else in the FOSS world of SWT apart from the usual:
SWT/JFace
Nebula
Opal
For a while I did not know about Nebula nor Opal at all. Now I do. At least you know I have done some legwork before coming here. Could it be that I am still oblivious to some fundamental set of extensions to the core SWT?
What I am doing right now is building a table, on the left - controls I use from wxPython, on the right - equivalent controls I'll use in Java/SWT.
The right column still has some gaping blanks..
From the screenshots in wxWidgets I didn't saw anything, that is in SWT missing. If you share the gaps, we might be able to help you to find the right tool for you. There are many frameworks that contribute specific UI, that might be used. For example GEF,BIRT or Zest.

A layout implementation such as Eclipse

I have been working on a project model and pretty much completed it. Now I must implement the view of the project. I like eclipse view layout very much and tried to implement like this but I couln't. And then download source code of eclipse but couldn't find my specific code snippet in all of the source code. I mean I want to take basic layout implementation like eclipse Coolbar,ctabfolder and events. any suggections ?
Thanks.
If you like the Eclipse look and feel and the components used, you should have a look into the technologies used with Eclipse:
SWT is the GUI toolkit. It differs from Swing in that it uses the native widgets, if possible. This makes an application using it behave more like a native application than Swing does, which has its own set of components. You will find the raw components that you mention here.
JFace is an application framework based on SWT. It provides higher level conceptual components.
Eclipse RCP is a platform for building application. It takes away some common tasks of application building but, of course, you need to learn the concepts first.
Swing has similar components, but does not use the native widgets. It draws them itself. In my opinion Swing is easier to learn and to use but the results of SWT are often nicer - you can often "feel" that a Swing application behaves not completely right. It is better if Swing applications do not try to mimic the native look and feel to avoid the uncanny valley effect. So expect your resulting application to look and feel different.
There are more documentation and third-party libraries available for Swing, for example the very nice Netbeans RCP that let's you easily build applications.
What you are looking for is a docking framework. What the best framework is is open for debate.
You might have a look at this question for a list of popular frameworks

drag and drop environment to start developing in gwt

is there any drag and drop environment to work with GWT widgets.
or any user friendly IDE or plugin on IDE's
i remember using some thing like MyEclips for developing Hibernate was better then working with .xml files.
The Eclipse-based WindowBuilder Pro supports GWT and is now free, courtesy of Google.
I tried GWT Designer, http://code.google.com/webtoolkit/tools/gwtdesigner/index.html, but I think for now I'll stick to code the guis myself by hand.
The main reasons are:
Sometimes, it takes a little while (longer than I can wait) to load the design mode.
Sometimes it breaks after you modify code underneath.
Sometimes, does not do what you expect it to do.
I would suggest you giving it a try and see if it works out for your needs.
In my opinion, the experience using it has been frustrating than encouraging.

Time to develop an option in Eclipse to modify a Java file source

I'm evaluating the possibility of developing an Eclipse plugin to modify the source code of some Java files.
The Eclipse plugin should:
add one menu option or context menu option to launch the modification process.
add a key binding
only alter the UI in that way when an editor has been open on a Java file.
the modification process would not open a dialog, or maybe, a very simple one.
the modification process would traverse the AST of the Java file and would modify it.
Considering that we have no experience with Eclipse plugins and we need spend time in reading docs, how much time do you estimate in developing that plugin?
Thanks in advance.
It's really not that difficult at all... I had students in my design patterns class doing it for an assignment (adding/removing javabean getters and setters)
See http://help.eclipse.org/ganymede/topic/org.eclipse.jdt.doc.isv/guide/jdt_api_manip.htm
[EDIT: added the following article reference]
And a great article on it at http://www.eclipse.org/articles/article.php?file=Article-JavaCodeManipulation_AST/index.html (from 2006 -- there may be a few API changes since)
Yes, writing plugins takes a little getting used to, but so does any API.
And you can modify the AST -- see the page I reference above.
(I should note that the above link is from the eclipse help, which can also be accessed via Help->Help Contents inside Eclipse -- there's a lot of good info in there, but it's just a starting point)
You'll probably spend quite some time cursing the complexity of the eclipse plugin system. There are some example plugin development projects that can be very helpful if they cover the area you're working in.
I'd say you're looking at 2-4 days of work, spent mainly getting familiar with the platform - someone with a lot of experience writing eclipse plugins would probably take no more than an hour.
However, your step 5 could be tricky. I don't know how easy it is to access and change the Java AST; my experience is based on developing an editor plugin for an exotic file format rather than Java code.
Well, the four first points are easy to achieve, even by monkey coders that look at the eclipse PDE documentation shipped with Eclipse. These can be achieve in 1 day of work, maybe 2.
The hardest point is really the fifth one and the kind of modification you expect to do. Acting directly on the editor content is simple, accessing the editor internal AST and modifying it is really a bigger challenge and I doubt that it could be achieve in less than a week by unexperimented people (it can take longer, depending of what kind of modification you want to apply).