62 * <code>MetalLookAndFeel</code>, as well as update the UI
63 * of any previously created widgets. Otherwise the results are undefined.
64 * The following illustrates how to do this:
65 * <pre>
66 * // turn off bold fonts
67 * UIManager.put("swing.boldMetal", Boolean.FALSE);
68 *
69 * // re-install the Metal Look and Feel
70 * UIManager.setLookAndFeel(new MetalLookAndFeel());
71 *
72 * // Update the ComponentUIs for all Components. This
73 * // needs to be invoked for all windows.
74 * SwingUtilities.updateComponentTreeUI(rootComponent);
75 * </pre>
76 * <p>
77 * <strong>Warning:</strong>
78 * Serialized objects of this class will not be compatible with
79 * future Swing releases. The current serialization support is
80 * appropriate for short term storage or RMI between applications running
81 * the same version of Swing. As of 1.4, support for long term storage
82 * of all JavaBeans™
83 * has been added to the <code>java.beans</code> package.
84 * Please see {@link java.beans.XMLEncoder}.
85 *
86 * @see MetalLookAndFeel
87 * @see MetalLookAndFeel#setCurrentTheme
88 *
89 * @author Steve Wilson
90 */
91 @SuppressWarnings("serial") // Same-version serialization only
92 public class DefaultMetalTheme extends MetalTheme {
93 /**
94 * Whether or not fonts should be plain. This is only used if
95 * the defaults property 'swing.boldMetal' == "false".
96 */
97 private static final boolean PLAIN_FONTS;
98
99 /**
100 * Names of the fonts to use.
101 */
102 private static final String[] fontNames = {
|
62 * <code>MetalLookAndFeel</code>, as well as update the UI
63 * of any previously created widgets. Otherwise the results are undefined.
64 * The following illustrates how to do this:
65 * <pre>
66 * // turn off bold fonts
67 * UIManager.put("swing.boldMetal", Boolean.FALSE);
68 *
69 * // re-install the Metal Look and Feel
70 * UIManager.setLookAndFeel(new MetalLookAndFeel());
71 *
72 * // Update the ComponentUIs for all Components. This
73 * // needs to be invoked for all windows.
74 * SwingUtilities.updateComponentTreeUI(rootComponent);
75 * </pre>
76 * <p>
77 * <strong>Warning:</strong>
78 * Serialized objects of this class will not be compatible with
79 * future Swing releases. The current serialization support is
80 * appropriate for short term storage or RMI between applications running
81 * the same version of Swing. As of 1.4, support for long term storage
82 * of all JavaBeans
83 * has been added to the <code>java.beans</code> package.
84 * Please see {@link java.beans.XMLEncoder}.
85 *
86 * @see MetalLookAndFeel
87 * @see MetalLookAndFeel#setCurrentTheme
88 *
89 * @author Steve Wilson
90 */
91 @SuppressWarnings("serial") // Same-version serialization only
92 public class DefaultMetalTheme extends MetalTheme {
93 /**
94 * Whether or not fonts should be plain. This is only used if
95 * the defaults property 'swing.boldMetal' == "false".
96 */
97 private static final boolean PLAIN_FONTS;
98
99 /**
100 * Names of the fonts to use.
101 */
102 private static final String[] fontNames = {
|