aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/doc/src/examples.qdoc
blob: 84f2986722ef8fe922a2d4aee36b9686b99d0932 (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
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only

/*!

\page qtquick-codesamples.html
\title Qt Quick Examples and Tutorials
\brief Building UIs with QML
\ingroup qtquick
\keyword qtquick-samples

Qt includes several examples to demonstrate a particular usage. The examples
run as applications or as non-GUI examples in Qt Creator. Qt tutorials show
the step-by-step information and give insight to particular code snippets.

This page lists the \l{Qt Qml} and \l{Qt Quick} examples, however, many other
\l{All Modules}{Qt modules} contain examples related to their QML API.

\section1 Running the Examples and Demos

The examples are packaged with the \l{Getting Started with Qt}{Qt installers}
and are accessed through Qt Creator. For more information about running
examples in Qt Creator, visit the
\l{Qt Creator: Building and Running an Example}{Building and Running an Example}
page.

Open and run examples within Qt Creator's \gui{Welcome} mode. Most of the
examples run on various platforms and to search for platform-specific
examples, type the platform name (or any keywords) in the search field. For
example, typing \c mobile in the search field lists the examples that are
fully compatible with the \l{Platform Support}{mobile} platforms.

To view other examples and tutorials, visit the \l{Qt Examples And Tutorials}
page.

\section1 Qt Quick Demos

Here is a list of fully-functional demo applications. They are full applications
that show how a deployable Qt application is built and structured. Many of the
demos are deployable to mobile and desktop platforms.

\annotatedlist{qtquickdemos}

\section1 Developing Qt Quick Applications

The following pages show how to develop Qt applications using
\l{Qt Creator Manual}{Qt Creator} and Qt Quick. The pages demonstrate various
steps such as use cases and introductory material. For more information about Qt Quick Applications and related modules, visit the \l{QML Applications} page.

\div {class="multi-column"}
    \div {class="doc-column"}
        \b{Development Environment}
        \list
        \li \l{Qt Creator: Creating Qt Quick Projects}{Creating Qt Quick Projects}
        \li \l{Qt Creator: Using QML Modules with Plugins}{Using QML Modules with Plugins}
        \endlist
    \enddiv
    \div {class="doc-column"}
        \b{Beginning with QML and Qt Quick}
        \list
        \li \l{First Steps with QML}
        \li \l{Getting Started Programming with Qt Quick}{Alarms Application}
        \li \l{Qt Design Studio: Your First UI}{Qt Design Studio Tutorials}
        \li \l{QML Advanced Tutorial}{SameGame}
        \endlist
    \enddiv
    \div {class="doc-column"}
        \b{Use Cases}
        \list
        \li \l{qtquick-usecase-visual.html}{Visual types in QML}
        \li \l{qtquick-usecase-userinput.html}{Responding to User Input in QML}
        \li \l{qtquick-usecase-animations.html}{Animations in QML}
        \li \l{qtquick-usecase-text.html}{Displaying Text in QML}
        \li \l{qtquick-usecase-layouts.html}{Layouts in QML}
        \li \l{qtquick-usecase-styling.html}{Style and Theme Support}
        \li \l{qtquick-usecase-integratingjs.html}{Integrating JavaScript in QML}
        \endlist
    \enddiv
\enddiv

\section2 Extending QML

The following tutorials show how a QML-based application can be combined and
exteneded with C++ code using the \l{Qt Qml} module.
\list
    \li \l {Writing QML Extensions with C++}
    \li \l {Writing advanced QML Extensions with C++}
\endlist

\section1 Examples

Examples are small applications which show how to implement various Qt Quick
features. The examples run on various platforms and are opened from within Qt
Creator.

\div {class="multi-column"}
    \div {class="doc-column"}
        \b{QML Types and Controls}
        \list
        \li \l{Qt Quick Controls - Gallery}{Controls Gallery}
        \li \l{tableview/gameoflife}{TableView}
        \li \l{Qt Quick Examples - Text}{Text and Fonts}
        \endlist
    \enddiv
    \div {class="doc-column"}
        \b{Layouts and Views}
        \list
        \li \l{Qt Quick Layouts - Basic Example}
        \li \l{Qt Quick Layouts - Responsive Layout Example}
        \li \l{Qt Quick Examples - Positioners}{Positioners}
        \li \l{Qt Quick Examples - Views}{Views}
        \li \l{Qt Quick Examples - Window and Screen}{Windows and Screen}
        \endlist
    \enddiv
    \div {class="doc-column"}
        \b{Image and Graphics}
        \list
        \li \l{Qt Quick Examples - Image Elements}{Image Elements}
        \li \l{Qt Quick Examples - Animation}{Animation}
        \li \l{Qt Quick Examples - Canvas}{Canvas API}
        \li \l{Qt Quick Examples - Shader Effects}{Shader Effects}
        \li \l{Qt Quick Examples - MultiEffect Test Bed}{MultiEffect}
        \li \l{Qt Quick Examples - MultiEffect Item Switcher}{MultiEffect-based Item Transitions}
        \endlist
    \enddiv
    \div {class="doc-column"}
        \b{Shapes}
        \list
        \li \l{Qt Quick Examples - Shapes}{Shapes}
        \li \l{Weather Forecast Example}{Weather Forecast}
        \endlist
    \enddiv
\enddiv

\div {class="multi-column"}
    \div {class="doc-column"}
        \b{Keyboard, Focus, and Touch}
        \list
        \li \l{Qt Quick Examples - Key Interaction}{Key Interaction}
        \li \l{Qt Quick Examples - Pointer Handlers}{Pointer Handlers}
        \endlist
    \enddiv
    \div {class="doc-column"}
        \b{System and Events}
        \list
        \li \l{Qt Quick Examples - Accessibility}{Accessibility}
        \li \l{Qt Quick Examples - Drag and Drop}{Drag and Drop}
        \li \l{Qt Quick Examples - Item Variable Refresh Rate}{Item Variable Refresh Rate}
        \endlist
    \enddiv
    \div {class="doc-column"}
        \b{Scene Graph}
        \list
        \li \l{Scene Graph - Custom Material}{Custom Material}
        \li \l{Scene Graph - RHI Under QML}{Portable QRhi-based 3D rendering as a scene underlay}
        \li \l{Scene Graph - RHI Texture Item}{Displaying a QRhi-rendered image in a QQuickItem}
        \li \l{Scene Graph - Custom QSGRenderNode}{Implementing a QRhi-based QSGRenderNode}
        \li \l{QQuickRenderControl RHI Example}{Redirecting Qt Quick rendering into a QRhiTexture}
        \li \l{Scene Graph - Two Texture Providers}{Texture Providers and Materials}
        \li \l{Scene Graph - Custom Geometry}{Custom Geometry}
        \li \l{Scene Graph - Graph}{Graph}
        \endlist
    \enddiv
\enddiv

\div {class="multi-column"}
    \div {class="doc-column"}
        \b{Extending the Scene Graph using native 3D APIs}
        \list
        \li \l{Scene Graph - Vulkan Under QML}{Vulkan-based 3D rendering as a scene underlay}
        \li \l{Scene Graph - Vulkan Texture Import}{Implementing a custom QQuickItem that displays a native Vulkan image}
        \li \l{Scene Graph - Metal Under QML}{Metal-based 3D rendering as a scene underlay}
        \li \l{Scene Graph - Metal Texture Import}{Implementing a custom QQuickItem that displays a native Metal texture}
        \li \l{Scene Graph - Direct3D 11 Under QML}{Direct3D 11-based rendering as a scene underlay}
        \li \l{Scene Graph - OpenGL Under QML}{OpenGL-based rendering as a scene underlay}
        \li \l{QQuickRenderControl OpenGL Example}{Redirecting Qt Quick rendering into an OpenGL texture}
        \li \l{QQuickRenderControl D3D11 Example}{Redirecting Qt Quick rendering into a Direct 3D texture}
        \endlist
    \enddiv
    \div {class="doc-column"}
        \b{Adding Qt Quick scenes in QWidget applications}
        \list
        \li \l{Qt Quick Widgets Example}{Using QQuickWidget}
        \li \l{QQuickWidget - QQuickView Comparison Example}{QQuickWidget - QQuickView Comparison (OpenGL)}
        \li \l{Qt Quick Examples - Embedded in Widgets}{Embedding a QQuickView as Native Window}
        \endlist
    \enddiv
\enddiv
*/