diff options
author | Fabian Kosmale <fabian.kosmale@qt.io> | 2020-01-21 15:33:11 +0100 |
---|---|---|
committer | Fabian Kosmale <fabian.kosmale@qt.io> | 2020-01-23 16:47:45 +0100 |
commit | cb3152086c61e7c51ed1c5f8c5946364e19abc4d (patch) | |
tree | 5624826388b8b5d8a80f4020cba701868e1b2c44 /src/corelib/kernel/qmetaobject.cpp | |
parent | 49f143e19ca11ef48260a3aaaa4ddbe490cf81ab (diff) |
Introduce Q_PROPERTY attribute REQUIRED
This is meant to correspond to required properties in QML.
Change-Id: I2645981e13f7423bc86b48370c165b3cfe2aaa62
Task-number: QTBUG-81561
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Diffstat (limited to 'src/corelib/kernel/qmetaobject.cpp')
-rw-r--r-- | src/corelib/kernel/qmetaobject.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/corelib/kernel/qmetaobject.cpp b/src/corelib/kernel/qmetaobject.cpp index 347fb1eb87..37f5acc5c5 100644 --- a/src/corelib/kernel/qmetaobject.cpp +++ b/src/corelib/kernel/qmetaobject.cpp @@ -3573,6 +3573,21 @@ bool QMetaProperty::isFinal() const } /*! + \since 5.15 + Returns \c true if the property is required; otherwise returns \c false. + + A property is final if the \c{Q_PROPERTY()}'s \c REQUIRED attribute + is set. +*/ +bool QMetaProperty::isRequired() const +{ + if (!mobj) + return false; + int flags = mobj->d.data[handle + 2]; + return flags & Required; +} + +/*! \obsolete Returns \c true if the property is editable for the given \a object; |