diff options
author | Olivier Goffart <ogoffart@woboq.com> | 2015-02-10 09:37:21 +0100 |
---|---|---|
committer | Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> | 2015-02-14 00:25:01 +0000 |
commit | 2ad8c14d386470893da19568e4225fcb3bf58914 (patch) | |
tree | c0e416b665570ba5d07dd20fdc2d34741a8d3223 | |
parent | 9ddfa43e023f06387eb3360cc2e15bfff68ffe5f (diff) |
QMetaType: improve docs and comments
Change-Id: I7bcc8cec95eb5abda75d936732b1113b943622dc
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
-rw-r--r-- | src/corelib/kernel/qmetatype.cpp | 6 | ||||
-rw-r--r-- | src/corelib/kernel/qmetatype.h | 3 |
2 files changed, 6 insertions, 3 deletions
diff --git a/src/corelib/kernel/qmetatype.cpp b/src/corelib/kernel/qmetatype.cpp index 4b441999a1..8f79bf5645 100644 --- a/src/corelib/kernel/qmetatype.cpp +++ b/src/corelib/kernel/qmetatype.cpp @@ -381,15 +381,15 @@ struct DefinedTypesFilter { return a QMetaObject relative to this type. - If the type is a pointer type to a subclass of QObject, flags contains + If the type is a pointer type to a subclass of QObject, flags() contains QMetaType::PointerToQObject and this function returns the corresponding QMetaObject. This can be used to in combinaison with QMetaObject::construct to create QObject of this type. - If the type is a Q_GADGET, flags contains QMetaType::IsGadget, and this function returns its + If the type is a Q_GADGET, flags() contains QMetaType::IsGadget, and this function returns its QMetaObject. This can be used to retrieve QMetaMethod and QMetaProperty and use them on a pointer of this type. (given by QVariant::data for example) - If the type is an enumaration, flags contains QMetaType::IsEnumeration, and this function + If the type is an enumeration, flags() contains QMetaType::IsEnumeration, and this function returns the QMetaObject of the enclosing object if the enum was registered as a Q_ENUM or 0 otherwise diff --git a/src/corelib/kernel/qmetatype.h b/src/corelib/kernel/qmetatype.h index b743e78890..9659c015ff 100644 --- a/src/corelib/kernel/qmetatype.h +++ b/src/corelib/kernel/qmetatype.h @@ -1369,6 +1369,9 @@ namespace QtPrivate template<typename T> struct IsQEnumHelper { static const T &declval(); + // If the type was declared with Q_ENUM, the friend qt_getEnumMetaObject(T) declared in the + // Q_ENUM macro will be chosen by ADL, and the return type will be QMetaObject*. + // Otherwise the chosen overload will be qt_getEnumMetaObject(...) which returne 'char' enum { Value = sizeof(qt_getEnumMetaObject(declval())) == sizeof(QMetaObject*) }; }; |