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

Side by Side Diff: include/core/SkCanvas.h

Issue 22875008: Prevent picture recording from over optimizing the culling of clips. (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: Created 7 years, 4 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 | « gyp/gmslides.gypi ('k') | src/core/SkPictureRecord.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 1
2 /* 2 /*
3 * Copyright 2006 The Android Open Source Project 3 * Copyright 2006 The Android Open Source Project
4 * 4 *
5 * Use of this source code is governed by a BSD-style license that can be 5 * Use of this source code is governed by a BSD-style license that can be
6 * found in the LICENSE file. 6 * found in the LICENSE file.
7 */ 7 */
8 8
9 9
10 #ifndef SkCanvas_DEFINED 10 #ifndef SkCanvas_DEFINED
(...skipping 221 matching lines...) Expand 10 before | Expand all | Expand 10 after
232 kARGB_NoClipLayer_SaveFlag = 0x0F, 232 kARGB_NoClipLayer_SaveFlag = 0x0F,
233 kARGB_ClipLayer_SaveFlag = 0x1F 233 kARGB_ClipLayer_SaveFlag = 0x1F
234 }; 234 };
235 235
236 /** This call saves the current matrix, clip, and drawFilter, and pushes a 236 /** This call saves the current matrix, clip, and drawFilter, and pushes a
237 copy onto a private stack. Subsequent calls to translate, scale, 237 copy onto a private stack. Subsequent calls to translate, scale,
238 rotate, skew, concat or clipRect, clipPath, and setDrawFilter all 238 rotate, skew, concat or clipRect, clipPath, and setDrawFilter all
239 operate on this copy. 239 operate on this copy.
240 When the balancing call to restore() is made, the previous matrix, clip, 240 When the balancing call to restore() is made, the previous matrix, clip,
241 and drawFilter are restored. 241 and drawFilter are restored.
242 @param flags The flags govern what portion of the Matrix/Clip/drawFilter
243 state the save (and matching restore) effect. For example,
244 if only kMatrix is specified, then only the matrix state
245 will be pushed and popped. Likewise for the clip if kClip
246 is specified. However, the drawFilter is always affected
247 by calls to save/restore.
242 @return The value to pass to restoreToCount() to balance this save() 248 @return The value to pass to restoreToCount() to balance this save()
243 */ 249 */
244 virtual int save(SaveFlags flags = kMatrixClip_SaveFlag); 250 virtual int save(SaveFlags flags = kMatrixClip_SaveFlag);
245 251
246 /** This behaves the same as save(), but in addition it allocates an 252 /** This behaves the same as save(), but in addition it allocates an
247 offscreen bitmap. All drawing calls are directed there, and only when 253 offscreen bitmap. All drawing calls are directed there, and only when
248 the balancing call to restore() is made is that offscreen transfered to 254 the balancing call to restore() is made is that offscreen transfered to
249 the canvas (or the previous layer). 255 the canvas (or the previous layer).
250 @param bounds (may be null) This rect, if non-null, is used as a hint to 256 @param bounds (may be null) This rect, if non-null, is used as a hint to
251 limit the size of the offscreen, and thus drawing may be 257 limit the size of the offscreen, and thus drawing may be
(...skipping 918 matching lines...) Expand 10 before | Expand all | Expand 10 after
1170 if (NULL != fCanvas) { 1176 if (NULL != fCanvas) {
1171 fCanvas->endCommentGroup(); 1177 fCanvas->endCommentGroup();
1172 } 1178 }
1173 } 1179 }
1174 1180
1175 private: 1181 private:
1176 SkCanvas* fCanvas; 1182 SkCanvas* fCanvas;
1177 }; 1183 };
1178 1184
1179 #endif 1185 #endif
OLDNEW
« no previous file with comments | « gyp/gmslides.gypi ('k') | src/core/SkPictureRecord.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698