arlut.csd.JDataComponent
Class JnumberField

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--javax.swing.JComponent
                    |
                    +--javax.swing.text.JTextComponent
                          |
                          +--javax.swing.JTextField
                                |
                                +--arlut.csd.JDataComponent.JentryField
                                      |
                                      +--arlut.csd.JDataComponent.JnumberField
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.event.ActionListener, java.util.EventListener, java.awt.event.FocusListener, java.awt.image.ImageObserver, java.awt.MenuContainer, javax.swing.Scrollable, java.io.Serializable, javax.swing.SwingConstants

public class JnumberField
extends JentryField

This class defines an entry field that is capable of handling integers. The maximum and minimum bounds for the range of integers that can be entered into this JnumberField can also be preset.

See Also:
Serialized Form

Field Summary
static java.lang.String allowedChars
           
static int DEFAULT_COLS
           
private  boolean limited
           
private  int maxSize
           
private  int minSize
           
private  java.lang.Integer oldvalue
           
private  boolean processingCallback
           
 
Fields inherited from class arlut.csd.JDataComponent.JentryField
allowCallback, debug, my_parent, notifier
 
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
JnumberField()
          Constructor which uses default everything.
JnumberField(int width)
          Constructor which uses takes a number of columns, and everything else default.
JnumberField(int columns, boolean iseditable, boolean islimited, int minsize, int maxsize)
          Base constructor for JnumberField
JnumberField(int columns, boolean iseditable, boolean limited, int minsize, int maxsize, arlut.csd.JDataComponent.JsetValueCallback parent)
          Constructor that allows for the creation of a JnumberField that knows about its parent and can invoke a callback method.
 
Method Summary
 int getMaxValue()
          returns the maximum value in the range of valid values for this JnumberField
 int getMinValue()
          returns the minimum value in the range of valid values for this JnumberField
 java.lang.Integer getValue()
          returns the value of this JnumberField as an Integer object If this field is empty, will return null.
 boolean isAllowed(char c)
          returns true if is a valid numerical digit.
 boolean isLimited()
          returns true if there is a bound on the range of values that can be entered into this JnumberField
private  void reportError(java.lang.String errorString)
          This private helper method relays a descriptive error message to our callback interface.
 int sendCallback()
          overrides JentryField.sendCallback().
 void setLimited(boolean bool)
          Sets the limited/non-limited status of this JnumberField If setLimited is given a true value as a parameter, then certain bounds will be imposed on the range of possible values.
 void setMaxValue(int n)
          sets the maximum value in the range of possible values.
 void setMinValue(int n)
          sets the minimum value in the range of possible values.
 void setValue(int num)
          sets the value of this JnumberField to num This method does not trigger a callback to our container..
 void setValue(java.lang.Integer num)
          sets the value of this JnumberField using an Integer object.
 
Methods inherited from class arlut.csd.JDataComponent.JentryField
actionPerformed, focusGained, focusLost, getLength, getMaxStringSize, setCallback, setEnterHandler
 
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, setForeground, 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
 

Field Detail

DEFAULT_COLS

public static int DEFAULT_COLS

allowedChars

public static java.lang.String allowedChars

oldvalue

private java.lang.Integer oldvalue

limited

private boolean limited

processingCallback

private boolean processingCallback

maxSize

private int maxSize

minSize

private int minSize
Constructor Detail

JnumberField

public JnumberField(int columns,
                    boolean iseditable,
                    boolean islimited,
                    int minsize,
                    int maxsize)
Base constructor for JnumberField

Parameters:
columns - number of colums in the JnumberField
islimited - true if there is a restriction on the range of values
minsize - the minimum limit on the range of values
maxsize - the maximum limit on the range of values

JnumberField

public JnumberField(int width)
Constructor which uses takes a number of columns, and everything else default.


JnumberField

public JnumberField()
Constructor which uses default everything.


JnumberField

public JnumberField(int columns,
                    boolean iseditable,
                    boolean limited,
                    int minsize,
                    int maxsize,
                    arlut.csd.JDataComponent.JsetValueCallback parent)
Constructor that allows for the creation of a JnumberField that knows about its parent and can invoke a callback method.

Parameters:
columns - number of colums in the JnumberField
minsize - the minimum limit on the range of values
maxsize - the maximum limit on the range of values
parent - the container within which this JnumberField is contained (This container will implement an interface that will utilize the data contained within this JnumberField.)
Method Detail

isAllowed

public boolean isAllowed(char c)
returns true if is a valid numerical digit.

Overrides:
isAllowed in class JentryField
Parameters:
c - the character to check

getValue

public java.lang.Integer getValue()
                           throws java.lang.NumberFormatException
returns the value of this JnumberField as an Integer object If this field is empty, will return null. If this field is not empty and has a non-numeric string, will throw a NumberFormatException.

java.lang.NumberFormatException

setValue

public void setValue(int num)
sets the value of this JnumberField to num This method does not trigger a callback to our container.. we only callback as a result of loss-of-focus brought on by the user.

Parameters:
num - the number to use

setValue

public void setValue(java.lang.Integer num)
sets the value of this JnumberField using an Integer object. This method does not trigger a callback to our container.. we only callback as a result of loss-of-focus brought on by the user.

Parameters:
num - the Integer object to use

setLimited

public void setLimited(boolean bool)
Sets the limited/non-limited status of this JnumberField If setLimited is given a true value as a parameter, then certain bounds will be imposed on the range of possible values.

Parameters:
bool - true if a limit is to be set on the range of values

setMaxValue

public void setMaxValue(int n)
sets the maximum value in the range of possible values.

Parameters:
n - the number to use when setting the maximum value

setMinValue

public void setMinValue(int n)
sets the minimum value in the range of possible values.

Parameters:
n - the number to use when setting the minimum value

isLimited

public boolean isLimited()
returns true if there is a bound on the range of values that can be entered into this JnumberField


getMaxValue

public int getMaxValue()
returns the maximum value in the range of valid values for this JnumberField


getMinValue

public int getMinValue()
returns the minimum value in the range of valid values for this JnumberField


sendCallback

public int sendCallback()
overrides JentryField.sendCallback(). This is called when the number field loses focus. sendCallback is called when focus is lost, or when we are otherwise triggered.

Specified by:
sendCallback in class JentryField

reportError

private void reportError(java.lang.String errorString)

This private helper method relays a descriptive error message to our callback interface.