]> git.saurik.com Git - wxWidgets.git/blame - include/wx/cocoa/app.h
Use kCGBlendModeExclusion for wxCOMPOSITION_XOR operation.
[wxWidgets.git] / include / wx / cocoa / app.h
CommitLineData
fb896a32 1/////////////////////////////////////////////////////////////////////////////
80fdcdb9 2// Name: wx/cocoa/app.h
fb896a32
DE
3// Purpose: wxApp class
4// Author: David Elliott
5// Modified by:
6// Created: 2002/11/27
cdd0a08f 7// RCS-ID: $Id$
fb896a32 8// Copyright: (c) 2002 David Elliott
65571936 9// Licence: wxWindows licence
fb896a32
DE
10/////////////////////////////////////////////////////////////////////////////
11
12#ifndef _WX_COCOA_APP_H_
13#define _WX_COCOA_APP_H_
14
047c1182
DE
15typedef struct __CFRunLoopObserver * CFRunLoopObserverRef;
16typedef const struct __CFString * CFStringRef;
17
ef0e9220 18#include "wx/osx/core/cfref.h"
047c1182 19
cdd0a08f
DE
20// ========================================================================
21// wxApp
22// ========================================================================
fb896a32
DE
23// Represents the application. Derive OnInit and declare
24// a new App object to start application
53a2db12 25class WXDLLIMPEXP_CORE wxApp: public wxAppBase
fb896a32
DE
26{
27 DECLARE_DYNAMIC_CLASS(wxApp)
fb896a32
DE
28// ------------------------------------------------------------------------
29// initialization
30// ------------------------------------------------------------------------
31public:
32 wxApp();
047c1182 33 virtual ~wxApp();
fb896a32
DE
34
35// ------------------------------------------------------------------------
36// Cocoa specifics
37// ------------------------------------------------------------------------
38public:
39 inline WX_NSApplication GetNSApplication() { return m_cocoaApp; }
0187ddb4
DE
40 virtual void CocoaDelegate_applicationWillBecomeActive();
41 virtual void CocoaDelegate_applicationDidBecomeActive();
42 virtual void CocoaDelegate_applicationWillResignActive();
43 virtual void CocoaDelegate_applicationDidResignActive();
047c1182
DE
44 virtual void CocoaDelegate_applicationWillUpdate();
45 virtual void CF_ObserveMainRunLoopBeforeWaiting(CFRunLoopObserverRef observer, int activity);
fb896a32
DE
46protected:
47 WX_NSApplication m_cocoaApp;
0187ddb4 48 struct objc_object *m_cocoaAppDelegate;
14fc7eb4 49 WX_NSThread m_cocoaMainThread;
047c1182
DE
50 wxCFRef<CFRunLoopObserverRef> m_cfRunLoopIdleObserver;
51 wxCFRef<CFStringRef> m_cfObservedRunLoopMode;
fb896a32
DE
52
53// ------------------------------------------------------------------------
54// Implementation
55// ------------------------------------------------------------------------
56public:
57 // Implement wxAppBase pure virtuals
e2478fde
VZ
58 virtual void Exit();
59
eb537cfb 60 virtual void WakeUpIdle();
d48b06bd 61
05e2b077 62 virtual bool Initialize(int& argc, wxChar **argv);
94826170 63 virtual void CleanUp();
47f1ad6a
DE
64 virtual bool CallOnInit();
65
d48b06bd 66
fb896a32
DE
67 virtual bool OnInit();
68 virtual bool OnInitGui();
b93d8cc4 69
879180b6
DE
70 // Set true _before_ initializing wx to force embedded mode (no app delegate, etc.)
71 static bool sm_isEmbedded;
fb896a32
DE
72};
73
74#endif // _WX_COCOA_APP_H_