aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/doc/src/concepts/convenience/topic.qdoc
diff options
context:
space:
mode:
authorChris Adams <christopher.adams@nokia.com>2012-07-17 12:19:31 +1000
committerQt by Nokia <qt-info@nokia.com>2012-07-19 10:02:40 +0200
commitb523301a668e6c6cc5fc93440842ad063066f12b (patch)
tree236d84bdd510a7d64f6a5cc08699da2ecd0246be /src/quick/doc/src/concepts/convenience/topic.qdoc
parent9fe378497773dc2b8682b8c49375c7d913de5f8d (diff)
Add documentation about property value modifiers
Previously, property value modifiers were only documented in QtQuick, when really they are a QtQml module / QML language feature. This commit also improves the QtQuick documentation for convenience types, and rearranges some links and content for improved consistency. Change-Id: Ic4dbe0b8bb85bdfbb8ac2f336c13c2960f8d1842 Reviewed-by: Bea Lam <bea.lam@nokia.com>
Diffstat (limited to 'src/quick/doc/src/concepts/convenience/topic.qdoc')
-rw-r--r--src/quick/doc/src/concepts/convenience/topic.qdoc87
1 files changed, 87 insertions, 0 deletions
diff --git a/src/quick/doc/src/concepts/convenience/topic.qdoc b/src/quick/doc/src/concepts/convenience/topic.qdoc
new file mode 100644
index 0000000000..ad70b9a990
--- /dev/null
+++ b/src/quick/doc/src/concepts/convenience/topic.qdoc
@@ -0,0 +1,87 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:FDL$
+** GNU Free Documentation License
+** Alternatively, this file may be used under the terms of the GNU Free
+** Documentation License version 1.3 as published by the Free Software
+** Foundation and appearing in the file included in the packaging of
+** this file.
+**
+** Other Usage
+** Alternatively, this file may be used in accordance with the terms
+** and conditions contained in a signed written agreement between you
+** and Nokia.
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+/*!
+\page qtquick-convenience-topic.html
+\title Important Concepts In Qt Quick - Convenience Types
+\brief Overview of the convenience types for QML core features
+
+In a highly dynamic user interface, the application developer will often wish
+to react to events and trigger various response logic. QML has built-in
+support for these concepts through bindings, signals and signal handlers, and
+dynamic object instantiation, but Qt Quick expands upon the support
+provided by the language with various convenience types.
+
+\section1 Dynamic Object Instantiation
+
+QML provides a number of ways to dynamically create and manage QML objects.
+
+Objects can be created dynamically from within imperative JavaScript code
+in various ways. See \l{qtqml-javascript-dynamicobjectcreation.html}
+{Dynamic QML object creation from JavaScript} for more details.
+
+Qt Quick provides the \l{Loader}, \l{Repeater}, \l{ListView}, \l{GridView} and
+\l{PathView} types which also support dynamic object management, and provide
+a declarative API.
+
+Please see the \l{qtquick-performance.html}{performance guide} for more
+information on using dynamic instantiation and lazy initialization to improve
+application performance.
+
+\section1 Dynamic Bindings
+
+Assigning binding expressions to properties is a fundamental concept of QML,
+and Qt Quick extends upon the idea with the \l Binding type. While bindings
+are typically specified as property initialization assignments, the \l Binding
+type allows the target of a binding to be defined explicitly and separately
+from the definition of the binding expression itself.
+By declaring a \l Binding instance, the client can dynamically bind properties
+from arbitrary objects at run-time, and can modify the binding target when
+required (or when it becomes available).
+
+\section1 Dynamic Signal Connections
+
+QML supports dynamic signal connections through a signal's \c{connect()}
+method. The QtQuick module provides the convenience \l Connections type which
+allows setting up a signal connection involving an object which isn't part of
+the static object hierarchy. It also allows the connection to be dynamically
+retargeted at runtime, which allows an application to process different signal
+notifications with different functions depending on the program state.
+
+By declaring a \l Connections instance, the client can dynamically cause
+signals emitted by one object to trigger methods of another object, and can
+modify the connection target when required (or when it becomes available).
+
+\section1 Timer-Based Events
+
+Another common use-case is to trigger functionality some specified period of
+time after a particular event occurs. These sort of timer-based triggers are
+supported in Qt Quick through the \l Timer type. Both single-shot and
+recurring timers are supported.
+
+*/
+