Class JRFillTextField
- All Implemented Interfaces:
Cloneable
,DynamicPropertiesHolder
,JRFillCloneable
,JRAnchor
,JRBoxContainer
,JRChild
,JRCloneable
,JRCommonElement
,JRCommonText
,JRElement
,JREvaluation
,JRFont
,JRHyperlink
,JRIdentifiable
,JRParagraphContainer
,JRPropertiesHolder
,JRStyleContainer
,JRStyleSetter
,JRTextAlignment
,JRTextElement
,JRTextField
,JRVisitable
- Author:
- Teodor Danciu (teodord@users.sourceforge.net)
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final org.apache.commons.logging.Log
protected final Map
<Pair<JRStyle, TextFormat>, JRTemplateElement> Fields inherited from class net.sf.jasperreports.engine.fill.JRFillTextElement
EXCEPTION_MESSAGE_KEY_INVALID_START_INDEX, initLineBox, initParagraph, keepAverageCharWidth, lineBox, paragraph, PROPERTY_CONSUME_SPACE_ON_OVERFLOW, PROPERTY_CUT_TEXT_MAX_HEIGHT, PROPERTY_LEGACY_TEXT_MEASURING, PROPERTY_SCALE_FONT_STEP_LIMIT
Fields inherited from class net.sf.jasperreports.engine.fill.JRFillElement
band, conditionalStylesContainer, currentEvaluation, currentStyle, defaultPopulateTemplateStyle, defaultStyleProvider, delayedEvaluationsMap, dynamicProperties, dynamicTransferProperties, elementGroup, EXCEPTION_MESSAGE_KEY_INVALID_BOOKMARK_LEVEL, expressionEvaluator, exprStyle, fillContainerContext, filler, hasDynamicPopulateTemplateStyle, initStyle, mergedProperties, originProvider, parent, printElementOriginator, printWhenGroupChanges, propertyExpressions, providerStyle, staticProperties, staticTransferProperties, styleProviders, templates
Fields inherited from interface net.sf.jasperreports.engine.JRAnchor
NO_BOOKMARK
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.JRElement
PROPERTY_ELEMENT_TEMPLATE_POPULATE_STYLE
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.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.JRTextField
FORMAT_TIMEZONE_SYSTEM, PROPERTY_FORMAT_TIMEZONE, PROPERTY_PATTERN_DATE, PROPERTY_PATTERN_DATETIME, PROPERTY_PATTERN_INTEGER, PROPERTY_PATTERN_NUMBER, PROPERTY_PATTERN_TIME, PROPERTY_SQL_DATE_FORMAT_TIMEZONE, PROPERTY_SQL_TIME_FORMAT_TIMEZONE, PROPERTY_SQL_TIMESTAMP_FORMAT_TIMEZONE
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
JRFillTextField
(JRBaseFiller filler, JRTextField textField, JRFillObjectFactory factory) protected
JRFillTextField
(JRFillTextField textField, JRFillCloneFactory factory) -
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
protected void
void
collectExpressions
(JRExpressionCollector collector) protected void
copy
(JRPrintText text) createClone
(JRFillCloneFactory factory) Creates a working clone of itself.protected JRTemplateElement
protected boolean
protected void
void
evaluate
(byte evaluation) protected void
evaluateText
(byte evaluation) protected void
evaluateTextFormat
(Format format, Object value, TimeZone ownTimeZone) fill()
protected String
Returns an expression whose value represents the anchor name.int
Returns the level of the bookmark corresponding to the anchor.Returns an expression whose value represents the bookmark level (starting from 1) corresponding to this anchor.protected String
getDatePattern
(Object value) Gets the evaluation group for this text field.Gets the evaluation time for this text field.Gets the expression for this field.protected Format
protected String
Returns the expression whose value represents the anchor.protected Integer
Returns an integer representing the page index of the link.Returns the list of hyperlink parameters.protected String
Returns the expression whose value represents the hyperlink reference.Retrieves the hyperlink target for the element.protected String
Returns the expression which will generate the hyperlink tooltip.Retrieves the hyperlink type for the element.Returns the expression that is evaluated in order to decide if the hyperlink should be displayed.protected JRTemplateText
Returns the hyperlink target name.Returns the hyperlink type.protected String
getLocalizedProperty
(String property) protected String
getNumberPattern
(Object value) Gets the pattern used for this text field.Gets the pattern expression, in case the patter needs to be dynamic.protected TimeZone
getPatternTimeZone
(String property) protected JRTemplateElement
getTemplate
(JRStyle style) protected String
getTemplatePattern
(Format format, Object value) Gets the text adjust type.protected TextFormat
protected TimeZone
protected Object
getValue()
boolean
Indicates whether an empty string will be displayed if the field's expression evaluates tonull
.boolean
prepare
(int availableHeight, boolean isOverflow, boolean isOverflowAllowed) protected void
registerTemplate
(JRStyle style, JRTemplateElement template) protected void
resolveElement
(JRPrintElement element, byte evaluation) Resolves an element.protected boolean
void
setBlankWhenNull
(Boolean isBlank) Specifies whether an empty string should be displayed if the field's expression evaluates tonull
.void
setPattern
(String pattern) Sets the pattern used for this text field.protected void
setPrintText
(JRPrintText printText, String text) void
setTextAdjust
(TextAdjustEnum textAdjust) Sets the text adjust type.protected TextFieldEvaluatedEvent
protected TimeZone
toFormatTimeZone
(String timezoneId) void
Methods inherited from class net.sf.jasperreports.engine.fill.JRFillTextElement
chopTextElement, cutTextMaxHeight, ensureTextMeasurer, evaluateStyle, getAverageCharWidth, getDefaultLineColor, getFontName, getFontSize, getHorizontalTextAlign, getLeadingOffset, getLineBox, getLineBreakOffsets, getLineSpacingFactor, getMarkup, getMode, getOwnFontName, getOwnFontSize, getOwnHorizontalTextAlign, getOwnMarkup, getOwnPdfEncoding, getOwnPdfFontName, getOwnRotation, getOwnVerticalTextAlign, getParagraph, getPdfEncoding, getPdfFontName, getPrintLineBox, getPrintParagraph, getProcessedStyledText, getRawText, getRotation, getRunDirection, getStyledText, getStyledTextAttributes, getTextEnd, getTextHeight, getTextStart, getTextString, getTextTruncateSuffix, getTextWidth, getVerticalTextAlign, isBold, isConsumeSpaceOnOverflow, isCutParagraph, isItalic, isOwnBold, isOwnItalic, isOwnPdfEmbedded, isOwnStrikeThrough, isOwnUnderline, isPdfEmbedded, isStrikeThrough, isUnderline, keepFullText, processMarkupText, reset, resetTextChunk, rewind, scaleFontStepLimit, setAverageCharWidth, setBold, setCutParagraph, setFontName, setFontSize, setHeight, setHorizontalTextAlign, setItalic, setLeadingOffset, setLineBreakOffsets, setLineSpacingFactor, setMarkup, setPdfEmbedded, setPdfEncoding, setPdfFontName, setPrintText, setRawText, setRotation, setStrikeThrough, setTextEnd, setTextHeight, setTextStart, setTextTruncateSuffix, setTextWidth, setUnderline, setVerticalTextAlign, setWidth
Methods inherited from class net.sf.jasperreports.engine.fill.JRFillElement
addDependantElement, addDynamicProperty, clone, clone, clone, collectDelayedEvaluations, collectDelayedEvaluations, collectStyleDelayedEvaluations, collectStyleProviderDelayedEvaluations, delayedEvaluate, evaluateExpression, evaluatePrintWhenExpression, evaluateProperties, getBackcolor, getBand, getBookmarkLevel, getCollapsedHeightAbove, getCollapsedHeightBelow, getConditionalStylesContainer, getDefaultStyleProvider, getDependantElements, getDynamicProperties, getElementGroup, getElementOrigin, getElementTemplate, getEvaluatedProperties, getField, getFiller, getForecolor, getGroupElements, getHeight, getInitStyle, getKey, getOwnBackcolor, getOwnForecolor, getOwnMode, getParent, getParentProperties, getPositionType, getPrepareHeight, getPrintWhenExpression, getPrintWhenGroupChanges, getPropertiesMap, getPropertyExpressions, getRelativeY, getStretchHeight, getStretchType, getStyle, getStyleExpression, getStyleNameReference, getStyleResolver, getUUID, getVariable, getWidth, getX, getY, hasDynamicProperties, hasDynamicProperty, hasProperties, initDelayedEvaluationPrint, initDelayedEvaluations, initStyleProviders, isAlreadyPrinted, isAutoEvaluateNow, isDelayedStyleEvaluation, isEvaluateAuto, isEvaluateNow, isPrintInFirstWholeBand, isPrintRepeatedValues, isPrintWhenDetailOverflows, isPrintWhenExpressionNull, isPrintWhenTrue, isRemoveLineWhenBlank, isReprinted, isToPrint, isValueRepeating, moveDependantElements, performDelayedEvaluation, resolveElement, setAlreadyPrinted, setBackcolor, setBand, setCollapsedHeightAbove, setCollapsedHeightBelow, setConditionalStylesContainer, setCurrentEvaluation, setExpressionEvaluator, setForecolor, setMode, setOriginProvider, setPositionType, setPrepareHeight, setPrintInFirstWholeBand, setPrintRepeatedValues, setPrintWhenDetailOverflows, setPrintWhenExpressionNull, setPrintWhenTrue, setRelativeY, setRemoveLineWhenBlank, setReprinted, setShrinkable, setStretchHeight, setStretchType, setStyle, setStyleNameReference, setToPrint, setValueRepeating, setX, setY, stretchElement, stretchElementToContainer, stretchElementToElementGroup, stretchElementToHeight, toPopulateTemplateStyle, 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.JRBoxContainer
getDefaultLineColor, getLineBox
Methods inherited from interface net.sf.jasperreports.engine.JRCloneable
clone
Methods inherited from interface net.sf.jasperreports.engine.JRCommonElement
getBackcolor, getForecolor, getHeight, getKey, getMode, getOwnBackcolor, getOwnForecolor, getOwnMode, getWidth, setBackcolor, setForecolor, setMode
Methods inherited from interface net.sf.jasperreports.engine.JRCommonText
getFontSize, getMarkup, getOwnMarkup, getOwnRotation, getRotation, setMarkup, setRotation
Methods inherited from interface net.sf.jasperreports.engine.JRElement
clone, getElementGroup, getPositionType, getPrintWhenExpression, getPrintWhenGroupChanges, getPropertyExpressions, getStretchType, getStyleExpression, getX, getY, isPrintInFirstWholeBand, isPrintRepeatedValues, isPrintWhenDetailOverflows, isRemoveLineWhenBlank, setPositionType, setPrintInFirstWholeBand, setPrintRepeatedValues, setPrintWhenDetailOverflows, setRemoveLineWhenBlank, setStretchType, setWidth, setX
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, setFontName, setFontSize, setItalic, setPdfEmbedded, setPdfEncoding, setPdfFontName, setStrikeThrough, setUnderline
Methods inherited from interface net.sf.jasperreports.engine.JRIdentifiable
getUUID
Methods inherited from interface net.sf.jasperreports.engine.JRParagraphContainer
getParagraph
Methods inherited from interface net.sf.jasperreports.engine.JRPropertiesHolder
getParentProperties, getPropertiesMap, hasProperties
Methods inherited from interface net.sf.jasperreports.engine.JRStyleContainer
getDefaultStyleProvider, getStyle, getStyleName, getStyleNameReference
Methods inherited from interface net.sf.jasperreports.engine.JRTextAlignment
getHorizontalTextAlign, getOwnHorizontalTextAlign, getOwnVerticalTextAlign, getVerticalTextAlign, setHorizontalTextAlign, setVerticalTextAlign
-
Field Details
-
log
protected static final org.apache.commons.logging.Log log -
textTemplates
-
-
Constructor Details
-
JRFillTextField
-
JRFillTextField
-
-
Method Details
-
getTextAdjust
Description copied from interface:JRTextField
Gets the text adjust type.- Specified by:
getTextAdjust
in interfaceJRTextField
- Returns:
- a value representing one of the text adjust constants in
TextAdjustEnum
-
setTextAdjust
Description copied from interface:JRTextField
Sets the text adjust type.- Specified by:
setTextAdjust
in interfaceJRTextField
- Parameters:
textAdjust
- a value representing one of the text adjust type constants inTextAdjustEnum
-
getEvaluationTime
Description copied from interface:JREvaluation
Gets the evaluation time for this text field.- Specified by:
getEvaluationTime
in interfaceJREvaluation
- Overrides:
getEvaluationTime
in classJRFillElement
- Returns:
- one of the evaluation time constants in
JRExpression
-
getTextFormat
-
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 interfaceJRTextField
- Returns:
- a string containing the pattern.
-
getDatePattern
-
getNumberPattern
-
getLocalizedProperty
-
getOwnPattern
- Specified by:
getOwnPattern
in interfaceJRTextField
-
setPattern
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 interfaceJRTextField
-
isBlankWhenNull
public boolean isBlankWhenNull()Description copied from interface:JRTextField
Indicates whether an empty string will be displayed if the field's expression evaluates tonull
.- Specified by:
isBlankWhenNull
in interfaceJRTextField
- Returns:
- true if an empty string will be displayed instead of null values, false otherwise
-
isOwnBlankWhenNull
- Specified by:
isOwnBlankWhenNull
in interfaceJRTextField
-
setBlankWhenNull
Description copied from interface:JRTextField
Specifies whether an empty string should be displayed if the field's expression evaluates tonull
.- Specified by:
setBlankWhenNull
in interfaceJRTextField
- Parameters:
isBlank
- true if an empty string will be displayed instead of null values, false otherwise
-
getHyperlinkType
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:
getHyperlinkType
in interfaceJRHyperlink
- Returns:
- one of the hyperlink type constants
- See Also:
-
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 interfaceJRHyperlink
- Returns:
- one of the hyperlink target constants
- See Also:
-
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 interfaceJRHyperlink
- Returns:
- the hyperlink target name
-
getEvaluationGroup
Description copied from interface:JREvaluation
Gets the evaluation group for this text field. Used only when evaluation time is group.- Specified by:
getEvaluationGroup
in interfaceJREvaluation
- See Also:
-
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 interfaceJRTextField
-
getPatternExpression
Description copied from interface:JRTextField
Gets the pattern expression, in case the patter needs to be dynamic.- Specified by:
getPatternExpression
in interfaceJRTextField
- See Also:
-
getBookmarkLevelExpression
Description copied from interface:JRAnchor
Returns an expression whose value represents the bookmark level (starting from 1) corresponding to this anchor. When the expression is set and its value is not null, it will override the value of the bookmarkLevel attribute.- Specified by:
getBookmarkLevelExpression
in interfaceJRAnchor
-
getAnchorNameExpression
Description copied from interface:JRAnchor
Returns an expression whose value represents the anchor name.- Specified by:
getAnchorNameExpression
in interfaceJRAnchor
-
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 interfaceJRHyperlink
-
getHyperlinkWhenExpression
Description copied from interface:JRHyperlink
Returns the expression that is evaluated in order to decide if the hyperlink should be displayed. This expression always returns a boolean value.- Specified by:
getHyperlinkWhenExpression
in interfaceJRHyperlink
-
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 interfaceJRHyperlink
-
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 interfaceJRHyperlink
-
getValue
-
getAnchorName
-
getHyperlinkReference
-
getHyperlinkAnchor
-
getHyperlinkPage
-
getHyperlinkTooltip
-
getJRTemplateText
-
createElementTemplate
- Specified by:
createElementTemplate
in classJRFillElement
-
evaluateTextFormat
-
getTemplate
- Overrides:
getTemplate
in classJRFillElement
-
registerTemplate
- Overrides:
registerTemplate
in classJRFillElement
-
delayedEvaluationUpdatesTemplate
protected boolean delayedEvaluationUpdatesTemplate()- Overrides:
delayedEvaluationUpdatesTemplate
in classJRFillElement
-
toFormatTimeZone
-
evaluate
- Specified by:
evaluate
in classJRFillElement
- Throws:
JRException
-
evaluateText
- Throws:
JRException
-
getTimeZone
- Overrides:
getTimeZone
in classJRFillElement
-
determineOwnTimeZone
protected void determineOwnTimeZone() -
getPatternTimeZone
-
prepare
public boolean prepare(int availableHeight, boolean isOverflow, boolean isOverflowAllowed) throws JRException - Overrides:
prepare
in classJRFillTextElement
- Throws:
JRException
-
fill
- Specified by:
fill
in classJRFillElement
- Throws:
JRException
-
copy
-
textEvaluatedEvent
-
setPrintText
- Overrides:
setPrintText
in classJRFillTextElement
-
getFormat
-
getTemplatePattern
-
collectExpressions
- Specified by:
collectExpressions
in interfaceJRElement
-
visit
- Specified by:
visit
in interfaceJRVisitable
-
resolveElement
Description copied from class:JRFillElement
Resolves an element.- Specified by:
resolveElement
in classJRFillElement
- Parameters:
element
- the elementevaluation
- 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 interfaceJRAnchor
- 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
Description copied from interface:JRFillCloneable
Creates a working clone of itself.- Specified by:
createClone
in interfaceJRFillCloneable
- Parameters:
factory
- the clone factory to use while creating the clone- Returns:
- a working clone of itself
-
collectDelayedEvaluations
protected void collectDelayedEvaluations()- Overrides:
collectDelayedEvaluations
in classJRFillElement
-
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 interfaceJRHyperlink
- Returns:
- the list of hyperlink parameters
-
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 interfaceJRHyperlink
- Returns:
- the hyperlink type
-
getHyperlinkTooltipExpression
Description copied from interface:JRHyperlink
Returns the expression which will generate the hyperlink tooltip.- Specified by:
getHyperlinkTooltipExpression
in interfaceJRHyperlink
- Returns:
- the expression which will generate the hyperlink tooltip
-
canOverflow
protected boolean canOverflow()- Specified by:
canOverflow
in classJRFillTextElement
-
scaleFontToFit
protected boolean scaleFontToFit()- Specified by:
scaleFontToFit
in classJRFillTextElement
-