ItemParticle QML Type

For specifying a delegate to paint particles. More...

Import Statement: import QtQuick.Particles
Inherits:

ParticlePainter

Properties

Methods

Detailed Description

Property Documentation

delegate : Component

An instance of the delegate will be created for every logical particle, and moved along with it. As an alternative to using delegate, you can create Item instances yourself and hand them to the ItemParticle to move using the take method.

Any delegate instances created by ItemParticle will be destroyed when the logical particle expires.


fade : bool

If true, the item will automatically be faded in and out at the ends of its lifetime. If false, you will have to implement any entry effect yourself.

Default is true.


Method Documentation

freeze(Item item)

Suspends the flow of time for the logical particle which item represents, allowing you to control its movement.


give(Item item)

Orders the ItemParticle to give you control of the item. It will cease controlling it and the item will lose its association to the logical particle.


take(Item item, bool prioritize)

Asks the ItemParticle to take over control of item positioning temporarily. It will follow the movement of a logical particle when one is available.

By default items form a queue when waiting for a logical particle, but if prioritize is true, then it will go immediately to the head of the queue.

ItemParticle does not take ownership of the item, and will relinquish control when the logical particle expires. Commonly at this point you will want to put it back in the queue, you can do this with the below line in the delegate definition:

ItemParticle.onDetached: itemParticleInstance.take(delegateRootItem);

or delete it, such as with the below line in the delegate definition:

ItemParticle.onDetached: delegateRootItem.destroy();

unfreeze(Item item)

Restarts the flow of time for the logical particle which item represents, allowing it to be moved by the particle system again.


© 2024 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.