Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS | NEXT CLASS FRAMES  | NO FRAMES
SUMMARY:  INNER | FIELD | CONSTR | METHOD DETAIL:  FIELD | CONSTR | METHOD

Class gui.StackLayout

java.lang.Object
  |
  +--gui.StackLayout

public class StackLayout
extends java.lang.Object
implements java.awt.LayoutManager
StackLayout is a LayoutManager that arranges components in a vertical (or horizontal) strip aligning them at right, left or centered, and/or filling them to take up any extra vertical or horizontal space. Arrangement tags are provided by using the add(tag,component) form to add components to the container. The tag consists of one or more of the following, with the two forms applying to horizontal or vertical dimension.
Positioning:
"Center"                : centered horizontally & vertically (the default)
"Left"    or "Top"      : pushed at the left|top edge.
"Right"   or "Bottom"   : pushed against the right|top edge
Sizing:
"Wide"    or "Tall"     : filled to use available space.
"Wide*#"  or "Tall*#"   : filled but weighted by the number #.
"Fill" (or "Fill*#")    : filled in both directions.
"Width=#" or "Height=#" : given explicit width|height
Margins:
"Flush"                 : margins are not added around this component.
By default, a component is centered in both directions. The available space along the orientation is divided between the filled components. A common idiom is to build a complicated panel out of, say, a vertical stack of horizontal stacks (both using StackLayout). In that case, it would usually be good to add the horizontal panels using the tag "Wide Flush", so that spacing comes out evenly.

Much of what can be done with GridBagLayout can be achieved by combining a set of subpanels using StackLayout, but typically more concisely. On the other hand, with StackLayout there is less compile time checking of the layout.


Field Summary
static int HORIZONTAL
          The orientation constant for horizontal layouts.
static int VERTICAL
          The orientation constant for vertical layouts.
 
Constructor Summary
StackLayout()
          Create a horizontal StackLayout.
StackLayout(int orientation)
          Create a StackLayout with the given orientation.
StackLayout(int orientation, int margin)
          Create a StackLayout with the given orientation and space between components.
 
Method Summary
void addLayoutComponent(java.lang.String tag, java.awt.Component comp)
          Add the specified component to the layout, parsing the layout tag.
void layoutContainer(java.awt.Container parent)
          Lays out the specified container.
java.awt.Dimension minimumLayoutSize(java.awt.Container parent)
          Calculate the minimum size dimensions for the specififed container.
java.awt.Dimension preferredLayoutSize(java.awt.Container parent)
          Calculate the preferred size dimensions for the specififed container.
void removeLayoutComponent(java.awt.Component comp)
          Remove the specified component from the layout.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notifyAll, notify, toString, wait, wait, wait
 

Field Detail

HORIZONTAL

public static final int HORIZONTAL
The orientation constant for horizontal layouts.

VERTICAL

public static final int VERTICAL
The orientation constant for vertical layouts.
Constructor Detail

StackLayout

public StackLayout()
Create a horizontal StackLayout.

StackLayout

public StackLayout(int orientation)
Create a StackLayout with the given orientation.

StackLayout

public StackLayout(int orientation,
                   int margin)
Create a StackLayout with the given orientation and space between components.
Method Detail

addLayoutComponent

public void addLayoutComponent(java.lang.String tag,
                               java.awt.Component comp)
Add the specified component to the layout, parsing the layout tag.
Specified by:
addLayoutComponent(java.lang.String, java.awt.Component) in interface java.awt.LayoutManager

removeLayoutComponent

public void removeLayoutComponent(java.awt.Component comp)
Remove the specified component from the layout.
Specified by:
removeLayoutComponent(java.awt.Component) in interface java.awt.LayoutManager

minimumLayoutSize

public java.awt.Dimension minimumLayoutSize(java.awt.Container parent)
Calculate the minimum size dimensions for the specififed container.
Specified by:
minimumLayoutSize(java.awt.Container) in interface java.awt.LayoutManager

preferredLayoutSize

public java.awt.Dimension preferredLayoutSize(java.awt.Container parent)
Calculate the preferred size dimensions for the specififed container.
Specified by:
preferredLayoutSize(java.awt.Container) in interface java.awt.LayoutManager

layoutContainer

public void layoutContainer(java.awt.Container parent)
Lays out the specified container.
Specified by:
layoutContainer(java.awt.Container) in interface java.awt.LayoutManager

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS | NEXT CLASS FRAMES  | NO FRAMES
SUMMARY:  INNER | FIELD | CONSTR | METHOD DETAIL:  FIELD | CONSTR | METHOD