1 ///////////////////////////////////////////////////////////////////////////////
2 // Name: wx/dfb/evtloop.h
3 // Purpose: declares wxEventLoop class
4 // Author: Vaclav Slavik
7 // Copyright: (c) 2006 REA Elektronik GmbH
8 // Licence: wxWindows licence
9 ///////////////////////////////////////////////////////////////////////////////
11 #ifndef _WX_DFB_EVTLOOP_H_
12 #define _WX_DFB_EVTLOOP_H_
14 #include "wx/dfb/dfbptr.h"
16 wxDFB_DECLARE_INTERFACE(IDirectFBEventBuffer
);
19 // ----------------------------------------------------------------------------
21 // ----------------------------------------------------------------------------
23 class WXDLLIMPEXP_CORE wxGUIEventLoop
: public wxEventLoopManual
28 virtual bool Pending() const;
29 virtual bool Dispatch();
30 virtual int DispatchTimeout(unsigned long timeout
);
32 // returns DirectFB event buffer used by wx
33 static wxIDirectFBEventBufferPtr
GetDirectFBEventBuffer();
35 // wxYield implementation: iterate the loop as long as there are any
40 virtual void WakeUp();
41 virtual void OnNextIteration();
43 virtual void HandleDFBEvent(const wxDFBEvent
& event
);
46 static void InitBuffer();
47 static void CleanUp();
49 friend class wxApp
; // calls CleanUp() and WakeUp()
52 static wxIDirectFBEventBufferPtr ms_buffer
;
54 DECLARE_NO_COPY_CLASS(wxGUIEventLoop
)
57 #endif // _WX_DFB_EVTLOOP_H_