Class Page

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable

    public class Page
    extends AreaTreeObject
    implements java.io.Serializable
    The page. This holds the contents of the page. Each region is added. The unresolved references area added so that if the page is serialized then it will handle the resolving properly after being reloaded. This is serializable so it can be saved to cache to save memory if there are forward references. The page is cloneable so the page master can make copies of the top level page and regions.
    See Also:
    Serialized Form
    • Constructor Detail

      • Page

        public Page()
        Empty constructor
      • Page

        public Page​(SimplePageMaster spm)
        Constructor
        Parameters:
        spm - SimplePageMaster containing the dimensions for this page-reference-area
    • Method Detail

      • fakeNonEmpty

        public void fakeNonEmpty()
        Call this method to force this page to pretend not to be empty.
      • makeRegionViewport

        private static RegionViewport makeRegionViewport​(Region r,
                                                         FODimension reldims,
                                                         CTM pageCTM)
        Creates a RegionViewport Area object for this pagination Region.
        Parameters:
        r - the region the viewport is to be created for
        reldims - relative dimensions
        pageCTM - page coordinate transformation matrix
        Returns:
        the new region viewport
      • setRegionReferencePosition

        private static void setRegionReferencePosition​(RegionReference rr,
                                                       Region r,
                                                       java.awt.geom.Rectangle2D absRegVPRect)
        Set the region reference position within the region viewport. This sets the transform that is used to place the contents of the region reference.
        Parameters:
        rr - the region reference area
        r - the region-xxx formatting object
        absRegVPRect - The region viewport rectangle in "absolute" coordinates where x=distance from left, y=distance from bottom, width=right-left height=top-bottom
      • setRegionViewport

        public void setRegionViewport​(int areaclass,
                                      RegionViewport port)
        Set the region on this page.
        Parameters:
        areaclass - the area class of the region to set
        port - the region viewport to set
      • getRegionViewport

        public RegionViewport getRegionViewport​(int areaClass)
        Get the region from this page.
        Parameters:
        areaClass - the region area class
        Returns:
        the region viewport or null if none
      • isEmpty

        public boolean isEmpty()
        Indicates whether any FOs have been added to the body region
        Returns:
        whether any FOs have been added to the body region
      • clone

        public java.lang.Object clone()
                               throws java.lang.CloneNotSupportedException
        Overrides:
        clone in class AreaTreeObject
        Throws:
        java.lang.CloneNotSupportedException
      • setUnresolvedReferences

        public void setUnresolvedReferences​(java.util.Map<java.lang.String,​java.util.List<Resolvable>> unres)
        Set the unresolved references on this page for serializing.
        Parameters:
        unres - the Map of unresolved objects
      • getUnresolvedReferences

        public java.util.Map<java.lang.String,​java.util.List<Resolvable>> getUnresolvedReferences()
        Get the map unresolved references from this page. This should be called after deserializing to retrieve the map of unresolved references that were serialized.
        Returns:
        the de-serialized HashMap of unresolved objects
      • setWritingModeTraits

        public void setWritingModeTraits​(WritingModeTraitsGetter wmtg)
        Sets the writing mode traits for the region viewports of this page.
        Parameters:
        wmtg - a WM traits getter