1 /****************************************************************************
3 ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
4 ** All rights reserved.
5 ** Contact: Nokia Corporation (qt-info@nokia.com)
7 ** This file is part of the documentation of the Qt Toolkit.
9 ** $QT_BEGIN_LICENSE:FDL$
10 ** No Commercial Usage
11 ** This file contains pre-release code and may not be distributed.
12 ** You may use this file in accordance with the terms and conditions
13 ** contained in the Technology Preview License Agreement accompanying
16 ** GNU Free Documentation License
17 ** Alternatively, this file may be used under the terms of the GNU Free
18 ** Documentation License version 1.3 as published by the Free Software
19 ** Foundation and appearing in the file included in the packaging of this
22 ** If you have questions regarding the use of this file, please contact
23 ** Nokia at qt-info@nokia.com.
26 ****************************************************************************/
29 \page qdeclarativeelements.html
32 \brief A listing of standard QML elements.
34 These are the functionally grouped lists of QML elements.
36 Elements are declared with the their name and two curly braces. Elements may
37 be nested in elements, thereby creating a parent-child relationship between the
40 To see the QML elements listed by functional area, see the
41 \l{Groups Of Related QML Elements} page.
43 \section1 Basic QML Elements
45 \o \l {Item} - Basic item element inherited by QML elements
46 \o \l {Component} - Encapsulates QML elements during importing
47 \o \l {QML:QtObject} {QtObject} - Basic element containing only the objectName property
52 \o \l {Rectangle} - A rectangle element
53 \o \l {Image} - For incorporating bitmaps into a scene
54 \o \l {BorderImage} - Allows the use of images as borders
55 \o \l {AnimatedImage} - For playing animations stored in a series of frames
56 \o \l {Gradient} - For defining a color gradient
57 \o \l {GradientStop} - Used to define a color within a \l {Gradient}
58 \o \l {SystemPalette} - Provides access to the Qt palettes
61 \section1 Text Handling
63 \o \l {Text} - For inserting formatted text into a scene
64 \o \l {TextInput} - Captures user key input
65 \o \l {TextEdit} - Displays multiple lines of editable formatted text
66 \o \l {IntValidator} - Validates values as integers
67 \o \l {DoubleValidator} - Validates real values
68 \o \l {RegExpValidator} - Validator for string regular expressions
69 \o \l {FontLoader} - Loads fonts by name or URL
72 \section1 Mouse and Interaction Area
74 \o \l {MouseArea} - Sets up an area for mouse interaction
75 \o \l {Keys} - Provides components with attached properties to handle key input.
76 \o \l {FocusScope} - Element that mediate keyboard focus changes
77 \o \l {Flickable} - Provides a surface that can be "flicked"
78 \o \l {Flipable} - Provides a surface that produces "flipping" effects
79 \o \l {GestureArea} - Enables simple gesture handling
82 \section1 Positioners and Repeater
84 \o \l {Column} - Arranges its children vertically
85 \o \l {Row} - Arranges its children horizontally
86 \o \l {Grid} - Positions its children in a grid
87 \o \l {Flow} - Positions its children with wrapping support
88 \o \l {Repeater} - Uses a model to create multiple components
91 \section1 Transformations
93 \o \l {Scale} - Assigns item scaling behaviors
94 \o \l {Rotation} - Assigns item rotation behaviors
95 \o \l {Translate} - Assigns item translation behaviors
100 \o \l {State} - Defines sets of configurations of objects and properties
101 \o \l {PropertyChanges} - Describes property changes within a state
102 \o \l {StateGroup} - Contains a set of states and state transitions
103 \o \l {StateChangeScript} - Allows script binding in a state
104 \o \l {ParentChange} - Re-parent an Item in a state change
105 \o \l {AnchorChanges} - Change the anchors of an item in a state
108 \section1 Animation and Transitions
110 \o \l {Transition} - Animates transitions during state changes
111 \o \l {SequentialAnimation} - Runs animations sequentially
112 \o \l {ParallelAnimation} - Runs animations in parallel
113 \o \l {Behavior} - Specifies a default animation for property changes
114 \o \l {PropertyAction} - Sets immediate property changes during animation
115 \o \l {PauseAnimation} - Introduces a pause in an animation
116 \o \l {SmoothedAnimation} - Allows a property to smoothly track a value
117 \o \l {SpringAnimation} - Allows a property to track a value in a spring-like motion
118 \o \l {ScriptAction} - Runs scripts during an animation
121 Elements that animate properties based on data types
123 \o \l {PropertyAnimation} - Animates property changes
124 \o \l {NumberAnimation} - Animates properties of type qreal
125 \o \l {Vector3dAnimation} - Animates properties of type QVector3d
126 \o \l {ColorAnimation} - Animates color changes
127 \o \l {RotationAnimation} - Animates rotations
128 \o \l {ParentAnimation} - Animates parent changes
129 \o \l {AnchorAnimation} - Animates anchor changes
132 \section1 Models and Data Handling
134 \o \l {ListModel} - Defines a list of data
135 \o \l {ListElement} - Defines a data item in a \l {ListModel}
136 \o \l {VisualItemModel} - Contains items that already defines its own visual delegate
137 \o \l {VisualDataModel} - Encapsulates a model and a delegate
138 \o \l {XmlListModel} - Specifies a model using XPath expressions
139 \o \l {XmlRole} - Specifies a role for an \l {XmlListModel}
140 \o \l {Binding} - Binds any value to any property
141 \o \l {Package} - Collection that enables sharing of items within different views
146 \o \l {ListView} - Provides a list visualization of a model
147 \o \l {GridView} - Provides a grid visualization of a model
148 \o \l {PathView} - Visualizes a model's contents along a path. See \l {Path Definition}{Path Elements} for more information.
151 \section1 Path Definition
153 \o \l {Path} - Defines a path used by \l {PathView}
154 \o \l {PathLine} - Defines a line in \l {Path}
155 \o \l {PathQuad} - Defines a quadratic Bezier curve in a \l {Path}
156 \o \l {PathCubic} - Defines a cubic Bezier curve in a \l {Path}
157 \o \l {PathAttribute} - Allows the setting of attributes along a \l {Path}
158 \o \l {PathPercent} - Modifies the item distribution along a \l {Path}
163 \o \l {Connections} - Explicitly connects signals and signal handlers
164 \o \l {Timer} - Provides timed triggers
165 \o \l {QML:Qt} {Qt} - The QML global Qt object provides useful enums and functions from Qt.
166 \o \l {WorkerScript} - Enables the use of threads in QML
167 \o \l {Loader} - Controls the loading of items or components
168 \o \l {LayoutItem} - Allows declarative UI elements inside Qt's Graphics View layouts
171 \section1 Graphical Effects
173 \o \l {Particles} - Generates and animates particles
174 \o \l {ParticleMotionLinear} - Adds linear motion behavior to \l {Particles}
175 \o \l {ParticleMotionGravity} - Adds gravitational motion to \l {Particles}
176 \o \l {ParticleMotionWander} - Adds varied motions to \l {Particles}
179 \section1 Add-On Elements
180 These elements are not included in the \c{QtQuick 1.0} module. Their respective QML bindings
181 should first be obtained and installed.
183 \o \l{WebView}{QtWebKit QML Module - WebView Element} - For displaying Web contents
184 \o \l{http://doc.qt.nokia.com/qtmobility-1.1.0/qml-plugins.html}{Mobility QML Plugins}
192 \title Groups Of Related QML Elements
194 \brief If you know what kind of QML element you want (Basic Visual,
195 Interaction, Animation, etc), look here.
197 This is a list of functional groups of QML elements.
199 \generatelist{related}
204 \group qml-basic-visual-elements
205 \title Basic QML Visual Elements
208 \brief Elements for constructing basic visual items.
210 \generatelist{related}
215 \group qml-basic-interaction-elements
216 \title Basic QML Interaction Elements
219 \brief Elements for handling basic interactions.
221 \generatelist{related}
226 \group qml-state-elements
227 \title QML State Elements
230 \brief Elements for handling state changes.
232 \generatelist{related}
237 \group qml-event-elements
238 \title QML Event Elements
241 \brief Elements for handling events.
243 \generatelist{related}
248 \group qml-animation-transition
249 \title QML Animation and Transition Elements
252 \brief Elements for handling animations and transitions.
254 \generatelist{related}
259 \group qml-working-with-data
260 \title Working With Data in QML
263 \brief Elements for working with data.
265 \generatelist{related}
270 \group qml-view-elements
271 \title QML View Elements
274 \brief Elements for handling views.
276 \generatelist{related}
281 \group qml-positioning-elements
282 \title QML Positioning Elements
285 \brief Elements for positioning items.
287 \generatelist{related}
292 \group qml-utility-elements
293 \title QML Utility Elements
296 \brief Elements for handling misc operations.
298 \generatelist{related}
303 \group qml-transform-elements
304 \title QML Transform Elements
307 \brief Elements for handling transformations.
309 \generatelist{related}
314 \group qml-particle-elements
315 \title QML Particle Elements
318 \brief Elements for handling particle effects.
320 \generatelist{related}