# Class BasicRadioButtonMenuItemUI

java.lang.Object
javax.swing.plaf.ComponentUI
javax.swing.plaf.ButtonUI
javax.swing.plaf.MenuItemUI
javax.swing.plaf.basic.BasicMenuItemUI
javax.swing.plaf.basic.BasicRadioButtonMenuItemUI

public class BasicRadioButtonMenuItemUI extends BasicMenuItemUI
BasicRadioButtonMenuItem implementation

## Nested Class Summary

### Nested classes/interfaces declared in class BasicMenuItemUI

`BasicMenuItemUI.MouseInputHandler`
Modifier and Type
Class
Description
`protected class`
`BasicMenuItemUI.MouseInputHandler`
Deprecated, for removal: This API element is subject to removal in a future version.

## Field Summary

### Fields declared in class BasicMenuItemUI

`acceleratorDelimiter, acceleratorFont, acceleratorForeground, acceleratorSelectionForeground, arrowIcon, checkIcon, defaultTextIconGap, disabledForeground, menuDragMouseListener, menuItem, menuKeyListener, mouseInputListener, oldBorderPainted, propertyChangeListener, selectionBackground, selectionForeground`
Modifier and Type
Field
Description
`protected String`
`acceleratorDelimiter`
Accelerator delimiter string, such as `'+'` in `'Ctrl+C'`.
`protected Font`
`acceleratorFont`
The accelerator font.
`protected Color`
`acceleratorForeground`
The color of the accelerator foreground.
`protected Color`
`acceleratorSelectionForeground`
The color of the accelerator selection.
`protected Icon`
`arrowIcon`
The arrow icon.
`protected Icon`
`checkIcon`
The check icon.
`protected int`
`defaultTextIconGap`
The gap between the text and the icon.
`protected Color`
`disabledForeground`
The color of the disabled foreground.
`protected MenuDragMouseListener`
`menuDragMouseListener`
The instance of `MenuDragMouseListener`.
`protected JMenuItem`
`menuItem`
The instance of `JMenuItem`.
`protected MenuKeyListener`
`menuKeyListener`
The instance of `MenuKeyListener`.
`protected MouseInputListener`
`mouseInputListener`
The instance of `MouseInputListener`.
`protected boolean`
`oldBorderPainted`
The value represents if the old border is painted.
`protected PropertyChangeListener`
`propertyChangeListener`
`PropertyChangeListener` returned from `createPropertyChangeListener`.
`protected Color`
`selectionBackground`
The color of the selection background.
`protected Color`
`selectionForeground`
The color of the selection foreground.

## Constructor Summary

Constructors
Constructor
Description
`BasicRadioButtonMenuItemUI()`
Constructs a `BasicRadioButtonMenuItemUI`.

## Method Summary

Modifier and Type
Method
Description
`static ComponentUI`
`createUI(JComponent b)`
Returns a new instance of `BasicRadioButtonMenuItemUI`.
`void`
`processMouseEvent(JMenuItem item, MouseEvent e, MenuElement[] path, MenuSelectionManager manager)`
Invoked when mouse event occurs.

### Methods declared in class BasicMenuItemUI

`createMenuDragMouseListener, createMenuKeyListener, createMouseInputListener, createPropertyChangeListener, doClick, getPath, getPreferredMenuItemSize, getPropertyPrefix, installComponents, installDefaults, installKeyboardActions, installListeners, paintBackground, paintMenuItem, paintText, uninstallComponents, uninstallDefaults, uninstallKeyboardActions, uninstallListeners, update`
Modifier and Type
Method
Description
`protected MenuDragMouseListener`
`createMenuDragMouseListener(JComponent c)`
Returns an instance of `MenuDragMouseListener`.
`protected MenuKeyListener`
`createMenuKeyListener(JComponent c)`
Returns an instance of `MenuKeyListener`.
`protected MouseInputListener`
`createMouseInputListener(JComponent c)`
Returns an instance of `MouseInputListener`.
`protected PropertyChangeListener`
`createPropertyChangeListener(JComponent c)`
Creates a `PropertyChangeListener` which will be added to the menu item.
`protected void`
`doClick(MenuSelectionManager msm)`
Call this method when a menu item is to be activated.
`MenuElement[]`
`getPath()`
Returns a menu element path.
`protected Dimension`
`getPreferredMenuItemSize(JComponent c, Icon checkIcon, Icon arrowIcon, int defaultTextIconGap)`
Returns the preferred size of a menu item.
`protected String`
`getPropertyPrefix()`
Returns a property prefix.
`protected void`
`installComponents(JMenuItem menuItem)`
Registers the subcomponents of the menu.
`protected void`
`installDefaults()`
Installs default properties.
`protected void`
`installKeyboardActions()`
Registers keyboard action.
`protected void`
`installListeners()`
Registers listeners.
`protected void`
`paintBackground(Graphics g, JMenuItem menuItem, Color bgColor)`
Draws the background of the menu item.
`protected void`
`paintMenuItem(Graphics g, JComponent c, Icon checkIcon, Icon arrowIcon, Color background, Color foreground, int defaultTextIconGap)`
Paints a menu item.
`protected void`
`paintText(Graphics g, JMenuItem menuItem, Rectangle textRect, String text)`
Renders the text of the current menu item.
`protected void`
`uninstallComponents(JMenuItem menuItem)`
Unregisters components.
`protected void`
`uninstallDefaults()`
Uninstalls default properties.
`protected void`
`uninstallKeyboardActions()`
Unregisters keyboard actions.
`protected void`
`uninstallListeners()`
Unregisters listeners.
`void`
`update(Graphics g, JComponent c)`
We draw the background in paintMenuItem() so override update (which fills the background of opaque components by default) to just call paint().

### Methods declared in class ComponentUI

`contains, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior, getMaximumSize, getMinimumSize, getPreferredSize, installUI, paint, uninstallUI`
Modifier and Type
Method
Description
`boolean`
`contains(JComponent c, int x, int y)`
Returns `true` if the specified x,y location is contained within the look and feel's defined shape of the specified component.
`Accessible`
`getAccessibleChild(JComponent c, int i)`
Returns the `i`th `Accessible` child of the object.
`int`
`getAccessibleChildrenCount(JComponent c)`
Returns the number of accessible children in the object.
`int`
`getBaseline(JComponent c, int width, int height)`
Returns the baseline.
`Component.BaselineResizeBehavior`
`getBaselineResizeBehavior(JComponent c)`
Returns an enum indicating how the baseline of the component changes as the size changes.
`Dimension`
`getMaximumSize(JComponent c)`
Returns the specified component's maximum size appropriate for the look and feel.
`Dimension`
`getMinimumSize(JComponent c)`
Returns the specified component's minimum size appropriate for the look and feel.
`Dimension`
`getPreferredSize(JComponent c)`
Returns the specified component's preferred size appropriate for the look and feel.
`void`
`installUI(JComponent c)`
Configures the specified component appropriately for the look and feel.
`void`
`paint(Graphics g, JComponent c)`
Paints the specified component appropriately for the look and feel.
`void`
`uninstallUI(JComponent c)`
Reverses configuration which was done on the specified component during `installUI`.

### Methods declared in class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`
Modifier and Type
Method
Description
`protected Object`
`clone()`
Creates and returns a copy of this object.
`boolean`
`equals(Object obj)`
Indicates whether some other object is "equal to" this one.
`protected void`
`finalize()`
Deprecated, for removal: This API element is subject to removal in a future version.
Finalization is deprecated and subject to removal in a future release.
`final Class<?>`
`getClass()`
Returns the runtime class of this `Object`.
`int`
`hashCode()`
Returns a hash code value for this object.
`final void`
`notify()`
Wakes up a single thread that is waiting on this object's monitor.
`final void`
`notifyAll()`
Wakes up all threads that are waiting on this object's monitor.
`String`
`toString()`
Returns a string representation of the object.
`final void`
`wait()`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
`final void`
`wait(long timeoutMillis)`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
`final void`
`wait(long timeoutMillis, int nanos)`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

## Constructor Details

### BasicRadioButtonMenuItemUI

public BasicRadioButtonMenuItemUI()
Constructs a `BasicRadioButtonMenuItemUI`.

## Method Details

### createUI

public static ComponentUI createUI(JComponent b)
Returns a new instance of `BasicRadioButtonMenuItemUI`.

Parameters:
  `b` - a component
Returns:
  a new instance of `BasicRadioButtonMenuItemUI`

### processMouseEvent

public void processMouseEvent(JMenuItem item, MouseEvent e, MenuElement[] path, MenuSelectionManager manager)
Invoked when mouse event occurs.

Parameters:
  `item` - a menu item
  `e` - a mouse event
  `path` - an array of `MenuElement`
  `manager` - an instance of `MenuSelectionManager`