Substance 4.2 Swing look-and-feel released
It gives me great pleasure to announce the official release for version 4.2 of Substance look-and-feel (code-named Memphis). Substance look-and-feel is a configurable and customizable production-quality Java look and feel library for Swing applications. The list of new features includes:
- Support for native text rendering in the Bramble plugin.
- Support for component colorization with the new SubstanceLookAndFeel.COLORIZATION_FACTOR client property.
- Font policy for KDE desktops.
- More streamlined visuals of arrow buttons for combo boxes and spinners.
- New visuals for Office Blue 2007, Raven Graphite and Raven Graphite Glass skins that provide better blending for disabled controls and more consistent painting of check marks.
- Cleaner and more streamlined appearance of tables (including tables wrapped in scroll panes)
- Auto-dispose of tab overview dialog.
In addition to the core release candidate, the following Substance plugins and modules have been updated as well:
- Substance SwingX plugin for the build 795 of SwingX component suite.
- Substance Baseline plugin for release 1.0.2 of Swing-Layout project.
- Substance NetBeans module for release 6.0 of NetBeans IDE.
- Substance button shaper pack.
- Substance theme pack.
- Substance watermark pack.
Additional Substance documentation resources:
- API for applications
- List of all supported client properties
- List of all supported VM flags
- Skin documentation
- Theme documentation
- Watermark documentation
- Painter documentation
- Animation documentation
A few screenshots of the new functionality in Substance 4.2:
Support for native text rasterization (viewed here with Segoe UI 12 pixel font under Windows Vista on JDK 5.0):

Component colorization with 50% factor (both background and foreground):

Respecting the KDE desktop font settings:

Better visuals for disabled controls under Raven Graphite skin:

Removing visual noise on tables and table headers in scroll panes:

- Login or register to post comments
- 5380 reads
- Printer-friendly version
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)










Comments
Martin Miller replied on Thu, 2008/02/07 - 3:15pm
I'm getting this with the latest swingx build and your substance swingx plugin (4.1) :
Exception in thread "AWT-EventQueue-0" java.lang.ExceptionInInitializerError at org.jvnet.substance.swingx.SubstanceTitledPanelUI.__org__jvnet__substance__swingx__SubstanceTitledPanelUI__installUI(SubstanceTitledPanelUI.java:51)
at org.jvnet.substance.swingx.SubstanceTitledPanelUI.installUI(SubstanceTitledPanelUI.java)
at javax.swing.JComponent.setUI(JComponent.java:673)
at javax.swing.JPanel.setUI(JPanel.java:136)
at org.jdesktop.swingx.JXTitledPanel.setUI(JXTitledPanel.java:153)
at org.jdesktop.swingx.JXTitledPanel.updateUI(JXTitledPanel.java:180)
at javax.swing.JPanel.<init>(JPanel.java:69)
at javax.swing.JPanel.<init>(JPanel.java:92)
at javax.swing.JPanel.<init>(JPanel.java:100)
at org.jdesktop.swingx.JXPanel.<init>(JXPanel.java:83)
at org.jdesktop.swingx.JXTitledPanel.<init>(JXTitledPanel.java:125)
at org.jdesktop.swingx.JXTitledPanel.<init>(JXTitledPanel.java:115)
at org.jdesktop.swingx.JXTitledPanel.<init>(JXTitledPanel.java:105)
Kirill Grouchnikov replied on Thu, 2008/02/07 - 4:08pm
Martin,
The latest release of both Substance and Substance SwingX plugin is 4.2 and not 4.1. If you take the SwingX plugin, you'll need to take the matching SwingX jar (from the plugin distribution archive) - there are some breaking API changes going on during the last few weeks (in SwingX), and the safest bet would be to take a slightly outdated SwingX binary jar that matches the latest Substance SwingX 4.2 release.
If you have any further questions, please consider posting them to the project forums or mailing lists.
Thanks
Kirill
Martin Miller replied on Thu, 2008/02/07 - 5:16pm
in response to: kirillcool
Oups, I really mean 4.2; I did not try the exact swingx; I'll wait for things to get in sync.
Thanks.
Kirill Grouchnikov replied on Thu, 2008/02/07 - 6:41pm
in response to: martinm1000
Martin,
I'm not sure what you mean by waiting for things to get in sync. Every few weeks the dev version of Substance SwingX plugin gets synchronized with the latest daily drop of SwingX. So, you might expect the 4.3dev version in a week or so. In the meantime, if you don't absolutely need the latest daily drop of SwingX, you can take the swingx.jar from substance-swingx-all.zip (in the /lib folder).
If you still have the problem with the bundled jar, please post a small test app on the project forums or mailing lists (not here) and i will investigate.
Thanks
Kirill