org.apache.fop.layoutmgr

Class SpaceSpecifier

Implemented Interfaces:
Cloneable

public class SpaceSpecifier
extends java.lang.Object
implements Cloneable

Accumulate a sequence of space-specifiers (XSL space type) on areas with a stacking constraint. Provide a way to resolve these into a single MinOptMax value.

Constructor Summary

SpaceSpecifier(boolean startsReferenceArea)
Creates a new SpaceSpecifier.

Method Summary

void
addSpace(SpaceVal moreSpace)
Add a new space to the sequence.
void
clear()
Clear all space specifiers
Object
clone()
boolean
hasSpaces()
Indicates whether any space-specifiers have been added.
MinOptMax
resolve(boolean endsReferenceArea)
Resolve the current sequence of space-specifiers, accounting for forcing values.
String
toString()

Constructor Details

SpaceSpecifier

public SpaceSpecifier(boolean startsReferenceArea)
Creates a new SpaceSpecifier.
Parameters:
startsReferenceArea - true if it starts a new reference area

Method Details

addSpace

public void addSpace(SpaceVal moreSpace)
Add a new space to the sequence. If this sequence starts a reference area, and the added space is conditional, and there are no non-conditional values in the sequence yet, then ignore it. Otherwise add it to the sequence.

clear

public void clear()
Clear all space specifiers

clone

public Object clone()

hasSpaces

public boolean hasSpaces()
Indicates whether any space-specifiers have been added.
Returns:
true if any space-specifiers have been added.

resolve

public MinOptMax resolve(boolean endsReferenceArea)
Resolve the current sequence of space-specifiers, accounting for forcing values.
Parameters:
endsReferenceArea - True if the sequence should be resolved at the trailing edge of reference area.
Returns:
The resolved value as a min/opt/max triple.

toString

public String toString()

Copyright 1999-2008 The Apache Software Foundation. All Rights Reserved.