Examples of RenderBox


Examples of org.jfree.layouting.renderer.model.RenderBox

            final RenderNode node = contentElement.getNode();
            if (node instanceof RenderBox)
            {
              // OK, limit the size of the box to the maximum line width and
              // revalidate it.
              final RenderBox box = (RenderBox) node;
              final long maxWidth = (getEndOfLine() - getPosition());
              computeInlineBlock(box, getPosition(), maxWidth);

              elementDimensions[endIndex - 1] = node.getWidth();
            }
          }
          setSkipIndex(endIndex);
        }
        return(start);
      }

    }

    // No, it is an ordinary advance ..
    // Check, whether we hit an item-sequence element
    if (contentElement instanceof InlineNodeSequenceElement == false)
    {
      for (int i = start; i < endIndex; i++)
      {
        final InlineSequenceElement element = sequenceElements[i];
        elementPositions[i] = getPosition();
        final long elementWidth = element.getMaximumWidth();
        elementDimensions[i] = elementWidth;
        addPosition(elementWidth);
      }
      return endIndex;
    }

    // Handle the ItemSequence element.


    // This is a bit more complicated. So we encountered an inline-block
    // element here. That means, the element will try to occuppy its
    // maximum-content-width.
//    Log.debug("Advance block at index " + contentIndex);
//    final long ceWidth = contentElement.getMinimumWidth();
//    final long extraSpace = contentElement.getMaximumWidth();
//    Log.debug("Advance block: Min " + ceWidth);
//    Log.debug("Advance block: Max " + extraSpace);

    final long itemElementWidth = contentElement.getMaximumWidth();

    final RenderNode node = contentElement.getNode();
    if (node instanceof RenderBox)
    {
      final RenderBox box = (RenderBox) node;
      computeInlineBlock(box, getPosition(), itemElementWidth);
    }
    else
    {
      node.setX(getPosition());
View Full Code Here

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

   *
   * @return
   */
  public long getMinimumWidth(final RenderNode node)
  {
    final RenderBox box = (RenderBox) node;
    final StaticBoxLayoutProperties blp = box.getStaticBoxLayoutProperties();
    return box.getMinimumChunkWidth() + blp.getMarginLeft() + blp.getMarginRight();
  }
View Full Code Here

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

    return box.getMinimumChunkWidth() + blp.getMarginLeft() + blp.getMarginRight();
  }

  public long getMaximumWidth(final RenderNode node)
  {
    final RenderBox box = (RenderBox) node;
    final StaticBoxLayoutProperties blp = box.getStaticBoxLayoutProperties();
    return box.getMaximumBoxWidth() + blp.getMarginLeft() + blp.getMarginRight();
  }
View Full Code Here

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

    return box.getMaximumBoxWidth() + blp.getMarginLeft() + blp.getMarginRight();
  }

  public boolean isPreserveWhitespace(final RenderNode node)
  {
    final RenderBox box = (RenderBox) node;
    final StaticBoxLayoutProperties blp = box.getStaticBoxLayoutProperties();
    return blp.isPreserveSpace();
  }
View Full Code Here

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

    return parent.getStyleSheet().getBooleanStyleProperty(key);
  }

  protected void finishInlineBox(final InlineRenderBox box)
  {
    final RenderBox parent = box.getParent();
    if (underline != null)
    {
      if (isStyleActive(TextStyleKeys.UNDERLINED, parent) == false)
      {
        // The parent has no underline style, but this box has. So finish up the underline.
View Full Code Here

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

  protected void processParagraphChilds(final ParagraphRenderBox box)
  {
    this.contentAreaX1 = box.getContentAreaX1();
    this.contentAreaX2 = box.getContentAreaX2();

    RenderBox lineBox = (RenderBox) box.getFirstChild();
    while (lineBox != null)
    {
      processTextLine(lineBox, contentAreaX1, contentAreaX2);
      lineBox = (RenderBox) lineBox.getNext();
    }
  }
View Full Code Here

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

            }
          }

          ellipseDrawn = true;

          final RenderBox parent = node.getParent();
          if (parent != null)
          {
            final RenderBox textEllipseBox = parent.getTextEllipseBox();
            if (textEllipseBox != null)
            {
              processBoxChilds(textEllipseBox);
            }
          }
          return;
        }
      }
    }

    if (type == LayoutNodeTypes.TYPE_NODE_TEXT)
    {
      final RenderableText text = (RenderableText) node;
      if (underline != null)
      {
        final ExtendedBaselineInfo baselineInfo = text.getBaselineInfo();
        final long underlinePos = text.getY() + baselineInfo.getUnderlinePosition();
        underline.updateVerticalPosition(StrictGeomUtility.toExternalValue(underlinePos));
        underline.updateStart(StrictGeomUtility.toExternalValue(text.getX()));
        underline.updateEnd(StrictGeomUtility.toExternalValue(text.getX() + text.getWidth()));
      }

      if (strikeThrough != null)
      {
        final ExtendedBaselineInfo baselineInfo = text.getBaselineInfo();
        final long strikethroughPos = text.getY() + baselineInfo.getStrikethroughPosition();
        strikeThrough.updateVerticalPosition(StrictGeomUtility.toExternalValue(strikethroughPos));
        strikeThrough.updateStart(StrictGeomUtility.toExternalValue(text.getX()));
        strikeThrough.updateEnd(StrictGeomUtility.toExternalValue(text.getX() + text.getWidth()));
      }

      if (isTextLineOverflow())
      {
        if (node.isNodeVisible(drawArea) == false)
        {
          return;
        }

        final long ellipseSize = extractEllipseSize(node);
        final long x1 = text.getX();
        final long x2 = x1 + text.getWidth();
        final long effectiveAreaX2 = (contentAreaX2 - ellipseSize);
        if (x2 <= effectiveAreaX2)
        {
          // the text will be fully visible.
          drawText(text);
        }
        else
        {
          if (x1 >= contentAreaX2)
          {
            // Skip, the node will not be visible.
          }
          else
          {
            // The text node that is printed will overlap with the ellipse we need to print.
            drawText(text, effectiveAreaX2);
          }

          final RenderBox parent = node.getParent();
          if (parent != null)
          {
            final RenderBox textEllipseBox = parent.getTextEllipseBox();
            if (textEllipseBox != null)
            {
              processBoxChilds(textEllipseBox);
            }
          }
View Full Code Here

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

  {
    if (node == null)
    {
      return 0;
    }
    final RenderBox parent = node.getParent();
    if (parent == null)
    {
      return 0;
    }
    final RenderBox textEllipseBox = parent.getTextEllipseBox();
    if (textEllipseBox == null)
    {
      return 0;
    }
    return textEllipseBox.getWidth();
  }
View Full Code Here

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

  private void computeBreakIndicator(final RenderBox box)
  {

    final StyleSheet styleSheet = box.getStyleSheet();
    final RenderBox parent = box.getParent();
    if (parent != null)
    {
      final boolean breakBefore = styleSheet.getBooleanStyleProperty(BandStyleKeys.PAGEBREAK_BEFORE);
      final boolean breakAfter = box.isBreakAfter();
      if ((breakBefore) && (parent.getNodeType() != LayoutNodeTypes.TYPE_BOX_PARAGRAPH))
      {
        box.setManualBreakIndicator(RenderBox.DIRECT_MANUAL_BREAK);
        applyIndirectManualBreakIndicator(parent);
        return;
      }
      if (breakAfter && (parent.getNodeType() != LayoutNodeTypes.TYPE_BOX_PARAGRAPH))
      {
        applyIndirectManualBreakIndicator(parent);
      }
    }
View Full Code Here

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

  }

  protected void updateParagraphChunkWidth(final RenderBox box)
  {
    final ParagraphRenderBox paragraphRenderBox = (ParagraphRenderBox) box;
    final RenderBox chunkBox;
    final RenderBox lineboxContainer = paragraphRenderBox.getLineboxContainer();
    if (lineboxContainer == null)
    {
      // use pool ..
      chunkBox = paragraphRenderBox.getPool();
    }
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.