remove getTotalClipAsPath, privatize getTotalClip
R=robertphillips@google.com, djsollen@google.com
TBR=robertphilips
Author: reed@google.com
Review URL: https://codereview.chromium.org/546493002
diff --git a/include/core/SkCanvas.h b/include/core/SkCanvas.h
index a619904..3043a3e 100644
--- a/include/core/SkCanvas.h
+++ b/include/core/SkCanvas.h
@@ -37,6 +37,12 @@
class GrContext;
class GrRenderTarget;
+class SkCanvasState;
+
+namespace SkCanvasStateUtils {
+ SkCanvasState* CaptureCanvasState(SkCanvas*);// needs gettotalclip()
+}
+
/** \class SkCanvas
A Canvas encapsulates all of the state about drawing into a device (bitmap).
@@ -1182,10 +1188,6 @@
};
// don't call
- const SkRegion& internal_private_getTotalClip() const;
- // don't call
- void internal_private_getTotalClipAsPath(SkPath*) const;
- // don't call
GrRenderTarget* internal_private_accessTopLayerRenderTarget();
protected:
@@ -1307,7 +1309,9 @@
friend class SkDebugCanvas; // needs experimental fAllowSimplifyClip
friend class SkDeferredDevice; // needs getTopDevice()
friend class SkSurface_Raster; // needs getDevice()
-
+
+ friend SkCanvasState* SkCanvasStateUtils::CaptureCanvasState(SkCanvas*);// needs gettotalclip()
+
SkBaseDevice* createLayerDevice(const SkImageInfo&);
SkBaseDevice* init(SkBaseDevice*);
@@ -1350,6 +1354,9 @@
const char text[], size_t byteLength,
SkScalar x, SkScalar y);
+ // only for canvasutils
+ const SkRegion& internal_private_getTotalClip() const;
+
/* These maintain a cache of the clip bounds in local coordinates,
(converted to 2s-compliment if floats are slow).
*/
diff --git a/src/core/SkCanvas.cpp b/src/core/SkCanvas.cpp
index 2cc86e7..87cadf4 100644
--- a/src/core/SkCanvas.cpp
+++ b/src/core/SkCanvas.cpp
@@ -1682,16 +1682,6 @@
return fMCRec->fRasterClip.forceGetBW();
}
-void SkCanvas::internal_private_getTotalClipAsPath(SkPath* path) const {
- path->reset();
-
- const SkRegion& rgn = fMCRec->fRasterClip.forceGetBW();
- if (rgn.isEmpty()) {
- return;
- }
- (void)rgn.getBoundaryPath(path);
-}
-
GrRenderTarget* SkCanvas::internal_private_accessTopLayerRenderTarget() {
SkBaseDevice* dev = this->getTopDevice();
return dev ? dev->accessRenderTarget() : NULL;