#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 ) Q_FLAGS(ProcessEventsFlags ) enum ProcessEventsFlag{ AllEvents = QEventLoop::AllEvents, ExcludeUserInputEvents = QEventLoop::ExcludeUserInputEvents, ExcludeSocketNotifiers = QEventLoop::ExcludeSocketNotifiers, WaitForMoreEvents = QEventLoop::WaitForMoreEvents, X11ExcludeTimers = QEventLoop::X11ExcludeTimers, DeferredDeletion = QEventLoop::DeferredDeletion}; Q_DECLARE_FLAGS(ProcessEventsFlags, ProcessEventsFlag) public slots: QEventLoop* new_QEventLoop(QObject* parent = 0); void delete_QEventLoop(QEventLoop* obj) { delete obj; } void processEvents(QEventLoop* theWrappedObject, QEventLoop::ProcessEventsFlags flags, int maximumTime); void wakeUp(QEventLoop* theWrappedObject); void exit(QEventLoop* theWrappedObject, int returnCode = 0); int exec(QEventLoop* theWrappedObject, QEventLoop::ProcessEventsFlags flags = QEventLoop::AllEvents); bool isRunning(QEventLoop* theWrappedObject) const; bool processEvents(QEventLoop* theWrappedObject, QEventLoop::ProcessEventsFlags flags = QEventLoop::AllEvents); }; #endif // PYTHONQTWRAPPER_QEVENTLOOP_H