193 194 195 /** 196 * Initialize the <code>JSpinner</code> <code>border</code>, 197 * <code>foreground</code>, and <code>background</code>, properties 198 * based on the corresponding "Spinner.*" properties from defaults table. 199 * The <code>JSpinners</code> layout is set to the value returned by 200 * <code>createLayout</code>. This method is called by <code>installUI</code>. 201 * 202 * @see #uninstallDefaults 203 * @see #installUI 204 * @see #createLayout 205 * @see LookAndFeel#installBorder 206 * @see LookAndFeel#installColors 207 */ 208 protected void installDefaults() { 209 spinner.setLayout(createLayout()); 210 LookAndFeel.installBorder(spinner, "Spinner.border"); 211 LookAndFeel.installColorsAndFont(spinner, "Spinner.background", "Spinner.foreground", "Spinner.font"); 212 LookAndFeel.installProperty(spinner, "opaque", Boolean.TRUE); 213 } 214 215 216 /** 217 * Sets the <code>JSpinner's</code> layout manager to null. This 218 * method is called by <code>uninstallUI</code>. 219 * 220 * @see #installDefaults 221 * @see #uninstallUI 222 */ 223 protected void uninstallDefaults() { 224 spinner.setLayout(null); 225 } 226 227 228 private Handler getHandler() { 229 if (handler == null) { 230 handler = new Handler(); 231 } 232 return handler; | 193 194 195 /** 196 * Initialize the <code>JSpinner</code> <code>border</code>, 197 * <code>foreground</code>, and <code>background</code>, properties 198 * based on the corresponding "Spinner.*" properties from defaults table. 199 * The <code>JSpinners</code> layout is set to the value returned by 200 * <code>createLayout</code>. This method is called by <code>installUI</code>. 201 * 202 * @see #uninstallDefaults 203 * @see #installUI 204 * @see #createLayout 205 * @see LookAndFeel#installBorder 206 * @see LookAndFeel#installColors 207 */ 208 protected void installDefaults() { 209 spinner.setLayout(createLayout()); 210 LookAndFeel.installBorder(spinner, "Spinner.border"); 211 LookAndFeel.installColorsAndFont(spinner, "Spinner.background", "Spinner.foreground", "Spinner.font"); 212 LookAndFeel.installProperty(spinner, "opaque", Boolean.TRUE); 213 214 JComponent editor = spinner.getEditor(); 215 if (editor != null && editor instanceof JSpinner.DefaultEditor) { 216 JTextField tf = ((JSpinner.DefaultEditor) editor).getTextField(); 217 if (tf != null) { 218 if (tf.getFont() instanceof UIResource) { 219 tf.setFont(new FontUIResource(spinner.getFont())); 220 } 221 } 222 } 223 } 224 225 226 /** 227 * Sets the <code>JSpinner's</code> layout manager to null. This 228 * method is called by <code>uninstallUI</code>. 229 * 230 * @see #installDefaults 231 * @see #uninstallUI 232 */ 233 protected void uninstallDefaults() { 234 spinner.setLayout(null); 235 } 236 237 238 private Handler getHandler() { 239 if (handler == null) { 240 handler = new Handler(); 241 } 242 return handler; |