diff options
author | Stephen Kelly <stephen.kelly@kdab.com> | 2012-03-19 13:03:41 +0100 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-03-20 16:03:57 +0100 |
commit | afa50b1478f8ecea30c4991ff753162e750fc7dc (patch) | |
tree | 0888abbc2e20c3837765f28e2a9cc111854e58ee /src/corelib/kernel/qmetatype.cpp | |
parent | 105a7fccc4154a76a75022f7233e6168c35338cc (diff) |
Add API and reserve space for storing the QMetaObject with the QMetaType.
In Qt 5.1, http://codereview.qt-project.org/#change,19113 can be rebased
on top of this change in a compatible way.
Change-Id: If7ac0481a3b2a874528de4ef6ea7535501a4ac71
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Diffstat (limited to 'src/corelib/kernel/qmetatype.cpp')
-rw-r--r-- | src/corelib/kernel/qmetatype.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/corelib/kernel/qmetatype.cpp b/src/corelib/kernel/qmetatype.cpp index 8c2b5a8665..a735e6dc4c 100644 --- a/src/corelib/kernel/qmetatype.cpp +++ b/src/corelib/kernel/qmetatype.cpp @@ -460,7 +460,7 @@ static int qMetaTypeCustomType_unlocked(const char *typeName, int length) int QMetaType::registerType(const char *typeName, Deleter deleter, Creator creator) { - return registerType(typeName, deleter, creator, qMetaTypeDestructHelper<void>, qMetaTypeConstructHelper<void>, 0, TypeFlags()); + return registerType(typeName, deleter, creator, qMetaTypeDestructHelper<void>, qMetaTypeConstructHelper<void>, 0, TypeFlags(), 0); } /*! \internal @@ -475,7 +475,7 @@ int QMetaType::registerType(const char *typeName, Deleter deleter, Creator creator, Destructor destructor, Constructor constructor, - int size, TypeFlags flags) + int size, TypeFlags flags, const QMetaObject *metaObject) { QVector<QCustomTypeInfo> *ct = customTypes(); if (!ct || !typeName || !deleter || !creator || !destructor || !constructor) @@ -1675,7 +1675,8 @@ QMetaType QMetaType::typeInfo(const int type) , typeInfo.info.destructor , typeInfo.info.size , typeInfo.info.flags - , type) + , type + , 0) : QMetaType(UnknownType); } @@ -1708,6 +1709,7 @@ QMetaType::QMetaType(const QMetaType &other) , m_typeFlags(other.m_typeFlags) , m_extensionFlags(other.m_extensionFlags) , m_typeId(other.m_typeId) + , m_metaObject(other.m_metaObject) {} QMetaType &QMetaType::operator =(const QMetaType &other) @@ -1723,6 +1725,7 @@ QMetaType &QMetaType::operator =(const QMetaType &other) m_extensionFlags = other.m_extensionFlags; m_extension = other.m_extension; // space reserved for future use m_typeId = other.m_typeId; + m_metaObject = other.m_metaObject; return *this; } |