summaryrefslogtreecommitdiffstats
path: root/src/corelib/kernel/qvariant.cpp
diff options
context:
space:
mode:
authorStephen Kelly <stephen.kelly@kdab.com>2013-05-03 16:10:34 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-05-20 13:19:16 +0200
commitb88b09fb16754c5057b781d1b625855f75b22aee (patch)
treed3b2ef4fa8a0221393c90dc2cb49cd77eb781605 /src/corelib/kernel/qvariant.cpp
parent3f46b03a66fc163442cffec788550cfd7e9dd55b (diff)
Make it possible to access QPair and std::pair elements from a QVariant.
Change-Id: I9dc73748073d0d1e43bdadbce73339dfcc1bc647 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Diffstat (limited to 'src/corelib/kernel/qvariant.cpp')
-rw-r--r--src/corelib/kernel/qvariant.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/corelib/kernel/qvariant.cpp b/src/corelib/kernel/qvariant.cpp
index 37b89b82f0..f747eb45ab 100644
--- a/src/corelib/kernel/qvariant.cpp
+++ b/src/corelib/kernel/qvariant.cpp
@@ -2782,6 +2782,12 @@ bool QVariant::canConvert(int targetTypeId) const
return true;
}
+ if (targetTypeId == qMetaTypeId<QPair<QVariant, QVariant> >() &&
+ QMetaType::hasRegisteredConverterFunction(d.type,
+ qMetaTypeId<QtMetaTypePrivate::QPairVariantInterfaceImpl>())) {
+ return true;
+ }
+
if ((d.type >= QMetaType::User || targetTypeId >= QMetaType::User)
&& QMetaType::hasRegisteredConverterFunction(d.type, targetTypeId)) {
return true;