1 2 /* 3 * Copyright 2011 Google Inc. 4 * 5 * Use of this source code is governed by a BSD-style license that can be 6 * found in the LICENSE file. 7 */ 8 #ifndef SkOSWindow_iOS_DEFINED 9 #define SkOSWindow_iOS_DEFINED 10 11 #include "SkWindow.h" 12 13 class SkOSWindow : public SkWindow { 14 public: 15 SkOSWindow(void* hwnd); 16 ~SkOSWindow(); getHWND()17 void* getHWND() const { return fHWND; } 18 19 enum SkBackEndTypes { 20 kNone_BackEndType, 21 kNativeGL_BackEndType, 22 }; 23 24 void detach(); 25 bool attach(SkBackEndTypes attachType, int msaaSampleCount, AttachmentInfo*); 26 void present(); 27 28 protected: 29 // overrides from SkEventSink 30 virtual bool onEvent(const SkEvent& evt); 31 // overrides from SkWindow 32 virtual void onHandleInval(const SkIRect&); 33 // overrides from SkView 34 virtual void onAddMenu(const SkOSMenu*); 35 virtual void onUpdateMenu(SkOSMenu*); 36 virtual void onSetTitle(const char[]); 37 38 private: 39 void* fHWND; 40 bool fInvalEventIsPending; 41 void* fNotifier; 42 typedef SkWindow INHERITED; 43 }; 44 45 #endif 46