Class TablePart

All Implemented Interfaces:
Cloneable, Constants, ColumnNumberManagerHolder, CommonAccessibilityHolder
Direct Known Subclasses:
TableBody, TableFooter, TableHeader

public abstract class TablePart extends TableCellContainer
An abstract base class modelling a TablePart (i.e. fo:table-header, fo:table-footer and fo:table-body).
  • Field Details

    • tableRowsFound

      protected boolean tableRowsFound
      table rows found
    • tableCellsFound

      protected boolean tableCellsFound
      table cells found
  • Constructor Details

    • TablePart

      public TablePart(FONode parent)
      Create a TablePart instance with the given FONode as parent.
      Parameters:
      parent - FONode that is the parent of the object
  • Method Details

    • clone

      protected Object clone()
      Overrides:
      clone in class FONode
    • 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 TableCellContainer
      Parameters:
      pList - the PropertyList where the properties can be found.
      Throws:
      FOPException - if there is a problem binding the values
    • processNode

      public void processNode(String elementName, Locator locator, Attributes attlist, PropertyList pList) throws FOPException
      Initialize the node with its name, location information, and attributes The attributes must be used immediately as the sax attributes will be altered for the next element.
      Overrides:
      processNode in class TableFObj
      Parameters:
      elementName - element name (e.g., "fo:block")
      locator - Locator object (ignored by default)
      attlist - Collection of attributes passed to us from the parser.
      pList - the property list of the parent node
      Throws:
      FOPException - for errors or inconsistencies in the attributes
    • finalizeNode

      public void finalizeNode() throws FOPException
      Finalize this node. This method can be overridden by subclasses to perform finishing tasks (cleanup, validation checks, ...) without triggering endXXX() events in the FOEventHandler. The method is called by the default FONode.endOfNode() implementation.
      Overrides:
      finalizeNode in class FONode
      Throws:
      FOPException - in case there was an error
    • finishLastRowGroup

      protected void finishLastRowGroup() throws ValidationException
      Finish last row group.
      Throws:
      ValidationException - if content validation 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: marker* (table-row+|table-cell+)
      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
    • 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
    • getRowGroups

      public List getRowGroups()
      Returns:
      list of row groups
    • getCommonBorderPaddingBackground

      public CommonBorderPaddingBackground getCommonBorderPaddingBackground()
      Get the CommonBorderPaddingBackground instance attached to this TableBody.
      Specified by:
      getCommonBorderPaddingBackground in class TableFObj
      Returns:
      the CommonBorderPaddingBackground instance.
    • isFirst

      public boolean isFirst(TableRow obj)
      Parameters:
      obj - table row in question
      Returns:
      true if the given table row is the first row of this body.