Class AbstractLineElement

All Implemented Interfaces:
BorderProperties, GeneralProperties, LineProperties, NodeParser, com.inet.report.ReferenceHolder, Serializable, Cloneable
Direct Known Subclasses:
Box, Line

public abstract class AbstractLineElement extends Element implements LineProperties, BorderProperties
This class is an abstract implementation of the interface LineProperties.
Since:
6.0
See Also:
  • Method Details

    • setExtendToBottomOfSectionWhenPrinting

      public final void setExtendToBottomOfSectionWhenPrinting(boolean newValue)
      Sets the value of the property 'extend to bottom of section when printing'. Use this property if you want to extend the line/box to the bottom of section.
      Specified by:
      setExtendToBottomOfSectionWhenPrinting in interface LineProperties
      Parameters:
      newValue - true if the property should be set, else false.
      Since:
      7.0
    • isExtendToBottomOfSectionWhenPrinting

      public boolean isExtendToBottomOfSectionWhenPrinting()
      Gets the value of the property 'extend to bottom of section when printing'. If this property is true, the vertical line will extend up to the end of the section when printing.
      Specified by:
      isExtendToBottomOfSectionWhenPrinting in interface LineProperties
      Returns:
      true if the line will be extended, otherwise false.
      Since:
      7.0
    • setLineWidth

      public final void setLineWidth(int newValue)
      Sets the value of the property 'line width'. With this property you can specify the width of the line of the line/box.
      Specified by:
      setLineWidth in interface LineProperties
      Parameters:
      newValue - The new value of the property 'line width'.
      Since:
      7.0
    • getLineWidth

      public int getLineWidth()
      Returns the value of the property 'line width'. With this property you can specify the width of the line of the line/box.
      Specified by:
      getLineWidth in interface LineProperties
      Returns:
      The current value of the property 'line width'.
      Since:
      7.0
    • setLineStyle

      public void setLineStyle(int lineStyle)
      Sets the value of the property 'line style' with one of the different line styles single line, double line, dashed line, dotted line or no line. If you have chosen one of the first 4 values, it inserts a line with the given style.
      Specified by:
      setLineStyle in interface LineProperties
      Parameters:
      lineStyle - The new value of the property 'line style'.
      Throws:
      IllegalArgumentException - if newValue is a invalid line style
      Since:
      7.0
      See Also:
      • BorderPropertiesConstants.NO_LINE
      • BorderPropertiesConstants.LINE_STYLE_SINGLE
      • BorderPropertiesConstants.LINE_STYLE_DOUBLE
      • BorderPropertiesConstants.LINE_STYLE_DASHED
      • BorderPropertiesConstants.LINE_STYLE_DOTTED
    • getLineStyle

      public final int getLineStyle()
      Returns the value of the property 'line style', with one of the following line styles: single line, double line, dashed line, dotted line or no line.
      Specified by:
      getLineStyle in interface LineProperties
      Returns:
      The current value of the property 'line style'.
      Since:
      7.0
      See Also:
      • BorderPropertiesConstants.NO_LINE
      • BorderPropertiesConstants.LINE_STYLE_SINGLE
      • BorderPropertiesConstants.LINE_STYLE_DOUBLE
      • BorderPropertiesConstants.LINE_STYLE_DASHED
      • BorderPropertiesConstants.LINE_STYLE_DOTTED
    • getLeftLineStyle

      public final int getLeftLineStyle()
      Return the same as getLineStyle()
      Specified by:
      getLeftLineStyle in interface BorderProperties
      Overrides:
      getLeftLineStyle in class Element
      Returns:
      The current value of the property 'line style'.
      Since:
      10.0
      See Also:
    • getTopLineStyle

      public final int getTopLineStyle()
      Return the same as getLineStyle()
      Specified by:
      getTopLineStyle in interface BorderProperties
      Overrides:
      getTopLineStyle in class Element
      Returns:
      The current value of the property 'line style'.
      Since:
      10.0
      See Also:
    • getRightLineStyle

      public final int getRightLineStyle()
      Return the same as getLineStyle()
      Specified by:
      getRightLineStyle in interface BorderProperties
      Overrides:
      getRightLineStyle in class Element
      Returns:
      The current value of the property 'line style'.
      Since:
      10.0
      See Also:
    • getBottomLineStyle

      public final int getBottomLineStyle()
      Return the same as getLineStyle()
      Specified by:
      getBottomLineStyle in interface BorderProperties
      Overrides:
      getBottomLineStyle in class Element
      Returns:
      The current value of the property 'line style'.
      Since:
      10.0
      See Also:
    • setX2

      public void setX2(int x2)
      Sets the x position of the element in the end section, if the element does not end in the same section as it begins. The unit is in twips.
      Specified by:
      setX2 in interface LineProperties
      Parameters:
      x2 - The x position in twips.
      Throws:
      IllegalArgumentException - if x2 is negative
      Since:
      7.0
    • getX2

      public int getX2()
      Returns the x position of the element in the end section, if the element does not end in the same section as it begins. The unit is in twips.
      Specified by:
      getX2 in interface LineProperties
      Returns:
      The x position in the end section in twips.
      Since:
      7.0
    • setY2

      public void setY2(int y2)
      Sets the y position of the element in the end section, if the element does not end in the same section as it begins. The unit is in twips.
      Specified by:
      setY2 in interface LineProperties
      Parameters:
      y2 - The y position in twips.
      Throws:
      IllegalArgumentException - if y2 is negative
      Since:
      7.0
    • getY2

      public int getY2()
      Returns the x position of the element in the end section, if the element does not end in the same section as it begins. The unit is in twips.
      Specified by:
      getY2 in interface LineProperties
      Returns:
      The x position in the end section in twips.
      Since:
      7.0
    • getEndSection

      public Section getEndSection()
      Returns the value of the property 'end section'. When the line should span some sections, you have to specify the end-section of the line.
      Specified by:
      getEndSection in interface LineProperties
      Returns:
      The section in that the line ends if the line goes across more than one section.
      Since:
      7.0
    • setEndSection

      public void setEndSection(Section newValue)
      Sets the value of the property 'end section'. When the line should span some sections, you have to specify the end-section of the line.
      Specified by:
      setEndSection in interface LineProperties
      Parameters:
      newValue - The section in that the line should ends, if the line should go across more than one section.
      Since:
      7.0
    • getWidth

      public int getWidth()
      Returns the width of an element. Use the 'element width' property to change the width of the element. The unit is in twips.
      Specified by:
      getWidth in interface LineProperties
      Overrides:
      getWidth in class ReportComponent
      Returns:
      The width in twips.
      Since:
      7.0
    • getHeight

      public int getHeight()
      Returns the height of an element. Use the 'element height' property to change the width of the element. The unit is in twips.
      Specified by:
      getHeight in interface LineProperties
      Overrides:
      getHeight in class ReportComponent
      Returns:
      The width in twips.
      Throws:
      UnsupportedOperationException - if this element spans multiple sections
      Since:
      7.0
    • setWidth

      public final void setWidth(int w)
      Sets the width of an element. Use the 'element width' property to change the width of the element. The unit is in twips.
      Specified by:
      setWidth in interface LineProperties
      Overrides:
      setWidth in class ReportComponent
      Parameters:
      w - The width in twips.
      Throws:
      UnsupportedOperationException - if this element spans multiple sections
      IllegalArgumentException - if w is negative
      Since:
      7.0
    • setHeight

      public final void setHeight(int h)
      Sets the height of an element. Use the 'element height' property to change the width of the element. The unit is in twips.
      Specified by:
      setHeight in interface LineProperties
      Overrides:
      setHeight in class ReportComponent
      Parameters:
      h - The width in twips.
      Throws:
      UnsupportedOperationException - if this element spans multiple sections
      IllegalArgumentException - if h is negative
      Since:
      7.0
    • spansMultipleSections

      public final boolean spansMultipleSections()
      Returns whether this element spans multiple sections or not.
      Line and Box are the only elements which can span multiple section. If this method returns true the end section can be identified by calling getEndSection().
      Returns:
      True if this elements spans multiple sections, false otherwise.
      Since:
      7.1
    • parseElement

      public NodeParser parseElement(com.inet.report.parser.XMLTag group, String tag, Attributes atts, Map<String,Object> parserMap) throws FatalParserException
      FOR INTERNAL USE ONLY FOR INTERNAL USE ONLY FOR INTERNAL USE ONLY Internal method for reading report XML

      Parses 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:
      parseElement in interface NodeParser
      Overrides:
      parseElement in class Element
      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 parsed
      atts - The set of attributes in the current XMLTag
      parserMap - 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

      public void parseText(String text, Map<String,Object> parserMap)
      FOR INTERNAL USE ONLY FOR INTERNAL USE ONLY FOR INTERNAL USE ONLY Internal method for reading report XML

      This 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:
      parseText in interface NodeParser
      Overrides:
      parseText in class Element
      Parameters:
      text - text encountered and to be stored
      parserMap - The map of current Parser.
    • isMultiSectionElement

      public boolean isMultiSectionElement()
      Return true, if this element span over more than one section
      Returns:
      true, if this element span over more than one section
      Since:
      11.1