Module java.desktop
Package javax.swing.plaf.basic

## Class DefaultMenuLayout

- java.lang.Object
- - javax.swing.BoxLayout
  - - javax.swing.plaf.basic.DefaultMenuLayout

All Implemented Interfaces:
  LayoutManager, LayoutManager2, Serializable, UIResource

    public class DefaultMenuLayout
    extends BoxLayout
    implements UIResource

The default layout manager for Popup menus and menubars. This class is an extension of BoxLayout which adds the UIResource tag so that pluggable L&Fs can distinguish it from user-installed layout managers on menus.

### Field Summary

### Fields inherited from class javax.swing.BoxLayout

`LINE_AXIS, PAGE_AXIS, X_AXIS, Y_AXIS`

### Constructor Summary

Constructors
Constructor and Description
`DefaultMenuLayout(Container target, int axis)` Constructs a new instance of `DefaultMenuLayout`.

### Method Summary

All Methods Instance Methods Concrete Methods
`Dimension` `preferredLayoutSize(Container target)` Returns the preferred dimensions for this layout, given the components in the specified target container.

### Methods inherited from class javax.swing.BoxLayout

`addLayoutComponent, addLayoutComponent, getAxis, getLayoutAlignmentX, getLayoutAlignmentY, getTarget, invalidateLayout, layoutContainer, maximumLayoutSize, minimumLayoutSize, removeLayoutComponent`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### DefaultMenuLayout

    public DefaultMenuLayout(Container target,
                             int axis)

Constructs a new instance of `DefaultMenuLayout`.

Parameters:
  `target` - the container that needs to be laid out
  `axis` - the axis to lay out components along. Can be one of: `BoxLayout.X_AXIS`, `BoxLayout.Y_AXIS`, `BoxLayout.LINE_AXIS` or `BoxLayout.PAGE_AXIS`

### Method Detail

#### preferredLayoutSize

    public Dimension preferredLayoutSize(Container target)

Description copied from class: `BoxLayout`
Returns the preferred dimensions for this layout, given the components in the specified target container.

Specified by:
  `preferredLayoutSize` in interface `LayoutManager`
Overrides:
  `preferredLayoutSize` in class `BoxLayout`
Parameters:
  `target` - the container that needs to be laid out
Returns:
  the dimensions >= 0 && <= Integer.MAX_VALUE
See Also:
  `Container`, `BoxLayout.minimumLayoutSize(java.awt.Container)`, `BoxLayout.maximumLayoutSize(java.awt.Container)`