| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
| 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
| 4 * (C) 2007 David Smith (catfish.man@gmail.com) | 4 * (C) 2007 David Smith (catfish.man@gmail.com) |
| 5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All r
ights reserved. | 5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All r
ights reserved. |
| 6 * | 6 * |
| 7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
| 8 * modify it under the terms of the GNU Library General Public | 8 * modify it under the terms of the GNU Library General Public |
| 9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
| 10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
| (...skipping 309 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 320 virtual void styleWillChange(StyleDifference, const RenderStyle& newStyle) O
VERRIDE; | 320 virtual void styleWillChange(StyleDifference, const RenderStyle& newStyle) O
VERRIDE; |
| 321 virtual void styleDidChange(StyleDifference, const RenderStyle* oldStyle) OV
ERRIDE; | 321 virtual void styleDidChange(StyleDifference, const RenderStyle* oldStyle) OV
ERRIDE; |
| 322 | 322 |
| 323 virtual bool hasLineIfEmpty() const; | 323 virtual bool hasLineIfEmpty() const; |
| 324 | 324 |
| 325 bool simplifiedLayout(); | 325 bool simplifiedLayout(); |
| 326 virtual void simplifiedNormalFlowLayout(); | 326 virtual void simplifiedNormalFlowLayout(); |
| 327 | 327 |
| 328 void setDesiredColumnCountAndWidth(int, LayoutUnit); | 328 void setDesiredColumnCountAndWidth(int, LayoutUnit); |
| 329 | 329 |
| 330 bool avoidsOrIgnoresFloats() { return isFloatingOrOutOfFlowPositioned() || a
voidsFloats(); } | |
| 331 public: | 330 public: |
| 332 virtual void computeOverflow(LayoutUnit oldClientAfterEdge, bool = false); | 331 virtual void computeOverflow(LayoutUnit oldClientAfterEdge, bool = false); |
| 333 protected: | 332 protected: |
| 334 virtual void addOverflowFromChildren(); | 333 virtual void addOverflowFromChildren(); |
| 335 void addOverflowFromPositionedObjects(); | 334 void addOverflowFromPositionedObjects(); |
| 336 void addOverflowFromBlockChildren(); | 335 void addOverflowFromBlockChildren(); |
| 337 void addVisualOverflowFromTheme(); | 336 void addVisualOverflowFromTheme(); |
| 338 | 337 |
| 339 virtual void addFocusRingRects(Vector<IntRect>&, const LayoutPoint& addition
alOffset, const RenderLayerModelObject* paintContainer = 0) OVERRIDE; | 338 virtual void addFocusRingRects(Vector<IntRect>&, const LayoutPoint& addition
alOffset, const RenderLayerModelObject* paintContainer = 0) OVERRIDE; |
| 340 | 339 |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 383 virtual void paintFloats(PaintInfo&, const LayoutPoint&, bool) { } | 382 virtual void paintFloats(PaintInfo&, const LayoutPoint&, bool) { } |
| 384 void paintContents(PaintInfo&, const LayoutPoint&); | 383 void paintContents(PaintInfo&, const LayoutPoint&); |
| 385 void paintColumnContents(PaintInfo&, const LayoutPoint&, bool paintFloats =
false); | 384 void paintColumnContents(PaintInfo&, const LayoutPoint&, bool paintFloats =
false); |
| 386 void paintColumnRules(PaintInfo&, const LayoutPoint&); | 385 void paintColumnRules(PaintInfo&, const LayoutPoint&); |
| 387 void paintSelection(PaintInfo&, const LayoutPoint&); | 386 void paintSelection(PaintInfo&, const LayoutPoint&); |
| 388 void paintCaret(PaintInfo&, const LayoutPoint&, CaretType); | 387 void paintCaret(PaintInfo&, const LayoutPoint&, CaretType); |
| 389 | 388 |
| 390 bool hasCaret() const { return hasCaret(CursorCaret) || hasCaret(DragCaret);
} | 389 bool hasCaret() const { return hasCaret(CursorCaret) || hasCaret(DragCaret);
} |
| 391 bool hasCaret(CaretType) const; | 390 bool hasCaret(CaretType) const; |
| 392 | 391 |
| 392 virtual bool avoidsFloats() const OVERRIDE; |
| 393 |
| 393 bool hitTestColumns(const HitTestRequest&, HitTestResult&, const HitTestLoca
tion& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAction); | 394 bool hitTestColumns(const HitTestRequest&, HitTestResult&, const HitTestLoca
tion& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAction); |
| 394 bool hitTestContents(const HitTestRequest&, HitTestResult&, const HitTestLoc
ation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAction)
; | 395 bool hitTestContents(const HitTestRequest&, HitTestResult&, const HitTestLoc
ation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAction)
; |
| 395 // FIXME-BLOCKFLOW: Remove virtualizaion when all callers have moved to Rend
erBlockFlow | 396 // FIXME-BLOCKFLOW: Remove virtualizaion when all callers have moved to Rend
erBlockFlow |
| 396 virtual bool hitTestFloats(const HitTestRequest&, HitTestResult&, const HitT
estLocation&, const LayoutPoint&) { return false; } | 397 virtual bool hitTestFloats(const HitTestRequest&, HitTestResult&, const HitT
estLocation&, const LayoutPoint&) { return false; } |
| 397 | 398 |
| 398 virtual bool isPointInOverflowControl(HitTestResult&, const LayoutPoint& loc
ationInContainer, const LayoutPoint& accumulatedOffset); | 399 virtual bool isPointInOverflowControl(HitTestResult&, const LayoutPoint& loc
ationInContainer, const LayoutPoint& accumulatedOffset); |
| 399 | 400 |
| 400 void computeBlockPreferredLogicalWidths(LayoutUnit& minLogicalWidth, LayoutU
nit& maxLogicalWidth) const; | 401 void computeBlockPreferredLogicalWidths(LayoutUnit& minLogicalWidth, LayoutU
nit& maxLogicalWidth) const; |
| 401 | 402 |
| 402 // Obtains the nearest enclosing block (including this block) that contribut
es a first-line style to our inline | 403 // Obtains the nearest enclosing block (including this block) that contribut
es a first-line style to our inline |
| (...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 463 | 464 |
| 464 protected: | 465 protected: |
| 465 // Returns the logicalOffset at the top of the next page. If the offset pass
ed in is already at the top of the current page, | 466 // Returns the logicalOffset at the top of the next page. If the offset pass
ed in is already at the top of the current page, |
| 466 // then nextPageLogicalTop with ExcludePageBoundary will still move to the t
op of the next page. nextPageLogicalTop with | 467 // then nextPageLogicalTop with ExcludePageBoundary will still move to the t
op of the next page. nextPageLogicalTop with |
| 467 // IncludePageBoundary set will not. | 468 // IncludePageBoundary set will not. |
| 468 // | 469 // |
| 469 // For a page height of 800px, the first rule will return 800 if the value p
assed in is 0. The second rule will simply return 0. | 470 // For a page height of 800px, the first rule will return 800 if the value p
assed in is 0. The second rule will simply return 0. |
| 470 enum PageBoundaryRule { ExcludePageBoundary, IncludePageBoundary }; | 471 enum PageBoundaryRule { ExcludePageBoundary, IncludePageBoundary }; |
| 471 LayoutUnit nextPageLogicalTop(LayoutUnit logicalOffset, PageBoundaryRule = E
xcludePageBoundary) const; | 472 LayoutUnit nextPageLogicalTop(LayoutUnit logicalOffset, PageBoundaryRule = E
xcludePageBoundary) const; |
| 472 | 473 |
| 474 bool createsBlockFormattingContext() const; |
| 475 |
| 473 public: | 476 public: |
| 474 LayoutUnit pageLogicalTopForOffset(LayoutUnit offset) const; | 477 LayoutUnit pageLogicalTopForOffset(LayoutUnit offset) const; |
| 475 LayoutUnit pageLogicalHeightForOffset(LayoutUnit offset) const; | 478 LayoutUnit pageLogicalHeightForOffset(LayoutUnit offset) const; |
| 476 LayoutUnit pageRemainingLogicalHeightForOffset(LayoutUnit offset, PageBounda
ryRule = IncludePageBoundary) const; | 479 LayoutUnit pageRemainingLogicalHeightForOffset(LayoutUnit offset, PageBounda
ryRule = IncludePageBoundary) const; |
| 477 | 480 |
| 478 protected: | 481 protected: |
| 479 // A page break is required at some offset due to space shortage in the curr
ent fragmentainer. | 482 // A page break is required at some offset due to space shortage in the curr
ent fragmentainer. |
| 480 void setPageBreak(LayoutUnit offset, LayoutUnit spaceShortage); | 483 void setPageBreak(LayoutUnit offset, LayoutUnit spaceShortage); |
| 481 | 484 |
| 482 // Update minimum page height required to avoid fragmentation where it shoul
dn't occur (inside | 485 // Update minimum page height required to avoid fragmentation where it shoul
dn't occur (inside |
| (...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 545 // FIXME: This is temporary as we move code that accesses block flow | 548 // FIXME: This is temporary as we move code that accesses block flow |
| 546 // member variables out of RenderBlock and into RenderBlockFlow. | 549 // member variables out of RenderBlock and into RenderBlockFlow. |
| 547 friend class RenderBlockFlow; | 550 friend class RenderBlockFlow; |
| 548 }; | 551 }; |
| 549 | 552 |
| 550 DEFINE_RENDER_OBJECT_TYPE_CASTS(RenderBlock, isRenderBlock()); | 553 DEFINE_RENDER_OBJECT_TYPE_CASTS(RenderBlock, isRenderBlock()); |
| 551 | 554 |
| 552 } // namespace WebCore | 555 } // namespace WebCore |
| 553 | 556 |
| 554 #endif // RenderBlock_h | 557 #endif // RenderBlock_h |
| OLD | NEW |