multivalent.node

Class FixedI

public class FixedI extends INode implements Fixed

Internal node for use with formats that are already layed out, such as scanned page images, PostScript, PDF, TeX DVI. Identical to INode except for formatting. If children in vertical or horizontal sequence, use FixedIVBox or FixedIHBox. Have to format entire page, rather than just enough to fill the screen, but this is fine as just processing a page or two or three at a time. Children must all be of type Fixed.

Version: $Revision: 1.5 $ $Date: 2002/06/01 14:24:47 $

Field Summary
protected Rectangleibbox_
Constructor Summary
FixedI(String name, Map<String,Object> attr, INode parent)
Method Summary
voiddump(int level, int maxlevel)
booleanformatNode(int width, int height, Context cx)
Add children with original, absolute fixed coordinates.
static booleanformatNode(INode p, boolean shrinkwrap, int width, int height, Context cx)
Fixed internal nodes need to be able to format: make children relative, and reposition children in reponse to changing dimensions.
RectanglegetIbbox()
voidreformat(Node dirty)

Field Detail

ibbox_

protected Rectangle ibbox_

Constructor Detail

FixedI

public FixedI(String name, Map<String,Object> attr, INode parent)

Method Detail

dump

public void dump(int level, int maxlevel)

formatNode

public boolean formatNode(int width, int height, Context cx)
Add children with original, absolute fixed coordinates. (Doesn't work for XDOC and perhaps others as add children before know coordinates XDOC doesn't know size until get fonts and fonts come at the end--so it has to compute ibboxes itself.)

formatNode

public static boolean formatNode(INode p, boolean shrinkwrap, int width, int height, Context cx)
Fixed internal nodes need to be able to format: make children relative, and reposition children in reponse to changing dimensions. However, generally they inherit from a primary flowed node, and so can't do reposition by inheritance. This is a generally available (public static) method that formats the passed fixed internal node.

Parameters: p Fixed, internal node to format (N.B. fixed not type checked) shrinkwrap if true set FixedI's ibbox to just enclose children, if false accept ibbox as is. Usually true but false for FixedIClip.

getIbbox

public Rectangle getIbbox()

reformat

public void reformat(Node dirty)