// Purpose:
// Author: Vaclav Slavik
// Id: $Id$
-// Copyright: (c) 2001 Vaclav Slavik
+// Copyright: (c) 2001-2002 SciTech Software, Inc. (www.scitechsoft.com)
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
// classes
//-----------------------------------------------------------------------------
-class wxApp;
-class wxLog;
+class WXDLLEXPORT wxApp;
+class WXDLLEXPORT wxLog;
+class WXDLLEXPORT wxEventLoop;
//-----------------------------------------------------------------------------
// wxApp
class WXDLLEXPORT wxApp: public wxAppBase
{
public:
- wxApp() {}
- ~wxApp() {}
+ wxApp();
+ ~wxApp();
/* override for altering the way wxGTK intializes the GUI
* (palette/visual/colorcube). under wxMSW, OnInitGui() does nothing by
* default. when overriding this method, the code in it is likely to be
* platform dependent, otherwise use OnInit(). */
- virtual bool OnInitGui() {return 0;}
+ virtual bool OnInitGui();
// override base class (pure) virtuals
- virtual int MainLoop() {return 0;}
- virtual void ExitMainLoop() {}
- virtual bool Initialized() {return 0;}
- virtual bool Pending() {return 0;}
- virtual void Dispatch() {}
-
- virtual wxIcon GetStdIcon(int which) const {return wxNullIcon;}
+ virtual int MainLoop();
+ virtual void ExitMainLoop();
+ virtual bool Initialized();
+ virtual bool Pending();
+ virtual void Dispatch();
// implementation only from now on
- void OnIdle( wxIdleEvent &event ) {}
- bool SendIdleEvents() {return 0;}
- bool SendIdleEvents( wxWindow* win ) {return 0;}
-
- static bool Initialize() {return 0;}
- static bool InitialzeVisual() {return 0;}
- static void CleanUp() {}
-
- bool ProcessIdle() {return 0;}
- void DeletePendingObjects() {}
+ void OnIdle(wxIdleEvent &event);
+ bool SendIdleEvents();
+ bool SendIdleEvents(wxWindow* win);
- // This can be used to suppress the generation of Idle events.
- void SuppressIdleEvents(bool arg = TRUE) { m_suppressIdleEvents = arg; }
- bool GetSuppressIdleEvents() const { return m_suppressIdleEvents; }
+ static bool Initialize();
+ static void CleanUp();
-#if 0 //FIXME MGL
- bool m_initialized;
+ bool ProcessIdle();
+ void DeletePendingObjects();
- gint m_idleTag;
-#if wxUSE_THREADS
- gint m_wakeUpTimerTag;
-#endif
- unsigned char *m_colorCube;
-#endif
+ virtual bool Yield(bool onlyIfNeeded = FALSE);
-private:
- /// Set to TRUE while we are in wxYield().
- bool m_suppressIdleEvents;
+ virtual wxDisplayModeInfo GetDisplayMode() const { return m_displayMode; }
+ virtual bool SetDisplayMode(const wxDisplayModeInfo& mode);
private:
DECLARE_DYNAMIC_CLASS(wxApp)
DECLARE_EVENT_TABLE()
+
+ wxEventLoop *m_mainLoop;
+ wxDisplayModeInfo m_displayMode;
};
-int WXDLLEXPORT wxEntry( int argc, char *argv[] );
+int WXDLLEXPORT wxEntry(int argc, char *argv[]);
#endif // __WX_APP_H__