aboutsummaryrefslogtreecommitdiffstats
path: root/examples/particles
diff options
context:
space:
mode:
authorJerome Pasion <jerome.pasion@digia.com>2012-08-08 12:18:55 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2012-09-21 10:25:11 +0200
commit5c88efc06d152ac675b4369d854699b137631fa0 (patch)
tree85e833ecd1914c71ae92280aaf44c48a878d0453 /examples/particles
parentf66624bf294663a3dd0777692e8ad8dbb19f3819 (diff)
Examples: Moved example documentation.
-inline \example pages into separate .qdoc files -fixed broken links to paths -moved ui-components under examples/quick Change-Id: I6e009b9213be3e1f4bed51bdbeb76a7a2142c80b Reviewed-by: Martin Smith <martin.smith@digia.com>
Diffstat (limited to 'examples/particles')
-rw-r--r--examples/particles/affectors/affectors.qml86
-rw-r--r--examples/particles/affectors/doc/src/affectors.qdoc113
-rw-r--r--examples/particles/customparticle/customparticle.qml28
-rw-r--r--examples/particles/customparticle/doc/src/customparticle.qdoc54
-rw-r--r--examples/particles/emitters/doc/src/emitters.qdoc60
-rw-r--r--examples/particles/emitters/emitters.qml35
-rw-r--r--examples/particles/imageparticle/doc/src/imageparticle.qdoc62
-rw-r--r--examples/particles/imageparticle/imageparticle.qml36
-rw-r--r--examples/particles/system/doc/src/system.qdoc59
-rw-r--r--examples/particles/system/system.qml32
10 files changed, 348 insertions, 217 deletions
diff --git a/examples/particles/affectors/affectors.qml b/examples/particles/affectors/affectors.qml
index 08f1dfe1a0..5e031dd971 100644
--- a/examples/particles/affectors/affectors.qml
+++ b/examples/particles/affectors/affectors.qml
@@ -41,92 +41,6 @@
import QtQuick 2.0
import "../../shared" as Examples
-/*!
- \title QtQuick.Particles Examples - Affectors
- \example particles/affectors
- \brief This is a collection of examples using Affectors in the QML particle system.
- \image qml-affectors-example.png
-
- This is a collection of small QML examples relating to using Affectors in the particle system.
- Each example is a small QML file emphasizing a particular element or feature.
-
- Age demonstrates using an Age affector to prematurely end the lives of particles.
- \snippet examples/particles/affectors/content/age.qml 0
-
- As you move the affector around the screen, the particles inside it
- (which haven't already been affected) jump to a period near the end
- of their life. This gives them a short period to finish fading out,
- but changing lifeLeft to 0 (the default), would cause them to reach
- the end of their life instantly.
-
- Attractor demonstrates using an Attractor affector to simulate a black hole
- \snippet examples/particles/affectors/content/attractor.qml 0
-
- All particles in the scene, including the rocket ship's exhaust and pellets, are pulled
- towards the black hole. This effect is stronger closer to the black hole, so the
- asteroids near the top of the screen are barely affected at all, while the ones
- towards the middle sometimes curve drastically. To complete the effect, an Age
- affector covers the black hole to destroy particles which come in contact with it.
-
- Custom Affector manipulates the properties of the particles directly in javascript.
- One Affector is used to make the leaves rock back and forth as they fall, looking more
- leaf-like than just spinning in circles:
- \snippet examples/particles/affectors/content/customaffector.qml 0
- Another is used to provide a slightly varying friction to the leaves as they 'land',
- to look more natural:
- \snippet examples/particles/affectors/content/customaffector.qml 1
-
- Friction is similar to the falling leaves in the custom affector, except that it uses a
- flat friction the whole way down instead of custom affectors.
- \snippet examples/particles/affectors/content/friction.qml 0
-
- Gravity is a convenience affector for applying a constant acceleration to particles inside it
- \snippet examples/particles/affectors/content/gravity.qml 0
-
- GroupGoal sets up two particle groups for flaming and non-flaming balls, and gives you various
- ways to transition between them.
- \snippet examples/particles/affectors/content/groupgoal.qml unlit
- The non-flaming balls have a one in a hundred chance of lighting on their own each second, but they also
- have a GroupGoal set on the whole group. This affector affects all particles of the unlit group, when colliding
- with particles in the lit group, and cause them to move to the lighting group.
- \snippet examples/particles/affectors/content/groupgoal.qml lighting
- lighting is an intermediate group so that the glow builds up and the transition is less jarring. So it automatically
- moves into the lit group after 100ms.
- \snippet examples/particles/affectors/content/groupgoal.qml lit
- The lit group also has TrailEmitters on it for additional fire and smoke, but does not transition anywhere.
- There are two more GroupGoal elements that allow particles in the unlit group to transition to the lighting group
- (and then to the lit group).
- \snippet examples/particles/affectors/content/groupgoal.qml groupgoal-pilot
- The first is just an area bound to the location of an image of a pilot flame. When unlit balls pass through the flame,
- they go straight to lit because the pilot flame is so hot.
- \snippet examples/particles/affectors/content/groupgoal.qml groupgoal-ma
- The second is bound to the location of the last pointer interaction, so that touching or clicking on unlit balls (which
- is hard due to their constant movement) causes them to move to the lighting group.
-
- Move shows some simple effects you can get by altering trajectory midway.
- The red particles have an affector that affects their position, jumping them forwards by 120px.
- \snippet examples/particles/affectors/content/move.qml A
- The green particles have an affector that affects their velocity, but with some angle variation. By adding some random direction
- velocity to their existing forwards velocity, they begin to spray off in a cone.
- \snippet examples/particles/affectors/content/move.qml B
- The blue particles have an affector that affects their acceleration, and because it sets relative to false this resets the acceleration instead of
- adding to it. Once the blue particles reach the affector, their horizontal velocity stops increasing as their vertical velocity decreases.
- \snippet examples/particles/affectors/content/move.qml C
-
- SpriteGoal has an affector which interacts with the sprite engine of particles, if they are being drawn as sprites by ImageParticle.
- \snippet examples/particles/affectors/content/spritegoal.qml 0
- The SpriteGoal follows the image of the rocket ship on screen, and when it interacts with particles drawn by ImageParticle as sprites,
- it instructs them to move immediately to the "explode" state, which in this case is the animation of the asteroid breaking into many pieces.
-
- Turbulence has a flame with smoke, and both sets of particles being affected by a Turbulence affector. This gives a faint wind effect.
- \snippet examples/particles/affectors/content/turbulence.qml 0
- To make the wind change direction, subsitute a black and white noise image in the noiseSource parameter (it currently uses a default noise source).
-
- Wander uses a Wander affector to add some horizontal drift to snowflakes as they fall down.
- \snippet examples/particles/affectors/content/wander.qml 0
- There are different movements given by applying the Wander to different attributes of the trajectory, so the example makes it easy to play around and see the difference.
-*/
-
Item {
height: 480
width: 320
diff --git a/examples/particles/affectors/doc/src/affectors.qdoc b/examples/particles/affectors/doc/src/affectors.qdoc
new file mode 100644
index 0000000000..9f653fc1f1
--- /dev/null
+++ b/examples/particles/affectors/doc/src/affectors.qdoc
@@ -0,0 +1,113 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
+** 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$
+**
+****************************************************************************/
+
+/*!
+ \title QtQuick.Particles Examples - Affectors
+ \example particles/affectors
+ \brief This is a collection of examples using Affectors in the QML particle system.
+ \image qml-affectors-example.png
+
+ This is a collection of small QML examples relating to using Affectors in the particle system.
+ Each example is a small QML file emphasizing a particular element or feature.
+
+ Age demonstrates using an Age affector to prematurely end the lives of particles.
+ \snippet examples/particles/affectors/content/age.qml 0
+
+ As you move the affector around the screen, the particles inside it
+ (which haven't already been affected) jump to a period near the end
+ of their life. This gives them a short period to finish fading out,
+ but changing lifeLeft to 0 (the default), would cause them to reach
+ the end of their life instantly.
+
+ Attractor demonstrates using an Attractor affector to simulate a black hole
+ \snippet examples/particles/affectors/content/attractor.qml 0
+
+ All particles in the scene, including the rocket ship's exhaust and pellets, are pulled
+ towards the black hole. This effect is stronger closer to the black hole, so the
+ asteroids near the top of the screen are barely affected at all, while the ones
+ towards the middle sometimes curve drastically. To complete the effect, an Age
+ affector covers the black hole to destroy particles which come in contact with it.
+
+ Custom Affector manipulates the properties of the particles directly in javascript.
+ One Affector is used to make the leaves rock back and forth as they fall, looking more
+ leaf-like than just spinning in circles:
+ \snippet examples/particles/affectors/content/customaffector.qml 0
+ Another is used to provide a slightly varying friction to the leaves as they 'land',
+ to look more natural:
+ \snippet examples/particles/affectors/content/customaffector.qml 1
+
+ Friction is similar to the falling leaves in the custom affector, except that it uses a
+ flat friction the whole way down instead of custom affectors.
+ \snippet examples/particles/affectors/content/friction.qml 0
+
+ Gravity is a convenience affector for applying a constant acceleration to particles inside it
+ \snippet examples/particles/affectors/content/gravity.qml 0
+
+ GroupGoal sets up two particle groups for flaming and non-flaming balls, and gives you various
+ ways to transition between them.
+ \snippet examples/particles/affectors/content/groupgoal.qml unlit
+ The non-flaming balls have a one in a hundred chance of lighting on their own each second, but they also
+ have a GroupGoal set on the whole group. This affector affects all particles of the unlit group, when colliding
+ with particles in the lit group, and cause them to move to the lighting group.
+ \snippet examples/particles/affectors/content/groupgoal.qml lighting
+ lighting is an intermediate group so that the glow builds up and the transition is less jarring. So it automatically
+ moves into the lit group after 100ms.
+ \snippet examples/particles/affectors/content/groupgoal.qml lit
+ The lit group also has TrailEmitters on it for additional fire and smoke, but does not transition anywhere.
+ There are two more GroupGoal elements that allow particles in the unlit group to transition to the lighting group
+ (and then to the lit group).
+ \snippet examples/particles/affectors/content/groupgoal.qml groupgoal-pilot
+ The first is just an area bound to the location of an image of a pilot flame. When unlit balls pass through the flame,
+ they go straight to lit because the pilot flame is so hot.
+ \snippet examples/particles/affectors/content/groupgoal.qml groupgoal-ma
+ The second is bound to the location of the last pointer interaction, so that touching or clicking on unlit balls (which
+ is hard due to their constant movement) causes them to move to the lighting group.
+
+ Move shows some simple effects you can get by altering trajectory midway.
+ The red particles have an affector that affects their position, jumping them forwards by 120px.
+ \snippet examples/particles/affectors/content/move.qml A
+ The green particles have an affector that affects their velocity, but with some angle variation. By adding some random direction
+ velocity to their existing forwards velocity, they begin to spray off in a cone.
+ \snippet examples/particles/affectors/content/move.qml B
+ The blue particles have an affector that affects their acceleration, and because it sets relative to false this resets the acceleration instead of
+ adding to it. Once the blue particles reach the affector, their horizontal velocity stops increasing as their vertical velocity decreases.
+ \snippet examples/particles/affectors/content/move.qml C
+
+ SpriteGoal has an affector which interacts with the sprite engine of particles, if they are being drawn as sprites by ImageParticle.
+ \snippet examples/particles/affectors/content/spritegoal.qml 0
+ The SpriteGoal follows the image of the rocket ship on screen, and when it interacts with particles drawn by ImageParticle as sprites,
+ it instructs them to move immediately to the "explode" state, which in this case is the animation of the asteroid breaking into many pieces.
+
+ Turbulence has a flame with smoke, and both sets of particles being affected by a Turbulence affector. This gives a faint wind effect.
+ \snippet examples/particles/affectors/content/turbulence.qml 0
+ To make the wind change direction, subsitute a black and white noise image in the noiseSource parameter (it currently uses a default noise source).
+
+ Wander uses a Wander affector to add some horizontal drift to snowflakes as they fall down.
+ \snippet examples/particles/affectors/content/wander.qml 0
+ There are different movements given by applying the Wander to different attributes of the trajectory, so the example makes it easy to play around and see the difference.
+*/
+
diff --git a/examples/particles/customparticle/customparticle.qml b/examples/particles/customparticle/customparticle.qml
index eb4f772e97..694dfb0fc6 100644
--- a/examples/particles/customparticle/customparticle.qml
+++ b/examples/particles/customparticle/customparticle.qml
@@ -41,34 +41,6 @@
import QtQuick 2.0
import "../../shared" as Examples
-/*!
- \title QtQuick.Particles Examples - CustomParticle
- \example particles/customparticle
- \brief This is a collection of examples using CustomParticle in the QML particle system.
- \image qml-customparticle-example.png
-
- This is a collection of small QML examples relating to using CustomParticle in the particle system.
- Each example is a small QML file emphasizing a different way to use CustomParticle.
-
- Blur Particles adds a blur effect to the particles, which increases over the particle's life time.
- It uses a custom vertex shader:
- \snippet examples/particles/customparticle/content/blurparticles.qml vertex
- to propagate life time simulation to a custom fragment shader:
- \snippet examples/particles/customparticle/content/blurparticles.qml fragment
- which has access to both the normal image sampler and a blurred sampler, the image plus a ShaderEffect.
-
- Fragment Shader just uses the particle system as a vertex delivery system.
- \snippet examples/particles/customparticle/content/fragmentshader.qml 0
-
- Image Colors uses CustomParticle to assign colors to particles based on their location in a picture.
- The vertex shader,
- \snippet examples/particles/customparticle/content/imagecolors.qml vertex
- passes along the starting position for each vertex to the fragment shader,
- \snippet examples/particles/customparticle/content/imagecolors.qml fragment
- which uses it to determine the color for that particle.
-
-*/
-
Item {
height: 480
width: 320
diff --git a/examples/particles/customparticle/doc/src/customparticle.qdoc b/examples/particles/customparticle/doc/src/customparticle.qdoc
new file mode 100644
index 0000000000..8faaf4b8c7
--- /dev/null
+++ b/examples/particles/customparticle/doc/src/customparticle.qdoc
@@ -0,0 +1,54 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
+** 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$
+**
+****************************************************************************/
+
+/*!
+ \title QtQuick.Particles Examples - CustomParticle
+ \example particles/customparticle
+ \brief This is a collection of examples using CustomParticle in the QML particle system.
+ \image qml-customparticle-example.png
+
+ This is a collection of small QML examples relating to using CustomParticle in the particle system.
+ Each example is a small QML file emphasizing a different way to use CustomParticle.
+
+ Blur Particles adds a blur effect to the particles, which increases over the particle's life time.
+ It uses a custom vertex shader:
+ \snippet examples/particles/customparticle/content/blurparticles.qml vertex
+ to propagate life time simulation to a custom fragement shader:
+ \snippet examples/particles/customparticle/content/blurparticles.qml fragment
+ which has access to both the normal image sampler and a blurred sampler, the image plus a ShaderEffect.
+
+ Fragment Shader just uses the particle system as a vertex delivery system.
+ \snippet examples/particles/customparticle/content/fragmentshader.qml 0
+
+ Image Colors uses CustomParticle to assign colors to particles based on their location in a picture.
+ The vertex shader,
+ \snippet examples/particles/customparticle/content/imagecolors.qml vertex
+ passes along the starting position for each vertex to the fragment shader,
+ \snippet examples/particles/customparticle/content/imagecolors.qml fragment
+ which uses it to determine the color for that particle.
+
+*/
diff --git a/examples/particles/emitters/doc/src/emitters.qdoc b/examples/particles/emitters/doc/src/emitters.qdoc
new file mode 100644
index 0000000000..f6a9fd3db4
--- /dev/null
+++ b/examples/particles/emitters/doc/src/emitters.qdoc
@@ -0,0 +1,60 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
+** 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$
+**
+****************************************************************************/
+/*!
+ \title QtQuick.Particles Examples - Emitters
+ \example particles/emitters
+ \brief This is a collection of examples using Emitters in the QML particle system.
+ \image qml-emitters-example.png
+
+ This is a collection of small QML examples relating to using Emitters in the particle system.
+ Each example is a small QML file emphasizing a particular element or feature.
+
+ Velocity from motion gives the effect of strong particle motion through primarily moving the emitters:
+ \snippet examples/particles/emitters/content/velocityfrommotion.qml 0
+
+ Burst and pulse calls the burst and pulse methods on two idential emitters.
+ \snippet examples/particles/emitters/content/burstandpulse.qml 0
+ Note how burst takes an argument of number of particles to emit, and pulse takes an argument of number of milliseconds to emit for.
+ This gives a slightly different behaviour, which is easy to see in this example.
+
+ Custom Emitter connects to the emitParticles signal to set arbitrary values on particle data as they're emitted;
+ \snippet examples/particles/emitters/content/customemitter.qml 0
+ This is used to emit curving particles in six rotating spokes.
+
+ Emit mask sets an image mask on the Emitter, to emit out of an arbitrary shape.
+ \snippet examples/particles/emitters/content/emitmask.qml 0
+
+ Maximum emitted emits no more than a certain number of particles at a time. This example makes it easy to see what happens when the limit is reached.
+
+ Shape and Direction emits particles out of an unfilled Ellipse shape, using a TargetDirection
+ \snippet examples/particles/emitters/content/shapeanddirection.qml 0
+ This sends the particles towards the center of the ellipse with proportional speed, keeping the ellipse outline as they move to the center.
+
+ TrailEmitter uses that element to add smoke particles to trail the fire particles in the scene.
+ \snippet examples/particles/emitters/content/trailemitter.qml 0
+
+*/
diff --git a/examples/particles/emitters/emitters.qml b/examples/particles/emitters/emitters.qml
index d6537569cf..75e77e5d4f 100644
--- a/examples/particles/emitters/emitters.qml
+++ b/examples/particles/emitters/emitters.qml
@@ -41,41 +41,6 @@
import QtQuick 2.0
import "../../shared" as Examples
-/*!
- \title QtQuick.Particles Examples - Emitters
- \example particles/emitters
- \brief This is a collection of examples using Emitters in the QML particle system.
- \image qml-emitters-example.png
-
- This is a collection of small QML examples relating to using Emitters in the particle system.
- Each example is a small QML file emphasizing a particular element or feature.
-
- Velocity from motion gives the effect of strong particle motion through primarily moving the emitters:
- \snippet examples/particles/emitters/content/velocityfrommotion.qml 0
-
- Burst and pulse calls the burst and pulse methods on two idential emitters.
- \snippet examples/particles/emitters/content/burstandpulse.qml 0
- Note how burst takes an argument of number of particles to emit, and pulse takes an argument of number of milliseconds to emit for.
- This gives a slightly different behaviour, which is easy to see in this example.
-
- Custom Emitter connects to the emitParticles signal to set arbitrary values on particle data as they're emitted;
- \snippet examples/particles/emitters/content/customemitter.qml 0
- This is used to emit curving particles in six rotating spokes.
-
- Emit mask sets an image mask on the Emitter, to emit out of an arbitrary shape.
- \snippet examples/particles/emitters/content/emitmask.qml 0
-
- Maximum emitted emits no more than a certain number of particles at a time. This example makes it easy to see what happens when the limit is reached.
-
- Shape and Direction emits particles out of an unfilled Ellipse shape, using a TargetDirection
- \snippet examples/particles/emitters/content/shapeanddirection.qml 0
- This sends the particles towards the center of the ellipse with proportional speed, keeping the ellipse outline as they move to the center.
-
- TrailEmitter uses that element to add smoke particles to trail the fire particles in the scene.
- \snippet examples/particles/emitters/content/trailemitter.qml 0
-
-*/
-
Item {
height: 480
width: 320
diff --git a/examples/particles/imageparticle/doc/src/imageparticle.qdoc b/examples/particles/imageparticle/doc/src/imageparticle.qdoc
new file mode 100644
index 0000000000..d74db05e5f
--- /dev/null
+++ b/examples/particles/imageparticle/doc/src/imageparticle.qdoc
@@ -0,0 +1,62 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
+** 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$
+**
+****************************************************************************/
+
+/*!
+ \title QtQuick.Particles Examples - Affectors
+ \example particles/imageparticle
+ \brief This is a collection of examples using Affectors in the QML particle system.
+ \image qml-imageparticle-example.png
+
+ This is a collection of small QML examples relating to using Affectors in the particle system.
+ Each example is a small QML file emphasizing a particular element or feature.
+
+ All at once shows off several of the features of ImageParticle at the same time.
+ \snippet examples/particles/imageparticle/content/allatonce.qml 0
+
+ Colored shows a simple ImageParticle with some color variation.
+ \snippet examples/particles/imageparticle/content/colored.qml 0
+
+ Color Table sets the color over life on the particles to provide a fixed rainbow effect.
+ \snippet examples/particles/imageparticle/content/colortable.qml 0
+
+ Deformation spins and squishes a starfish particle.
+ \snippet examples/particles/imageparticle/content/colortable.qml spin
+ \snippet examples/particles/imageparticle/content/colortable.qml deform
+
+ Rotation demonstrates the autoRotate property, so that particles rotate in the direction that they travel.
+
+ Sharing demonstrates what happens when multiple ImageParticles try to render the same particle.
+ The following ImageParticle renders the particles inside the ListView:
+ \snippet examples/particles/imageparticle/content/sharing.qml 0
+ The following ImageParticle is placed inside the list highlight, and renders the particles above the other ImageParticle.
+ \snippet examples/particles/imageparticle/content/sharing.qml 1
+ Note that because it sets the color and alpha in this ImageParticle, it renders the particles in a different color.
+ Since it doesn't specify anything about the rotation, it shares the rotation with the other ImageParticle so that the flowers are rotated the same way in both.
+ Note that you can undo rotation in another ImageParticle, you just need to explicity set rotationVariation to 0.
+
+ Sprites demonstrates using an image particle to render animated sprites instead of static images for each particle.
+*/
diff --git a/examples/particles/imageparticle/imageparticle.qml b/examples/particles/imageparticle/imageparticle.qml
index 0635fd7010..c6caa1c29c 100644
--- a/examples/particles/imageparticle/imageparticle.qml
+++ b/examples/particles/imageparticle/imageparticle.qml
@@ -41,42 +41,6 @@
import QtQuick 2.0
import "../../shared" as Examples
-/*!
- \title QtQuick.Particles Examples - Affectors
- \example particles/imageparticle
- \brief This is a collection of examples using Affectors in the QML particle system.
- \image qml-imageparticle-example.png
-
- This is a collection of small QML examples relating to using Affectors in the particle system.
- Each example is a small QML file emphasizing a particular element or feature.
-
- All at once shows off several of the features of ImageParticle at the same time.
- \snippet examples/particles/imageparticle/content/allatonce.qml 0
-
- Colored shows a simple ImageParticle with some color variation.
- \snippet examples/particles/imageparticle/content/colored.qml 0
-
- Color Table sets the color over life on the particles to provide a fixed rainbow effect.
- \snippet examples/particles/imageparticle/content/colortable.qml 0
-
- Deformation spins and squishes a starfish particle.
- \snippet examples/particles/imageparticle/content/colortable.qml spin
- \snippet examples/particles/imageparticle/content/colortable.qml deform
-
- Rotation demonstrates the autoRotate property, so that particles rotate in the direction that they travel.
-
- Sharing demonstrates what happens when multiple ImageParticles try to render the same particle.
- The following ImageParticle renders the particles inside the ListView:
- \snippet examples/particles/imageparticle/content/sharing.qml 0
- The following ImageParticle is placed inside the list highlight, and renders the particles above the other ImageParticle.
- \snippet examples/particles/imageparticle/content/sharing.qml 1
- Note that because it sets the color and alpha in this ImageParticle, it renders the particles in a different color.
- Since it doesn't specify anything about the rotation, it shares the rotation with the other ImageParticle so that the flowers are rotated the same way in both.
- Note that you can undo rotation in another ImageParticle, you just need to explicitly set rotationVariation to 0.
-
- Sprites demonstrates using an image particle to render animated sprites instead of static images for each particle.
-*/
-
Item {
height: 480
width: 320
diff --git a/examples/particles/system/doc/src/system.qdoc b/examples/particles/system/doc/src/system.qdoc
new file mode 100644
index 0000000000..a52bd0d55c
--- /dev/null
+++ b/examples/particles/system/doc/src/system.qdoc
@@ -0,0 +1,59 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
+** 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$
+**
+****************************************************************************/
+
+/*!
+ \title QtQuick.Particles Examples - Affectors
+ \example particles/system
+ \brief This is a collection of examples using Affectors in the QML particle system.
+ \image qml-system-example.png
+
+ This is a collection of small QML examples relating to using Affectors in the particle system.
+ Each example is a small QML file emphasizing a particular element or feature.
+
+ Dynamic comparison compares using the particle system to getting a similar effect with the following code that dynamically instantiates Image elements.
+ \snippet examples/particles/system/content/dynamiccomparison.qml fake
+ Note how the Image elements are not able to be randomly colorized.
+
+ Start and Stop simply sets the running and paused states of a ParticleSystem. While the system does not perform any simulation when stopped or paused, a restart restarts the simulation from the beginning, while unpausing resumes the simulation from where it was.
+
+ Timed group changes is an example that highlights the ParticleGroup element. While normally referring to groups with a string name is sufficent, additional effects can be
+ done by setting properties on groups.
+ The first group has a variable duration on it, but always transitions to the second group.
+ \snippet examples/particles/system/content/timedgroupchanges.qml 0
+ The second group has a TrailEmitter on it, and a fixed duration for emitting into the third group. By placing the TrailEmitter as a direct child of the ParticleGroup, it automatically selects that group to follow.
+ \snippet examples/particles/system/content/timedgroupchanges.qml 1
+ The third group has an Affector as a direct child, which makes the affector automatically target this group. The affector means that as soon as particles enter this group, a burst function can be called on another emitter, using the x,y positions of this particle.
+ \snippet examples/particles/system/content/timedgroupchanges.qml 2
+
+ If TrailEmitter does not suit your needs for multiple emitters, you can also dynamically create Emitters while still using the same ParticleSystem and image particle
+ \snippet examples/particles/system/content/dynamicemitters.qml 0
+ Note that this effect, a flurry of flying rainbow spears, would be better served with TrailEmitter. It is only done with dynamic emitters in this example to show the concept more simply.
+
+ Multiple Painters shows how to control paint ordering of individual particles. While the paint ordering of particles within one ImagePainter is not strictly defined, ImageParticle elements follow the normal Z-ordering rules for QtQuick items. This example allow you to paint the inside of the particles above the black borders using a pair of ImageParticles each painting different parts of the same logical particle.
+
+*/
+
diff --git a/examples/particles/system/system.qml b/examples/particles/system/system.qml
index 2177f60987..ccf147e410 100644
--- a/examples/particles/system/system.qml
+++ b/examples/particles/system/system.qml
@@ -41,38 +41,6 @@
import QtQuick 2.0
import "../../shared" as Examples
-/*!
- \title QtQuick.Particles Examples - Affectors
- \example particles/system
- \brief This is a collection of examples using Affectors in the QML particle system.
- \image qml-system-example.png
-
- This is a collection of small QML examples relating to using Affectors in the particle system.
- Each example is a small QML file emphasizing a particular element or feature.
-
- Dynamic comparison compares using the particle system to getting a similar effect with the following code that dynamically instantiates Image elements.
- \snippet examples/particles/system/content/dynamiccomparison.qml fake
- Note how the Image elements are not able to be randomly colorized.
-
- Start and Stop simply sets the running and paused states of a ParticleSystem. While the system does not perform any simulation when stopped or paused, a restart restarts the simulation from the beginning, while unpausing resumes the simulation from where it was.
-
- Timed group changes is an example that highlights the ParticleGroup element. While normally referring to groups with a string name is sufficient, additional effects can be
- done by setting properties on groups.
- The first group has a variable duration on it, but always transitions to the second group.
- \snippet examples/particles/system/content/timedgroupchanges.qml 0
- The second group has a TrailEmitter on it, and a fixed duration for emitting into the third group. By placing the TrailEmitter as a direct child of the ParticleGroup, it automatically selects that group to follow.
- \snippet examples/particles/system/content/timedgroupchanges.qml 1
- The third group has an Affector as a direct child, which makes the affector automatically target this group. The affector means that as soon as particles enter this group, a burst function can be called on another emitter, using the x,y positions of this particle.
- \snippet examples/particles/system/content/timedgroupchanges.qml 2
-
- If TrailEmitter does not suit your needs for multiple emitters, you can also dynamically create Emitters while still using the same ParticleSystem and image particle
- \snippet examples/particles/system/content/dynamicemitters.qml 0
- Note that this effect, a flurry of flying rainbow spears, would be better served with TrailEmitter. It is only done with dynamic emitters in this example to show the concept more simply.
-
- Multiple Painters shows how to control paint ordering of individual particles. While the paint ordering of particles within one ImagePainter is not strictly defined, ImageParticle elements follow the normal Z-ordering rules for QtQuick items. This example allow you to paint the inside of the particles above the black borders using a pair of ImageParticles each painting different parts of the same logical particle.
-
-*/
-
Item {
height: 480
width: 320