The Quaqua Look and Feel (Quaqua) is an open source user interface library for Java applications which wish to closely adhere to the Apple Human Interface Guidelines for Mac OS X.
Note that Quaqua is not a fully self-contained look and feel. Quaqua will run on top of Apple's Aqua Look and Feel, and it also provides fixes and enhancements for it.
Here are some key features of "Quaqua Look and Feel":
(Nearly) Native User Experience:
· Quaqua user interface delegates closely look and behave like their native counterparts. Complex user interface components, such as JFileChooser and JColorChooser, are close enough to make end users feel comfortable with them.
Blends into OS X Designs:
· Quaqua supports three OS X designs: Tiger, Panther, Jaguar. Quaqua automatically chooses the right design for the current operating system.
· Quaqua offers alternative styles for many user interface elements. Such as small styles for most of the components, as well as a striped style for tables, lists and trees. Jaguar-design like tabbed panes with stacking tabs are also supported.
· Quaqua provides Swing implementations of NSBrowser and NSSheet (named JBrowser and JSheet).
· Laying out Aqua components with Java is quite challenging. Quaqua provides an API for component alignment based on visual criteria (baseline, visual bounds, preferred gaps). JScrollPane's automatically avoid overlaps with the grow-boxes of windows.
Localized in four languages:
· Quaqua is localized in the following languages: German, French, Italian and English.
· J2SE 1.4 or later
What's New in This Release: [ read full changelog ]
· Fixes NullPointerException in QuaquaNativeButtonBorder.
· Fixes appearance of toolbar buttons.
· Fixes QUAQUA-151 JComponent.getBaseline() is not available on J2SE5.
· Fixes QUAQUA-137 firePopupMenuWillBecomeVisible no longer being called.
· Fixes QUAQUA-148 NullPointerException when sidebar contains a link to an unmounted network folder.
· Method sun.awt.SunToolkit.ungrab() is not available on J2SE5.
· Fixes focus ring painting on J2SE5 by enforcing the opacity setting of the L&F on JScrollPane objects.
· Fixes QUAQUA-146 wrong background color in table cell editor when cell is selected.
· Fixes QUAQUA-149 NullPointerException in QuaquaTextFieldBorder