com.pentec.gui.widgets
Class ASpider

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by com.pentec.gui.widgets.ASpider
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable

public class ASpider
extends javax.swing.JComponent

ASpider is number editor created as a cross between a JSlider and an ASpinner

Author:
Pender Technology
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
private  javax.swing.JSlider slider
           
private  ASpinner spinner
           
private  javax.swing.event.ChangeListener syncSlider
           
private  javax.swing.event.ChangeListener syncSpinner
           
 
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 java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
ASpider(javax.swing.SpinnerNumberModel snm)
          Create a new ASpider with the SpinnerNumberModel provided and the default number of digits of precision in the editor field.
ASpider(javax.swing.SpinnerNumberModel snm, int iDigits)
          Create a new ASpider with the provided SpinnerNumberModel and number of digits of precision in the editor field.
ASpider(javax.swing.SpinnerNumberModel snm, int iDigits, java.lang.String $Label)
          Create a new ASpider with the provided SpinnerNumberModel and number of digits of precision in the editor field.
ASpider(javax.swing.SpinnerNumberModel snm, java.lang.String $Label)
           
 
Method Summary
 void addChangeListener(javax.swing.event.ChangeListener cl)
           
private  int getMax(javax.swing.SpinnerNumberModel snm)
           
 javax.swing.SpinnerNumberModel getModel()
           
 ASpinner getSpinner()
           
 java.lang.Number getValue()
           
private  int getValue(javax.swing.SpinnerNumberModel snm)
           
private  void layoutComponent()
          Give the ASpider its look and feel.
 void removeChangeListener(javax.swing.event.ChangeListener cl)
           
 void setEnabled(boolean isEnabled)
           
 void setLabel(java.lang.String $Label)
           
 void setModel(javax.swing.SpinnerNumberModel model)
           
 void setSpinnerSize(java.awt.Dimension dim)
           
 void setValue(java.lang.Object oValue)
           
private  void syncEvents(boolean isSync)
          Synchronize ChangeEvents between the slider and spinner so their values don't fall out of sync.
private  void syncSizes()
          Synchronize the sizes of the spinner and slider so one isn't mammothly larger than the other.
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, 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, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, 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, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update, updateUI
 
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
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

slider

private javax.swing.JSlider slider

spinner

private ASpinner spinner

syncSlider

private final javax.swing.event.ChangeListener syncSlider

syncSpinner

private final javax.swing.event.ChangeListener syncSpinner
Constructor Detail

ASpider

public ASpider(javax.swing.SpinnerNumberModel snm)
Create a new ASpider with the SpinnerNumberModel provided and the default number of digits of precision in the editor field.

Parameters:
snm - SpinnerNumberModel

ASpider

public ASpider(javax.swing.SpinnerNumberModel snm,
               int iDigits)
Create a new ASpider with the provided SpinnerNumberModel and number of digits of precision in the editor field.

Parameters:
snm - SpinnerNumberModel
iDigits - number of digits of precision in the editor field

ASpider

public ASpider(javax.swing.SpinnerNumberModel snm,
               int iDigits,
               java.lang.String $Label)
Create a new ASpider with the provided SpinnerNumberModel and number of digits of precision in the editor field. Use the provided label for the spinner.

Parameters:
snm - SpinnerNumberModel
iDigits - number of digits of precision in the editor field
$Label - the label to use on the spinner

ASpider

public ASpider(javax.swing.SpinnerNumberModel snm,
               java.lang.String $Label)
Method Detail

addChangeListener

public void addChangeListener(javax.swing.event.ChangeListener cl)

getMax

private int getMax(javax.swing.SpinnerNumberModel snm)

getModel

public javax.swing.SpinnerNumberModel getModel()

getSpinner

public ASpinner getSpinner()

getValue

public java.lang.Number getValue()

getValue

private int getValue(javax.swing.SpinnerNumberModel snm)

layoutComponent

private void layoutComponent()
Give the ASpider its look and feel.


removeChangeListener

public void removeChangeListener(javax.swing.event.ChangeListener cl)

setEnabled

public void setEnabled(boolean isEnabled)
Overrides:
setEnabled in class javax.swing.JComponent

setLabel

public void setLabel(java.lang.String $Label)

setModel

public void setModel(javax.swing.SpinnerNumberModel model)

setSpinnerSize

public void setSpinnerSize(java.awt.Dimension dim)

setValue

public void setValue(java.lang.Object oValue)

syncEvents

private void syncEvents(boolean isSync)
Synchronize ChangeEvents between the slider and spinner so their values don't fall out of sync.


syncSizes

private void syncSizes()
Synchronize the sizes of the spinner and slider so one isn't mammothly larger than the other.