|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jfree.report.layout.AbstractBandLayoutManager
org.jfree.report.layout.StaticLayoutManager
An implementation of the BandLayoutManager interface.
Rule: Bands can have minimum, max and pref size defined. These values are hints for the layout container, no restrictions. If min and pref are '0', they are ignored. MaxSize is never ignored.
Elements that have the "dynamic" flag set, are checked for their content-bounds. This operation is expensive, so this is only done if really needed. The dynamic flag will influence the height of an element, a valid width must be already set.
Invisible elements within the layouted band are not evaluated. This layout manager will ignore invisible child bands and -elements.
Note to everybody who tries to understand this class: This class is full of old compatibility code, this class is not designed to be smart, or suitable for complex layouts. The only purpose of this class is to maintain backward compatiblity with older releases of JFreeReport.
The use of relative elements (the one's with 100% should be considered carefully, as these elements are not fully predictable).
Field Summary | |
static StyleKey |
ABSOLUTE_POS
A key for the absolute position of an element. |
Fields inherited from interface org.jfree.report.layout.BandLayoutManager |
LAYOUTMANAGER |
Constructor Summary | |
StaticLayoutManager()
Creates a new layout manager. |
Method Summary | |
protected java.awt.geom.Dimension2D |
computeMinimumSize(Element e,
java.awt.geom.Dimension2D containerBounds,
java.awt.geom.Dimension2D retval,
LayoutSupport support)
Returns the minimum size for an element. |
protected java.awt.geom.Dimension2D |
computePreferredSize(Element e,
java.awt.geom.Dimension2D containerBounds,
java.awt.geom.Dimension2D retval,
LayoutSupport support)
Calculates the preferred size of an element. |
void |
doLayout(Band b,
LayoutSupport support)
Layout a single band with all elements contained within the band. |
void |
invalidateLayout(Band container)
Clears any cached items used by the layout manager. |
protected boolean |
isElementStaticHeight(Element e)
Returns true if the element has a static height, and false otherwise. |
protected boolean |
isElementStaticWidth(Element e)
Returns true if the element has a static width, and false otherwise. |
java.awt.geom.Dimension2D |
minimumLayoutSize(Band b,
java.awt.geom.Dimension2D containerBounds,
LayoutSupport support)
Calculates the minimum layout size for a band. |
java.awt.geom.Dimension2D |
preferredLayoutSize(Band b,
java.awt.geom.Dimension2D containerDims,
LayoutSupport support)
Calculates the preferred layout size for a band. |
Methods inherited from class org.jfree.report.layout.AbstractBandLayoutManager |
align, correctDimension, correctPoint, correctRelativeValue, createLayoutInfoForDynamics, createLayoutInformationForMinimumSize, createLayoutInformationForPreferredSize, getElementContentBounds |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static final StyleKey ABSOLUTE_POS
Constructor Detail |
public StaticLayoutManager()
Method Detail |
protected java.awt.geom.Dimension2D computeMinimumSize(Element e, java.awt.geom.Dimension2D containerBounds, java.awt.geom.Dimension2D retval, LayoutSupport support)
computeMinimumSize
in class AbstractBandLayoutManager
e
- the element.containerBounds
- the bounds of the elements parents.retval
- a dimension object that should be filled, or null,
if a new object should be createdsupport
- the layout support used to compute sizes.
protected java.awt.geom.Dimension2D computePreferredSize(Element e, java.awt.geom.Dimension2D containerBounds, java.awt.geom.Dimension2D retval, LayoutSupport support)
computePreferredSize
in class AbstractBandLayoutManager
e
- the element.containerBounds
- the bounds of the element's container.retval
- a dimension object that should be filled, or null,
if a new object should be createdsupport
- the layout support used to compute sizes.
public java.awt.geom.Dimension2D preferredLayoutSize(Band b, java.awt.geom.Dimension2D containerDims, LayoutSupport support)
The preferred size of non-absolute elements is calculated by using the parents dimensions supplied in containerDims. Elements with a width or height of 100% will consume all available space of the parent.
b
- the band.containerDims
- the maximum size the band should use for that container.support
- the layout support used to compute sizes.
public java.awt.geom.Dimension2D minimumLayoutSize(Band b, java.awt.geom.Dimension2D containerBounds, LayoutSupport support)
b
- the band.containerBounds
- the bounds of the bands parents.support
- the layout support used to compute sizes.
public void doLayout(Band b, LayoutSupport support)
The band has its BOUNDS
already set and all elements are laid out
within these bounds. The band's properties will not be changed during the layouting.
This layout manager requires that all direct child elements have the ABSOLUTE_POS
and MINIMUM_SIZE
properties set to valid values.
b
- the band to lay out.support
- the layout support used to compute sizes.
java.lang.IllegalStateException
- if the bands has no bounds set.protected boolean isElementStaticWidth(Element e)
true
if the element has a static width, and false
otherwise.
isElementStaticWidth
in class AbstractBandLayoutManager
e
- the element.
true
or false.protected boolean isElementStaticHeight(Element e)
isElementStaticHeight
in class AbstractBandLayoutManager
e
- the element.
public void invalidateLayout(Band container)
container
- the container band.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |