Class SimplePageMaster

  • All Implemented Interfaces:
    java.lang.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 Detail

      • SimplePageMaster

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

      • 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 FONode
        Throws:
        FOPException - if there's a problem during processing
      • validateChildNode

        protected void validateChildNode​(org.xml.sax.Locator loc,
                                         java.lang.String nsURI,
                                         java.lang.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 java.util.Map<java.lang.String,​Region> getRegions()
        Returns a Map of regions associated with this simple-page-master
        Returns:
        the regions
      • regionNameExists

        protected boolean regionNameExists​(java.lang.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 java.lang.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 java.lang.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