aboutsummaryrefslogtreecommitdiffstats
path: root/doc/src/declarative/elements.qdoc
blob: d118646e1087aa8560466a4be917f03986cd8a5a (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
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
/****************************************************************************
**
** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** 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 qdeclarativeelements.html
\inqmlmodule QtQuick 2
  \target elements
  \title QML Elements
  \brief A listing of standard QML elements.

These are the functionally grouped lists of QML elements as part of
\l{Qt Quick}. You can also browse the module pages for \l{QtQuick 1}, \l{QtQuick 2} and \l{QtQuick.Particles 2}

Elements are declared with the their name and two curly braces. Elements may
be nested in elements, thereby creating a parent-child relationship between the
two elements.

To see the QML elements listed by functional area, see the
\l{Groups Of Related QML Elements} page.

\section1 Basic QML Elements
\list
\o \l {Item} - Basic item element inherited by QML elements
\o \l {Component} - Encapsulates QML elements during importing
\o \l {QtObject} {QtObject} - Basic element containing only the \c {objectName} property
\endlist

\section1 Graphics
\list
\o \l {Rectangle} - A rectangle element
\o \l {Image} - For incorporating bitmaps into a scene
\o \l {BorderImage} - Allows the use of images as borders
\o \l {AnimatedImage} - For playing animations stored in a series of frames
\o \l {Gradient} - For defining a color gradient
\o \l {GradientStop} - Used to define a color within a \l {Gradient}
\o \l {SystemPalette} - Provides access to the Qt palettes
\o \l {Canvas} - Provides a 2D canvas element
\endlist

\section1 Text Handling
\list
\o \l {Text} - For inserting formatted text into a scene
\o \l {TextInput} - Captures user key input
\o \l {TextEdit} - Displays multiple lines of editable formatted text
\o \l {IntValidator} - Validates values as integers
\o \l {DoubleValidator} - Validates real values
\o \l {RegExpValidator} - Validator for string regular expressions
\o \l {FontLoader} - Loads fonts by name or URL
\endlist

\section1 Mouse and Interaction Area
\list
\o \l {MouseArea} - Sets up an area for mouse interaction
\o \l {Keys} - Provides components with attached properties to handle key input.
\o \l {FocusScope} - Element that mediate keyboard focus changes
\o \l {Flickable} - Provides a surface that can be "flicked"
\o \l {Flipable} - Provides a surface that produces "flipping" effects
\o \l {PinchArea} - Enables simple pinch gesture handling
\o \l {MultiPointTouchArea} - Enables handling of multiple touch points
\endlist

\section1 Positioners and Repeater
\list
\o \l {Column} - Arranges its children vertically
\o \l {Row} - Arranges its children horizontally
\o \l {Grid} - Positions its children in a grid
\o \l {Flow} - Positions its children with wrapping support
\o \l {Repeater} - Uses a model to create multiple components
\endlist

\section1 Transformations
\list
\o \l {Scale} - Assigns item scaling behaviors
\o \l {Rotation} - Assigns item rotation behaviors
\o \l {Translate} - Assigns item translation behaviors
\endlist

\section1 States
\list
\o \l {State} - Defines sets of configurations of objects and properties
\o \l {PropertyChanges} - Describes property changes within a state
\o \l {StateGroup} - Contains a set of states and state transitions
\o \l {StateChangeScript} - Allows script binding in a state
\o \l {ParentChange} - Re-parent an Item in a state change
\o \l {AnchorChanges} - Change the anchors of an item in a state
\endlist

\section1 Animation and Transitions
\list
\o \l {Transition} - Animates transitions during state changes
\o \l {SequentialAnimation} - Runs animations sequentially
\o \l {ParallelAnimation} - Runs animations in parallel
\o \l {Behavior} - Specifies a default animation for property changes
\o \l {PropertyAction} - Sets immediate property changes during animation
\o \l {PauseAnimation} - Introduces a pause in an animation
\o \l {SmoothedAnimation} - Allows a property to smoothly track a value
\o \l {SpringAnimation} - Allows a property to track a value in a spring-like motion
\o \l {ScriptAction} - Runs scripts during an animation
\endlist

Elements that animate properties based on data types
\list
\o \l {PropertyAnimation} - Animates property changes
\o \l {NumberAnimation} - Animates properties of type qreal
\o \l {Vector3dAnimation} - Animates properties of type QVector3d
\o \l {ColorAnimation} - Animates color changes
\o \l {RotationAnimation} - Animates rotations
\o \l {ParentAnimation} - Animates parent changes
\o \l {AnchorAnimation} - Animates anchor changes
\endlist

\section1 Models and Data Handling
\list
\o \l {QtQuick2::ListModel}{ListModel} - Defines a list of data
\o \l {QtQuick2::ListElement}{ListElement} - Defines a data item in a \l {QtQuick2::ListModel}{ListModel}
\o \l {VisualItemModel} - Contains items that already defines its own visual delegate
\o \l {VisualDataModel} - Encapsulates a model and a delegate
\o \l {XmlListModel} - Specifies a model using XPath expressions
\o \l {XmlRole} - Specifies a role for an \l {XmlListModel}
\o \l {Binding} - Binds any value to any property
\o \l {Package} - Collection that enables sharing of items within different views
\endlist

\section1 Views
\list
\o \l {ListView} - Provides a list visualization of a model
\o \l {GridView} - Provides a grid visualization of a model
\o \l {PathView} - Visualizes a model's contents along a path. See \l {Path Definition}{Path Elements} for more information.
\endlist

\section1 Path Definition
\list
\o \l {Path} - Defines a path used by \l {PathView}
\o \l {PathLine} - Defines a line in \l {Path}
\o \l {PathQuad} - Defines a quadratic Bezier curve in a \l {Path}
\o \l {PathCubic} - Defines a cubic Bezier curve in a \l {Path}
\o \l {PathArc} - Defines an arc in a \l {Path}
\o \l {PathCurve} - Defines a point on a Catmull-Rom curve in a \l {Path}
\o \l {PathSvg} - Defines a sub-path specified as a SVG path data string in a \l {Path}
\o \l {PathAttribute} - Allows the setting of attributes along a \l {Path}
\o \l {PathPercent} - Modifies the item distribution along a \l {Path}
\endlist

\section1 Utility
\list
\o \l {Connections} - Explicitly connects signals and signal handlers
\o \l {Timer} - Provides timed triggers
\o \l {QmlGlobalQtObject}{Qt} - The QML global Qt object provides useful enums and functions from Qt.
\o \l {WorkerScript} - Enables the use of threads in QML
\o \l {Loader} - Controls the loading of items or components
\endlist

\section1 Graphical Effects
\list
\o \l {ShaderEffect} - Allows GLSL shaders to be used as graphical effects
\o \l {ShaderEffectSource} - Usable as a texture in ShaderEffect
\o \l {GridMesh} - Generates a gird mesh of vertices for use by ShaderEffect
\o The \l{QtQuick.Particles 2} module provides a set of Particle System elements for QtQuick 2
\endlist

\section1 Accessibility
\list
\o \l {Accessible} - Attached property to make components accessible
\endlist

*/


/*!
    \group qml-groups
    \title Groups Of Related QML Elements

    \brief If you know what kind of QML element you want (Basic Visual,
    Interaction, Animation, etc), look here.

    This is a list of functional groups of QML elements.

    \generatelist{related}

*/

/*!
    \group qml-basic-visual-elements
    \title Basic QML Visual Elements
    \ingroup qml-groups

    \brief Elements for constructing basic visual items.

    \generatelist{related}

*/

/*!
    \group qml-basic-interaction-elements
    \title Basic QML Interaction Elements
    \ingroup qml-groups

    \brief Elements for handling basic interactions.

    \generatelist{related}

*/

/*!
    \group qml-state-elements
    \title QML State Elements
    \ingroup qml-groups

    \brief Elements for handling state changes.

    \generatelist{related}

*/

/*!
    \group qml-event-elements
    \title QML Event Elements
    \ingroup qml-groups

    \brief Elements for handling events.

    \generatelist{related}

*/

/*!
    \group qml-animation-transition
    \title QML Animation and Transition Elements
    \ingroup qml-groups

    \brief Elements for handling animations and transitions.

    \generatelist{related}

*/

/*!
    \group qml-working-with-data
    \title Working With Data in QML
    \ingroup qml-groups

    \brief Elements for working with data.

    \generatelist{related}

*/

/*!
    \group qml-view-elements
    \title QML View Elements
    \ingroup qml-groups

    \brief Elements for handling views.

    \generatelist{related}

*/

/*!
    \group qml-positioning-elements
    \title QML Positioning Elements
    \ingroup qml-groups

    \brief Elements for positioning items.

    \generatelist{related}

*/

/*!
    \group qml-utility-elements
    \title QML Utility Elements
    \ingroup qml-groups

    \brief Elements for handling misc operations.

    \generatelist{related}

*/

/*!
    \group qml-transform-elements
    \title QML Transform Elements
    \ingroup qml-groups

    \brief Elements for handling transformations.

    \generatelist{related}

*/

/*!
    \group qml-particle-elements
    \title QML Particle Elements
    \ingroup qml-groups

    \brief Elements for handling particle effects.

    This is the QtQuick 1.0 particle system, incompatible with QtQuick 2.0

    There is a completely separate \l{QtQuick.Particles 2}{QtQuick 2.0 particle system}

    \generatelist{related}

*/