diff options
author | Andrew den Exter <andrew.den-exter@nokia.com> | 2012-05-11 17:37:07 +1000 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-05-24 05:52:32 +0200 |
commit | 4709f30b26042427b225dd164648e3f5907c9d33 (patch) | |
tree | 3edac8d14d3fb77406ef93aa2c34c42131109625 /tests/auto/qml/qqmllanguage/data/bindTypeToJSValue.qml | |
parent | 2542778d4837143a61dfcf143c32683acc8b998a (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.qml | 60 |
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 } + ] +} |