diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/views/SkOSWindow_Mac_Cocoa.h | 36 | ||||
-rw-r--r-- | include/views/SkWindow.h | 4 |
2 files changed, 40 insertions, 0 deletions
diff --git a/include/views/SkOSWindow_Mac_Cocoa.h b/include/views/SkOSWindow_Mac_Cocoa.h new file mode 100644 index 0000000000..612edc3e48 --- /dev/null +++ b/include/views/SkOSWindow_Mac_Cocoa.h @@ -0,0 +1,36 @@ +#ifndef SkOSWindow_MacCocoa_DEFINED +#define SkOSWindow_MacCocoa_DEFINED + +#include "SkWindow.h" + +class SkOSWindow : public SkWindow { +public: + SkOSWindow(void* hwnd); + ~SkOSWindow(); + void* getHWND() const { return fHWND; } + + virtual bool onDispatchClick(int x, int y, Click::State state, + void* owner); + void detachGL(); + bool attachGL(); + void presentGL(); + +protected: + // overrides from SkEventSink + virtual bool onEvent(const SkEvent& evt); + // overrides from SkWindow + virtual void onHandleInval(const SkIRect&); + // overrides from SkView + virtual void onAddMenu(const SkOSMenu*); + virtual void onUpdateMenu(const SkOSMenu*); + virtual void onSetTitle(const char[]); + +private: + void* fHWND; + bool fInvalEventIsPending; + void* fNotifier; + void* fGLContext; + typedef SkWindow INHERITED; +}; + +#endif
\ No newline at end of file diff --git a/include/views/SkWindow.h b/include/views/SkWindow.h index eda928c948..6fc72cb912 100644 --- a/include/views/SkWindow.h +++ b/include/views/SkWindow.h @@ -105,7 +105,11 @@ private: #ifdef SK_USE_WXWIDGETS #include "SkOSWindow_wxwidgets.h" #elif defined(SK_BUILD_FOR_MAC) +#ifdef Sk_MAC_COCOA + #include "SkOSWindow_Mac_Cocoa.h" +#else #include "SkOSWindow_Mac.h" +#endif #elif defined(SK_BUILD_FOR_WIN) #include "SkOSWindow_Win.h" #elif defined(ANDROID) |