Class MenuUtilities
- java.lang.Object
-
- org.pushingpixels.substance.internal.utils.menu.MenuUtilities
-
public class MenuUtilities extends Object
Menu-related utilities.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
MenuUtilities.MenuLayoutInfo
Layout information for a single menu item.static class
MenuUtilities.MenuLayoutMetrics
Layout metrics for a single popup menu.static class
MenuUtilities.MenuPropertyListener
Listener to track changes in the menu items.
-
Field Summary
Fields Modifier and Type Field Description static String
LAYOUT_INFO
-
Constructor Summary
Constructors Constructor Description MenuUtilities()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static void
cleanPopupLayoutMetrics(JPopupMenu popupMenu)
Cleans the layout metrics of the specified popup menu.static MenuUtilities.MenuLayoutInfo
getMenuLayoutInfo(boolean forPainting, JMenuItem menuItem, Font acceleratorFont, Icon checkIcon, Icon arrowIcon, int defaultTextIconGap)
Returns the layout info for the specified menu item.protected static MenuUtilities.MenuLayoutMetrics
getMetrics(JPopupMenu popupMenu, boolean forPainting)
Returns the layout metrics of the specified popup menu.static MenuUtilities.MenuLayoutMetrics
getPopupLayoutMetrics(JMenuItem menuItem, boolean forPainting)
Returns the layout metrics of the popup menu of the specified menu item.static MenuUtilities.MenuLayoutMetrics
getPopupLayoutMetrics(JPopupMenu popupMenu, boolean forPainting)
static int
getPreferredWidth(JMenuItem menuItem)
Returns the preferred width of the specified menu item.static int
getTextOffset(JComponent menuItem, Component menuItemParent)
Returns the text offset of the specified menu item.static void
paintMenuItem(Graphics g, JMenuItem menuItem, Icon checkIcon, Icon arrowIcon, int defaultTextIconGap)
Paints the specified menu item.
-
-
-
Field Detail
-
LAYOUT_INFO
public static final String LAYOUT_INFO
- See Also:
- Constant Field Values
-
-
Method Detail
-
getMenuLayoutInfo
public static MenuUtilities.MenuLayoutInfo getMenuLayoutInfo(boolean forPainting, JMenuItem menuItem, Font acceleratorFont, Icon checkIcon, Icon arrowIcon, int defaultTextIconGap)
Returns the layout info for the specified menu item.- Parameters:
menuItem
- Menu item.acceleratorFont
- Font for the accelerator text.checkIcon
- Check icon.arrowIcon
- Arrow icon.defaultTextIconGap
- Gap between the icon and the text.- Returns:
- Layout info for the specified menu item.
-
paintMenuItem
public static void paintMenuItem(Graphics g, JMenuItem menuItem, Icon checkIcon, Icon arrowIcon, int defaultTextIconGap)
Paints the specified menu item.- Parameters:
g
- Graphics context.menuItem
- Menu item.checkIcon
- Check icon.arrowIcon
- Arrow icon.defaultTextIconGap
- Gap between the icon and the text.
-
getMetrics
protected static MenuUtilities.MenuLayoutMetrics getMetrics(JPopupMenu popupMenu, boolean forPainting)
Returns the layout metrics of the specified popup menu.- Parameters:
popupMenu
- Popup menu.- Returns:
- Layout metrics of the specified popup menu.
-
getPopupLayoutMetrics
public static MenuUtilities.MenuLayoutMetrics getPopupLayoutMetrics(JMenuItem menuItem, boolean forPainting)
Returns the layout metrics of the popup menu of the specified menu item.- Parameters:
menuItem
- Menu item.- Returns:
- Layout metrics of the popup menu of the specified menu item.
-
getPopupLayoutMetrics
public static MenuUtilities.MenuLayoutMetrics getPopupLayoutMetrics(JPopupMenu popupMenu, boolean forPainting)
-
cleanPopupLayoutMetrics
public static void cleanPopupLayoutMetrics(JPopupMenu popupMenu)
Cleans the layout metrics of the specified popup menu.- Parameters:
popupMenu
- Popup menu.
-
getPreferredWidth
public static int getPreferredWidth(JMenuItem menuItem)
Returns the preferred width of the specified menu item. The preferred width depends on the layout metrics of the entire popup menu of this menu item.- Parameters:
menuItem
- Menu item.- Returns:
- Preferred width of the specified menu item
-
getTextOffset
public static int getTextOffset(JComponent menuItem, Component menuItemParent)
Returns the text offset of the specified menu item.- Parameters:
menuItem
- Menu item.menuItemParent
- Menu item parent.- Returns:
- Text offset of the specified menu item.
-
-