]> git.saurik.com Git - wxWidgets.git/blame - include/wx/dfb/evtloop.h
build fixes
[wxWidgets.git] / include / wx / dfb / evtloop.h
CommitLineData
b3c86150
VS
1///////////////////////////////////////////////////////////////////////////////
2// Name: wx/dfb/evtloop.h
3// Purpose: declares wxEventLoop class
4// Author: Vaclav Slavik
5// Created: 2006-08-16
6// RCS-ID: $Id$
7// Copyright: (c) 2006 REA Elektronik GmbH
8// Licence: wxWindows licence
9///////////////////////////////////////////////////////////////////////////////
10
11#ifndef _WX_DFB_EVTLOOP_H_
12#define _WX_DFB_EVTLOOP_H_
13
52c8d32a 14#include "wx/dfb/dfbptr.h"
b3c86150
VS
15
16wxDFB_DECLARE_INTERFACE(IDirectFBEventBuffer);
17struct wxDFBEvent;
18
19// ----------------------------------------------------------------------------
20// wxEventLoop
21// ----------------------------------------------------------------------------
22
b46b1d59 23class WXDLLIMPEXP_CORE wxGUIEventLoop : public wxEventLoopManual
b3c86150
VS
24{
25public:
b46b1d59 26 wxGUIEventLoop();
b3c86150
VS
27
28 virtual bool Pending() const;
29 virtual bool Dispatch();
30
31 // returns DirectFB event buffer used by wx
52c8d32a 32 static wxIDirectFBEventBufferPtr GetDirectFBEventBuffer();
b3c86150 33
757b694b
VS
34 // wxYield implementation: iterate the loop as long as there are any
35 // pending events
36 void Yield();
37
b3c86150
VS
38protected:
39 virtual void WakeUp();
40 virtual void OnNextIteration();
41
42 virtual void HandleDFBEvent(const wxDFBEvent& event);
43
44private:
45 static void InitBuffer();
e48a3055
VS
46 static void CleanUp();
47
48 friend class wxApp; // calls CleanUp() and WakeUp()
b3c86150
VS
49
50private:
52c8d32a 51 static wxIDirectFBEventBufferPtr ms_buffer;
b3c86150 52
b46b1d59 53 DECLARE_NO_COPY_CLASS(wxGUIEventLoop)
b3c86150
VS
54};
55
56#endif // _WX_DFB_EVTLOOP_H_