Package com.inet.report
Class ReportComponent
java.lang.Object
com.inet.report.ReportComponent
- All Implemented Interfaces:
NodeParser,com.inet.report.ReferenceHolder,Serializable
- Direct Known Subclasses:
CrossTabDescriptionSection,Element,Region
public abstract class ReportComponent
extends Object
implements Serializable, com.inet.report.ReferenceHolder, NodeParser
This is the base class of all report components. Report components are the structure components of a
report. There are 2 types of components:
- the container components like area and section
- the visible elements like fields
- Since:
- 7.0
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionvoidFOR INTERNAL USE ONLYvoidaddPropertyChangeListener(String property, PropertyChangeListener pcl) FOR INTERNAL USE ONLYfinal voidaddReferencedObject(com.inet.report.ReferencedObject reference) FOR INTERNAL USE ONLYvoidFOR INTERNAL USE ONLYvoidaddVetoableChangeListener(String property, VetoableChangeListener pcl) FOR INTERNAL USE ONLYintReturns the background color of this report element as ABGR, i.e. 0x000000FF for red.Returns the background color formula of this report element.FOR INTERNAL USE ONLY Returns the custom data of this report component.intReturns the height of this report element.Returns the formula for the property 'keep together'.Returns a list with all property formulas that are set for this report element.final intFOR INTERNAL USE ONLYfinal intFOR INTERNAL USE ONLYfinal com.inet.report.ReferencedObject[]FOR INTERNAL USE ONLYabstract List<? extends ReportComponent>Returns allReportComponents that are descendants of this one.Returns the formula for the property 'suppress'.intgetType()Returns the type of this report element.intgetWidth()Returns the width of this report element.intgetX()Returns the x position of the left upper corner of the element in the report.intgetY()Returns the y position of the left upper corner of the element in the report.abstract intindexOf()Returns the position of this object in the parent collection.booleanFOR INTERNAL USE ONLY Internal method for reading report XMLbooleanReturns the value of the property 'keep together'.booleanReturns the value of the property 'suppress'.Returns a string identifying this report component.voidFOR INTERNAL USE ONLY Internal method for reading report XMLparseElement(com.inet.report.parser.XMLTag group, String tag, Attributes atts, Map<String, Object> parserMap) FOR INTERNAL USE ONLY Internal method for reading report XMLvoidparseEndElement(com.inet.report.parser.XMLTag group, String tag, Map<String, Object> parserMap) FOR INTERNAL USE ONLY Internal method for reading report XMLvoidFOR INTERNAL USE ONLY Internal method for reading report XMLvoidFOR INTERNAL USE ONLYvoidremovePropertyChangeListener(String property, PropertyChangeListener pcl) FOR INTERNAL USE ONLYfinal voidremoveReferencedObject(com.inet.report.ReferencedObject reference) FOR INTERNAL USE ONLYvoidFOR INTERNAL USE ONLYvoidremoveVetoableChangeListener(String property, VetoableChangeListener pcl) FOR INTERNAL USE ONLYvoidFOR INTERNAL USE ONLYvoidsetBackColor(int backColor) Sets the background color of this report element.voidsetBackColorFormula(FormulaField newFormula) Sets the background color of this report element.voidsetCustomData(Object customData) FOR INTERNAL USE ONLY Sets the custom data for this report component.voidsetHeight(int height) Sets the height of this report element.voidsetKeepTogether(boolean newValue) Sets the value of the property 'keep together'.voidsetKeepTogetherFormula(FormulaField newFormula) Sets the formula for the property 'keep together'.voidFOR INTERNAL USE ONLYvoidsetSuppress(boolean newValue) Sets the value of the property 'suppress'.voidsetSuppressFormula(FormulaField newFormula) Sets the formula for the property 'suppress'.voidsetWidth(int width) Sets the width of this report element.voidsetX(int x) Sets the x position of the left upper corner of the element in the report.voidsetY(int y) Sets the y position of the left upper corner of the element in the report.
-
Method Details
-
addPropertyChangeListener
FOR INTERNAL USE ONLY -
addPropertyChangeListener
FOR INTERNAL USE ONLY -
addVetoableChangeListener
FOR INTERNAL USE ONLY -
addVetoableChangeListener
FOR INTERNAL USE ONLY -
removePropertyChangeListener
FOR INTERNAL USE ONLY -
removePropertyChangeListener
FOR INTERNAL USE ONLY -
removeVetoableChangeListener
FOR INTERNAL USE ONLY -
removeVetoableChangeListener
FOR INTERNAL USE ONLY -
getType
public int getType()Returns the type of this report element.- Returns:
- The value of the property 'type'.
- Since:
- 7.0
- See Also:
-
Element.FIELDElement.TEXTElement.LINEElement.BOXElement.SUBREPORTElement.PICTUREElement.CHARTElement.CROSSTABElement.DATABASE_PICTUREElement.PARAGRAPHElement.TEXTPARTElement.FIELDPARTTextFieldElementLineBoxChart2PictureSubreportDatabasePictureCrossTabParagraphTextPartFieldPart
-
indexOf
Returns the position of this object in the parent collection.- Returns:
- Position of this object in the parent collection.
- Throws:
ReportException- If there is no parent or the object does not exist.- Since:
- 7.0
-
setX
public void setX(int x) Sets the x position of the left upper corner of the element in the report. Use the 'object x position' property the adjust the element position from the left side margin. The unit is in twips.- Parameters:
x- The x position in twips.- Throws:
IllegalArgumentException- if x is negative- Since:
- 7.0
-
getX
public int getX()Returns the x position of the left upper corner of the element in the report. Use the 'object x position' property the adjust the element position from the left side margin. The unit is in twips.- Returns:
- The x position in twips.
- Since:
- 7.0
-
setY
public void setY(int y) Sets the y position of the left upper corner of the element in the report. Use the 'object y position' property the adjust the element position from the top margin. The unit is in twips.- Parameters:
y- position in twips.- Throws:
IllegalArgumentException- if y is negative- Since:
- 7.0
-
getY
public int getY()Returns the y position of the left upper corner of the element in the report. Use the 'object y position' property the adjust the element position from the top margin. The unit is in twips.- Returns:
- The y position in twips.
- Since:
- 7.0
-
setWidth
public void setWidth(int width) Sets the width of this report element. The unit is in twips.- Parameters:
width- The width in twips.- Throws:
IllegalArgumentException- if width is negative- Since:
- 7.0
-
getWidth
public int getWidth()Returns the width of this report element. Use the 'element width' property to change the width of the element. The unit is in twips.- Returns:
- The width in twips.
- Throws:
UnsupportedOperationException- if this element spans multiple sections- Since:
- 7.0
-
setHeight
public void setHeight(int height) Sets the height of this report element. Use the 'element height' property to change the height of the element. The unit is in twips.- Parameters:
height- The height in twips.- Throws:
IllegalArgumentException- if height is negative- Since:
- 7.0
-
getHeight
public int getHeight()Returns the height of this report element. Use the 'element height' property to change the height of the element. The unit is in twips.- Returns:
- The height in twips.
- Throws:
UnsupportedOperationException- if this element spans multiple sections- Since:
- 7.0
-
setSuppress
public void setSuppress(boolean newValue) Sets the value of the property 'suppress'. Set this property if you do not want the section to print, but you dont't want to keep the section content available for drill down. Drill Down is not supported yet.- Parameters:
newValue- The new value of the property 'suppress'.- Since:
- 7.0
-
isSuppress
public boolean isSuppress()Returns the value of the property 'suppress'. Set this property if you do not want the section to print, but you dont't want to keep the section content available for drill down. Drill Down is not supported yet.- Returns:
- The value of the property 'suppress'.
- Since:
- 7.0
-
setSuppressFormula
Sets the formula for the property 'suppress'. Use this property to change the visibility of the element when printing dynamically.- Parameters:
newFormula- The new formula for the property 'suppress'.- Since:
- 7.0
-
getSuppressFormula
Returns the formula for the property 'suppress'.- Returns:
- FormulaField The formula for the property 'suppress'.
- Since:
- 7.0
- See Also:
-
setBackColor
public void setBackColor(int backColor) Sets the background color of this report element. You can use the ABGR value (i.e. 0x000000FF for red) or one of the color constants in class CoderXML.- Parameters:
backColor- The new ABGR value of the background color.- Since:
- 7.0
- See Also:
-
ColorUtils.toCcColor(Color)ColorUtils.toJavaColor(int)
-
getBackColor
public int getBackColor()Returns the background color of this report element as ABGR, i.e. 0x000000FF for red.- Returns:
- The background color as ABGR
- Since:
- 7.0
- See Also:
-
ColorUtils.toCcColor(Color)ColorUtils.toJavaColor(int)
-
setBackColorFormula
Sets the background color of this report element. Set the value as ABGR, i.e. 0x000000FF for red or use the color constants in class CoderXML.- Parameters:
newFormula- Sets the new formula for 'back color'.- Since:
- 7.0
-
getBackColorFormula
Returns the background color formula of this report element. Set the value as ABGR, i.e. 0x000000FF for red or use the color constants in class CoderXML.- Returns:
FormulaFieldThe formula of the property 'back color'.- Since:
- 7.0
- See Also:
-
ColorUtils.toCcColor(Color)ColorUtils.toJavaColor(int)
-
isKeepTogether
public boolean isKeepTogether()Returns the value of the property 'keep together'. If this property is enabled the element will not printed over more than one page. If no space is available on this page it will be printed on the next. Using this property for sections all elements will be printed on one page.- Returns:
- The current value of the property 'keep together'.
- Since:
- 7.0
-
setKeepTogether
public void setKeepTogether(boolean newValue) Sets the value of the property 'keep together'. If this property is enabled the element will not printed over more than one page. If no space is available on this page it will be printed on the next. Using this property for sections all elements will be printed on one page.- Parameters:
newValue- The new value of the property 'keep together'.- Since:
- 7.0
-
getKeepTogetherFormula
Returns the formula for the property 'keep together'. If this property is enabled the element will not printed over more than one page. If no space is available on this page it will be printed on the next. Using this property for sections all elements will be printed on one page.- Returns:
- FormulaField The formula for the property 'keep together'.
- Since:
- 7.0
-
setKeepTogetherFormula
Sets the formula for the property 'keep together'. If this property is enabled the element will not printed over more than one page. If no space is available on this page it will be printed on the next. Using this property for sections all elements will be printed on one page.- Parameters:
newFormula- The new formula for the property 'keep together'.- Since:
- 7.0
-
addReferencedObject
public final void addReferencedObject(com.inet.report.ReferencedObject reference) FOR INTERNAL USE ONLY- Specified by:
addReferencedObjectin interfacecom.inet.report.ReferenceHolder
-
getReferencedObjects
public final com.inet.report.ReferencedObject[] getReferencedObjects()FOR INTERNAL USE ONLY- Specified by:
getReferencedObjectsin interfacecom.inet.report.ReferenceHolder
-
getReferencedObjectCount
public final int getReferencedObjectCount()FOR INTERNAL USE ONLY- Specified by:
getReferencedObjectCountin interfacecom.inet.report.ReferenceHolder
-
getRealReferencedObjectCount
public final int getRealReferencedObjectCount()FOR INTERNAL USE ONLY- Specified by:
getRealReferencedObjectCountin interfacecom.inet.report.ReferenceHolder
-
removeReferencedObject
public final void removeReferencedObject(com.inet.report.ReferencedObject reference) FOR INTERNAL USE ONLY- Specified by:
removeReferencedObjectin interfacecom.inet.report.ReferenceHolder
-
setReferences
public void setReferences()FOR INTERNAL USE ONLY- Specified by:
setReferencesin interfacecom.inet.report.ReferenceHolder
-
resetReferences
public void resetReferences()FOR INTERNAL USE ONLY- Specified by:
resetReferencesin interfacecom.inet.report.ReferenceHolder
-
getPropertyFormulas
Returns a list with all property formulas that are set for this report element. This includes property formulas for any type of sub-component but excludes formulas for any descendantReportComponentof this one. To get the property formulas for descendantReportComponentusegetSubComponents()- Returns:
- List of property formulas
- Since:
- 7.0
-
getSubComponents
Returns allReportComponents that are descendants of this one. E.G. this will return all Element of aSection. But it's as well useful forCrossTabs orTextelements which have additional elements.- Returns:
- a list with all sub components which can be empty as well; will be
nullif the component has no descendants - Since:
- 14.0
-
paramString
Returns a string identifying this report component. This method is useful for logging and for debugging.- Returns:
- a string identifying the ReportComponent
- Since:
- 7.0
-
parseElement
public NodeParser parseElement(com.inet.report.parser.XMLTag group, String tag, Attributes atts, Map<String, Object> parserMap) throws FatalParserExceptionFOR INTERNAL USE ONLY Internal method for reading report XMLParses an XML node with the given information, and returns either a sub-element which was created as a result, or null if no sub-element was created, i.e. the information was applied to the ReportComponent itself. Note that the parsing is highly tolerant, i.e. exceptions are intercepted and suppressed if at all possible.
- Specified by:
parseElementin interfaceNodeParser- Parameters:
group- XMLTag of the current node to be parsed, or null if there is no such current group. An XMLTag is a group of nodes bundled together, usually it is a Properties node such as CommonProperties, BorderProperties, etc.tag- The XMLTag to be parsedatts- The set of attributes in the current XMLTagparserMap- The map of current Parser.- Returns:
- The NodeParser sub-element if one needed to be created, or null if none was created.
- Throws:
FatalParserException- if an exception occurs which causes the report to not be able to be read: causes the abortion of the reading of the report.
-
parseText
FOR INTERNAL USE ONLY Internal method for reading report XMLThis method is called if text was encountered in the context of this node. (Examples would be a formula's text or a text element's text)
- Specified by:
parseTextin interfaceNodeParser- Parameters:
text- text encountered and to be storedparserMap- The map of current Parser.
-
parseEndElement
public void parseEndElement(com.inet.report.parser.XMLTag group, String tag, Map<String, Object> parserMap) throws FatalParserExceptionFOR INTERNAL USE ONLY Internal method for reading report XMLReceive notification of the end of an XML tag.
- Specified by:
parseEndElementin interfaceNodeParser- Parameters:
group- XMLTag of the current node to be parsed, or null if there is no such current group.tag- The XMLTag to be parsedparserMap- The map of current Parser.- Throws:
FatalParserException- if an exception occurs which causes the report to not be able to be read: causes the abortion of the reading of the report.
-
isDOMParser
public boolean isDOMParser()FOR INTERNAL USE ONLY Internal method for reading report XMLReturns whether this node is to be read via a DOM parser.
- Specified by:
isDOMParserin interfaceNodeParser- Returns:
- true if this node is to be read via a DOM parser, false otherwise.
-
parseDOM
FOR INTERNAL USE ONLY Internal method for reading report XMLParses the node.
- Specified by:
parseDOMin interfaceNodeParser- Parameters:
node- the nodeparserMap- The map of current Parser.- Throws:
FatalParserException- if an exception occurs which causes the report to not be able to be read: causes the abortion of the reading of the report.
-
getCustomData
FOR INTERNAL USE ONLY Returns the custom data of this report component.- Returns:
- custom data of report component.
- Since:
- 9.2
-
setCustomData
FOR INTERNAL USE ONLY Sets the custom data for this report component.- Parameters:
customData- custom data of report component.- Since:
- 9.2
-