Class SpaceSpecifier

java.lang.Object
org.apache.fop.layoutmgr.SpaceSpecifier
All Implemented Interfaces:
Cloneable

public class SpaceSpecifier extends 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 Details

    • SpaceSpecifier

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

    • clone

      public Object clone()
      Overrides:
      clone in class Object
    • clear

      public void clear()
      Clear all space specifiers
    • hasSpaces

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

      public void addSpace(SpaceVal space)
      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.
      Parameters:
      space - the space to add.
    • resolve

      public MinOptMax resolve(boolean endsReferenceArea)
      Resolve the current sequence of space-specifiers, accounting for forcing values.
      Parameters:
      endsReferenceArea - whether 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()
      Overrides:
      toString in class Object