]> git.saurik.com Git - wxWidgets.git/blame_incremental - include/wx/gtk/app.h
Small fix
[wxWidgets.git] / include / wx / gtk / app.h
... / ...
CommitLineData
1/////////////////////////////////////////////////////////////////////////////
2// Name: wx/gtk/app.h
3// Purpose:
4// Author: Robert Roebling
5// Id: $Id$
6// Copyright: (c) 1998 Robert Roebling, Julian Smart
7// Licence: wxWindows licence
8/////////////////////////////////////////////////////////////////////////////
9
10#ifndef _WX_GTK_APP_H_
11#define _WX_GTK_APP_H_
12
13//-----------------------------------------------------------------------------
14// classes
15//-----------------------------------------------------------------------------
16
17#if wxUSE_THREADS
18class WXDLLIMPEXP_FWD_BASE wxMutex;
19#endif
20
21//-----------------------------------------------------------------------------
22// wxApp
23//-----------------------------------------------------------------------------
24
25class WXDLLIMPEXP_CORE wxApp: public wxAppBase
26{
27public:
28 wxApp();
29 virtual ~wxApp();
30
31 /* override for altering the way wxGTK intializes the GUI
32 * (palette/visual/colorcube). under wxMSW, OnInitGui() does nothing by
33 * default. when overriding this method, the code in it is likely to be
34 * platform dependent, otherwise use OnInit(). */
35 virtual bool OnInitGui();
36
37 // override base class (pure) virtuals
38 virtual bool Yield(bool onlyIfNeeded = FALSE);
39 virtual void WakeUpIdle();
40
41 virtual bool Initialize(int& argc, wxChar **argv);
42 virtual void CleanUp();
43
44#ifdef __WXDEBUG__
45 virtual void OnAssertFailure(const wxChar *file,
46 int line,
47 const wxChar *func,
48 const wxChar *cond,
49 const wxChar *msg);
50#endif // __WXDEBUG__
51
52 // GTK-specific methods
53 // -------------------
54
55 // this can be overridden to return a specific visual to be used for GTK+
56 // instead of the default one (it's used by wxGLApp)
57 //
58 // must return XVisualInfo pointer (it is not freed by caller)
59 virtual void *GetXVisualInfo() { return NULL; }
60
61
62 // implementation only from now on
63 // -------------------------------
64
65 // This returns the current visual: either that used by wxRootWindow
66 // or the XVisualInfo* for SGI.
67 GdkVisual *GetGdkVisual();
68
69 // check for pending events, without interference from our idle source
70 bool EventsPending();
71 bool DoIdle();
72
73private:
74 // true if we're inside an assert modal dialog
75#ifdef __WXDEBUG__
76 bool m_isInAssert;
77#endif // __WXDEBUG__
78#if wxUSE_THREADS
79 wxMutex* m_idleMutex;
80#endif
81 guint m_idleSourceId;
82
83 DECLARE_DYNAMIC_CLASS(wxApp)
84};
85
86#endif // _WX_GTK_APP_H_