Package com.formdev.flatlaf.ui
Class FlatMenuItemRenderer
- java.lang.Object
-
- com.formdev.flatlaf.ui.FlatMenuItemRenderer
-
- Direct Known Subclasses:
FlatMenuUI.FlatMenuRenderer
public class FlatMenuItemRenderer extends java.lang.ObjectRenderer for menu items.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classFlatMenuItemRenderer.GraphicsProxyWithTextColorprivate classFlatMenuItemRenderer.MinSizeIcon
-
Field Summary
Fields Modifier and Type Field Description protected intacceleratorArrowGapprotected java.lang.StringacceleratorDelimiterprotected java.awt.FontacceleratorFontprotected javax.swing.IconarrowIconprivate javax.swing.KeyStrokecachedAcceleratorprivate booleancachedAcceleratorLeftToRightprivate java.lang.StringcachedAcceleratorTextprotected java.awt.ColorcheckBackgroundprotected javax.swing.IconcheckIconprotected java.awt.InsetscheckMarginsprivate static charcommandGlyphprivate static charcontrolGlyphprivate booleaniconsSharedprivate static java.lang.StringKEY_MAX_ICONS_WIDTHprivate java.awt.FontmenuFontprotected javax.swing.JMenuItemmenuItemprotected java.awt.DimensionminimumIconSizeprotected intminimumWidthprivate static charoptionGlyphprotected intselectionArcprotected java.awt.InsetsselectionInsetsprivate static charshiftGlyphprotected inttextAcceleratorGapprotected inttextNoAcceleratorGapprotected java.awt.ColorunderlineSelectionBackgroundprotected java.awt.ColorunderlineSelectionCheckBackgroundprotected java.awt.ColorunderlineSelectionColorprotected intunderlineSelectionHeightprotected booleanverticallyAlignText
-
Constructor Summary
Constructors Modifier Constructor Description protectedFlatMenuItemRenderer(javax.swing.JMenuItem menuItem, javax.swing.Icon checkIcon, javax.swing.Icon arrowIcon, java.awt.Font acceleratorFont, java.lang.String acceleratorDelimiter)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.ObjectapplyStyleProperty(java.lang.String key, java.lang.Object value)private static intcenterOffset(int wh1, int wh2)(package private) static voidclearClientProperties(java.awt.Component c)protected java.awt.ColorderiveBackground(java.awt.Color background)private java.lang.StringgetAcceleratorText()private javax.swing.IcongetIconForLayout()private javax.swing.IcongetIconForPainting()protected java.lang.StringgetMacOSModifiersExText(int modifiers, boolean leftToRight)private intgetMaxIconsWidth()Calculates the maximum width of all menu item icons in the popup.protected java.awt.DimensiongetPreferredMenuItemSize()java.util.Map<java.lang.String,java.lang.Class<?>>getStyleableInfos()java.lang.ObjectgetStyleableValue(java.lang.String key)protected java.lang.StringgetTextForAccelerator(javax.swing.KeyStroke accelerator)private java.awt.FontgetTopLevelFont()protected static booleanisArmedOrSelected(javax.swing.JMenuItem menuItem)Returnstrueif either the menu item is armed (mouse over item) or it is aJMenuand selected (shows submenu).static booleanisInVerticalMenuBar(javax.swing.JMenuItem menuItem)protected static booleanisTopLevelMenu(javax.swing.JMenuItem menuItem)protected booleanisUnderlineSelection()private voidlayout(java.awt.Rectangle viewRect, java.awt.Rectangle iconRect, java.awt.Rectangle textRect, java.awt.Rectangle accelRect, java.awt.Rectangle arrowRect, java.awt.Rectangle labelRect)protected voidpaintAccelerator(java.awt.Graphics g, java.awt.Rectangle accelRect, java.lang.String accelText, java.awt.Color foreground, java.awt.Color selectionForeground, java.awt.Color disabledForeground)protected voidpaintArrowIcon(java.awt.Graphics g, java.awt.Rectangle arrowRect, javax.swing.Icon arrowIcon)protected voidpaintBackground(java.awt.Graphics g)protected static voidpaintHTMLText(java.awt.Graphics g, javax.swing.JMenuItem menuItem, java.awt.Rectangle textRect, javax.swing.text.View htmlView, java.awt.Color selectionForeground)protected voidpaintIcon(java.awt.Graphics g, java.awt.Rectangle iconRect, javax.swing.Icon icon, java.awt.Color checkBackground, java.awt.Color selectionBackground)protected static voidpaintIcon(java.awt.Graphics g, javax.swing.JMenuItem menuItem, javax.swing.Icon icon, java.awt.Rectangle iconRect)protected voidpaintMenuItem(java.awt.Graphics g, java.awt.Color selectionBackground, java.awt.Color selectionForeground, java.awt.Color disabledForeground, java.awt.Color acceleratorForeground, java.awt.Color acceleratorSelectionForeground)protected voidpaintSelection(java.awt.Graphics g, java.awt.Color selectionBackground, java.awt.Insets selectionInsets, int selectionArc)protected voidpaintText(java.awt.Graphics g, java.awt.Rectangle textRect, java.lang.String text, java.awt.Color selectionForeground, java.awt.Color disabledForeground)protected static voidpaintText(java.awt.Graphics g, javax.swing.JMenuItem menuItem, java.awt.Rectangle textRect, java.lang.String text, int mnemonicIndex, java.awt.Font font, java.awt.Color foreground, java.awt.Color selectionForeground, java.awt.Color disabledForeground)protected voidpaintUnderlineSelection(java.awt.Graphics g, java.awt.Color underlineSelectionBackground, java.awt.Color underlineSelectionColor, int underlineSelectionHeight)
-
-
-
Field Detail
-
KEY_MAX_ICONS_WIDTH
private static final java.lang.String KEY_MAX_ICONS_WIDTH
- See Also:
- Constant Field Values
-
menuItem
protected final javax.swing.JMenuItem menuItem
-
checkIcon
protected javax.swing.Icon checkIcon
-
arrowIcon
protected javax.swing.Icon arrowIcon
-
acceleratorFont
protected java.awt.Font acceleratorFont
-
acceleratorDelimiter
protected final java.lang.String acceleratorDelimiter
-
verticallyAlignText
protected boolean verticallyAlignText
- Since:
- 2
-
minimumWidth
protected int minimumWidth
-
minimumIconSize
protected java.awt.Dimension minimumIconSize
-
textAcceleratorGap
protected int textAcceleratorGap
-
textNoAcceleratorGap
protected int textNoAcceleratorGap
-
acceleratorArrowGap
protected int acceleratorArrowGap
-
checkBackground
protected java.awt.Color checkBackground
-
checkMargins
protected java.awt.Insets checkMargins
-
selectionInsets
protected java.awt.Insets selectionInsets
- Since:
- 3
-
selectionArc
protected int selectionArc
- Since:
- 3
-
underlineSelectionBackground
protected java.awt.Color underlineSelectionBackground
-
underlineSelectionCheckBackground
protected java.awt.Color underlineSelectionCheckBackground
-
underlineSelectionColor
protected java.awt.Color underlineSelectionColor
-
underlineSelectionHeight
protected int underlineSelectionHeight
-
iconsShared
private boolean iconsShared
-
menuFont
private final java.awt.Font menuFont
-
cachedAccelerator
private javax.swing.KeyStroke cachedAccelerator
-
cachedAcceleratorText
private java.lang.String cachedAcceleratorText
-
cachedAcceleratorLeftToRight
private boolean cachedAcceleratorLeftToRight
-
controlGlyph
private static final char controlGlyph
- See Also:
- Constant Field Values
-
optionGlyph
private static final char optionGlyph
- See Also:
- Constant Field Values
-
shiftGlyph
private static final char shiftGlyph
- See Also:
- Constant Field Values
-
commandGlyph
private static final char commandGlyph
- See Also:
- Constant Field Values
-
-
Method Detail
-
applyStyleProperty
protected java.lang.Object applyStyleProperty(java.lang.String key, java.lang.Object value)- Since:
- 2
-
getStyleableInfos
public java.util.Map<java.lang.String,java.lang.Class<?>> getStyleableInfos()
- Since:
- 2
-
getStyleableValue
public java.lang.Object getStyleableValue(java.lang.String key)
- Since:
- 2.5
-
getPreferredMenuItemSize
protected java.awt.Dimension getPreferredMenuItemSize()
-
layout
private void layout(java.awt.Rectangle viewRect, java.awt.Rectangle iconRect, java.awt.Rectangle textRect, java.awt.Rectangle accelRect, java.awt.Rectangle arrowRect, java.awt.Rectangle labelRect)
-
centerOffset
private static int centerOffset(int wh1, int wh2)
-
paintMenuItem
protected void paintMenuItem(java.awt.Graphics g, java.awt.Color selectionBackground, java.awt.Color selectionForeground, java.awt.Color disabledForeground, java.awt.Color acceleratorForeground, java.awt.Color acceleratorSelectionForeground)
-
paintBackground
protected void paintBackground(java.awt.Graphics g)
- Since:
- 3
-
paintSelection
protected void paintSelection(java.awt.Graphics g, java.awt.Color selectionBackground, java.awt.Insets selectionInsets, int selectionArc)- Since:
- 3
-
paintUnderlineSelection
protected void paintUnderlineSelection(java.awt.Graphics g, java.awt.Color underlineSelectionBackground, java.awt.Color underlineSelectionColor, int underlineSelectionHeight)- Since:
- 3
-
deriveBackground
protected java.awt.Color deriveBackground(java.awt.Color background)
-
paintIcon
protected void paintIcon(java.awt.Graphics g, java.awt.Rectangle iconRect, javax.swing.Icon icon, java.awt.Color checkBackground, java.awt.Color selectionBackground)
-
paintText
protected void paintText(java.awt.Graphics g, java.awt.Rectangle textRect, java.lang.String text, java.awt.Color selectionForeground, java.awt.Color disabledForeground)
-
paintAccelerator
protected void paintAccelerator(java.awt.Graphics g, java.awt.Rectangle accelRect, java.lang.String accelText, java.awt.Color foreground, java.awt.Color selectionForeground, java.awt.Color disabledForeground)
-
paintArrowIcon
protected void paintArrowIcon(java.awt.Graphics g, java.awt.Rectangle arrowRect, javax.swing.Icon arrowIcon)
-
paintIcon
protected static void paintIcon(java.awt.Graphics g, javax.swing.JMenuItem menuItem, javax.swing.Icon icon, java.awt.Rectangle iconRect)
-
paintText
protected static void paintText(java.awt.Graphics g, javax.swing.JMenuItem menuItem, java.awt.Rectangle textRect, java.lang.String text, int mnemonicIndex, java.awt.Font font, java.awt.Color foreground, java.awt.Color selectionForeground, java.awt.Color disabledForeground)
-
paintHTMLText
protected static void paintHTMLText(java.awt.Graphics g, javax.swing.JMenuItem menuItem, java.awt.Rectangle textRect, javax.swing.text.View htmlView, java.awt.Color selectionForeground)
-
isArmedOrSelected
protected static boolean isArmedOrSelected(javax.swing.JMenuItem menuItem)
Returnstrueif either the menu item is armed (mouse over item) or it is aJMenuand selected (shows submenu).
-
isTopLevelMenu
protected static boolean isTopLevelMenu(javax.swing.JMenuItem menuItem)
-
isInVerticalMenuBar
public static boolean isInVerticalMenuBar(javax.swing.JMenuItem menuItem)
- Since:
- 3.5
-
isUnderlineSelection
protected boolean isUnderlineSelection()
-
getTopLevelFont
private java.awt.Font getTopLevelFont()
-
getIconForPainting
private javax.swing.Icon getIconForPainting()
-
getIconForLayout
private javax.swing.Icon getIconForLayout()
-
getAcceleratorText
private java.lang.String getAcceleratorText()
-
getTextForAccelerator
protected java.lang.String getTextForAccelerator(javax.swing.KeyStroke accelerator)
-
getMacOSModifiersExText
protected java.lang.String getMacOSModifiersExText(int modifiers, boolean leftToRight)
-
getMaxIconsWidth
private int getMaxIconsWidth()
Calculates the maximum width of all menu item icons in the popup.
-
clearClientProperties
static void clearClientProperties(java.awt.Component c)
-
-