]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/cocoa/app.h
Added DetachOldLog to avoid destruction of old log target
[wxWidgets.git] / include / wx / cocoa / app.h
index c2b2ebc1ff31795f1d319490fe468e8576f17ad8..326b317d02382250b1d6a4348651ec6388d66b06 100644 (file)
@@ -6,12 +6,17 @@
 // Created:     2002/11/27
 // RCS-ID:      $Id$
 // Copyright:   (c) 2002 David Elliott
-// Licence:     wxWidgets licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_COCOA_APP_H_
 #define _WX_COCOA_APP_H_
 
+typedef struct __CFRunLoopObserver * CFRunLoopObserverRef;
+typedef const struct __CFString * CFStringRef;
+
+#include "wx/mac/corefoundation/cfref.h"
+
 // ========================================================================
 // wxApp
 // ========================================================================
@@ -26,7 +31,7 @@ class WXDLLEXPORT wxApp: public wxAppBase
 // ------------------------------------------------------------------------
 public:
     wxApp();
-    virtual ~wxApp() {}
+    virtual ~wxApp();
 
 // ------------------------------------------------------------------------
 // Cocoa specifics
@@ -37,10 +42,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
@@ -65,6 +74,8 @@ public:
     bool IsInAssert() const { return m_isInAssert; }
 #endif // __WXDEBUG__
 
+    // Set true _before_ initializing wx to force embedded mode (no app delegate, etc.)
+    static bool sm_isEmbedded;
 private:
 #ifdef __WXDEBUG__
     bool m_isInAssert;