com.nwalsh.saxon

Class ColumnUpdateEmitter


public class ColumnUpdateEmitter
extends CopyEmitter

Saxon extension to scan the column widths in a result tree fragment.

$Id: ColumnUpdateEmitter.java 5907 2006-04-27 08:26:47Z xmldoc $

Copyright (C) 2000 Norman Walsh.

This class provides a Saxon 6.* implementation to scan the column widths in a result tree fragment.

The general design is this: the stylesheets construct a result tree fragment for some colgroup environment. That result tree fragment is "replayed" through the ColumnUpdateEmitter; the ColumnUpdateEmitter watches the cols go by and extracts the column widths that it sees. These widths are then made available.

Change Log:

Field Summary

protected static String
foURI
The FO namespace name.
protected NamePool
namePool
The namePool.
protected int
numColumns
The number of columns seen.
protected String[]
width

Fields inherited from class com.nwalsh.saxon.CopyEmitter

namePool, rtf, rtfEmitter

Constructor Summary

ColumnUpdateEmitter(Controller controller, NamePool namePool, width[] )
Construct a new ColumnUpdateEmitter.

Method Summary

void
startElement(int nameCode, org.xml.sax.Attributes attributes, int[] namespaces, int nscount)
Examine for column info.

Methods inherited from class com.nwalsh.saxon.CopyEmitter

characters, comment, endDocument, endElement, getResultTreeFragment, processingInstruction, setDocumentLocator, setEscaping, setNamePool, setUnparsedEntity, setWriter, startDocument, startElement

Field Details

foURI

protected static String foURI
The FO namespace name.

namePool

protected NamePool namePool
The namePool.

Copied from the caller, it should be the runtime name pool.


numColumns

protected int numColumns
The number of columns seen.

width

protected String[] width

Constructor Details

ColumnUpdateEmitter

public ColumnUpdateEmitter(Controller controller,
                           NamePool namePool,
                           width[] )
Construct a new ColumnUpdateEmitter.

Method Details

startElement

public void startElement(int nameCode,
                         org.xml.sax.Attributes attributes,
                         int[] namespaces,
                         int nscount)
            throws TransformerException
Examine for column info.
Overrides:
startElement in interface CopyEmitter