Class SimplePageMaster

java.lang.Object
org.apache.fop.fo.FONode
org.apache.fop.fo.FObj
org.apache.fop.fo.pagination.SimplePageMaster
All Implemented Interfaces:
Cloneable, Constants

public class SimplePageMaster extends FObj
Class modelling the fo:simple-page-master object. This creates a simple page from the specified regions and attributes.
  • Constructor Details

    • SimplePageMaster

      public SimplePageMaster(FONode parent)
      Base constructor
      Parameters:
      parent - FONode that is the parent of this object
  • Method Details

    • bind

      public void bind(PropertyList pList) throws FOPException
      Bind property values from the property list to the FO node. Must be overridden in all FObj subclasses that have properties applying to it.
      Overrides:
      bind in class FObj
      Parameters:
      pList - the PropertyList where the properties can be found.
      Throws:
      FOPException - if there is a problem binding the values
    • startOfNode

      public void startOfNode() throws FOPException
      Called after processNode() is called. Subclasses can do additional processing.
      Overrides:
      startOfNode in class FObj
      Throws:
      FOPException - FOP Exception
    • endOfNode

      public void endOfNode() throws FOPException
      Primarily used for making final content model validation checks and/or informing the FOEventHandler that the end of this FO has been reached. The default implementation simply calls FONode.finalizeNode(), without sending any event to the FOEventHandler.

      Note: the recommended way to override this method in subclasses is

      super.endOfNode(); // invoke finalizeNode()

      getFOEventHandler().endXXX(); // send endOfNode() notification

      Overrides:
      endOfNode in class FObj
      Throws:
      FOPException - FOP Exception
    • validateChildNode

      protected void validateChildNode(Locator loc, String nsURI, String localName) throws ValidationException
      Checks to make sure, during SAX processing of input document, that the incoming node is valid for this (parent) node (e.g., checking to see that fo:table is not an immediate child of fo:root) called from FOTreeBuilder.startElement(String, String, String, Attributes) before constructing the child FObj.
      XSL Content Model: (region-body,region-before?,region-after?,region-start?,region-end?)
      Overrides:
      validateChildNode in class FONode
      Parameters:
      loc - location in the FO source file
      nsURI - namespace of incoming node
      localName - name of the incoming node (without namespace prefix)
      Throws:
      ValidationException - if incoming node not valid for parent
    • generatesReferenceAreas

      public boolean generatesReferenceAreas()
      Check if this formatting object generates reference areas.
      Overrides:
      generatesReferenceAreas in class FObj
      Returns:
      true if generates reference areas TODO see if needed
    • addChildNode

      protected void addChildNode(FONode child) throws FOPException
      Adds a node as a child of this node. The default implementation of this method just ignores any child node being added.
      Overrides:
      addChildNode in class FObj
      Parameters:
      child - child node to be added to the childNodes of this node
      Throws:
      FOPException - if there's a problem during processing
    • addRegion

      protected void addRegion(Region region)
      Adds a region to this simple-page-master.
      Parameters:
      region - region to add
    • getPageWidthContext

      protected final PercentBaseContext getPageWidthContext(int lengthBase)
      Gets the context for the width of the page-reference-area, taking into account the reference-orientation.
      Parameters:
      lengthBase - the lengthBase to use to resolve percentages
      Returns:
      context for the width of the page-reference-area
    • getPageHeightContext

      protected final PercentBaseContext getPageHeightContext(int lengthBase)
      Gets the context for the height of the page-reference-area, taking into account the reference-orientation.
      Parameters:
      lengthBase - the lengthBase to use to resolve percentages
      Returns:
      the context for the height of the page-reference-area
    • getRegion

      public Region getRegion(int regionId)
      Returns the region for a given region class.
      Parameters:
      regionId - Constants ID of the FO representing the region
      Returns:
      the region, null if it doesn't exist
    • getRegions

      public Map<String,Region> getRegions()
      Returns a Map of regions associated with this simple-page-master
      Returns:
      the regions
    • regionNameExists

      protected boolean regionNameExists(String regionName)
      Indicates if a region with a given name exists in this simple-page-master.
      Parameters:
      regionName - name of the region to lookup
      Returns:
      True if a region with this name exists
    • getCommonMarginBlock

      public CommonMarginBlock getCommonMarginBlock()
      Returns:
      the Common Margin Properties-Block.
    • getMasterName

      public String getMasterName()
      Returns:
      "master-name" FO trait.
    • getPageWidth

      public Length getPageWidth()
      Returns:
      the "page-width" FO trait.
    • getPageHeight

      public Length getPageHeight()
      Returns:
      the "page-height" FO trait.
    • getReferenceOrientation

      public int getReferenceOrientation()
      Returns:
      the "reference-orientation" FO trait.
    • getWritingMode

      public WritingMode getWritingMode()
      Returns:
      the "writing-mode" FO trait.
    • getLocalName

      public String getLocalName()
      Returns the local name (i.e. without namespace prefix) of the node
      Specified by:
      getLocalName in class FONode
      Returns:
      the local name of this node
    • getNameId

      public int getNameId()
      Returns the Constants class integer value of this node
      Overrides:
      getNameId in class FONode
      Returns:
      Constants.FO_SIMPLE_PAGE_MASTER