org.pentaho.reporting.engine.classic.core.layout.model
Class SpacerRenderNode

java.lang.Object
  extended by org.pentaho.reporting.engine.classic.core.layout.model.RenderNode
      extended by org.pentaho.reporting.engine.classic.core.layout.model.SpacerRenderNode
All Implemented Interfaces:
Cloneable

public final class SpacerRenderNode
extends RenderNode

A spacer reserves space for whitespaces found in the text. When encountered at the beginning or end of lines, it gets removed.

Spacers are always considered discardable, so when encountered alone, they will get pruned.

Author:
Thomas Morgner

Field Summary
 
Fields inherited from class org.pentaho.reporting.engine.classic.core.layout.model.RenderNode
CACHE_CLEAN, CACHE_DEEP_DIRTY, CACHE_DIRTY, HORIZONTAL_AXIS, VERTICAL_AXIS
 
Constructor Summary
SpacerRenderNode()
           
SpacerRenderNode(long width, long height, boolean preserve, int spaceCount)
           
 
Method Summary
 int getNodeType()
           
 int getSpaceCount()
          Returns the number of space-characters that resulted in this spacer-node.
 boolean isDiscardable()
           
 boolean isEmpty()
           
 boolean isIgnorableForRendering()
          If that method returns true, the element will not be used for rendering.
 
Methods inherited from class org.pentaho.reporting.engine.classic.core.layout.model.RenderNode
apply, clone, derive, deriveFrozen, findNodeById, freeze, getAttributes, getCachedAge, getCachedHeight, getCachedParentWidth, getCachedWidth, getCachedX, getCachedY, getCacheState, getChangeTracker, getComputedWidth, getContentRefCount, getEffectiveMarginBottom, getEffectiveMarginTop, getElementType, getHeight, getInstanceId, getLogicalPage, getMajorAxis, getMaximumBoxWidth, getMinimumChunkWidth, getMinorAxis, getName, getNext, getNodeLayoutProperties, getParent, getPrev, getStateKey, getStyleSheet, getVerticalTextAlignment, getWidth, getX, getY, hibernate, isBoxOverflowX, isBoxOverflowY, isBoxVisible, isBoxVisible, isBreakAfter, isCacheValid, isFinishedPaginate, isFinishedTable, isFrozen, isHibernated, isNodeVisible, isNodeVisible, isNodeVisible, isNodeVisible, isOpen, isSizeSpecifiesBorderBox, isVirtualNode, markCacheClean, setCachedAge, setCachedHeight, setCachedParentWidth, setCachedWidth, setCachedX, setCachedY, setFinishedPaginate, setFinishedTable, setHeight, setMaximumBoxWidth, setVirtualNode, setWidth, setX, setY, shift, shiftCached
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SpacerRenderNode

public SpacerRenderNode()

SpacerRenderNode

public SpacerRenderNode(long width,
                        long height,
                        boolean preserve,
                        int spaceCount)
Method Detail

getNodeType

public int getNodeType()
Specified by:
getNodeType in class RenderNode

getSpaceCount

public int getSpaceCount()
Returns the number of space-characters that resulted in this spacer-node. This is a content-creator hint to make sure that the table-exports can create the represented space more easily. A space-count of zero means, that the value is not known. In that case a renderer should apply some font-metrics magic to compute a suitable space count from the known style information.

Returns:
the space count.

isEmpty

public boolean isEmpty()
Overrides:
isEmpty in class RenderNode

isDiscardable

public boolean isDiscardable()
Overrides:
isDiscardable in class RenderNode

isIgnorableForRendering

public boolean isIgnorableForRendering()
If that method returns true, the element will not be used for rendering. For the purpose of computing sizes or performing the layouting (in the validate() step), this element will treated as if it is not there.

If the element reports itself as non-empty, however, it will affect the margin computation.

Overrides:
isIgnorableForRendering in class RenderNode
Returns: