org.softsmithy.lib.swing
Class AbstractNumberField

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.text.JTextComponent
                  extended by javax.swing.JTextField
                      extended by javax.swing.JFormattedTextField
                          extended by org.softsmithy.lib.swing.AbstractNumberField
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible, Scrollable, SwingConstants
Direct Known Subclasses:
JRealNumberField, JWholeNumberField

public abstract class AbstractNumberField
extends JFormattedTextField

The base class of the number fields.

Author:
puce
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JFormattedTextField
JFormattedTextField.AbstractFormatter, JFormattedTextField.AbstractFormatterFactory
 
Nested classes/interfaces inherited from class javax.swing.JTextField
JTextField.AccessibleJTextField
 
Nested classes/interfaces inherited from class javax.swing.text.JTextComponent
JTextComponent.AccessibleJTextComponent, JTextComponent.DropLocation, JTextComponent.KeyBinding
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
 
Fields inherited from class javax.swing.JFormattedTextField
COMMIT, COMMIT_OR_REVERT, PERSIST, REVERT
 
Fields inherited from class javax.swing.JTextField
notifyAction
 
Fields inherited from class javax.swing.text.JTextComponent
DEFAULT_KEYMAP, FOCUS_ACCELERATOR_KEY
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
AbstractNumberField(AbstractXNumberFormatterFactory factory)
          Creates a new instance of this class.
AbstractNumberField(Number value, AbstractXNumberFormatterFactory factory)
          Creates a new instance of this class.
AbstractNumberField(Number minValue, Number maxValue, AbstractXNumberFormatterFactory factory)
          Creates a new instance of this class.
AbstractNumberField(Number value, Number minValue, Number maxValue, AbstractXNumberFormatterFactory factory)
          Creates a new instance of this class.
 
Method Summary
 AbstractXNumberFormatter getAbstractXNumberFormatter()
          Gets the number formatter.
 AbstractXNumberFormatterFactory getAbstractXNumberFormatterFactory()
          Gets the number formatter factory.
 Number getMaximumNumberValue()
          Gets the maximum number value.
 Number getMinimumNumberValue()
          Gets the minimum number value.
 Number getNumberValue()
          Gets the value as a Number.
protected  void reinit()
          Reinits this component.
 void setAbstractXNumberFormatterFactory(AbstractXNumberFormatterFactory factory)
          Sets the number formatter factory.
protected  void setFormatter(JFormattedTextField.AbstractFormatter formatter)
          Sets the formatter.
 void setFormatterFactory(JFormattedTextField.AbstractFormatterFactory aff)
          Sets the formatter factory.
 void setLocale(Locale locale)
          Sets the locale of this component.
 void setMaximumNumberValue(Number maxValue)
          Sets the maximum number value.
 void setMinimumNumberValue(Number minValue)
          Sets the minimum number value.
 void setNumberValue(Number value)
          Sets the number value.
 void setValue(Object value)
          Sets the value.
 
Methods inherited from class javax.swing.JFormattedTextField
commitEdit, getActions, getFocusLostBehavior, getFormatter, getFormatterFactory, getUIClassID, getValue, invalidEdit, isEditValid, processFocusEvent, processInputMethodEvent, setDocument, setFocusLostBehavior
 
Methods inherited from class javax.swing.JTextField
actionPropertyChanged, addActionListener, configurePropertiesFromAction, createActionPropertyChangeListener, createDefaultModel, fireActionPerformed, getAccessibleContext, getAction, getActionListeners, getColumns, getColumnWidth, getHorizontalAlignment, getHorizontalVisibility, getPreferredSize, getScrollOffset, isValidateRoot, paramString, postActionEvent, removeActionListener, scrollRectToVisible, setAction, setActionCommand, setColumns, setFont, setHorizontalAlignment, setScrollOffset
 
Methods inherited from class javax.swing.text.JTextComponent
addCaretListener, addInputMethodListener, addKeymap, copy, cut, fireCaretUpdate, getCaret, getCaretColor, getCaretListeners, getCaretPosition, getDisabledTextColor, getDocument, getDragEnabled, getDropLocation, getDropMode, getFocusAccelerator, getHighlighter, getInputMethodRequests, getKeymap, getKeymap, getMargin, getNavigationFilter, getPreferredScrollableViewportSize, getPrintable, getScrollableBlockIncrement, getScrollableTracksViewportHeight, getScrollableTracksViewportWidth, getScrollableUnitIncrement, getSelectedText, getSelectedTextColor, getSelectionColor, getSelectionEnd, getSelectionStart, getText, getText, getToolTipText, getUI, isEditable, loadKeymap, modelToView, moveCaretPosition, paste, print, print, print, read, removeCaretListener, removeKeymap, removeNotify, replaceSelection, select, selectAll, setCaret, setCaretColor, setCaretPosition, setComponentOrientation, setDisabledTextColor, setDragEnabled, setDropMode, setEditable, setFocusAccelerator, setHighlighter, setKeymap, setMargin, setNavigationFilter, setSelectedTextColor, setSelectionColor, setSelectionEnd, setSelectionStart, setText, setUI, updateUI, viewToModel, write
 
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, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, 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, 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, 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, processHierarchyBoundsEvent, processHierarchyEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AbstractNumberField

public AbstractNumberField(Number value,
                           AbstractXNumberFormatterFactory factory)
Creates a new instance of this class.

Parameters:
value - the value
factory - the number formatter factory

AbstractNumberField

public AbstractNumberField(Number minValue,
                           Number maxValue,
                           AbstractXNumberFormatterFactory factory)
Creates a new instance of this class.

Parameters:
minValue - the minimum value
maxValue - the maximum value
factory - the number formatter factory

AbstractNumberField

public AbstractNumberField(Number value,
                           Number minValue,
                           Number maxValue,
                           AbstractXNumberFormatterFactory factory)
Creates a new instance of this class.

Parameters:
value - the value
minValue - the minimum value
maxValue - the maximum value
factory - the number formatter factory

AbstractNumberField

public AbstractNumberField(AbstractXNumberFormatterFactory factory)
Creates a new instance of this class.

Parameters:
factory - the number formatter factory
Method Detail

reinit

protected void reinit()
Reinits this component. By default it does nothing but may be overriden by subclasses. It gets called by the constructors, the setLocale and the setFormatterFactory methods.


setLocale

public void setLocale(Locale locale)
Sets the locale of this component. Calls the reinit method.

Overrides:
setLocale in class Component
Parameters:
locale - the locale

getNumberValue

public Number getNumberValue()
Gets the value as a Number.

Returns:
the value as a Number

setNumberValue

public void setNumberValue(Number value)
Sets the number value.

Parameters:
value - the number value

setValue

public void setValue(Object value)
Sets the value. Must be an instance of Number.

Overrides:
setValue in class JFormattedTextField
Parameters:
value - the number value

getMinimumNumberValue

public Number getMinimumNumberValue()
Gets the minimum number value.

Returns:
the minimum number value

setMinimumNumberValue

public void setMinimumNumberValue(Number minValue)
Sets the minimum number value. If the value is smaller than the minimum value, it is set to the minimum value instead.

Parameters:
minValue - the minimum number value

getMaximumNumberValue

public Number getMaximumNumberValue()
Gets the maximum number value.

Returns:
the maximum number value

setMaximumNumberValue

public void setMaximumNumberValue(Number maxValue)
Sets the maximum number value. If the value is greater than the maximum value, it is set to the maximum value instead.

Parameters:
maxValue - the maximum number value

setFormatter

protected void setFormatter(JFormattedTextField.AbstractFormatter formatter)
Sets the formatter. Must be an instance of AbstractXNumberFormatter. You should not normally invoke this. See the documentation of the base class for more information.

Overrides:
setFormatter in class JFormattedTextField
Parameters:
formatter - the number formatter

getAbstractXNumberFormatter

public AbstractXNumberFormatter getAbstractXNumberFormatter()
Gets the number formatter.

Returns:
the number formatter

getAbstractXNumberFormatterFactory

public AbstractXNumberFormatterFactory getAbstractXNumberFormatterFactory()
Gets the number formatter factory.

Returns:
the number formatter factory

setAbstractXNumberFormatterFactory

public void setAbstractXNumberFormatterFactory(AbstractXNumberFormatterFactory factory)
Sets the number formatter factory. Calls the reinit method. Ensures the value stays in the range defined by the minimum and maximum value of the number formatter, which can be obtained by this formatter factory, by either setting it to the maximum value if it is greater than the maximum value or to the minimum value if it is smaller than the minimum value.

Parameters:
factory - the number formatter factory

setFormatterFactory

public void setFormatterFactory(JFormattedTextField.AbstractFormatterFactory aff)
Sets the formatter factory. Must be an instance of AbstractXNumberFormatterFactory. Calls the reinit method. Ensures the value stays in the range defined by the minimum and maximum value of the number formatter, which can be obtained by this formatter factory, by either setting it to the maximum value if it is greater than the maximum value or to the minimum value if it is smaller than the minimum value.

Overrides:
setFormatterFactory in class JFormattedTextField
Parameters:
aff - the number formatter factory


Copyright © 2002-2011 SoftSmithy. All Rights Reserved.