Package com.actelion.research.gui
Class JPruningBar
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- com.actelion.research.gui.JPruningBar
-
- All Implemented Interfaces:
java.awt.event.MouseListener
,java.awt.event.MouseMotionListener
,java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,java.util.EventListener
,javax.accessibility.Accessible
public class JPruningBar extends javax.swing.JPanel implements java.awt.event.MouseListener, java.awt.event.MouseMotionListener
Lightweight Slider for maintaining two values within given limits- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
-
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 JPruningBar()
JPruningBar(boolean isHorizontal)
JPruningBar(boolean isHorizontal, int id)
JPruningBar(float min, float max, boolean isHorizontal, int id)
JPruningBar(float min, float max, boolean isHorizontal, int id, boolean allowDoubleClick)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addPruningBarListener(PruningBarListener listener)
void
firePruningBarChanged()
float
getHighValue()
float
getLowValue()
java.awt.Dimension
getMaximumSize()
float
getMaximumValue()
java.awt.Dimension
getMinimumSize()
float
getMinimumValue()
java.awt.Dimension
getPreferredSize()
void
mouseClicked(java.awt.event.MouseEvent e)
If this pruning bar allows changes via double click and text input, then such an action will cause a PruningBarEvent with type=TYPE_TYPED.void
mouseDragged(java.awt.event.MouseEvent e)
void
mouseEntered(java.awt.event.MouseEvent e)
void
mouseExited(java.awt.event.MouseEvent e)
void
mouseMoved(java.awt.event.MouseEvent e)
void
mousePressed(java.awt.event.MouseEvent e)
void
mouseReleased(java.awt.event.MouseEvent e)
void
paintComponent(java.awt.Graphics g)
void
removePruningBarListener(PruningBarListener listener)
void
reset()
Sets high and low values to max and min, respectively.void
setHighValue(float high)
Updates the high value provided the new value is >= current low and <= current max.void
setID(int id)
void
setLowAndHigh(float low, float high, boolean silent)
Updates the low and high values simultaniously, provided the low <= high, low >= current min, and high <= current max.void
setLowValue(float low)
Updates the low value provided the new value is >= current min and <= current high.void
setMaximumValue(float max)
Updates the maximum value; may update low and high to stay within limits Sends PruningBarEvents in case of a successful change.void
setMinAndMax(float min, float max)
Initializes the bar by setting min and low/max and high to the values given.void
setMinimumValue(float min)
Updates the minimum value; may update low and high to stay within limits Sends PruningBarEvents in case of a successful change.void
setUseRedColor(boolean useRed)
void
update(java.awt.Graphics g)
-
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, 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, getNextFocusableComponent, getPopupLocation, 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, 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
-
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, 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, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Constructor Detail
-
JPruningBar
public JPruningBar()
-
JPruningBar
public JPruningBar(boolean isHorizontal)
-
JPruningBar
public JPruningBar(boolean isHorizontal, int id)
-
JPruningBar
public JPruningBar(float min, float max, boolean isHorizontal, int id)
-
JPruningBar
public JPruningBar(float min, float max, boolean isHorizontal, int id, boolean allowDoubleClick)
-
-
Method Detail
-
paintComponent
public void paintComponent(java.awt.Graphics g)
- Overrides:
paintComponent
in classjavax.swing.JComponent
-
update
public void update(java.awt.Graphics g)
- Overrides:
update
in classjavax.swing.JComponent
-
getLowValue
public float getLowValue()
-
getHighValue
public float getHighValue()
-
getMaximumValue
public float getMaximumValue()
-
getMinimumValue
public float getMinimumValue()
-
reset
public void reset()
Sets high and low values to max and min, respectively. Sends PruningBarEvents in case of a change.
-
setLowAndHigh
public void setLowAndHigh(float low, float high, boolean silent)
Updates the low and high values simultaniously, provided the low <= high, low >= current min, and high <= current max.- Parameters:
low
-high
-silent
- if true, PruningBarEvents are suppressed
-
setLowValue
public void setLowValue(float low)
Updates the low value provided the new value is >= current min and <= current high. Sends PruningBarEvents in case of a successful change.- Parameters:
low
-
-
setID
public void setID(int id)
-
setHighValue
public void setHighValue(float high)
Updates the high value provided the new value is >= current low and <= current max. Sends PruningBarEvents in case of a successful change.- Parameters:
high
-
-
setMaximumValue
public void setMaximumValue(float max)
Updates the maximum value; may update low and high to stay within limits Sends PruningBarEvents in case of a successful change.- Parameters:
max
-
-
setMinimumValue
public void setMinimumValue(float min)
Updates the minimum value; may update low and high to stay within limits Sends PruningBarEvents in case of a successful change.- Parameters:
min
-
-
setMinAndMax
public void setMinAndMax(float min, float max)
Initializes the bar by setting min and low/max and high to the values given. Does not(!) send PruningBarEvents.- Parameters:
min
-max
-
-
setUseRedColor
public void setUseRedColor(boolean useRed)
-
getMinimumSize
public java.awt.Dimension getMinimumSize()
- Overrides:
getMinimumSize
in classjavax.swing.JComponent
-
getPreferredSize
public java.awt.Dimension getPreferredSize()
- Overrides:
getPreferredSize
in classjavax.swing.JComponent
-
getMaximumSize
public java.awt.Dimension getMaximumSize()
- Overrides:
getMaximumSize
in classjavax.swing.JComponent
-
mousePressed
public void mousePressed(java.awt.event.MouseEvent e)
- Specified by:
mousePressed
in interfacejava.awt.event.MouseListener
-
mouseReleased
public void mouseReleased(java.awt.event.MouseEvent e)
- Specified by:
mouseReleased
in interfacejava.awt.event.MouseListener
-
mouseEntered
public void mouseEntered(java.awt.event.MouseEvent e)
- Specified by:
mouseEntered
in interfacejava.awt.event.MouseListener
-
mouseExited
public void mouseExited(java.awt.event.MouseEvent e)
- Specified by:
mouseExited
in interfacejava.awt.event.MouseListener
-
mouseClicked
public void mouseClicked(java.awt.event.MouseEvent e)
If this pruning bar allows changes via double click and text input, then such an action will cause a PruningBarEvent with type=TYPE_TYPED. Its low or high value will contain the number that the user has typed in. The other value will be Float.NaN. The JPruningBar will not update internal values, because JPruningBar scale and user visible scale may be different. The receiver of the event is responsible to translate the user number into JPuningBar scale and call the pruning bar's setLowValue() or setHighValue().- Specified by:
mouseClicked
in interfacejava.awt.event.MouseListener
- Parameters:
e
-
-
mouseDragged
public void mouseDragged(java.awt.event.MouseEvent e)
- Specified by:
mouseDragged
in interfacejava.awt.event.MouseMotionListener
-
mouseMoved
public void mouseMoved(java.awt.event.MouseEvent e)
- Specified by:
mouseMoved
in interfacejava.awt.event.MouseMotionListener
-
addPruningBarListener
public void addPruningBarListener(PruningBarListener listener)
-
removePruningBarListener
public void removePruningBarListener(PruningBarListener listener)
-
firePruningBarChanged
public void firePruningBarChanged()
-
-