gm: add a flag to force perspective usage in all gms
BUG=
R=reed@google.com, epoger@google.com, borenet@google.com
Author: edisonn@google.com
Review URL: https://chromiumcodereview.appspot.com/23587029
git-svn-id: http://skia.googlecode.com/svn/trunk@11487 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/gm/gm.h b/gm/gm.h
index 3a65160..bf1a411 100644
--- a/gm/gm.h
+++ b/gm/gm.h
@@ -74,7 +74,9 @@
// Most GMs will return the identity matrix, but some PDFs tests
// require setting the initial transform.
SkMatrix getInitialTransform() const {
- return this->onGetInitialTransform();
+ SkMatrix matrix = fStarterMatrix;
+ matrix.preConcat(this->onGetInitialTransform());
+ return matrix;
}
SkColor getBGColor() const { return fBGColor; }
@@ -106,6 +108,11 @@
static GrContext* GetGr(/*very nearly const*/ SkCanvas*);
#endif
+ const SkMatrix& getStarterMatrix() { return fStarterMatrix; }
+ void setStarterMatrix(const SkMatrix& matrix) {
+ fStarterMatrix = matrix;
+ }
+
protected:
static SkString gResourcePath;
@@ -123,6 +130,7 @@
bool fCanvasIsDeferred; // work-around problem in srcmode.cpp
bool fHaveCalledOnceBeforeDraw;
bool fIgnoreFailures; // whether to file any failures as failure-ignored
+ SkMatrix fStarterMatrix;
};
typedef SkTRegistry<GM*(*)(void*)> GMRegistry;