1 /* 2 * Copyright 2015 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 9 #ifndef VisualModule_DEFINED 10 #define VisualModule_DEFINED 11 12 #include "SkRefCnt.h" 13 14 class SkCanvas; 15 16 /* 17 * VisualModule is the base class for all of the various types of activities VisualBench supports. 18 * 19 * The common theme tying these all together is they need to display an image to the screen. Later, 20 * on we some modules will also be interactive 21 */ 22 class VisualModule : public SkRefCnt { 23 public: ~VisualModule()24 virtual ~VisualModule() {} 25 26 virtual void draw(SkCanvas* canvas)=0; 27 28 virtual bool onHandleChar(SkUnichar unichar) = 0; 29 30 private: 31 typedef SkRefCnt INHERITED; 32 }; 33 34 #endif 35