summaryrefslogtreecommitdiffstats
path: root/src/corelib/kernel/qmetaobject.cpp
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@qt.io>2020-08-04 10:35:46 +0200
committerLars Knoll <lars.knoll@qt.io>2020-08-24 00:19:05 +0200
commit1697fbdf05ff643d617a9ba1614454926e86a3d9 (patch)
tree1c090fd9254ccedf33e724158e115157998304cf /src/corelib/kernel/qmetaobject.cpp
parent92b37676328a960bc092b1f3834233c550376457 (diff)
Deprecate the static int based API in QMetaType
And remove one of the type id to name mapping that still existed in QMetaType. QMetaTypeInterface can provide that, so there's no need to have a second copy of the data. qMetaTypeTypeInternal() can still map all the names of all builtin types to ids. That functionality is for now still required by moc and can't be removed yet. Change-Id: Ib4f8e9c71e1e7d99d52da9e44477c9a1f1805e57 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src/corelib/kernel/qmetaobject.cpp')
-rw-r--r--src/corelib/kernel/qmetaobject.cpp18
1 files changed, 8 insertions, 10 deletions
diff --git a/src/corelib/kernel/qmetaobject.cpp b/src/corelib/kernel/qmetaobject.cpp
index 09297e4c2e..d97373511e 100644
--- a/src/corelib/kernel/qmetaobject.cpp
+++ b/src/corelib/kernel/qmetaobject.cpp
@@ -171,7 +171,7 @@ static inline const char *rawTypeNameFromTypeInfo(const QMetaObject *mo, uint ty
if (typeInfo & IsUnresolvedType) {
return rawStringData(mo, typeInfo & TypeNameIndexMask);
} else {
- return QMetaType::typeName(typeInfo);
+ return QMetaType(typeInfo).name();
}
}
@@ -180,9 +180,7 @@ static inline QByteArray typeNameFromTypeInfo(const QMetaObject *mo, uint typeIn
if (typeInfo & IsUnresolvedType) {
return stringData(mo, typeInfo & TypeNameIndexMask);
} else {
- // ### Use the QMetaType::typeName() that returns QByteArray
- const char *t = QMetaType::typeName(typeInfo);
- return QByteArray::fromRawData(t, qstrlen(t));
+ return QMetaType(typeInfo).name();
}
}
@@ -190,7 +188,7 @@ static inline int typeFromTypeInfo(const QMetaObject *mo, uint typeInfo)
{
if (!(typeInfo & IsUnresolvedType))
return typeInfo;
- return QMetaType::type(rawStringData(mo, typeInfo & TypeNameIndexMask));
+ return QMetaType::fromName(rawStringData(mo, typeInfo & TypeNameIndexMask)).id();
}
class QMetaMethodPrivate : public QMetaMethod
@@ -1739,7 +1737,7 @@ const char *QMetaMethodPrivate::rawReturnTypeName() const
if (typeInfo & IsUnresolvedType)
return rawStringData(mobj, typeInfo & TypeNameIndexMask);
else
- return QMetaType::typeName(typeInfo);
+ return QMetaType(typeInfo).name();
}
int QMetaMethodPrivate::returnType() const
@@ -2230,7 +2228,7 @@ bool QMetaMethod::invoke(QObject *object,
if (qstrcmp(normalized.constData(), retType) != 0) {
// String comparison failed, try compare the metatype.
int t = returnType();
- if (t == QMetaType::UnknownType || t != QMetaType::type(normalized))
+ if (t == QMetaType::UnknownType || t != QMetaType::fromName(normalized).id())
return false;
}
}
@@ -2316,7 +2314,7 @@ bool QMetaMethod::invoke(QObject *object,
int argIndex = 0;
for (int i = 1; i < paramCount; ++i) {
- types[i] = QMetaType::type(typeNames[i]);
+ types[i] = QMetaType::fromName(typeNames[i]).id();
if (types[i] == QMetaType::UnknownType && param[i]) {
// Try to register the type and try again before reporting an error.
void *argv[] = { &types[i], &argIndex };
@@ -2329,7 +2327,7 @@ bool QMetaMethod::invoke(QObject *object,
}
}
if (types[i] != QMetaType::UnknownType) {
- args[i] = QMetaType::create(types[i], param[i]);
+ args[i] = QMetaType(types[i]).create(param[i]);
++argIndex;
}
}
@@ -2453,7 +2451,7 @@ bool QMetaMethod::invokeOnGadget(void *gadget,
if (qstrcmp(normalized.constData(), retType) != 0) {
// String comparison failed, try compare the metatype.
int t = returnType();
- if (t == QMetaType::UnknownType || t != QMetaType::type(normalized))
+ if (t == QMetaType::UnknownType || t != QMetaType::fromName(normalized).id())
return false;
}
}