diff options
author | Yuhang Zhao <2546789017@qq.com> | 2021-12-13 11:38:15 +0800 |
---|---|---|
committer | Yuhang Zhao <2546789017@qq.com> | 2021-12-23 17:38:47 +0800 |
commit | 054b814daacdd0cd7ac470da73c8307a6edcd89e (patch) | |
tree | 0a63448c9fd34b13a1e59d0fc61e6eb8536d6843 /src/corelib | |
parent | 50ad52d8047cffdcc64b43e7443f1a58e6b9d86e (diff) |
Add QObject::isQuickItemType() for convenience
Change-Id: Ibde4e919ba028117336974eb7a804aa11c1ee086
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Diffstat (limited to 'src/corelib')
-rw-r--r-- | src/corelib/kernel/qobject.cpp | 12 | ||||
-rw-r--r-- | src/corelib/kernel/qobject.h | 4 |
2 files changed, 15 insertions, 1 deletions
diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp index 8d131cecc5..eee9cbd793 100644 --- a/src/corelib/kernel/qobject.cpp +++ b/src/corelib/kernel/qobject.cpp @@ -197,6 +197,7 @@ QObjectPrivate::QObjectPrivate(int version) metaObject = nullptr; isWindow = false; deleteLaterCalled = false; + isQuickItem = false; } QObjectPrivate::~QObjectPrivate() @@ -1304,6 +1305,17 @@ QBindable<QString> QObject::bindableObjectName() */ /*! + \fn bool QObject::isQuickItemType() const + + Returns \c true if the object is a QQuickItem; otherwise returns \c false. + + Calling this function is equivalent to calling + \c{inherits("QQuickItem")}, except that it is much faster. + + \since 6.4 +*/ + +/*! This virtual function receives events to an object and should return true if the event \a e was recognized and processed. diff --git a/src/corelib/kernel/qobject.h b/src/corelib/kernel/qobject.h index 8a45e73b0e..b186845c40 100644 --- a/src/corelib/kernel/qobject.h +++ b/src/corelib/kernel/qobject.h @@ -107,7 +107,8 @@ public: uint receiveChildEvents : 1; uint isWindow : 1; // for QWindow uint deleteLaterCalled : 1; - uint unused : 24; + uint isQuickItem : 1; + uint unused : 23; int postedEvents; QDynamicMetaObjectData *metaObject; QBindingStorage bindingStorage; @@ -147,6 +148,7 @@ public: inline bool isWidgetType() const { return d_ptr->isWidget; } inline bool isWindowType() const { return d_ptr->isWindow; } + inline bool isQuickItemType() const { return d_ptr->isQuickItem; } inline bool signalsBlocked() const noexcept { return d_ptr->blockSig; } bool blockSignals(bool b) noexcept; |