This week there is a rather large amount of JavaFX news, but very little Swing news. I guess this is a sign of the times 🙂
- Coming into my feed reader after posting this blog, I thought I’d quickly add that Ken Orr has a blog post about creating a custom HUD-style combo box.
- Alexander Potochkin has blogged that the Swing Application Framework is back again. For more background, check out this interview with Hans Muller, back when the project was first approved. SAF has had a turbulent life, most recently with Karsten Lentzsch disapproving of its current state, and whether or not it actually will make it into Java 7 is yet to be seen.
- InformIT has a post discussing playing media in Java using JMC. All code samples are written in Java, not JavaFX Script.
- Regarding Swing 2.0, in the 13/02/09 podcast of This Ain’t Your Dad’s Java!, Sun’s Java marketing team has briefly discussed the recent discussion around Swing 2.0. You can listen to the podcast here if you have iTunes (skip forward to around the 5:00 mark. It continues until around the 9:15 minute mark). Their general perspective was that people wanting Swing 2.0 are trolling, whiney and fanboys. Also, despite their protests that Swing is strong, they inferred a number of times that Swing is on its way out. I found their means of communication to be somewhat condescending and rude, but perhaps that’s just me. For marketing people who are putting out the opinion of Sun, I found this to be disappointing.
- Michael Heinrichs continues his best practices for JavaFX mobile applications with part 4. This post has two tips: use the prescaling functionality and use background loading. I referred to the previous three parts in last weeks post, but for quick references, here they are again: parts 1, 2 and 3.
- Sergey Malenkov has a small code sample of how to use text reflection to add the overused reflection effect to a digital clock. My advice, use reflection with caution, and the simplicity of adding reflection scares me – JavaFX GUIs presently look like toys without the need for over the top reflection!
- Osvaldo Pinali blogs about his improvements to JavaFX Balls, which implements the Bubblemark animation test. He has managed to port it to work on mobile devices, and whilst he has published a webstart demo, the link isn’t presently working.
- Simon Brocklehurst has a blog post titled ‘JavaFX eats its own dogfood‘ that talks about a simple application that lets you manipulate rectangles, and see the resulting JavaFX code. There is a webstart link that you can use to run it.
- There is a brief overview of how JavaFX handles (or ignores) NullPointerExceptions. Despite his requests for a discussion, there doesn’t appear to be any comments.
- Jan Erik Paulsen has an opinion piece on JavaFX, claiming that Sun is pulling a ‘Netscape rewrite’ with JavaFX.
- Per Bothner has two posts about writing a read-eval-print loop in JavaFX. A REPL (also called a command shell) allows you to type in expressions, have them be immediately evaluated, and the result displayed. This is very useful for experimenting with or learning a language.
- Johan has a post about creating a JavaFX asynchronous chat client.
- As always, Josh Marinacci (@joshmarinacci) is keen that you check out JFXStudio for lots of cool JavaFX samples.
Wow – it’s March already – where does time go? Here are the links from the last week that I think were important – as always, email/twitter/courier pigeon me any news that you think is relevant. Have a great week!
That’s it for this week! A very sparse news week, so if I’ve missed anything, please let me know! Have a great week.
Another quiet week, and one in which I have been somewhat distracted with SCJP study (exam on Wednesday!). Despite this, below is the important news for the Java desktop that has occured in the last week.
- Michael Galpin, a software architect at eBay, has posted an article on IBMs developerWorks site that discusses how to create mashups with JavaFX. I would say that this would be very useful for JavaFX developers out there wanting to get their head around connecting to web services, and parsing the data coming from them.
- Josh Marinacci, of Sun Microsystem, has set up a new website, JFXStudio, that aggregates a number of blogs related to JavaFX development. Its focus is on showing demonstration programs and the associated code. This will be a good resource for JavaFX developers!
- Speaking of Josh Marinacci (his ears must be burning), RIA Weekly had him as a phone-in guest on their latest show, where he discusses the current and future state of JavaFX. It’s worth listening to if you have a moment.
- Stephen Chin has announced JFXtras 0.3 has been released. This release adds support for JavaFX 1.1, plus includes a JavaFX version of MigLayout for doing layout of JavaFX Nodes. Because JavaFX 1.1 is not binary compatible with JavaFX 1.0, you will have to upgrade to this release if you want to use JFXtras for JavaFX 1.1 development.
- There is an article on Wikia that discusses how to add Swing components into JavaFX applications. This is very good and clear, focusing on the necessary code required for each component.
That’s it for this week! Now, back to my study – two more days to go 🙂 Have a great week!
Another week, another Swing links of the week, from now on known as Java Desktop links of the week to more properly encapsulate anything Java and GUI related. If you don’t like the new name, let me know what you’d rather have it known as! As always, send me your news if you have any. All my contact details are to the right. This week was relatively quiet on all fronts other than JavaFX, given the release of JavaFX 1.1. Anyway, on with the news.
- Ken Orr has announced the release of Mac Widgets for Java 0.9.4. You can check out the full list of enhancements and fixes, or just browse the API. Also, you can see examples that use these new widgets.
- Alex Ruiz announced the release of FEST-Reflect 1.1, a fluent interface based API for simplifying the usage of Java Reflection, resulting in improved readability and type safety. It supports class loading, access to static inner classes constructors, methods and fields, and more!
- Kirill Grouchnikov has been very busy, announcing new releases for his Substance look and feel project, his Flamingo components project (including Ribbon component) and the new release of an animation library called Trident, which evolved out of his work for Substance.
- Of course, as mentioned already, JavaFX 1.1 was released this week. The primary improvement in this release is support for mobile devices, but there are a number of changes that you’ll need to be aware of. Read the release notes for more details.
- Because of the changes, Stephen Chin posts about how to migrate your JavaFX applications from previous releases onto the latest 1.1 release. This document will be invaluable to JavaFX developers wondering how to migrate, so give it a read!
- An interview (by the Java Posse) with members of the JavaFX team has been posted on Parleys.com which was recorded at Devoxx. It’s a very good overview of JavaFX and lets you see the thinking behind it by some of the Sun developers.
- Jim Weaver has been very busy in the past week, posting twice about JavaFX bindings and KeyEvents. His first post gives examples for JavaFX 1.0, and then he subsequently updates the post for JavaFX 1.1.
- Yakov Fain posts about his impressions of JavaFX, and in the process builds a demo Pet Store application, complete with video demonstration, although I can’t see any mention of the code being available.
- A new part of the ‘Jump into JavaFX’ series has been released. In part 3, the focus is on the basic APIs. Previous parts focussed on setting up NetBeans and understanding the SDK, and a guide to scripting in JavaFX, from language fundamentals to data binding.
- Carl Dea posts about JavaFX sequences and predicates. His post is clear but very code-heavy, so for those of you that learn by reading code, dive right in!
- Piliq.com has an interesting blog in general for people interested in JavaFX. The posts mostly centre around discussions about physics in JavaFX, so if you’re interested in adding physics to your JavaFX demos/programs(?), please check out that blog.
Another week, another Swing links…..A fair bit happened this week, in both the Swing and JavaFX camps, so let’s get into the news:
- I started a Swing 2.0 discussion that garnered a huge amount of discussion (thanks to everyone!). It had the desired effect of capturing the attention of people at Sun – I have heard from a few internally that a response is due to be released this week. We’ll wait and see what they have to say – I’ll make a special post as soon as I find out.
- Jesse Wilson announced, after 2.5 years of development, that Glazed Lists has reached version 1.8.0. The release notes are also available for more detail.
- Kirill Grouchnikov announced new release candidates for both his Substance and Flamingo projects. These releases are now ready for use in Swing applications, and so if you’re keen to help Kirill out, give these projects a run through on your projects, and send feedback to the appropriate mailing list.
- Antonio Santiago wrote in his blog about how he has achieved mixing heavyweight and lightweight components in the latest early access release of Java 6 (update 12).
- Ken Orr posts a blog about drawing text around its visual centre. As per usual this post is very helpful, and I recommend anyone doing text layout in Swing (I would say most people) to give this article a read.
- The LimeWire blog has a discussion on the benefits of using MigLayout. It’s a very good introduction to the layout manager, and might be reason enough to many readers to switch to MigLayout for their next project.
- Rémy Rakic posts about his Scenile project which integrates scenario (the scenegraph powering the JavaFX runtime) with project nile (the JavaFX production suite). It loads fxd/fxz files and creates the appropriate scenario objects, fills the properties, creates the scenegraph and returns it to you. After that, its work is done and scenario takes over to render, animate, etc.
- Jasper Potts posts in his blog a video of Richard Bair and Martin Brehovsky presenting an hour long overview of JavaFX, including the JavaFX Language, Scene Graph and Animation.
- Stephen Chin posts in his blog a tutorial on using the Calendar widget (which comes as part of WidgetFX).
- Geertjan Wielenga posts an example of integrating JavaFX into the NetBeans platform. This example can be extended trivially to demonstrate how to integrate JavaFX into Java-based applications.
- Inyoung Cho and Cindy Church, in video form, describe the JavaFX Scene Graph and demonstrate how it is used by running a sample JavaFX application in NetBeans for JavaFX.
- After Yakov Fain posted that he intends to post code samples of JavaFX being used to create proper applications (instead of cute demos), Jim Weaver posts a demo of such an application built using JavaFX. Despite this, in my opinion Jim has not proven that JavaFX can be used to create proper applications – what I see in his demo is still a cute application that does in no way really resemble a traditional application. So, I’ll put out the call – can anyone create a JavaFX application that looks and feels like an enterprise application? I say enterprise because the last thing enterprise customers want in many circumstances is cute – they want consistency and visual integration with other applications.
- New comer to JavaFX blogging, Eric has put up two code-heavy blog posts. His first post is about perspective transforms with JavaFX. This post is taken a step further with the image being transformed by a drag handle bounded to a slider. His second post is about supporting drag and drop in JavaFX. His demo code allows for a user to drop a txt file into the view to render the text onscreen.
- James Britt, a developer on the Monkeybars project is interviewed about the release of version 1.0 of Monkeybars. To quote James, “Monkeybars is a JRuby MVC framework that sits on top of Swing. It doesn’t wrap Swing per se, but instead presents view logic (encapsulated in Swing classes) separate from controller and model logic (in Ruby). In that sense it exploits the freely available, high-quality WYSIWYG Swing UI design tools while freeing you to develop in Ruby”.
That’s it for another week! Hope you are keeping well, and for all you people on the other side of the world, I won’t remind you that here in New Zealand, the summer weather is lovely. Until next week – happy swinging 😛