Package org.xhtmlrenderer.newtable
Class TableBox
java.lang.Object
org.xhtmlrenderer.render.Box
org.xhtmlrenderer.render.BlockBox
org.xhtmlrenderer.newtable.TableBox
- All Implemented Interfaces:
InlinePaintable,Styleable
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static classprivate static classprivate static classA specialization ofAutoTableLayoutused for laying out the tables used to approximate the margin box layout algorithm from CSS3 GCPM.private static interfaceNested classes/interfaces inherited from class org.xhtmlrenderer.render.BlockBox
BlockBox.ContentType, BlockBox.Position -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate int @Nullable []private final List<ColumnData> private @Nullable ContentLimitContainerprivate intprivate intprivate booleanprivate intprivate @Nullable List<TableColumn> private @Nullable TableBox.TableLayoutFields inherited from class org.xhtmlrenderer.render.BlockBox
NO_BASELINE -
Constructor Summary
ConstructorsConstructorDescriptionTableBox(@Nullable Element element, @Nullable CalculatedStyle style, boolean anonymous) -
Method Summary
Modifier and TypeMethodDescriptionvoidprivate voidvoidanalyzePageBreaks(LayoutContext c, @Nullable ContentLimitContainer container) voidappendColumn(int span) private voidintintprotected voidcalcLayoutHeight(LayoutContext c, BorderPropertySet border, RectPropertySet margin, RectPropertySet padding) voidprivate voidprivate voidprotected @Nullable TableCellBoxcellAbove(TableCellBox cell) protected TableCellBoxcellBelow(TableCellBox cell) protected TableCellBoxcellLeft(TableCellBox cell) protected TableCellBoxcellRight(TableCellBox cell) @Nullable TableColumncolElement(int col) intcolToEffCol(int col) copyOf()inteffColToCol(int effCol) getBorder(CssContext cssCtx) getColumnBounds(CssContext c, int col) int[]private Rectangleprotected intintintprotected intbooleanprotected booleanbooleanprotected booleanprivate booleanvoidprotected voidlayoutChildren(LayoutContext c, int contentStart) private intprivate intprivate voidintmarginsBordersPaddingAndSpacing(CssContext c, boolean ignoreAutoMargins) intvoidvoidprivate voidvoidprotected voidresolveAutoMargins(LayoutContext c, int cssWidth, RectPropertySet padding, BorderPropertySet border) protected @Nullable TableSectionBoxsectionAbove(TableSectionBox section, boolean skipEmptySections) protected TableSectionBoxsectionBelow(TableSectionBox section, boolean skipEmptySections) private voidprivate voidsetColumnPos(int[] columnPos) voidsetExtraSpaceBottom(int extraSpaceBottom) voidsetExtraSpaceTop(int extraSpaceTop) voidsetMarginAreaRoot(boolean marginAreaRoot) protected voidsetPageClearance(int pageClearance) final voidsetStyle(CalculatedStyle style) intspanOfEffCol(int effCol) voidsplitColumn(int pos, int firstSpan) private voidupdateFooterPosition(RenderingContext c, ContentLimit limit) voidprivate voidupdateHeaderPosition(RenderingContext c, ContentLimit limit) Methods inherited from class org.xhtmlrenderer.render.BlockBox
appendPositioningInfo, calcBaseline, calcBreakAtLineContext, calcCanvasLocation, calcChildLocations, calcChildPaintingInfo, calcDimensions, calcDimensions, calcInitialBreakAtLine, calcInitialFloatedCanvasLocation, checkPageContext, dump, ensureChildren, findLastNthLineBox, findOffset, getAvailableWidth, getChildrenContentType, getChildrenHeight, getCSSFitToWidth, getCSSHeight, getCSSWidth, getExtraBoxDescription, getFirstLetterStyle, getFirstLineStyle, getFloatedBoxData, getInlineContent, getLineBox, getListCounter, getMarkerData, getMaxWidth, getMinWidth, getPaintingClipEdge, getPersistentBFC, getReplacedElement, getStaticEquivalent, initStaticPos, isAutoHeight, isBottomMarginCalculated, isContainsInlineContent, isCurrentBreakAtLineContext, isFixedWidthAdvisoryOnly, isFloated, isFromCaptionedTable, isInline, isInlineBlock, isInMainFlow, isMinMaxCalculated, isNeedPageClear, isNeedsClipOnPaint, isNeedsKeepWithInline, isReplaced, isSkipWhenCollapsingMargins, isTopMarginCalculated, layout, layoutInlineChildren, paintDebugOutline, paintInline, paintListMarker, positionAbsolute, positionAbsoluteOnPage, propagateExtraSpace, setBottomMarginCalculated, setChildrenContentType, setChildrenHeight, setDimensionsCalculated, setFirstLetterStyle, setFirstLineStyle, setFloatedBoxData, setFromCaptionedTable, setInlineContent, setListCounter, setMaxWidth, setMinMaxCalculated, setMinWidth, setNeedPageClear, setNeedShrinkToFitCalculation, setPersistentBFC, setReplacedElement, setStaticEquivalent, setTopMarginCalculated, styleText, styleText, toStringMethods inherited from class org.xhtmlrenderer.render.Box
addAllChildren, addChild, addChildForLayout, appendPosition, appendSize, calcPaintingInfo, clearSelection, collectText, connectChildrenToCurrentLayer, crossesPageBreak, detach, dumpBoxes, exportPageBoxText, exportText, find, forcePageBreakAfter, forcePageBreakBefore, getAbsX, getAbsY, getBorderEdge, getBorderSides, getBoxDimensions, getChild, getChildCount, getChildren, getChildrenClipEdge, getContainingBlock, getContainingBlockWidth, getContainingLayer, getContentAreaEdge, getContentWidth, getEffBackgroundColor, getEffectiveWidth, getElement, getElementBoxes, getHeight, getIndex, getLayer, getLeftMBP, getMargin, getMarginBorderPadding, getMarginEdge, getMarginEdge, getNext, getNextSibling, getPadding, getPaddingEdge, getPaddingWidth, getPaintingBorderEdge, getPaintingInfo, getPaintingPaddingEdge, getParent, getPrevious, getPreviousSibling, getPseudoElementOrClass, getRelativeOffset, getRestyleTarget, getRightMBP, getState, getStyle, getStyleMargin, getStyleMarginNoCache, getTx, getTy, getWidth, getX, getY, initContainingLayer, intersects, isAnonymous, isBody, isContainedInMarginBox, isInDocumentFlow, isInitialContainingBlock, isRoot, isStyled, moveIfGreater, paintRootElementBackground, positionRelative, removeAllChildren, removeChild, removeChild, resetChildren, resetChildren, resetTopMargin, restyle, restyleChildren, selectAll, setAbsX, setAbsY, setBoxDimensions, setContainingBlock, setContainingLayer, setContentWidth, setElement, setHeight, setIndex, setLayer, setLeftMBP, setMarginBottom, setMarginLeft, setMarginRight, setMarginTop, setParent, setPseudoElementOrClass, setRightMBP, setState, setTx, setTy, setX, setY
-
Field Details
-
_columns
-
_columnPos
private int @Nullable [] _columnPos -
_tableLayout
-
_styleColumns
-
_pageClearance
private int _pageClearance -
_marginAreaRoot
private boolean _marginAreaRoot -
_contentLimitContainer
-
_extraSpaceTop
private int _extraSpaceTop -
_extraSpaceBottom
private int _extraSpaceBottom
-
-
Constructor Details
-
TableBox
-
-
Method Details
-
isMarginAreaRoot
public boolean isMarginAreaRoot()- Overrides:
isMarginAreaRootin classBox
-
setMarginAreaRoot
public void setMarginAreaRoot(boolean marginAreaRoot) -
copyOf
-
addStyleColumn
-
getStyleColumns
-
getColumnPos
public int[] getColumnPos() -
setColumnPos
private void setColumnPos(int[] columnPos) -
numEffCols
public int numEffCols() -
spanOfEffCol
public int spanOfEffCol(int effCol) -
colToEffCol
public int colToEffCol(int col) -
effColToCol
public int effColToCol(int effCol) -
appendColumn
public void appendColumn(int span) -
setStyle
-
calcMinMaxWidth
- Overrides:
calcMinMaxWidthin classBlockBox
-
splitColumn
public void splitColumn(int pos, int firstSpan) -
marginsBordersPaddingAndSpacing
-
getColumns
-
recalcSections
-
calcBorders
-
isAllowHeightToShrink
protected boolean isAllowHeightToShrink()- Overrides:
isAllowHeightToShrinkin classBlockBox
-
layout
-
resolveAutoMargins
protected void resolveAutoMargins(LayoutContext c, int cssWidth, RectPropertySet padding, BorderPropertySet border) - Overrides:
resolveAutoMarginsin classBlockBox
-
layoutTable
-
layoutChildren
- Overrides:
layoutChildrenin classBlockBox
-
layoutRunningHeader
-
isNeedAnalyzePageBreaks
private boolean isNeedAnalyzePageBreaks() -
analyzePageBreaks
-
analyzePageBreaks
- Overrides:
analyzePageBreaksin classBox
-
paintBackground
- Overrides:
paintBackgroundin classBox
-
paintBorder
- Overrides:
paintBorderin classBox
-
getContentLimitedBorderEdge
-
updateHeaderPosition
-
calcPageClearance
-
calcWidth
private void calcWidth() -
getFirstRow
-
getFirstBodyRow
-
setCellWidths
-
calcLayoutHeight
protected void calcLayoutHeight(LayoutContext c, BorderPropertySet border, RectPropertySet margin, RectPropertySet padding) - Overrides:
calcLayoutHeightin classBlockBox
-
reset
-
getCSSWidth
- Overrides:
getCSSWidthin classBlockBox
-
colElement
-
getColumnBounds
-
getBorder
-
calcFixedHeightRowBottom
-
isMayCollapseMarginsWithChildren
protected boolean isMayCollapseMarginsWithChildren()- Overrides:
isMayCollapseMarginsWithChildrenin classBlockBox
-
sectionAbove
protected @Nullable TableSectionBox sectionAbove(TableSectionBox section, boolean skipEmptySections) -
sectionBelow
-
cellAbove
-
cellBelow
-
cellLeft
-
cellRight
-
calcInlineBaseline
- Overrides:
calcInlineBaselinein classBlockBox
-
getPageClearance
protected int getPageClearance()- Overrides:
getPageClearancein classBlockBox
-
setPageClearance
protected void setPageClearance(int pageClearance) -
hasContentLimitContainer
public boolean hasContentLimitContainer() -
getExtraSpaceTop
public int getExtraSpaceTop() -
setExtraSpaceTop
public void setExtraSpaceTop(int extraSpaceTop) -
getExtraSpaceBottom
public int getExtraSpaceBottom() -
setExtraSpaceBottom
public void setExtraSpaceBottom(int extraSpaceBottom)
-