Examples of LayoutController


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

        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 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

  }


  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 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)
      {
        Log.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)
      {
        Log.warn("Rowspan or colspan for image-size calculation was invalid.");
        return null;
      }

      final LayoutController rowController = cellController.getParent();
      if (rowController == null)
      {
        Log.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,"covered-table-cell");
      if (columnPos == -1)
      {
        Log.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)
      {
        Log.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, "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

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

    return -1;
  }

  private LayoutController findParentCell()
  {
    LayoutController parent = getParent();
    while (parent != null)
    {
      final Object node = parent.getNode();
      if (node instanceof Element)
      {
        final Element element = (Element) node;
        if (OfficeNamespaces.TABLE_NS.equals(element.getNamespace()) && "table-cell".equals(element.getType()))
        {
          return parent;
        }
      }
      parent = parent.getParent();
    }
    return null;
  }
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)
      {
        Log.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)
      {
        Log.warn("Rowspan or colspan for image-size calculation was invalid.");
        return null;
      }

      final LayoutController rowController = cellController.getParent();
      if (rowController == null)
      {
        Log.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,"covered-table-cell");
      if (columnPos == -1)
      {
        Log.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)
      {
        Log.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, "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

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

    return -1;
  }

  private LayoutController findParentCell()
  {
    LayoutController parent = getParent();
    while (parent != null)
    {
      final Object node = parent.getNode();
      if (node instanceof Element)
      {
        final Element element = (Element) node;
        if (OfficeNamespaces.TABLE_NS.equals(element.getNamespace()) && "table-cell".equals(element.getType()))
        {
          return parent;
        }
      }
      parent = parent.getParent();
    }
    return null;
  }
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.