summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--dist/changes-5.0.04
-rw-r--r--src/corelib/kernel/qmetatype.cpp30
-rw-r--r--src/corelib/kernel/qmetatype.h1
-rw-r--r--tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp23
4 files changed, 3 insertions, 55 deletions
diff --git a/dist/changes-5.0.0 b/dist/changes-5.0.0
index 280b5d93f9..617b2d3d95 100644
--- a/dist/changes-5.0.0
+++ b/dist/changes-5.0.0
@@ -45,7 +45,9 @@ information about a particular change.
in Qt4, so these methods return a bool now. If your code used the undocumented
QBool, simply replace it with bool.
-- QMetaType::construct() has been renamed to QMetaType::create().
+- QMetaType:
+ * QMetaType::construct() has been renamed to QMetaType::create().
+ * QMetaType::unregisterType() has been removed.
- QTestLib:
* The QTRY_VERIFY and QTRY_COMPARE macros have been moved into QTestLib.
diff --git a/src/corelib/kernel/qmetatype.cpp b/src/corelib/kernel/qmetatype.cpp
index 50b11e0e98..b31bece376 100644
--- a/src/corelib/kernel/qmetatype.cpp
+++ b/src/corelib/kernel/qmetatype.cpp
@@ -532,36 +532,6 @@ int QMetaType::registerTypedef(const char* typeName, int aliasId)
}
/*!
- \since 4.4
-
- Unregisters a user type, with \a typeName.
-
- \sa type(), typeName()
- */
-void QMetaType::unregisterType(const char *typeName)
-{
- QVector<QCustomTypeInfo> *ct = customTypes();
- if (!ct || !typeName)
- return;
-
-#ifdef QT_NO_QOBJECT
- NS(QByteArray) normalizedTypeName = typeName;
-#else
- NS(QByteArray) normalizedTypeName = QMetaObject::normalizedType(typeName);
-#endif
- QWriteLocker locker(customTypesLock());
- for (int v = 0; v < ct->count(); ++v) {
- if (ct->at(v).typeName == typeName) {
- QCustomTypeInfo &inf = (*ct)[v];
- inf.typeName.clear();
- inf.creator = 0;
- inf.deleter = 0;
- inf.alias = -1;
- }
- }
-}
-
-/*!
Returns true if the datatype with ID \a type is registered;
otherwise returns false.
diff --git a/src/corelib/kernel/qmetatype.h b/src/corelib/kernel/qmetatype.h
index 0ea9d26394..e99c93c372 100644
--- a/src/corelib/kernel/qmetatype.h
+++ b/src/corelib/kernel/qmetatype.h
@@ -247,7 +247,6 @@ public:
static void destroy(int type, void *data);
static void *construct(int type, void *where, const void *copy);
static void destruct(int type, void *where);
- static void unregisterType(const char *typeName);
#ifndef QT_NO_DATASTREAM
static bool save(QDataStream &stream, int type, const void *data);
diff --git a/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp b/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp
index be13b39e7e..ca2964d3e2 100644
--- a/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp
+++ b/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp
@@ -87,7 +87,6 @@ private slots:
void typedefs();
void isRegistered_data();
void isRegistered();
- void unregisterType();
void registerStreamBuiltin();
void automaticTemplateRegistration();
};
@@ -857,28 +856,6 @@ void tst_QMetaType::isRegistered()
QCOMPARE(QMetaType::isRegistered(typeId), registered);
}
-class RegUnreg
-{
-public:
- RegUnreg() {};
- RegUnreg(const RegUnreg &) {};
- ~RegUnreg() {};
-};
-
-void tst_QMetaType::unregisterType()
-{
- // cannot unregister standard types
- int typeId = qRegisterMetaType<QList<QVariant> >("QList<QVariant>");
- QCOMPARE(QMetaType::isRegistered(typeId), true);
- QMetaType::unregisterType("QList<QVariant>");
- QCOMPARE(QMetaType::isRegistered(typeId), true);
- // allow unregister user types
- typeId = qRegisterMetaType<RegUnreg>("RegUnreg");
- QCOMPARE(QMetaType::isRegistered(typeId), true);
- QMetaType::unregisterType("RegUnreg");
- QCOMPARE(QMetaType::isRegistered(typeId), false);
-}
-
void tst_QMetaType::registerStreamBuiltin()
{
//should not crash;