Package org.jdesktop.swingx
Class JXMultiThumbSlider<E>
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- org.jdesktop.swingx.JXMultiThumbSlider<E>
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
public class JXMultiThumbSlider<E> extends javax.swing.JComponent
A slider which can have multiple control points or Thumbs
The thumbs each represent a value between the minimum and maximum values of the slider. Thumbs can pass each other when being dragged. Thumbs have no default visual representation. To customize the look of the thumbs and the track behind the thumbs you must provide a ThumbRenderer and a TrackRenderer implementation. To listen for changes to the thumbs you must provide an implemention of ThumbDataListener. TODOs: move public inner classes (interfaces, etc) to subpackage add min/maxvalue convenience methods to jxmultithumbslider add plafs for windows, mac, and basic (if necessary) make way to properly control the height. hide the inner thumb component
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
uiClassID
-
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
-
-
Constructor Summary
Constructors Constructor Description JXMultiThumbSlider()
Creates a new instance of JMultiThumbSlider
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addMultiThumbListener(ThumbListener listener)
float
getMaximumValue()
float
getMinimumValue()
MultiThumbModel<E>
getModel()
int
getSelectedIndex()
javax.swing.JComponent
getSelectedThumb()
ThumbRenderer
getThumbRenderer()
TrackRenderer
getTrackRenderer()
MultiThumbSliderUI
getUI()
java.lang.String
getUIClassID()
protected void
paintComponent(java.awt.Graphics g)
void
setBounds(int x, int y, int w, int h)
void
setMaximumValue(float maximumValue)
void
setMinimumValue(float minimumValue)
void
setModel(MultiThumbModel<E> model)
void
setThumbRenderer(ThumbRenderer thumbRenderer)
void
setTrackRenderer(TrackRenderer trackRenderer)
void
setUI(MultiThumbSliderUI ui)
void
updateUI()
-
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, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, 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, setEnabled, setFocusTraversalKeys, setFont, 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, 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, getAccessibleContext, 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, 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, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
uiClassID
public static final java.lang.String uiClassID
- See Also:
- Constant Field Values
-
-
Method Detail
-
getUI
public MultiThumbSliderUI getUI()
- Overrides:
getUI
in classjavax.swing.JComponent
-
setUI
public void setUI(MultiThumbSliderUI ui)
-
updateUI
public void updateUI()
- Overrides:
updateUI
in classjavax.swing.JComponent
-
getUIClassID
public java.lang.String getUIClassID()
- Overrides:
getUIClassID
in classjavax.swing.JComponent
-
paintComponent
protected void paintComponent(java.awt.Graphics g)
- Overrides:
paintComponent
in classjavax.swing.JComponent
-
getThumbRenderer
public ThumbRenderer getThumbRenderer()
-
setThumbRenderer
public void setThumbRenderer(ThumbRenderer thumbRenderer)
-
getTrackRenderer
public TrackRenderer getTrackRenderer()
-
setTrackRenderer
public void setTrackRenderer(TrackRenderer trackRenderer)
-
getMinimumValue
public float getMinimumValue()
-
setMinimumValue
public void setMinimumValue(float minimumValue)
-
getMaximumValue
public float getMaximumValue()
-
setMaximumValue
public void setMaximumValue(float maximumValue)
-
setBounds
public void setBounds(int x, int y, int w, int h)
- Overrides:
setBounds
in classjava.awt.Component
-
getSelectedThumb
public javax.swing.JComponent getSelectedThumb()
-
getSelectedIndex
public int getSelectedIndex()
-
getModel
public MultiThumbModel<E> getModel()
-
setModel
public void setModel(MultiThumbModel<E> model)
-
addMultiThumbListener
public void addMultiThumbListener(ThumbListener listener)
-
-