1
/////////////////////////////////////////////////////////////////////////////
2
// Name: wx/cocoa/app.h
3
// Purpose: wxApp class
4
// Author: David Elliott
7
// RCS-ID: $Id: app.h 67254 2011-03-20 00:14:35Z DS $
8
// Copyright: (c) 2002 David Elliott
9
// Licence: wxWindows licence
10
/////////////////////////////////////////////////////////////////////////////
12
#ifndef _WX_COCOA_APP_H_
13
#define _WX_COCOA_APP_H_
15
typedef struct __CFRunLoopObserver * CFRunLoopObserverRef;
16
typedef const struct __CFString * CFStringRef;
18
#include "wx/osx/core/cfref.h"
20
// ========================================================================
22
// ========================================================================
23
// Represents the application. Derive OnInit and declare
24
// a new App object to start application
25
class WXDLLIMPEXP_CORE wxApp: public wxAppBase
27
DECLARE_DYNAMIC_CLASS(wxApp)
28
// ------------------------------------------------------------------------
30
// ------------------------------------------------------------------------
35
// ------------------------------------------------------------------------
37
// ------------------------------------------------------------------------
39
inline WX_NSApplication GetNSApplication() { return m_cocoaApp; }
40
virtual void CocoaDelegate_applicationWillBecomeActive();
41
virtual void CocoaDelegate_applicationDidBecomeActive();
42
virtual void CocoaDelegate_applicationWillResignActive();
43
virtual void CocoaDelegate_applicationDidResignActive();
44
virtual void CocoaDelegate_applicationWillUpdate();
45
virtual void CF_ObserveMainRunLoopBeforeWaiting(CFRunLoopObserverRef observer, int activity);
47
WX_NSApplication m_cocoaApp;
48
struct objc_object *m_cocoaAppDelegate;
49
WX_NSThread m_cocoaMainThread;
50
wxCFRef<CFRunLoopObserverRef> m_cfRunLoopIdleObserver;
51
wxCFRef<CFStringRef> m_cfObservedRunLoopMode;
53
// ------------------------------------------------------------------------
55
// ------------------------------------------------------------------------
57
// Implement wxAppBase pure virtuals
60
virtual void WakeUpIdle();
62
virtual bool Initialize(int& argc, wxChar **argv);
63
virtual void CleanUp();
64
virtual bool CallOnInit();
67
virtual bool OnInit();
68
virtual bool OnInitGui();
70
// Set true _before_ initializing wx to force embedded mode (no app delegate, etc.)
71
static bool sm_isEmbedded;
74
#endif // _WX_COCOA_APP_H_