aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/qml/qqmllanguage/data/bindTypeToJSValue.qml
diff options
context:
space:
mode:
authorAndrew den Exter <andrew.den-exter@nokia.com>2012-05-11 17:37:07 +1000
committerQt by Nokia <qt-info@nokia.com>2012-05-24 05:52:32 +0200
commit4709f30b26042427b225dd164648e3f5907c9d33 (patch)
tree3edac8d14d3fb77406ef93aa2c34c42131109625 /tests/auto/qml/qqmllanguage/data/bindTypeToJSValue.qml
parent2542778d4837143a61dfcf143c32683acc8b998a (diff)
Enable binding to properties of type QJSValue.
This allows javascript objects of all types to be bound to properties declared in c++. Compared to a QVariant the primary benefit this offers is a type which functions and objects with functions can be bound to. Change-Id: Idb3313e7ff1d616ab12d44f616083c8296201f3a Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Diffstat (limited to 'tests/auto/qml/qqmllanguage/data/bindTypeToJSValue.qml')
-rw-r--r--tests/auto/qml/qqmllanguage/data/bindTypeToJSValue.qml60
1 files changed, 60 insertions, 0 deletions
diff --git a/tests/auto/qml/qqmllanguage/data/bindTypeToJSValue.qml b/tests/auto/qml/qqmllanguage/data/bindTypeToJSValue.qml
new file mode 100644
index 0000000000..ff724a4162
--- /dev/null
+++ b/tests/auto/qml/qqmllanguage/data/bindTypeToJSValue.qml
@@ -0,0 +1,60 @@
+import Test 1.0
+import QtQuick 2.0
+
+MyTypeObject {
+ flagProperty: "FlagVal1 | FlagVal3"
+ enumProperty: "EnumVal2"
+ stringProperty: "Hello World!"
+ uintProperty: 10
+ intProperty: -19
+ realProperty: 23.2
+ doubleProperty: -19.7
+ floatProperty: 8.5
+ colorProperty: "red"
+ dateProperty: "1982-11-25"
+ timeProperty: "11:11:32"
+ dateTimeProperty: "2009-05-12T13:22:01"
+ pointProperty: "99,13"
+ pointFProperty: "-10.1,12.3"
+ sizeProperty: "99x13"
+ sizeFProperty: "0.1x0.2"
+ rectProperty: "9,7,100x200"
+ rectFProperty: "1000.1,-10.9,400x90.99"
+ boolProperty: true
+ variantProperty: "Hello World!"
+ vectorProperty: "10,1,2.2"
+ vector4Property: "10,1,2.2,2.3"
+ urlProperty: "main.qml?with%3cencoded%3edata"
+
+ objectProperty: MyTypeObject {}
+
+ property var varProperty: "Hello World!"
+
+ property list<MyQmlObject> resources: [
+ MyQmlObject { objectName: "flagProperty"; qjsvalue: flagProperty },
+ MyQmlObject { objectName: "enumProperty"; qjsvalue: enumProperty },
+ MyQmlObject { objectName: "stringProperty"; qjsvalue: stringProperty },
+ MyQmlObject { objectName: "uintProperty"; qjsvalue: uintProperty },
+ MyQmlObject { objectName: "intProperty"; qjsvalue: intProperty },
+ MyQmlObject { objectName: "realProperty"; qjsvalue: realProperty },
+ MyQmlObject { objectName: "doubleProperty"; qjsvalue: doubleProperty },
+ MyQmlObject { objectName: "floatProperty"; qjsvalue: floatProperty },
+ MyQmlObject { objectName: "colorProperty"; qjsvalue: colorProperty },
+ MyQmlObject { objectName: "dateProperty"; qjsvalue: dateProperty },
+ MyQmlObject { objectName: "timeProperty"; qjsvalue: timeProperty },
+ MyQmlObject { objectName: "dateTimeProperty"; qjsvalue: dateTimeProperty },
+ MyQmlObject { objectName: "pointProperty"; qjsvalue: pointProperty },
+ MyQmlObject { objectName: "pointFProperty"; qjsvalue: pointFProperty },
+ MyQmlObject { objectName: "sizeProperty"; qjsvalue: sizeProperty },
+ MyQmlObject { objectName: "sizeFProperty"; qjsvalue: sizeFProperty },
+ MyQmlObject { objectName: "rectProperty"; qjsvalue: rectProperty },
+ MyQmlObject { objectName: "rectFProperty"; qjsvalue: rectFProperty },
+ MyQmlObject { objectName: "boolProperty"; qjsvalue: boolProperty },
+ MyQmlObject { objectName: "variantProperty"; qjsvalue: variantProperty },
+ MyQmlObject { objectName: "vectorProperty"; qjsvalue: vectorProperty },
+ MyQmlObject { objectName: "vector4Property"; qjsvalue: vector4Property },
+ MyQmlObject { objectName: "urlProperty"; qjsvalue: urlProperty },
+ MyQmlObject { objectName: "objectProperty"; qjsvalue: objectProperty },
+ MyQmlObject { objectName: "varProperty"; qjsvalue: varProperty }
+ ]
+}