diff --git a/provider/core/propertyratiosource.cpp b/provider/core/propertyratiosource.cpp index bd1a8baf0cb4c23d543940b39007f9d7fd061d29..abf429d29a6a64060790d50282fe27283d52a82f 100644 --- a/provider/core/propertyratiosource.cpp +++ b/provider/core/propertyratiosource.cpp @@ -134,8 +134,11 @@ QVariant PropertyRatioSource::data() for (auto it = d->ratioSet.constBegin(); it != d->ratioSet.constEnd(); ++it) total += it.value(); - for (auto it = d->ratioSet.constBegin(); it != d->ratioSet.constEnd(); ++it) - m.insert(it.key(), (double)it.value() / (double)(total)); + for (auto it = d->ratioSet.constBegin(); it != d->ratioSet.constEnd(); ++it) { + QVariantMap v; + v.insert(QStringLiteral("property"), (double)it.value() / (double)(total)); + m.insert(it.key(), v); + } return m; } diff --git a/tests/auto/datasourcetest.cpp b/tests/auto/datasourcetest.cpp index 92968d67a19e3fa796304fd06f7b3718d7a33221..181c67c2fd648e2d03e0b3660f0a7dba8b47672f 100644 --- a/tests/auto/datasourcetest.cpp +++ b/tests/auto/datasourcetest.cpp @@ -99,7 +99,7 @@ private slots: o = v.toMap(); QCOMPARE(o.size(), 1); QVERIFY(o.contains(QLatin1String("value1"))); - v = o.value(QLatin1String("value1")); + v = o.value(QLatin1String("value1")).toMap().value(QLatin1String("property"));; QCOMPARE(v.type(), QVariant::Double); setProp(23); @@ -108,7 +108,7 @@ private slots: o = v.toMap(); QCOMPARE(o.size(), 2); QVERIFY(o.contains(QLatin1String("value2"))); - v = o.value(QLatin1String("value2")); + v = o.value(QLatin1String("value2")).toMap().value(QLatin1String("property")); QCOMPARE(v.type(), QVariant::Double); }