Package com.jgoodies.looks.plastic
Class PlasticSpinnerUI
- java.lang.Object
-
- javax.swing.plaf.ComponentUI
-
- javax.swing.plaf.SpinnerUI
-
- javax.swing.plaf.basic.BasicSpinnerUI
-
- com.jgoodies.looks.plastic.PlasticSpinnerUI
-
- Direct Known Subclasses:
PlasticXPSpinnerUI
public class PlasticSpinnerUI extends javax.swing.plaf.basic.BasicSpinnerUI
The JGoodies Plastic Look&Feel implementation ofSpinnerUI
. Configures the default editor to adjust font baselines and component bounds. Also, changes the border of the buttons and the size of the arrows.- Version:
- $Revision: 1.13 $
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
PlasticSpinnerUI.SpinnerArrowButton
It differs from its superclass in that it uses the same formula as JDK to calculate the arrow height.
-
Constructor Summary
Constructors Constructor Description PlasticSpinnerUI()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static void
configureEditorBorder(javax.swing.JComponent editor)
Sets an empty border with the default text insets.protected java.awt.Component
createArrowButton(int direction)
protected javax.swing.JComponent
createEditor()
This method is called by installUI to get the editor component of theJSpinner
.protected java.awt.LayoutManager
createLayout()
Create aLayoutManager
that manages theeditor
,nextButton
, andpreviousButton
children of the JSpinner.static javax.swing.plaf.ComponentUI
createUI(javax.swing.JComponent b)
protected void
replaceEditor(javax.swing.JComponent oldEditor, javax.swing.JComponent newEditor)
Called by thePropertyChangeListener
when theJSpinner
editor property changes.-
Methods inherited from class javax.swing.plaf.basic.BasicSpinnerUI
createNextButton, createPreviousButton, createPropertyChangeListener, getBaseline, getBaselineResizeBehavior, installDefaults, installKeyboardActions, installListeners, installNextButtonListeners, installPreviousButtonListeners, installUI, uninstallDefaults, uninstallListeners, uninstallUI
-
-
-
-
Method Detail
-
createUI
public static javax.swing.plaf.ComponentUI createUI(javax.swing.JComponent b)
-
createArrowButton
protected java.awt.Component createArrowButton(int direction)
-
createLayout
protected java.awt.LayoutManager createLayout()
Create aLayoutManager
that manages theeditor
,nextButton
, andpreviousButton
children of the JSpinner. These three children must be added with a constraint that identifies their role: "Editor", "Next", and "Previous". The default layout manager can handle the absence of any of these children.- Overrides:
createLayout
in classjavax.swing.plaf.basic.BasicSpinnerUI
- Returns:
- a LayoutManager for the editor, next button, and previous button.
- See Also:
BasicSpinnerUI.createNextButton()
,BasicSpinnerUI.createPreviousButton()
,createEditor()
-
createEditor
protected javax.swing.JComponent createEditor()
This method is called by installUI to get the editor component of theJSpinner
. By default it just returnsJSpinner.getEditor()
. Subclasses can overridecreateEditor
to return a component that contains the spinner's editor or null, if they're going to handle adding the editor to theJSpinner
in aninstallUI
override.Typically this method would be overridden to wrap the editor with a container with a custom border, since one can't assume that the editors border can be set directly.
The
replaceEditor
method is called when the spinners editor is changed withJSpinner.setEditor
. If you've overriden this method, then you'll probably want to overridereplaceEditor
as well.- Overrides:
createEditor
in classjavax.swing.plaf.basic.BasicSpinnerUI
- Returns:
- the JSpinners editor JComponent, spinner.getEditor() by default
- See Also:
BasicSpinnerUI.installUI(javax.swing.JComponent)
,replaceEditor(javax.swing.JComponent, javax.swing.JComponent)
,JSpinner.getEditor()
-
replaceEditor
protected void replaceEditor(javax.swing.JComponent oldEditor, javax.swing.JComponent newEditor)
Called by thePropertyChangeListener
when theJSpinner
editor property changes. It's the responsibility of this method to remove the old editor and add the new one. By default this operation is just:spinner.remove(oldEditor); spinner.add(newEditor, "Editor");
The implementation ofreplaceEditor
should be coordinated with thecreateEditor
method.- Overrides:
replaceEditor
in classjavax.swing.plaf.basic.BasicSpinnerUI
- See Also:
createEditor()
,BasicSpinnerUI.createPropertyChangeListener()
-
configureEditorBorder
private static void configureEditorBorder(javax.swing.JComponent editor)
Sets an empty border with the default text insets.
-
-