#ifndef PYTHONQTWRAPPER_QEVENTLOOP_H #define PYTHONQTWRAPPER_QEVENTLOOP_H #include #include #include #include #include #include #include #include class PythonQtShell_QEventLoop : public QEventLoop { public: PythonQtShell_QEventLoop(QObject* parent = 0):QEventLoop(parent),_wrapper(NULL) {}; virtual void childEvent(QChildEvent* arg__1); virtual void customEvent(QEvent* arg__1); virtual bool event(QEvent* arg__1); virtual bool eventFilter(QObject* arg__1, QEvent* arg__2); virtual void timerEvent(QTimerEvent* arg__1); PythonQtInstanceWrapper* _wrapper; }; class PythonQtWrapper_QEventLoop : public QObject { Q_OBJECT public: Q_ENUMS(ProcessEventsFlag ) enum ProcessEventsFlag{ AllEvents = QEventLoop::AllEvents, ExcludeUserInputEvents = QEventLoop::ExcludeUserInputEvents, ExcludeSocketNotifiers = QEventLoop::ExcludeSocketNotifiers, WaitForMoreEvents = QEventLoop::WaitForMoreEvents, X11ExcludeTimers = QEventLoop::X11ExcludeTimers, DeferredDeletion = QEventLoop::DeferredDeletion}; public slots: QEventLoop* new_QEventLoop(QObject* parent = 0); void delete_QEventLoop(QEventLoop* obj) { delete obj; } bool isRunning(QEventLoop* theWrappedObject) const; void processEvents(QEventLoop* theWrappedObject, QEventLoop::ProcessEventsFlags flags, int maximumTime); bool processEvents(QEventLoop* theWrappedObject, QEventLoop::ProcessEventsFlags flags = QEventLoop::AllEvents); int exec(QEventLoop* theWrappedObject, QEventLoop::ProcessEventsFlags flags = QEventLoop::AllEvents); void exit(QEventLoop* theWrappedObject, int returnCode = 0); void wakeUp(QEventLoop* theWrappedObject); }; #endif // PYTHONQTWRAPPER_QEVENTLOOP_H