Class BasicCommandButtonUI
- java.lang.Object
-
- javax.swing.plaf.ComponentUI
-
- javax.swing.plaf.ButtonUI
-
- org.pushingpixels.flamingo.internal.ui.common.CommandButtonUI
-
- org.pushingpixels.flamingo.internal.ui.common.BasicCommandButtonUI
-
- Direct Known Subclasses:
BasicCommandMenuButtonUI
,BasicCommandToggleButtonUI
,BasicRibbonApplicationMenuButtonUI
public class BasicCommandButtonUI extends CommandButtonUI
Basic UI for command buttonJCommandButton
.
-
-
Field Summary
Fields Modifier and Type Field Description protected BasicCommandButtonListener
basicPopupButtonListener
Tracks user interaction with the command button (including keyboard and mouse).protected CellRendererPane
buttonRendererPane
Used to provide a LAF-consistent appearance under core LAFs.protected AbstractCommandButton
commandButton
The associated command button.protected ActionListener
disposePopupsActionListener
This listener disposes all popup panels when button's action is activated.static String
DONT_DISPOSE_POPUPS
Client property to mark the command button to not dispose the popups on activation.static String
EMULATE_SQUARE_BUTTON
Client property to mark the command button to have square corners.protected boolean
isUnderMouse
Indication whether the mouse pointer is over the associated command button.protected CommandButtonLayoutManager.CommandButtonLayoutInfo
layoutInfo
Layout information.protected CommandButtonLayoutManager
layoutManager
protected ResizableIcon
popupActionIcon
The "expand" action icon.protected PopupActionListener
popupActionListener
Action listener on the popup area.protected PropertyChangeListener
propertyChangeListener
Property change listener.protected AbstractButton
rendererButton
Used to provide a LAF-consistent appearance under core LAFs.protected JSeparator
rendererSeparator
Used to paint the separator between the action and popup areas.
-
Constructor Summary
Constructors Constructor Description BasicCommandButtonUI()
Creates a new UI delegate.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
configureRenderer()
protected BasicCommandButtonListener
createButtonListener(AbstractCommandButton b)
Creates the button listener for the specified command button.protected ResizableIcon
createPopupActionIcon()
Creates the icon for the popup area.protected PopupActionListener
createPopupActionListener()
Creates the popup action listener for this command button.protected AbstractButton
createRendererButton()
Creates the renderer button.static ComponentUI
createUI(JComponent c)
protected Color
getForegroundColor(boolean isTextPaintedEnabled)
protected Icon
getIconToPaint()
Returns the current icon.Point
getKeyTipAnchorCenterPoint()
protected int
getLayoutGap()
Returns the layout gap for the visuals of the associated command button.CommandButtonLayoutManager.CommandButtonLayoutInfo
getLayoutInfo()
Returns the layout information for the associated button.Dimension
getPreferredSize(JComponent c)
protected void
installComponents()
Installs subcomponents on the associated command button.protected void
installDefaults()
Installs defaults on the associated command button.protected void
installKeyboardActions()
Installs the keyboard actions on the associated command button.protected void
installListeners()
Installs listeners on the associated command button.void
installUI(JComponent c)
protected boolean
isPaintingBackground()
Returns indication whether the button background is painted.protected boolean
isPaintingSeparators()
Returns indication whether the action-popup areas separator is painted.void
paint(Graphics g, JComponent c)
protected void
paintButtonBackground(Graphics graphics, Rectangle toFill)
Paints command button background.protected void
paintButtonBackground(Graphics graphics, Rectangle toFill, ButtonModel... modelToUse)
Paints the background of the command button.protected void
paintButtonHorizontalSeparator(Graphics graphics, Rectangle separatorArea)
Paints command button horizontal separator.protected void
paintButtonIcon(Graphics g, Rectangle iconRect)
Paints the button icon.protected void
paintButtonVerticalSeparator(Graphics graphics, Rectangle separatorArea)
Paints command button vertical separator.protected void
paintPopupActionIcon(Graphics g, Rectangle popupActionRect)
Paints the icon of the popup area.protected void
processPopupAction()
protected void
syncDisabledIcon()
protected void
syncIconDimension()
protected boolean
toUseDisabledIcon()
protected void
unconfigureRenderer()
protected void
uninstallComponents()
Uninstalls subcomponents from the associated command button.protected void
uninstallDefaults()
Uninstalls defaults from the associated command button.protected void
uninstallKeyboardActions()
Uninstalls the keyboard actions from the associated command button.protected void
uninstallListeners()
Uninstalls listeners from the associated command button.void
uninstallUI(JComponent c)
void
update(Graphics g, JComponent c)
protected void
updateBorder()
protected void
updateCustomDimension()
Updates the custom dimension.protected void
updatePopupActionIcon()
Updates the popup action icon.-
Methods inherited from class javax.swing.plaf.ComponentUI
contains, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior, getMaximumSize, getMinimumSize
-
-
-
-
Field Detail
-
commandButton
protected AbstractCommandButton commandButton
The associated command button.
-
isUnderMouse
protected boolean isUnderMouse
Indication whether the mouse pointer is over the associated command button.
-
propertyChangeListener
protected PropertyChangeListener propertyChangeListener
Property change listener.
-
basicPopupButtonListener
protected BasicCommandButtonListener basicPopupButtonListener
Tracks user interaction with the command button (including keyboard and mouse).
-
layoutInfo
protected CommandButtonLayoutManager.CommandButtonLayoutInfo layoutInfo
Layout information.
-
EMULATE_SQUARE_BUTTON
public static final String EMULATE_SQUARE_BUTTON
Client property to mark the command button to have square corners. This client property is for internal use only.- See Also:
- Constant Field Values
-
DONT_DISPOSE_POPUPS
public static final String DONT_DISPOSE_POPUPS
Client property to mark the command button to not dispose the popups on activation.- See Also:
disposePopupsActionListener
, Constant Field Values
-
disposePopupsActionListener
protected ActionListener disposePopupsActionListener
This listener disposes all popup panels when button's action is activated. An example of scenario would be a command button in the popup panel of an in-ribbon gallery. When this command button is activated, the associated popup panel is dismissed.- See Also:
DONT_DISPOSE_POPUPS
-
popupActionListener
protected PopupActionListener popupActionListener
Action listener on the popup area.
-
popupActionIcon
protected ResizableIcon popupActionIcon
The "expand" action icon.
-
layoutManager
protected CommandButtonLayoutManager layoutManager
-
buttonRendererPane
protected CellRendererPane buttonRendererPane
Used to provide a LAF-consistent appearance under core LAFs.
-
rendererButton
protected AbstractButton rendererButton
Used to provide a LAF-consistent appearance under core LAFs.
-
rendererSeparator
protected JSeparator rendererSeparator
Used to paint the separator between the action and popup areas.
-
-
Method Detail
-
createUI
public static ComponentUI createUI(JComponent c)
-
installUI
public void installUI(JComponent c)
- Overrides:
installUI
in classComponentUI
-
uninstallUI
public void uninstallUI(JComponent c)
- Overrides:
uninstallUI
in classComponentUI
-
installDefaults
protected void installDefaults()
Installs defaults on the associated command button.
-
configureRenderer
protected void configureRenderer()
-
updateBorder
protected void updateBorder()
-
createRendererButton
protected AbstractButton createRendererButton()
Creates the renderer button.- Returns:
- The renderer button.
-
installComponents
protected void installComponents()
Installs subcomponents on the associated command button.
-
installListeners
protected void installListeners()
Installs listeners on the associated command button.
-
createPopupActionIcon
protected ResizableIcon createPopupActionIcon()
Creates the icon for the popup area.- Returns:
- The icon for the popup area.
-
createButtonListener
protected BasicCommandButtonListener createButtonListener(AbstractCommandButton b)
Creates the button listener for the specified command button.- Parameters:
b
- Command button.- Returns:
- The button listener for the specified command button.
-
installKeyboardActions
protected void installKeyboardActions()
Installs the keyboard actions on the associated command button.
-
uninstallDefaults
protected void uninstallDefaults()
Uninstalls defaults from the associated command button.
-
unconfigureRenderer
protected void unconfigureRenderer()
-
uninstallComponents
protected void uninstallComponents()
Uninstalls subcomponents from the associated command button.
-
uninstallListeners
protected void uninstallListeners()
Uninstalls listeners from the associated command button.
-
uninstallKeyboardActions
protected void uninstallKeyboardActions()
Uninstalls the keyboard actions from the associated command button.
-
update
public void update(Graphics g, JComponent c)
- Overrides:
update
in classComponentUI
-
paint
public void paint(Graphics g, JComponent c)
- Overrides:
paint
in classComponentUI
-
getForegroundColor
protected Color getForegroundColor(boolean isTextPaintedEnabled)
-
paintPopupActionIcon
protected void paintPopupActionIcon(Graphics g, Rectangle popupActionRect)
Paints the icon of the popup area.- Parameters:
g
- Graphics context.popupActionRect
-
-
getIconToPaint
protected Icon getIconToPaint()
Returns the current icon.- Returns:
- Current icon.
-
toUseDisabledIcon
protected boolean toUseDisabledIcon()
-
paintButtonVerticalSeparator
protected void paintButtonVerticalSeparator(Graphics graphics, Rectangle separatorArea)
Paints command button vertical separator.- Parameters:
graphics
- Graphics context.separatorArea
- Separator area.
-
paintButtonHorizontalSeparator
protected void paintButtonHorizontalSeparator(Graphics graphics, Rectangle separatorArea)
Paints command button horizontal separator.- Parameters:
graphics
- Graphics context.separatorArea
- Separator area.
-
paintButtonBackground
protected void paintButtonBackground(Graphics graphics, Rectangle toFill)
Paints command button background.- Parameters:
graphics
- Graphics context.toFill
- Rectangle for the background.
-
paintButtonBackground
protected void paintButtonBackground(Graphics graphics, Rectangle toFill, ButtonModel... modelToUse)
Paints the background of the command button.- Parameters:
graphics
- Graphics context.toFill
- Rectangle to fill.modelToUse
- Button models to use for computing the background fill.
-
updateCustomDimension
protected void updateCustomDimension()
Updates the custom dimension.
-
updatePopupActionIcon
protected void updatePopupActionIcon()
Updates the popup action icon.
-
paintButtonIcon
protected void paintButtonIcon(Graphics g, Rectangle iconRect)
Paints the button icon.- Parameters:
g
- Graphics context.iconRect
- Icon rectangle.
-
getPreferredSize
public Dimension getPreferredSize(JComponent c)
- Overrides:
getPreferredSize
in classComponentUI
-
getLayoutInfo
public CommandButtonLayoutManager.CommandButtonLayoutInfo getLayoutInfo()
Description copied from class:CommandButtonUI
Returns the layout information for the associated button.- Specified by:
getLayoutInfo
in classCommandButtonUI
- Returns:
- Layout information for the associated button.
-
getLayoutGap
protected int getLayoutGap()
Returns the layout gap for the visuals of the associated command button.- Returns:
- The layout gap for the visuals of the associated command button.
-
isPaintingSeparators
protected boolean isPaintingSeparators()
Returns indication whether the action-popup areas separator is painted.- Returns:
true
if the action-popup areas separator is painted.
-
isPaintingBackground
protected boolean isPaintingBackground()
Returns indication whether the button background is painted.- Returns:
true
if the button background is painted.
-
createPopupActionListener
protected PopupActionListener createPopupActionListener()
Creates the popup action listener for this command button.- Returns:
- Popup action listener for this command button.
-
processPopupAction
protected void processPopupAction()
-
syncDisabledIcon
protected void syncDisabledIcon()
-
syncIconDimension
protected void syncIconDimension()
-
getKeyTipAnchorCenterPoint
public Point getKeyTipAnchorCenterPoint()
- Specified by:
getKeyTipAnchorCenterPoint
in classCommandButtonUI
-
-