Examples of LayoutController


Examples of org.jfree.report.flow.layoutprocessor.LayoutController

    if (!section.isRepeatSection())
    {
      return super.startElement(target);
    }

    final LayoutController controller = getParent();
    if (!(controller instanceof OfficeGroupLayoutController))
    {
      return super.startElement(target);
    }
    final OfficeGroupLayoutController oglc = (OfficeGroupLayoutController) controller;
View Full Code Here

Examples of org.jfree.report.flow.layoutprocessor.LayoutController

                                           final Element element,
                                           final ReportTarget target)
      throws DataSourceException
  {
    final AttributeMap attrs = super.computeAttributes(fc, element, target);
    final LayoutController controller = getParent();
    if (!(controller instanceof OfficeGroupLayoutController))
    {
      return attrs;
    }
    final OfficeGroupLayoutController oglc = (OfficeGroupLayoutController) controller;
View Full Code Here

Examples of org.jfree.report.flow.layoutprocessor.LayoutController

    {
    }

    private VariablesCollection getVariablesCollection()
    {
        LayoutController parent = getParent();
        while (parent != null)
        {
            if (parent instanceof OfficeRepeatingStructureLayoutController)
            {
                final OfficeRepeatingStructureLayoutController orslc =
                        (OfficeRepeatingStructureLayoutController) parent;
                if (orslc.isNormalFlowProcessing())
                {
                    return null;
                }

                return orslc.getVariablesCollection();
            }
            parent = parent.getParent();
        }
        return null;
    }
View Full Code Here

Examples of org.jfree.report.flow.layoutprocessor.LayoutController

        return join(getFlowController());
    }

    private OfficeDocument getDocument()
    {
        LayoutController parent = getParent();
        while (parent != null)
        {
            final Object node = parent.getNode();
            if (node instanceof OfficeDocument)
            {
                return (OfficeDocument) node;
            }
            parent = parent.getParent();
        }
        return null;
    }
View Full Code Here

Examples of org.jfree.report.flow.layoutprocessor.LayoutController

        return null;
    }

    private Element getParentTableCell()
    {
        LayoutController parent = getParent();
        while (parent != null)
        {
            if (parent instanceof TableCellLayoutController)
            {
                final TableCellLayoutController cellController = (TableCellLayoutController) parent;
                return cellController.getElement();
            }
            parent = parent.getParent();
        }
        return null;
    }
View Full Code Here

Examples of org.jfree.report.flow.layoutprocessor.LayoutController

        return slc.getIterationCount() == 0;
    }

    private SectionLayoutController findGroup()
    {
        LayoutController parent = getParent();
        boolean skipNext = false;
        while (parent != null)
        {
            if (!(parent instanceof SectionLayoutController))
            {
                parent = parent.getParent();
            }
            else
            {
                final SectionLayoutController slc = (SectionLayoutController) parent;
                final Element element = slc.getElement();
                if (element instanceof OfficeGroupSection)
                {
                    // This is a header or footer. So we take the next group instead.
                    skipNext = true;
                    parent = parent.getParent();
                }
                else if (!(element instanceof Group))
                {
                    parent = parent.getParent();
                }
                else if (skipNext)
                {
                    skipNext = false;
                    parent = parent.getParent();
                }
                else
                {
                    return (SectionLayoutController) parent;
                }
View Full Code Here

Examples of org.jfree.report.flow.layoutprocessor.LayoutController

  }

  private String computeVariablesPrefix()
  {
    int count = 0;
    LayoutController lc = this;
    while (lc != null)
    {
      if (lc instanceof OfficeGroupLayoutController)
      {
        count++;
      }
      lc = lc.getParent();
    }
    return "auto_group_" + count + "_";
  }
View Full Code Here

Examples of org.jfree.report.flow.layoutprocessor.LayoutController

  {
  }

  private OfficeRepeatingStructureLayoutController getRepeatingParent()
  {
    LayoutController parent = getParent();
    while (parent != null)
    {
      if (parent instanceof OfficeRepeatingStructureLayoutController)
      {
        return (OfficeRepeatingStructureLayoutController) parent;
      }
      parent = parent.getParent();
    }
    return null;
  }
View Full Code Here

Examples of org.jfree.report.flow.layoutprocessor.LayoutController

      return layoutControllerFactory.create(flowController, node, derived);
    }
    else
    {
      derived.setProcessingState(ElementLayoutController.WAITING_FOR_JOIN);
      final LayoutController childLc = layoutControllerFactory.create(flowController, node, derived);
      return LayoutControllerUtil.skipInvisibleElement(childLc);
    }
  }
View Full Code Here

Examples of org.jfree.report.flow.layoutprocessor.LayoutController

    {
        if (context == null)
        {

            // Step 1: Find the parent cell.
            final LayoutController cellController = findParentCell();
            if (cellController == null)
            {
                LOGGER.warn("Image is not contained in a table. Unable to calculate the image-size.");
                return null;
            }
            final Element tableCell = (Element) cellController.getNode();
            final int rowSpan = TextUtilities.parseInt((String) tableCell.getAttribute(OfficeNamespaces.TABLE_NS, "number-rows-spanned"), 1);
            final int colSpan = TextUtilities.parseInt((String) tableCell.getAttribute(OfficeNamespaces.TABLE_NS, "number-columns-spanned"), 1);
            if (rowSpan < 1 || colSpan < 1)
            {
                LOGGER.warn("Rowspan or colspan for image-size calculation was invalid.");
                return null;
            }

            final LayoutController rowController = cellController.getParent();
            if (rowController == null)
            {
                LOGGER.warn("Table-Cell has no parent. Unable to calculate the image-size.");
                return null;
            }
            final Section tableRow = (Section) rowController.getNode();
            // we are now making the assumption, that the row is a section, that contains the table-cell.
            // This breaks the ability to return nodes or to construct reports on the fly, but the OO-report format
            // is weird anyway and wont support such advanced techniques for the next few centuries ..
            final int columnPos = findNodeInSection(tableRow, tableCell, OfficeToken.COVERED_TABLE_CELL);
            if (columnPos == -1)
            {
                LOGGER.warn("Table-Cell is not a direct child of the table-row. Unable to calculate the image-size.");
                return null;
            }

            final LayoutController tableController = rowController.getParent();
            if (tableController == null)
            {
                LOGGER.warn("Table-Row has no Table. Unable to calculate the image-size.");
                return null;
            }

            final Section table = (Section) tableController.getNode();
            // ok, we got a table, so as next we have to search for the columns now.
            final Section columns = (Section) table.findFirstChild(OfficeNamespaces.TABLE_NS, OfficeToken.TABLE_COLUMNS);
            if (columns.getNodeCount() <= columnPos + colSpan)
            {
                // the colspan is to large. The table definition is therefore invalid. We do not try to fix this.
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.