javax.swing

Class BoxLayout

Implemented Interfaces:
LayoutManager, LayoutManager2, Serializable
Known Direct Subclasses:
DefaultMenuLayout

public class BoxLayout
extends Object
implements LayoutManager2, Serializable

A layout that stacks the children of a container in a Box, either horizontally or vertically.
See Also:
Serialized Form

Field Summary

static int
LINE_AXIS
Specifies that components are laid out in the direction of a line of text.
static int
PAGE_AXIS
Sepcifies that components are laid out in the direction of the line flow.
static int
X_AXIS
Specifies that components are laid out left to right.
static int
Y_AXIS
Specifies that components are laid out top to bottom.

Constructor Summary

BoxLayout(Container container, int way)
Constructs a BoxLayout object.

Method Summary

void
addLayoutComponent(Component child, Object constraints)
Adds a component to the layout.
void
addLayoutComponent(String name, Component component)
Adds a component to the layout.
float
getLayoutAlignmentX(Container parent)
Returns the alignment along the X axis for the container.
float
getLayoutAlignmentY(Container parent)
Returns the alignment along the Y axis for the container.
void
invalidateLayout(Container parent)
Invalidates the layout.
void
layoutContainer(Container parent)
Lays out the specified container using this layout.
Dimension
maximumLayoutSize(Container parent)
Returns the maximum size of the layout gived the components in the given container.
Dimension
minimumLayoutSize(Container parent)
Returns the minimum size of the layout.
Dimension
preferredLayoutSize(Container parent)
Returns the preferred size of the layout.
void
removeLayoutComponent(Component component)
Removes a component from the layout.

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Details

LINE_AXIS

public static final int LINE_AXIS
Specifies that components are laid out in the direction of a line of text.
Field Value:
2

PAGE_AXIS

public static final int PAGE_AXIS
Sepcifies that components are laid out in the direction of the line flow.
Field Value:
3

X_AXIS

public static final int X_AXIS
Specifies that components are laid out left to right.
Field Value:
0

Y_AXIS

public static final int Y_AXIS
Specifies that components are laid out top to bottom.
Field Value:
1

Constructor Details

BoxLayout

public BoxLayout(Container container,
                 int way)
Constructs a BoxLayout object.
Parameters:
container - The container that needs to be laid out.
way - The orientation of the components.

Method Details

addLayoutComponent

public void addLayoutComponent(Component child,
                               Object constraints)
Adds a component to the layout. Not used in BoxLayout
Specified by:
addLayoutComponent in interface LayoutManager2
Parameters:
child - The component to add to the layout.
constraints - The constraints for the component in the layout.

addLayoutComponent

public void addLayoutComponent(String name,
                               Component component)
Adds a component to the layout. Not used in BoxLayout.
Specified by:
addLayoutComponent in interface LayoutManager
Parameters:
name - The name of the component to add.
component - the component to add to the layout.

getLayoutAlignmentX

public float getLayoutAlignmentX(Container parent)
Returns the alignment along the X axis for the container.
Specified by:
getLayoutAlignmentX in interface LayoutManager2
Parameters:
parent - The container that needs to be laid out.
Returns:
The alignment.

getLayoutAlignmentY

public float getLayoutAlignmentY(Container parent)
Returns the alignment along the Y axis for the container.
Specified by:
getLayoutAlignmentY in interface LayoutManager2
Parameters:
parent - The container that needs to be laid out.
Returns:
The alignment.

invalidateLayout

public void invalidateLayout(Container parent)
Invalidates the layout.
Specified by:
invalidateLayout in interface LayoutManager2
Parameters:
parent - The container that needs to be laid out.

layoutContainer

public void layoutContainer(Container parent)
Lays out the specified container using this layout.
Specified by:
layoutContainer in interface LayoutManager
Parameters:
parent - The container that needs to be laid out.

maximumLayoutSize

public Dimension maximumLayoutSize(Container parent)
Returns the maximum size of the layout gived the components in the given container.
Specified by:
maximumLayoutSize in interface LayoutManager2
Parameters:
parent - The container that needs to be laid out.
Returns:
The dimension of the layout.

minimumLayoutSize

public Dimension minimumLayoutSize(Container parent)
Returns the minimum size of the layout.
Specified by:
minimumLayoutSize in interface LayoutManager
Parameters:
parent - The container that needs to be laid out.
Returns:
The dimension of the layout.

preferredLayoutSize

public Dimension preferredLayoutSize(Container parent)
Returns the preferred size of the layout.
Specified by:
preferredLayoutSize in interface LayoutManager
Parameters:
parent - The container that needs to be laid out.
Returns:
The dimension of the layout.

removeLayoutComponent

public void removeLayoutComponent(Component component)
Removes a component from the layout. Not used in BoxLayout.
Specified by:
removeLayoutComponent in interface LayoutManager
Parameters:
component - The component to remove from the layout.

BoxLayout.java -- A layout for swing components. Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.