blob: 4b91f39f74654ac732ce0a1618d2229fa5ea251c [file] [log] [blame]
jvanverthc7027ab2016-06-16 09:52:35 -07001/*
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
14class SampleSlide : public Slide {
15public:
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 {
Christopher Dalton443ec1b2017-02-24 13:22:53 -070023 if (fView && SampleView::IsSampleView(fView.get())) {
24 return ((SampleView*)fView.get())->animate(timer);
jvanverthc7027ab2016-06-16 09:52:35 -070025 }
26 return false;
27 }
28
Jim Van Verth6f449692017-02-14 15:16:46 -050029 bool onChar(SkUnichar c) override;
Jim Van Verthc9e7f9c2017-11-02 09:46:49 -040030 bool onMouse(SkScalar x, SkScalar y, sk_app::Window::InputState state,
31 uint32_t modifiers) override;
Jim Van Verth6f449692017-02-14 15:16:46 -050032
jvanverthc7027ab2016-06-16 09:52:35 -070033private:
34 const SkViewFactory* fViewFactory;
Christopher Dalton443ec1b2017-02-24 13:22:53 -070035 sk_sp<SkView> fView;
Jim Van Verthc9e7f9c2017-11-02 09:46:49 -040036 SkView::Click* fClick;
jvanverthc7027ab2016-06-16 09:52:35 -070037};
38
39#endif