magi.toolkit.fields
Class MagiNumericField


java.lang.Object

  |

  +--java.awt.Component

        |

        +--java.awt.Container

              |

              +--javax.swing.JComponent

                    |

                    +--javax.swing.text.JTextComponent

                          |

                          +--javax.swing.JTextField

                                |

                                +--magi.toolkit.fields.MagiTextField

                                      |

                                      +--magi.toolkit.fields.MagiNumericField

All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.image.ImageObserver, java.awt.MenuContainer, javax.swing.Scrollable, java.io.Serializable, javax.swing.SwingConstants
Direct Known Subclasses:
MagiFloatField

public class MagiNumericField
extends MagiTextField

A Numeric text field component that masks user input to allow only numeric digit input.

Author:
Paul Atkinson, Magi Systems Pty Ltd.
See Also:
Serialized Form

Field Summary
 
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.Container
 
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
MagiNumericField()
          Default constructor.
MagiNumericField(java.lang.String numericText)
          Create a Numeric text field, displaying the supplied text String.
MagiNumericField(java.lang.String numericText, int numChars)
          Create a Numeric text field, displaying the supplied text String.
MagiNumericField(java.lang.String numericText, int numChars, boolean formatted, boolean allowNegatives)
          Create a Numeric text field, displaying the supplied text String.
 
Method Summary
protected  void colorize()
          Colorize the text if a negative Color has been set.
 java.awt.Color getNegativeColor()
          Return the Color used to show negative values.
 java.lang.String getSpecialCharacters()
          Returns the current set of allowable special characters that are outside of the character range { 'a' ..
 boolean isAllowNegatives()
          Returns if this text field will allow negative values or not.
 boolean isFormatted()
          Returns if this text field is a formatted numeric.
protected  boolean isNumeric(char character)
          Returns true if the supplied character is Alphabetic.
 void setAllowNegatives(boolean allowNegatives)
          Determines if this text field will allow negative values or not.
 void setForeground(java.awt.Color foreground)
          Set the text foreground Color for this component.
 void setFormatted(boolean formatted)
          Sets this text field to formatted numeric.
 void setNegativeColor(java.awt.Color negativeColor)
          Sets the Color to use when showing negative values.
 void setSpecialCharacters(java.lang.String specialChars)
          Sets the allowable special characters that are outside of the character range { 'a' ..
 
Methods inherited from class magi.toolkit.fields.MagiTextField
setPreferredWidth
 
Methods inherited from class javax.swing.JTextField
addActionListener, configurePropertiesFromAction, createActionPropertyChangeListener, createDefaultModel, fireActionPerformed, getAccessibleContext, getAction, getActionListeners, getActions, getColumns, getColumnWidth, getHorizontalAlignment, getHorizontalVisibility, getPreferredSize, getScrollOffset, getUIClassID, isValidateRoot, paramString, postActionEvent, removeActionListener, scrollRectToVisible, setAction, setActionCommand, setColumns, setDocument, setFont, setHorizontalAlignment, setScrollOffset
 
Methods inherited from class javax.swing.text.JTextComponent
addCaretListener, addInputMethodListener, addKeymap, copy, cut, fireCaretUpdate, getCaret, getCaretColor, getCaretListeners, getCaretPosition, getDisabledTextColor, getDocument, getDragEnabled, getFocusAccelerator, getHighlighter, getInputMethodRequests, getKeymap, getKeymap, getMargin, getNavigationFilter, getPreferredScrollableViewportSize, getScrollableBlockIncrement, getScrollableTracksViewportHeight, getScrollableTracksViewportWidth, getScrollableUnitIncrement, getSelectedText, getSelectedTextColor, getSelectionColor, getSelectionEnd, getSelectionStart, getText, getText, getToolTipText, getUI, isEditable, loadKeymap, modelToView, moveCaretPosition, paste, processInputMethodEvent, read, removeCaretListener, removeKeymap, removeNotify, replaceSelection, select, selectAll, setCaret, setCaretColor, setCaretPosition, setComponentOrientation, setDisabledTextColor, setDragEnabled, setEditable, setFocusAccelerator, setHighlighter, setKeymap, setMargin, setNavigationFilter, setSelectedTextColor, setSelectionColor, setSelectionEnd, setSelectionStart, setText, setUI, updateUI, viewToModel, write
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, 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, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, 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, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, 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, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, 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

MagiNumericField


public MagiNumericField()
Default constructor.


MagiNumericField


public MagiNumericField(java.lang.String numericText)
Create a Numeric text field, displaying the supplied text String.

Parameters:
numericText - the text to display in this field.

MagiNumericField


public MagiNumericField(java.lang.String numericText,
                        int numChars)
Create a Numeric text field, displaying the supplied text String.

Parameters:
numericText - the text to display in this field.
numChars - the number of characters to allow for field sizing.

MagiNumericField


public MagiNumericField(java.lang.String numericText,
                        int numChars,
                        boolean formatted,
                        boolean allowNegatives)
Create a Numeric text field, displaying the supplied text String.

Parameters:
numericText - the text to display in this field.
numChars - the number of characters to allow for field sizing.
formatted - true if the numeric should be formatted with commas.
allowNegatives - true if negative values are allowed.
Method Detail

setAllowNegatives


public void setAllowNegatives(boolean allowNegatives)
Determines if this text field will allow negative values or not.

Parameters:
allowNegatives -

isAllowNegatives


public boolean isAllowNegatives()
Returns if this text field will allow negative values or not.

Returns:
true if negatives are allowed.

setForeground


public void setForeground(java.awt.Color foreground)
Set the text foreground Color for this component. If a negative value Color has been set, this foreground Color becomes the positive value Color.

Overrides:
setForeground in class javax.swing.JComponent
Parameters:
foreground - the foreground Color to use.

setNegativeColor


public void setNegativeColor(java.awt.Color negativeColor)
Sets the Color to use when showing negative values.

Parameters:
negativeColor - the Color object to use.

getNegativeColor


public java.awt.Color getNegativeColor()
Return the Color used to show negative values.

Returns:

setFormatted


public void setFormatted(boolean formatted)
Sets this text field to formatted numeric. When true, numeric values will be formatted with commas.

Parameters:
formatted - true if numerics should be formatted.

isFormatted


public boolean isFormatted()
Returns if this text field is a formatted numeric.

Returns:
true if formatted.

setSpecialCharacters


public void setSpecialCharacters(java.lang.String specialChars)
Sets the allowable special characters that are outside of the character range { 'a' .. 'z', 'A' .. 'Z' }. For example, space would be a special character.

Parameters:
specialChars - a String containing all allowable special characters.

getSpecialCharacters


public java.lang.String getSpecialCharacters()
Returns the current set of allowable special characters that are outside of the character range { 'a' .. 'z', 'A' .. 'Z' }. For example, space would be a special character.

Returns:
a String containing all allowable special characters.

isNumeric


protected boolean isNumeric(char character)
Returns true if the supplied character is Alphabetic.

Parameters:
character - the char value to test.
Returns:
true if Numeric.

colorize


protected void colorize()
                 throws javax.swing.text.BadLocationException
Colorize the text if a negative Color has been set.

javax.swing.text.BadLocationException