De-virtualize SkCanvas matrix ops.
This moves the matrix management logic into non-virtual SkCanvas
methods, and turns the virtuals into protected notifiers.
R=reed@google.com, robertphillips@google.com, bsalomon@google.com
BUG=skia:2297
Author: fmalita@chromium.org
Review URL: https://codereview.chromium.org/195793012
git-svn-id: http://skia.googlecode.com/svn/trunk@13799 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/utils/SkCanvasStack.cpp b/src/utils/SkCanvasStack.cpp
index d85f34b..87e8f65 100644
--- a/src/utils/SkCanvasStack.cpp
+++ b/src/utils/SkCanvasStack.cpp
@@ -65,7 +65,7 @@
* canvas unlike all other matrix operations (i.e. translate, scale, etc) which
* just pre-concatenate with the existing matrix.
*/
-void SkCanvasStack::setMatrix(const SkMatrix& matrix) {
+void SkCanvasStack::didSetMatrix(const SkMatrix& matrix) {
SkASSERT(fList.count() == fCanvasData.count());
for (int i = 0; i < fList.count(); ++i) {
@@ -74,7 +74,7 @@
SkIntToScalar(-fCanvasData[i].origin.y()));
fList[i]->setMatrix(tempMatrix);
}
- this->SkCanvas::setMatrix(matrix);
+ this->SkCanvas::didSetMatrix(matrix);
}
void SkCanvasStack::onClipRect(const SkRect& r, SkRegion::Op op, ClipEdgeStyle edgeStyle) {