com.sibvisions.rad.ui.swing.ext
Class JVxButton

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.AbstractButton
                  extended by javax.swing.JButton
                      extended by com.sibvisions.rad.ui.swing.ext.JVxButton
All Implemented Interfaces:
java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.image.ImageObserver, java.awt.ItemSelectable, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.SwingConstants

public class JVxButton
extends javax.swing.JButton
implements java.awt.event.MouseListener, java.awt.event.MouseMotionListener

The JVxButton is a JButton extension.

See Also:
JButton, 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
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
 
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
accessibleContext, 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
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
JVxButton()
          Creates a button with no set text or icon.
JVxButton(javax.swing.Action pAction)
          Creates a button where properties are taken from the Action supplied.
JVxButton(javax.swing.Icon pIcon)
          Creates a button with an icon.
JVxButton(java.lang.String pText)
          Creates a button with text.
JVxButton(java.lang.String pText, javax.swing.Icon pIcon)
          Creates a button with initial text and an icon.
 
Method Summary
 void addIgnoreActionListener(java.awt.event.ActionListener pListener)
          Adds an event listener to the list of ignored listeners for menu handling.
 void addMenuActionListener(IMenuActionListener pListener)
          Adds a menu action listener.
 void addNotify()
          
protected  void fireActionPerformed(java.awt.event.ActionEvent pEvent)
          
protected  void fireMenuActionPerformed(java.awt.event.ActionEvent pEvent)
          Notifies all menu action listeners.
 javax.swing.KeyStroke getAccelerator()
          Returns the KeyStroke which serves as an accelerator for the menu item.
static javax.swing.KeyStroke getAccelerator(javax.swing.AbstractButton pAbstractButton)
          Returns the KeyStroke which serves as an accelerator for the menu item.
 javax.swing.JMenuItem getDefaultItem()
          Gets the default menu item.
 javax.swing.JPopupMenu getPopupMenu()
          Gets the popup menu.
 boolean isBorderOnMouseEntered()
          Gets, if the border should only be shown on mouse entered.
static boolean isBorderOnMouseEntered(javax.swing.AbstractButton pAbstractButton)
          Gets, if the border should only be shown on mouse entered.
 boolean isDefaultButton()
          
 boolean isShowing()
          
 void mouseClicked(java.awt.event.MouseEvent pEvent)
          
 void mouseDragged(java.awt.event.MouseEvent pEvent)
          
 void mouseEntered(java.awt.event.MouseEvent pEvent)
          
 void mouseExited(java.awt.event.MouseEvent pEvent)
          
 void mouseMoved(java.awt.event.MouseEvent pEvent)
          
 void mousePressed(java.awt.event.MouseEvent pEvent)
          
 void mouseReleased(java.awt.event.MouseEvent pEvent)
          
protected  void paintComponent(java.awt.Graphics g)
          
 void removeActionListener(java.awt.event.ActionListener pListener)
          
 void removeMenuActionListener(IMenuActionListener pListener)
          Removes a menu action listener.
static void setAccelerator(javax.swing.AbstractButton pAbstractButton, javax.swing.KeyStroke pKeyStroke)
          Sets the key combination which invokes the menu item's action listeners without navigating the menu hierarchy.
 void setAccelerator(javax.swing.KeyStroke pKeyStroke)
          Sets the key combination which invokes the menu item's action listeners without navigating the menu hierarchy.
static void setBorderOnMouseEntered(javax.swing.AbstractButton pAbstractButton, boolean pBorderOnMouseEntered)
          Sets, if the border should only be shown on mouse entered.
 void setBorderOnMouseEntered(boolean pBorderOnMouseEntered)
          Sets, if the border should only be shown on mouse entered.
 void setDefaultButton(boolean pDefault)
          Sets this button as default button for the "parent" root pane.
 void setDefaultItem(javax.swing.JMenuItem pMenuItem)
          Sets the default menu item for actions.
 void setEnabled(boolean pEnabled)
          
 void setMargin(java.awt.Insets pInsets)
          
protected  void setMenuVisible(boolean pVisible)
          Sets the visibility of the popup menu.
 void setPopupMenu(javax.swing.JPopupMenu pMenu)
          Sets the popup menu.
 
Methods inherited from class javax.swing.JButton
getAccessibleContext, getUIClassID, 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, removeChangeListener, removeItemListener, setAction, setActionCommand, setBorderPainted, setContentAreaFilled, setDisabledIcon, setDisabledSelectedIcon, setDisplayedMnemonicIndex, setFocusPainted, setHideActionText, setHorizontalAlignment, setHorizontalTextPosition, setIcon, setIconTextGap, setLabel, setLayout, setMnemonic, setMnemonic, setModel, setMultiClickThreshhold, setPressedIcon, setRolloverEnabled, setRolloverIcon, setRolloverSelectedIcon, setSelected, setSelectedIcon, setText, setUI, setVerticalAlignment, setVerticalTextPosition
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, 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, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintChildren, 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, transferFocusBackward, 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, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, 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, 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
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

JVxButton

public JVxButton()
Creates a button with no set text or icon.


JVxButton

public JVxButton(javax.swing.Icon pIcon)
Creates a button with an icon.

Parameters:
pIcon - the Icon image to display on the button

JVxButton

public JVxButton(java.lang.String pText)
Creates a button with text.

Parameters:
pText - the text of the button

JVxButton

public JVxButton(javax.swing.Action pAction)
Creates a button where properties are taken from the Action supplied.

Parameters:
pAction - the Action used to specify the new button

JVxButton

public JVxButton(java.lang.String pText,
                 javax.swing.Icon pIcon)
Creates a button with initial text and an icon.

Parameters:
pText - the text of the button
pIcon - the Icon image to display on the button
Method Detail

isShowing

public boolean isShowing()

Overrides:
isShowing in class java.awt.Component

isDefaultButton

public boolean isDefaultButton()

Overrides:
isDefaultButton in class javax.swing.JButton

addNotify

public void addNotify()

Overrides:
addNotify in class javax.swing.JComponent

removeActionListener

public void removeActionListener(java.awt.event.ActionListener pListener)

Overrides:
removeActionListener in class javax.swing.AbstractButton

setMargin

public void setMargin(java.awt.Insets pInsets)

Overrides:
setMargin in class javax.swing.AbstractButton

paintComponent

protected void paintComponent(java.awt.Graphics g)

Overrides:
paintComponent in class javax.swing.JComponent

setEnabled

public void setEnabled(boolean pEnabled)

Overrides:
setEnabled in class javax.swing.AbstractButton

fireActionPerformed

protected void fireActionPerformed(java.awt.event.ActionEvent pEvent)

Overrides:
fireActionPerformed in class javax.swing.AbstractButton

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent pEvent)

Specified by:
mouseClicked in interface java.awt.event.MouseListener

mousePressed

public void mousePressed(java.awt.event.MouseEvent pEvent)

Specified by:
mousePressed in interface java.awt.event.MouseListener

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent pEvent)

Specified by:
mouseReleased in interface java.awt.event.MouseListener

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent pEvent)

Specified by:
mouseEntered in interface java.awt.event.MouseListener

mouseExited

public void mouseExited(java.awt.event.MouseEvent pEvent)

Specified by:
mouseExited in interface java.awt.event.MouseListener

mouseMoved

public void mouseMoved(java.awt.event.MouseEvent pEvent)

Specified by:
mouseMoved in interface java.awt.event.MouseMotionListener

mouseDragged

public void mouseDragged(java.awt.event.MouseEvent pEvent)

Specified by:
mouseDragged in interface java.awt.event.MouseMotionListener

setDefaultButton

public void setDefaultButton(boolean pDefault)
Sets this button as default button for the "parent" root pane. If another button is defined as default button, then the other button will unset as default button.

Parameters:
pDefault - true to set this button as default

getAccelerator

public javax.swing.KeyStroke getAccelerator()
Returns the KeyStroke which serves as an accelerator for the menu item.

Returns:
a KeyStroke object identifying the accelerator key

setAccelerator

public void setAccelerator(javax.swing.KeyStroke pKeyStroke)
Sets the key combination which invokes the menu item's action listeners without navigating the menu hierarchy. It is the UI's responsibility to install the correct action. Note that when the keyboard accelerator is typed, it will work whether or not the menu is currently displayed.

Parameters:
pKeyStroke - the KeyStroke which will serve as an accelerator

isBorderOnMouseEntered

public boolean isBorderOnMouseEntered()
Gets, if the border should only be shown on mouse entered.

Returns:
true, if the border should only be shown on mouse entered.

setBorderOnMouseEntered

public void setBorderOnMouseEntered(boolean pBorderOnMouseEntered)
Sets, if the border should only be shown on mouse entered.

Parameters:
pBorderOnMouseEntered - true, if the border should only be shown on mouse entered.

getAccelerator

public static javax.swing.KeyStroke getAccelerator(javax.swing.AbstractButton pAbstractButton)
Returns the KeyStroke which serves as an accelerator for the menu item.

Parameters:
pAbstractButton - the AbstractButton to install the accelerator.
Returns:
a KeyStroke object identifying the accelerator key

setAccelerator

public static void setAccelerator(javax.swing.AbstractButton pAbstractButton,
                                  javax.swing.KeyStroke pKeyStroke)
Sets the key combination which invokes the menu item's action listeners without navigating the menu hierarchy. It is the UI's responsibility to install the correct action. Note that when the keyboard accelerator is typed, it will work whether or not the menu is currently displayed.

Parameters:
pAbstractButton - the AbstractButton to install the accelerator.
pKeyStroke - the KeyStroke which will serve as an accelerator

isBorderOnMouseEntered

public static boolean isBorderOnMouseEntered(javax.swing.AbstractButton pAbstractButton)
Gets, if the border should only be shown on mouse entered.

Parameters:
pAbstractButton - the AbstractButton.
Returns:
true, if the border should only be shown on mouse entered.

setBorderOnMouseEntered

public static void setBorderOnMouseEntered(javax.swing.AbstractButton pAbstractButton,
                                           boolean pBorderOnMouseEntered)
Sets, if the border should only be shown on mouse entered.

Parameters:
pAbstractButton - the AbstractButton.
pBorderOnMouseEntered - true, if the border should only be shown on mouse entered.

fireMenuActionPerformed

protected void fireMenuActionPerformed(java.awt.event.ActionEvent pEvent)
Notifies all menu action listeners.

Parameters:
pEvent - the action event

setMenuVisible

protected void setMenuVisible(boolean pVisible)
Sets the visibility of the popup menu.

Parameters:
pVisible - true to show, false to hide the menu

setPopupMenu

public void setPopupMenu(javax.swing.JPopupMenu pMenu)
Sets the popup menu.

Parameters:
pMenu - the menu

getPopupMenu

public javax.swing.JPopupMenu getPopupMenu()
Gets the popup menu.

Returns:
the menu

setDefaultItem

public void setDefaultItem(javax.swing.JMenuItem pMenuItem)
Sets the default menu item for actions. This item should be a sub element of the configured menu but it's not necessary. If not custom action event was set, this item will be used as action receiver.

Parameters:
pMenuItem - the default menu item

getDefaultItem

public javax.swing.JMenuItem getDefaultItem()
Gets the default menu item.

Returns:
the default menu item
See Also:
setDefaultItem(JMenuItem)

addMenuActionListener

public void addMenuActionListener(IMenuActionListener pListener)
Adds a menu action listener.

Parameters:
pListener - the listener

removeMenuActionListener

public void removeMenuActionListener(IMenuActionListener pListener)
Removes a menu action listener.

Parameters:
pListener - the listener

addIgnoreActionListener

public void addIgnoreActionListener(java.awt.event.ActionListener pListener)
Adds an event listener to the list of ignored listeners for menu handling.

Parameters:
pListener - the listener


Copyright © 2009 SIB Visions GmbH. All Rights Reserved.