aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/doc/src/cppintegration/definetypes.qdoc
diff options
context:
space:
mode:
authorChris Adams <christopher.adams@nokia.com>2012-08-20 17:13:48 +1000
committerQt by Nokia <qt-info@nokia.com>2012-08-27 08:13:24 +0200
commite98a8b69cc0d900581942872b76ae81dc24931ee (patch)
tree57a7fbae87a5936336e0d0a345a16adc4894de8d /src/qml/doc/src/cppintegration/definetypes.qdoc
parent965588737321d10fd1fbca3f89b4c6257b7b5d47 (diff)
Move the Property Modifier Type documentation
Property Modifier Types are just another sort of QML object type, and don't deserve explicit top-level documentation. This commit moves the docs into the object types documentation, and adds documentation to the syntax page about the "<PropertyModifierObject> on <propertyName>" syntax. Change-Id: Ia9b707739b562d2c8b75fa99b88795ba4d415cf7 Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Diffstat (limited to 'src/qml/doc/src/cppintegration/definetypes.qdoc')
-rw-r--r--src/qml/doc/src/cppintegration/definetypes.qdoc62
1 files changed, 56 insertions, 6 deletions
diff --git a/src/qml/doc/src/cppintegration/definetypes.qdoc b/src/qml/doc/src/cppintegration/definetypes.qdoc
index 9a8be977ca..5ba6b81f68 100644
--- a/src/qml/doc/src/cppintegration/definetypes.qdoc
+++ b/src/qml/doc/src/cppintegration/definetypes.qdoc
@@ -475,13 +475,63 @@ qDebug() << "Value of MessageBoard.expired:" << attached->expired();
\endcode
-\section2 Property Value Sources
+\section2 Property Modifier Types
-In the QML language syntax, there is a concept of \e {property value sources}.
-These are QML types that can automatically update the value of a property over
-time, using the \c {<PropertyValueSource> on <property>} syntax. For example,
-the various \l{qtquick-statesanimations-animations.html}{property animation}
-types provided by the \c QtQuick module are examples of property value sources.
+A property modifier type is a special kind of QML object type. A property
+modifier type instance affects a property (of a QML object instance) which it
+is applied to. There are two different kinds of property modifier types:
+\list
+\li property value write interceptors
+\li property value sources
+\endlist
+
+A property value write interceptor can be used to filter or modify values as
+they are written to properties. Currently, the only supported property
+value write interceptor is the \l Behavior type provided by the \c QtQuick
+import.
+
+A property value source can be used to automatically update the value of a
+property over time. Clients can define their own property value source types.
+The various \l{qtquick-statesanimations-animations.html}{property animation}
+types provided by the \c QtQuick import are examples of property value
+sources.
+
+Property modifier type instances can be created and applied to a property of
+a QML object through the "<ModifierType> on <propertyName>" syntax, as the
+following example shows:
+
+\qml
+import QtQuick 2.0
+
+Item {
+ width: 400
+ height: 50
+
+ Rectangle {
+ width: 50
+ height: 50
+ color: "red"
+
+ NumberAnimation on x {
+ from: 0
+ to: 350
+ loops: Animation.Infinite
+ duration: 2000
+ }
+ }
+}
+\endqml
+
+Clients can register their own property value source types, but currently not
+property value write interceptors.
+
+\section3 Property Value Sources
+
+\e {Property value sources} are QML types that can automatically update the
+value of a property over time, using the
+\c {<PropertyValueSource> on <property>} syntax. For example, the various
+\l{qtquick-statesanimations-animations.html}{property animation} types
+provided by the \c QtQuick module are examples of property value sources.
A property value source can be implemented in C++ by subclassing
QQmlPropertyValueSource and providing an implementation that writes different