1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
   2 <html>
   3 <head>
   4 <!--
   5 Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
   6 DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   7 
   8 This code is free software; you can redistribute it and/or modify it
   9 under the terms of the GNU General Public License version 2 only, as
  10 published by the Free Software Foundation.  Oracle designates this
  11 particular file as subject to the "Classpath" exception as provided
  12 by Oracle in the LICENSE file that accompanied this code.
  13 
  14 This code is distributed in the hope that it will be useful, but WITHOUT
  15 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  16 FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  17 version 2 for more details (a copy is included in the LICENSE file that
  18 accompanied this code).
  19 
  20 You should have received a copy of the GNU General Public License version
  21 2 along with this work; if not, write to the Free Software Foundation,
  22 Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  23 
  24 Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  25 or visit www.oracle.com if you need additional information or have any
  26 questions.
  27 
  28 -->
  29 </head>
  30 <body bgcolor="white">
  31 <h3>Component Specific Properties</h3>
  32 <p> The look, and to some degree the feel of Synth
  33 can be customized by way of component specific properties.
  34 These properties are accessed from <a
  35                                     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>
  36     <p>
  37       This file specifies the expected class type each of the values
  38       are to take. The behavior of supplying the wrong type is
  39       unspecified: typically a <code>ClassCastException</code> is
  40       thrown, but it is implementation specific.
  41     </p>
  42 <h4>ArrowButton</h4>
  43 <p> ArrowButton is a special type of JButton that renders an arrow.
  44 ArrowButton is typically not created directly, rather some of the
  45 Components will create it       to render a button with an arrow. The
  46       components that make       use of ArrowButton       are:
  47 JComboBox, JScrollBar and JSplitPane (for the buttons on the divider).
  48 In       addition to the <a
  49  href="#buttonProperties">Button     properties</a>, ArrowButton supports
  50 the following properties: </p>
  51 <h5>ArrowButton Specific Properties</h5>
  52 <table border="1" summary="ArrowButton specific properties">
  53   <thead><tr>
  54     <th>Property</th>
  55     <th>Expected Type</th>
  56     <th>Default Value</th>
  57     <th>Description </th>
  58   </tr>
  59   </thead> <tbody>
  60     <tr>
  61       <td>ArrowButton.size</td>
  62       <td>Integer</td>
  63       <td>16       </td>
  64       <td>Preferred size of the arrow button. </td>
  65     </tr>
  66   </tbody>
  67 </table>
  68 <br>
  69 <h4><a name="JButton">JButton</a></h4>
  70 <p> JButton paints text using the TEXT_FOREGROUND ColorType. In addition
  71 to the <a href="#buttonProperties">Button         properties</a>, JButton
  72 supports the following property: </p>
  73 <h5>JButton Specific Properties</h5>
  74 <table border="1" summary="JButton specific properties">
  75   <thead><tr>
  76     <th>Property</th>
  77     <th>Expected Type</th>
  78     <th>Default Value</th>
  79     <th>Description </th>
  80   </tr>
  81   </thead> <tbody>
  82         <tr>
  83       <td>Button.defaultButtonFollowsFocus</td>
  84       <td>Boolean</td>
  85       <td>true     </td>
  86       <td>Whether or not the          default JButton should change to the
  87 button that is      receiving focus. </td>
  88     </tr>
  89   </tbody>
  90 </table>
  91 <br>
  92 <h4><a name="JCheckBox">JCheckBox</a></h4>
  93 <p> JCheckBox paints text using the TEXT_FOREGROUND ColorType. In
  94 addition to the <a href="#buttonProperties">Button        properties</a>,
  95 JCheckBox supports the following property: </p>
  96 <h5>JCheckBox Specific Properties</h5>
  97 <table border="1" summary="JCheckBox specific properties">
  98   <thead><tr>
  99     <th>Property</th>
 100     <th>Expected Type</th>
 101     <th>Default Value</th>
 102     <th>Description </th>
 103   </tr>
 104   </thead> <tbody>
 105         <tr>
 106       <td>CheckBox.icon</td>
 107       <td>Icon</td>
 108       <td>null     </td>
 109       <td>Icon used to render the check. </td>
 110     </tr>
 111   </tbody>
 112 </table>
 113 <br>
 114 <h4><a name="JComboBox">JComboBox</a></h4>
 115 <p> JComboBox is a composite component that consists of the following
 116 child Components: </p>
 117 <table border="1" summary="JComboBox child components">
 118   <thead><tr>
 119     <th>Name</th>
 120     <th>Type</th>
 121     <th>Description </th>
 122   </tr>
 123   </thead> <tbody>
 124         <tr>
 125       <td>ComboBox.arrowButton</td>
 126       <td>SynthArrowButton         </td>
 127       <td>Renders the drop down indicator.        </td>
 128     </tr>
 129     <tr>
 130       <td>ComboBox.list</td>
 131       <td>JList    </td>
 132       <td>JList used to render the values.        </td>
 133     </tr>
 134     <tr>
 135       <td>ComboBox.listRenderer</td>
 136       <td>Component        </td>
 137       <td>The renderer used for the JComboBox's JList.    </td>
 138     </tr>
 139     <tr>
 140       <td>ComboBox.popup</td>
 141       <td>JPopupMenu       </td>
 142       <td>JPopupMenu used to show the ComboBox.list of the JComboBox.     </td>
 143     </tr>
 144     <tr>
 145       <td>ComboBox.renderer</td>
 146       <td>Component        </td>
 147       <td>The renderer used for the JComboBox. This is ONLY set if        
 148 the renderer is a UIResource.   </td>
 149     </tr>
 150     <tr>
 151       <td>ComboBox.scrollPane</td>
 152       <td>JScrollPane      </td>
 153       <td>JScrollPane containing the JList.       </td>
 154     </tr>
 155     <tr>
 156       <td>ComboBox.textField</td>
 157       <td>JTextField       </td>
 158       <td>The editor. </td>
 159     </tr>
 160   </tbody>
 161 </table>
 162 
 163 <h5>JComboBox Specific Properties</h5>
 164 <table border="1" summary="JComboBox specific properties">
 165   <thead><tr>
 166     <th>Property</th>
 167     <th>Expected Type</th>
 168     <th>Default Value</th>
 169     <th>Description </th>
 170   </tr>
 171   </thead> <tbody>
 172     <tr>
 173       <td>ComboBox.showPopupOnNavigation</td>
 174       <td>Boolean</td>
 175       <td>false    </td>
 176       <td>Whether or not the JPopupMenu should appear when         navigating
 177 with the keyboard. </td>
 178     </tr>
 179   </tbody>
 180 </table>
 181 <br>
 182 <h4>JFileChooser</h4>
 183 <h5>JFileChooser Specific Properties</h5>
 184 <table cellpadding="2" cellspacing="2" border="1" summary="JFileChooser specific properties"
 185  style="width: 100%; text-align: left;">
 186   <tbody>
 187     <tr>
 188       <th style="vertical-align: top; text-align: center;">Property</th>
 189       <th style="vertical-align: top; text-align: center;">Expected Type<br>
 190       </th>
 191       <th style="vertical-align: top; text-align: center;">Default Value<br>
 192       </th>
 193       <th style="vertical-align: top; text-align: center;">Description</th>
 194     </tr>
 195     <tr>
 196       <td style="vertical-align: top;">FileChooser.cancelIcon<br>
 197       </td>
 198       <td style="vertical-align: top;">Icon<br>
 199       </td>
 200       <td style="vertical-align: top;">null<br>
 201       </td>
 202       <td style="vertical-align: top;">Icon displayed on cancel button
 203 of the file chooser.<br>
 204       </td>
 205     </tr>
 206     <tr>
 207       <td style="vertical-align: top;">FileChooser.okIcon<br>
 208       </td>
 209       <td style="vertical-align: top;">Icon<br>
 210       </td>
 211       <td style="vertical-align: top;">null<br>
 212       </td>
 213       <td style="vertical-align: top;">Icon displayed on the ok button
 214 of the file chooser.<br>
 215       </td>
 216     </tr>
 217     <tr>
 218       <td style="vertical-align: top;">FileView.directoryIcon<br>
 219       </td>
 220       <td style="vertical-align: top;">Icon<br>
 221       </td>
 222       <td style="vertical-align: top;">null<br>
 223       </td>
 224       <td style="vertical-align: top;">Icon used for directories.
 225       </td>
 226     </tr>
 227     <tr>
 228       <td style="vertical-align: top;">FileView.fileIcon<br>
 229       </td>
 230       <td style="vertical-align: top;">Icon<br>
 231       </td>
 232       <td style="vertical-align: top;">null<br>
 233       </td>
 234       <td style="vertical-align: top;">Icon used for files.
 235       </td>
 236     </tr>
 237     <tr>
 238       <td style="vertical-align: top;">FileView.computerIcon<br>
 239       </td>
 240       <td style="vertical-align: top;">Icon<br>
 241       </td>
 242       <td style="vertical-align: top;">null<br>
 243       </td>
 244       <td style="vertical-align: top;">Icon used for directories that
 245             represent the computer.  Not all platforms will make use
 246             of this icon.
 247       </td>
 248     </tr>
 249     <tr>
 250       <td style="vertical-align: top;">FileView.hardDriveIcon<br>
 251       </td>
 252       <td style="vertical-align: top;">Icon<br>
 253       </td>
 254       <td style="vertical-align: top;">null<br>
 255       </td>
 256       <td style="vertical-align: top;">Icon used to represent the root
 257             of a hard drive.  For example, on Windows this would be
 258             used when viewing the C drive.
 259       </td>
 260     </tr>
 261     <tr>
 262       <td style="vertical-align: top;">FileView.floppyDriveIcon<br>
 263       </td>
 264       <td style="vertical-align: top;">Icon<br>
 265       </td>
 266       <td style="vertical-align: top;">null<br>
 267       </td>
 268       <td style="vertical-align: top;">Icon used to represent a floppy
 269           disk.
 270       </td>
 271     </tr>
 272     <tr>
 273       <td style="vertical-align: top;">FileChooser.newFolderIcon<br>
 274       </td>
 275       <td style="vertical-align: top;">Icon<br>
 276       </td>
 277       <td style="vertical-align: top;">null<br>
 278       </td>
 279       <td style="vertical-align: top;">Icon used by the button that creates a new
 280           folder.
 281       </td>
 282     </tr>          
 283     <tr>
 284       <td style="vertical-align: top;">FileChooser.upFolderIcon<br>
 285       </td>
 286       <td style="vertical-align: top;">Icon<br>
 287       </td>
 288       <td style="vertical-align: top;">null<br>
 289       </td>
 290       <td style="vertical-align: top;">Icon used by the button that navigates to the
 291           parent folder.
 292       </td>
 293     </tr>
 294     <tr>
 295       <td style="vertical-align: top;">FileChooser.homeFolderIcon<br>
 296       </td>
 297       <td style="vertical-align: top;">Icon<br>
 298       </td>
 299       <td style="vertical-align: top;">null<br>
 300       </td>
 301       <td style="vertical-align: top;">Icon used by the button that navigates to the
 302           current user's home directory.
 303       </td>
 304     </tr>          
 305     <tr>
 306       <td style="vertical-align: top;">FileChooser.detailsViewIcon<br>
 307       </td>
 308       <td style="vertical-align: top;">Icon<br>
 309       </td>
 310       <td style="vertical-align: top;">null<br>
 311       </td>
 312       <td style="vertical-align: top;">Icon used by the button that toggles the
 313           detailed files list view.
 314       </td>
 315     </tr>             
 316     <tr>
 317       <td style="vertical-align: top;">FileChooser.listViewIcon<br>
 318       </td>
 319       <td style="vertical-align: top;">Icon<br>
 320       </td>
 321       <td style="vertical-align: top;">null<br>
 322       </td>
 323       <td style="vertical-align: top;">Icon used by the button that toggles the
 324           regular files list view, showing only an icon and the name of each
 325           file and directory.
 326       </td>
 327     </tr>          
 328     <tr>
 329       <td style="vertical-align: top;">FileChooser.viewMenuIcon<br>
 330       </td>
 331       <td style="vertical-align: top;">Icon<br>
 332       </td>
 333       <td style="vertical-align: top;">null<br>
 334       </td>
 335       <td style="vertical-align: top;">Icon used by the button that shows popup menu
 336           for selection of a view mode.
 337       </td>
 338     </tr>
 339   </tbody>
 340 </table>
 341 <br>
 342 <h4><a name="JInternalFrame"></a>JInternalFrame</h4>
 343 <h5>JInternalFrame Specific Properties</h5>
 344 <table cellpadding="2" cellspacing="2" border="1" summary="JInternalFrame specific properties"
 345  style="text-align: left; width: 100%;">
 346   <tbody>
 347     <tr>
 348       <th style="vertical-align: top; text-align: center;">Property<br>
 349       </th>
 350       <th style="vertical-align: top; text-align: center;">Expected Type<br>
 351       </th>
 352       <th style="vertical-align: top; text-align: center;">DefaultValue<br>
 353       </th>
 354       <th style="vertical-align: top; text-align: center;">Description<br>
 355       </th>
 356     </tr>
 357     <tr>
 358       <td style="vertical-align: top;">InternalFrame.icon<br>
 359       </td>
 360       <td style="vertical-align: top;">Icon</td>
 361       <td style="vertical-align: top;">null<br>
 362       </td>
 363       <td style="vertical-align: top;">Icon drawn representing the
 364 system<br>
 365 icon of the internal frame.&nbsp; If pressed<br>
 366 the system menu will be shown.<br>
 367       </td>
 368     </tr>
 369   </tbody>
 370 </table>
 371 <br>
 372 <h4><a name="JInternalFrameTitlePane"></a>JInternalFrameTitlePane</h4>
 373 <p>JInternalFrameTitlePane is the control bar located at the top of the
 374 internal frame similar to that found in a frame.<br>
 375 </p>
 376 <h5>JInternalFrameTitlePane Specific Properties</h5>
 377 <table cellpadding="2" cellspacing="2" border="1" summary="JInternalFrameTitlePane specific properties"
 378  style="text-align: left; width: 100%;">
 379   <tbody>
 380     <tr>
 381       <th style="vertical-align: top; text-align: center;">Property<br>
 382       </th>
 383       <th style="vertical-align: top; text-align: center;">Expected Type<br>
 384       </th>
 385       <th style="vertical-align: top; text-align: center;">Default Value<br>
 386       </th>
 387       <th style="vertical-align: top; text-align: center;">Description<br>
 388       </th>
 389     </tr>
 390     <tr>
 391       <td style="vertical-align: top;">InternalFrameTitlePane.maximizeIcon<br>
 392       </td>
 393       <td style="vertical-align: top;">Icon</td>
 394       <td style="vertical-align: top;">null<br>
 395       </td>
 396       <td style="vertical-align: top;">Icon drawn to indicate the
 397 ability to maximize the internal frame.<br>
 398       </td>
 399     </tr>
 400     <tr>
 401       <td style="vertical-align: top;">InternalFrameTitlePane.minimizeIcon<br>
 402       </td>
 403       <td style="vertical-align: top;">Icon</td>
 404       <td style="vertical-align: top;">null<br>
 405       </td>
 406       <td style="vertical-align: top;">Icon drawn to indicate the
 407 ability to restore the internal frame back to its previous state.<br>
 408       </td>
 409     </tr>
 410     <tr>
 411       <td style="vertical-align: top;">InternalFrameTitlePane.iconifyIcon<br>
 412       </td>
 413       <td style="vertical-align: top;">Icon</td>
 414       <td style="vertical-align: top;">null<br>
 415       </td>
 416       <td style="vertical-align: top;">Icon drawn to indicate the
 417 ability to minimize the internal frame.<br>
 418       </td>
 419     </tr>
 420     <tr>
 421       <td style="vertical-align: top;">InternalFrameTitlePane.closeIcon<br>
 422       </td>
 423       <td style="vertical-align: top;">Icon</td>
 424       <td style="vertical-align: top;">null<br>
 425       </td>
 426       <td style="vertical-align: top;">Icon drawn to indicate the
 427 abililty to close the internal frame.
 428       </td>
 429     </tr>
 430     <tr>
 431       <td style="vertical-align: top;">InternalFrameTitlePane.titleSpacing<br>
 432       </td>
 433       <td style="vertical-align: top;">Integer</td>
 434       <td style="vertical-align: top;">2</td>
 435       <td style="vertical-align: top;">Space between the
 436             buttons on the title pane and the title.
 437       </td>
 438     </tr>
 439     <tr>
 440       <td style="vertical-align: top;">InternalFrameTitlePane.buttonSpacing<br>
 441       </td>
 442       <td style="vertical-align: top;">Integer</td>
 443       <td style="vertical-align: top;">2</td>
 444       <td style="vertical-align: top;">Space between the buttons on
 445             the title pane.
 446       </td>
 447     </tr>
 448     <tr>
 449       <td style="vertical-align: top;">InternalFrameTitlePane.maxFrameIconSize<br>
 450       </td>
 451       <td style="vertical-align: top;">Dimension</td>
 452       <td style="vertical-align: top;">16x16</td>
 453       <td style="vertical-align: top;">Maximum size of the frame
 454             icon that will be rendered on the title pane.  If the icon
 455             is bigger than this size, it will be scaled down.
 456       </td>
 457     </tr>
 458     <tr>
 459       <td style="vertical-align: top;">InternalFrameTitlePane.titleAlignment<br>
 460       </td>
 461       <td style="vertical-align: top;">leading|trailing|center</td>
 462       <td style="vertical-align: top;">leading</td>
 463       <td style="vertical-align: top;">Alignment for the title.
 464             With a left to right component orientation leading is left
 465             and trailing right.  With a right to left component
 466             orientation leading is right and trailing left.
 467       </td>
 468     </tr>
 469   </tbody>
 470 </table>
 471 <br>
 472 <h4><a name="JList">JList</a></h4>
 473 <p> JList's sets the name of the renderer to List.renderer.       JList
 474 supports the following properties: </p>
 475 <h5>JList Specific Properties</h5>
 476 <table border="1" summary="JList specific properties">
 477   <thead><tr>
 478     <th>Property</th>
 479     <th>Expected Type</th>
 480     <th>Default Value</th>
 481     <th>Description </th>
 482   </tr>
 483   </thead> <tbody>
 484     <tr>
 485       <td>List.rendererUseListColors</td>
 486       <td>Boolean</td>
 487       <td>true     </td>
 488       <td>If true the renderers state is not updated, and the         text
 489 colors come from JList's getSelectionBackground and     
 490 getSelectionForeground methods. If false, the renderer's            state is
 491 updated and the colors will instead come from the           Style.      </td>
 492     </tr>
 493     <tr>
 494       <td>List.rendererUseUIBorder</td>
 495       <td>Boolean</td>
 496       <td>true     </td>
 497       <td>If true setBorder on the renderer will succeed   regardless
 498 of the border passed in, otherwise setBorder on             the renderer will
 499 only succeed if it is a Synth Border.   </td>
 500     </tr>
 501     <tr>
 502       <td>List.cellHeight</td>
 503       <td>Integer</td>
 504       <td>-1       </td>
 505       <td>Cell height of the JList. Is this is -1,         <code>setFixedCellHeight</code>
 506 is not invoked. </td>
 507     </tr>
 508   </tbody>
 509 </table>
 510 <br>
 511 <h4><a name="menuProperties">Menu Properties</a></h4>
 512 <p> The Menu classes (JCheckBoxMenuItem, JMenu, JMenuItem, and
 513 JRadioButtonMenuItem) all support the same set of properties and behave
 514 similarly.       Each component consists of two Regions: the region
 515 specific to the       component and Region.MENU_ITEM_ACCELERATOR.
 516 MENU_ITEM_ACCELERATOR is used for painting the accelerator. Both Regions
 517 paint text using the TEXT_FOREGROUND ColorType. The following set of
 518 properties are supported: </p>
 519 <table border="1" summary="Menu classes common properties">
 520   <thead><tr>
 521     <th>Property</th>
 522     <th>Expected Type</th>
 523     <th>Default Value</th>
 524     <th>Description </th>
 525   </tr>
 526   </thead> <tbody>
 527         <tr>
 528       <td>prefix.acceleratorDelimiter</td>
 529       <td>String</td>
 530       <td>+        </td>
 531       <td>String separator between the description of the          modifiers
 532 and the key, for example <code>Ctrl        &lt;acceleratorDelimiter&gt; X</code>.
 533         </td>
 534     </tr>
 535     <tr>
 536       <td>prefix.arrowIcon</td>
 537       <td>Icon</td>
 538       <td>null     </td>
 539       <td>Icon drawn to the right of the text (or left when the   
 540 ComponentOrientation is right to left) of the text. This            is
 541 typically only defined for JMenu.       </td>
 542     </tr>
 543     <tr>
 544       <td>prefix.checkIcon</td>
 545       <td>Icon</td>
 546       <td>null     </td>
 547       <td>Icon drawn to the left of the text (or right when the   
 548 ComponentOrientation is right to left) of the text. This            is
 549 typically only defined for JCheckBoxMenuItem and         JRadioButtonMenuItem
 550 to provide the check or radio button.   </td>
 551     </tr>
 552     <tr>
 553       <td>prefix.margin</td>
 554       <td>Insets</td>
 555       <td>Empty Insets (0, 0, 0, 0)        </td>
 556       <td>Margin for the JMenuItem. Refer to the javadoc of
 557             <code>javax.swing.AbstractButton#setMargin(java.awt.Insets)</code> for details
 558 of how the margin is used.      </td>
 559     </tr>
 560     <tr>
 561       <td>prefix.textIconGap</td>
 562       <td>Integer</td>
 563       <td>4        </td>
 564       <td>Padding between the icon and text. Refer to the javadoc for 
 565 <code>javax.swing.AbstractButton#setIconTextGap(int)</code> for details of how
 566 this is used. </td>
 567     </tr>
 568   </tbody>
 569 </table>
 570 <p> <code>Prefix</code> is one of: CheckBoxMenuItem, Menu, MenuItem, or
 571 RadioButtonMenuItem. </p>
 572 <p> JMenu also supports the following properties: </p>
 573 <table border="1" summary="JMenu specific properties">
 574   <thead><tr>
 575     <th>Property</th>
 576     <th>Expected Type</th>
 577     <th>Default Value</th>
 578     <th>Description </th>
 579   </tr>
 580   </thead> <tbody>
 581         <tr>
 582       <td>Menu.delay</td>
 583       <td>Integer</td>
 584       <td>200      </td>
 585       <td>Sets the delay before the menu appears.         </td>
 586     </tr>
 587     <tr>
 588       <td>Menu.shortcutKeys</td>
 589       <td>int[]</td>
 590       <td>KeyEvent.ALT_MASK        </td>
 591       <td>Array of the KeyEvent modifiers to use for shortcut keys. </td>
 592     </tr>
 593   </tbody>
 594 </table>
 595 <br>
 596 <h4><a name="JOptionPane">JOptionPane</a></h4>
 597 <p> JOptionPane is a composite component and may consist of numerous child
 598 components, they are: OptionPane.button, OptionPane.label,
 599 OptionPane.comboBox, OptionPane.scrollPane, OptionPane.list,
 600 OptionPane.textField, OptionPane.iconLabel. </p>
 601 <h5>JOptionPane Specific Properties</h5>
 602 <table border="1" summary="JOptionPane specific properties">
 603   <thead><tr>
 604     <th>Property</th>
 605     <th>Expected Type</th>
 606     <th>Default Value</th>
 607     <th>Description </th>
 608   </tr>
 609   </thead> <tbody>
 610         <tr>
 611       <td>OptionPane.buttonAreaBorder</td>
 612       <td>Border   </td>
 613       <td>null     </td>
 614       <td>Border around the button area.  </td>
 615     </tr>
 616     <tr>
 617       <td>OptionPane.buttonClickThreshhold</td>
 618       <td>Integer          </td>
 619       <td>0        </td>
 620       <td>Passed to the created buttons setMultiClickThreshhold.  </td>
 621     </tr>
 622     <tr>
 623       <td>OptionPane.buttonOrientation</td>
 624       <td>Integer          </td>
 625       <td>SwingConstants.CENTER    </td>
 626       <td>How the buttons should be layed out, one of     
 627 SwingConstants.LEFT, SwingConstants.RIGHT or        SwingConstants.CENTER
 628 (this will be flipped when in a             right to left locale).      </td>
 629     </tr>
 630     <tr>
 631       <td>OptionPane.buttonPadding</td>
 632       <td>Integer          </td>
 633       <td>6        </td>
 634       <td>Amount of space between buttons.        </td>
 635     </tr>
 636     <tr>
 637       <td>OptionPane.cancelIcon</td>
 638       <td>Icon     </td>
 639       <td>null     </td>
 640       <td>Icon for the cancel button.     </td>
 641     </tr>
 642     <tr>
 643       <td>OptionPane.errorIcon</td>
 644       <td>Icon     </td>
 645       <td>null     </td>
 646       <td>Icon used for ERROR_MESSAGE.    </td>
 647     </tr>
 648     <tr>
 649       <td>OptionPane.informationIcon</td>
 650       <td>Icon     </td>
 651       <td>null     </td>
 652       <td>Icon used for INFORMATION_MESSAGE.      </td>
 653     </tr>
 654     <tr>
 655       <td>OptionPane.isYesLast</td>
 656       <td>Boolean          </td>
 657       <td>false    </td>
 658       <td>If true the 'yes' button leads other buttons,       otherwise
 659 it follows the other buttons.   </td>
 660     </tr>
 661     <tr>
 662       <td>OptionPane.questionIcon</td>
 663       <td>Icon     </td>
 664       <td>null     </td>
 665       <td>Icon used for error QUESTION_MESSAGE.   </td>
 666     </tr>
 667     <tr>
 668       <td>OptionPane.minimumSize</td>
 669       <td>Dimension        </td>
 670       <td>262x90</td>
 671       <td>Minimum size for the JOptionPane.       </td>
 672     </tr>
 673     <tr>
 674       <td>OptionPane.noIcon</td>
 675       <td>Icon     </td>
 676       <td>null     </td>
 677       <td>Icon for the no button.         </td>
 678     </tr>
 679     <tr>
 680       <td>OptionPane.okIcon</td>
 681       <td>Icon     </td>
 682       <td>null     </td>
 683       <td>Icon for the ok button.         </td>
 684     </tr>
 685     <tr>
 686       <td>OptionPane.sameSizeButtons</td>
 687       <td>Boolean          </td>
 688       <td>true     </td>
 689       <td>Whether or not all the buttons should be the same size.         </td>
 690     </tr>
 691     <tr>
 692       <td>OptionPane.separatorPadding</td>
 693       <td>Integer          </td>
 694       <td>6</td>
 695       <td>Amount of padding between the message area and   separator.     </td>
 696     </tr>
 697     <tr>
 698       <td>OptionPane.yesIcon</td>
 699       <td>Icon     </td>
 700       <td>null     </td>
 701       <td>Icon for the yes button.        </td>
 702     </tr>
 703     <tr>
 704       <td>OptionPane.warningIcon</td>
 705       <td>Icon     </td>
 706       <td>null     </td>
 707       <td>Icon used for error WARNING_MESSAGE     </td>
 708     </tr>
 709   </tbody>
 710 </table>
 711 <br>
 712 <h4><a name="JProgressBar"></a>JProgressBar<br>
 713 </h4>
 714 <h5>JProgressBar Specific Properties<br>
 715 </h5>
 716 <table cellpadding="2" cellspacing="2" border="1" summary="JProgressBar specific properties"
 717  style="text-align: left; width: 100%;">
 718   <tbody>
 719     <tr>
 720       <th style="vertical-align: top; text-align: center;">Property</th>
 721       <th style="vertical-align: top; text-align: center;">Expected Type<br>
 722       </th>
 723       <th style="vertical-align: top; text-align: center;">Default Value<br>
 724       </th>
 725       <th style="vertical-align: top; text-align: center;">Description</th>
 726     </tr>
 727     <tr>
 728       <td style="vertical-align: top;">ProgressBar.repaintInterval<br>
 729       </td>
 730       <td style="vertical-align: top;">Integer<br>
 731       </td>
 732       <td style="vertical-align: top;">50<br>
 733       </td>
 734       <td style="vertical-align: top;">Number of milliseconds between
 735 repaints for indeterminate progress bars.<br>
 736       </td>
 737     </tr>
 738     <tr>
 739       <td style="vertical-align: top;">ProgressBar.cycleTime<br>
 740       </td>
 741       <td style="vertical-align: top;">Integer<br>
 742       </td>
 743       <td style="vertical-align: top;">3000<br>
 744       </td>
 745       <td style="vertical-align: top;">Number of milliseconds used to
 746 determine how far to move<br>
 747 the bouncing box per frame when the progress bar is indeterminate.<br>
 748       </td>
 749     </tr>
 750   </tbody>
 751 </table>
 752 <h4><a name="JRadioButton">JRadioButton</a></h4>
 753 <p> JRadioButton paints text using the TEXT_FOREGROUND ColorType. In
 754 addition to the <a href="#buttonProperties">Button        properties</a>,
 755 JRadioButton supports the following property: </p>
 756 <h5>JRadioButton Specific Properties</h5>
 757 <table border="1" summary="JRadioButton specific properties">
 758   <thead><tr>
 759     <th>Property</th>
 760     <th>Expected Type</th>
 761     <th>Default Value</th>
 762     <th>Description </th>
 763   </tr>
 764   </thead> <tbody>
 765         <tr>
 766       <td>RadioButton.icon</td>
 767       <td>Icon</td>
 768       <td>null     </td>
 769       <td>Icon used to render the radio indicator. </td>
 770     </tr>
 771   </tbody>
 772 </table>
 773 <br>
 774 <h4><a name="JScrollBar">JScrollBar</a></h4>
 775 <p> JScrollBar is a composite component that consists of the following
 776 child Components: </p>
 777 <table border="1" summary="JScrollBar child components">
 778   <thead><tr>
 779     <th>Name</th>
 780     <th>Type</th>
 781     <th>Description </th>
 782   </tr>
 783   </thead> <tbody>
 784         <tr>
 785       <td>ScrollBar.button</td>
 786       <td>SynthArrowButton         </td>
 787       <td>Identifies the increment/decrement buttons. </td>
 788     </tr>
 789   </tbody>
 790 </table>
 791 
 792 <h5>JScrollBar Specific Properties</h5>
 793 <table border="1" summary="JScrollBar specific properties">
 794   <thead><tr>
 795     <th>Property</th>
 796     <th>Expected Type</th>
 797     <th>Default Value</th>
 798     <th>Description </th>
 799   </tr>
 800   </thead> <tbody>
 801         <tr>
 802       <td>ScrollBar.allowsAbsolutePositioning</td>
 803       <td>Boolean          </td>
 804       <td>false</td>
 805       <td>If true, middle mouse click in the track will       set the
 806 position of the track to where the mouse is.    </td>
 807     </tr>
 808     <tr>
 809       <td>ScrollBar.maximumThumbSize</td>
 810       <td>Dimension</td>
 811       <td>4096x4096        </td>
 812       <td>Maximum thumb size.     </td>
 813     </tr>
 814     <tr>
 815       <td>ScrollBar.minimumThumbSize</td>
 816       <td>Dimension</td>
 817       <td>Derived from ScrollBar.thumbHeight</td>
 818       <td>The minimum thumb size.  If this is not specified the
 819             minimum thumb size is ScrollBar.thumbHeight plus the insets
 820             of the scrollbar along the opposite axis of the scrollbar
 821             and 7 along the other axis.  For example, if you have not
 822             specified Insets for a scrollbar, and the orientation of
 823             the scrollbar is vertical, than the minimum thumb
 824             size width is ScrollBar.thumbHeight with a height of 7.</td>
 825     </tr>
 826     <tr>
 827       <td>ScrollBar.squareButtons</td>
 828       <td>Boolean          </td>
 829       <td>false</td>
 830       <td>If true, the width and height of the scrollbar      buttons
 831 will be made equal.     </td>
 832     </tr>
 833     <tr>
 834       <td>ScrollBar.thumbHeight</td>
 835       <td>Integer</td>
 836       <td>14       </td>
 837       <td>The preferred height, when the orientation of the
 838             scrollbar is horizontal, or preferred width when the
 839             orientation of the scrollbar is vertical.</td>
 840     </tr>
 841   </tbody>
 842 </table>
 843 <br>
 844 <h4><a name="Separator">Separators</a></h4>
 845 <p> All of the separator classes, JSeparator, JPopupMenu.Separator and
 846 JToolBar.Separator use the same property: </p>
 847 <table border="1" summary="Separator classes common properties">
 848   <thead><tr>
 849     <th>Property</th>
 850     <th>Expected Type</th>
 851     <th>Default Value</th>
 852     <th>Description </th>
 853   </tr>
 854   </thead> <tbody>
 855         <tr>
 856       <td>Separator.thickness</td>
 857       <td>Integer</td>
 858       <td>2        </td>
 859       <td>Preferred width, for vertically aligned separators, or  
 860 preferred height for horizontally aligned separators. The        resulting
 861 preferred size will include the Insets. </td>
 862     </tr>
 863   </tbody>
 864 </table>
 865 <p> JToolBar.Separator also supports the following property: </p>
 866 <table border="1" summary="JToolBar.Separator specific properties">
 867   <thead><tr>
 868     <th>Property</th>
 869     <th>Expected Type</th>
 870     <th>Default Value</th>
 871     <th>Description </th>
 872   </tr>
 873   </thead> <tbody>
 874         <tr>
 875       <td>ToolBar.separatorSize</td>
 876       <td>Dimension</td>
 877       <td>null     </td>
 878       <td>The value of this is passed to the <code>javax.swing.JToolBar$Separator#setSeparatorSize(java.awt.Dimension)</code>
 879 method. If unspecified <code>setSeparatorSize</code> is         not
 880 invoked. </td>
 881     </tr>
 882   </tbody>
 883 </table>
 884 <br>
 885 <h4><a name="JScrollPane">JScrollPane</a></h4>
 886 <p> 
 887       JScrollPane is unique in that it provides a method for setting
 888       the Border around the JViewport with JViewport throwing an
 889       IllegalArgumentException from <code>setBorder</code>. To
 890       accommodate this a special border is installed on the
 891       <code>JScrollPane</code> that uses the 
 892       insets from the key
 893       <code>ScrollPane.viewportBorderInsets</code>. The
 894       <code>SynthPainter</code> method
 895       <code>paintViewportBorder</code> is called to paint the
 896       <code>Viewport</code>s border.
 897  </p>
 898 <h5>JScrollPane Specific Properties</h5>
 899 <table border="1" summary="JScrollPane specific properties">
 900   <thead><tr>
 901     <th>Property</th>
 902     <th>Expected Type</th>
 903     <th>Default Value</th>
 904     <th>Description </th>
 905   </tr>
 906   </thead> <tbody>
 907     <tr>
 908       <td>ScrollPane.viewportBorderInsets</td>
 909       <td>Insets</td>
 910       <td>null     </td>
 911       <td>Insets for the viewport Border.         </td>
 912     </tr>
 913   </tbody>
 914 </table>
 915 <br>
 916 <h4><a name="JSplitPane">JSplitPane</a></h4>
 917 <p> JSplitPane is a composite component that will contain a divider and
 918 potentially two buttons, if setOneTouchExpandable(true) has been
 919 invoked. The two buttons will be named:
 920 SplitPaneDivider.leftOneTouchButton and
 921 SplitPaneDivider.rightOneTouchButton. </p>
 922 <h5>JSplitPane Specific Properties</h5>
 923 <table border="1" summary="JSplitPane specific properties">
 924   <thead><tr>
 925     <th>Property</th>
 926     <th>Expected Type</th>
 927     <th>Default Value</th>
 928     <th>Description </th>
 929   </tr>
 930   </thead> <tbody>
 931     <tr>
 932       <td>SplitPane.centerOneTouchButtons</td>
 933       <td>Boolean</td>
 934       <td>true     </td>
 935       <td>If true, the one touch buttons are centered on the divider.     </td>
 936     </tr>
 937     <tr>
 938       <td>SplitPane.oneTouchButtonOffset</td>
 939       <td>Integer</td>
 940       <td>2        </td>
 941       <td>Distance between the one touch buttons.         </td>
 942     </tr>
 943     <tr>
 944       <td>SplitPane.oneTouchButtonSize</td>
 945       <td>Integer</td>
 946       <td>6        </td>
 947       <td>Size to make the one touch buttons.     </td>
 948     </tr>
 949     <tr>
 950       <td>SplitPane.oneTouchExpandable</td>
 951       <td>Boolean</td>
 952       <td>null     </td>
 953       <td>If non null, the value of this is passed to     
 954 setOneTouchExpandable.  </td>
 955     </tr>
 956     <tr>
 957       <td>SplitPane.size</td>
 958       <td>Integer</td>
 959       <td>6        </td>
 960       <td>Size of the divider </td>
 961     </tr>
 962   </tbody>
 963 </table>
 964 <br>
 965 <h4><a name="JSlider"></a>JSlider</h4>
 966 <h5>JSlider Specific Properties</h5>
 967 <table cellpadding="2" cellspacing="2" border="1" summary="JSlider specific properties"
 968  style="text-align: left; width: 100%;">
 969   <tbody>
 970     <tr>
 971       <th style="vertical-align: top; text-align: center;">Property<br>
 972       </th>
 973       <th style="vertical-align: top; text-align: center;">Expected Type<br>
 974       </th>
 975       <th style="vertical-align: top; text-align: center;">Default Value<br>
 976       </th>
 977       <th style="vertical-align: top; text-align: center;">Description<br>
 978       </th>
 979     </tr>
 980     <tr>
 981       <td style="vertical-align: top;">Slider.thumbWidth<br>
 982       </td>
 983       <td style="vertical-align: top;">Integer<br>
 984       </td>
 985       <td style="vertical-align: top;">30<br>
 986       </td>
 987       <td style="vertical-align: top;">Width of the slider thumb<br>
 988       </td>
 989     </tr>
 990     <tr>
 991       <td style="vertical-align: top;">Slider.thumbHeight<br>
 992       </td>
 993       <td style="vertical-align: top;">Integer<br>
 994       </td>
 995       <td style="vertical-align: top;">14<br>
 996       </td>
 997       <td style="vertical-align: top;">Height of the slider thumb<br>
 998       </td>
 999     </tr>
1000     <tr>
1001       <td style="vertical-align: top;">Slider.trackBorder<br>
1002       </td>
1003       <td style="vertical-align: top;">Integer<br>
1004       </td>
1005       <td style="vertical-align: top;">1<br>
1006       </td>
1007       <td style="vertical-align: top;">Width of the track border<br>
1008       </td>
1009     </tr>
1010     <tr>
1011       <td style="vertical-align: top;">Slider.paintValue<br>
1012       </td>
1013       <td style="vertical-align: top;">Boolean<br>
1014       </td>
1015       <td style="vertical-align: top;">true<br>
1016       </td>
1017       <td style="vertical-align: top;">Whether or not to paint the
1018 current value<br>
1019 of the slider.<br>
1020       </td>
1021     </tr>
1022   </tbody>
1023 </table>
1024 <br>
1025 <h4><a name="JTabbedPane"></a>JTabbedPane</h4>
1026 <h5>JTabbedPane Specific Properties</h5>
1027 <table cellpadding="2" cellspacing="2" border="1" summary="JTabbedPane specific properties"
1028  style="text-align: left; width: 100%;">
1029   <tbody>
1030     <tr>
1031       <th style="vertical-align: top; text-align: center;">Property</th>
1032       <th style="vertical-align: top; text-align: center;">Expected Type<br>
1033       </th>
1034       <th style="vertical-align: top; text-align: center;">Default Value<br>
1035       </th>
1036       <th style="vertical-align: top; text-align: center;">Description</th>
1037     </tr>
1038     <tr>
1039       <td style="vertical-align: top;">TabbedPane.tabRunOverlay<br>
1040       </td>
1041       <td style="vertical-align: top;">Integer<br>
1042       </td>
1043       <td style="vertical-align: top;">0<br>
1044       </td>
1045       <td style="vertical-align: top;">Number of pixels to overlap
1046             tabs when there is more than one row.  <br>
1047       </td>
1048     </tr>
1049     <tr>
1050       <td style="vertical-align: top;">TabbedPane.textIconGap<br>
1051       </td>
1052       <td style="vertical-align: top;">Integer<br>
1053       </td>
1054       <td style="vertical-align: top;">0<br>
1055       </td>
1056       <td style="vertical-align: top;">Padding added between the icon
1057             and text on a tab.  If there is no text or icon this value
1058             is not used.
1059       </td>
1060     </tr>
1061     <tr>
1062       <td style="vertical-align: top;">TabbedPane.selectedTabPadInsets<br>
1063       </td>
1064       <td style="vertical-align: top;">Insets<br>
1065       </td>
1066       <td style="vertical-align: top;">Empty Insets (0, 0, 0, 0)<br>
1067       </td>
1068       <td style="vertical-align: top;">Extra insets added to the
1069 selected tab.<br>
1070       </td>
1071     </tr>
1072     <tr>
1073       <td style="vertical-align: top;">TabbedPane.selectionFollowsFocus<br>
1074       </td>
1075       <td style="vertical-align: top;">Boolean<br>
1076       </td>
1077       <td style="vertical-align: top;">true<br>
1078       </td>
1079       <td style="vertical-align: top;">If true the selection of the
1080             tabbed pane changes as the user navigates the tabs with a
1081             mouse.<br>
1082       </td>
1083     </tr>
1084   </tbody>
1085 </table>
1086 <br>
1087 <h4><a name="JTable">JTable</a></h4>
1088 <p> JTable sets the name of the renderer to Table.cellRenderer.      
1089 JTable supports the following properties: </p>
1090 <h5>JTable Specific Properties</h5>
1091 <table border="1" summary="JTable specific properties">
1092   <thead><tr>
1093     <th>Property</th>
1094     <th>Expected Type</th>
1095     <th>Default Value</th>
1096     <th>Description </th>
1097   </tr>
1098   </thead> <tbody>
1099     <tr>
1100       <td>Table.gridColor</td>
1101       <td>Color</td>
1102       <td>null     </td>
1103       <td>Color used for the grid. If null the foreground from        the
1104 style is used.  </td>
1105     </tr>
1106     <tr>
1107       <td>Table.rendererUseTableColors</td>
1108       <td>Boolean</td>
1109       <td>true     </td>
1110       <td>If true the renderers state is not updated, and the         text
1111 colors come from JTable's getSelectionBackground and       
1112 getSelectionForeground methods. If false, the renderer's            state is
1113 updated and the colors will instead come from the           Style.      </td>
1114     </tr>
1115     <tr>
1116       <td>Table.rendererUseUIBorder</td>
1117       <td>Boolean</td>
1118       <td>true     </td>
1119       <td>If true setBorder on the renderer will succeed     
1120 regardless of the border passed in, otherwise setBorder on          the
1121 renderer will only succeed if it is a Synth Border.     </td>
1122     </tr>
1123     <tr>
1124       <td>Table.rowHeight</td>
1125       <td>Integer</td>
1126       <td>-1       </td>
1127       <td>If not -1 setRowHeight is invoked on the JTable. </td>
1128     </tr>
1129   </tbody>
1130 </table>
1131 <br>
1132 <h4><a name="JTree">JTree</a></h4>
1133 <p> JTree sets the name of the renderer to Tree.renderer, the name of
1134 the editor is Tree.cellEditor.</p>
1135 <h5>JTree Specific Properties</h5>
1136 <table border="1" summary="JTree specific properties">
1137   <thead><tr>
1138     <th>Property</th>
1139     <th>Expected Type</th>
1140     <th>Default Value</th>
1141     <th>Description </th>
1142   </tr>
1143   </thead> <tbody>
1144     <tr>
1145       <td>Tree.collapsedIcon</td>
1146       <td>Icon</td>
1147       <td>null     </td>
1148       <td>Icon to use when a node is collapsed.   </td>
1149     </tr>
1150     <tr>
1151       <td>Tree.drawHorizontalLines</td>
1152       <td>Boolean</td>
1153       <td>true     </td>
1154       <td>If true nodes have a horizontal connecting them to the  
1155 leading edge of their parent.   </td>
1156     </tr>
1157     <tr>
1158       <td>Tree.drawVerticalLines</td>
1159       <td>Boolean</td>
1160       <td>true     </td>
1161       <td>If true a vertical line is drawn down from expanded nodes.      </td>
1162     </tr>
1163     <tr>
1164       <td>Tree.expandedIcon</td>
1165       <td>Icon</td>
1166       <td>null     </td>
1167       <td>Icon to use when a node has been expanded.      </td>
1168     </tr>
1169     <tr>
1170       <td>Tree.leftChildIndent</td>
1171       <td>Integer</td>
1172       <td>0        </td>
1173       <td>This plus Tree.rightChildIndent account for the             total
1174 space, along the y axis, to offset nodes from their         parent.     </td>
1175     </tr>
1176     <tr>
1177       <td>Tree.rightChildIndent</td>
1178       <td>Integer</td>
1179       <td>0        </td>
1180       <td>This plus Tree.leftChildIndent account for the      total
1181 space, along the y axis, to offset nodes from their         parent.     </td>
1182     </tr>
1183     <tr>
1184       <td>Tree.rowHeight</td>
1185       <td>Integer</td>
1186       <td>-1       </td>
1187       <td>Row height for the Tree.</td>
1188     </tr>
1189     <tr>
1190       <td>Tree.scrollsHorizontallyAndVertically</td>
1191       <td>Boolean</td>
1192       <td>false    </td>
1193       <td>If false and scrolling needs to happen to accommodate    cells
1194 it will only happen along the vertical axis, if             true, scrolling
1195 may happen along both the horizontal and            vertical axis.      </td>
1196     </tr>
1197     <tr>
1198       <td>Tree.scrollsOnExpand</td>
1199       <td>Boolean</td>
1200       <td>true     </td>
1201       <td>Whether or not the JTree should scroll when a node is   
1202 expanded. </td>
1203     </tr>
1204     <tr>
1205       <td>Tree.linesStyle</td>
1206       <td>String</td>
1207       <td>      </td>
1208       <td>The styles of the lines in the tree. Synth supports solid lines
1209 (empty value) and dashed lines ("dashed" value). It is possible to add new
1210 styles by creating a new <a href="../SynthGraphicsUtils.html">SynthGraphicsUtils</a>
1211 and <a href="synthFileFormat.html#e.graphicsUtils">binding it</a> to the tree.</td>
1212     </tr>
1213   </tbody>
1214 </table>
1215 <h4><a name="JToggleButton">JToggleButton</a></h4>
1216 <p> JToggleButton paints text using the TEXT_FOREGROUND ColorType. In
1217 addition to the <a href="#buttonProperties">Button        properties</a>,
1218 JToggleButton supports the following property: </p>
1219 <h5>JToggleButton Specific Properties</h5>
1220 <table border="1" summary="JToggleButton specific properties">
1221   <thead><tr>
1222     <th>Property</th>
1223     <th>Expected Type</th>
1224     <th>Default Value</th>
1225     <th>Description </th>
1226   </tr>
1227   </thead> <tbody>
1228         <tr>
1229       <td>ToggleButton.icon</td>
1230       <td>Icon</td>
1231       <td>null     </td>
1232       <td>Icon used to render the radio indicator. </td>
1233     </tr>
1234   </tbody>
1235 </table>
1236 <br>
1237 <h4><a name="buttonProperties">Button Properties</a></h4>
1238 <p> Each of the Button classes (JButton, JCheckBox, JRadioButton,
1239 JToggleButton and SynthArrowButton) support a similar set of properties.
1240 These properties are: </p>
1241 <table border="1" summary="Button classes common properties">
1242   <thead><tr>
1243     <th>Property</th>
1244     <th>Expected Type</th>
1245     <th>Default Value</th>
1246     <th>Description </th>
1247   </tr>
1248   </thead> <tbody>
1249         <tr>
1250       <td>prefix.contentAreaFilled</td>
1251       <td>Integer</td>
1252       <td>true     </td>
1253       <td>Refer to the javadoc of <code>javax.swing.AbstractButton#contentAreaFilled(boolean)</code>      for details
1254 of how this is used. It is up to the Painter        to properly honor this
1255 property.       </td>
1256     </tr>
1257     <tr>
1258       <td>prefix.iconTextGap</td>
1259       <td>Integer</td>
1260       <td>If          unspecified, JButton.setIconTextGap is not invoked.         </td>
1261       <td>Padding between the icon and text. Refer to the javadoc of <code>javax.swing.AbstractButton#setIconTextGap(int)</code>          for details of how
1262 this is used.   </td>
1263     </tr>
1264     <tr>
1265       <td>prefix.margin</td>
1266       <td>Insets</td>
1267       <td>Empty Insets (0, 0, 0, 0)        </td>
1268       <td>Margin for the JButton. Refer to the javadoc of <code>javax.swing.AbstractButton#setMargin(java.awt.Insets)</code>      for details
1269 of how the margin is used.      </td>
1270     </tr>
1271     <tr>
1272       <td>prefix.textShiftOffset</td>
1273       <td>Integer</td>
1274       <td>0        </td>
1275       <td>Amount to shift the text and icon, along the x and y     axis,
1276 from where it would normally be layed out. This is          only used when
1277 the button is in a pressed state and does           not have a pressed icon. </td>
1278     </tr>
1279   </tbody>
1280 </table>
1281 <p> <code>Prefix</code> is one of: Button, CheckBox, RadioButton or
1282 JToggleButton.<br>
1283 </p>
1284 <h4><a name="textProperties"></a>Text Properties<br>
1285 </h4>
1286 <table cellpadding="2" cellspacing="2" border="1" summary="Text properties"
1287  style="text-align: left; width: 100%;">
1288   <tbody>
1289     <tr>
1290       <th style="vertical-align: top; text-align: center;">Property</th>
1291       <th style="vertical-align: top; text-align: center;">Expected Type<br>
1292       </th>
1293       <th style="vertical-align: top; text-align: center;">Default Value<br>
1294       </th>
1295       <th style="vertical-align: top; text-align: center;">Description<br>
1296       </th>
1297     </tr>
1298     <tr>
1299       <td style="vertical-align: top;">prefix.caretForeground<br>
1300       </td>
1301       <td style="vertical-align: top;">Color<br>
1302       </td>
1303       <td style="vertical-align: top;">#000000</td>
1304       <td style="vertical-align: top;">Color of the caret.<br>
1305       </td>
1306     </tr>
1307     <tr>
1308       <td style="vertical-align: top;">prefix.margin<br>
1309       </td>
1310       <td style="vertical-align: top;">Insets</td>
1311       <td style="vertical-align: top;">Empty Insets (0, 0, 0, 0),<br>
1312 EditorPane and TextPane (3, 3, 3, 3)<br>
1313       </td>
1314       <td style="vertical-align: top;">Margins of the text component.<br>
1315       </td>
1316     </tr>
1317     <tr>
1318       <td style="vertical-align: top;">prefix.caretBlinkRate<br>
1319       </td>
1320       <td style="vertical-align: top;">Integer<br>
1321       </td>
1322       <td style="vertical-align: top;">500<br>
1323       </td>
1324       <td style="vertical-align: top;">Number of milliseconds defining
1325 the blink rate fo the caret.<br>
1326       </td>
1327     </tr>
1328   </tbody>
1329 </table>
1330 <p><code>Prefix</code> is one of: EditorPane, FormattedTextField,
1331 PasswordField, TextArea, TextField or TextPane.<br>
1332 </p>
1333 </body>
1334 </html>