Here are some Swing links that you might have missed during this week:

  • Alexander Potochkin continues his work on the advanced overlay functionality. His latest entry describes a solution for disabling Swing containers, including blocking mouse events, focus transitions and keyboard actions. While the proposed solution uses a clever trick (calling JComponent.print() instead of JComponent.paint() to address the double-buffer quirks on some containers), you’ll find some interesting discussion in the comments section. Some applications will result in incorrect painting on components that provide custom implementation of print() and the specific print methods like printComponent().
  • Ben Galbraith kicks off an interesting discussion on the quality of AWT font rasterizer. I don’t agree with his recommendation of choosing the UI font based on the rendering quality (especially since the quality is very subjective). If anything, the font family, size, style and rasterization is what makes Swing applications stand apart (and not in a good way) from the native applications, even more than colors and skins do. This is why the native text rasterizer is so important, especially coupled with platform-specific font policy lookup.
  • Jeff Friesen writes an overview of the Balloons Tip project at java.net.
  • Patrick Gotthardt announces the first beta drop of version 1.1 of Pagosoft look-and-feel.
  • Vincent Cobra announces his new project that aims to provide a file chooser component based on the Apache Commons VFS library.

Here are some Swing links that you might have missed during this week:

  • Dusan Pavlika writes about a Master’s thesis by Jan Taus on skinning Swing components. The PDF file of the thesis provides a very detailed overview of how look-and-feels work – this is definitely a good introduction for the aspiring LAF writers.
  • Christopher Deckers announces release 0.92 of the native components for Swing (web browser, media player, flash viewer). This release features improved Flash player and includes support for Linux platforms.
  • Simon Morris shares his views on making Swing the best platform for the desktop development in the next few years. It brings together quite a few interesting ideas, including my number one wish for 2008 (full cross-platform video support) and echoing my lament on the amount of branding that Sun puts in the Java platform. His final vision of Java embedding native controls and native controls embedding Java components invokes the work that Christopher does on his DJ project (from the previous bullet).
  • Chet Haase shares more demoes from the Scene Graph project. This entry shows an iPhone-like interface (don’t you just love blurry icons with pixelated outlines? :) ), and this entry shows a few very basic demo applications. Hopefully, by the time the project is released, the demoes will match the level of sophistication found on professional Flash websites.
  • Andres Almiray writes a complete step-by-step introduction tutorial to the GraphicsBuilder. While you wouldn’t find anything that can’t be done in pure Java2D, the compactness and readability of the Groovy code is very impressive. Groovy-based look-and-feel anyone?
  • Dalton Filho writes a detailed tutorial for Swing developers that wish to learn the wxWidgets UI toolkit. This might be a nice addition to the UFacekit project that was mentioned last week.
  • Eric Burke posts a call to action on providing a full-fledged Java counterpart of Excel spreadsheet component. Along the way, he argues that the JTable is not a good fit as a base class for such a component, and he has quite a few good points. I’m quite skeptic that somebody would be able not only to start such a project, but also to follow through on all the complexities and functionality that is provided by the latest Excel :(
  • Tim Dalton updates on the bridge between Swing and Scala, posting information on the Google Code-hosted code repository for his SQUIB project.
  • Two new project releases using the JIDE component suite. Designer Vista is a UI design tool that allows quick UI prototyping in a Visio-like interface. MyMoney is a financial software tool for working with online banking services.
  • The Synthetica look-and-feel is used in the new release of MyUniPortal project. See the screenshots here.

Here are some Swing links that you might have missed during this week:

  • Alex Ruiz writes about the release 0.8 of FEST-Swing library for functional Swing GUI testing. It features a considerable number of new functionality and seems to be progressing smoothly towards the first production-ready release.
  • Andres Almiray writes about release 0.4.4 of GraphicsBuilder, bringing a variety of new features from Swing to Groovy.
  • Dave Gilbert writes about release 1.0.9 of the JFreeChart chart library, mainly featuring bug fixes and small API improvements. I wonder what happened to the 3D support that has been announced last July. Is there a big demand for 3D charts? Is it worth the development effort?
  • Peter Weishapl writes about updates to the xswingx project that brings advanced capabilities to text fields, including prompts, buddy icons and search fields.
  • Jeremy Wood (java.net nick mickleness) has an interesting project on java.net for slideshow transitions. It features an impressive array of very smooth and rich transitions that can be employed in slideshow components.
  • Sun’s marketing machine seems to pick up the steam on the application framework and beans binding projects (even though the technical leads seem to be currently devoting their resources to the JavaFX related activities). Tech Day Events blog has a short overview of these two projects, while Frank Sommers interviews Shannon Hickey on the beans binding at Artima.
  • And speaking of the main technical lead for the application framework JSR, Hans Muller kicks off the series on the new Scene Graph project, showing a few very basic capabilities. Chet Haase writes about the next evolution of the Timing Framework that is undergoing very significant changes for its inclusion in Scene Graph (and probably JavaFX / Mustang Update N). The first part talks about the API changes, and the second part introduces the new functionality.
  • Tom Schindl writes about the first version of the UFacekit project that aims to bring a common layer on top of different UI toolkits, including GWT, SWT / JFace and Swing. This is a commendable effort, and it would be very interesting to see how the authors (Tom and James Strachan) are going to tackle the functionality missing in some of the UI toolkits. Would that be the least common denominator, optional extensions (with querying the toolkit capability), emulation of missing features or something else? Definitely worth tracking.

Here are some Swing links that you might have missed during this week:

  • Luan O’Carroll writes about updates to the rollup bar component from the XUI framework. The functionality of the component seems to lie somewhere between the task pane container / collapsible panels of SwingX and the collapsed panels of docking frameworks. The links to the demo videos seem to be down, and it would be interesting to see a WebStart demo and learn how well the component integrates with core and third-party look-and-feels.
  • Andres Almiray continues his work on the GraphicsBuilder for Groovy. This week he talks about advanced strokes (based on the code by Jerry Huxtable) and the wide variety of geometrical shapes.
  • John Zukowski provides a simple overview of placing custom components on tabbed panes (available starting from JDK 6.0). Unfortunately, all the tutorials i have seen on the subject deal exclusively with putting close buttons on tabs. I would be very interested to hear about at least one another valid scenario for using custom components on tabs. If there is none – why this functionality hasn’t been restricted to, well, putting only close buttons?
  • Angelo De Caro writes about release 1.4.0 of MyDoggy docking framework.
  • software4java company announced availability of the adaptive menu component. The functionality of adaptive menus introduced in the Microsoft Office 2000 to Swing application has a few significant shortcomings addressed at length in this posting by the lead designer of Office 2007, Jensen Harris. While it is still available in Office 2007, it is turned off by default – if you’re thinking about including this functionality in your applications, you might want to reconsider it.
  • Christopher Deckers makes quite an unexpected announcement on library that brings integration with an impressive collection of native components to Swing applications. Based on SWT (with the applying restrictions of target platforms and bundled native libraries), it already provides solutions for embedding web browser, Flash player and multi media player, as well as querying the native file associations and launching registered applications (which looks very much like the Desktop class introduced in JDK 6.0).