- java.lang.Object
-
- javax.swing.OverlayLayout
-
- All Implemented Interfaces:
LayoutManager
,LayoutManager2
,Serializable
public class OverlayLayout extends Object implements LayoutManager2, Serializable
A layout manager to arrange components over the top of each other. The requested size of the container will be the largest requested size of the children, taking alignment needs into consideration. The alignment is based upon what is needed to properly fit the children in the allocation area. The children will be placed such that their alignment points are all on top of each other.Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeans™ has been added to the
java.beans
package. Please seeXMLEncoder
.- Since:
- 1.2
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description OverlayLayout(Container target)
Constructs a layout manager that performs overlay arrangement of the children.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addLayoutComponent(Component comp, Object constraints)
Adds the specified component to the layout, using the specified constraint object.void
addLayoutComponent(String name, Component comp)
Adds the specified component to the layout.float
getLayoutAlignmentX(Container target)
Returns the alignment along the x axis for the container.float
getLayoutAlignmentY(Container target)
Returns the alignment along the y axis for the container.Container
getTarget()
Returns the container that uses this layout manager.void
invalidateLayout(Container target)
Indicates a child has changed its layout related information, which causes any cached calculations to be flushed.void
layoutContainer(Container target)
Called by the AWT when the specified container needs to be laid out.Dimension
maximumLayoutSize(Container target)
Returns the maximum dimensions needed to lay out the components contained in the specified target container.Dimension
minimumLayoutSize(Container target)
Returns the minimum dimensions needed to lay out the components contained in the specified target container.Dimension
preferredLayoutSize(Container target)
Returns the preferred dimensions for this layout given the components in the specified target container.void
removeLayoutComponent(Component comp)
Removes the specified component from the layout.
-
-
-
Constructor Detail
OverlayLayout
@ConstructorProperties("target") public OverlayLayout(Container target)
Constructs a layout manager that performs overlay arrangement of the children. The layout manager created is dedicated to the given container.- Parameters:
target
- the container to do layout against
-
Method Detail
getTarget
public final Container getTarget()
Returns the container that uses this layout manager.- Returns:
- the container that uses this layout manager
- Since:
- 1.6
invalidateLayout
public void invalidateLayout(Container target)
Indicates a child has changed its layout related information, which causes any cached calculations to be flushed.- Specified by:
invalidateLayout
in interfaceLayoutManager2
- Parameters:
target
- the container
addLayoutComponent
public void addLayoutComponent(String name, Component comp)
Adds the specified component to the layout. Used by this class to know when to invalidate layout.- Specified by:
addLayoutComponent
in interfaceLayoutManager
- Parameters:
name
- the name of the componentcomp
- the component to be added
removeLayoutComponent
public void removeLayoutComponent(Component comp)
Removes the specified component from the layout. Used by this class to know when to invalidate layout.- Specified by:
removeLayoutComponent
in interfaceLayoutManager
- Parameters:
comp
- the component to remove
addLayoutComponent
public void addLayoutComponent(Component comp, Object constraints)
Adds the specified component to the layout, using the specified constraint object. Used by this class to know when to invalidate layout.- Specified by:
addLayoutComponent
in interfaceLayoutManager2
- Parameters:
comp
- the component to be addedconstraints
- where/how the component is added to the layout.
preferredLayoutSize
public Dimension preferredLayoutSize(Container target)
Returns the preferred dimensions for this layout given the components in the specified target container. Recomputes the layout if it has been invalidated. Factors in the current inset setting returned by getInsets().- Specified by:
preferredLayoutSize
in interfaceLayoutManager
- Parameters:
target
- the component which needs to be laid out- Returns:
- a Dimension object containing the preferred dimensions
- See Also:
minimumLayoutSize(java.awt.Container)
minimumLayoutSize
public Dimension minimumLayoutSize(Container target)
Returns the minimum dimensions needed to lay out the components contained in the specified target container. Recomputes the layout if it has been invalidated, and factors in the current inset setting.- Specified by:
minimumLayoutSize
in interfaceLayoutManager
- Parameters:
target
- the component which needs to be laid out- Returns:
- a Dimension object containing the minimum dimensions
- See Also:
preferredLayoutSize(java.awt.Container)
maximumLayoutSize
public Dimension maximumLayoutSize(Container target)
Returns the maximum dimensions needed to lay out the components contained in the specified target container. Recomputes the layout if it has been invalidated, and factors in the inset setting returned bygetInset
.- Specified by:
maximumLayoutSize
in interfaceLayoutManager2
- Parameters:
target
- the component that needs to be laid out- Returns:
-
a
Dimension
object containing the maximum dimensions - See Also:
preferredLayoutSize(java.awt.Container)
getLayoutAlignmentX
public float getLayoutAlignmentX(Container target)
Returns the alignment along the x axis for the container.- Specified by:
getLayoutAlignmentX
in interfaceLayoutManager2
- Parameters:
target
- the container- Returns:
- the alignment >= 0.0f && <= 1.0f
getLayoutAlignmentY
public float getLayoutAlignmentY(Container target)
Returns the alignment along the y axis for the container.- Specified by:
getLayoutAlignmentY
in interfaceLayoutManager2
- Parameters:
target
- the container- Returns:
- the alignment >= 0.0f && <= 1.0f
layoutContainer
public void layoutContainer(Container target)
Called by the AWT when the specified container needs to be laid out.- Specified by:
layoutContainer
in interfaceLayoutManager
- Parameters:
target
- the container to lay out- Throws:
AWTError
- if the target isn't the container specified to the constructor
-