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 makeFullscreen()28 bool makeFullscreen() { return true; } closeWindow()29 void closeWindow() { /* Not impl yet */ } setVsync(bool)30 void setVsync(bool) { /* Can't turn off vsync? */ } 31 32 protected: 33 // overrides from SkEventSink 34 virtual bool onEvent(const SkEvent& evt); 35 // overrides from SkWindow 36 virtual void onHandleInval(const SkIRect&); 37 // overrides from SkView 38 virtual void onAddMenu(const SkOSMenu*); 39 virtual void onUpdateMenu(SkOSMenu*); 40 virtual void onSetTitle(const char[]); 41 42 private: 43 void* fHWND; 44 bool fInvalEventIsPending; 45 void* fNotifier; 46 typedef SkWindow INHERITED; 47 }; 48 49 #endif 50