Home | History | Annotate | Download | only in viewer
      1 /*
      2 * Copyright 2016 Google Inc.
      3 *
      4 * Use of this source code is governed by a BSD-style license that can be
      5 * found in the LICENSE file.
      6 */
      7 
      8 #ifndef SampleSlide_DEFINED
      9 #define SampleSlide_DEFINED
     10 
     11 #include "Slide.h"
     12 #include "SampleCode.h"
     13 
     14 class SampleSlide : public Slide {
     15 public:
     16     SampleSlide(const SkViewFactory* factory);
     17     ~SampleSlide() override;
     18 
     19     void draw(SkCanvas* canvas) override;
     20     void load(SkScalar winWidth, SkScalar winHeight) override;
     21     void unload() override;
     22     bool animate(const SkAnimTimer& timer) override {
     23         if (fView && SampleView::IsSampleView(fView.get())) {
     24             return ((SampleView*)fView.get())->animate(timer);
     25         }
     26         return false;
     27     }
     28 
     29     bool onChar(SkUnichar c) override;
     30     bool onMouse(SkScalar x, SkScalar y, sk_app::Window::InputState state,
     31                  uint32_t modifiers) override;
     32 
     33 private:
     34     const SkViewFactory*   fViewFactory;
     35     sk_sp<SkView>          fView;
     36     SkView::Click*         fClick;
     37 };
     38 
     39 #endif
     40