diff options
author | Jędrzej Nowacki <jedrzej.nowacki@nokia.com> | 2012-01-13 10:41:02 +0100 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-01-25 21:08:08 +0100 |
commit | aee1f6cc413f56bf4962324799ee3887c3dd037f (patch) | |
tree | c0be4eb34dc8fc64a050f8943cbf9d9e1007f0b2 /src/corelib/kernel/qmetatype.cpp | |
parent | 4df34f055a152657b30d64128dacc82c075cbd74 (diff) |
Cleanup mess in public type ids.
There is no reason to keep two separated core types sets. It
couldn't be fixed before Qt5 because of binary compatibility promise.
This patch merges QMetaType core types with ext core types.
This "simple" operation consists of:
- QDataStream version was incremented, because type ids are
saved in QVariant's data stream.
- QMetaType LastExtCoreType and FirstExtCoreType were replaced by
LastCoreType, FirstCoreType and new QMetaType::HighestInternalId.
- New tests checking QVariant data stream for Qt4 and for Qt5 versions
were added.
Change-Id: I02dd74d29317365c297a789a4eb7c9c5edc3b231
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Diffstat (limited to 'src/corelib/kernel/qmetatype.cpp')
-rw-r--r-- | src/corelib/kernel/qmetatype.cpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/src/corelib/kernel/qmetatype.cpp b/src/corelib/kernel/qmetatype.cpp index 1c106f4f36..e5fd8a5d24 100644 --- a/src/corelib/kernel/qmetatype.cpp +++ b/src/corelib/kernel/qmetatype.cpp @@ -228,14 +228,13 @@ template<> struct TypeDefiniton<QRegExp> { static const bool IsAvailable = false \value User Base value for user types - \omitvalue FirstCoreExtType \omitvalue FirstGuiType \omitvalue FirstWidgetsType - \omitvalue LastCoreExtType \omitvalue LastCoreType \omitvalue LastGuiType \omitvalue LastWidgetsType \omitvalue QReal + \omitvalue HighestInternalId Additional types can be registered using Q_DECLARE_METATYPE(). @@ -362,10 +361,10 @@ const char *QMetaType::typeName(int type) // In theory it can be filled during compilation time, but for some reason template code // that is able to do it causes GCC 4.6 to generate additional 3K of executable code. Probably // it is not worth of it. - static const char *namesCache[QMetaType::LastCoreExtType + 1]; + static const char *namesCache[QMetaType::HighestInternalId + 1]; const char *result; - if (type <= QMetaType::LastCoreExtType && ((result = namesCache[type]))) + if (type <= QMetaType::HighestInternalId && ((result = namesCache[type]))) return result; #define QT_METATYPE_TYPEID_TYPENAME_CONVERTER(MetaTypeName, TypeId, RealName) \ @@ -388,7 +387,7 @@ const char *QMetaType::typeName(int type) } #undef QT_METATYPE_TYPEID_TYPENAME_CONVERTER - Q_ASSERT(type <= QMetaType::LastCoreExtType); + Q_ASSERT(type <= QMetaType::HighestInternalId); namesCache[type] = result; return result; } |