move GMSampleView into its own cpp

BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/947733002
diff --git a/samplecode/GMSampleView.h b/samplecode/GMSampleView.h
index adaf23d..f97ce92 100644
--- a/samplecode/GMSampleView.h
+++ b/samplecode/GMSampleView.h
@@ -1,4 +1,3 @@
-
 /*
  * Copyright 2011 Google Inc.
  *
@@ -6,7 +5,6 @@
  * found in the LICENSE file.
  */
 
-
 #ifndef GMSampleView_DEFINED
 #define GMSampleView_DEFINED
 
@@ -19,60 +17,17 @@
     typedef skiagm::GM GM;
 
 public:
-    GMSampleView(GM* gm)
-    : fShowSize(false), fGM(gm) {}
+    GMSampleView(GM*);
+    virtual ~GMSampleView();
 
-    virtual ~GMSampleView() {
-        delete fGM;
-    }
-
-    static SkEvent* NewShowSizeEvt(bool doShowSize) {
-        SkEvent* evt = SkNEW_ARGS(SkEvent, ("GMSampleView::showSize"));
-        evt->setFast32(doShowSize);
-        return evt;
-    }
+    static SkEvent* NewShowSizeEvt(bool doShowSize);
 
 protected:
-    virtual bool onQuery(SkEvent* evt) {
-        if (SampleCode::TitleQ(*evt)) {
-            SkString name("GM:");
-            name.append(fGM->getName());
-            SampleCode::TitleR(evt, name.c_str());
-            return true;
-        }
-        return this->INHERITED::onQuery(evt);
-    }
-
-    bool onEvent(const SkEvent& evt) SK_OVERRIDE {
-        if (evt.isType("GMSampleView::showSize")) {
-            fShowSize = SkToBool(evt.getFast32());
-            return true;
-        }
-        return this->INHERITED::onEvent(evt);
-    }
-
-    virtual void onDrawContent(SkCanvas* canvas) {
-        {
-            SkAutoCanvasRestore acr(canvas, fShowSize);
-            fGM->drawContent(canvas);
-        }
-        if (fShowSize) {
-            SkISize size = fGM->getISize();
-            SkRect r = SkRect::MakeWH(SkIntToScalar(size.width()),
-                                      SkIntToScalar(size.height()));
-            SkPaint paint;
-            paint.setColor(0x40FF8833);
-            canvas->drawRect(r, paint);
-        }
-    }
-
-    virtual void onDrawBackground(SkCanvas* canvas) {
-        fGM->drawBackground(canvas);
-    }
-
-    bool onAnimate(const SkAnimTimer& timer) SK_OVERRIDE {
-        return fGM->animate(timer);
-    }
+    bool onQuery(SkEvent*) SK_OVERRIDE;
+    bool onEvent(const SkEvent&) SK_OVERRIDE;
+    void onDrawContent(SkCanvas*) SK_OVERRIDE;
+    void onDrawBackground(SkCanvas*) SK_OVERRIDE;
+    bool onAnimate(const SkAnimTimer&) SK_OVERRIDE;
 
 private:
     GM* fGM;