Deprecate SaveFlags use in the public SkCanvas API.
Because we still have internal users for now (to support the deprecated
mode), this CL introduces an external-only variant of deprecation.
Chromium is no longer using the deprecated methods, but Android may need
to suppress SK_ATTR_EXTERNALLY_DEPRECATED warnings.
R=reed@google.com, robertphillips@google.com, scroggo@google.com, bungeman@google.com, mtklein@google.com
Author: fmalita@chromium.org
Review URL: https://codereview.chromium.org/246023008
git-svn-id: http://skia.googlecode.com/svn/trunk@14367 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/core/SkCanvas.cpp b/src/core/SkCanvas.cpp
index 0598528..6c0fc88 100644
--- a/src/core/SkCanvas.cpp
+++ b/src/core/SkCanvas.cpp
@@ -834,6 +834,11 @@
// Do nothing. Subclasses may do something.
}
+int SkCanvas::save() {
+ this->willSave(kMatrixClip_SaveFlag);
+ return this->internalSave(kMatrixClip_SaveFlag);
+}
+
int SkCanvas::save(SaveFlags flags) {
this->willSave(flags);
// call shared impl
@@ -898,9 +903,13 @@
return kFullLayer_SaveLayerStrategy;
}
+int SkCanvas::saveLayer(const SkRect* bounds, const SkPaint* paint) {
+ SaveLayerStrategy strategy = this->willSaveLayer(bounds, paint, kARGB_ClipLayer_SaveFlag);
+ return this->internalSaveLayer(bounds, paint, kARGB_ClipLayer_SaveFlag, false, strategy);
+}
+
int SkCanvas::saveLayer(const SkRect* bounds, const SkPaint* paint,
SaveFlags flags) {
- // Overriding classes may return false to signal that we don't need to create a layer.
SaveLayerStrategy strategy = this->willSaveLayer(bounds, paint, flags);
return this->internalSaveLayer(bounds, paint, flags, false, strategy);
}
@@ -975,6 +984,10 @@
return count;
}
+int SkCanvas::saveLayerAlpha(const SkRect* bounds, U8CPU alpha) {
+ return this->saveLayerAlpha(bounds, alpha, kARGB_ClipLayer_SaveFlag);
+}
+
int SkCanvas::saveLayerAlpha(const SkRect* bounds, U8CPU alpha,
SaveFlags flags) {
if (0xFF == alpha) {