X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6b8ef0b35d674bc262eb2005ac1321762c831d31..8d40c05f411b794cce6bddb835be30d7ba4d643a:/include/wx/osx/cocoa/evtloop.h?ds=inline diff --git a/include/wx/osx/cocoa/evtloop.h b/include/wx/osx/cocoa/evtloop.h index 63c565721c..c388d32ce6 100644 --- a/include/wx/osx/cocoa/evtloop.h +++ b/include/wx/osx/cocoa/evtloop.h @@ -11,48 +11,38 @@ #ifndef _WX_OSX_COCOA_EVTLOOP_H_ #define _WX_OSX_COCOA_EVTLOOP_H_ -class WXDLLIMPEXP_BASE wxGUIEventLoop : public wxEventLoopManual +class WXDLLIMPEXP_BASE wxGUIEventLoop : public wxCFEventLoop { public: - typedef wxMacEventLoopSource Source; - wxGUIEventLoop(); - - // implement/override base class pure virtual - virtual bool Pending() const; - virtual bool Dispatch(); - virtual int DispatchTimeout(unsigned long timeout); + ~wxGUIEventLoop(); + + void BeginModalSession( wxWindow* modalWindow ); + + void EndModalSession(); virtual void WakeUp(); - virtual bool YieldFor(long eventsToProcess); - -#if wxUSE_EVENTLOOP_SOURCE - virtual wxMacEventLoopSource* CreateSource() const - { - return new wxMacEventLoopSource(); - } - - virtual wxMacEventLoopSource* CreateSource(int res, - wxEventLoopSourceHandler* handler, - int flags) const; - - virtual wxMacEventLoopSource* CreateSource(CFRunLoopSourceRef res, - wxEventLoopSourceHandler* handler, - int flags) const - { - return new wxMacEventLoopSource(res, handler, flags); - } -#endif + void OSXUseLowLevelWakeup(bool useIt) + { m_osxLowLevelWakeUp = useIt ; } + protected: -#if wxUSE_EVENTLOOP_SOURCE - // adding/removing sources - virtual bool DoAddSource(wxAbstractEventLoopSource* source); - virtual bool DoRemoveSource(wxAbstractEventLoopSource* source); -#endif - -private: - double m_sleepTime; + virtual int DoDispatchTimeout(unsigned long timeout); + + virtual void OSXDoRun(); + virtual void OSXDoStop(); + + virtual CFRunLoopRef CFGetCurrentRunLoop() const; + + void* m_modalSession; + + wxWindow* m_modalWindow; + + WXWindow m_dummyWindow; + + int m_modalNestedLevel; + + bool m_osxLowLevelWakeUp; }; #endif // _WX_OSX_COCOA_EVTLOOP_H_