org.pentaho.reporting.engine.classic.core.elementfactory
Class NumberFieldElementFactory

java.lang.Object
  extended by org.pentaho.reporting.engine.classic.core.elementfactory.ElementFactory
      extended by org.pentaho.reporting.engine.classic.core.elementfactory.TextElementFactory
          extended by org.pentaho.reporting.engine.classic.core.elementfactory.TextFieldElementFactory
              extended by org.pentaho.reporting.engine.classic.core.elementfactory.NumberFieldElementFactory

public class NumberFieldElementFactory
extends TextFieldElementFactory

The number format factory can be used to create numeric text elements. These text elements have special abilities to format numeric values.

Once the desired properties are set, the factory can be reused to create similiar text elements.

Author:
Thomas Morgner

Constructor Summary
NumberFieldElementFactory()
          Creates a new number field element factory.
 
Method Summary
 Element createElement()
          Creates the number text element based on the defined settings.
static Element createNumberElement(String name, Rectangle2D bounds, Color color, ElementAlignment alignment, ElementAlignment valign, FontDefinition font, String nullString, NumberFormat format, String field)
          Deprecated. Use a more fine-grained approach to define this element by using the element-factory directly.
static Element createNumberElement(String name, Rectangle2D bounds, Color color, ElementAlignment alignment, ElementAlignment valign, FontDefinition font, String nullString, String format, String field)
          Deprecated. Use a more fine-grained approach to define this element by using the element-factory directly.
static Element createNumberElement(String name, Rectangle2D bounds, Color paint, ElementAlignment alignment, FontDefinition font, String nullString, NumberFormat format, String field)
          Deprecated. Use a more fine-grained approach to define this element by using the element-factory directly.
static Element createNumberElement(String name, Rectangle2D bounds, Color paint, ElementAlignment alignment, FontDefinition font, String nullString, String format, String field)
          Deprecated. Use a more fine-grained approach to define this element by using the element-factory directly.
 String getExcelCellFormat()
          Returns the excel export cell format.
 NumberFormat getFormat()
          Returns the number format used for all generated text elements.
 String getFormatString()
          Returns the format string of the used number format.
 void setExcelCellFormat(String excelCellFormat)
          Defines a special cell format that should be used when exporting the report into Excel workbooks.
 void setFormat(NumberFormat format)
          Defines the number format used for all generated text elements.
 void setFormatString(String formatString)
          Defines the format string of the used number format.
 
Methods inherited from class org.pentaho.reporting.engine.classic.core.elementfactory.TextFieldElementFactory
createStringElement, createStringElement, getFieldname, getFormula, getNullString, setFieldname, setFormula, setNullString
 
Methods inherited from class org.pentaho.reporting.engine.classic.core.elementfactory.TextElementFactory
getBold, getEmbedFont, getEncoding, getFontName, getFontSize, getItalic, getLineHeight, getMaximumLetterSpacing, getMinimumLetterSpacing, getOptimumLetterSpacing, getReservedLiteral, getStrikethrough, getTrimTextContent, getUnderline, getVerticalTextAlignment, getWhitespaceCollapse, getWrap, getWrapText, setBold, setEmbedFont, setEncoding, setFontName, setFontSize, setItalic, setLineHeight, setMaximumLetterSpacing, setMinimumLetterSpacing, setOptimumLetterSpacing, setReservedLiteral, setStrikethrough, setTrimTextContent, setUnderline, setVerticalTextAlignment, setWhitespaceCollapse, setWrap, setWrapText
 
Methods inherited from class org.pentaho.reporting.engine.classic.core.elementfactory.ElementFactory
getAbsolutePosition, getAvoidPagebreaks, getBackgroundColor, getBorderBottomColor, getBorderBottomLeftRadius, getBorderBottomLeftRadiusHeight, getBorderBottomLeftRadiusWidth, getBorderBottomRightRadius, getBorderBottomRightRadiusHeight, getBorderBottomRightRadiusWidth, getBorderBottomStyle, getBorderBottomWidth, getBorderBreakColor, getBorderBreakStyle, getBorderBreakWidth, getBorderColor, getBorderLeftColor, getBorderLeftStyle, getBorderLeftWidth, getBorderRadius, getBorderRadiusHeight, getBorderRadiusWidth, getBorderRightColor, getBorderRightStyle, getBorderRightWidth, getBorderStyle, getBorderTopColor, getBorderTopLeftRadius, getBorderTopLeftRadiusHeight, getBorderTopLeftRadiusWidth, getBorderTopRightRadius, getBorderTopRightRadiusHeight, getBorderTopRightRadiusWidth, getBorderTopStyle, getBorderTopWidth, getBorderWidth, getColor, getDynamicHeight, getFontSmooth, getHeight, getHorizontalAlignment, getHRefTarget, getHRefTitle, getHRefWindow, getLayoutCachable, getMaximumHeight, getMaximumSize, getMaximumWidth, getMinimumHeight, getMinimumSize, getMinimumWidth, getName, getOrphans, getOverflowX, getOverflowY, getPadding, getPaddingBottom, getPaddingLeft, getPaddingRight, getPaddingTop, getPreferredSize, getUseMinChunkWidth, getVerticalAlignment, getVisible, getWidows, getWidth, getX, getY, setAbsolutePosition, setAvoidPagebreaks, setBackgroundColor, setBorderBottomColor, setBorderBottomLeftRadius, setBorderBottomLeftRadiusHeight, setBorderBottomLeftRadiusWidth, setBorderBottomRightRadius, setBorderBottomRightRadiusHeight, setBorderBottomRightRadiusWidth, setBorderBottomStyle, setBorderBottomWidth, setBorderBreakColor, setBorderBreakStyle, setBorderBreakWidth, setBorderColor, setBorderLeftColor, setBorderLeftStyle, setBorderLeftWidth, setBorderRadius, setBorderRadiusHeight, setBorderRadiusWidth, setBorderRightColor, setBorderRightStyle, setBorderRightWidth, setBorderStyle, setBorderTopColor, setBorderTopLeftRadius, setBorderTopLeftRadiusHeight, setBorderTopLeftRadiusWidth, setBorderTopRightRadius, setBorderTopRightRadiusHeight, setBorderTopRightRadiusWidth, setBorderTopStyle, setBorderTopWidth, setBorderWidth, setColor, setDynamicHeight, setFontSmooth, setHeight, setHorizontalAlignment, setHRefTarget, setHRefTitle, setHRefWindow, setLayoutCachable, setMaximumHeight, setMaximumSize, setMaximumWidth, setMinimumHeight, setMinimumSize, setMinimumWidth, setName, setOrphans, setOverflowX, setOverflowY, setPadding, setPaddingBottom, setPaddingLeft, setPaddingRight, setPaddingTop, setPreferredSize, setUseMinChunkWidth, setVerticalAlignment, setVisible, setWidows, setWidth, setX, setY
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NumberFieldElementFactory

public NumberFieldElementFactory()
Creates a new number field element factory.

Method Detail

getExcelCellFormat

public String getExcelCellFormat()
Returns the excel export cell format.

Returns:
the excel cell format.

setExcelCellFormat

public void setExcelCellFormat(String excelCellFormat)
Defines a special cell format that should be used when exporting the report into Excel workbooks.

Parameters:
excelCellFormat - the excel cell format

getFormat

public NumberFormat getFormat()
Returns the number format used for all generated text elements. The number format is shared among all generated elements.

Returns:
the number format used in this factory.

setFormat

public void setFormat(NumberFormat format)
Defines the number format used for all generated text elements. The number format is shared among all generated elements.

Parameters:
format - the number format used in this factory.

getFormatString

public String getFormatString()
Returns the format string of the used number format. This method will return null, if the current number format is no instance of DecimalFormat.

Returns:
the formatstring of the number format instance.

setFormatString

public void setFormatString(String formatString)
Defines the format string of the used number format. This method will replace the number format instance of this factory.

Parameters:
formatString - the formatstring of the number format instance.

createElement

public Element createElement()
Creates the number text element based on the defined settings. Undefined properties will not be set in the generated element.

Overrides:
createElement in class TextFieldElementFactory
Returns:
the generated numberic text element
See Also:
ElementFactory.createElement()

createNumberElement

public static Element createNumberElement(String name,
                                          Rectangle2D bounds,
                                          Color paint,
                                          ElementAlignment alignment,
                                          FontDefinition font,
                                          String nullString,
                                          NumberFormat format,
                                          String field)
Deprecated. Use a more fine-grained approach to define this element by using the element-factory directly.

Creates a new TextElement containing a numeric filter structure.

Parameters:
name - the name of the new element
bounds - the bounds of the new element
paint - the text color of this text element
alignment - the horizontal text alignment.
font - the font for this element
nullString - the text used when the value of this element is null
field - the field in the datamodel to retrieve values from
format - the NumberFormat used in this number element
Returns:
a report element for displaying Number objects.
Throws:
NullPointerException - if bounds, name or function are null
IllegalArgumentException - if the given alignment is invalid

createNumberElement

public static Element createNumberElement(String name,
                                          Rectangle2D bounds,
                                          Color color,
                                          ElementAlignment alignment,
                                          ElementAlignment valign,
                                          FontDefinition font,
                                          String nullString,
                                          NumberFormat format,
                                          String field)
Deprecated. Use a more fine-grained approach to define this element by using the element-factory directly.

Creates a new TextElement containing a numeric filter structure.

Parameters:
name - the name of the new element.
bounds - the bounds of the new element.
color - the text color of this text element.
alignment - the horizontal text alignment.
valign - the vertical alignment.
font - the font for this element.
nullString - the text used when the value of this element is null.
field - the field in the datamodel to retrieve values from.
format - the NumberFormat used in this number element.
Returns:
a report element for displaying Number objects.
Throws:
NullPointerException - if bounds, name or function are null
IllegalArgumentException - if the given alignment is invalid

createNumberElement

public static Element createNumberElement(String name,
                                          Rectangle2D bounds,
                                          Color paint,
                                          ElementAlignment alignment,
                                          FontDefinition font,
                                          String nullString,
                                          String format,
                                          String field)
Deprecated. Use a more fine-grained approach to define this element by using the element-factory directly.

Creates a new TextElement containing a numeric filter structure.

Parameters:
name - the name of the new element
bounds - the bounds of the new element
paint - the text color of this text element
alignment - the horizontal text alignment.
font - the font for this element
nullString - the text used when the value of this element is null
field - the fieldname in the datamodel to retrieve values from
format - the DecimalFormatString used in this text field
Returns:
a report element for displaying Number objects.
Throws:
NullPointerException - if bounds, name or function are null
IllegalArgumentException - if the given alignment is invalid

createNumberElement

public static Element createNumberElement(String name,
                                          Rectangle2D bounds,
                                          Color color,
                                          ElementAlignment alignment,
                                          ElementAlignment valign,
                                          FontDefinition font,
                                          String nullString,
                                          String format,
                                          String field)
Deprecated. Use a more fine-grained approach to define this element by using the element-factory directly.

Creates a new TextElement containing a numeric filter structure.

Parameters:
name - the name of the new element.
bounds - the bounds of the new element.
color - the text color of the element.
alignment - the horizontal text alignment.
valign - the vertical alignment.
font - the font for this element.
nullString - t he text used when the value of this element is null.
field - the fieldname in the datamodel to retrieve values from.
format - the DecimalFormatString used in this text field.
Returns:
a report element for displaying Number objects.
Throws:
NullPointerException - if bounds, name or function are null
IllegalArgumentException - if the given alignment is invalid