initial commit
Signed-off-by: Peter Siegmund <mars3142@noreply.mars3142.dev>
This commit is contained in:
61
libs/wxWidgets-3.3.1/include/wx/qt/evtloop.h
Normal file
61
libs/wxWidgets-3.3.1/include/wx/qt/evtloop.h
Normal file
@@ -0,0 +1,61 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: wx/qt/evtloop.h
|
||||
// Author: Peter Most, Javier Torres, Mariano Reingart, Sean D'Epagnier
|
||||
// Copyright: (c) 2010 wxWidgets dev team
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifndef _WX_QT_EVTLOOP_H_
|
||||
#define _WX_QT_EVTLOOP_H_
|
||||
|
||||
class wxQtIdleTimer;
|
||||
class QEventLoop;
|
||||
|
||||
class WXDLLIMPEXP_CORE wxQtEventLoopBase : public wxEventLoopBase
|
||||
{
|
||||
public:
|
||||
wxQtEventLoopBase();
|
||||
~wxQtEventLoopBase();
|
||||
|
||||
virtual int DoRun() override;
|
||||
virtual void DoStop(int rc) override;
|
||||
virtual bool Pending() const override;
|
||||
virtual bool Dispatch() override;
|
||||
virtual int DispatchTimeout(unsigned long timeout) override;
|
||||
virtual void WakeUp() override;
|
||||
virtual void DoYieldFor(long eventsToProcess) override;
|
||||
|
||||
void ScheduleIdleCheck();
|
||||
|
||||
// Non-blocking Dispatch() version:
|
||||
// Returns true if an event was processed, otherwise returns false.
|
||||
// This function is added to address code like:
|
||||
//
|
||||
// while (evtloop->Pending())
|
||||
// evtloop->Dispatch();
|
||||
//
|
||||
// which can simply replaced with:
|
||||
//
|
||||
// while (evtloop->QtDispatch())
|
||||
// ;
|
||||
bool QtDispatch() const;
|
||||
|
||||
private:
|
||||
QEventLoop *m_qtEventLoop;
|
||||
wxObjectDataPtr<wxQtIdleTimer> m_qtIdleTimer;
|
||||
|
||||
wxDECLARE_NO_COPY_CLASS(wxQtEventLoopBase);
|
||||
};
|
||||
|
||||
|
||||
#if wxUSE_GUI
|
||||
|
||||
class WXDLLIMPEXP_CORE wxGUIEventLoop : public wxQtEventLoopBase
|
||||
{
|
||||
public:
|
||||
wxGUIEventLoop();
|
||||
};
|
||||
|
||||
#endif // wxUSE_GUI
|
||||
|
||||
#endif // _WX_QT_EVTLOOP_H_
|
||||
Reference in New Issue
Block a user