From f7c8bd278de1f8d976670cc3d785dfba5041dce8 Mon Sep 17 00:00:00 2001 From: "Aaron J. Seigo" Date: Fri, 17 Sep 2010 18:06:20 +0000 Subject: [PATCH] make maps-n-hashes in maps-n-hashes work svn path=/trunk/KDE/kdebase/runtime/; revision=1176437 --- scriptengines/javascript/simplebindings/dataengine.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/scriptengines/javascript/simplebindings/dataengine.h b/scriptengines/javascript/simplebindings/dataengine.h index 32d47476d..f371b40e8 100644 --- a/scriptengines/javascript/simplebindings/dataengine.h +++ b/scriptengines/javascript/simplebindings/dataengine.h @@ -47,7 +47,13 @@ QScriptValue qScriptValueFromMap(QScriptEngine *eng, const M &map) typename M::const_iterator end = map.constEnd(); typename M::const_iterator it; for (it = begin; it != end; ++it) { - obj.setProperty(it.key(), qScriptValueFromValue(eng, it.value())); + if (it.value().type() == QVariant::Hash) { + obj.setProperty(it.key(), qScriptValueFromMap(eng, it.value().toHash())); + } else if (it.value().type() == QVariant::Map) { + obj.setProperty(it.key(), qScriptValueFromMap(eng, it.value().toMap())); + } else { + obj.setProperty(it.key(), qScriptValueFromValue(eng, it.value())); + } } return obj;