aboutsummaryrefslogtreecommitdiffstats
path: root/examples/quick/particles
Commit message (Collapse)AuthorAgeFilesLines
* Examples: Disable QtC junction points for examples using 'shared' directoryKai Köhne2024-09-274-0/+84
| | | | | | | Task-number: QTBUG-128914 Pick-to: 6.8 Change-Id: If01f7e17c1f6c033e601e2e012745461c71f2e13 Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* examples: Consistently require Qt 6.8Fabian Kosmale2024-07-034-4/+4
| | | | | | | | | | | | This prevents policy warnings in a few cases, and we want people to opt-in to new policies, so make our examples copy'n'paste friendly. Pick-to: 6.8 Task-number: QTBUG-126201 Task-number: QTBUG-126468 Change-Id: Iefa666b61c2d2f767da3583f0f6efd8e4a2169e5 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Olivier De Cannière <olivier.decanniere@qt.io>
* CMake: Add deployment API to our examplesAlexandru Croitor2024-03-274-40/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Projects were modified using the tool at: https://git.qt.io/alcroito/cmake_refactor A few examples had to be adapted manually, mostly those that build additional qml modules / plugins. The INSTALL_EXAMPLESDIR and INSTALL_EXAMPLEDIR assignments were removed, these are not needed anymore because example directory selection is handled by the qt_internal_add_example calls. The install(TARGETS) calls were modified according to our documentation snippets for qt_generate_deploy_qml_app_script. A qt_generate_deploy_qml_app_script call was added for each executable target. Note that the deployment step will be skipped in the CI for now, because: - we enable QT_DEPLOY_MINIMAL_EXAMPLES in the CI instructions and thus set QT_INTERNAL_SKIP_DEPLOYMENT to true - standalone examples feature is not yet enabled in the CI, which means we continue to build examples in-tree, and deployment is disabled for in-tree prefix builds. A small list of examples to deploy in the CI will be chosen in the future, to ensure deployment coverage, without slowing down overall CI times due to all the *deployqt invocations. Even if deployment is disabled in the CI, the install(TARGETS) calls for each example will still run, installing into an 'installed_examples' directory, which will not be archived by the CI. The QtBundleQmlModuleForMacOS and bundle_shared code was removed, because we can now depend on the MACOS_BUNDLE_POST_BUILD option of the deployment api, to ensure macOS bundle examples run properly in the build dir. This works even in prefix in-tree builds, when installation deployment is disabled. Finally, for all examples that build additional qml module libraries or plugins, the libraries / plugins must be installed into the bin dir of each project, along with a qmldir file. This is to support running the installed project for platforms that don't have deployment api yet, like boot2qt / yocto. If we want to have super clean install / deployment rules in the future, we won't be able to avoid adding ugly per-platform conditions. The current status quo is deemed an improvement over what we had before. Pick-to: 6.7 Task-number: QTBUG-101340 Task-number: QTBUG-102056 Task-number: QTBUG-102057 Change-Id: I843d934668c25dbcd1abca52495b393579633fc5 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
* Correct license for examples filesLucie Gérard2024-03-215-5/+5
| | | | | | | | | | | | | Example takes precedent over build system file type. According to QUIP-18 [1], all examples file should be LicenseRef-Qt-Commercial OR BSD-3-Clause [1]: https://contribute.qt-project.org/quips/18 Pick-to: 6.7 6.7.0 Task-number: QTBUG-121787 Change-Id: Ie8c2539e7659f53a1fd6b48f99ee883ee9aeb0a7 Reviewed-by: Kai Köhne <kai.koehne@qt.io>
* Doc: Create separate Graphics and Multimedia example categoriesJaishree Vyas2024-01-174-4/+4
| | | | | | | Fixes: QTBUG-117884 Pick-to: 6.6 6.7 Change-Id: Ib0bb6217c29795fe50efdf827aa9902bbd572032 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* Move undocumented quick examples to manual testsLucie Gérard2023-11-2810-420/+0
| | | | | | | | | | | | | | | | | | - maskedmousearea ought to be redone with input handlers - delegatechooser needs a realistic use case, not so ugly - itemparticle hasn't been in working condition for some time, due to its use of flickr API - keep FlickrRssModel only in manual tests (broken for now) - remove bogus copies of flipable example files from the delegatemodel example which were added in 1fef24732bb5114392626a7fef956625a6cc66ac - copy shared components that examples tend to depend on into a shared directory for manual tests Task-number: QTBUG-88470 Task-number: QTBUG-119117 Change-Id: Ide1918f5e1b6fcc3efd939825892bfd270cef586 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Doc: Add example categories to Particles examplesInkamari Harjula2023-08-234-0/+4
| | | | | | | | | Add the example categories of Particles examples. Task-number: QTBUG-116265 Pick-to: 6.5 6.6 Change-Id: Ie773c51c8a862c3cba74b22a68078d68eb14b42d Reviewed-by: Mats Honkamaa <mats.honkamaa@qt.io>
* Examples: Use versioned CMake targets for Qt modulesKai Köhne2023-05-025-20/+20
| | | | | | | | | | | | Use e.g. Qt6::Core instead of Qt::Core. This is better matching the find_package(Qt6 ...) call, and also avoids issues that the versionless targets have. Pick-to: 6.5 Task-number: QTBUG-113277 Change-Id: Ib80f885e9f73fb9ad54b9e9b22cae2318877dc07 Reviewed-by: Alexey Edelev <alexey.edelev@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Particle system example: qmllint and qsTr()Oliver Eftevaag2023-04-204-43/+48
| | | | | | | | | | User facing strings are being translated, and all qmllint warnings are gone. JavaScript statments no longer end with semi-colon, and some whitespace changes have been made. Pick-to: 6.5 Change-Id: I2a6792800ef3b8a0dc596632dcd3b7d76aa08fe3 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
* Remove qmllint warnings in particle emitters exampleOliver Eftevaag2023-04-192-11/+7
| | | | | | Pick-to: 6.5 Change-Id: Ibdf9bb196454bcfa4c46d237aa69928d3bc9a7a4 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
* fix qmllint warnings in particle attractors exampleOliver Eftevaag2023-04-194-5/+2
| | | | | | Pick-to: 6.5 Change-Id: Ic3df17364aacd7aa02e843fd971470aa861df036 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
* Use qsTr() for user facing strings in particle attractors exampleOliver Eftevaag2023-03-311-3/+3
| | | | | | | Pick-to: 6.5 Change-Id: I8025b5dde59706827cb1bf546d03c6088f4600de Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
* Replace AUTO_RESOURCE_PREFIX with Qt CMake Policy in examples, testsAmir Masoud Abdol2023-02-215-10/+5
| | | | | | | | | | | | | | | | Every instance of AUTO_RESOURCE_PREFIX has been replaced by either qt_standard_project_setup(REQUIRES 6.5) or with qt_policy(SET QTP0001 NEW), mainly in tests. In addition, I added a warning message for the case where AUTO_RESOURCE_PREFIX is used. Pick-to: 6.5 Task-number: QTBUG-96233 Change-Id: I323a15e9d0bb5fe6ba649365314af9fc2ad67bda Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io>
* CMake: Allow omitting the version of QML modulesUlf Hermann2023-01-275-5/+0
| | | | | | | | | | | | | | | | | Also, drop all the VERSION 1.0 lines from the examples and tests. 1.0 is actually a bad default version since it's before all the Qt versions. [ChangeLog][QML] You can now omit the VERSION argument to qt_add_qml_module(). This will automatically generate the highest possible version. Pick-to: 6.5 Task-number: QTBUG-99146 Change-Id: Ic10ec69b87c224e0e94e1785f65653815d4c778c Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Alexey Edelev <alexey.edelev@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
* Quick examples: Modernize cmake files according to our guidelinesOliver Eftevaag2023-01-165-14/+14
| | | | | | | | | | | | | | | | The following changes are made to the CMakeLists.txt files in all quick examples: - Use PRIVATE linkage when possible. - Use qt_standard_project_setup() - Set WIN32 and MACOSX_BUNDLE in qt_add_executable() instead of set_target_properties() Pick-to: 6.5 Change-Id: I18217585aec56794b327f103d6959879df59d68a Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Change the license of all CMakeLists.txt and *.cmake files to BSDLucie Gérard2022-09-076-6/+6
| | | | | | | Task-number: QTBUG-105718 Change-Id: Id89ed14990804a5024183e75382cc539d4293da1 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Examples: Do not use import version numbers anymoreKai Köhne2022-08-319-17/+17
| | | | | | | | Pick-to: 6.4 Change-Id: I1f4d4920bb9d132a846ac2dbcfdb8b660759d540 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Add license headers to cmake filesLucie Gérard2022-07-086-0/+18
| | | | | | | | | | | | CMakeLists.txt and .cmake files of significant size (more than 2 lines according to our check in tst_license.pl) now have the copyright and license header. Existing copyright statements remain intact Task-number: QTBUG-88621 Change-Id: I72c89a98c42bbc9234d8495e9e503bec81d11037 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Adapt examples to AUTO_RESOURCE_PREFIXUlf Hermann2022-06-2410-5/+10
| | | | | | | | | | | Examples that don't explicitly set NO_RESOURCE_TARGET_PATH get the AUTO_RESOURCE_PREFIX now. Task-number: QTBUG-103452 Change-Id: I6b41e96ce5620079f60ca2f967b0a2e611c1f738 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
* Use SPDX license identifiersLucie Gérard2022-06-1145-2113/+90
| | | | | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. Files that have to be modified by hand are modified. License files are organized under LICENSES directory. Pick-to: 6.4 Task-number: QTBUG-67283 Change-Id: I63563bbeb6f60f89d2c99660400dca7fab78a294 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Improve examples CMakeLists.txtKai Köhne2022-01-246-28/+15
| | | | | | | | | | | | | | | | | | - Remove # generated from xyz.pro comment from pro2cmake - Remove "# special case" markers for pro2cmake - Remove automatic use of CMAKE_AUTORCC - Only opt into CMAKE_AUTOUIC if .ui files are involved - Remove explicit setting of CMAKE_INCLUDE_CURRENT_DIR - Combine multiple find_package(Qt6 ... calls) - use REQUIRED COMPONENTS - sort components alphabetically - Fix wrong indentations - Use (only) one empty line after multi-line commands Pick-to: 6.3 Change-Id: I0d6bfb06c4b25e9921d3d2bf31d977150f12b31b Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Particle examples: use new cmake apiOliver Eftevaag2021-11-1199-1206/+416
| | | | | | | | | | | | | | | | | | | | | | | | | The particles directory contains 5 different examples and a shared directory with some images files. This patch changes the examples to use qt_add_qml_module() in the CMakeLists.txt project files, and changes the .qrc files to directory reference the files needed by the individual projects, which removes the need for images.qrc. (The .pro files still reference the shared.qrc file) The "content" directories located in the different example projects, have been removed, and the containing files have simply been moved to the parent directories instead. Some unused files in the itemparticle example have also been deleted. This example looks very outdated and should ideally be improved, or perhaps simply removed, but I decided to leave it for now. Task-number: QTBUG-98130 Pick-to: 6.2 Change-Id: If05986b4347814715bca50b8d3f6a5cddbf9ced4 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Update examples to use new PropertyChangesUlf Hermann2021-11-034-22/+43
| | | | | | | | Also, prefer the multi-line syntax over ';'-separated bindings for readability. Change-Id: I3d6eb854e514ee257ca83773a11e6e9e10770bff Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Remove .prev_CMakeLists.txtUlf Hermann2021-08-311-7/+0
| | | | | | | | We don't need to use pro2cmake anymore here. Pick-to: 6.2 Change-Id: Iba8bac70c1fe31e56bf9680608913cc2c336f946 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Raise cmake_minimum_required to VERSION 3.16 in examplesJoerg Bornemann2021-08-175-5/+5
| | | | | | | Pick-to: 6.2 Task-number: QTBUG-95636 Change-Id: I9f76b787533dad1c469fbb8c69df6c27b20a9aa3 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Switch examples to build as isolated sub-buildsCraig Scott2021-05-271-5/+5
| | | | | | | Task-number: QTBUG-90820 Change-Id: Id9157526898ba72cb64ee8256639b37357f7bacf Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
* Use fixed qt_add_resource BASE argumentJoerg Bornemann2021-05-215-920/+230
| | | | | | | | Pick-to: 6.1 Task-number: QTBUG-86726 Change-Id: If6e1033642d98ccd40daeb57a453c0e5bc2985da Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Use functions as signal handlers when accessing parametersUlf Hermann2021-02-123-3/+3
| | | | | | | | | Injected signal handlers are bad practice because they aren't declared. Pick-to: 6.1 Task-number: QTBUG-89943 Change-Id: I3a691f68342a199bd63034637aa7ed438e3a037b Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Fix CustomAffector exampleKaj Grönholm2020-11-051-23/+2
| | | | | | | | | Don't use particle.r which doesn't exist since the CustomParticle removal. Make example a bit simpler without this. Task-number: QTBUG-88173 Change-Id: Id994a9a58796e8194fdccd63c6439d4c19681a45 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* CMake: Regenerate examples to set the WIN32_EXECUTABLE propertyAlexandru Croitor2020-10-265-0/+20
| | | | | | | | | As well as the MACOSX_BUNDLE properties as necessary. Task-number: QTBUG-87664 Task-number: QTBUG-86827 Change-Id: I46769fb543acb2cbeba122470b5e44ad478fbe4e Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* CMake: Regenerate examples to use qt_add_executableAlexandru Croitor2020-10-205-5/+5
| | | | | | Task-number: QTBUG-87661 Change-Id: Ie5bba408000211b24694aa0143bdf79c4a298f42 Reviewed-by: Daniel Smith <Daniel.Smith@qt.io>
* Remove CustomParticleEirik Aavitsland2020-06-0214-883/+0
| | | | | | | | | The implementation is intertwined with the direct GL path and not really portable to RHI. Fixes: QTBUG-78574 Change-Id: I6ac8707544c19a24661f07e0e6d2fc405e49cbff Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* CMake: Regenerate qtdeclarative/examplesAlexandru Croitor2020-05-296-6/+30
| | | | | | | | | Includes - new example installation paths - one case of QT_QMLTYPES_FILENAME addition Change-Id: I24423da9b04b6ecc8445017fa35f148dd43b1829 Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* Merge remote-tracking branch 'origin/dev' into wip/cmakeAlexandru Croitor2020-03-126-58/+67
|\ | | | | | | | | | | | | | | Conflicts: dependencies.yaml src/qml/qml/qqmlengine.cpp Change-Id: I6a73fd1064286f4a2232de85c2ce7f80452d4641
| * Avoid discouraged patterns in examplesUlf Hermann2020-02-116-23/+38
| | | | | | | | | | | | | | | | | | | | | | In particular, use required properties where applicable, explicitly import QtQml where we use it, avoid unqualified access into the root scope of a component, use JavaScript functions with explicit parameters as signal handlers. Change-Id: I3eaaba47cc3c7a2a12d488e36f9eec145cedbb0e Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * Use inline components for sharing exampleUlf Hermann2020-02-061-44/+38
| | | | | | | | | | Change-Id: I9390982bfefa35e6db6c8516c62ba091c231be8a Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* | Regenerate ExamplesLeander Beernaert2019-10-146-22/+22
| | | | | | | | | | Change-Id: I2fbfb44bbb6d667e022bffb480feaf74ff0d0a5e Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Update Examples with lowercase qt6_add_resources()Leander Beernaert2019-09-206-17/+17
| | | | | | | | | | | | | | | | Re-run pro2cmake on all exampls. Change-Id: Iafd1092beff023b407a8f29c2a5b651f2e534b75 Reviewed-by: Qt CMake Build Bot Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Add missing Examples with qml pluginsLeander Beernaert2019-09-191-0/+263
| | | | | | | | | | | | | | | | Add missing example projects which depended on the public QML plugin API. Change-Id: I05ed91e74eeaf6644700db13c3083fd110d96a62 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Add qt6_add_qml_module() public APILeander Beernaert2019-09-191-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Add qt6_add_qml_module() as a public API for building QML modules. Since the shared implementation details are small, it was easier to just reimplement the shared code than to unmangle the more complicated version we use to build Qt from QtBuild. This patch includes an example conversion. Changes for pro2cmake will follow in a separate patch in qtbase. Change-Id: I942526cc7d978e2d8309b506e785f9c1509d0bbc Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Convert ExamplesLeander Beernaert2019-08-237-0/+1311
|/ | | | | | | | This patch converts all examples in qtdeclarative except for a few exceptions which require a public facing qml plugin api. Change-Id: I2cd2b1bb455be8b48796893a8235dea7f8b35aa2 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Examples: Use XmlHttpRequest to fetch flickr public photosVenugopal Shivashankar2018-10-114-68/+85
| | | | | | | | | | | | | | | | | | This change is to facilite moving the XmlListModel code to the qtxmlpatterns repo, but still keep all the Particles examples together. Also fixed: - the old TODO about darkening images according to depth, and make it generally look a bit better. - move the visualdatamodel examples to a directory called delegatemodel, since that's how they work now. And add them to the main "views" example launcher so that they become more visible to users. Change-Id: I78f9f19e1e110608580adedcf4cd3be554222515 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Fix outdated FDL license headerKai Koehne2017-10-175-25/+25
| | | | | Change-Id: I76dccf547de40b5e72fd7abaa062fa96cb2c118a Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
* Fix outdated BSD license headerKai Koehne2017-10-1749-147/+637
| | | | | Change-Id: Icc08925454445fc9497fb3bfd2c26efe90605983 Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
* Purge sRGB chunks from PNGs in examples.Edward Welbourne2016-03-247-0/+0
| | | | | | | | | | | | Subjects each *.png file that matched grep -law "sRGB" to: pngcrush -ow -brute -rem allb -reduce Various tools grumble about sRGB tables in PNG images; and our handling of them doesn't pay attention to these, so purging them makes the images smaller with no loss to the images. Change-Id: If3baf60fb7c0045446ddfddecef96374845e739e Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
* Fixed license headersJani Heikkinen2015-02-1749-147/+147
| | | | | Change-Id: I4d5640ff95e1361ec7e65fb3e87d7726d8185ff5 Reviewed-by: Sergio Ahumada <sahumada@texla.cl>
* Update copyright headersJani Heikkinen2015-02-1254-275/+275
| | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Change-Id: I61120571787870c0ed17066afb31779b1e6e30e9 Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com>
* QQuickItemParticle: Only delete owned particlesAlan Alpert2015-02-041-0/+4
| | | | | | | | | | | | | | | | | A common pattern for ItemParticle (as shown in the particleview.qml example) is to use it to manage movement of a model's delegates. In such a case item management is handled by the user code (which bridges the needs of the Model and the View) and deleting the items in ItemParticle quickly leads to crashes. This change maintains (and improves, due to handling resets) the deletion of delegates created by the ItemParticles, as shown in delegates.qml. This example was expanded with a click to reset feature so as to more clearly see the impact of resets. Task-number: QTBUG-37486 Change-Id: I9de935034c11a7dd2abdd60e7b3bd42867dede9c Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
* Fix ItemParticle ExampleAlan Alpert2015-01-261-5/+3
| | | | | | | | The "press space to inject new items" functionality was broken, it had missed a couple of API changes somehow. Change-Id: Idccbf7ef50ecf5fc9d296a472f1dd78669f94206 Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
* Fix permissions of filesKai Koehne2014-12-021-0/+0
| | | | | Change-Id: I22958892d846da348325ba608084f8d9a05473d4 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>