Package org.opensourcephysics.media.core
Class NumberField
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.text.JTextComponent
javax.swing.JTextField
org.opensourcephysics.media.core.NumberField
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
,Accessible
,Scrollable
,SwingConstants
- Direct Known Subclasses:
DecimalField
,IntegerField
,ScientificField
,TTrack.TrackNumberField
A NumberField is a JTextField that formats and displays numbers. This default
implementation displays very small and very large numbers in scientific
notation and intermediate-value numbers in decimal form.
- Version:
- 1.0
- Author:
- Douglas Brown
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
A helper class specifically for NumberFieldRenderer to not have to have any association with an actual JTextField.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
FieldsModifier and TypeFieldDescriptionprotected double
static final String
static final String
static final String
static final Color
static final String
protected Double
protected Double
protected NumberField.NumberFormatter
protected double
protected String
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
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
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
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
-
Constructor Summary
ConstructorsConstructorDescriptionNumberField
(int columns) Constructs a NumberField with default sigfigs (4)NumberField
(int columns, int sigfigs) Constructs a NumberField with specified significant figures.NumberField
(int columns, int sigfigs, boolean fixed) -
Method Summary
Modifier and TypeMethodDescriptionvoid
Apply the specified pattern, retrieving the appropriate formatterfinal String
format
(double d) double
Gets the fixed user pattern.getUnits()
Gets the units.double
getValue()
Gets the value from the text field.void
refreshDecimalSeparators
(boolean redraw) void
setConversionFactor
(double factor) void
setExpectedRange
(double lower, double upper) Sets the expected range of values for this number field.void
setFixedPattern
(String pattern) Sets a fixed user pattern.void
setFormatFor
(double d) void
setMaxValue
(double max) Sets a maximum value for this field.void
setMinValue
(double min) Sets a minimum value for this field.void
void
setPatterns
(String[] patterns) Sets the patterns for this field.void
setPatterns
(String[] patterns, double[] limits) Sets the patterns and limits for this field.void
setSigFigs
(int sigfigs) Sets the number of significant figures for this number field.void
Sets the units.void
setValue
(double value) Formats the specified value and enters it in the text field.Methods inherited from class javax.swing.JTextField
actionPropertyChanged, 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, 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, modelToView2D, moveCaretPosition, paste, print, print, print, processInputMethodEvent, read, removeCaretListener, removeKeymap, removeNotify, replaceSelection, restoreComposedText, saveComposedText, select, selectAll, setCaret, setCaretColor, setCaretPosition, setComponentOrientation, setDisabledTextColor, setDragEnabled, setDropMode, setEditable, setFocusAccelerator, setHighlighter, setKeymap, setMargin, setNavigationFilter, setSelectedTextColor, setSelectionColor, setSelectionEnd, setSelectionStart, setText, setUI, updateUI, viewToModel, viewToModel2D, 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, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, 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, 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, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, 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, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Field Details
-
DISABLED_COLOR
-
INTEGER_PATTERN
- See Also:
-
DECIMAL_1_PATTERN
- See Also:
-
DECIMAL_2_PATTERN
- See Also:
-
DECIMAL_3_PATTERN
- See Also:
-
prevValue
protected double prevValue -
maxValue
-
minValue
-
units
-
conversionFactor
protected double conversionFactor -
nf
-
-
Constructor Details
-
NumberField
public NumberField(int columns) Constructs a NumberField with default sigfigs (4)- Parameters:
columns
- the number of character columns
-
NumberField
public NumberField(int columns, int sigfigs) Constructs a NumberField with specified significant figures.- Parameters:
columns
- the number of character columnssigfigs
- the number of significant figures
-
NumberField
public NumberField(int columns, int sigfigs, boolean fixed)
-
-
Method Details
-
getValue
public double getValue()Gets the value from the text field.- Returns:
- the value
-
format
-
setValue
public void setValue(double value) Formats the specified value and enters it in the text field.- Parameters:
value
- the value to be entered
-
setExpectedRange
public void setExpectedRange(double lower, double upper) Sets the expected range of values for this number field. Note this does not set a firm max or min--only an expectation.- Parameters:
lower
- the lower end of the rangeupper
- the upper end of the range
-
setSigFigs
public void setSigFigs(int sigfigs) Sets the number of significant figures for this number field.- Parameters:
sigfigs
- the number of significant figures (between 2 and 6)
-
setMinValue
public void setMinValue(double min) Sets a minimum value for this field.- Parameters:
min
- the minimum allowed value
-
setMaxValue
public void setMaxValue(double max) Sets a maximum value for this field.- Parameters:
max
- the maximum allowed value
-
setUnits
Sets the units.- Parameters:
units
- the units
-
getUnits
Gets the units.- Returns:
- units the units
-
setConversionFactor
public void setConversionFactor(double factor) -
getConversionFactor
public double getConversionFactor() -
applyPattern
Apply the specified pattern, retrieving the appropriate formatter- Parameters:
p
-
-
setPatterns
Sets the patterns for this field. The patterns are applied as follows: value<0.1: patterns[0] value<10: patterns[1] value<100: patterns[2] value<1000: patterns[3] value>=1000: patterns[4]- Parameters:
patterns
- the desired patterns
-
setPatterns
Sets the patterns and limits for this field. The patterns are applied as follows: value<limits[0]: patterns[0] value<limits[1]: patterns[1] value<limits[2]: patterns[2] value<limits[3]: patterns[3] value>=limits[3]: patterns[4]- Parameters:
patterns
- the desired patternslimits
- the limits that determine which pattern to use
-
setFixedPattern
Sets a fixed user pattern.- Parameters:
pattern
- the desired pattern (may be null)
-
getFixedPattern
Gets the fixed user pattern.- Returns:
- the pattern
-
setParseIntegerOnly
public void setParseIntegerOnly() -
setFormatFor
public void setFormatFor(double d) -
refreshDecimalSeparators
public void refreshDecimalSeparators(boolean redraw)
-