| 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 ObjectPainter_h | 5 #ifndef ObjectPainter_h |
| 6 #define ObjectPainter_h | 6 #define ObjectPainter_h |
| 7 | 7 |
| 8 #include "core/style/ComputedStyleConstants.h" | 8 #include "core/style/ComputedStyleConstants.h" |
| 9 #include "wtf/Vector.h" | 9 #include "wtf/Vector.h" |
| 10 | 10 |
| 11 namespace blink { | 11 namespace blink { |
| 12 | 12 |
| 13 class Color; | 13 class Color; |
| 14 class GraphicsContext; | 14 class GraphicsContext; |
| 15 class LayoutPoint; | 15 class LayoutPoint; |
| 16 class LayoutRect; | 16 class LayoutRect; |
| 17 class LayoutSize; |
| 17 struct PaintInfo; | 18 struct PaintInfo; |
| 18 class LayoutObject; | 19 class LayoutObject; |
| 19 class ComputedStyle; | 20 class ComputedStyle; |
| 20 | 21 |
| 21 class ObjectPainter { | 22 class ObjectPainter { |
| 22 public: | 23 public: |
| 23 ObjectPainter(LayoutObject& layoutObject) : m_layoutObject(layoutObject) { } | 24 ObjectPainter(LayoutObject& layoutObject) : m_layoutObject(layoutObject) { } |
| 24 | 25 |
| 25 void paintOutline(const PaintInfo&, const LayoutRect& objectBounds, const La
youtRect& visualOverflowBounds); | 26 void paintOutline(const PaintInfo&, const LayoutRect& visualOverflowRect, co
nst LayoutSize& objectSize, const LayoutPoint& paintOffset); |
| 26 void paintFocusRing(const PaintInfo&, const ComputedStyle&, const Vector<Lay
outRect>& focusRingRects); | 27 void paintFocusRing(const PaintInfo&, const ComputedStyle&, const Vector<Lay
outRect>& focusRingRects); |
| 27 void addPDFURLRectIfNeeded(const PaintInfo&, const LayoutPoint& paintOffset)
; | 28 void addPDFURLRectIfNeeded(const PaintInfo&, const LayoutPoint& paintOffset)
; |
| 28 | 29 |
| 29 static void drawLineForBoxSide(GraphicsContext*, int x1, int y1, int x2, int
y2, BoxSide, Color, EBorderStyle, int adjbw1, int adjbw2, bool antialias = fals
e); | 30 static void drawLineForBoxSide(GraphicsContext*, int x1, int y1, int x2, int
y2, BoxSide, Color, EBorderStyle, int adjbw1, int adjbw2, bool antialias = fals
e); |
| 30 | 31 |
| 31 static LayoutRect outlineBounds(const LayoutRect& objectBounds, const Comput
edStyle&); | 32 // Given the size in local coordinates, compute the outline bounds without t
he paint offset. |
| 33 static LayoutRect outlineRectForSVG(const LayoutSize& bounds, const Computed
Style&); |
| 32 | 34 |
| 33 private: | 35 private: |
| 34 static void drawDashedOrDottedBoxSide(GraphicsContext*, int x1, int y1, int
x2, int y2, | 36 static void drawDashedOrDottedBoxSide(GraphicsContext*, int x1, int y1, int
x2, int y2, |
| 35 BoxSide, Color, int thickness, EBorderStyle, bool antialias); | 37 BoxSide, Color, int thickness, EBorderStyle, bool antialias); |
| 36 static void drawDoubleBoxSide(GraphicsContext*, int x1, int y1, int x2, int
y2, | 38 static void drawDoubleBoxSide(GraphicsContext*, int x1, int y1, int x2, int
y2, |
| 37 int length, BoxSide, Color, int thickness, int adjacentWidth1, int adjac
entWidth2, bool antialias); | 39 int length, BoxSide, Color, int thickness, int adjacentWidth1, int adjac
entWidth2, bool antialias); |
| 38 static void drawRidgeOrGrooveBoxSide(GraphicsContext*, int x1, int y1, int x
2, int y2, | 40 static void drawRidgeOrGrooveBoxSide(GraphicsContext*, int x1, int y1, int x
2, int y2, |
| 39 BoxSide, Color, EBorderStyle, int adjacentWidth1, int adjacentWidth2, bo
ol antialias); | 41 BoxSide, Color, EBorderStyle, int adjacentWidth1, int adjacentWidth2, bo
ol antialias); |
| 40 static void drawSolidBoxSide(GraphicsContext*, int x1, int y1, int x2, int y
2, | 42 static void drawSolidBoxSide(GraphicsContext*, int x1, int y1, int x2, int y
2, |
| 41 BoxSide, Color, int adjacentWidth1, int adjacentWidth2, bool antialias); | 43 BoxSide, Color, int adjacentWidth1, int adjacentWidth2, bool antialias); |
| 42 | 44 |
| 43 LayoutObject& m_layoutObject; | 45 LayoutObject& m_layoutObject; |
| 44 }; | 46 }; |
| 45 | 47 |
| 46 } // namespace blink | 48 } // namespace blink |
| 47 | 49 |
| 48 #endif | 50 #endif |
| OLD | NEW |