mirror of
https://github.com/NohamR/RMHook-Win.git
synced 2026-05-26 13:30:12 +00:00
Add Qt libs and headers
This commit is contained in:
@@ -0,0 +1,73 @@
|
||||
// Copyright (C) 2020 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
#ifndef QABSTRACTEVENTDISPATCHER_H
|
||||
#define QABSTRACTEVENTDISPATCHER_H
|
||||
|
||||
#include <QtCore/qobject.h>
|
||||
#include <QtCore/qeventloop.h>
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
class QAbstractNativeEventFilter;
|
||||
class QAbstractEventDispatcherPrivate;
|
||||
class QSocketNotifier;
|
||||
|
||||
class Q_CORE_EXPORT QAbstractEventDispatcher : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
Q_DECLARE_PRIVATE(QAbstractEventDispatcher)
|
||||
|
||||
public:
|
||||
struct TimerInfo
|
||||
{
|
||||
int timerId;
|
||||
int interval;
|
||||
Qt::TimerType timerType;
|
||||
|
||||
inline TimerInfo(int id, int i, Qt::TimerType t)
|
||||
: timerId(id), interval(i), timerType(t) { }
|
||||
};
|
||||
|
||||
explicit QAbstractEventDispatcher(QObject *parent = nullptr);
|
||||
~QAbstractEventDispatcher();
|
||||
|
||||
static QAbstractEventDispatcher *instance(QThread *thread = nullptr);
|
||||
|
||||
virtual bool processEvents(QEventLoop::ProcessEventsFlags flags) = 0;
|
||||
|
||||
virtual void registerSocketNotifier(QSocketNotifier *notifier) = 0;
|
||||
virtual void unregisterSocketNotifier(QSocketNotifier *notifier) = 0;
|
||||
|
||||
int registerTimer(qint64 interval, Qt::TimerType timerType, QObject *object);
|
||||
virtual void registerTimer(int timerId, qint64 interval, Qt::TimerType timerType, QObject *object) = 0;
|
||||
virtual bool unregisterTimer(int timerId) = 0;
|
||||
virtual bool unregisterTimers(QObject *object) = 0;
|
||||
virtual QList<TimerInfo> registeredTimers(QObject *object) const = 0;
|
||||
|
||||
virtual int remainingTime(int timerId) = 0;
|
||||
|
||||
virtual void wakeUp() = 0;
|
||||
virtual void interrupt() = 0;
|
||||
|
||||
virtual void startingUp();
|
||||
virtual void closingDown();
|
||||
|
||||
void installNativeEventFilter(QAbstractNativeEventFilter *filterObj);
|
||||
void removeNativeEventFilter(QAbstractNativeEventFilter *filterObj);
|
||||
bool filterNativeEvent(const QByteArray &eventType, void *message, qintptr *result);
|
||||
|
||||
Q_SIGNALS:
|
||||
void aboutToBlock();
|
||||
void awake();
|
||||
|
||||
protected:
|
||||
QAbstractEventDispatcher(QAbstractEventDispatcherPrivate &,
|
||||
QObject *parent);
|
||||
};
|
||||
|
||||
Q_DECLARE_TYPEINFO(QAbstractEventDispatcher::TimerInfo, Q_PRIMITIVE_TYPE);
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
||||
#endif // QABSTRACTEVENTDISPATCHER_H
|
||||
Reference in New Issue
Block a user