]> git.saurik.com Git - wxWidgets.git/blame - include/wx/motif/app.h
Better name for wxXmlResource::GetDirection() argument.
[wxWidgets.git] / include / wx / motif / app.h
CommitLineData
9b6dbb09 1/////////////////////////////////////////////////////////////////////////////
925f7740 2// Name: wx/motif/app.h
9b6dbb09
JS
3// Purpose: wxApp class
4// Author: Julian Smart
5// Modified by:
6// Created: 17/09/98
9b6dbb09 7// Copyright: (c) Julian Smart
65571936 8// Licence: wxWindows licence
9b6dbb09
JS
9/////////////////////////////////////////////////////////////////////////////
10
11#ifndef _WX_APP_H_
12#define _WX_APP_H_
13
ee31c392
VZ
14// ----------------------------------------------------------------------------
15// headers
16// ----------------------------------------------------------------------------
17
9b6dbb09 18#include "wx/event.h"
bdcade0a 19#include "wx/hashmap.h"
9b6dbb09 20
ee31c392
VZ
21// ----------------------------------------------------------------------------
22// forward declarations
23// ----------------------------------------------------------------------------
24
b5dbe15d
VS
25class WXDLLIMPEXP_FWD_CORE wxFrame;
26class WXDLLIMPEXP_FWD_CORE wxWindow;
27class WXDLLIMPEXP_FWD_CORE wxApp;
28class WXDLLIMPEXP_FWD_CORE wxKeyEvent;
4f7d425f 29class WXDLLIMPEXP_FWD_BASE wxLog;
b5dbe15d
VS
30class WXDLLIMPEXP_FWD_CORE wxEventLoop;
31class WXDLLIMPEXP_FWD_CORE wxXVisualInfo;
32class WXDLLIMPEXP_FWD_CORE wxPerDisplayData;
9b6dbb09 33
ee31c392
VZ
34// ----------------------------------------------------------------------------
35// the wxApp class for Motif - see wxAppBase for more details
36// ----------------------------------------------------------------------------
9b6dbb09 37
bdcade0a
MB
38WX_DECLARE_VOIDPTR_HASH_MAP( wxPerDisplayData*, wxPerDisplayDataMap );
39
53a2db12 40class WXDLLIMPEXP_CORE wxApp : public wxAppBase
9b6dbb09 41{
83df96d6 42 DECLARE_DYNAMIC_CLASS(wxApp)
925f7740 43
ee31c392
VZ
44public:
45 wxApp();
7e1bcfa8 46 virtual ~wxApp();
925f7740 47
ee31c392
VZ
48 // override base class (pure) virtuals
49 // -----------------------------------
925f7740 50
ee31c392 51 virtual int MainLoop();
e2478fde
VZ
52
53 virtual void Exit();
54
e2478fde 55 virtual void WakeUpIdle(); // implemented in motif/evtloop.cpp
925f7740 56
ee31c392
VZ
57 // implementation from now on
58 // --------------------------
925f7740 59
9b6dbb09 60protected:
ee31c392 61 bool m_showOnInit;
925f7740 62
9b6dbb09 63public:
ee31c392 64 // Implementation
05e2b077 65 virtual bool Initialize(int& argc, wxChar **argv);
94826170 66 virtual void CleanUp();
925f7740 67
ee31c392
VZ
68 // Motif-specific
69 WXAppContext GetAppContext() const { return m_appContext; }
eb6fa4b4 70 WXWidget GetTopLevelWidget();
5a2e3d8c 71 WXWidget GetTopLevelRealizedWidget();
72cdf4c9 72 WXColormap GetMainColormap(WXDisplay* display);
ee31c392 73 WXDisplay* GetInitialDisplay() const { return m_initialDisplay; }
eb6fa4b4
MB
74
75 void SetTopLevelWidget(WXDisplay* display, WXWidget widget);
5a2e3d8c
MB
76 void SetTopLevelRealizedWidget(WXDisplay* display,
77 WXWidget widget);
eb6fa4b4 78
ee31c392
VZ
79 // This handler is called when a property change event occurs
80 virtual void HandlePropertyChange(WXEvent *event);
9ce8d6a2
MB
81
82 wxXVisualInfo* GetVisualInfo(WXDisplay* display);
83
7e1bcfa8 84private:
ee31c392
VZ
85 // Motif-specific
86 WXAppContext m_appContext;
ee31c392
VZ
87 WXColormap m_mainColormap;
88 WXDisplay* m_initialDisplay;
eb6fa4b4 89 wxPerDisplayDataMap* m_perDisplayData;
9b6dbb09
JS
90};
91
9b6dbb09 92#endif
83df96d6 93// _WX_APP_H_