Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(284)

Side by Side Diff: third_party/WebKit/Source/core/paint/TableCellPainter.h

Issue 1963313002: Implement box-shadow for table section and row (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 "platform/graphics/paint/DisplayItem.h" 9 #include "platform/graphics/paint/DisplayItem.h"
10 #include "wtf/Allocator.h" 10 #include "wtf/Allocator.h"
11 11
12 namespace blink { 12 namespace blink {
13 13
14 struct PaintInfo; 14 struct PaintInfo;
15 class CollapsedBorderValue; 15 class CollapsedBorderValue;
16 class LayoutPoint; 16 class LayoutPoint;
17 class LayoutRect; 17 class LayoutRect;
18 class LayoutTableCell; 18 class LayoutTableCell;
19 class LayoutObject; 19 class LayoutObject;
20 class ComputedStyle; 20 class ComputedStyle;
21 21
22 class TableCellPainter { 22 class TableCellPainter {
23 STACK_ALLOCATED(); 23 STACK_ALLOCATED();
24 public: 24 public:
25 TableCellPainter(const LayoutTableCell& layoutTableCell) : m_layoutTableCell (layoutTableCell) { } 25 TableCellPainter(const LayoutTableCell& layoutTableCell) : m_layoutTableCell (layoutTableCell) { }
26 26
27 void paint(const PaintInfo&, const LayoutPoint&); 27 void paint(const PaintInfo&, const LayoutPoint&);
28 28
29 void paintCollapsedBorders(const PaintInfo&, const LayoutPoint&, const Colla psedBorderValue&); 29 void paintCollapsedBorders(const PaintInfo&, const LayoutPoint&, const Colla psedBorderValue&);
30 void paintBackgroundsBehindCell(const PaintInfo&, const LayoutPoint&, const LayoutObject* backgroundObject, DisplayItem::Type); 30 void paintContainerBackgroundBehindCell(const PaintInfo&, const LayoutPoint& , const LayoutObject& backgroundObject, DisplayItem::Type);
31 void paintBoxDecorationBackground(const PaintInfo&, const LayoutPoint& paint Offset); 31 void paintBoxDecorationBackground(const PaintInfo&, const LayoutPoint& paint Offset);
32 void paintMask(const PaintInfo&, const LayoutPoint& paintOffset); 32 void paintMask(const PaintInfo&, const LayoutPoint& paintOffset);
33 33
34 enum PaintBoundOffsetBehavior { AddOffsetFromParent, DoNotAddOffsetFromParen t }; 34 private:
35 // Returns the bonds of the table cell for painting, offset by paintOffset, and if desired, the offset from the cell 35 LayoutRect paintRectNotIncludingVisualOverflow(const LayoutPoint& paintOffse t);
36 // to its parent. 36 void paintBackground(const PaintInfo&, const LayoutRect&, const LayoutObject & backgroundObject);
37 LayoutRect paintBounds(const LayoutPoint& paintOffset, PaintBoundOffsetBehav ior);
38 37
39 private:
40 const LayoutTableCell& m_layoutTableCell; 38 const LayoutTableCell& m_layoutTableCell;
41 }; 39 };
42 40
43 } // namespace blink 41 } // namespace blink
44 42
45 #endif // TableCellPainter_h 43 #endif // TableCellPainter_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698