org.jvnet.flamingo.common
Class JCommandButton

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by org.jvnet.flamingo.common.RichToolTipManager.JTrackableComponent
                  extended by org.jvnet.flamingo.common.AbstractCommandButton
                      extended by org.jvnet.flamingo.common.JCommandButton
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable
Direct Known Subclasses:
JCommandMenuButton, JRibbonApplicationMenuButton

public class JCommandButton
extends AbstractCommandButton

Command button.

Author:
Kirill Grouchnikov
See Also:
Serialized Form

Nested Class Summary
static class JCommandButton.CommandButtonKind
          Enumerates the available command button kinds.
static class JCommandButton.CommandButtonPopupOrientationKind
          Orientation kind for the popup.
 
Nested classes/interfaces inherited from class org.jvnet.flamingo.common.AbstractCommandButton
AbstractCommandButton.CommandButtonLocationOrderKind
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.BaselineResizeBehavior
 
Field Summary
static java.lang.String uiClassID
          The UI class ID string.
 
Fields inherited from class javax.swing.JComponent
TOOL_TIP_TEXT_KEY, 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
JCommandButton(java.lang.String title, ResizableIcon icon)
          Creates a new command button.
 
Method Summary
 void doPopupClick()
          Programmatically perform a "click" on the popup area.
 int getAutoRepeatInitialInterval()
          Returns the initial interval for invoking the registered action listeners in the auto-repeat action mode.
 int getAutoRepeatSubsequentInterval()
          Returns the subsequent interval for invoking the registered action listeners in the auto-repeat action mode.
 JCommandButton.CommandButtonKind getCommandButtonKind()
          Returns the command button kind of this button.
 PopupPanelCallback getPopupCallback()
          Returns the associated popup callback.
 java.lang.String getPopupKeyTip()
          Returns the key tip for the popup area of this button.
 PopupButtonModel getPopupModel()
          Returns the popup model of this button.
 JCommandButton.CommandButtonPopupOrientationKind getPopupOrientationKind()
          Returns the popup orientation kind of this button.
 RichTooltip getRichTooltip(java.awt.event.MouseEvent event)
           
 java.lang.String getUIClassID()
           
 boolean isAutoRepeatAction()
          Returns indication whether the button is in auto-repeat action mode.
 boolean isFireActionOnRollover()
          Returns indication whether this button is in action-on-rollover mode.
 void setActionKeyTip(java.lang.String actionKeyTip)
          Sets the key tip for the action area of this button.
 void setAutoRepeatAction(boolean isAutoRepeatAction)
          Sets the auto-repeat action indication.
 void setAutoRepeatActionIntervals(int initial, int subsequent)
          Sets the intervals for the auto-repeat action mode.
 void setCommandButtonKind(JCommandButton.CommandButtonKind commandButtonKind)
          Sets the kind for this button.
 void setEnabled(boolean b)
           
 void setFireActionOnRollover(boolean isFireActionOnRollover)
          Sets action-on-rollover mode.
 void setPopupCallback(PopupPanelCallback popupCallback)
          Sets new popup callback for this button.
 void setPopupKeyTip(java.lang.String popupKeyTip)
          Sets the key tip for the popup area of this button.
 void setPopupModel(PopupButtonModel newModel)
          Sets the new popup model for this button.
 void setPopupOrientationKind(JCommandButton.CommandButtonPopupOrientationKind popupOrientationKind)
          Sets the popup orientation for this button.
 void setPopupRichTooltip(RichTooltip richTooltip)
          Sets the rich tooltip for the popup area of this button.
 void updateUI()
           
 
Methods inherited from class org.jvnet.flamingo.common.AbstractCommandButton
addActionListener, addChangeListener, doActionClick, getActionKeyTip, getActionModel, getCustomDimension, getDisabledIcon, getDisplayState, getExtraText, getHGapScaleFactor, getHorizontalAlignment, getIcon, getLocationOrderKind, getText, getUI, getVGapScaleFactor, isFlat, removeActionListener, removeChangeListener, setActionModel, setActionRichTooltip, setDisabledIcon, setDisplayState, setExtraText, setFlat, setGapScaleFactor, setHGapScaleFactor, setHorizontalAlignment, setIcon, setLocationOrderKind, setText, setToolTipText, setUI, setVGapScaleFactor, updateCustomDimension
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, getAccessibleContext, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, 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, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintImmediately, paintImmediately, print, printAll, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, 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, setTransferHandler, 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, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, createImage, createImage, createVolatileImage, createVolatileImage, dispatchEvent, enable, enableInputMethods, 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, 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
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

uiClassID

public static final java.lang.String uiClassID
The UI class ID string.

See Also:
Constant Field Values
Constructor Detail

JCommandButton

public JCommandButton(java.lang.String title,
                      ResizableIcon icon)
Creates a new command button.

Parameters:
title - Button title. May contain any number of words.
icon - Button icon.
Method Detail

getCommandButtonKind

public JCommandButton.CommandButtonKind getCommandButtonKind()
Returns the command button kind of this button.

Returns:
Command button kind of this button.
See Also:
setCommandButtonKind(CommandButtonKind)

setCommandButtonKind

public void setCommandButtonKind(JCommandButton.CommandButtonKind commandButtonKind)
Sets the kind for this button. Fires a commandButtonKind property change event.

Parameters:
commandButtonKind - The new button kind.
See Also:
getCommandButtonKind()

getPopupOrientationKind

public JCommandButton.CommandButtonPopupOrientationKind getPopupOrientationKind()
Returns the popup orientation kind of this button.

Returns:
Popup orientation kind of this button.
See Also:
setPopupOrientationKind(CommandButtonPopupOrientationKind)

setPopupOrientationKind

public void setPopupOrientationKind(JCommandButton.CommandButtonPopupOrientationKind popupOrientationKind)
Sets the popup orientation for this button. Fires a popupOrientationKind property change event.

Parameters:
popupOrientationKind - The new popup orientation kind.
See Also:
getPopupOrientationKind()

updateUI

public void updateUI()
Overrides:
updateUI in class javax.swing.JComponent

getUIClassID

public java.lang.String getUIClassID()
Overrides:
getUIClassID in class javax.swing.JComponent

getPopupCallback

public PopupPanelCallback getPopupCallback()
Returns the associated popup callback.

Returns:
The associated popup callback.
See Also:
setPopupCallback(PopupPanelCallback)

setPopupCallback

public void setPopupCallback(PopupPanelCallback popupCallback)
Sets new popup callback for this button.

Parameters:
popupCallback - New popup callback for this button.
See Also:
getPopupCallback()

setAutoRepeatAction

public void setAutoRepeatAction(boolean isAutoRepeatAction)
Sets the auto-repeat action indication.

Parameters:
isAutoRepeatAction - If true, pressing the button will activate auto-repeat action mode. When the button is not in the auto-repeat action mode, the registered action listeners are activated when the mouse is released (just as with the base AbstractButton). When the button is in auto-repeat mode, the registered action listeners are activated when the mouse is pressed. In addition, is the mouse is still pressed after getAutoRepeatInitialInterval(), the action listeners will be activated every getAutoRepeatSubsequentInterval() until the button is disabled or the mouse is released.
See Also:
setAutoRepeatActionIntervals(int, int), isAutoRepeatAction()

setAutoRepeatActionIntervals

public void setAutoRepeatActionIntervals(int initial,
                                         int subsequent)
Sets the intervals for the auto-repeat action mode.

Parameters:
initial - The initial interval for invoking the registered action listeners in the auto-repeat action mode.
subsequent - The subsequent interval for invoking the registered action listeners in the auto-repeat action mode.
See Also:
setAutoRepeatAction(boolean), isAutoRepeatAction(), getAutoRepeatInitialInterval(), getAutoRepeatSubsequentInterval()

isAutoRepeatAction

public boolean isAutoRepeatAction()
Returns indication whether the button is in auto-repeat action mode.

Returns:
true if the button is in auto-repeat action mode, false otherwise.
See Also:
setAutoRepeatAction(boolean), setAutoRepeatActionIntervals(int, int), getAutoRepeatInitialInterval(), getAutoRepeatSubsequentInterval()

getAutoRepeatInitialInterval

public int getAutoRepeatInitialInterval()
Returns the initial interval for invoking the registered action listeners in the auto-repeat action mode.

Returns:
The initial interval for invoking the registered action listeners in the auto-repeat action mode.
See Also:
setAutoRepeatActionIntervals(int, int), setAutoRepeatAction(boolean), isAutoRepeatAction(), getAutoRepeatSubsequentInterval()

getAutoRepeatSubsequentInterval

public int getAutoRepeatSubsequentInterval()
Returns the subsequent interval for invoking the registered action listeners in the auto-repeat action mode.

Returns:
The subsequent interval for invoking the registered action listeners in the auto-repeat action mode.
See Also:
setAutoRepeatActionIntervals(int, int), setAutoRepeatAction(boolean), isAutoRepeatAction(), getAutoRepeatInitialInterval()

setFireActionOnRollover

public void setFireActionOnRollover(boolean isFireActionOnRollover)
Sets action-on-rollover mode. When this mode is on, button will fire action events when it gets rollover (instead of press). Combine with setAutoRepeatAction(boolean) passing true to get auto-repeat action fired on rollover (useful for quicker manipulation of scroller buttons, for example).

Parameters:
isFireActionOnRollover - If true, the button is moved into the action-on-rollover mode.
See Also:
isFireActionOnRollover()

isFireActionOnRollover

public boolean isFireActionOnRollover()
Returns indication whether this button is in action-on-rollover mode.

Returns:
true if this button is in action-on-rollover mode, false otherwise.
See Also:
setFireActionOnRollover(boolean)

getPopupModel

public PopupButtonModel getPopupModel()
Returns the popup model of this button.

Returns:
The popup model of this button.
See Also:
setPopupModel(PopupButtonModel)

setPopupModel

public void setPopupModel(PopupButtonModel newModel)
Sets the new popup model for this button. Fires a popupModel property change event.

Parameters:
newModel - The new popup model for this button.
See Also:
getPopupModel()

setEnabled

public void setEnabled(boolean b)
Overrides:
setEnabled in class AbstractCommandButton

setPopupRichTooltip

public void setPopupRichTooltip(RichTooltip richTooltip)
Sets the rich tooltip for the popup area of this button.

Parameters:
richTooltip - Rich tooltip for the popup area of this button.
See Also:
getRichTooltip(MouseEvent), AbstractCommandButton.setActionRichTooltip(RichTooltip)

getRichTooltip

public RichTooltip getRichTooltip(java.awt.event.MouseEvent event)
Overrides:
getRichTooltip in class AbstractCommandButton

getPopupKeyTip

public java.lang.String getPopupKeyTip()
Returns the key tip for the popup area of this button.

Returns:
The key tip for the popup area of this button.
See Also:
setPopupKeyTip(String), AbstractCommandButton.getActionKeyTip()

setPopupKeyTip

public void setPopupKeyTip(java.lang.String popupKeyTip)
Sets the key tip for the popup area of this button. Fires a popupKeyTip property change event.

Parameters:
popupKeyTip - The key tip for the popup area of this button.
See Also:
getPopupKeyTip(), setActionKeyTip(String)

setActionKeyTip

public void setActionKeyTip(java.lang.String actionKeyTip)
Description copied from class: AbstractCommandButton
Sets the key tip for the action area of this button. Fires an actionKeyTip property change event.

Overrides:
setActionKeyTip in class AbstractCommandButton
Parameters:
actionKeyTip - The key tip for the action area of this button.
See Also:
AbstractCommandButton.getActionKeyTip()

doPopupClick

public void doPopupClick()
Programmatically perform a "click" on the popup area. This does the same thing as if the user had pressed and released the popup area of the button.