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

Side by Side Diff: Source/platform/graphics/paint/ClipRecorder.h

Issue 1144203004: Allow certain SP recorder classes to defer their "begin" operation. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 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 | Annotate | Revision Log
« no previous file with comments | « Source/core/svg/graphics/SVGImage.cpp ('k') | Source/platform/graphics/paint/ClipRecorder.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 ClipRecorder_h 5 #ifndef ClipRecorder_h
6 #define ClipRecorder_h 6 #define ClipRecorder_h
7 7
8 #include "SkRegion.h" 8 #include "SkRegion.h"
9 #include "platform/geometry/LayoutRect.h" 9 #include "platform/geometry/LayoutRect.h"
10 #include "platform/graphics/paint/DisplayItem.h" 10 #include "platform/graphics/paint/DisplayItem.h"
11 11
12 namespace blink { 12 namespace blink {
13 13
14 class GraphicsContext; 14 class GraphicsContext;
15 15
16 class PLATFORM_EXPORT ClipRecorder { 16 class PLATFORM_EXPORT ClipRecorder {
17 WTF_MAKE_FAST_ALLOCATED(ClipRecorder); 17 WTF_MAKE_FAST_ALLOCATED(ClipRecorder);
18 public: 18 public:
19 ClipRecorder(GraphicsContext&, const DisplayItemClientWrapper&, DisplayItem: :Type);
19 ClipRecorder(GraphicsContext&, const DisplayItemClientWrapper&, DisplayItem: :Type, const LayoutRect& clipRect, SkRegion::Op = SkRegion::kIntersect_Op); 20 ClipRecorder(GraphicsContext&, const DisplayItemClientWrapper&, DisplayItem: :Type, const LayoutRect& clipRect, SkRegion::Op = SkRegion::kIntersect_Op);
20 ~ClipRecorder(); 21 ~ClipRecorder();
22
23 void begin(const LayoutRect& clipRect, SkRegion::Op = SkRegion::kIntersect_O p);
21 private: 24 private:
22 DisplayItemClientWrapper m_client; 25 DisplayItemClientWrapper m_client;
23 GraphicsContext& m_context; 26 GraphicsContext& m_context;
24 DisplayItem::Type m_type; 27 DisplayItem::Type m_type;
28 bool m_engaged;
25 }; 29 };
26 30
27 } // namespace blink 31 } // namespace blink
28 32
29 #endif // ClipRecorder_h 33 #endif // ClipRecorder_h
OLDNEW
« no previous file with comments | « Source/core/svg/graphics/SVGImage.cpp ('k') | Source/platform/graphics/paint/ClipRecorder.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698