Class PrintElement

java.lang.Object
org.compiere.print.layout.PrintElement
All Implemented Interfaces:
ImageObserver, Serializable
Direct Known Subclasses:
BarcodeElement, BoxElement, GraphElement, GridElement, HTMLElement, ImageElement, StringElement, TableElement

public abstract class PrintElement extends Object implements ImageObserver, Serializable
Print Element
Version:
$Id: PrintElement.java,v 1.2 2006/07/30 00:53:02 jjanke Exp $
Author:
Jorg Janke
See Also:
  • Field Details

    • p_width

      protected float p_width
      Calculated Size of Element
    • p_height

      protected float p_height
    • p_sizeCalculated

      protected boolean p_sizeCalculated
    • p_maxWidth

      protected float p_maxWidth
      Max Size of Element
    • p_maxHeight

      protected float p_maxHeight
    • p_FieldAlignmentType

      protected String p_FieldAlignmentType
      Field Align Type
    • p_pageLocation

      protected Point2D.Double p_pageLocation
      Location on Page
    • log

      protected CLogger log
      Logger
  • Constructor Details

    • PrintElement

      protected PrintElement()
      Constructor
  • Method Details

    • getWidth

      public float getWidth()
      Get Calculated Width
      Returns:
      Width
    • getHeight

      public float getHeight()
      Get Calculated Height
      Returns:
      Height
    • getHeight

      public float getHeight(int pageNo)
      Get Calculated Height on page
      Parameters:
      pageNo - page number
      Returns:
      Height
    • getPageCount

      public int getPageCount()
      Get number of pages
      Returns:
      page count (1)
    • calculateSize

      protected abstract boolean calculateSize()
      Layout and Calculate Size Set p_width and p_height
      Returns:
      true if calculated
    • layout

      public void layout(float maxWidth, float maxHeight, boolean isHeightOneLine, String FieldAlignmentType)
      Layout Element
      Parameters:
      maxWidth - max width
      maxHeight - max height
      isHeightOneLine - just one line
      FieldAlignmentType - alignment type (MPrintFormatItem.FIELD_ALIGN_*)
    • setMaxHeight

      public void setMaxHeight(float maxHeight)
      Set Maximum Height
      Parameters:
      maxHeight - maximum height (0) is no limit
    • setMaxWidth

      public void setMaxWidth(float maxWidth)
      Set Maximum Width
      Parameters:
      maxWidth - maximum width (0) is no limit
    • setLocation

      public void setLocation(Point2D pageLocation)
      Set Location within page. Called from LayoutEngine.layoutForm(), lauout(), createStandardFooterHeader()
      Parameters:
      pageLocation - location within page
    • getLocation

      public Point2D getLocation()
      Get Location within page
      Returns:
      location within page
    • getAbsoluteLocation

      protected Point2D.Double getAbsoluteLocation(Point2D pageStart)
      Return Absolute Position
      Parameters:
      pageStart - start of page
      Returns:
      absolite position
    • getBounds

      public Rectangle getBounds()
      Get relative Bounds of Element
      Returns:
      bounds relative position on page
    • getDrillDown

      public MQuery getDrillDown(Point relativePoint, int pageNo)
      Get Drill Down value
      Parameters:
      relativePoint - relative Point
      pageNo - page number
      Returns:
      null (subclasses overwrite)
    • getDrillAcross

      public MQuery getDrillAcross(Point relativePoint, int pageNo)
      Get Drill Across value
      Parameters:
      relativePoint - relative Point
      pageNo - page number
      Returns:
      null (subclasses overwrite)
    • translate

      public void translate(Properties ctx)
      Translate Context if required. If content is translated, the element needs to stay in the bounds of the originally calculated size and need to align the field.
      Parameters:
      ctx - context
    • isTranslated

      public boolean isTranslated()
      Content is translated
      Returns:
      false
    • paint

      public abstract void paint(Graphics2D g2D, int pageNo, Point2D pageStart, Properties ctx, boolean isView)
      Paint/Print.
      Parameters:
      g2D - Graphics
      pageNo - page number for multi page support (0 = header/footer)
      pageStart - top left Location of page
      ctx - context
      isView - true if online view (IDs are links)
    • imageUpdate

      public boolean imageUpdate(Image img, int infoflags, int x, int y, int width, int height)
      Image Observer
      Specified by:
      imageUpdate in interface ImageObserver
      Parameters:
      img - image
      infoflags - Observer flags
      x - x coordinate
      y - y coordinate
      width - image width
      height - image height
      Returns:
      false if the infoflags indicate that the image is completely loaded; true otherwise
    • waitForLoad

      public boolean waitForLoad(Image image)
      Wait until Image is loaded.
      Parameters:
      image - image
      Returns:
      true if loaded
    • getDetailInfo

      protected String getDetailInfo()
      Get Detail Info from Sub-Class
      Returns:
      detail info
    • toString

      public String toString()
      String Representation
      Overrides:
      toString in class Object
      Returns:
      info
    • setCurrentPage

      public void setCurrentPage(Page page)
    • getCurrentPage

      protected Page getCurrentPage()
    • setPrintData

      public void setPrintData(PrintData printData)
    • getPrintData

      public PrintData getPrintData()
    • setRowIndex

      public void setRowIndex(int row)
    • getRowIndex

      public int getRowIndex()
    • setPageLogic

      public void setPageLogic(String displayLogic)
    • getPageLogic

      public String getPageLogic()