QQmlEngineDebugService: Property Data of type QVariant
authorAurindam Jana <aurindam.jana@nokia.com>
Fri, 25 May 2012 08:14:53 +0000 (10:14 +0200)
committerQt by Nokia <qt-info@nokia.com>
Fri, 25 May 2012 11:35:16 +0000 (13:35 +0200)
Send property data of type QVariant to the client.

Change-Id: I5a18da18f1347935e4ccaafb05e3a877e73bbede
Reviewed-by: Christiaan Janssen <christiaan.janssen@nokia.com>
src/qml/debugger/qqmlenginedebugservice.cpp
src/qml/debugger/qqmlenginedebugservice_p.h
tests/auto/qml/debugger/qqmlenginedebugservice/tst_qqmlenginedebugservice.cpp

index 764ba6b..b824bc0 100644 (file)
@@ -163,6 +163,8 @@ QQmlEngineDebugService::propertyData(QObject *obj, int propIdx)
         rv.type = QQmlObjectProperty::Object;
     } else if (QQmlMetaType::isList(prop.userType())) {
         rv.type = QQmlObjectProperty::List;
+    } else if (prop.userType() == QMetaType::QVariant) {
+        rv.type = QQmlObjectProperty::Variant;
     }
 
     QVariant value;
index 7ece25b..0717dee 100644 (file)
@@ -87,7 +87,7 @@ public:
     };
 
     struct QQmlObjectProperty {
-        enum Type { Unknown, Basic, Object, List, SignalProperty };
+        enum Type { Unknown, Basic, Object, List, SignalProperty, Variant };
         Type type;
         QString name;
         QVariant value;
index 59623fe..f0e3d95 100644 (file)
@@ -268,6 +268,7 @@ void tst_QQmlEngineDebugService::initTestCase()
                 "property variant varObj\n"
                 "property variant varObjList: []\n"
                 "property variant varObjMap\n"
+                "property variant simpleVar: 10.05\n"
                 "Component.onCompleted: {\n"
                     "varObj = blueRect;\n"
                     "var list = varObjList;\n"
@@ -861,6 +862,7 @@ void tst_QQmlEngineDebugService::queryExpressionResult_data()
     QVariantMap map;
     map.insert(QLatin1String("rect"), QVariant(QLatin1String("<unnamed object>")));
     QTest::newRow("varObjMap") << "varObjMap" << qVariantFromValue(map);
+    QTest::newRow("simpleVar") << "simpleVar" << qVariantFromValue(10.05);
 }
 
 void tst_QQmlEngineDebugService::queryExpressionResultInRootContext()
@@ -908,6 +910,7 @@ void tst_QQmlEngineDebugService::queryExpressionResultBC_data()
     QVariantMap map;
     map.insert(QLatin1String("rect"), QVariant(QLatin1String("<unnamed object>")));
     QTest::newRow("varObjMap") << "varObjMap" << qVariantFromValue(map);
+    QTest::newRow("simpleVar") << "simpleVar" << qVariantFromValue(10.05);
 }
 
 void tst_QQmlEngineDebugService::setBindingForObject()