The Quaqua Look and Feel
Quaqua stands for ‹Quick and dirty fixes for Apple’s Aqua Look and Feel›.
This is one of my most mondane projects – its just a bunch of workarounds. Nevertheless its fun to do it, altough I think I spend way too much time on it.
I started this project in 2003, because I disliked the design choice that Apple made for NSTabView for Mac OS X 10.3. I wanted the old design back (Quaqua now implements both the older and newer design). There was also a number of minor layout innacuracies in Apple’s implementation of the Aqua Look and Feel which I wanted to fix. I felt that all these minor issues added up, and made Swing applications look sub-par in comparison with native applications.
At one point, I integrated the file dialog code by Steve Roy, which finally allowed to use a JFileChooser in a Java application on Mac OS X. This caused quite a jump in popularity of the Quaqua Look and Feel.
Since Landon Fuller created a port of the FreeBSD Java 1.6 patchset for Mac OS X named SoyLatte, I am now motivated on making Quaqua a fully self-contained look and feel. This is because Apple has never been a reliable partner for J2SE releases on Mac OS X. One day, thanks to open source projects like SoyLatte, we will hopefully have timely releases of new J2SE releases on Mac OS X.
I am currently finishing up the Tiger design (that’s the design used in Mac OS X 10.4 and older). This is the most complete design, I already have, and it is much less complex to do then the new resolution-independent Leopard design (Mac OS X 10.5).
My last addition to Quaqua is an UI delegate for JSlider:
Okay, one down, three more to go: the last missing UI delegates are for JProgressBar, JInternalFrame and JToolTip.
Oh, you are not getting excited by this screenshot? Well, I told you so, Quaqua is just ‹the works›. 🙂