System Properties

The Quaqua Look and Feel supports the system properties listed below. You may notice, that the list also contains some properties defined in Apple's Release Notes for their Java Virtual Machines. These properties are listed here, because they directly affect the appearance and behaviour of the Quaqua Look and Feel.

Note 1: In addition to the system properties shown here, you can also preset all of Quaqua's General and Debug UIManager Properties using System Properties.

Note 2: In restricted environments (e.g. Applet's) you can set System Properties using the QuaquaManager.setProperty() method. This will only work with properties which have a Quaqua. prefix though.

Common Properties

Property

Default Value Notes
Quaqua
.design
auto

Chooses a design for the look and feel. Set this to panther, jaguar or tiger to enforce a specific design.

You should use this property for testing purposes only. For production use, it is not recommended, to set a different design than the one used by the operating system.

Quaqua
.opaque
false

Most of Quaqua's components are translucent in order to render focus rings and JTabbedPane's properly.

Set this to true, if your application doesn't render properly with non-opaque components, and you don't want to invest the time to make your application support translucent components.

Quaqua
.requestFocusEnabled
false

On Mac OS X, only text components request focus when the user clicks on them.

Set this to true, if your application code expects that most components request focus, when the user clicks on them.

Quaqua
.selectionStyle
auto

Starting from Mac OS X 10.3 Panther, selected items in JList's, JTable's and JTree's are rendered with a dark background color.

Change this property, if your application expects, that selections are always drawn with a bright background colour.

Supported values are:

  • bright (uses bright selection background)
  • dark (selection backgrounds in lists, tables and trees are dark).
Quaqua
.showNonEditableCaret
true

Quaqua shows a non-blinking caret in non-editable text components, like OS X does.

Set this property to false to turn this behavior off.

Quaqua
.visualMargin
3,3,3,3

Specifies the margin (java.awt.Insets) around the visually perceived borders of a component and its clip bounds.

Set the insets to a smaller value, if your layouts grow too big, and you don't want to invest the time for fine tuning the visual margin of individual components using the client property Quaqua.Component.visualMargin.

Quaqua
.enforceVisualMargin
false

Enforces the visual margin around components. Set this to true to work around NetBeans Matisse issue #74522.

Quaqua
.jniIsPreloaded
false

Set this to true, to prevent Quaqua from loading its JNI library on its own.

Properties for Java 1.6 only
Property Default Value Notes

Quaqua.Table
.useJ2SE5MouseHandler

false

Set this to true, if you don't need drag and drop support in JTable.

Quaqua currently uses the mouse handler from the Basic look and feel, because it does not implement yet drag and drop for JTable.

(Hopefully) in a future version, Quaqua will implement drag and drop handling on its own.

Properties for Java 1.5 only
Property Default Value Notes

Quaqua.FileChooser
.autovalidate

true Makes JFileChooser's automatically validate the contents of a directory, when the user clicks at it. Set this to false, if you experience performance problems, e.g. when using JFileChooser's to choose files from large directories (> 1000 entries) over a slow network connection.

Quaqua.FileChooser
.quickLookEnabled

true Displays a file preview using Apple's QuickLook API. Set this to false, if you experience crashes with QuickLook.

Quaqua

.tabLayoutPolicy

auto

Chooses a default layout policy for tabbed panes. Set this to wrap or to scroll.

auto will result in wrap tab layout policy for the Jaguar design and scroll layout policy for the Panther and the Tiger design.

 

Quaqua.TabbedPane
.design
(deprecated, use Quaqua.tabLayoutPolicy instead)

auto

Chooses a design for tabbed panes. Set this to panther or to jaguar to enforce a specific design.

Quaqua.TextComponent
.autoSelect

true

If set to true, text components automatically select all text, when the user presses the tabulator key to set the focus on the field. This affects JTextField, JPasswordField and JFormattedTextField.

apple.laf
.useScreenMenuBar
false Puts Swing menus in the Mac OS X menu bar. Note that JMenuBars in JDialogs are not moved to the Mac OS X menu bar.
apple.awt
.brushMetalLook
false Displays JFrame's with the “textured” Aqua window appearance.
apple.awt
.showGrowBox
true Most native Mac OS X windows have a resize control in the bottom-right corner. By default, Java application windows that use the Quaqua look and feel show this control, but there may be circumstances where you want it to be hidden. This property is used to decide if the grow box is shown or not.