org.universAAL.ui.handler.gui.swing.defaultLookAndFeel.Layout
Class VerticalFlowLayout

Package class diagram package VerticalFlowLayout
java.lang.Object
  extended by org.universAAL.ui.handler.gui.swing.defaultLookAndFeel.Layout.VerticalFlowLayout
All Implemented Interfaces:
LayoutManager, Serializable

public class VerticalFlowLayout
extends Object
implements LayoutManager, Serializable

A flow layout arranges components in a directional flow, much like lines of text in a paragraph. The flow direction is determined by the container's componentOrientation property and may be one of two values:

VerticalFlow layouts are typically used to arrange buttons in a panel. It arranges buttons horizontally until no more buttons fit on the same line. The line alignment is determined by the align property. The possible values are:

For example, the following picture shows an applet using the flow layout manager (its default layout manager) to position three buttons:

Graphic of Layout for Three Buttons

Here is the code for this applet:


 import java.awt.*;
 import java.applet.Applet;

 public class myButtons extends Applet {
     Button button1, button2, button3;
     public void init() {
         button1 = new Button("Ok");
         button2 = new Button("Open");
         button3 = new Button("Close");
         add(button1);
         add(button2);
         add(button3);
     }
 }
 

A flow layout lets each component assume its natural (preferred) size.

Since:
JDK1.0
Version:
1.52, 12/19/03
Author:
Arthur van Hoff, Sami Shaio
See Also:
ComponentOrientation, Serialized Form

Field Summary
static int BOTTOM
          This value indicates that each row of components should be right-justified.
static int CENTER
          This value indicates that each row of components should be centered.
static int LEADING
          This value indicates that each row of components should be justified to the leading edge of the container's orientation, for example, to the left in left-to-right orientations.
static int TOP
          This value indicates that each row of components should be left-justified.
static int TRAILING
          This value indicates that each row of components should be justified to the trailing edge of the container's orientation, for example, to the right in left-to-right orientations.
 
Constructor Summary
VerticalFlowLayout()
          Constructs a new VerticalFlowLayout with a centered alignment and a default 5-unit horizontal and vertical gap.
VerticalFlowLayout(int align)
          Constructs a new VerticalFlowLayout with the specified alignment and a default 5-unit horizontal and vertical gap.
VerticalFlowLayout(int align, int hgap, int vgap)
          Creates a new flow layout manager with the indicated alignment and the indicated horizontal and vertical gaps.
 
Method Summary
 void addLayoutComponent(String name, Component comp)
          Adds the specified component to the layout.
 int getAlignment()
          Gets the alignment for this layout.
 int getHgap()
          Gets the horizontal gap between components and between the components and the borders of the Container
 int getVgap()
          Gets the vertical gap between components and between the components and the borders of the Container.
 boolean isMaximizeOtherDimension()
           
 void layoutContainer(Container target)
          Lays out the container.
 Dimension minimumLayoutSize(Container target)
          Returns the minimum dimensions needed to layout the visible components contained in the specified target container.
 Dimension preferredLayoutSize(Container target)
          Returns the preferred dimensions for this layout given the visible components in the specified target container.
 void removeLayoutComponent(Component comp)
          Removes the specified component from the layout.
 void setAlignment(int align)
          Sets the alignment for this layout.
 void setHgap(int hgap)
          Sets the horizontal gap between components and between the components and the borders of the Container.
 void setMaximizeOtherDimension(boolean max)
           
 void setVgap(int vgap)
          Sets the vertical gap between components and between the components and the borders of the Container.
 String toString()
          Returns a string representation of this VerticalFlowLayout object and its values.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

TOP

public static final int TOP
This value indicates that each row of components should be left-justified.

See Also:
Constant Field Values

CENTER

public static final int CENTER
This value indicates that each row of components should be centered.

See Also:
Constant Field Values

BOTTOM

public static final int BOTTOM
This value indicates that each row of components should be right-justified.

See Also:
Constant Field Values

LEADING

public static final int LEADING
This value indicates that each row of components should be justified to the leading edge of the container's orientation, for example, to the left in left-to-right orientations.

Since:
1.2 Package-private pending API change approval
See Also:
Component.getComponentOrientation(), ComponentOrientation, Constant Field Values

TRAILING

public static final int TRAILING
This value indicates that each row of components should be justified to the trailing edge of the container's orientation, for example, to the right in left-to-right orientations.

Since:
1.2 Package-private pending API change approval
See Also:
Component.getComponentOrientation(), ComponentOrientation, Constant Field Values
Constructor Detail

VerticalFlowLayout

public VerticalFlowLayout()
Constructs a new VerticalFlowLayout with a centered alignment and a default 5-unit horizontal and vertical gap.


VerticalFlowLayout

public VerticalFlowLayout(int align)
Constructs a new VerticalFlowLayout with the specified alignment and a default 5-unit horizontal and vertical gap. The value of the alignment argument must be one of VerticalFlowLayout.TOP, VerticalFlowLayout.BOTTOM, VerticalFlowLayout.CENTER, VerticalFlowLayout.LEADING, or VerticalFlowLayout.TRAILING.

Parameters:
align - the alignment value

VerticalFlowLayout

public VerticalFlowLayout(int align,
                          int hgap,
                          int vgap)
Creates a new flow layout manager with the indicated alignment and the indicated horizontal and vertical gaps.

The value of the alignment argument must be one of VerticalFlowLayout.TOP, VerticalFlowLayout.BOTTOM, VerticalFlowLayout.CENTER, VerticalFlowLayout.LEADING, or VerticalFlowLayout.TRAILING.

Parameters:
align - the alignment value
hgap - the horizontal gap between components and between the components and the borders of the Container
vgap - the vertical gap between components and between the components and the borders of the Container
Method Detail

setMaximizeOtherDimension

public void setMaximizeOtherDimension(boolean max)

isMaximizeOtherDimension

public boolean isMaximizeOtherDimension()

getAlignment

public int getAlignment()
Gets the alignment for this layout. Possible values are VerticalFlowLayout.TOP, VerticalFlowLayout.BOTTOM, VerticalFlowLayout.CENTER, VerticalFlowLayout.LEADING, or VerticalFlowLayout.TRAILING.

Returns:
the alignment value for this layout
Since:
JDK1.1
See Also:
setAlignment(int)

setAlignment

public void setAlignment(int align)
Sets the alignment for this layout. Possible values are

Parameters:
align - one of the alignment values shown above
Since:
JDK1.1
See Also:
getAlignment()

getHgap

public int getHgap()
Gets the horizontal gap between components and between the components and the borders of the Container

Returns:
the horizontal gap between components and between the components and the borders of the Container
Since:
JDK1.1
See Also:
setHgap(int)

setHgap

public void setHgap(int hgap)
Sets the horizontal gap between components and between the components and the borders of the Container.

Parameters:
hgap - the horizontal gap between components and between the components and the borders of the Container
Since:
JDK1.1
See Also:
getHgap()

getVgap

public int getVgap()
Gets the vertical gap between components and between the components and the borders of the Container.

Returns:
the vertical gap between components and between the components and the borders of the Container
Since:
JDK1.1
See Also:
setVgap(int)

setVgap

public void setVgap(int vgap)
Sets the vertical gap between components and between the components and the borders of the Container.

Parameters:
vgap - the vertical gap between components and between the components and the borders of the Container
Since:
JDK1.1
See Also:
getVgap()

addLayoutComponent

public void addLayoutComponent(String name,
                               Component comp)
Adds the specified component to the layout. Not used by this class.

Specified by:
addLayoutComponent in interface LayoutManager
Parameters:
name - the name of the component
comp - the component to be added

removeLayoutComponent

public void removeLayoutComponent(Component comp)
Removes the specified component from the layout. Not used by this class.

Specified by:
removeLayoutComponent in interface LayoutManager
Parameters:
comp - the component to remove
See Also:
Container.removeAll()

preferredLayoutSize

public Dimension preferredLayoutSize(Container target)
Returns the preferred dimensions for this layout given the visible components in the specified target container.

Specified by:
preferredLayoutSize in interface LayoutManager
Parameters:
target - the container that needs to be laid out
Returns:
the preferred dimensions to lay out the subcomponents of the specified container
See Also:
Container, minimumLayoutSize(java.awt.Container), Container.getPreferredSize()

minimumLayoutSize

public Dimension minimumLayoutSize(Container target)
Returns the minimum dimensions needed to layout the visible components contained in the specified target container.

Specified by:
minimumLayoutSize in interface LayoutManager
Parameters:
target - the container that needs to be laid out
Returns:
the minimum dimensions to lay out the subcomponents of the specified container
See Also:
preferredLayoutSize(java.awt.Container), Container, Container.doLayout()

layoutContainer

public void layoutContainer(Container target)
Lays out the container. This method lets each visible component take its preferred size by reshaping the components in the target container in order to satisfy the alignment of this VerticalFlowLayout object.

Specified by:
layoutContainer in interface LayoutManager
Parameters:
target - the specified component being laid out
See Also:
Container, Container.doLayout()

toString

public String toString()
Returns a string representation of this VerticalFlowLayout object and its values.

Overrides:
toString in class Object
Returns:
a string representation of this layout


Copyright © 2014 universAAL Consortium. All Rights Reserved.