Class FlatMenuItemRenderer

  • Direct Known Subclasses:
    FlatMenuUI.FlatMenuRenderer

    public class FlatMenuItemRenderer
    extends java.lang.Object
    Renderer for menu items.
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected FlatMenuItemRenderer​(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.Object applyStyleProperty​(java.lang.String key, java.lang.Object value)  
      private static int centerOffset​(int wh1, int wh2)  
      (package private) static void clearClientProperties​(java.awt.Component c)  
      protected java.awt.Color deriveBackground​(java.awt.Color background)  
      private java.lang.String getAcceleratorText()  
      private javax.swing.Icon getIconForLayout()  
      private javax.swing.Icon getIconForPainting()  
      protected java.lang.String getMacOSModifiersExText​(int modifiers, boolean leftToRight)  
      private int getMaxIconsWidth()
      Calculates the maximum width of all menu item icons in the popup.
      protected java.awt.Dimension getPreferredMenuItemSize()  
      java.util.Map<java.lang.String,​java.lang.Class<?>> getStyleableInfos()  
      java.lang.Object getStyleableValue​(java.lang.String key)  
      protected java.lang.String getTextForAccelerator​(javax.swing.KeyStroke accelerator)  
      private java.awt.Font getTopLevelFont()  
      protected static boolean isArmedOrSelected​(javax.swing.JMenuItem menuItem)
      Returns true if either the menu item is armed (mouse over item) or it is a JMenu and selected (shows submenu).
      static boolean isInVerticalMenuBar​(javax.swing.JMenuItem menuItem)  
      protected static boolean isTopLevelMenu​(javax.swing.JMenuItem menuItem)  
      protected boolean isUnderlineSelection()  
      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)  
      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)  
      protected void paintArrowIcon​(java.awt.Graphics g, java.awt.Rectangle arrowRect, javax.swing.Icon arrowIcon)  
      protected void paintBackground​(java.awt.Graphics g)  
      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)  
      protected void paintIcon​(java.awt.Graphics g, java.awt.Rectangle iconRect, javax.swing.Icon icon, java.awt.Color checkBackground, java.awt.Color selectionBackground)  
      protected static void paintIcon​(java.awt.Graphics g, javax.swing.JMenuItem menuItem, javax.swing.Icon icon, java.awt.Rectangle iconRect)  
      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)  
      protected void paintSelection​(java.awt.Graphics g, java.awt.Color selectionBackground, java.awt.Insets selectionInsets, int selectionArc)  
      protected void paintText​(java.awt.Graphics g, java.awt.Rectangle textRect, java.lang.String text, java.awt.Color selectionForeground, java.awt.Color disabledForeground)  
      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)  
      protected void paintUnderlineSelection​(java.awt.Graphics g, java.awt.Color underlineSelectionBackground, java.awt.Color underlineSelectionColor, int underlineSelectionHeight)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 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
    • Constructor Detail

      • FlatMenuItemRenderer

        protected FlatMenuItemRenderer​(javax.swing.JMenuItem menuItem,
                                       javax.swing.Icon checkIcon,
                                       javax.swing.Icon arrowIcon,
                                       java.awt.Font acceleratorFont,
                                       java.lang.String acceleratorDelimiter)
    • 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)
        Returns true if either the menu item is armed (mouse over item) or it is a JMenu and 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)