]> git.saurik.com Git - wxWidgets.git/blob - include/wx/mgl/app.h
A few tweaks and cleanups
[wxWidgets.git] / include / wx / mgl / app.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: app.h
3 // Purpose:
4 // Author: Vaclav Slavik
5 // Id: $Id$
6 // Copyright: (c) 2001-2002 SciTech Software, Inc. (www.scitechsoft.com)
7 // Licence: wxWindows licence
8 /////////////////////////////////////////////////////////////////////////////
9
10 #ifndef __WX_APP_H__
11 #define __WX_APP_H__
12
13 #ifdef __GNUG__
14 #pragma interface "app.h"
15 #endif
16
17 #include "wx/frame.h"
18 #include "wx/icon.h"
19
20 //-----------------------------------------------------------------------------
21 // classes
22 //-----------------------------------------------------------------------------
23
24 class WXDLLEXPORT wxApp;
25 class WXDLLEXPORT wxLog;
26 class WXDLLEXPORT wxEventLoop;
27
28 //-----------------------------------------------------------------------------
29 // wxApp
30 //-----------------------------------------------------------------------------
31
32 class WXDLLEXPORT wxApp: public wxAppBase
33 {
34 public:
35 wxApp();
36 ~wxApp();
37
38 /* override for altering the way wxGTK intializes the GUI
39 * (palette/visual/colorcube). under wxMSW, OnInitGui() does nothing by
40 * default. when overriding this method, the code in it is likely to be
41 * platform dependent, otherwise use OnInit(). */
42 virtual bool OnInitGui();
43
44 // override base class (pure) virtuals
45 virtual int MainLoop();
46 virtual void ExitMainLoop();
47 virtual bool Initialized();
48 virtual bool Pending();
49 virtual void Dispatch();
50
51 // implementation only from now on
52 void OnIdle(wxIdleEvent &event);
53 bool SendIdleEvents();
54 bool SendIdleEvents(wxWindow* win);
55
56 static bool Initialize();
57 static void CleanUp();
58
59 bool ProcessIdle();
60 void DeletePendingObjects();
61
62 virtual bool Yield(bool onlyIfNeeded = FALSE);
63
64 virtual wxDisplayModeInfo GetDisplayMode() const { return m_displayMode; }
65 virtual bool SetDisplayMode(const wxDisplayModeInfo& mode);
66
67 private:
68 DECLARE_DYNAMIC_CLASS(wxApp)
69 DECLARE_EVENT_TABLE()
70
71 wxEventLoop *m_mainLoop;
72 wxDisplayModeInfo m_displayMode;
73 };
74
75 int WXDLLEXPORT wxEntry(int argc, char *argv[]);
76
77 #endif // __WX_APP_H__