retool so we don't need to call SkCanvas::setDevice
Review URL: https://codereview.appspot.com/6591054
git-svn-id: http://skia.googlecode.com/svn/trunk@5759 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/samplecode/SampleApp.h b/samplecode/SampleApp.h
index abd8ac7..85392e0 100644
--- a/samplecode/SampleApp.h
+++ b/samplecode/SampleApp.h
@@ -58,9 +58,7 @@
// called before drawing. should install correct device
// type on the canvas. Will skip drawing if returns false.
- virtual bool prepareCanvas(DeviceType dType,
- SkCanvas* canvas,
- SampleWindow* win) = 0;
+ virtual SkCanvas* createCanvas(DeviceType dType, SampleWindow* win) = 0;
// called after drawing, should get the results onto the
// screen.
@@ -84,6 +82,17 @@
SampleWindow(void* hwnd, int argc, char** argv, DeviceManager*);
virtual ~SampleWindow();
+ virtual SkCanvas* createCanvas() SK_OVERRIDE {
+ SkCanvas* canvas = NULL;
+ if (fDevManager) {
+ canvas = fDevManager->createCanvas(fDeviceType, this);
+ }
+ if (NULL == canvas) {
+ canvas = this->INHERITED::createCanvas();
+ }
+ return canvas;
+ }
+
virtual void draw(SkCanvas* canvas);
void setDeviceType(DeviceType type);