Package com.softsynth.view
Class CustomFader
java.lang.Object
java.awt.Component
java.awt.Canvas
com.softsynth.view.CustomFader
- 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 CustomFader
extends java.awt.Canvas
implements java.awt.event.MouseListener, java.awt.event.MouseMotionListener
Our own horizontal fader (scrollbar), subclass of canvas,
which uses CustomFaderListener interface to communicate
with parent.
This fader is very similar to a Scrollbar except that it will jump to
a value if clicked while holding down the SHIFT key.
To use this class, choose either the AWT 1.0.2 version of CustomFader package com.softsynth.view102, or the AWT 1.1 version in package com.softsynth.view111. Example of using a CustomFader:
Parent must implement the CustomFaderListener interface. This requires defining public void customFaderValueChanged(CustomFader jsb) to be notified of the fader's value changing.
Example:
To use this class, choose either the AWT 1.0.2 version of CustomFader package com.softsynth.view102, or the AWT 1.1 version in package com.softsynth.view111. Example of using a CustomFader:
// A new fader with parent, with default value 50, visible of 10, min value 0, max value 100 myFader = new CustomFader(CustomFader.HORIZONTAL, 50, 10, 0, 100); // Assumes "this" is a class that implements CustomFaderListener myFader.addCustomFaderListener( this ); // set the increment that the value will jump when user clicks inside fader myFader.setBlockIncrement(10); // set the increment that the value will jump when user clicks on arrows of fader myFader.setUnitIncrement(1); // add it to layout add(myFader); ...
Parent must implement the CustomFaderListener interface. This requires defining public void customFaderValueChanged(CustomFader jsb) to be notified of the fader's value changing.
Example:
public void customFaderValueChanged(Object fader, int value)
{
System.out.println("Value = " + value);
}
This was written to provide a more consistent, less buggy Scrollbar substitute.- Author:
- Nick Didkovsky and Phil Burk, SoftSynth.com, All Rights Reserved
- See Also:
- Serialized Form
-
Nested Class Summary
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.BaselineResizeBehavior -
Field Summary
Fields Modifier and Type Field Description static intHORIZONTALstatic intVERTICALFields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH -
Constructor Summary
Constructors Constructor Description CustomFader(int orientation, int val, int visible, int min, int max)Constructor with initial value, visible, min value, max value. -
Method Summary
Modifier and Type Method Description voidaddCustomFaderListener(CustomFaderListener listener)Add a listener to receive value change events.intgetBlockIncrement()intgetLineIncrement()intgetValue()intgetVisibleAmount(int amount)voidmouseClicked(java.awt.event.MouseEvent e)voidmouseDragged(java.awt.event.MouseEvent e)voidmouseEntered(java.awt.event.MouseEvent e)voidmouseExited(java.awt.event.MouseEvent e)voidmouseMoved(java.awt.event.MouseEvent e)voidmousePressed(java.awt.event.MouseEvent e)voidmouseReleased(java.awt.event.MouseEvent e)voidpaint(java.awt.Graphics g)voidremoveCustomFaderListener(CustomFaderListener listener)voidsetBlockIncrement(int v)Set how much the value jumps when click to left or high of slider.voidsetUnitIncrement(int v)Set how much the value jumps when click on an arrow.voidsetValue(int v)voidsetValues(int val, int min, int max)Set current value, minimum value, maximum value of fadervoidsetVisibleAmount(int amount)voidupdate(java.awt.Graphics g)Methods inherited from class java.awt.Canvas
addNotify, createBufferStrategy, createBufferStrategy, getAccessibleContext, getBufferStrategyMethods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, bounds, checkImage, checkImage, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, deliverEvent, disable, dispatchEvent, doLayout, enable, enable, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAlignmentX, getAlignmentY, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentAt, getComponentAt, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeys, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getListeners, getLocale, getLocation, getLocation, getLocationOnScreen, getMaximumSize, getMinimumSize, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, invalidate, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusCycleRoot, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, layout, list, list, list, list, list, locate, location, lostFocus, minimumSize, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, preferredSize, prepareImage, prepareImage, print, printAll, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, revalidate, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeys, setFocusTraversalKeysEnabled, setFont, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setMixingCutoutShape, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle, validateMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Field Details
-
HORIZONTAL
public static final int HORIZONTAL- See Also:
- Constant Field Values
-
VERTICAL
public static final int VERTICAL- See Also:
- Constant Field Values
-
-
Constructor Details
-
CustomFader
public CustomFader(int orientation, int val, int visible, int min, int max)Constructor with initial value, visible, min value, max value. LineIncrement defaults to 1, PageIncrement defaults to 10 (see setUnitIncrement() and setBlockIncrement() below)
-
-
Method Details
-
addCustomFaderListener
Add a listener to receive value change events. -
removeCustomFaderListener
-
setValues
public void setValues(int val, int min, int max)Set current value, minimum value, maximum value of fader -
getValue
public int getValue()- Returns:
- Scrollbar's current value
-
setBlockIncrement
public void setBlockIncrement(int v)Set how much the value jumps when click to left or high of slider. Default is 10 -
getBlockIncrement
public int getBlockIncrement() -
setUnitIncrement
public void setUnitIncrement(int v)Set how much the value jumps when click on an arrow. Default is 1 -
getLineIncrement
public int getLineIncrement() -
getVisibleAmount
public int getVisibleAmount(int amount) -
setVisibleAmount
public void setVisibleAmount(int amount) -
setValue
public void setValue(int v) -
update
public void update(java.awt.Graphics g)- Overrides:
updatein classjava.awt.Canvas
-
paint
public void paint(java.awt.Graphics g)- Overrides:
paintin classjava.awt.Canvas
-
mouseDragged
public void mouseDragged(java.awt.event.MouseEvent e)- Specified by:
mouseDraggedin interfacejava.awt.event.MouseMotionListener
-
mouseMoved
public void mouseMoved(java.awt.event.MouseEvent e)- Specified by:
mouseMovedin interfacejava.awt.event.MouseMotionListener
-
mousePressed
public void mousePressed(java.awt.event.MouseEvent e)- Specified by:
mousePressedin interfacejava.awt.event.MouseListener
-
mouseClicked
public void mouseClicked(java.awt.event.MouseEvent e)- Specified by:
mouseClickedin interfacejava.awt.event.MouseListener
-
mouseReleased
public void mouseReleased(java.awt.event.MouseEvent e)- Specified by:
mouseReleasedin interfacejava.awt.event.MouseListener
-
mouseEntered
public void mouseEntered(java.awt.event.MouseEvent e)- Specified by:
mouseEnteredin interfacejava.awt.event.MouseListener
-
mouseExited
public void mouseExited(java.awt.event.MouseEvent e)- Specified by:
mouseExitedin interfacejava.awt.event.MouseListener
-