javax.swing

Class ViewportLayout

public class ViewportLayout extends Object implements LayoutManager, Serializable

The default layout for {@link JViewport}. The viewport makes its view the same size as itself, but not smaller than its minimum size. If the port extends extends into space past the edge of the view, this layout manager moves the port up or to the left, in view space, by the amount of empty space (keep the lower and right edges lined up).
Constructor Summary
ViewportLayout()
Method Summary
voidaddLayoutComponent(String name, Component c)
The method is not used with this manager.
voidlayoutContainer(Container parent)
Layout the view and viewport to respect the following rules.
DimensionminimumLayoutSize(Container parent)
Get the minimum layout size.
DimensionpreferredLayoutSize(Container parent)
Get the preferred layout size.
voidremoveLayoutComponent(Component c)
The method is not used with this manager.

Constructor Detail

ViewportLayout

public ViewportLayout()

Method Detail

addLayoutComponent

public void addLayoutComponent(String name, Component c)
The method is not used with this manager.

layoutContainer

public void layoutContainer(Container parent)
Layout the view and viewport to respect the following rules. These are not precisely the rules described in sun's javadocs, but they are the rules which sun's swing implementation follows, if you watch its behavior:
  1. If the port is smaller than the view, leave the view at its current size.
  2. If the view is smaller than the port, the view is top aligned.
  3. If the view tracks the port size, the view position is always zero and the size equal to the viewport size
  4. In {@link JViewport#setViewSize(Dimension)}, the view size is never set smaller that its minimum size.

See Also: JViewport JViewport JViewport JViewport

minimumLayoutSize

public Dimension minimumLayoutSize(Container parent)
Get the minimum layout size. Normally this method returns the value, returned by the view method {@link Component#getMinimumSize()}. If the view is not set, the zero size is returned.

Parameters: parent the viewport

Returns: the minimum layout size.

preferredLayoutSize

public Dimension preferredLayoutSize(Container parent)
Get the preferred layout size. If the view implements {@link Scrollable}, this method returns {@link Scrollable#getPreferredScrollableViewportSize}. Otherwise, it returns {@link Component#getPreferredSize()}.

Returns: the preferred layout size, as described about.

removeLayoutComponent

public void removeLayoutComponent(Component c)
The method is not used with this manager.