1 /****************************************************************************
3 ** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies).
4 ** Contact: http://www.qt-project.org/legal
6 ** This file is part of the documentation of the Qt Toolkit.
8 ** $QT_BEGIN_LICENSE:FDL$
9 ** Commercial License Usage
10 ** Licensees holding valid commercial Qt licenses may use this file in
11 ** accordance with the commercial license agreement provided with the
12 ** Software or, alternatively, in accordance with the terms contained in
13 ** a written agreement between you and Digia. For licensing terms and
14 ** conditions see http://qt.digia.com/licensing. For further information
15 ** use the contact form at http://qt.digia.com/contact-us.
17 ** GNU Free Documentation License Usage
18 ** Alternatively, this file may be used under the terms of the GNU Free
19 ** Documentation License version 1.3 as published by the Free Software
20 ** Foundation and appearing in the file included in the packaging of
21 ** this file. Please review the following information to ensure
22 ** the GNU Free Documentation License version 1.3 requirements
23 ** will be met: http://www.gnu.org/copyleft/fdl.html.
26 ****************************************************************************/
30 \page qtquick-codesamples.html
31 \title Qt Quick Code Samples
32 \brief Building UIs with QML
35 \target qtquick-samples
36 \inqmlmodule QtQuick 2
38 These are code samples that show how to use various aspects of Qt Quick. Larger
39 compound interfaces are grouped as applications as they demonstrate more Qt
42 To run the sample applications, open them in Qt Creator or use the included
43 \l {Prototyping with qmlscene}{qmlscene} tool.
45 Some of these code samples have a corresponding \l{qtquick-tutorials}{tutorial}.
46 The Qt Quick features are covered in the \l {qtquick-overviews}{main page}.
47 This set of code samples are part of the collection of \l{Qt Examples}.
49 \div {class="threecolumn_area"}
50 \div {class="heading"}
53 \div {class="threecolumn_piece"}
54 \l{demos/calculator}{Calculator}
55 \image qml-calculator-example-small.png
57 \div {class="threecolumn_piece"}
58 \l{demos/flickr}{Flickr Mobile}
59 \image qml-flickr-demo-small.png
61 \div {class="threecolumn_piece"}
62 \l{demos/minehunt}{Minehunt}
63 \image qml-minehunt-demo-small.png
65 \div {class="threecolumn_piece"}
66 \l{demos/photoviewer}{Photo Viewer}
67 \image qml-photoviewer-demo-small.png
69 \div {class="threecolumn_piece"}
70 \l{demos/rssnews}{RSS News Reader}
71 \image qml-rssnews-demo-small.png
73 \div {class="threecolumn_piece"}
74 \l{demos/samegame}{Same Game}
75 \image qml-samegame-demo-small.png
77 \div {class="threecolumn_piece"}
78 \l{demos/snake}{Snake}
79 \image qml-snake-demo-small.png
81 \div {class="threecolumn_piece"}
82 \l{demos/twitter}{Twitter}
83 \image qml-twitter-demo-small.png
85 \div {class="threecolumn_piece"}
86 \l{demos/webbrowser}{Web Browser}
87 \image qml-webbrowser-demo-small.png
90 \div {class="threecolumn_area"}
91 \div {class="heading"}
94 Code samples demonstrate a general use for QML features. Some showcase
95 how elements or properties can be used in an application.
96 \li \l{quick/keyinteraction}{Keyboard Focus}
97 \li \l{quick/mousearea}{MouseArea}
98 \li \l{quick/animation}{Animations}
99 \li \l{quick/positioners}{Positioners}
100 \li \l{quick/righttoleft}{Right to Left}
101 \li \l{quick/modelviews}{Model Views}
102 \li \l{quick/imageelements}{Image Elements}
103 \li \l{localstorage}{SQL Local Storage}
104 \li \l{qml/xmlhttprequest}{XmlHttpRequest}
105 \li \l{qml/i18n}{Translation}
106 \li \l{quick/threading}{Threading}
107 \li \l{quick/shadereffects}{Shader Effects}
110 \div {class="threecolumn_area"}
111 \div {class="heading"}
112 QDeclarative Examples
114 These examples show how a QML based UI could interact with the
116 \div {class="threecolumn_piece"}
117 \div {class="heading"}
121 \li \l {qml/cppextensions/referenceexamples/adding}{Exporting C++ Classes}
122 \li \l {qml/cppextensions/referenceexamples/properties}{Exporting Qt C++ Properties}
123 \li \l {qml/cppextensions/referenceexamples/coercion}{C++ Inheritance and Coercion}
124 \li \l {qml/cppextensions/referenceexamples/default}{Default Property}
125 \li \l {qml/cppextensions/referenceexamples/grouped}{Grouped Properties}
126 \li \l {qml/cppextensions/referenceexamples/attached}{Attached Properties}
127 \li \l {qml/cppextensions/referenceexamples/signal}{Signal Support}
128 \li \l {qml/cppextensions/referenceexamples/methods}{Methods Support}
129 \li \l {qml/cppextensions/referenceexamples/valuesource}{Property Value Source}
130 \li \l {qml/cppextensions/referenceexamples/binding}{Binding}
133 \div {class="threecolumn_piece"}
134 \div {class="heading"}
135 Plugins and Resources
138 \li \l{qml/cppextensions/plugins}{Plugins}
139 \li \l{qml/cppextensions/imageprovider}{Image Provider}
140 \li \l{qml/cppextensions/networkaccessmanagerfactory}{Network Access Manager}
141 \li \l{src/imports/folderlistmodel}{Folder List Model} - a C++ model plugin
144 \div {class="threecolumn_piece"}
145 \div {class="heading"}
146 Qt UI and QML Integration
149 \li \l{qml-cppextensions-qgraphicslayouts.html}{QGraphicsLayouts}
150 \li \l{qml/cppextensions/qwidgets}{QWidgets}
153 \div {class="threecolumn_piece"}
154 \div {class="heading"}
158 \li \l{tutorials/ui-components/dialcontrol}{Dial Control}
159 \li \l{tutorials/ui-components/flipable}{Flipable}
160 \li \l{tutorials/ui-components/progressbar}{Progress Bar}
161 \li \l{tutorials/ui-components/scrollbar}{Scroll Bar}
162 \li \l{tutorials/ui-components/searchbox}{Search Box}
163 \li \l{tutorials/ui-components/slideswitch}{Slide Switch}
164 \li \l{tutorials/ui-components/spinner}{Spinner}
165 \li \l{tutorials/ui-components/tabwidget}{Tab Widget}
170 \div {class="threecolumn_area"}
171 \div {class="heading"}
172 Learning and Resources
174 The Qt Developer Network contains additional content such as learning
175 videos, a wiki, and a forum for posting questions.
176 \div {class="threecolumn_piece"}
177 \div {class="heading"}
178 Elements and Components
181 \li \l{QML Types provided by the QtQuick Module}
182 \li \l{external: Qt Mobility QML Plugins}{QML Plugins}
183 \li \l{external: Qt Quick Components for Symbian}{Symbian Components}
185 \li \l{QtWebKit QML Module}
188 \div {class="threecolumn_piece"}
189 \div {class="heading"}
193 \li \l{Qt eLearning}{Training Materials}
194 \li \l{Forums on Qt Developer Network}{Forums}
195 \li \l{Wiki on Qt Developer Network}{Wiki}
198 \div {class="threecolumn_piece"}
199 \div {class="heading"}
203 \li \l{All Classes}{Qt API}
204 \li \l{external: Qt Creator Manual}{Qt Creator Manual}
205 \li \l{Develop with Qt}