diff options
author | Ionut Alexandrescu <ionut.alexandrescu@qt.io> | 2017-02-20 13:27:22 +0100 |
---|---|---|
committer | Ionut Alexandrescu <ionut.alexandrescu@qt.io> | 2017-02-21 12:30:30 +0000 |
commit | bf1bd3abc9a2d990014fa8be451e0239fe12e198 (patch) | |
tree | 2d635481c7f3d92a686282c55c0d916e19b99dad /src/qml/qml/qqmllistwrapper_p.h | |
parent | 3e537dd3dcf5608241282d8437fb1593d2e6fa17 (diff) |
Add a javascript push method binding to QQmlListProperty
Create a PropertyList prototype, and add the push method to
QQmlListProperty that call the append function if it has been defined.
Added a unit test and updated the documentation.
Change-Id: I2647766e98b60bf0546f6d6ed1422a616e0d3a07
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src/qml/qml/qqmllistwrapper_p.h')
-rw-r--r-- | src/qml/qml/qqmllistwrapper_p.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/qml/qml/qqmllistwrapper_p.h b/src/qml/qml/qqmllistwrapper_p.h index d01b332159..b914c681f2 100644 --- a/src/qml/qml/qqmllistwrapper_p.h +++ b/src/qml/qml/qqmllistwrapper_p.h @@ -86,6 +86,7 @@ struct Q_QML_EXPORT QmlListWrapper : Object { V4_OBJECT2(QmlListWrapper, Object) V4_NEEDS_DESTROY + V4_PROTOTYPE(propertyListPrototype) static ReturnedValue create(ExecutionEngine *engine, QObject *object, int propId, int propType); static ReturnedValue create(ExecutionEngine *engine, const QQmlListProperty<QObject> &prop, int propType); @@ -98,6 +99,13 @@ struct Q_QML_EXPORT QmlListWrapper : Object static void advanceIterator(Managed *m, ObjectIterator *it, Value *name, uint *index, Property *p, PropertyAttributes *attributes); }; +struct PropertyListPrototype : Object +{ + void init(ExecutionEngine *engine); + + static void method_push(const BuiltinFunction *, Scope &, CallData *callData); +}; + } QT_END_NAMESPACE |