Package com.jidesoft.swing
Class JideButton
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.AbstractButton
javax.swing.JButton
com.jidesoft.swing.JideButton
- All Implemented Interfaces:
Alignable,AlignmentSupport,ButtonStyle,ComponentStateSupport,ImageObserver,ItemSelectable,MenuContainer,Serializable,Accessible,SwingConstants
- Direct Known Subclasses:
CornerScroller,HeaderBox,JideToggleButton,NullJideButton,SimpleScrollPane.ScrollButton
public class JideButton
extends JButton
implements Alignable, ButtonStyle, ComponentStateSupport, AlignmentSupport
JideButton is a replacement for JButton when it is used on toolbar (or command bar in the case of JIDE Action
Framework).
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JButton
JButton.AccessibleJButtonNested classes/interfaces inherited from class javax.swing.AbstractButton
AbstractButton.AccessibleAbstractButton, AbstractButton.ButtonChangeListenerNested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponentNested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainerNested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringBy default, if a JideButton is added to a popup menu, clicking on the button will dismiss the popup menu.static final StringBound property name for always show hyperlink property.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_PROPERTYFields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWFields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface com.jidesoft.swing.Alignable
PROPERTY_ORIENTATIONFields inherited from interface com.jidesoft.swing.ButtonStyle
BUTTON_STYLE_PROPERTY, CLIENT_PROPERTY_SEGMENT_POSITION, FLAT_STYLE, HYPERLINK_STYLE, SEGMENT_POSITION_FIRST, SEGMENT_POSITION_LAST, SEGMENT_POSITION_MIDDLE, SEGMENT_POSITION_ONLY, TOOLBAR_STYLE, TOOLBOX_STYLEFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTHFields 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 -
Constructor Summary
ConstructorsConstructorDescriptionCreates a button with no set text or icon.JideButton(String text) Creates a button with text.JideButton(String text, Icon icon) Creates a button with initial text and an icon.JideButton(Action a) Creates a button where properties are taken from theActionsupplied.JideButton(Icon icon) Creates a button with an icon. -
Method Summary
Modifier and TypeMethodDescriptiongetBackgroundOfState(int state) Gets the background for different states.intGets the button style.getForegroundOfState(int state) Gets the foreground for different states.intThe button orientation.Returns a string that specifies the name of the Linvalid input: '&F' class that renders this component.booleanChecks the alwaysShowHyperlink property value.voidsetAlwaysShowHyperlink(boolean alwaysShowHyperlink) Sets the property if hyperlink (the underline) should be visible all the time.voidsetBackgroundOfState(int state, Color color) Sets the background for different states.voidsetButtonStyle(int buttonStyle) Sets the button style.voidsetDefaultForeground(Color defaultForeground) voidsetForegroundOfState(int state, Color color) Sets the foreground for different states.voidvoidsetOrientation(int orientation) Changes the orientation.voidsetRolloverEnabled(boolean b) voidbooleanreturn true if it supports horizontal orientation.booleanreturn true if it supports vertical orientation.voidupdateUI()Resets the UI property to a value from the current look and feel.Methods inherited from class javax.swing.JButton
getAccessibleContext, isDefaultButton, isDefaultCapable, paramString, removeNotify, setDefaultCapableMethods inherited from class javax.swing.AbstractButton
actionPropertyChanged, addActionListener, addChangeListener, addImpl, addItemListener, checkHorizontalKey, checkVerticalKey, configurePropertiesFromAction, createActionListener, createActionPropertyChangeListener, createChangeListener, createItemListener, doClick, doClick, fireActionPerformed, 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, setIconTextGap, setLabel, setLayout, setMargin, setMnemonic, setMnemonic, setModel, setMultiClickThreshhold, setPressedIcon, setRolloverIcon, setRolloverSelectedIcon, setSelected, setSelectedIcon, setUI, setVerticalAlignment, setVerticalTextPositionMethods 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, updateMethods 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, validateTreeMethods 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, transferFocusUpCycleMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.jidesoft.swing.AlignmentSupport
getHorizontalAlignment, getVerticalAlignment, setHorizontalAlignment, setVerticalAlignment
-
Field Details
-
PROPERTY_ALWAYS_SHOW_HYPERLINK
Bound property name for always show hyperlink property.- See Also:
-
CLIENT_PROPERTY_HIDE_POPUPMENU
By default, if a JideButton is added to a popup menu, clicking on the button will dismiss the popup menu. However if you change the default behavior, you can use this client property and set it to Boolean.FALSE.- See Also:
-
-
Constructor Details
-
JideButton
public JideButton()Creates a button with no set text or icon. -
JideButton
Creates a button with an icon.- Parameters:
icon- the Icon image to display on the button
-
JideButton
Creates a button with text.- Parameters:
text- the text of the button
-
JideButton
Creates a button where properties are taken from theActionsupplied.- Parameters:
a- theActionused to specify the new button- Since:
- 1.3
-
JideButton
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 Details
-
updateUI
public void updateUI()Resets the UI property to a value from the current look and feel. -
getUIClassID
Returns a string that specifies the name of the Linvalid input: '&F' class that renders this component.- Overrides:
getUIClassIDin classJButton- Returns:
- the string "ButtonUI"
- See Also:
-
getOrientation
public int getOrientation()The button orientation.- Specified by:
getOrientationin interfaceAlignable- Returns:
- the orientation.
-
setOrientation
public void setOrientation(int orientation) Description copied from interface:AlignableChanges the orientation. If the component is a Swing component, the default implementation is this.JideSwingUtilities.setOrientationOf(this, orientation);- Specified by:
setOrientationin interfaceAlignable- Parameters:
orientation- the new orientation
-
supportVerticalOrientation
public boolean supportVerticalOrientation()return true if it supports vertical orientation.- Specified by:
supportVerticalOrientationin interfaceAlignable- Returns:
- true if it supports vertical orientation
-
supportHorizontalOrientation
public boolean supportHorizontalOrientation()return true if it supports horizontal orientation.- Specified by:
supportHorizontalOrientationin interfaceAlignable- Returns:
- true if it supports horizontal orientation
-
getButtonStyle
public int getButtonStyle()Gets the button style.- Specified by:
getButtonStylein interfaceButtonStyle- Returns:
- the button style.
-
setButtonStyle
public void setButtonStyle(int buttonStyle) Sets the button style.- Specified by:
setButtonStylein interfaceButtonStyle- Parameters:
buttonStyle- one of the following values:ButtonStyle.TOOLBAR_STYLE(default),ButtonStyle.TOOLBOX_STYLE,ButtonStyle.FLAT_STYLEandButtonStyle.HYPERLINK_STYLE.
-
setRolloverEnabled
public void setRolloverEnabled(boolean b) - Overrides:
setRolloverEnabledin classAbstractButton
-
setText
- Overrides:
setTextin classAbstractButton
-
setIcon
- Overrides:
setIconin classAbstractButton
-
isAlwaysShowHyperlink
public boolean isAlwaysShowHyperlink()Checks the alwaysShowHyperlink property value.- Returns:
- true if the hyperlink is always visible. False if the hyperlink will be visible only when mouse rolls over.
-
setAlwaysShowHyperlink
public void setAlwaysShowHyperlink(boolean alwaysShowHyperlink) Sets the property if hyperlink (the underline) should be visible all the time. By default the hyperlink is visible when mouse is over the button. If set to true, the hyperlink will always be visible. Please notes, this is an option only available when button style is set to HYPERLINK_STYLE.- Parameters:
alwaysShowHyperlink- a boolean value. True means the button will always show hyperlink. False means it will show hyperlink only when mouse is over the button.
-
getDefaultForeground
-
setDefaultForeground
-
getBackgroundOfState
Gets the background for different states. The states are defined in ThemePainter as constants. Not all states are supported by all components. If the state is not supported or background is never set, it will return null. Please note, each Linvalid input: '&F' will have its own way to paint the different backgrounds. This method allows you to customize it for each component to use a different background. So if you want the background to be used, don't use a ColorUIResource because UIResource is considered as a setting set by the Linvalid input: '&F' and any Linvalid input: '&F' can choose to ignore it.- Specified by:
getBackgroundOfStatein interfaceComponentStateSupport- Parameters:
state- the button state. Valid values are ThemePainter.STATE_DEFAULT, ThemePainter.STATE_ROLLOVER, ThemePainter.STATE_SELECTED and ThemePainter.STATE_PRESSED.- Returns:
- the background for different states.
-
setBackgroundOfState
Sets the background for different states. The states are defined in ThemePainter as constants. Not all states are supported by all components. If the state is not supported or background is never set, it will return null. Please note, each Linvalid input: '&F' will have its own way to paint the different backgrounds. This method allows you to customize it for each component to use a different background. So if you want the background to be used, don't use a ColorUIResource because UIResource is considered as a setting set by the Linvalid input: '&F' and any Linvalid input: '&F' can choose to ignore it.- Specified by:
setBackgroundOfStatein interfaceComponentStateSupport- Parameters:
state- the button state. Valid values are ThemePainter.STATE_DEFAULT, ThemePainter.STATE_ROLLOVER, ThemePainter.STATE_SELECTED and ThemePainter.STATE_PRESSED.color- the new background for the state.
-
getForegroundOfState
Gets the foreground for different states. The states are defined in ThemePainter as constants. Not all states are supported by all components. If the state is not supported or foreground is never set, it will return null. Please note, each Linvalid input: '&F' will have its own way to paint the different foregrounds. This method allows you to customize it for each component to use a different foreground. So if you want the foreground to be used, don't use a ColorUIResource because UIResource is considered as a setting set by the Linvalid input: '&F' and any Linvalid input: '&F' can choose to ignore it.- Specified by:
getForegroundOfStatein interfaceComponentStateSupport- Parameters:
state- the button state. Valid values are ThemePainter.STATE_DEFAULT, ThemePainter.STATE_ROLLOVER, ThemePainter.STATE_SELECTED and ThemePainter.STATE_PRESSED.- Returns:
- the foreground for different states.
-
setForegroundOfState
Sets the foreground for different states. The states are defined in ThemePainter as constants. Not all states are supported by all components. If the state is not supported or foreground is never set, it will return null. Please note, each Linvalid input: '&F' will have its own way to paint the different foregrounds. This method allows you to customize it for each component to use a different foreground. So if you want the foreground to be used, don't use a ColorUIResource because UIResource is considered as a setting set by the Linvalid input: '&F' and any Linvalid input: '&F' can choose to ignore it.- Specified by:
setForegroundOfStatein interfaceComponentStateSupport- Parameters:
state- the button state. Valid values are ThemePainter.STATE_DEFAULT, ThemePainter.STATE_ROLLOVER, ThemePainter.STATE_SELECTED and ThemePainter.STATE_PRESSED.color- the new foreground for the state.
-