< prev index next >
src/java.desktop/share/classes/javax/swing/plaf/synth/doc-files/componentProperties.html
Print this page
*** 1,10 ****
! <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
! <html>
<head>
<!--
! Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
This code is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License version 2 only, as
published by the Free Software Foundation. Oracle designates this
--- 1,13 ----
! <!doctype html>
! <html lang="en">
<head>
+ <meta charset="utf-8"/>
+ <title>Component Specific Properties</title>
+ </head>
<!--
! Copyright (c) 2003, 2017, Oracle and/or its affiliates. All rights reserved.
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
This code is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License version 2 only, as
published by the Free Software Foundation. Oracle designates this
*** 22,41 ****
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
or visit www.oracle.com if you need additional information or have any
questions.
-
-->
! </head>
<body bgcolor="white">
<h3>Component Specific Properties</h3>
<p> The look, and to some degree the feel of Synth
! can be customized by way of component specific properties.
! These properties are accessed from <a
! href="../SynthStyle.html">SynthStyle#get</a>. Refer to <a href="synthFileFormat.html#e.property">synth file format</a> for examples of how to specify these properties in a synth configuration file.</p>
! <p>
This file specifies the expected class type each of the values
are to take. The behavior of supplying the wrong type is
unspecified: typically a <code>ClassCastException</code> is
thrown, but it is implementation specific.
</p>
--- 25,45 ----
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
or visit www.oracle.com if you need additional information or have any
questions.
-->
!
<body bgcolor="white">
<h3>Component Specific Properties</h3>
<p> The look, and to some degree the feel of Synth
! can be customized by way of component specific properties.
! These properties are accessed from <a
! href="../SynthStyle.html">SynthStyle#get</a>. Refer to <a
! href="synthFileFormat.html#e.property">synth file format</a> for examples
! of how to specify these properties in a synth configuration file.</p>
! <p>
This file specifies the expected class type each of the values
are to take. The behavior of supplying the wrong type is
unspecified: typically a <code>ClassCastException</code> is
thrown, but it is implementation specific.
</p>
*** 64,74 ****
<td>Preferred size of the arrow button. </td>
</tr>
</tbody>
</table>
<br>
! <h4><a name="JButton">JButton</a></h4>
<p> JButton paints text using the TEXT_FOREGROUND ColorType. In addition
to the <a href="#buttonProperties">Button properties</a>, JButton
supports the following property: </p>
<h5>JButton Specific Properties</h5>
<table border="1" summary="JButton specific properties">
--- 68,78 ----
<td>Preferred size of the arrow button. </td>
</tr>
</tbody>
</table>
<br>
! <h4><a id="JButton">JButton</a></h4>
<p> JButton paints text using the TEXT_FOREGROUND ColorType. In addition
to the <a href="#buttonProperties">Button properties</a>, JButton
supports the following property: </p>
<h5>JButton Specific Properties</h5>
<table border="1" summary="JButton specific properties">
*** 87,97 ****
button that is receiving focus. </td>
</tr>
</tbody>
</table>
<br>
! <h4><a name="JCheckBox">JCheckBox</a></h4>
<p> JCheckBox paints text using the TEXT_FOREGROUND ColorType. In
addition to the <a href="#buttonProperties">Button properties</a>,
JCheckBox supports the following property: </p>
<h5>JCheckBox Specific Properties</h5>
<table border="1" summary="JCheckBox specific properties">
--- 91,101 ----
button that is receiving focus. </td>
</tr>
</tbody>
</table>
<br>
! <h4><a id="JCheckBox">JCheckBox</a></h4>
<p> JCheckBox paints text using the TEXT_FOREGROUND ColorType. In
addition to the <a href="#buttonProperties">Button properties</a>,
JCheckBox supports the following property: </p>
<h5>JCheckBox Specific Properties</h5>
<table border="1" summary="JCheckBox specific properties">
*** 109,119 ****
<td>Icon used to render the check. </td>
</tr>
</tbody>
</table>
<br>
! <h4><a name="JComboBox">JComboBox</a></h4>
<p> JComboBox is a composite component that consists of the following
child Components: </p>
<table border="1" summary="JComboBox child components">
<thead><tr>
<th>Name</th>
--- 113,123 ----
<td>Icon used to render the check. </td>
</tr>
</tbody>
</table>
<br>
! <h4><a id="JComboBox">JComboBox</a></h4>
<p> JComboBox is a composite component that consists of the following
child Components: </p>
<table border="1" summary="JComboBox child components">
<thead><tr>
<th>Name</th>
*** 337,347 ****
</td>
</tr>
</tbody>
</table>
<br>
! <h4><a name="JInternalFrame"></a>JInternalFrame</h4>
<h5>JInternalFrame Specific Properties</h5>
<table cellpadding="2" cellspacing="2" border="1" summary="JInternalFrame specific properties"
style="text-align: left; width: 100%;">
<tbody>
<tr>
--- 341,351 ----
</td>
</tr>
</tbody>
</table>
<br>
! <h4><a id="JInternalFrame"></a>JInternalFrame</h4>
<h5>JInternalFrame Specific Properties</h5>
<table cellpadding="2" cellspacing="2" border="1" summary="JInternalFrame specific properties"
style="text-align: left; width: 100%;">
<tbody>
<tr>
*** 367,377 ****
</td>
</tr>
</tbody>
</table>
<br>
! <h4><a name="JInternalFrameTitlePane"></a>JInternalFrameTitlePane</h4>
<p>JInternalFrameTitlePane is the control bar located at the top of the
internal frame similar to that found in a frame.<br>
</p>
<h5>JInternalFrameTitlePane Specific Properties</h5>
<table cellpadding="2" cellspacing="2" border="1" summary="JInternalFrameTitlePane specific properties"
--- 371,381 ----
</td>
</tr>
</tbody>
</table>
<br>
! <h4><a id="JInternalFrameTitlePane"></a>JInternalFrameTitlePane</h4>
<p>JInternalFrameTitlePane is the control bar located at the top of the
internal frame similar to that found in a frame.<br>
</p>
<h5>JInternalFrameTitlePane Specific Properties</h5>
<table cellpadding="2" cellspacing="2" border="1" summary="JInternalFrameTitlePane specific properties"
*** 467,477 ****
</td>
</tr>
</tbody>
</table>
<br>
! <h4><a name="JList">JList</a></h4>
<p> JList's sets the name of the renderer to List.renderer. JList
supports the following properties: </p>
<h5>JList Specific Properties</h5>
<table border="1" summary="JList specific properties">
<thead><tr>
--- 471,481 ----
</td>
</tr>
</tbody>
</table>
<br>
! <h4><a id="JList">JList</a></h4>
<p> JList's sets the name of the renderer to List.renderer. JList
supports the following properties: </p>
<h5>JList Specific Properties</h5>
<table border="1" summary="JList specific properties">
<thead><tr>
*** 506,516 ****
is not invoked. </td>
</tr>
</tbody>
</table>
<br>
! <h4><a name="menuProperties">Menu Properties</a></h4>
<p> The Menu classes (JCheckBoxMenuItem, JMenu, JMenuItem, and
JRadioButtonMenuItem) all support the same set of properties and behave
similarly. Each component consists of two Regions: the region
specific to the component and Region.MENU_ITEM_ACCELERATOR.
MENU_ITEM_ACCELERATOR is used for painting the accelerator. Both Regions
--- 510,520 ----
is not invoked. </td>
</tr>
</tbody>
</table>
<br>
! <h4><a id="menuProperties">Menu Properties</a></h4>
<p> The Menu classes (JCheckBoxMenuItem, JMenu, JMenuItem, and
JRadioButtonMenuItem) all support the same set of properties and behave
similarly. Each component consists of two Regions: the region
specific to the component and Region.MENU_ITEM_ACCELERATOR.
MENU_ITEM_ACCELERATOR is used for painting the accelerator. Both Regions
*** 591,601 ****
<td>Array of the KeyEvent modifiers to use for shortcut keys. </td>
</tr>
</tbody>
</table>
<br>
! <h4><a name="JOptionPane">JOptionPane</a></h4>
<p> JOptionPane is a composite component and may consist of numerous child
components, they are: OptionPane.button, OptionPane.label,
OptionPane.comboBox, OptionPane.scrollPane, OptionPane.list,
OptionPane.textField, OptionPane.iconLabel. </p>
<h5>JOptionPane Specific Properties</h5>
--- 595,605 ----
<td>Array of the KeyEvent modifiers to use for shortcut keys. </td>
</tr>
</tbody>
</table>
<br>
! <h4><a id="JOptionPane">JOptionPane</a></h4>
<p> JOptionPane is a composite component and may consist of numerous child
components, they are: OptionPane.button, OptionPane.label,
OptionPane.comboBox, OptionPane.scrollPane, OptionPane.list,
OptionPane.textField, OptionPane.iconLabel. </p>
<h5>JOptionPane Specific Properties</h5>
*** 707,717 ****
<td>Icon used for error WARNING_MESSAGE </td>
</tr>
</tbody>
</table>
<br>
! <h4><a name="JProgressBar"></a>JProgressBar<br>
</h4>
<h5>JProgressBar Specific Properties<br>
</h5>
<table cellpadding="2" cellspacing="2" border="1" summary="JProgressBar specific properties"
style="text-align: left; width: 100%;">
--- 711,721 ----
<td>Icon used for error WARNING_MESSAGE </td>
</tr>
</tbody>
</table>
<br>
! <h4><a id="JProgressBar"></a>JProgressBar<br>
</h4>
<h5>JProgressBar Specific Properties<br>
</h5>
<table cellpadding="2" cellspacing="2" border="1" summary="JProgressBar specific properties"
style="text-align: left; width: 100%;">
*** 747,757 ****
the bouncing box per frame when the progress bar is indeterminate.<br>
</td>
</tr>
</tbody>
</table>
! <h4><a name="JRadioButton">JRadioButton</a></h4>
<p> JRadioButton paints text using the TEXT_FOREGROUND ColorType. In
addition to the <a href="#buttonProperties">Button properties</a>,
JRadioButton supports the following property: </p>
<h5>JRadioButton Specific Properties</h5>
<table border="1" summary="JRadioButton specific properties">
--- 751,761 ----
the bouncing box per frame when the progress bar is indeterminate.<br>
</td>
</tr>
</tbody>
</table>
! <h4><a id="JRadioButton">JRadioButton</a></h4>
<p> JRadioButton paints text using the TEXT_FOREGROUND ColorType. In
addition to the <a href="#buttonProperties">Button properties</a>,
JRadioButton supports the following property: </p>
<h5>JRadioButton Specific Properties</h5>
<table border="1" summary="JRadioButton specific properties">
*** 769,779 ****
<td>Icon used to render the radio indicator. </td>
</tr>
</tbody>
</table>
<br>
! <h4><a name="JScrollBar">JScrollBar</a></h4>
<p> JScrollBar is a composite component that consists of the following
child Components: </p>
<table border="1" summary="JScrollBar child components">
<thead><tr>
<th>Name</th>
--- 773,783 ----
<td>Icon used to render the radio indicator. </td>
</tr>
</tbody>
</table>
<br>
! <h4><a id="JScrollBar">JScrollBar</a></h4>
<p> JScrollBar is a composite component that consists of the following
child Components: </p>
<table border="1" summary="JScrollBar child components">
<thead><tr>
<th>Name</th>
*** 839,849 ****
orientation of the scrollbar is vertical.</td>
</tr>
</tbody>
</table>
<br>
! <h4><a name="Separator">Separators</a></h4>
<p> All of the separator classes, JSeparator, JPopupMenu.Separator and
JToolBar.Separator use the same property: </p>
<table border="1" summary="Separator classes common properties">
<thead><tr>
<th>Property</th>
--- 843,853 ----
orientation of the scrollbar is vertical.</td>
</tr>
</tbody>
</table>
<br>
! <h4><a id="Separator">Separators</a></h4>
<p> All of the separator classes, JSeparator, JPopupMenu.Separator and
JToolBar.Separator use the same property: </p>
<table border="1" summary="Separator classes common properties">
<thead><tr>
<th>Property</th>
*** 873,890 ****
</thead> <tbody>
<tr>
<td>ToolBar.separatorSize</td>
<td>Dimension</td>
<td>null </td>
! <td>The value of this is passed to the <code>javax.swing.JToolBar$Separator#setSeparatorSize(java.awt.Dimension)</code>
! method. If unspecified <code>setSeparatorSize</code> is not
! invoked. </td>
</tr>
</tbody>
</table>
<br>
! <h4><a name="JScrollPane">JScrollPane</a></h4>
<p>
JScrollPane is unique in that it provides a method for setting
the Border around the JViewport with JViewport throwing an
IllegalArgumentException from <code>setBorder</code>. To
accommodate this a special border is installed on the
--- 877,895 ----
</thead> <tbody>
<tr>
<td>ToolBar.separatorSize</td>
<td>Dimension</td>
<td>null </td>
! <td>The value of this is passed to the
! <code>javax.swing.JToolBar$Separator#setSeparatorSize(java.awt.Dimension)</code>
! method. If unspecified <code>setSeparatorSize</code> is not invoked.
! </td>
</tr>
</tbody>
</table>
<br>
! <h4><a id="JScrollPane">JScrollPane</a></h4>
<p>
JScrollPane is unique in that it provides a method for setting
the Border around the JViewport with JViewport throwing an
IllegalArgumentException from <code>setBorder</code>. To
accommodate this a special border is installed on the
*** 911,921 ****
<td>Insets for the viewport Border. </td>
</tr>
</tbody>
</table>
<br>
! <h4><a name="JSplitPane">JSplitPane</a></h4>
<p> JSplitPane is a composite component that will contain a divider and
potentially two buttons, if setOneTouchExpandable(true) has been
invoked. The two buttons will be named:
SplitPaneDivider.leftOneTouchButton and
SplitPaneDivider.rightOneTouchButton. </p>
--- 916,926 ----
<td>Insets for the viewport Border. </td>
</tr>
</tbody>
</table>
<br>
! <h4><a id="JSplitPane">JSplitPane</a></h4>
<p> JSplitPane is a composite component that will contain a divider and
potentially two buttons, if setOneTouchExpandable(true) has been
invoked. The two buttons will be named:
SplitPaneDivider.leftOneTouchButton and
SplitPaneDivider.rightOneTouchButton. </p>
*** 960,970 ****
<td>Size of the divider </td>
</tr>
</tbody>
</table>
<br>
! <h4><a name="JSlider"></a>JSlider</h4>
<h5>JSlider Specific Properties</h5>
<table cellpadding="2" cellspacing="2" border="1" summary="JSlider specific properties"
style="text-align: left; width: 100%;">
<tbody>
<tr>
--- 965,975 ----
<td>Size of the divider </td>
</tr>
</tbody>
</table>
<br>
! <h4><a id="JSlider"></a>JSlider</h4>
<h5>JSlider Specific Properties</h5>
<table cellpadding="2" cellspacing="2" border="1" summary="JSlider specific properties"
style="text-align: left; width: 100%;">
<tbody>
<tr>
*** 1020,1030 ****
</td>
</tr>
</tbody>
</table>
<br>
! <h4><a name="JTabbedPane"></a>JTabbedPane</h4>
<h5>JTabbedPane Specific Properties</h5>
<table cellpadding="2" cellspacing="2" border="1" summary="JTabbedPane specific properties"
style="text-align: left; width: 100%;">
<tbody>
<tr>
--- 1025,1035 ----
</td>
</tr>
</tbody>
</table>
<br>
! <h4><a id="JTabbedPane"></a>JTabbedPane</h4>
<h5>JTabbedPane Specific Properties</h5>
<table cellpadding="2" cellspacing="2" border="1" summary="JTabbedPane specific properties"
style="text-align: left; width: 100%;">
<tbody>
<tr>
*** 1082,1092 ****
</td>
</tr>
</tbody>
</table>
<br>
! <h4><a name="JTable">JTable</a></h4>
<p> JTable sets the name of the renderer to Table.cellRenderer.
JTable supports the following properties: </p>
<h5>JTable Specific Properties</h5>
<table border="1" summary="JTable specific properties">
<thead><tr>
--- 1087,1097 ----
</td>
</tr>
</tbody>
</table>
<br>
! <h4><a id="JTable">JTable</a></h4>
<p> JTable sets the name of the renderer to Table.cellRenderer.
JTable supports the following properties: </p>
<h5>JTable Specific Properties</h5>
<table border="1" summary="JTable specific properties">
<thead><tr>
*** 1127,1137 ****
<td>If not -1 setRowHeight is invoked on the JTable. </td>
</tr>
</tbody>
</table>
<br>
! <h4><a name="JTree">JTree</a></h4>
<p> JTree sets the name of the renderer to Tree.renderer, the name of
the editor is Tree.cellEditor.</p>
<h5>JTree Specific Properties</h5>
<table border="1" summary="JTree specific properties">
<thead><tr>
--- 1132,1142 ----
<td>If not -1 setRowHeight is invoked on the JTable. </td>
</tr>
</tbody>
</table>
<br>
! <h4><a id="JTree">JTree</a></h4>
<p> JTree sets the name of the renderer to Tree.renderer, the name of
the editor is Tree.cellEditor.</p>
<h5>JTree Specific Properties</h5>
<table border="1" summary="JTree specific properties">
<thead><tr>
*** 1210,1220 ****
styles by creating a new <a href="../SynthGraphicsUtils.html">SynthGraphicsUtils</a>
and <a href="synthFileFormat.html#e.graphicsUtils">binding it</a> to the tree.</td>
</tr>
</tbody>
</table>
! <h4><a name="JToggleButton">JToggleButton</a></h4>
<p> JToggleButton paints text using the TEXT_FOREGROUND ColorType. In
addition to the <a href="#buttonProperties">Button properties</a>,
JToggleButton supports the following property: </p>
<h5>JToggleButton Specific Properties</h5>
<table border="1" summary="JToggleButton specific properties">
--- 1215,1225 ----
styles by creating a new <a href="../SynthGraphicsUtils.html">SynthGraphicsUtils</a>
and <a href="synthFileFormat.html#e.graphicsUtils">binding it</a> to the tree.</td>
</tr>
</tbody>
</table>
! <h4><a id="JToggleButton">JToggleButton</a></h4>
<p> JToggleButton paints text using the TEXT_FOREGROUND ColorType. In
addition to the <a href="#buttonProperties">Button properties</a>,
JToggleButton supports the following property: </p>
<h5>JToggleButton Specific Properties</h5>
<table border="1" summary="JToggleButton specific properties">
*** 1232,1242 ****
<td>Icon used to render the radio indicator. </td>
</tr>
</tbody>
</table>
<br>
! <h4><a name="buttonProperties">Button Properties</a></h4>
<p> Each of the Button classes (JButton, JCheckBox, JRadioButton,
JToggleButton and SynthArrowButton) support a similar set of properties.
These properties are: </p>
<table border="1" summary="Button classes common properties">
<thead><tr>
--- 1237,1247 ----
<td>Icon used to render the radio indicator. </td>
</tr>
</tbody>
</table>
<br>
! <h4><a id="buttonProperties">Button Properties</a></h4>
<p> Each of the Button classes (JButton, JCheckBox, JRadioButton,
JToggleButton and SynthArrowButton) support a similar set of properties.
These properties are: </p>
<table border="1" summary="Button classes common properties">
<thead><tr>
*** 1248,1274 ****
</thead> <tbody>
<tr>
<td>prefix.contentAreaFilled</td>
<td>Integer</td>
<td>true </td>
! <td>Refer to the javadoc of <code>javax.swing.AbstractButton#contentAreaFilled(boolean)</code> for details
! of how this is used. It is up to the Painter to properly honor this
! property. </td>
</tr>
<tr>
<td>prefix.iconTextGap</td>
<td>Integer</td>
! <td>If unspecified, JButton.setIconTextGap is not invoked. </td>
! <td>Padding between the icon and text. Refer to the javadoc of <code>javax.swing.AbstractButton#setIconTextGap(int)</code> for details of how
! this is used. </td>
</tr>
<tr>
<td>prefix.margin</td>
<td>Insets</td>
<td>Empty Insets (0, 0, 0, 0) </td>
! <td>Margin for the JButton. Refer to the javadoc of <code>javax.swing.AbstractButton#setMargin(java.awt.Insets)</code> for details
! of how the margin is used. </td>
</tr>
<tr>
<td>prefix.textShiftOffset</td>
<td>Integer</td>
<td>0 </td>
--- 1253,1285 ----
</thead> <tbody>
<tr>
<td>prefix.contentAreaFilled</td>
<td>Integer</td>
<td>true </td>
! <td>Refer to the javadoc of
! <code>javax.swing.AbstractButton#contentAreaFilled(boolean)</code>
! for details of how this is used. It is up to the Painter to properly honor
! this property.
! </td>
</tr>
<tr>
<td>prefix.iconTextGap</td>
<td>Integer</td>
! <td>If unspecified, JButton.setIconTextGap is not invoked.</td>
! <td>Padding between the icon and text. Refer to the javadoc of
! <code>javax.swing.AbstractButton#setIconTextGap(int)</code>
! for details of how this is used.
! </td>
</tr>
<tr>
<td>prefix.margin</td>
<td>Insets</td>
<td>Empty Insets (0, 0, 0, 0) </td>
! <td>Margin for the JButton. Refer to the javadoc of
! <code>javax.swing.AbstractButton#setMargin(java.awt.Insets)</code> for
! details of how the margin is used.
! </td>
</tr>
<tr>
<td>prefix.textShiftOffset</td>
<td>Integer</td>
<td>0 </td>
*** 1279,1289 ****
</tbody>
</table>
<p> <code>Prefix</code> is one of: Button, CheckBox, RadioButton or
JToggleButton.<br>
</p>
! <h4><a name="textProperties"></a>Text Properties<br>
</h4>
<table cellpadding="2" cellspacing="2" border="1" summary="Text properties"
style="text-align: left; width: 100%;">
<tbody>
<tr>
--- 1290,1300 ----
</tbody>
</table>
<p> <code>Prefix</code> is one of: Button, CheckBox, RadioButton or
JToggleButton.<br>
</p>
! <h4><a id="textProperties"></a>Text Properties<br>
</h4>
<table cellpadding="2" cellspacing="2" border="1" summary="Text properties"
style="text-align: left; width: 100%;">
<tbody>
<tr>
< prev index next >