Package ca.cgjennings.ui
Class JRepeaterButton
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.AbstractButton
-
- javax.swing.JButton
-
- ca.cgjennings.ui.JRepeaterButton
-
- All Implemented Interfaces:
java.awt.image.ImageObserver,java.awt.ItemSelectable,java.awt.MenuContainer,java.io.Serializable,javax.accessibility.Accessible,javax.swing.SwingConstants
public class JRepeaterButton extends javax.swing.JButtonA button that generates action events as long as it is held down.- Author:
- Chris Jennings
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JButton
javax.swing.JButton.AccessibleJButton
-
Nested classes/interfaces inherited from class javax.swing.AbstractButton
javax.swing.AbstractButton.AccessibleAbstractButton, javax.swing.AbstractButton.ButtonChangeListener
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringPRESSED_COMMANDAn action event with this command is fired when the button is first pressed.static java.lang.StringRELEASE_COMMANDIf the button is set to fire an event on release, an action event with this command is fired when the button is released.static java.lang.StringREPEAT_COMMANDAn action event with this command is fired for each repeat as the button is held down.-
Fields inherited from class javax.swing.AbstractButton
actionListener, BORDER_PAINTED_CHANGED_PROPERTY, changeEvent, changeListener, CONTENT_AREA_FILLED_CHANGED_PROPERTY, DISABLED_ICON_CHANGED_PROPERTY, DISABLED_SELECTED_ICON_CHANGED_PROPERTY, FOCUS_PAINTED_CHANGED_PROPERTY, HORIZONTAL_ALIGNMENT_CHANGED_PROPERTY, HORIZONTAL_TEXT_POSITION_CHANGED_PROPERTY, ICON_CHANGED_PROPERTY, itemListener, MARGIN_CHANGED_PROPERTY, MNEMONIC_CHANGED_PROPERTY, model, MODEL_CHANGED_PROPERTY, PRESSED_ICON_CHANGED_PROPERTY, ROLLOVER_ENABLED_CHANGED_PROPERTY, ROLLOVER_ICON_CHANGED_PROPERTY, ROLLOVER_SELECTED_ICON_CHANGED_PROPERTY, SELECTED_ICON_CHANGED_PROPERTY, TEXT_CHANGED_PROPERTY, VERTICAL_ALIGNMENT_CHANGED_PROPERTY, VERTICAL_TEXT_POSITION_CHANGED_PROPERTY
-
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
-
-
Constructor Summary
Constructors Constructor Description JRepeaterButton()Creates a button with no set text or icon.JRepeaterButton(java.lang.String text)Creates a button with text.JRepeaterButton(java.lang.String text, javax.swing.Icon icon)Creates a button with initial text and an icon.JRepeaterButton(javax.swing.Action a)Creates a button where properties are taken from theActionsupplied.JRepeaterButton(javax.swing.Icon icon)Creates a button with an icon.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidfireActionPerformed(java.awt.event.ActionEvent event)intgetDelayDecay()Return the number of ms by which the delay is reduced after each repeat until the minimum delay is reached.booleangetFireEventOnRelease()Returnstrueif the button will fire an action command when the button is released.intgetMinimumDelay()Return the minimum delay, in ms, before a repeat is fired.intgetRepeatCount()If the button is currently held down, return the number of repeats that have occurred so far.intgetRepeatDelay()Return the initial delay (in ms) between repeat events while the button is pressed.voidsetDelayDecay(int delayDecay)Set the number of ms by which the delay is reduced after each repeat until the minimum delay is reached.voidsetFireEventOnRelease(boolean fireEvent)Sets whether the button fires an action event with the command stringRELEASE_COMMANDwhen the button is released.voidsetMinimumDelay(int minimumDelay)The delay from button press until the first repeat is fired is thegetRepeatDelay().voidsetRepeatDelay(int delay)Set the initial delay (in ms) between repeat events while the button is pressed.-
Methods inherited from class javax.swing.JButton
getAccessibleContext, getUIClassID, isDefaultButton, isDefaultCapable, paramString, removeNotify, setDefaultCapable, updateUI
-
Methods inherited from class javax.swing.AbstractButton
actionPropertyChanged, addActionListener, addChangeListener, addImpl, addItemListener, checkHorizontalKey, checkVerticalKey, configurePropertiesFromAction, createActionListener, createActionPropertyChangeListener, createChangeListener, createItemListener, doClick, doClick, fireItemStateChanged, fireStateChanged, getAction, getActionCommand, getActionListeners, getChangeListeners, getDisabledIcon, getDisabledSelectedIcon, getDisplayedMnemonicIndex, getHideActionText, getHorizontalAlignment, getHorizontalTextPosition, getIcon, getIconTextGap, getItemListeners, getLabel, getMargin, getMnemonic, getModel, getMultiClickThreshhold, getPressedIcon, getRolloverIcon, getRolloverSelectedIcon, getSelectedIcon, getSelectedObjects, getText, getUI, getVerticalAlignment, getVerticalTextPosition, imageUpdate, init, isBorderPainted, isContentAreaFilled, isFocusPainted, isRolloverEnabled, isSelected, paintBorder, removeActionListener, removeChangeListener, removeItemListener, setAction, setActionCommand, setBorderPainted, setContentAreaFilled, setDisabledIcon, setDisabledSelectedIcon, setDisplayedMnemonicIndex, setEnabled, setFocusPainted, setHideActionText, setHorizontalAlignment, setHorizontalTextPosition, setIcon, setIconTextGap, setLabel, setLayout, setMargin, setMnemonic, setMnemonic, setModel, setMultiClickThreshhold, setPressedIcon, setRolloverEnabled, setRolloverIcon, setRolloverSelectedIcon, setSelected, setSelectedIcon, setText, setUI, setVerticalAlignment, setVerticalTextPosition
-
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, 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, 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
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, 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, 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, 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
-
-
-
-
Field Detail
-
PRESSED_COMMAND
public static final java.lang.String PRESSED_COMMAND
An action event with this command is fired when the button is first pressed.- See Also:
- Constant Field Values
-
REPEAT_COMMAND
public static final java.lang.String REPEAT_COMMAND
An action event with this command is fired for each repeat as the button is held down.- See Also:
- Constant Field Values
-
RELEASE_COMMAND
public static final java.lang.String RELEASE_COMMAND
If the button is set to fire an event on release, an action event with this command is fired when the button is released.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
JRepeaterButton
public JRepeaterButton()
Creates a button with no set text or icon.
-
JRepeaterButton
public JRepeaterButton(javax.swing.Icon icon)
Creates a button with an icon.- Parameters:
icon- the Icon image to display on the button
-
JRepeaterButton
public JRepeaterButton(java.lang.String text)
Creates a button with text.- Parameters:
text- the text of the button
-
JRepeaterButton
public JRepeaterButton(javax.swing.Action a)
Creates a button where properties are taken from theActionsupplied.- Parameters:
a- theActionused to specify the new button
-
JRepeaterButton
public JRepeaterButton(java.lang.String text, javax.swing.Icon icon)Creates a button with initial text and an icon.- Parameters:
text- the text of the buttonicon- the Icon image to display on the button
-
-
Method Detail
-
getRepeatCount
public int getRepeatCount()
If the button is currently held down, return the number of repeats that have occurred so far. Otherwise, returns 0.
-
setRepeatDelay
public void setRepeatDelay(int delay)
Set the initial delay (in ms) between repeat events while the button is pressed.
-
getRepeatDelay
public int getRepeatDelay()
Return the initial delay (in ms) between repeat events while the button is pressed.
-
getDelayDecay
public int getDelayDecay()
Return the number of ms by which the delay is reduced after each repeat until the minimum delay is reached.
-
setDelayDecay
public void setDelayDecay(int delayDecay)
Set the number of ms by which the delay is reduced after each repeat until the minimum delay is reached.
-
getMinimumDelay
public int getMinimumDelay()
Return the minimum delay, in ms, before a repeat is fired.
-
setMinimumDelay
public void setMinimumDelay(int minimumDelay)
The delay from button press until the first repeat is fired is thegetRepeatDelay(). After each subsequent repeat, the delay is reduced bygetDelayDecay()until it reachesgetMinimumDelay().
-
setFireEventOnRelease
public void setFireEventOnRelease(boolean fireEvent)
Sets whether the button fires an action event with the command stringRELEASE_COMMANDwhen the button is released. Default isfalse.- Parameters:
fireEvent- iftrue, a final event will be posted when the user releases the button
-
getFireEventOnRelease
public boolean getFireEventOnRelease()
Returnstrueif the button will fire an action command when the button is released.- Returns:
trueif the event will be fired
-
fireActionPerformed
protected void fireActionPerformed(java.awt.event.ActionEvent event)
- Overrides:
fireActionPerformedin classjavax.swing.AbstractButton
-
-