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

Unified Diff: gm/canvasstate.cpp

Issue 249253003: Hide SaveFlags from the public SkCanvas API. (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: Suppress the canvas-state GM. Created 6 years, 8 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « expectations/gm/ignored-tests.txt ('k') | gyp/common_conditions.gypi » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: gm/canvasstate.cpp
diff --git a/gm/canvasstate.cpp b/gm/canvasstate.cpp
index b61ee720d5154729ec573ef824ba7b2efb5a3fd7..f1ae062570fbd60fc1ef2c66d74195405d645424 100644
--- a/gm/canvasstate.cpp
+++ b/gm/canvasstate.cpp
@@ -65,9 +65,15 @@ protected:
virtual void onDraw(SkCanvas* canvas) SK_OVERRIDE {
- SkCanvas::SaveFlags flags[] = { SkCanvas::kMatrix_SaveFlag,
- SkCanvas::kClip_SaveFlag,
- SkCanvas::kMatrixClip_SaveFlag };
+ unsigned flags[] = {
+#ifdef SK_SUPPORT_LEGACY_SAVEFLAGS
+ SkCanvas::kMatrix_SaveFlag,
+ SkCanvas::kClip_SaveFlag,
+ SkCanvas::kMatrixClip_SaveFlag
+#else
+ 0, 0, 0 // placeholders
+#endif
+ };
// columns -- flags
// rows -- permutations of setting the clip and matrix
@@ -86,12 +92,16 @@ protected:
private:
void drawTestPattern(int x, int y, SkCanvas* canvas,
- SkCanvas::SaveFlags flags, bool doClip, bool doScale) {
+ unsigned flags, bool doClip, bool doScale) {
canvas->save();
canvas->translate(SkIntToScalar(x*WIDTH), SkIntToScalar(y*HEIGHT));
canvas->drawRect(fOutlineRect, fStrokePaint);
- canvas->save(flags);
+ canvas->save(
+#ifdef SK_SUPPORT_LEGACY_SAVEFLAGS
+ (SkCanvas::SaveFlags)flags
+#endif
+ );
if(doClip) {
canvas->clipPath(fPath);
}
@@ -132,7 +142,8 @@ protected:
// clear the canvas to red
canvas->drawColor(SK_ColorRED);
-#ifdef SK_SUPPORT_LEGACY_CLIPTOLAYERFLAG
+#if defined(SK_SUPPORT_LEGACY_CLIPTOLAYERFLAG) && defined(SK_SUPPORT_LEGACY_SAVEFLAGS)
+
// both rects should appear
drawTestPattern(canvas, 255, SkCanvas::kARGB_NoClipLayer_SaveFlag);
@@ -152,8 +163,12 @@ protected:
private:
// draw a rect within the layer's bounds and again outside the layer's bounds
- void drawTestPattern(SkCanvas* canvas, U8CPU layerAlpha, SkCanvas::SaveFlags flags) {
- canvas->saveLayerAlpha(&fRect, layerAlpha, flags);
+ void drawTestPattern(SkCanvas* canvas, U8CPU layerAlpha, unsigned flags) {
+ canvas->saveLayerAlpha(&fRect, layerAlpha
+#ifdef SK_SUPPORT_LEGACY_SAVEFLAGS
+ , (SkCanvas::SaveFlags)flags
+#endif
+ );
canvas->drawRect(fRect, fBluePaint);
canvas->translate(0, fRect.height() + 10);
canvas->drawRect(fRect, fBluePaint);
« no previous file with comments | « expectations/gm/ignored-tests.txt ('k') | gyp/common_conditions.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698