X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c0c133e13b36a923c65f94499554e432bc3a0daa..3d777efedc1e05bd6c2a7c34a00a65895b62bb13:/include/wx/gtk/evtloop.h?ds=inline diff --git a/include/wx/gtk/evtloop.h b/include/wx/gtk/evtloop.h index d19cd557c1..ba8db406d5 100644 --- a/include/wx/gtk/evtloop.h +++ b/include/wx/gtk/evtloop.h @@ -3,7 +3,6 @@ // Purpose: wxGTK event loop implementation // Author: Vadim Zeitlin // Created: 2008-12-27 -// RCS-ID: $Id$ // Copyright: (c) 2008 Vadim Zeitlin // Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// @@ -15,22 +14,33 @@ // wxGUIEventLoop for wxGTK // ---------------------------------------------------------------------------- +typedef union _GdkEvent GdkEvent; + class WXDLLIMPEXP_CORE wxGUIEventLoop : public wxEventLoopBase { public: wxGUIEventLoop(); - virtual int Run(); - virtual void Exit(int rc = 0); + virtual void ScheduleExit(int rc = 0); virtual bool Pending() const; virtual bool Dispatch(); virtual int DispatchTimeout(unsigned long timeout); virtual void WakeUp(); + virtual bool YieldFor(long eventsToProcess); + + void StoreGdkEventForLaterProcessing(GdkEvent* ev) + { m_arrGdkEvents.Add(ev); } protected: + virtual int DoRun(); + +private: // the exit code of this event loop int m_exitcode; + // used to temporarily store events in DoYield() + wxArrayPtrVoid m_arrGdkEvents; + wxDECLARE_NO_COPY_CLASS(wxGUIEventLoop); };