add onOnceBeforeDraw() virtual, so gm's can easily perform lazy initialization
git-svn-id: http://skia.googlecode.com/svn/trunk@6559 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/gm/gm.cpp b/gm/gm.cpp
index 1ccec9f..c1e75e9 100644
--- a/gm/gm.cpp
+++ b/gm/gm.cpp
@@ -13,6 +13,7 @@
GM::GM() {
fBGColor = SK_ColorWHITE;
fCanvasIsDeferred = false;
+ fHaveCalledOnceBeforeDraw = false;
}
GM::~GM() {}
@@ -22,10 +23,18 @@
}
void GM::drawContent(SkCanvas* canvas) {
+ if (!fHaveCalledOnceBeforeDraw) {
+ fHaveCalledOnceBeforeDraw = true;
+ this->onOnceBeforeDraw();
+ }
this->onDraw(canvas);
}
void GM::drawBackground(SkCanvas* canvas) {
+ if (!fHaveCalledOnceBeforeDraw) {
+ fHaveCalledOnceBeforeDraw = true;
+ this->onOnceBeforeDraw();
+ }
this->onDrawBackground(canvas);
}