1 ///////////////////////////////////////////////////////////////////////////// 2 // Name: wx/gtk1/app.h 3 // Purpose: 4 // Author: Robert Roebling 5 // Id: $Id: app.h 37065 2006-01-23 02:28:01Z MR $ 6 // Copyright: (c) 1998 Robert Roebling, Julian Smart 7 // Licence: wxWindows licence 8 ///////////////////////////////////////////////////////////////////////////// 9 10 #ifndef __GTKAPPH__ 11 #define __GTKAPPH__ 12 13 #include "wx/frame.h" 14 #include "wx/icon.h" 15 #include "wx/strconv.h" 16 17 //----------------------------------------------------------------------------- 18 // classes 19 //----------------------------------------------------------------------------- 20 21 class WXDLLIMPEXP_CORE wxApp; 22 class WXDLLIMPEXP_BASE wxLog; 23 24 //----------------------------------------------------------------------------- 25 // wxApp 26 //----------------------------------------------------------------------------- 27 28 class WXDLLIMPEXP_CORE wxApp: public wxAppBase 29 { 30 public: 31 wxApp(); 32 virtual ~wxApp(); 33 34 /* override for altering the way wxGTK intializes the GUI 35 * (palette/visual/colorcube). under wxMSW, OnInitGui() does nothing by 36 * default. when overriding this method, the code in it is likely to be 37 * platform dependent, otherwise use OnInit(). */ 38 virtual bool OnInitGui(); 39 40 // override base class (pure) virtuals 41 virtual bool Yield(bool onlyIfNeeded = FALSE); 42 virtual void WakeUpIdle(); 43 44 virtual bool Initialize(int& argc, wxChar **argv); 45 virtual void CleanUp(); 46 47 static bool InitialzeVisual(); 48 49 #ifdef __WXDEBUG__ 50 virtual void OnAssert(const wxChar *file, int line, const wxChar *cond, const wxChar *msg); 51 IsInAssert()52 bool IsInAssert() const { return m_isInAssert; } 53 #endif // __WXDEBUG__ 54 55 gint m_idleTag; 56 void RemoveIdleTag(); 57 58 unsigned char *m_colorCube; 59 60 // Used by the the wxGLApp and wxGLCanvas class for GL-based X visual 61 // selection. 62 void *m_glVisualInfo; // this is actually an XVisualInfo* 63 void *m_glFBCInfo; // this is actually an GLXFBConfig* 64 // This returns the current visual: either that used by wxRootWindow 65 // or the XVisualInfo* for SGI. 66 GdkVisual *GetGdkVisual(); 67 68 private: 69 // true if we're inside an assert modal dialog 70 #ifdef __WXDEBUG__ 71 bool m_isInAssert; 72 #endif // __WXDEBUG__ 73 74 DECLARE_DYNAMIC_CLASS(wxApp) 75 DECLARE_EVENT_TABLE() 76 }; 77 78 #endif // __GTKAPPH__ 79