Package org.pentaho.reporting.engine.classic.core.layout.model

Examples of org.pentaho.reporting.engine.classic.core.layout.model.RenderBox


  {
    headerSubReports = new ArrayList();
    dataSubReports = new ArrayList();

    final CrosstabHeaderStyleSheet styleSheet = new CrosstabHeaderStyleSheet();
    final RenderBox rowFooterTitleBox = new RowRenderBox(styleSheet);
    rowFooterTitleBox.setName("rowFooterTitleBox");
    final RenderBox rowHeaderTitleBox = new RowRenderBox(styleSheet);
    rowHeaderTitleBox.setName("rowHeaderTitleBox");
    final RenderBox columnHeaderTitleBox = new RowRenderBox(styleSheet);
    columnHeaderTitleBox.setName("columnHeaderTitleBox");
    final RenderBox columnHeaderBox = new RowRenderBox(styleSheet);
    columnHeaderBox.setName("columnHeaderBox");

    rowFooterTitleBoxId = rowFooterTitleBox.getInstanceId();
    rowHeaderTitleBoxId = rowHeaderTitleBox.getInstanceId();
    columnHeaderTitleBoxId = columnHeaderTitleBox.getInstanceId();
    columnHeaderBoxId = columnHeaderBox.getInstanceId();

    final RenderBox rowHeaderBox = new RowRenderBox(styleSheet);
    rowHeaderBox.setName("rowHeaderBox");
    final RenderBox rowFooterBox = new RowRenderBox(styleSheet);
    rowFooterBox.setName("rowFooterBox");
    final RenderBox cellDataBox = new RowRenderBox(styleSheet);
    cellDataBox.setName("cellDataBox");

    rowHeaderBoxId = rowHeaderBox.getInstanceId();
    rowFooterBoxId = rowFooterBox.getInstanceId();
    cellDataBoxId = cellDataBox.getInstanceId();

    final BlockRenderBox columnHeaderArea = new BlockRenderBox(styleSheet);
    columnHeaderArea.setName("columnHeaderArea");
    columnHeaderArea.addChild(columnHeaderTitleBox);
    columnHeaderArea.addChild(columnHeaderBox);
View Full Code Here


      for (int row = startRow; row < finishRow; row++)
      {
        for (short col = 0; col < columnCount; col++)
        {
          final RenderBox content = contentProducer.getContent(row, col);
          final int sectionType = contentProducer.getSectionType(row, col);

          if (content == null)
          {
            final CellBackground background = cellBackgroundProducer.getBackgroundAt
                (logicalPage, sheetLayout, col, row, false, sectionType);
            if (background == null)
            {
              // An empty cell .. ignore
              final RtfCell cell = new RtfCell();
              cell.setBorderWidth(0);
              table.addCell(cell, row, col);
              continue;
            }

            // A empty cell with a defined background ..
            final RtfCell cell = new RtfCell();
            cell.setBorderWidth(0);
            updateCellStyle(cell, background);
            table.addCell(cell, row, col);
            continue;
          }

          if (content.isCommited() == false)
          {
            throw new InvalidReportStateException("Uncommited content encountered");
          }

          final long contentOffset = contentProducer.getContentOffset(row, col);
          final long colPos = sheetLayout.getXPosition(col);
          final long rowPos = sheetLayout.getYPosition(row);
          if (content.getX() != colPos || (content.getY() + contentOffset) != rowPos)
          {
            // A spanned cell ..
            continue;
          }

          final int colSpan = sheetLayout.getColSpan(col, content.getX() + content.getWidth());
          final int rowSpan = sheetLayout.getRowSpan(row, content.getY() + content.getHeight() + contentOffset);

          final CellBackground realBackground = cellBackgroundProducer.getBackgroundAt
              (logicalPage, sheetLayout, col, row, colSpan, rowSpan, false, sectionType);

          final Cell cell = new Cell();
          cell.setRowspan(rowSpan);
          cell.setColspan(colSpan);
          cell.setBorderWidth(0);
          // Sadly RTF-Cell does not provide a setter for the row-span. Therefore we have to "import" a plain cell
          // for that. The design of the iText RTF writer seems to be seriously flawed here ..
          if (realBackground != null)
          {
            updateCellStyle(cell, realBackground);
          }

          computeCellStyle(content, cell);

          // export the cell and all content ..
          final RTFTextExtractor etx = new RTFTextExtractor(metaData);
          etx.compute(content, cell, imageCache);

          table.addCell(cell, row, col);
          content.setFinished(true);
          //logger.debug("set Finished to cell (" + col + ", " + row + "," + content.getName() + ")");
        }

      }
View Full Code Here

    dataBox.close();
  }

  public RenderBox getColumnHeaderTitleBox()
  {
    final RenderBox renderBox = (RenderBox) headerBox.findNodeById(columnHeaderTitleBoxId);
    if (renderBox == null)
    {
      throw new IllegalStateException();
    }
    return renderBox;
View Full Code Here

    return renderBox;
  }

  public RenderBox getColumnHeaderBox()
  {
    final RenderBox renderBox = (RenderBox) headerBox.findNodeById(columnHeaderBoxId);
    if (renderBox == null)
    {
      throw new IllegalStateException();
    }
    return renderBox;
View Full Code Here

    return renderBox;
  }

  public RenderBox getRowHeaderTitleBox()
  {
    final RenderBox renderBox = (RenderBox) headerBox.findNodeById(rowHeaderTitleBoxId);
    if (renderBox == null)
    {
      throw new IllegalStateException();
    }
    return renderBox;
View Full Code Here

    return renderBox;
  }

  public RenderBox getRowFooterTitleBox()
  {
    final RenderBox renderBox = (RenderBox) headerBox.findNodeById(rowFooterTitleBoxId);
    if (renderBox == null)
    {
      throw new IllegalStateException();
    }
    return renderBox;
View Full Code Here

    return renderBox;
  }

  public RenderBox getRowHeaderBox()
  {
    final RenderBox renderBox = (RenderBox) dataBox.findNodeById(rowHeaderBoxId);
    if (renderBox == null)
    {
      throw new IllegalStateException();
    }
    return renderBox;
View Full Code Here

    return renderBox;
  }

  public RenderBox getRowFooterBox()
  {
    final RenderBox renderBox = (RenderBox) dataBox.findNodeById(rowFooterBoxId);
    if (renderBox == null)
    {
      throw new IllegalStateException();
    }
    return renderBox;
View Full Code Here

    return renderBox;
  }

  public RenderBox getCellDataBox()
  {
    final RenderBox renderBox = (RenderBox) dataBox.findNodeById(cellDataBoxId);
    if (renderBox == null)
    {
      throw new IllegalStateException();
    }
    return renderBox;
View Full Code Here

  }

  public RenderBox getPrintableDataBox()
  {
    final RowRenderBox dataBox = (RowRenderBox) this.dataBox.derive(true);
    final RenderBox cellDataBox = (RenderBox) dataBox.findNodeById(cellDataBoxId);
    final RenderBox rowFooterBox = (RenderBox) dataBox.findNodeById(rowFooterBoxId);
    final RenderBox rowHeaderBox = (RenderBox) dataBox.findNodeById(rowHeaderBoxId);

    closeBoxAndChilds(rowFooterBox, false);
    closeBoxAndChilds(rowHeaderBox, false);
    closeBoxAndChilds(cellDataBox, false);
    return dataBox;
View Full Code Here

TOP

Related Classes of org.pentaho.reporting.engine.classic.core.layout.model.RenderBox

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.