diff options
author | Rhys Weatherley <rhys.weatherley@nokia.com> | 2009-08-21 03:16:51 (GMT) |
---|---|---|
committer | Rhys Weatherley <rhys.weatherley@nokia.com> | 2009-08-21 03:16:51 (GMT) |
commit | 7eb52559f44de7666c31ea28ce557eaca9177e9d (patch) | |
tree | 757b9927465409fc6a005a50bfe57322ec0824b9 /src/declarative/qml/qmlvme.cpp | |
parent | 0fd79d739bf102e406a8042eb20add5b1e8ebb10 (diff) | |
download | Qt-7eb52559f44de7666c31ea28ce557eaca9177e9d.zip Qt-7eb52559f44de7666c31ea28ce557eaca9177e9d.tar.gz Qt-7eb52559f44de7666c31ea28ce557eaca9177e9d.tar.bz2 |
Make QVector3D a first-class builtin type within QML
Reviewed-by: Martin Jones
Diffstat (limited to 'src/declarative/qml/qmlvme.cpp')
-rw-r--r-- | src/declarative/qml/qmlvme.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/declarative/qml/qmlvme.cpp b/src/declarative/qml/qmlvme.cpp index 79b1d89..7455eb4 100644 --- a/src/declarative/qml/qmlvme.cpp +++ b/src/declarative/qml/qmlvme.cpp @@ -439,6 +439,19 @@ QObject *QmlVME::run(QStack<QObject *> &stack, QmlContext *ctxt, QmlCompiledData } break; + case QmlInstruction::StoreVector3D: + { + QObject *target = stack.top(); + void *a[1]; + QVector3D p(floatData.at(instr.storeVector3D.valueIndex), + floatData.at(instr.storeVector3D.valueIndex+1), + floatData.at(instr.storeVector3D.valueIndex+2)); + a[0] = (void *)&p; + QMetaObject::metacall(target, QMetaObject::WriteProperty, + instr.storeVector3D.propertyIndex, a); + } + break; + case QmlInstruction::StoreObject: { QObject *assignObj = stack.pop(); |