public void pushClipRegion(RenderingContext c, int contentIndex) { while (_current != null && _current.getRange().getStart() == contentIndex) { _current.setClip(_outputDevice.getClip()); _clipRegionStack.add(_current); _outputDevice.clip(_current.getBox().getChildrenClipEdge(c)); if (_rangeIndex == _rangeList.size() - 1) { _current = null; } else { _current = (BoxRangeData)_rangeList.get(++_rangeIndex); } } }
public void popClipRegions(RenderingContext c, int contentIndex) { while (_clipRegionStack.size() > 0) { BoxRangeData data = (BoxRangeData)_clipRegionStack.getLast(); if (data.getRange().getEnd() == contentIndex) { _outputDevice.setClip(data.getClip()); _clipRegionStack.removeLast(); } else { break; } } } }
private void saveRangeData( CssContext c, Box container, List blockContent, List inlineContent, BoxRangeLists rangeLists, boolean isBlock, int blockStart, int inlineStart, int blockRangeStart, int inlineRangeStart) { if (isBlock && c instanceof RenderingContext) { BlockBox blockBox = (BlockBox)container; if (blockBox.isNeedsClipOnPaint((RenderingContext)c)) { int blockEnd = blockContent.size(); if (blockStart != blockEnd) { BoxRange range = new BoxRange(blockStart, blockEnd); rangeLists.getBlock().add(blockRangeStart, new BoxRangeData(blockBox, range)); } int inlineEnd = inlineContent.size(); if (inlineStart != inlineEnd) { BoxRange range = new BoxRange(inlineStart, inlineEnd); rangeLists.getInline().add(inlineRangeStart, new BoxRangeData(blockBox, range)); } } } }
private void saveRangeData( CssContext c, Box container, List blockContent, List inlineContent, BoxRangeLists rangeLists, boolean isBlock, int blockStart, int inlineStart, int blockRangeStart, int inlineRangeStart) { if (isBlock && c instanceof RenderingContext) { BlockBox blockBox = (BlockBox)container; if (blockBox.isNeedsClipOnPaint((RenderingContext)c)) { int blockEnd = blockContent.size(); if (blockStart != blockEnd) { BoxRange range = new BoxRange(blockStart, blockEnd); rangeLists.getBlock().add(blockRangeStart, new BoxRangeData(blockBox, range)); } int inlineEnd = inlineContent.size(); if (inlineStart != inlineEnd) { BoxRange range = new BoxRange(inlineStart, inlineEnd); rangeLists.getInline().add(inlineRangeStart, new BoxRangeData(blockBox, range)); } } } }
public void pushClipRegion(RenderingContext c, int contentIndex) { while (_current != null && _current.getRange().getStart() == contentIndex) { _current.setClip(_outputDevice.getClip()); _clipRegionStack.add(_current); _outputDevice.clip(_current.getBox().getChildrenClipEdge(c)); if (_rangeIndex == _rangeList.size() - 1) { _current = null; } else { _current = (BoxRangeData)_rangeList.get(++_rangeIndex); } } }
public void popClipRegions(RenderingContext c, int contentIndex) { while (_clipRegionStack.size() > 0) { BoxRangeData data = (BoxRangeData)_clipRegionStack.getLast(); if (data.getRange().getEnd() == contentIndex) { _outputDevice.setClip(data.getClip()); _clipRegionStack.removeLast(); } else { break; } } } }