OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef TableCellPainter_h | 5 #ifndef TableCellPainter_h |
6 #define TableCellPainter_h | 6 #define TableCellPainter_h |
7 | 7 |
8 #include "core/style/CollapsedBorderValue.h" | 8 #include "core/style/CollapsedBorderValue.h" |
9 #include "wtf/Allocator.h" | 9 #include "wtf/Allocator.h" |
10 | 10 |
11 namespace blink { | 11 namespace blink { |
12 | 12 |
13 struct PaintInfo; | 13 struct PaintInfo; |
| 14 class CollapsedBorderValue; |
14 class LayoutPoint; | 15 class LayoutPoint; |
15 class LayoutRect; | 16 class LayoutRect; |
16 class LayoutTableCell; | 17 class LayoutTableCell; |
17 class LayoutObject; | 18 class LayoutObject; |
18 class ComputedStyle; | 19 class ComputedStyle; |
19 | 20 |
20 class TableCellPainter { | 21 class TableCellPainter { |
21 STACK_ALLOCATED(); | 22 STACK_ALLOCATED(); |
22 public: | 23 public: |
23 TableCellPainter(const LayoutTableCell& layoutTableCell) : m_layoutTableCell
(layoutTableCell) { } | 24 TableCellPainter(const LayoutTableCell& layoutTableCell) : m_layoutTableCell
(layoutTableCell) { } |
24 | 25 |
25 void paint(const PaintInfo&, const LayoutPoint&); | 26 void paint(const PaintInfo&, const LayoutPoint&); |
26 | 27 |
27 void paintCollapsedBorders(const PaintInfo&, const LayoutPoint&); | 28 void paintCollapsedBorders(const PaintInfo&, const LayoutPoint&, const Colla
psedBorderValue&); |
28 void paintBackgroundsBehindCell(const PaintInfo&, const LayoutPoint&, const
LayoutObject* backgroundObject); | 29 void paintBackgroundsBehindCell(const PaintInfo&, const LayoutPoint&, const
LayoutObject* backgroundObject); |
29 void paintBoxDecorationBackground(const PaintInfo&, const LayoutPoint& paint
Offset); | 30 void paintBoxDecorationBackground(const PaintInfo&, const LayoutPoint& paint
Offset); |
30 void paintMask(const PaintInfo&, const LayoutPoint& paintOffset); | 31 void paintMask(const PaintInfo&, const LayoutPoint& paintOffset); |
31 | 32 |
32 enum PaintBoundOffsetBehavior { AddOffsetFromParent, DoNotAddOffsetFromParen
t }; | 33 enum PaintBoundOffsetBehavior { AddOffsetFromParent, DoNotAddOffsetFromParen
t }; |
33 // Returns the bonds of the table cell for painting, offset by paintOffset,
and if desired, the offset from the cell | 34 // Returns the bonds of the table cell for painting, offset by paintOffset,
and if desired, the offset from the cell |
34 // to its parent. | 35 // to its parent. |
35 LayoutRect paintBounds(const LayoutPoint& paintOffset, PaintBoundOffsetBehav
ior); | 36 LayoutRect paintBounds(const LayoutPoint& paintOffset, PaintBoundOffsetBehav
ior); |
36 | 37 |
37 private: | 38 private: |
38 const CollapsedBorderValue& cachedCollapsedLeftBorder(const ComputedStyle&)
const; | 39 const CollapsedBorderValue& cachedCollapsedLeftBorder(const ComputedStyle&)
const; |
39 const CollapsedBorderValue& cachedCollapsedRightBorder(const ComputedStyle&)
const; | 40 const CollapsedBorderValue& cachedCollapsedRightBorder(const ComputedStyle&)
const; |
40 const CollapsedBorderValue& cachedCollapsedTopBorder(const ComputedStyle&) c
onst; | 41 const CollapsedBorderValue& cachedCollapsedTopBorder(const ComputedStyle&) c
onst; |
41 const CollapsedBorderValue& cachedCollapsedBottomBorder(const ComputedStyle&
) const; | 42 const CollapsedBorderValue& cachedCollapsedBottomBorder(const ComputedStyle&
) const; |
42 | 43 |
43 const LayoutTableCell& m_layoutTableCell; | 44 const LayoutTableCell& m_layoutTableCell; |
44 }; | 45 }; |
45 | 46 |
46 } // namespace blink | 47 } // namespace blink |
47 | 48 |
48 #endif // TableCellPainter_h | 49 #endif // TableCellPainter_h |
OLD | NEW |