]> git.saurik.com Git - wxWidgets.git/blame - include/wx/gtk/app.h
Refactoring: no real changes.
[wxWidgets.git] / include / wx / gtk / app.h
CommitLineData
c801d85f 1/////////////////////////////////////////////////////////////////////////////
8461e4c2 2// Name: wx/gtk/app.h
c801d85f
KB
3// Purpose:
4// Author: Robert Roebling
dbf858b5 5// Id: $Id$
01111366 6// Copyright: (c) 1998 Robert Roebling, Julian Smart
a3622daa 7// Licence: wxWindows licence
c801d85f
KB
8/////////////////////////////////////////////////////////////////////////////
9
10#ifndef __GTKAPPH__
11#define __GTKAPPH__
12
12028905 13#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
c801d85f
KB
14#pragma interface
15#endif
16
c801d85f 17#include "wx/frame.h"
ebea0891 18#include "wx/icon.h"
c801d85f
KB
19
20//-----------------------------------------------------------------------------
21// classes
22//-----------------------------------------------------------------------------
23
24class wxApp;
25class wxLog;
26
c801d85f
KB
27//-----------------------------------------------------------------------------
28// wxApp
29//-----------------------------------------------------------------------------
30
094637f6 31class wxApp: public wxAppBase
c801d85f 32{
094637f6 33public:
bbe0af5b 34 wxApp();
a6f5aa49 35 virtual ~wxApp();
a3622daa 36
094637f6
VZ
37 /* override for altering the way wxGTK intializes the GUI
38 * (palette/visual/colorcube). under wxMSW, OnInitGui() does nothing by
39 * default. when overriding this method, the code in it is likely to be
40 * platform dependent, otherwise use OnInit(). */
bbe0af5b 41 virtual bool OnInitGui();
094637f6
VZ
42
43 // override base class (pure) virtuals
bbe0af5b 44 virtual int MainLoop();
094637f6
VZ
45 virtual void ExitMainLoop();
46 virtual bool Initialized();
bbe0af5b
RR
47 virtual bool Pending();
48 virtual void Dispatch();
e2478fde
VZ
49
50 virtual void Exit();
51
8461e4c2 52 virtual bool Yield(bool onlyIfNeeded = FALSE);
e2478fde 53 virtual void WakeUpIdle();
53010e52 54
05e2b077 55 virtual bool Initialize(int& argc, wxChar **argv);
94826170 56 virtual void CleanUp();
a3622daa 57
94826170 58 static bool InitialzeVisual();
a3622daa 59
a5f1fd3e 60#ifdef __WXDEBUG__
be88a6ad 61 virtual void OnAssert(const wxChar *file, int line, const wxChar *cond, const wxChar *msg);
a5f1fd3e
VZ
62
63 bool IsInAssert() const { return m_isInAssert; }
64#endif // __WXDEBUG__
094637f6 65
f6fcbb63 66 bool m_initialized;
094637f6 67
f6fcbb63 68 gint m_idleTag;
6b3eb77a 69#if wxUSE_THREADS
7b90a8f2 70 gint m_wakeUpTimerTag;
6b3eb77a 71#endif
f6fcbb63 72 unsigned char *m_colorCube;
a3622daa 73
005f5d18 74 // Used by the the wxGLApp and wxGLCanvas class for GL-based X visual
a6f5aa49
VZ
75 // selection; this is actually an XVisualInfo*
76 void *m_glVisualInfo;
005f5d18
RR
77 // This returns the current visual: either that used by wxRootWindow
78 // or the XVisualInfo* for SGI.
79 GdkVisual *GetGdkVisual();
be88a6ad 80
094637f6 81private:
a5f1fd3e
VZ
82 // true if we're inside an assert modal dialog
83#ifdef __WXDEBUG__
84 bool m_isInAssert;
85#endif // __WXDEBUG__
094637f6 86
8636aed8 87 DECLARE_DYNAMIC_CLASS(wxApp)
094637f6 88 DECLARE_EVENT_TABLE()
c801d85f
KB
89};
90
91#endif // __GTKAPPH__