]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/cocoa/app.h
Add wxHAS_BITMAPTOGGLEBUTTON and test for it in the unit test.
[wxWidgets.git] / include / wx / cocoa / app.h
index d0e7c782614656374a41b6e1a4d07085283c67c2..2f30970f7a252a326323b8c03e043dc26bf7a51e 100644 (file)
 #ifndef _WX_COCOA_APP_H_
 #define _WX_COCOA_APP_H_
 
+typedef struct __CFRunLoopObserver * CFRunLoopObserverRef;
+typedef const struct __CFString * CFStringRef;
+
+#include "wx/osx/core/cfref.h"
+
 // ========================================================================
 // wxApp
 // ========================================================================
 // Represents the application. Derive OnInit and declare
 // a new App object to start application
-class WXDLLEXPORT wxApp: public wxAppBase
+class WXDLLIMPEXP_CORE wxApp: public wxAppBase
 {
     DECLARE_DYNAMIC_CLASS(wxApp)
-    DECLARE_EVENT_TABLE()
 // ------------------------------------------------------------------------
 // initialization
 // ------------------------------------------------------------------------
 public:
     wxApp();
-    virtual ~wxApp() {}
+    virtual ~wxApp();
 
 // ------------------------------------------------------------------------
 // Cocoa specifics
@@ -37,10 +41,14 @@ public:
     virtual void CocoaDelegate_applicationDidBecomeActive();
     virtual void CocoaDelegate_applicationWillResignActive();
     virtual void CocoaDelegate_applicationDidResignActive();
+    virtual void CocoaDelegate_applicationWillUpdate();
+    virtual void CF_ObserveMainRunLoopBeforeWaiting(CFRunLoopObserverRef observer, int activity);
 protected:
     WX_NSApplication m_cocoaApp;
     struct objc_object *m_cocoaAppDelegate;
     WX_NSThread m_cocoaMainThread;
+    wxCFRef<CFRunLoopObserverRef> m_cfRunLoopIdleObserver;
+    wxCFRef<CFStringRef> m_cfObservedRunLoopMode;
 
 // ------------------------------------------------------------------------
 // Implementation
@@ -49,26 +57,18 @@ public:
     // Implement wxAppBase pure virtuals
     virtual void Exit();
 
-    virtual bool Yield(bool onlyIfNeeded = FALSE);
     virtual void WakeUpIdle();
-    
+
     virtual bool Initialize(int& argc, wxChar **argv);
     virtual void CleanUp();
     virtual bool CallOnInit();
 
-    
+
     virtual bool OnInit();
     virtual bool OnInitGui();
 
-#ifdef __WXDEBUG__
-    virtual void OnAssert(const wxChar *file, int line, const wxChar *cond, const wxChar *msg);
-    bool IsInAssert() const { return m_isInAssert; }
-#endif // __WXDEBUG__
-
-private:
-#ifdef __WXDEBUG__
-    bool m_isInAssert;
-#endif // __WXDEBUG__
+    // Set true _before_ initializing wx to force embedded mode (no app delegate, etc.)
+    static bool sm_isEmbedded;
 };
 
 #endif // _WX_COCOA_APP_H_