to create
 an editor that's appropriate for the type of model they
 support and they may want to override
 the stateChanged and propertyChanged
 methods, which keep the model and the text field in sync.
 
 This class defines a dismiss method that removes the
 editors ChangeListener from the JSpinner
 that it's part of.   The setEditor method knows about
 DefaultEditor.dismiss, so if the developer
 replaces an editor that's derived from JSpinner.DefaultEditor
 its ChangeListener connection back to the 
 JSpinner will be removed.  However after that,
 it's up to the developer to manage their editor listeners.
 Similarly, if a subclass overrides createEditor,
 it's up to the subclasser to deal with their editor
 subsequently being replaced (with setEditor).
 We expect that in most cases, and in editor installed
 with setEditor or created by a createEditor
 override, will not be replaced anyway.
 
 This class is the LayoutManager for it's single
 JFormattedTextField child.   By default the
 child is just centered with the parents insets.
 
 
 
 
 
 
 
 
 
 
 
 
| Methods inherited from class javax.swing.JComponent | 
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update | 
 
| Methods inherited from class java.awt.Container | 
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree | 
 
| Methods inherited from class java.awt.Component | 
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle | 
 
 
JSpinner.DefaultEditor
public JSpinner.DefaultEditor(JSpinner spinner)
- Constructs an editor component for the specified 
JSpinner.
 This DefaultEditor is it's own layout manager and 
 it is added to the spinner's ChangeListener list.
 The constructor creates a single JFormattedTextField child,
 initializes it's value to be the spinner model's current value
 and adds it to this DefaultEditor.
- Parameters:
 spinner - the spinner whose model this editor will monitor- See Also:
 getTextField(), 
JSpinner.addChangeListener(javax.swing.event.ChangeListener)
 
dismiss
public void dismiss(JSpinner spinner)
- Disconnect 
this editor from the specified 
 JSpinner.  By default, this method removes 
 itself from the spinners ChangeListener list.
 
- Parameters:
 spinner - the JSpinner to disconnect this 
    editor from; the same spinner as was passed to the constructor.
 
 
getSpinner
public JSpinner getSpinner()
- Returns the 
JSpinner ancestor of this editor or null.  
 Typically the editor's parent is a JSpinner however 
 subclasses of  may override the
 the createEditor method and insert one or more containers
 between the JSpinner and it's editor.
 
- Returns:
 JSpinner ancestor- See Also:
 JSpinner.createEditor(javax.swing.SpinnerModel)
 
 
getTextField
public JFormattedTextField getTextField()
- Returns the 
JFormattedTextField child of this 
 editor.  By default the text field is the first and only 
 child of editor.
 
- Returns:
 - the 
JFormattedTextField that gives the user
     access to the SpinnerDateModel's value. - See Also:
 getSpinner(), 
JSpinner.getModel()
 
 
stateChanged
public void stateChanged(ChangeEvent e)
- This method is called when the spinner's model's state changes.
 It sets the 
value of the text field to the current
 value of the spinners model.
- Specified by:
 stateChanged in interface ChangeListener
 
- Parameters:
 e - not used- See Also:
 getTextField(), 
JSpinner.getValue()
 
 
propertyChange
public void propertyChange(PropertyChangeEvent e)
- Called by the 
JFormattedTextField 
 PropertyChangeListener.  When the "value"
 property changes, which implies that the user has typed a new
 number, we set the value of the spinners model.
 
 This class ignores PropertyChangeEvents whose
 source is not the JFormattedTextField, so subclasses
 may safely make this DefaultEditor a 
 PropertyChangeListener on other objects.
- Specified by:
 propertyChange in interface PropertyChangeListener
 
- Parameters:
 e - the PropertyChangeEvent whose source is
    the JFormattedTextField created by this class.- See Also:
 getTextField()
 
 
addLayoutComponent
public void addLayoutComponent(String name,
                               Component child)
- This 
LayoutManager method does nothing.  We're 
 only managing a single child and there's no support 
 for layout constraints.
- Specified by:
 addLayoutComponent in interface LayoutManager
 
- Parameters:
 name - ignoredchild - ignored
 
 
removeLayoutComponent
public void removeLayoutComponent(Component child)
- This 
LayoutManager method does nothing.  There
 isn't any per-child state.
- Specified by:
 removeLayoutComponent in interface LayoutManager
 
- Parameters:
 child - ignored
 
 
preferredLayoutSize
public Dimension preferredLayoutSize(Container parent)
- Returns the preferred size of first (and only) child plus the
 size of the parents insets.
- Specified by:
 preferredLayoutSize in interface LayoutManager
 
- Parameters:
 parent - the Container that's managing the layout
- Returns:
 - the preferred dimensions to lay out the subcomponents
          of the specified container.
 - See Also:
 LayoutManager.minimumLayoutSize(java.awt.Container)
 
 
minimumLayoutSize
public Dimension minimumLayoutSize(Container parent)
- Returns the minimum size of first (and only) child plus the
 size of the parents insets.
- Specified by:
 minimumLayoutSize in interface LayoutManager
 
- Parameters:
 parent - the Container that's managing the layout
- Returns:
 - the minimum dimensions needed to lay out the subcomponents
          of the specified container.
 - See Also:
 LayoutManager.preferredLayoutSize(java.awt.Container)
 
 
layoutContainer
public void layoutContainer(Container parent)
- Resize the one (and only) child to completely fill the area
 within the parents insets.
- Specified by:
 layoutContainer in interface LayoutManager
 
- Parameters:
 parent - the container to be laid out
 
 
commitEdit
public void commitEdit()
                throws ParseException
- Pushes the currently edited value to the 
SpinnerModel.
 
 The default implementation invokes commitEdit on the
 JFormattedTextField.
 
- Throws:
 ParseException - if the edited value is not legal
 
 
Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples. Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.