- java.lang.Object
-
- javax.swing.plaf.ComponentUI
-
- javax.swing.plaf.ButtonUI
-
- javax.swing.plaf.MenuItemUI
-
- javax.swing.plaf.basic.BasicMenuItemUI
-
- javax.swing.plaf.basic.BasicMenuUI
-
- Direct Known Subclasses:
- SynthMenuUI
public class BasicMenuUI extends BasicMenuItemUI
A default L&F implementation of MenuUI. This implementation is a "combined" view/controller.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class and Description class
BasicMenuUI.ChangeHandler
As of Java 2 platform 1.4, this previously undocumented class is now obsolete.protected class
BasicMenuUI.MouseInputHandler
Instantiated and used by a menu item to handle the current menu selection from mouse events.
-
Field Summary
Fields Modifier and Type Field and Description protected ChangeListener
changeListener
protected MenuListener
menuListener
-
Fields inherited from class javax.swing.plaf.basic.BasicMenuItemUI
acceleratorDelimiter, acceleratorFont, acceleratorForeground, acceleratorSelectionForeground, arrowIcon, checkIcon, defaultTextIconGap, disabledForeground, menuDragMouseListener, menuItem, menuKeyListener, mouseInputListener, oldBorderPainted, propertyChangeListener, selectionBackground, selectionForeground
-
-
Constructor Summary
Constructors Constructor and Description BasicMenuUI()
-
Method Summary
Methods Modifier and Type Method and Description protected ChangeListener
createChangeListener(JComponent c)
protected MenuDragMouseListener
createMenuDragMouseListener(JComponent c)
protected MenuKeyListener
createMenuKeyListener(JComponent c)
protected MenuListener
createMenuListener(JComponent c)
protected MouseInputListener
createMouseInputListener(JComponent c)
protected PropertyChangeListener
createPropertyChangeListener(JComponent c)
Creates aPropertyChangeListener
which will be added to the menu item.static ComponentUI
createUI(JComponent x)
Dimension
getMaximumSize(JComponent c)
Returns the specified component's maximum size appropriate for the look and feel.protected String
getPropertyPrefix()
protected void
installDefaults()
protected void
installKeyboardActions()
protected void
installListeners()
protected void
setupPostTimer(JMenu menu)
protected void
uninstallDefaults()
protected void
uninstallKeyboardActions()
protected void
uninstallListeners()
-
Methods inherited from class javax.swing.plaf.basic.BasicMenuItemUI
doClick, getMinimumSize, getPath, getPreferredMenuItemSize, getPreferredSize, installComponents, installUI, paint, paintBackground, paintMenuItem, paintText, uninstallComponents, uninstallUI, update
-
Methods inherited from class javax.swing.plaf.ComponentUI
contains, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior
-
-
-
-
Field Detail
-
changeListener
protected ChangeListener changeListener
-
menuListener
protected MenuListener menuListener
-
-
Method Detail
-
createUI
public static ComponentUI createUI(JComponent x)
-
installDefaults
protected void installDefaults()
- Overrides:
installDefaults
in classBasicMenuItemUI
-
getPropertyPrefix
protected String getPropertyPrefix()
- Overrides:
getPropertyPrefix
in classBasicMenuItemUI
-
installListeners
protected void installListeners()
- Overrides:
installListeners
in classBasicMenuItemUI
-
installKeyboardActions
protected void installKeyboardActions()
- Overrides:
installKeyboardActions
in classBasicMenuItemUI
-
uninstallKeyboardActions
protected void uninstallKeyboardActions()
- Overrides:
uninstallKeyboardActions
in classBasicMenuItemUI
-
createMouseInputListener
protected MouseInputListener createMouseInputListener(JComponent c)
- Overrides:
createMouseInputListener
in classBasicMenuItemUI
-
createMenuListener
protected MenuListener createMenuListener(JComponent c)
-
createChangeListener
protected ChangeListener createChangeListener(JComponent c)
-
createPropertyChangeListener
protected PropertyChangeListener createPropertyChangeListener(JComponent c)
Description copied from class:BasicMenuItemUI
Creates aPropertyChangeListener
which will be added to the menu item. If this method returns null then it will not be added to the menu item.- Overrides:
createPropertyChangeListener
in classBasicMenuItemUI
- Returns:
- an instance of a
PropertyChangeListener
or null
-
uninstallDefaults
protected void uninstallDefaults()
- Overrides:
uninstallDefaults
in classBasicMenuItemUI
-
uninstallListeners
protected void uninstallListeners()
- Overrides:
uninstallListeners
in classBasicMenuItemUI
-
createMenuDragMouseListener
protected MenuDragMouseListener createMenuDragMouseListener(JComponent c)
- Overrides:
createMenuDragMouseListener
in classBasicMenuItemUI
-
createMenuKeyListener
protected MenuKeyListener createMenuKeyListener(JComponent c)
- Overrides:
createMenuKeyListener
in classBasicMenuItemUI
-
getMaximumSize
public Dimension getMaximumSize(JComponent c)
Description copied from class:ComponentUI
Returns the specified component's maximum size appropriate for the look and feel. Ifnull
is returned, the maximum size will be calculated by the component's layout manager instead (this is the preferred approach for any component with a specific layout manager installed). The default implementation of this method invokesgetPreferredSize
and returns that value.- Overrides:
getMaximumSize
in classBasicMenuItemUI
- Parameters:
c
- the component whose maximum size is being queried; this argument is often ignored, but might be used if the UI object is stateless and shared by multiple components- Returns:
- a
Dimension
object ornull
- See Also:
JComponent.getMaximumSize()
,LayoutManager2.maximumLayoutSize(java.awt.Container)
-
setupPostTimer
protected void setupPostTimer(JMenu menu)
-
-
Document created the 11/06/2005, last modified the 04/03/2020
Source of the printed document:https://www.gaudry.be/en/java-api-rf-javax/swing/plaf/basic/basicmenuui.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.