net.sf.jasperreports.engine.fill
Class JRFillTextField

java.lang.Object
  extended by net.sf.jasperreports.engine.fill.JRFillElement
      extended by net.sf.jasperreports.engine.fill.JRFillTextElement
          extended by net.sf.jasperreports.engine.fill.JRFillTextField
All Implemented Interfaces:
java.lang.Cloneable, JRFillCloneable, JRAlignment, JRAnchor, JRBoxContainer, JRChild, JRCloneable, JRCommonElement, JRCommonText, JRElement, JRFont, JRHyperlink, JRIdentifiable, JRParagraphContainer, JRPropertiesHolder, JRStyleContainer, JRStyleSetter, JRTextElement, JRTextField, JRVisitable

public class JRFillTextField
extends JRFillTextElement
implements JRTextField

Version:
$Id: JRFillTextField.java 5180 2012-03-29 13:23:12Z teodord $
Author:
Teodor Danciu (teodord@users.sourceforge.net)

Field Summary
 
Fields inherited from class net.sf.jasperreports.engine.fill.JRFillTextElement
lineBox, paragraph
 
Fields inherited from class net.sf.jasperreports.engine.fill.JRFillElement
band, conditionalStylesContainer, currentEvaluation, currentStyle, defaultStyleProvider, delayedEvaluationsMap, dynamicProperties, elementGroup, elementId, expressionEvaluator, filler, initStyle, mergedProperties, originProvider, parent, printWhenGroupChanges, staticProperties, templates
 
Fields inherited from interface net.sf.jasperreports.engine.JRTextElement
PROPERTY_PRINT_KEEP_FULL_TEXT, PROPERTY_SAVE_LINE_BREAKS, PROPERTY_TRUNCATE_AT_CHAR, PROPERTY_TRUNCATE_SUFFIX
 
Fields inherited from interface net.sf.jasperreports.engine.JRFont
DEFAULT_FONT_NAME, DEFAULT_FONT_SIZE, DEFAULT_PDF_EMBEDDED, DEFAULT_PDF_ENCODING, DEFAULT_PDF_FONT_NAME
 
Fields inherited from interface net.sf.jasperreports.engine.JRCommonText
MARKUP_HTML, MARKUP_NONE, MARKUP_RTF, MARKUP_STYLED_TEXT
 
Fields inherited from interface net.sf.jasperreports.engine.JRAnchor
NO_BOOKMARK
 
Constructor Summary
protected JRFillTextField(JRBaseFiller filler, JRTextField textField, JRFillObjectFactory factory)
           
protected JRFillTextField(JRFillTextField textField, JRFillCloneFactory factory)
           
 
Method Summary
protected  boolean canOverflow()
           
protected  void collectDelayedEvaluations()
           
 void collectExpressions(JRExpressionCollector collector)
           
protected  void copy(JRPrintText text)
           
 JRFillCloneable createClone(JRFillCloneFactory factory)
          Creates a working clone of itself.
protected  JRTemplateElement createElementTemplate()
           
protected  void evaluate(byte evaluation)
           
protected  void evaluateText(byte evaluation)
           
protected  void evaluateTextFormat(java.text.Format format, java.lang.Object value)
           
protected  JRPrintElement fill()
           
protected  java.lang.String getAnchorName()
           
 JRExpression getAnchorNameExpression()
          Returns an expression whose value represents the anchor name.
 int getBookmarkLevel()
          Returns the level of the bookmark corresponding to the anchor.
 JRGroup getEvaluationGroup()
          Gets the evaluation group for this text field.
 EvaluationTimeEnum getEvaluationTimeValue()
          Gets the evaluation time for this text field.
 JRExpression getExpression()
          Gets the expression for this field.
protected  java.text.Format getFormat(java.lang.Object value)
           
protected  java.lang.String getHyperlinkAnchor()
           
 JRExpression getHyperlinkAnchorExpression()
          Returns the expression whose value represents the anchor.
protected  java.lang.Integer getHyperlinkPage()
           
 JRExpression getHyperlinkPageExpression()
          Returns an integer representing the page index of the link.
 JRHyperlinkParameter[] getHyperlinkParameters()
          Returns the list of hyperlink parameters.
protected  java.lang.String getHyperlinkReference()
           
 JRExpression getHyperlinkReferenceExpression()
          Returns the expression whose value represents the hyperlink reference.
 byte getHyperlinkTarget()
          Retrieves the hyperlink target for the element.
protected  java.lang.String getHyperlinkTooltip()
           
 JRExpression getHyperlinkTooltipExpression()
          Returns the expression which will generate the hyperlink tooltip.
 byte getHyperlinkType()
          Deprecated. Replaced by getHyperlinkTypeValue().
 HyperlinkTypeEnum getHyperlinkTypeValue()
          Retrieves the hyperlink type for the element.
protected  JRTemplateText getJRTemplateText()
           
 java.lang.String getLinkTarget()
          Returns the hyperlink target name.
 java.lang.String getLinkType()
          Returns the hyperlink type.
 java.lang.String getOwnPattern()
           
 java.lang.String getPattern()
          Gets the pattern used for this text field.
 JRExpression getPatternExpression()
          Gets the pattern expression, in case the patter needs to be dynamic.
protected  java.lang.String getTemplatePattern(java.text.Format format, java.lang.Object value)
           
protected  TextFormat getTextFormat()
           
protected  java.lang.Object getValue()
           
 boolean isBlankWhenNull()
          Indicates whether an empty string will be displayed if the field's expression evaluates to null.
 java.lang.Boolean isOwnBlankWhenNull()
           
 boolean isStretchWithOverflow()
          Specifies whether the text field will stretch vertically if its text does not fit in one line.
protected  boolean prepare(int availableHeight, boolean isOverflow)
           
protected  void resolveElement(JRPrintElement element, byte evaluation)
          Resolves an element.
 void setBlankWhenNull(boolean isBlank)
          Specifies whether an empty string sholuld be displayed if the field's expression evaluates to null.
 void setBlankWhenNull(java.lang.Boolean isBlank)
           
 void setPattern(java.lang.String pattern)
          Sets the pattern used for this text field.
 void setStretchWithOverflow(boolean isStretchWithOverflow)
          Set to true if the text field should stretch vertically if its text does not fit in one line.
 void visit(JRVisitor visitor)
           
 
Methods inherited from class net.sf.jasperreports.engine.fill.JRFillTextElement
chopTextElement, ensureTextMeasurer, getDefaultLineColor, getFont, getFontName, getFontSize, getHorizontalAlignmentValue, getLeadingOffset, getLineBox, getLineBreakOffsets, getLineSpacingFactor, getLineSpacingValue, getMarkup, getMarkupProcessor, getModeValue, getOwnFontName, getOwnFontSize, getOwnHorizontalAlignmentValue, getOwnLineSpacingValue, getOwnMarkup, getOwnPdfEncoding, getOwnPdfFontName, getOwnRotationValue, getOwnVerticalAlignmentValue, getParagraph, getPdfEncoding, getPdfFontName, getRawText, getRotationValue, getRunDirectionValue, getStyledText, getStyledTextAttributes, getText, getTextEnd, getTextHeight, getTextStart, getTextTruncateSuffix, getVerticalAlignmentValue, isBold, isItalic, isOwnBold, isOwnItalic, isOwnPdfEmbedded, isOwnStrikeThrough, isOwnUnderline, isPdfEmbedded, isStrikeThrough, isUnderline, processMarkupText, reset, resetTextChunk, rewind, setBold, setBold, setFontName, setFontSize, setFontSize, setHeight, setHorizontalAlignment, setItalic, setItalic, setLeadingOffset, setLineBreakOffsets, setLineSpacing, setLineSpacingFactor, setMarkup, setPdfEmbedded, setPdfEmbedded, setPdfEncoding, setPdfFontName, setPrintText, setRawText, setRotation, setStrikeThrough, setStrikeThrough, setTextEnd, setTextHeight, setTextStart, setTextTruncateSuffix, setUnderline, setUnderline, setVerticalAlignment, setWidth
 
Methods inherited from class net.sf.jasperreports.engine.fill.JRFillElement
addDependantElement, clone, clone, collectDelayedEvaluations, collectDelayedEvaluations, collectStyleDelayedEvaluations, delayedEvaluate, evaluateExpression, evaluatePrintWhenExpression, evaluateProperties, getBackcolor, getBand, getDefaultStyleProvider, getDependantElements, getElementGroup, getElementOrigin, getElementTemplate, getEvaluatedProperties, getField, getForecolor, getGroupElements, getHeight, getKey, getOwnBackcolor, getOwnForecolor, getOwnModeValue, getParentProperties, getPositionTypeValue, getPrintWhenExpression, getPrintWhenGroupChanges, getPropertiesMap, getPropertyExpressions, getRelativeY, getStretchHeight, getStretchTypeValue, getStyle, getStyleNameReference, getTemplate, getUUID, getVariable, getWidth, getX, getY, hasProperties, initDelayedEvaluationPrint, initDelayedEvaluations, isAlreadyPrinted, isAutoEvaluateNow, isDelayedStyleEvaluation, isEvaluateAuto, isEvaluateNow, isPrintInFirstWholeBand, isPrintRepeatedValues, isPrintWhenDetailOverflows, isPrintWhenExpressionNull, isPrintWhenTrue, isRemoveLineWhenBlank, isReprinted, isToPrint, isValueRepeating, moveDependantElements, performDelayedEvaluation, registerTemplate, resolveElement, setAlreadyPrinted, setBackcolor, setBand, setConditionalStylesContainer, setCurrentEvaluation, setForecolor, setMode, setOriginProvider, setPositionType, setPrintInFirstWholeBand, setPrintRepeatedValues, setPrintWhenDetailOverflows, setPrintWhenExpressionNull, setPrintWhenTrue, setRelativeY, setRemoveLineWhenBlank, setReprinted, setShrinkable, setStretchHeight, setStretchType, setStyle, setStyleNameReference, setToPrint, setValueRepeating, setX, setY, stretchElement, stretchHeightFinal, transferProperties, transferProperties
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface net.sf.jasperreports.engine.JRElement
getElementGroup, getKey, getPositionTypeValue, getPrintWhenExpression, getPrintWhenGroupChanges, getPropertyExpressions, getStretchTypeValue, getX, getY, isPrintInFirstWholeBand, isPrintRepeatedValues, isPrintWhenDetailOverflows, isRemoveLineWhenBlank, setPositionType, setPrintInFirstWholeBand, setPrintRepeatedValues, setPrintWhenDetailOverflows, setRemoveLineWhenBlank, setStretchType, setWidth, setX
 
Methods inherited from interface net.sf.jasperreports.engine.JRChild
clone
 
Methods inherited from interface net.sf.jasperreports.engine.JRCloneable
clone
 
Methods inherited from interface net.sf.jasperreports.engine.JRPropertiesHolder
getParentProperties, getPropertiesMap, hasProperties
 
Methods inherited from interface net.sf.jasperreports.engine.JRAlignment
getHorizontalAlignmentValue, getOwnHorizontalAlignmentValue, getOwnVerticalAlignmentValue, getVerticalAlignmentValue, setHorizontalAlignment, setVerticalAlignment
 
Methods inherited from interface net.sf.jasperreports.engine.JRFont
getFontName, getFontSize, getOwnFontName, getOwnFontSize, getOwnPdfEncoding, getOwnPdfFontName, getPdfEncoding, getPdfFontName, isBold, isItalic, isOwnBold, isOwnItalic, isOwnPdfEmbedded, isOwnStrikeThrough, isOwnUnderline, isPdfEmbedded, isStrikeThrough, isUnderline, setBold, setBold, setFontName, setFontSize, setFontSize, setItalic, setItalic, setPdfEmbedded, setPdfEmbedded, setPdfEncoding, setPdfFontName, setStrikeThrough, setStrikeThrough, setUnderline, setUnderline
 
Methods inherited from interface net.sf.jasperreports.engine.JRCommonText
getFontSize, getLineSpacingValue, getMarkup, getOwnLineSpacingValue, getOwnMarkup, getOwnRotationValue, getRotationValue, setLineSpacing, setMarkup, setRotation
 
Methods inherited from interface net.sf.jasperreports.engine.JRCommonElement
getBackcolor, getForecolor, getHeight, getModeValue, getOwnBackcolor, getOwnForecolor, getOwnModeValue, getWidth, setBackcolor, setForecolor, setMode
 
Methods inherited from interface net.sf.jasperreports.engine.JRIdentifiable
getUUID
 
Methods inherited from interface net.sf.jasperreports.engine.JRBoxContainer
getDefaultLineColor, getLineBox
 
Methods inherited from interface net.sf.jasperreports.engine.JRParagraphContainer
getParagraph
 
Methods inherited from interface net.sf.jasperreports.engine.JRStyleContainer
getDefaultStyleProvider, getStyle, getStyleNameReference
 

Constructor Detail

JRFillTextField

protected JRFillTextField(JRBaseFiller filler,
                          JRTextField textField,
                          JRFillObjectFactory factory)

JRFillTextField

protected JRFillTextField(JRFillTextField textField,
                          JRFillCloneFactory factory)
Method Detail

isStretchWithOverflow

public boolean isStretchWithOverflow()
Description copied from interface: JRTextField
Specifies whether the text field will stretch vertically if its text does not fit in one line.

Specified by:
isStretchWithOverflow in interface JRTextField
Returns:
true if the text field will stretch vertically, false otherwise

setStretchWithOverflow

public void setStretchWithOverflow(boolean isStretchWithOverflow)
Description copied from interface: JRTextField
Set to true if the text field should stretch vertically if its text does not fit in one line.

Specified by:
setStretchWithOverflow in interface JRTextField

getEvaluationTimeValue

public EvaluationTimeEnum getEvaluationTimeValue()
Description copied from interface: JRTextField
Gets the evaluation time for this text field.

Specified by:
getEvaluationTimeValue in interface JRTextField
Overrides:
getEvaluationTimeValue in class JRFillElement
Returns:
one of the evaluation time constants in JRExpression

getTextFormat

protected TextFormat getTextFormat()

getPattern

public java.lang.String getPattern()
Description copied from interface: JRTextField
Gets the pattern used for this text field. The pattern will be used in a SimpleDateFormat for dates and a DecimalFormat for numeric text fields. The pattern format must follow one of these two classes formatting rules, as specified in the JDK API docs.

Specified by:
getPattern in interface JRTextField
Returns:
a string containing the pattern.

getOwnPattern

public java.lang.String getOwnPattern()
Specified by:
getOwnPattern in interface JRTextField

setPattern

public void setPattern(java.lang.String pattern)
Description copied from interface: JRTextField
Sets the pattern used for this text field. The pattern will be used in a SimpleDateFormat for dates and a DecimalFormat for numeric text fields. The pattern format must follow one of these two classes formatting rules, as specified in the JDK API docs. If the pattern is incorrect, the exception thrown by formatter classes will be rethrown by the JasperReports fill engine.

Specified by:
setPattern in interface JRTextField

isBlankWhenNull

public boolean isBlankWhenNull()
Description copied from interface: JRTextField
Indicates whether an empty string will be displayed if the field's expression evaluates to null.

Specified by:
isBlankWhenNull in interface JRTextField
Returns:
true if an empty string will be displayed instead of null values, false otherwise

isOwnBlankWhenNull

public java.lang.Boolean isOwnBlankWhenNull()
Specified by:
isOwnBlankWhenNull in interface JRTextField

setBlankWhenNull

public void setBlankWhenNull(boolean isBlank)
Description copied from interface: JRTextField
Specifies whether an empty string sholuld be displayed if the field's expression evaluates to null.

Specified by:
setBlankWhenNull in interface JRTextField
Parameters:
isBlank - true if an empty string will be displayed instead of null values, false otherwise

setBlankWhenNull

public void setBlankWhenNull(java.lang.Boolean isBlank)
Specified by:
setBlankWhenNull in interface JRTextField

getHyperlinkType

public byte getHyperlinkType()
Deprecated. Replaced by getHyperlinkTypeValue().

Specified by:
getHyperlinkType in interface JRHyperlink

getHyperlinkTypeValue

public HyperlinkTypeEnum getHyperlinkTypeValue()
Description copied from interface: JRHyperlink
Retrieves the hyperlink type for the element.

The actual hyperlink type is determined by getLinkType(). This method can is used to determine whether the hyperlink type is one of the built-in types or a custom type. When hyperlink is of custom type, CUSTOM is returned.

Specified by:
getHyperlinkTypeValue in interface JRHyperlink
Returns:
one of the hyperlink type constants
See Also:
JRHyperlink.getLinkType()

getHyperlinkTarget

public byte getHyperlinkTarget()
Description copied from interface: JRHyperlink
Retrieves the hyperlink target for the element.

The actual hyperlink target is determined by getLinkTarget(). This method can is used to determine whether the hyperlink target is one of the built-in target names or a custom one. When hyperlink has a custom target name, HyperlinkTargetEnum.CUSTOM is returned.

Specified by:
getHyperlinkTarget in interface JRHyperlink
Returns:
one of the hyperlink target constants
See Also:
JRHyperlink.getLinkTarget()

getLinkTarget

public java.lang.String getLinkTarget()
Description copied from interface: JRHyperlink
Returns the hyperlink target name.

The type can be one of the built-in names (Self, Blank, Top, Parent), or can be an arbitrary name.

Specified by:
getLinkTarget in interface JRHyperlink
Returns:
the hyperlink target name

getEvaluationGroup

public JRGroup getEvaluationGroup()
Description copied from interface: JRTextField
Gets the evaluation group for this text field. Used only when evaluation time is group.

Specified by:
getEvaluationGroup in interface JRTextField
See Also:
EvaluationTimeEnum.GROUP

getExpression

public JRExpression getExpression()
Description copied from interface: JRTextField
Gets the expression for this field. The result obtained after evaluating this expression will be dispayed as the field text.

Specified by:
getExpression in interface JRTextField

getPatternExpression

public JRExpression getPatternExpression()
Description copied from interface: JRTextField
Gets the pattern expression, in case the patter needs to be dynamic.

Specified by:
getPatternExpression in interface JRTextField
See Also:
JRTextField.getPattern()

getAnchorNameExpression

public JRExpression getAnchorNameExpression()
Description copied from interface: JRAnchor
Returns an expression whose value represents the anchor name.

Specified by:
getAnchorNameExpression in interface JRAnchor

getHyperlinkReferenceExpression

public JRExpression getHyperlinkReferenceExpression()
Description copied from interface: JRHyperlink
Returns the expression whose value represents the hyperlink reference. It is only used when the hyperlink type is reference or anchor

Specified by:
getHyperlinkReferenceExpression in interface JRHyperlink

getHyperlinkAnchorExpression

public JRExpression getHyperlinkAnchorExpression()
Description copied from interface: JRHyperlink
Returns the expression whose value represents the anchor. It is only used when the hyperlink type is anchor.

Specified by:
getHyperlinkAnchorExpression in interface JRHyperlink

getHyperlinkPageExpression

public JRExpression getHyperlinkPageExpression()
Description copied from interface: JRHyperlink
Returns an integer representing the page index of the link. It is only used when the hyperlink type is page. If the expression does not evaluate to an integer, an exception will be thrown.

Specified by:
getHyperlinkPageExpression in interface JRHyperlink

getValue

protected java.lang.Object getValue()

getAnchorName

protected java.lang.String getAnchorName()

getHyperlinkReference

protected java.lang.String getHyperlinkReference()

getHyperlinkAnchor

protected java.lang.String getHyperlinkAnchor()

getHyperlinkPage

protected java.lang.Integer getHyperlinkPage()

getHyperlinkTooltip

protected java.lang.String getHyperlinkTooltip()

getJRTemplateText

protected JRTemplateText getJRTemplateText()

createElementTemplate

protected JRTemplateElement createElementTemplate()
Specified by:
createElementTemplate in class JRFillElement

evaluateTextFormat

protected void evaluateTextFormat(java.text.Format format,
                                  java.lang.Object value)

evaluate

protected void evaluate(byte evaluation)
                 throws JRException
Specified by:
evaluate in class JRFillElement
Throws:
JRException

evaluateText

protected void evaluateText(byte evaluation)
                     throws JRException
Throws:
JRException

prepare

protected boolean prepare(int availableHeight,
                          boolean isOverflow)
                   throws JRException
Overrides:
prepare in class JRFillElement
Throws:
JRException

fill

protected JRPrintElement fill()
                       throws JRException
Specified by:
fill in class JRFillElement
Throws:
JRException

copy

protected void copy(JRPrintText text)

getFormat

protected java.text.Format getFormat(java.lang.Object value)

getTemplatePattern

protected java.lang.String getTemplatePattern(java.text.Format format,
                                              java.lang.Object value)

collectExpressions

public void collectExpressions(JRExpressionCollector collector)
Specified by:
collectExpressions in interface JRElement

visit

public void visit(JRVisitor visitor)
Specified by:
visit in interface JRVisitable

resolveElement

protected void resolveElement(JRPrintElement element,
                              byte evaluation)
                       throws JRException
Description copied from class: JRFillElement
Resolves an element.

Specified by:
resolveElement in class JRFillElement
Parameters:
element - the element
evaluation - the evaluation type
Throws:
JRException

getBookmarkLevel

public int getBookmarkLevel()
Description copied from interface: JRAnchor
Returns the level of the bookmark corresponding to the anchor.

Specified by:
getBookmarkLevel in interface JRAnchor
Returns:
the level of the bookmark corresponding to the anchor (starting from 1) or NO_BOOKMARK if no bookmark should be created for this anchor

createClone

public JRFillCloneable createClone(JRFillCloneFactory factory)
Description copied from interface: JRFillCloneable
Creates a working clone of itself.

Specified by:
createClone in interface JRFillCloneable
Parameters:
factory - the clone factory to use while creating the clone
Returns:
a working clone of itself

collectDelayedEvaluations

protected void collectDelayedEvaluations()
Overrides:
collectDelayedEvaluations in class JRFillElement

getHyperlinkParameters

public JRHyperlinkParameter[] getHyperlinkParameters()
Description copied from interface: JRHyperlink
Returns the list of hyperlink parameters.

The parameters can be used by custom hyperlink types to generate dynamic links.

Specified by:
getHyperlinkParameters in interface JRHyperlink
Returns:
the list of hyperlink parameters

getLinkType

public java.lang.String getLinkType()
Description copied from interface: JRHyperlink
Returns the hyperlink type.

The type can be one of the built-in types (Reference, LocalAnchor, LocalPage, RemoteAnchor, RemotePage), or can be an arbitrary type.

Specified by:
getLinkType in interface JRHyperlink
Returns:
the hyperlink type

getHyperlinkTooltipExpression

public JRExpression getHyperlinkTooltipExpression()
Description copied from interface: JRHyperlink
Returns the expression which will generate the hyperlink tooltip.

Specified by:
getHyperlinkTooltipExpression in interface JRHyperlink
Returns:
the expression which will generate the hyperlink tooltip

canOverflow

protected boolean canOverflow()
Specified by:
canOverflow in class JRFillTextElement


© 2001-2010 Jaspersoft Corporation www.jaspersoft.com