Another week, another Swing links. Thanks to everyone sending me links – please keep it up! Also, at the end of this post I have a request for everyone to help me out, so please be sure to read it!
Here are some links regarding Swing and Java GUI’s you may have missed in the last week:
- Ken Orr at Exploding Pixels continues his series on skinning the scroll bar in Swing applications. This is part three, and whilst quite code-heavy, it shows how to plug into the Swing UI delegation framework via an extension of BasicScrollBarUI. For more context on this series, see parts one and two.
- Not content with one post, Ken Orr blogs about allowing one component to track the size of another component. His post includes easy to follow code that I recommend other Swing developers take a look at for future reference (if you haven’t already worked out how to do this).
- Kirill Grouchnikov blogs about improved support in his Substance L&F for very large fonts. He has screenshots which show his progress in this area.
- Wolfgang Zitzelsberger writes a blog post trying to clarify Z-ordering of components when painting in Swing.
- Elliot Hughes has a blog post explaining how to bind an action (such as pressing the enter key) to a JList. This is very useful, as there are a number of ways to do it, but this way seems the best and cleanest.
- Swing-FX blog has updated the fake application that has been a feature of a number of blog posts recently. This application is Swing-based with a focus on usability and design. In this update, a number of new components have been integrated, including color choosers, tag clouds, star ratings, ‘customize toolbars‘, etc. The source code is on display, as well as a downloadable project to get all source code.
- Lobo Browser 0.98.4 has been announced. The major news of this release is that it updates Lobo’s support of direct rendering of JavaFX source code, such that it is up to date with JavaFX 1.0.
- In other web browser related news, the Chrome Browser for Java (CB4J) has been announced. This is planned to be available for both Swing and SWT, and as stated on the linked post, “the licensing model of CB4J has not been fully defined, we are considering an open source version of CB4J as well as a low-cost, advanced version”.
- Charles Humble wrote in to let me know that he has an interview with Stephen Chin regarding WidgetFX. I mentioned WidgetFX in last weeks post, but this is another interview, and is a little more in-depth.
- Announced this week is that jSilhouette has joined the JFXtras project. The JFXtras project is an open effort to fill in the gaps in the current JavaFX library, whereas jSilhouette provides a collection of Java2D shapes that can be used in several modes, and now that it is part of JFXtras, these shapes can also be used in JavaFX. To allow for this immediately, both projects announced new releases.
- Swing links regular Alex Ruiz made a number of announcements regarding his FEST Java library that provides a fluent interface for functional Swing GUI testing. These include a post on how to test drag and drop in JavaFX using FEST, as well as announcements that the FEST developer team is growing.
- Jasper Potts has posted a blog discussing how he made the video for Devoxx/Parleys.com using JavaFX. This post is a good tutorial to anyone wanting to get an understanding of animation in JavaFX, with a lot of code, diagrams, and a Java Web Start link.
- Osvaldo Pinali Doederlein has posted his first impressions of working with JavaFX, in terms of the language, and the performance of programs written in JavaFX. He writes JavaFX Balls: the JavaFX version of the Bubblemark RIA benchmark, and makes available all related source code.
- Coming in just before I posted this weeks Swing links, Jim WeaverDean Iverson posted about how to do spotlight effects in JavaFX. As usual, he has included a lot of code samples.
That’s it for another week. Three weeks down, who knows how many more to go! Now that you have an idea of how Swing links is working under my direction, I’d love to hear your thoughts. Am I being too thorough, or not thorough enough? Do I include all the posts you’ve come across, or do I post too many links? Is my analysis too long or too short? I’d love your thoughts, as it’ll let me refine things.
Thanks, and have a great week!
Here are some Java GUI-related news items you may have missed in the last week…I hope you enjoy them. If you think I missed anything, let me know in the comments. Have a great week!
- Firstly a post I missed last week: Jacek Furmankiewicz has announced the availability of the Swing JavaBuilder PDF book that aims to provide a more thorough documentation of the project’s goals and features.
- Kirill Grouchnikov continues improving his flamingo JRibbon and substance projects, bringing the flamingo look and feel much closer to that of Office 2007. Behind the scenes on the mailing lists he and Andrey Eremchenko have been working very hard to bring the experience of JRibbon much more closer to Office 2007’s ribbon.
- Alex Ruiz continues his series on testing JavaFX UIs. This is part four, with the previous three available here (parts 1, 2, 3). This post focuses on automating the build process of a combined Java and JavaFX project using Maven.
- Speaking of Alex Ruiz, he has just announced the avilability of the FEST-Swing 1.0 release. FEST-Swing is a Java library that provides a fluent interface for functional Swing GUI testing. This library provides an easy-to-use API that makes creation and maintenance of GUI tests easy.
- James Sugrue interviews Stephen Chin about his WidgetFX project. WidgetFX is a desktop widget platform written in the JavaFX Script language. It can run widgets written in either JavaFX Script or Java.
- Ken Orr at Exploding Pixels writes about how he managed to write an image to disk, accessing it through the Mac OS NSImage:// protocol.
- Jim Crossley looks at the improvements made to Java Applets in Java 6 Update 10. Yes, I know this is old news, but I thought that this summary was pretty good, and provides a good amount of justification for anyone lingering on older releases to upgrade.
- Jasper Potts has posted a link to his JavaOne 2008 talk about the Nimbus look and feel. I have yet to use Nimbus in any of my Java projects, instead preferring to maintain the look and feel of the current users operating system. This has always been something that has confused me a little – how popular are the custom Sun developed look and feels such as Metal and Nimbus? Is it the best use of engineering resources?
- Are you interested in learning more about JavaFX? If so, Jim Weaver and Sang Shin are running a free ‘15-Week JavaFX Programming (with Passion!)’ online course.
- Jean-Francois Poilpret posts about best practices when doing layouts in Swing. This blog post does tend to focus on his DesignGridLayout layout manager, but even if you aren’t using it there are a number of good tips in this post that I recommend all UI designers/developers to follow in their own projects.
- With the availability of LGPL licensing being announced this week for QT, there is some discussion that Java may have just got a brand new components framework, accessible through QT-Jambi. Joe Walnes blog post was the first I saw discussing this. I definitely recommend giving the webstart link a try – it is actually quite impressive, although I’m not 100% certain of QT-Jambi’s licensing plans.
- Finally, all developers: heed this advice.
That’s it for Swing links this week, I hope you enjoyed it. If you have any links I missed or feedback (both positive and negative), please leave a comment or send me an email. Cheers!
Given that I am heavily engaged in the development of Java Swing-based applications, and the recent ‘freezing’ of Kirill’s blog posts regarding popular Swing news, I thought I would try my best to pick up the slack.
I think it is probably worthwhile that I quickly state that my interests are primarily in Swing, so I am not overly up with the play in other areas that Kirill frequently blogged about, such as JavaFX and Groovy. Regardless, I will try my best, and if you have any news, please post it to me at [email protected]. Without any further ado, here are some Swing links you might have missed in the past week:
- A few years ago the Swing team made Aerith, which demoed various cool things that could be done with Swing. This week the Aerith Netbeans project was announced by Julian Gamble. This project strips out the major components of Aerith, and makes them available to all Swing developers. There is also a number of videos which introduce you to this project.
- Jean-Francois Poilpret has announced the RC1 release of DesignGridLayout. Any new layout to the Swing world is generally much appreciated, given the lack of development of new layouts since Swing was first developed. I should also link to JGoodies Forms layout (which I use heavily), and MiG Layout (which I have yet to use).
- Speaking of layouts, Amy Fowler has posted a blog post about layouts for JavaFX.
- Alex Ruiz continues his blog series on testing JavaFX user interfaces with part 3 (part 1 and part 2 are also available). The testing is accomplished using his FEST Swing DSL-oriented Swing testing library.
- Osvaldo Pinali Doederlein has posted a blog post attempting to clarify JavaFX FUD that exists. I think he clarifies that Swing and JavaFX, whilst competing in some senses, have different focuses also – JavaFX can be far more lightweight, allowing for it to be used in mobile devices far more readily than Swing will ever be.
- And finally, everyones favourite blogger Joel Spolsky posted a blog about the wordy Java installation process. I agree that there is a job for someone within Sun to run through all these dialogs and try to simplify and clarify the message that Sun portrays to the outside world.