Client Properties

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

Common Properties
Property Notes

JComponent.sizeVariant

Changes the size variant of a component, if set to regular, small or mini. The default value is regular.

 

Note: Setting this property causes the UI delegate, to set an appropriate font on the component.

Quaqua.Component
.cellRendererFor

If a component is used as a cell renderer, this property can be used to specify the JComponent which contains the cels. For example, set this to a JTable, a JTree or a JList object.

 

This has the following effect:

  • The cell renderer can draw itself differently, so that it fits visually into a cell of the specified JComponent.
  • The cell renderer can determine its selection color depending on the focus state of the specified JComponent rather than on its own focus state.
Quaqua.Component
.visualMargin

If set to a java.awt.Insets value, specifies the margin around the visually perceived borders of a component and its clip bounds.
If no value is specified, then the UIManager property Component.visualMargin is used.

This property is honoured only by ComponentUI's that have been implemented in Quaqua. Thus the following components ignore currently the visual margin:

  • JSlider
  • JSpinner
  • JTabbedPane with Panther design
JCheckBox
Property Notes
Quaqua.Label
.style
Changes the style of the label portion of the JCheckBox if set to: "plain", "shadow" or "emboss".
If no value is specified, the plain style is used.
JComboBox
Property Notes
JComboBox
.isTableCellEditor

If set to Boolean.TRUE causes the JComboBox to render without a border, so that it fits visually into a JTable cell.

Alternatively to this, Quaqua.Component.isCellRendererFor can be used.

JFileChooser
Property Notes
Quaqua.FileChooser
.preview

If set to a java.awt.Component, specifies the component used for rendering the file preview in the last column of the column view in the file browser.

If this property is not set, or if its value is null, the file chooser renders the preview using its own renderer.

JButton
Property Notes
Quaqua.Button
.style
Changes the style of a button, if set to one of the following String values: bevel, square, push, colorWell, toggle, toggleWest, toggleCenter, toggleEast, toolBar, toolBarRollover, toolBarTab, help.
If no value is specified, the push style is used.
This property overrides the JButton.buttonType property.
JButton
.buttonType
Changes the style of a button, if set to one of the following String values: icon, toolbar, text.
If no value is specified, the text style is used.
This property is here for backwards compatibility with Apple's Aqua Look and Feel only. It is overriden, if the Quaqua.Button.style property is set.
JOptionPane
Property Notes
Quaqua.OptionPane
.destructiveOption

Specifies the index of the destructive option on the JOptionPane.
If no value is specified, all option buttons are aligned to the lower right corner of the option pane.

If an Integer value is specified, all option buttons with a lower index than the Integer value are aligned to the lower right corner, the other option buttons are left aligned with the message text.

JLabel
Property Notes
Quaqua.Label
.style
Changes the style of a label if set to: "plain", "shadow" or "emboss".
If no value is specified, the plain style is used.
JList
Property Notes
Quaqua.List
.style
Changes the style of a list, if set to: "striped" or to "plain".
If no value is specified, the plain style is used.
JPopupMenu
Property Notes
Quaqua.PopupMenu
.windowAlpha
A float value which specifies the alpha transparency of the popup window.
If no value or null is specified, a system dependent transparency value is chosen.
JRootPane
Property Notes
Quaqua.RootPane
.isPalette

If set to Boolean.TRUE, turns a JDialog or a JFrame into a palette window.
The title bar of a palette window will always render in activated state. It is your responsibility to hide the palette window, when none of your application has focus.

This property will only take into effect, when the JRootPane decorates the window.

Quaqua.RootPane
.isVertical

If set to Boolean.TRUE, renders the title bar of a JDialog or a JFrame on the left instead of on the top.

This property will only take into effect, when the JRootPane decorates the window.

apple.awt.brushMetalLook

If set to Boolean.TRUE, fuses the title bar of the JFrame with the JToolBar at the top of the window, and fuses the border with the JToolBar at the bottom of the window, if the appropriate style of the JToolBar is set.

See JToolBar

windowModified See JInternalFrame
JScrollBar
Property Notes
Quaqua.ScrollBar
.placeButtonsTogether

Places the buttons of the scroll bar together or appart. Supported values are Boolean.TRUE and Boolean.FALSE.

If no value is specified, the UIManager property ScrollBar.placeButtonsTogether is used.

JScrollPane
Property Notes
Quaqua.ScrollPane
.style
Changes the style of a list, if set to: "plain" or to "bar".
If no value is specified, the plain style is used.
JTable
Property Notes
Quaqua.Table
.style
Changes the style of a table, if set to: striped or to plain.
If no value is specified, the plain style is used.
JTabbedPane
Property Notes
Quaqua.TabbedPane
.contentBorderPainted
Switches rendering of the content border on and off. Set this to Boolean.FALSE to not draw the content border of the tabbed pane.
Quaqua.TabbedPane
.shortenTabs
For use with tabbed panes with scroll layout policy. Set this to Boolean.FALSE to prevent tabs from being shortened.
Quaqua.TabbedPaneChild
.contentBackground

Specifies the background color of the content area.

This property needs to be set on a child of a JTabbedPane. This allows to have individual background colors for each child of the tabbed pane.

Quaqua.TabbedPaneChild
.contentInsets

Specifies the insets of the content area.

This property needs to be set on a child of a JTabbedPane. This allows to have individual insets for each child of the tabbed pane.

JTextComponent (JTextField, JTextArea, JTextPane, JEditorPane, JPasswordField)
Property Notes
Quaqua.TextComponent
.autoSelect
Set this to Boolean.FALSE to prevent that all text is selected, when the user tabs into the field.
This property does not affect JTextPane and JTextArea.
Note: You can set the UIManager property TextComponent.autoSelect to false, to turn this off globally.
Quaqua.TextComponent
.showPopup
Set this to Boolean.FALSE to disable the text component popup menu.
JTextField
Property Notes
Quaqua.TextField
.style

If set to "search", renders a rounded border like the border of Mac OS X SpotLight search fields.

If set to "plain", renders a rectangular border like for regular text fields. The default value is "plain".

JToolBar
Property Notes
Quaqua.ToolBar
.style

Changes the style of a tool bar, if set to: plain, title, bottom or gradient.
If no value is specified, the plain style is used.

The "title" style requires that the client property apple.awt.brushMetalLook is set on the JRootPane.

Quaqua.ToolBar
.isDividerDrawn
If set to Boolean.FALSE, turns the divider line between the toolbar and the center area of its panel off.
JToolBar
.isRollover
If set to Boolean.TRUE, turns a roll over effect for the buttons on the toolbar on.
This requires Java 1.4 to work.
JTree
Property Notes
Quaqua.Tree
.style
Changes the style of a tree, if set to: plain, striped or sourceList.
If no value is specified, the plain style is used.
JInternalFrame
Property Notes
JInternalFrame
.isPalette
If set to Boolean.TRUE, turns a JInternalFrame into a palette window.
See Sun's Java Look And Feel Design Guidelines for Palettes.
windowModified If set to Boolean.TRUE, the red close button in the title bar visually indicates that the document contained in the window has changed.
See Apple's Technical Q&A QA1146.
 
JToggleButton
Property Notes
Quaqua.Button
.style
See JButton.
If no value is specified, the toggle style is used.