aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/doc/src/qtquick.qdoc
blob: 7163baa81950da568782c27c0f398ced94c1ac9e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
/****************************************************************************
**
** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/legal
**
** This file is part of the documentation of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:FDL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Digia.  For licensing terms and
** conditions see http://qt.digia.com/licensing.  For further information
** use the contact form at http://qt.digia.com/contact-us.
**
** GNU Free Documentation License Usage
** 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.  Please review the following information to ensure
** the GNU Free Documentation License version 1.3 requirements
** will be met: http://www.gnu.org/copyleft/fdl.html.
** $QT_END_LICENSE$
**
****************************************************************************/

/*!
\page qtquick-index.html
\title Qt Quick
\brief The Qt Quick module implements the "standard library" for QML

The Qt Quick module is the standard library for writing QML applications.
While the \l{Qt QML} module provides the QML engine and
language infrastructure, the Qt Quick module provides all the basic
types necessary for creating user interfaces with QML. It
provides a visual canvas and includes types for creating and animating
visual components, receiving user input, creating data models and views
and delayed object instantiation.

The Qt Quick module provides both a \l{Qt Quick QML Types}{QML API} which supplies
QML types for creating user interfaces with the QML language, and a
\l{Qt Quick C++ Classes}{C++ API} for extending QML applications with C++ code.

\note From Qt 5.1, a set of Qt Quick based UI controls is available to
create classic desktop-style user interfaces. Please see \l{Qt Quick Controls}
for more information.

For those new to QML and Qt Quick, please see
\l{QML Application Developer Resources}
for an introduction to writing QML applications.

\section1 Important Concepts in Qt Quick

Qt Quick provides everything needed to create a rich application with a fluid
and dynamic user interface. It enables user interfaces to be built around the
behavior of user interface components and how they connect with one another,
and it provides a visual canvas with its own coordinate system and rendering
engine. Animation and transition effects are a first class concept in Qt Quick,
and visual effects can be supplemented through specialised components for
particle and shader effects.

\list
\li \l{qtquick-visualcanvas-topic.html}{The Visual Canvas}
\li \l{qtquick-input-topic.html}{User Input}
\li \l{qtquick-positioning-topic.html}{Positioning}
\li \l{qtquick-statesanimations-topic.html}{States, Transitions And Animations}
\li \l{qtquick-modelviewsdata-topic.html}{Data - Models, Views and Data Storage}
\li \l{qtquick-effects-topic.html}{Particles And Graphical Effects}
\li \l{qtquick-convenience-topic.html}{Convenience Types}
\endlist

When using the \c QtQuick module, you will need to know how to write QML
applications using the QML language. In particular, you should have a grasp
of the \l{qtquick-quickstart-basics.html}{QML Basics} and
\l{qtquick-quickstart-essentials.html}{QML Essentials} from the
\l{qtquick-applicationdevelopers.html}{QML Application Developer Resources}.

To find out more about using the QML language, see the \l{Qt QML} module documentation.


\section1 Qt Quick Module Documentation

\list
    \li \l{qtquick-qmltypereference.html}{Qt Quick QML Types}
        \list
        \li \l{qtquick-qmltypereference.html#importing-qtquick}{Importing QtQuick}
        \li \l{qtquick-qmltypereference.html#basic-types}{Basic Types}
        \li \l{qtquick-qmltypereference.html#object-types}{Object Types}
            \list
            \li \l{qtquick-qmltypereference.html#visual-types}{Visual Types}
            \li \l{qtquick-qmltypereference.html#user-input}{User Input}
            \li \l{qtquick-qmltypereference.html#positioning}{Positioning}
            \li \l{qtquick-qmltypereference.html#states-transitions-and-animations}{States, Transitions And Animations}
            \li \l{qtquick-qmltypereference.html#model-view-types-and-data-storage-and-access}{Model/View Types And Data Storage And Access}
            \li \l{qtquick-qmltypereference.html#graphical-effects}{Graphical Effects}
            \li \l{qtquick-qmltypereference.html#convenience-types}{Convenience Types}
            \li \l{qtquick-qmltypereference.html#canvas-similar-to-html5-canvas}{Canvas (similar to HTML5 Canvas)}
            \endlist
        \endlist

    \li \l{qtquick-cppextensionpoints.html}{C++ Extension Points}
        \list
        \li \l{qtquick-cppextensionpoints.html#user-defined-qquickitem-derived-types}{Creating User-Defined QQuickItem-Derived Types}
        \li \l{qtquick-cppextensionpoints.html#scene-graph-related-classes}{Scene Graph-Related Classes}
        \li \l{qtquick-cppextensionpoints.html#pixmap-and-threaded-image-support}{Pixmap and Threaded Image Support}
        \endlist

\endlist

\section1 Reference Documentation

Additional Qt Quick information:
\list
\li \l{Qt Quick C++ Classes} - the C++ API provided by the
    Qt Quick module
\li \l{Qt Quick QML Types} - a list of QML types provided by the
    \c{QtQuick} import
    \list
    \li \l{QtQuick.XmlListModel 2}{XML List Model} - contains types
    for creating models from XML data
    \li \l{QtQuick.LocalStorage 2}{Local Storage} - a submodule
    containing a JavaScript interface for an SQLite database
    \li \l{QtQuick.Particles 2}{Particles} - provides a particle
    system for Qt Quick
    \li \l{QtQuick.Window 2}{Window} - contains types for creating
    top-level windows and accessing screen information
    \li \l{QtQuick.Dialogs 1}{Dialogs} - contains types for creating and
    interacting with system dialogs
    \endlist
\li \l{Qt Quick Release Notes} - list of changes and additions in the Qt Quick
\li \l{Qt Quick Code Samples} - list of all Qt Quick examples
module
\endlist

Further information for writing QML applications:
\list
\li \l{QML Application Developer Resources}
    - essential information for application development with QML and Qt Quick
\li \l{Qt QML} - documentation for the
    Qt QML module, which provides the QML engine and language infrastructure
\endlist
*/