Its always nice to see new Swing Look and Feels. Nice looking new theme for Synthetica. Link: Synthetica BlackEye Highlights
Synthetica is based on same Synth Look and Feel that Nimbus is. There are some very neat features which we are supporting in JavaFX like shaped windows and smart backgrounds. Its really nice to seem them available to Swing developers.
I just saw a demo today of a new corporate trading application that uses a Google-like look and feel inspired by the Chrome browser and by Google’s web apps. Is there any Swing look and feel designed to mimic the Google look and feel?
Unfortunately they haven’t solved Synth limitation that disabled menu items can not be selected.
I tried the Synthetica BlackEye with webstart and it looks sooo marvellous. it’s a pity it is only for commercial use, i wish there was an open source laf that came close to this beauty…
My current favourite (apart from native OS X which is quite nice) is definitely Nimbus, excellent job! How difficult would it be to create something with Nimbus that mimics the (nearly) black style of the Synthetica BlackEye? Inverting a screenshot of Nimbus comes close, but then you have the light directions inverted and a bit too much orange/beige parts.
All this is cool, but there is something left for practical business usage:
Our customers wish to see easily, which edit box is focused. Nimbus already paints a small unapparent border for focused controls. (FormattedTextField[Focused].borderPainter or TextArea[Focused+NotInScrollPane].borderPainter or TextField[Focused].borderPainter). Changing nimbusFocus color has no effect. Other software change the backcolor of focused controls to attract attention. Any way to do this in Nimbus? Any sample implementation for such function?
Nimbus does look good, however for some reason I get the impression that it is slower than Metal. At least on Ubuntu. Is this just my impression? If it is so, could Nimbus performance be improved?
Here is another reference : http://wiki.netbeans.org/FaqUsingMetalLFForPerformance
Dear, your blog is very greate! i like it!!
I’m Diego and i win javafx coding challenge (student) in 2009. I would like show you my new project and ask your opinion!
You can find it in this blog: http://blogpolifemo.blogspot.com and all information in this page:
http://www.facebook.com/home.php?#!/pages/Polifemo/164688860221212
contact me by email!
bye!!
Hi, thanks for your work on Nimbus – it’s a nice looking LaF.
However I’ve run into issues with using Painters in a way that works across Java 6 and 7, with the different packages. Under Java 6, I can retrieve the nimbus painters, and cast to com.sun.java.swing.Painter to allow me to paint with them. However this fails with a ClassCastException under Java 7. Is there any way to bridge this gap?
To answer my own question, it can be done with reflection – I’ve put together a simple wrapper to delegate to either a com.sun.java.swing.Painter OR javax.swing.Painter, without actually statically referencing either class. This works on at least OS X Lion Java 6, and Ubuntu 12.04 OpenJDK 7. In case the paint method cannot be found, the painter logs a warning and doesn’t draw.
I’m sure there is a more elegant solution, I’d love to hear if so!
Sorry, forgot to link to file:
http://code.google.com/p/jpropeller/source/browse/trunk/jpropeller/src/org/jpropeller/ui/impl/PainTer.java
All com.sun API is not guaranteed to be compatible between versions. So if you are using then its at your own risk. If you have to use then version detection and reflection is only way I can think of.