diff options
author | Denis Dzyubenko <denis.dzyubenko@nokia.com> | 2012-01-02 16:25:17 +0100 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-01-05 02:17:04 +0100 |
commit | 92f9678055eef647c9e6ebc7fb0ce29b89db5f89 (patch) | |
tree | 3c4a5232263e6684bceff91fd8b351ad3b6fa127 /src/corelib/kernel/qvariant.cpp | |
parent | 99eb5051039052bc782ca3224aac1c9b99c67b28 (diff) |
Registered QUuid in the metatype system as a builtin type.
Change-Id: I6be6129d9f6bf468ba8a5805cfa0f6f79199afb3
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Reviewed-by: Prasanth Ullattil <prasanth.ullattil@nokia.com>
Diffstat (limited to 'src/corelib/kernel/qvariant.cpp')
-rw-r--r-- | src/corelib/kernel/qvariant.cpp | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/src/corelib/kernel/qvariant.cpp b/src/corelib/kernel/qvariant.cpp index f898cc4823..abffe53ab7 100644 --- a/src/corelib/kernel/qvariant.cpp +++ b/src/corelib/kernel/qvariant.cpp @@ -52,6 +52,7 @@ #include "qstringlist.h" #include "qurl.h" #include "qlocale.h" +#include "quuid.h" #include "private/qvariant_p.h" #include "qmetatype_p.h" @@ -345,6 +346,9 @@ static bool convert(const QVariant::Private *d, QVariant::Type t, void *result, case QVariant::Url: *str = v_cast<QUrl>(d)->toString(); break; + case QVariant::Uuid: + *str = v_cast<QUuid>(d)->toString(); + break; default: return false; } @@ -709,6 +713,15 @@ static bool convert(const QVariant::Private *d, QVariant::Type t, void *result, return *ok; } #endif + case QVariant::Uuid: + switch (d->type) { + case QVariant::String: + *static_cast<QUuid *>(result) = QUuid(*v_cast<QString>(d)); + break; + default: + return false; + } + break; default: return false; } @@ -807,6 +820,9 @@ static void streamDebug(QDebug dbg, const QVariant &v) dbg.nospace() << v.toRectF(); break; #endif + case QVariant::Uuid: + dbg.nospace() << v.value<QUuid>().toString(); + break; case QVariant::BitArray: //dbg.nospace() << v.toBitArray(); break; @@ -1073,6 +1089,7 @@ Q_CORE_EXPORT void QVariantPrivate::unregisterHandler(const int /* Modules::Name \value DateTime a QDateTime \value Double a double \value EasingCurve a QEasingCurve + \value Uuid a QUuid \value Font a QFont \value Hash a QVariantHash \value Icon a QIcon @@ -2402,7 +2419,7 @@ static const quint32 qCanConvertMatrix[QVariant::LastCoreType + 1] = | 1 << QVariant::UInt | 1 << QVariant::Bool | 1 << QVariant::Double | 1 << QVariant::Date | 1 << QVariant::Time | 1 << QVariant::DateTime | 1 << QVariant::LongLong | 1 << QVariant::ULongLong | 1 << QVariant::Char - | 1 << QVariant::Url, + | 1 << QVariant::Url | 1 << QVariant::Uuid, /*QStringList*/ 1 << QVariant::List | 1 << QVariant::String, @@ -2441,7 +2458,9 @@ static const quint32 qCanConvertMatrix[QVariant::LastCoreType + 1] = /*QHash*/ 0, -/*QEasingCurve*/ 0 +/*QEasingCurve*/ 0, + +/*QUuid*/ 1 << QVariant::String }; /*! |