summaryrefslogtreecommitdiffstats
path: root/src/corelib/kernel/qcoreevent.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/corelib/kernel/qcoreevent.h')
-rw-r--r--src/corelib/kernel/qcoreevent.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/corelib/kernel/qcoreevent.h b/src/corelib/kernel/qcoreevent.h
index edd67b79d3..23503dee05 100644
--- a/src/corelib/kernel/qcoreevent.h
+++ b/src/corelib/kernel/qcoreevent.h
@@ -313,6 +313,8 @@ public:
static int registerEventType(int hint = -1) noexcept;
+ virtual QEvent *clone() const;
+
protected:
struct InputEventTag { explicit InputEventTag() = default; };
QEvent(Type type, InputEventTag) : QEvent(type) { m_inputEvent = true; }
@@ -362,6 +364,8 @@ public:
~QTimerEvent();
int timerId() const { return id; }
+ QEvent *clone() const override { return new QTimerEvent(*this); };
+
protected:
int id;
};
@@ -378,6 +382,8 @@ public:
bool polished() const { return type() == ChildPolished; }
bool removed() const { return type() == ChildRemoved; }
+ QEvent *clone() const override { return new QChildEvent(*this); };
+
protected:
QObject *c;
};
@@ -390,6 +396,8 @@ public:
inline QByteArray propertyName() const { return n; }
+ QEvent *clone() const override { return new QDynamicPropertyChangeEvent(*this); };
+
private:
QByteArray n;
};
@@ -401,6 +409,8 @@ public:
~QDeferredDeleteEvent();
int loopLevel() const { return level; }
+ QEvent *clone() const override { return new QDeferredDeleteEvent(*this); };
+
private:
int level;
friend class QCoreApplication;