1 ///////////////////////////////////////////////////////////////////////////// 2 // Name: wx/gtk/app.h 3 // Purpose: 4 // Author: Robert Roebling 5 // Id: $Id: app.h 43879 2006-12-09 17:46:20Z PC $ 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 class WXDLLIMPEXP_CORE wxApp; 18 class WXDLLIMPEXP_BASE wxLog; 19 20 //----------------------------------------------------------------------------- 21 // wxApp 22 //----------------------------------------------------------------------------- 23 24 class WXDLLIMPEXP_CORE wxApp: public wxAppBase 25 { 26 public: 27 wxApp(); 28 virtual ~wxApp(); 29 30 /* override for altering the way wxGTK intializes the GUI 31 * (palette/visual/colorcube). under wxMSW, OnInitGui() does nothing by 32 * default. when overriding this method, the code in it is likely to be 33 * platform dependent, otherwise use OnInit(). */ 34 virtual bool OnInitGui(); 35 36 // override base class (pure) virtuals 37 virtual bool Yield(bool onlyIfNeeded = FALSE); 38 virtual void WakeUpIdle(); 39 40 virtual bool Initialize(int& argc, wxChar **argv); 41 virtual void CleanUp(); 42 43 static bool InitialzeVisual(); 44 45 #ifdef __WXDEBUG__ 46 virtual void OnAssertFailure(const wxChar *file, 47 int line, 48 const wxChar *func, 49 const wxChar *cond, 50 const wxChar *msg); 51 IsInAssert()52 bool IsInAssert() const { return m_isInAssert; } 53 #endif // __WXDEBUG__ 54 55 guint m_idleTag; 56 // temporarily disable idle events 57 void SuspendIdleCallback(); 58 59 // Used by the the wxGLApp and wxGLCanvas class for GL-based X visual 60 // selection. 61 void *m_glVisualInfo; // this is actually an XVisualInfo* 62 void *m_glFBCInfo; // this is actually an GLXFBConfig* 63 // This returns the current visual: either that used by wxRootWindow 64 // or the XVisualInfo* for SGI. 65 GdkVisual *GetGdkVisual(); 66 67 private: 68 // true if we're inside an assert modal dialog 69 #ifdef __WXDEBUG__ 70 bool m_isInAssert; 71 #endif // __WXDEBUG__ 72 73 DECLARE_DYNAMIC_CLASS(wxApp) 74 DECLARE_EVENT_TABLE() 75 }; 76 77 #endif // _WX_GTK_APP_H_ 78