aboutsummaryrefslogtreecommitdiffstats
path: root/tests/manual/quickcontrols
diff options
context:
space:
mode:
Diffstat (limited to 'tests/manual/quickcontrols')
-rw-r--r--tests/manual/quickcontrols/CMakeLists.txt8
-rw-r--r--tests/manual/quickcontrols/buttons/ButtonLoader.qml2
-rw-r--r--tests/manual/quickcontrols/buttons/buttons.cpp2
-rw-r--r--tests/manual/quickcontrols/buttons/buttons.qml2
-rw-r--r--tests/manual/quickcontrols/fonts/main.cpp2
-rw-r--r--tests/manual/quickcontrols/fonts/main.qml44
-rw-r--r--tests/manual/quickcontrols/gifs/CMakeLists.txt15
-rw-r--r--tests/manual/quickcontrols/gifs/capturedevent.cpp2
-rw-r--r--tests/manual/quickcontrols/gifs/capturedevent.h2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-busyindicator.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-button-flat.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-button-highlighted.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-button.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-checkbox-tristate.qml5
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-checkbox.qml5
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-checkdelegate-tristate.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-checkdelegate.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-combobox.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-delaybutton.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-dial-no-wrap.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-dial-wrap.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-drawer.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-itemdelegate.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-menu.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-progressbar-indeterminate.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-progressbar.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-radiobutton.qml5
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-radiodelegate.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-rangeslider.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-scrollbar-snap.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-scrollbar.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-scrollindicator.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-slider-snap.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-slider.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-stackview-pop.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-stackview-push.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-stackview-replace.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-stackview-unwind.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-swipedelegate-behind.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-swipedelegate-leading-trailing.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-swipedelegate.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-swipeview.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-switch.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-switchdelegate.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-tabbar.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/data/qtquickcontrols-tumbler-wrap.qml2
-rw-r--r--tests/manual/quickcontrols/gifs/eventcapturer.cpp2
-rw-r--r--tests/manual/quickcontrols/gifs/eventcapturer.h2
-rw-r--r--tests/manual/quickcontrols/gifs/gifrecorder.cpp6
-rw-r--r--tests/manual/quickcontrols/gifs/gifrecorder.h2
-rw-r--r--tests/manual/quickcontrols/gifs/tst_gifs.cpp2
-rw-r--r--tests/manual/quickcontrols/headerview/main.cpp3
-rw-r--r--tests/manual/quickcontrols/headerview/main.qml4
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/CMakeLists.txt187
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/icons.qrc40
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/bluetooth.pngbin0 -> 556 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/cart.pngbin0 -> 425 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/cloud.pngbin0 -> 525 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/favorite.pngbin0 -> 379 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/filter.pngbin0 -> 441 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/folder.pngbin0 -> 279 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/message.pngbin0 -> 466 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/music.pngbin0 -> 454 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/next.pngbin0 -> 201 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/pause.pngbin0 -> 141 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/power.pngbin0 -> 710 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/previous.pngbin0 -> 203 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/repeat.pngbin0 -> 328 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/save.pngbin0 -> 419 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/settings.pngbin0 -> 499 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/shuffle.pngbin0 -> 366 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/stop.pngbin0 -> 157 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/bluetooth.pngbin0 -> 1202 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/cart.pngbin0 -> 782 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/cloud.pngbin0 -> 1003 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/favorite.pngbin0 -> 744 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/filter.pngbin0 -> 872 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/folder.pngbin0 -> 437 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/grid.pngbin0 -> 177 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/message.pngbin0 -> 850 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/music.pngbin0 -> 842 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/next.pngbin0 -> 354 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/pause.pngbin0 -> 163 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/power.pngbin0 -> 1329 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/previous.pngbin0 -> 436 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/repeat.pngbin0 -> 634 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/save.pngbin0 -> 496 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/settings.pngbin0 -> 960 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/shuffle.pngbin0 -> 724 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/stop.pngbin0 -> 242 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/icons.svg648
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/index.theme14
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/images/album-cover.jpgbin0 -> 917863 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/applicationwindow-background.pngbin0 -> 82 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-checked-hovered.9.pngbin0 -> 1446 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-checked-hovered@2x.9.pngbin0 -> 4150 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-checked.9.pngbin0 -> 1353 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-checked@2x.9.pngbin0 -> 4049 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-disabled.9.pngbin0 -> 543 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-disabled@2x.9.pngbin0 -> 1509 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-hovered.9.pngbin0 -> 1444 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-hovered@2x.9.pngbin0 -> 3855 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-pressed.9.pngbin0 -> 1437 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-pressed@2x.9.pngbin0 -> 4048 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background.9.pngbin0 -> 1368 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background@2x.9.pngbin0 -> 3813 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-hovered.9.pngbin0 -> 4220 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-hovered@2x.9.pngbin0 -> 15135 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-open.9.pngbin0 -> 4197 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-open@2x.9.pngbin0 -> 14766 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-pressed.9.pngbin0 -> 4254 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-pressed@2x.9.pngbin0 -> 14995 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background.9.pngbin0 -> 4283 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background@2x.9.pngbin0 -> 14357 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-hovered.pngbin0 -> 390 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-hovered@2x.pngbin0 -> 961 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-open.pngbin0 -> 415 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-open@2x.pngbin0 -> 929 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-pressed.pngbin0 -> 373 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-pressed@2x.pngbin0 -> 955 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator.pngbin0 -> 381 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator@2x.pngbin0 -> 970 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-popup.9.pngbin0 -> 2437 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-popup@2x.9.pngbin0 -> 5349 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background-hovered.pngbin0 -> 11658 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background-hovered@2x.pngbin0 -> 36836 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background-pressed.pngbin0 -> 12061 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background-pressed@2x.pngbin0 -> 39021 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background.pngbin0 -> 10640 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background@2x.pngbin0 -> 34791 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-handle-pressed.pngbin0 -> 408 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-handle-pressed@2x.pngbin0 -> 963 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-handle.pngbin0 -> 360 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-handle@2x.pngbin0 -> 736 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/frame-background.9.pngbin0 -> 236 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/frame-background@2x.9.pngbin0 -> 419 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/imagine-assets.qrc113
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-checked.9.pngbin0 -> 1121 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-checked@2x.9.pngbin0 -> 3119 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-disabled.9.pngbin0 -> 127 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-disabled@2x.9.pngbin0 -> 144 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-hovered.9.pngbin0 -> 1120 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-hovered@2x.9.pngbin0 -> 2579 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-pressed.9.pngbin0 -> 1116 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-pressed@2x.9.pngbin0 -> 3140 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background.9.pngbin0 -> 127 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background@2x.9.pngbin0 -> 144 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-checked-hovered.pngbin0 -> 1643 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-checked-hovered@2x.pngbin0 -> 4863 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-checked.pngbin0 -> 1506 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-checked@2x.pngbin0 -> 4389 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-disabled.pngbin0 -> 955 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-disabled@2x.pngbin0 -> 2197 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-hovered.pngbin0 -> 1470 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-hovered@2x.pngbin0 -> 4373 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-pressed.pngbin0 -> 1502 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-pressed@2x.pngbin0 -> 4450 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background.pngbin0 -> 1415 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background@2x.pngbin0 -> 4224 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive-hovered.pngbin0 -> 82 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive-hovered@2x.pngbin0 -> 83 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive-pressed.pngbin0 -> 82 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive-pressed@2x.pngbin0 -> 83 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive.pngbin0 -> 82 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive@2x.pngbin0 -> 83 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-horizontal-disabled.9.pngbin0 -> 222 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-horizontal-disabled@2x.9.pngbin0 -> 470 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-horizontal.9.pngbin0 -> 235 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-horizontal@2x.9.pngbin0 -> 489 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-vertical-disabled.9.pngbin0 -> 239 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-vertical-disabled@2x.9.pngbin0 -> 447 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-vertical.9.pngbin0 -> 226 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-vertical@2x.9.pngbin0 -> 475 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle-disabled.pngbin0 -> 523 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle-disabled@2x.pngbin0 -> 947 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle-hovered.pngbin0 -> 1066 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle-hovered@2x.pngbin0 -> 2866 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle.pngbin0 -> 1048 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle@2x.pngbin0 -> 2852 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-horizontal.9.pngbin0 -> 235 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-horizontal@2x.9.pngbin0 -> 489 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-vertical-disabled.9.pngbin0 -> 226 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-vertical-disabled@2x.9.pngbin0 -> 475 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-vertical.9.pngbin0 -> 226 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-vertical@2x.9.pngbin0 -> 475 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/textfield-background-disabled.9.pngbin0 -> 252 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/textfield-background-disabled@2x.9.pngbin0 -> 445 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/textfield-background.9.pngbin0 -> 256 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/textfield-background@2x.9.pngbin0 -> 481 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbar-background.9.pngbin0 -> 240 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbar-background@2x.9.pngbin0 -> 483 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-checked-hovered.9.pngbin0 -> 1174 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-checked-hovered@2x.9.pngbin0 -> 3156 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-checked.9.pngbin0 -> 1106 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-checked@2x.9.pngbin0 -> 3141 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-hovered.9.pngbin0 -> 1077 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-hovered@2x.9.pngbin0 -> 3026 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-pressed.9.pngbin0 -> 1137 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-pressed@2x.9.pngbin0 -> 3158 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background.9.pngbin0 -> 1079 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background@2x.9.pngbin0 -> 2737 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/tooltip-background.9.pngbin0 -> 2413 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/tooltip-background@2x.9.pngbin0 -> 4677 bytes
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/musicplayer.cpp24
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/musicplayer.pro16
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/musicplayer.qml417
-rw-r--r--tests/manual/quickcontrols/imagine/musicplayer/qtquickcontrols2.conf8
-rw-r--r--tests/manual/quickcontrols/manual.pro1
-rw-r--r--tests/manual/quickcontrols/material/CMakeLists.txt2
-rw-r--r--tests/manual/quickcontrols/material/Constants.qml2
-rw-r--r--tests/manual/quickcontrols/material/material.cpp2
-rw-r--r--tests/manual/quickcontrols/material/material.qml7
-rw-r--r--tests/manual/quickcontrols/material/pages/ButtonPage.qml13
-rw-r--r--tests/manual/quickcontrols/material/pages/DelayButtonPage.qml3
-rw-r--r--tests/manual/quickcontrols/material/pages/RoundButtonPage.qml6
-rw-r--r--tests/manual/quickcontrols/material/pages/SwitchPage.qml10
-rw-r--r--tests/manual/quickcontrols/material/pages/TextAreaPage.qml194
-rw-r--r--tests/manual/quickcontrols/material/pages/TextFieldPage.qml118
-rw-r--r--tests/manual/quickcontrols/menus/CMakeLists.txt47
-rw-r--r--tests/manual/quickcontrols/menus/Main.qml462
-rw-r--r--tests/manual/quickcontrols/menus/Menu.qml6
-rw-r--r--tests/manual/quickcontrols/menus/cppsettings.cpp43
-rw-r--r--tests/manual/quickcontrols/menus/cppsettings.h38
-rw-r--r--tests/manual/quickcontrols/menus/icons/warning.pngbin0 -> 1212 bytes
-rw-r--r--tests/manual/quickcontrols/menus/icons/warning@2x.pngbin0 -> 2118 bytes
-rw-r--r--tests/manual/quickcontrols/menus/main.cpp27
-rw-r--r--tests/manual/quickcontrols/nativestyle/Buttons.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/CheckBoxes.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/ComboBoxes.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/ControlContainer.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/CustomButtons.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/CustomCheckBoxes.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/CustomComboBoxes.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/CustomDials.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/CustomFrames.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/CustomProgressBars.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/CustomRadioButtons.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/CustomScrollBars.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/CustomSliders.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/CustomSpinBoxes.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/CustomTextAreas.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/CustomTextFields.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/Dials.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/Frames.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/ProgressBars.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/RadioButtons.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/ScrollBars.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/Sliders.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/SlidersMini.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/SlidersSmall.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/SpinBoxes.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/TextAreas.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/TextFields.qml2
-rw-r--r--tests/manual/quickcontrols/nativestyle/main.cpp2
-rw-r--r--tests/manual/quickcontrols/nativestyle/main.qml2
-rw-r--r--tests/manual/quickcontrols/qquickdialog/CustomDialog.qml2
-rw-r--r--tests/manual/quickcontrols/qquickdialog/DialogLabel.qml2
-rw-r--r--tests/manual/quickcontrols/qquickdialog/Marker.qml2
-rw-r--r--tests/manual/quickcontrols/qquickdialog/qquickdialog.cpp2
-rw-r--r--tests/manual/quickcontrols/qquickdialog/qquickdialog.qml2
-rw-r--r--tests/manual/quickcontrols/screenshots/screenshots.cpp2
-rw-r--r--tests/manual/quickcontrols/screenshots/screenshots.qml2
-rw-r--r--tests/manual/quickcontrols/shared/FontAwesome.qml2
-rw-r--r--tests/manual/quickcontrols/shared/FontAwesomeIcon.qml2
-rw-r--r--tests/manual/quickcontrols/sidepanel/CMakeLists.txt46
-rw-r--r--tests/manual/quickcontrols/sidepanel/doc/images/qtquickcontrols-sidepanel-landscape.pngbin0 -> 55216 bytes
-rw-r--r--tests/manual/quickcontrols/sidepanel/doc/images/qtquickcontrols-sidepanel-portrait.pngbin0 -> 32060 bytes
-rw-r--r--tests/manual/quickcontrols/sidepanel/doc/src/qtquickcontrols-sidepanel.qdoc59
-rw-r--r--tests/manual/quickcontrols/sidepanel/images/qt-logo.pngbin0 -> 1301 bytes
-rw-r--r--tests/manual/quickcontrols/sidepanel/images/qt-logo@2x.pngbin0 -> 2611 bytes
-rw-r--r--tests/manual/quickcontrols/sidepanel/images/qt-logo@3x.pngbin0 -> 4155 bytes
-rw-r--r--tests/manual/quickcontrols/sidepanel/images/qt-logo@4x.pngbin0 -> 5916 bytes
-rw-r--r--tests/manual/quickcontrols/sidepanel/qtquickcontrols2.conf2
-rw-r--r--tests/manual/quickcontrols/sidepanel/sidepanel.cpp17
-rw-r--r--tests/manual/quickcontrols/sidepanel/sidepanel.pro19
-rw-r--r--tests/manual/quickcontrols/sidepanel/sidepanel.qml132
-rw-r--r--tests/manual/quickcontrols/styles-cover-flow/CoverFlowDelegate.qml2
-rw-r--r--tests/manual/quickcontrols/styles-cover-flow/CoverFlowPath.qml2
-rw-r--r--tests/manual/quickcontrols/styles-cover-flow/styles-cover-flow.cpp2
-rw-r--r--tests/manual/quickcontrols/styles-cover-flow/styles-cover-flow.qml2
-rw-r--r--tests/manual/quickcontrols/styles/styles.cpp2
-rw-r--r--tests/manual/quickcontrols/styles/styles.qml151
-rw-r--r--tests/manual/quickcontrols/swipedelegate/CloseOnCompletedWorks.qml2
-rw-r--r--tests/manual/quickcontrols/swipetoremove/CMakeLists.txt40
-rw-r--r--tests/manual/quickcontrols/swipetoremove/doc/images/qtquickcontrols-swipetoremove.gifbin0 -> 371365 bytes
-rw-r--r--tests/manual/quickcontrols/swipetoremove/doc/images/qtquickcontrols-swipetoremove.pngbin0 -> 22511 bytes
-rw-r--r--tests/manual/quickcontrols/swipetoremove/doc/src/qtquickcontrols-swipetoremove.qdoc42
-rw-r--r--tests/manual/quickcontrols/swipetoremove/fonts/LICENSE.txt12
-rw-r--r--tests/manual/quickcontrols/swipetoremove/fonts/fontello.ttfbin0 -> 5164 bytes
-rw-r--r--tests/manual/quickcontrols/swipetoremove/swipetoremove.cpp20
-rw-r--r--tests/manual/quickcontrols/swipetoremove/swipetoremove.pro10
-rw-r--r--tests/manual/quickcontrols/swipetoremove/swipetoremove.qml130
-rw-r--r--tests/manual/quickcontrols/systemtrayicon/systemtrayicon.cpp2
-rw-r--r--tests/manual/quickcontrols/systemtrayicon/systemtrayicon.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/+Imagine/ApplicationWindow.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/+Imagine/ContentPane.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/+Imagine/Dialog.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/+Imagine/Menu.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/+Imagine/ToolBar.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/ApplicationWindow.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/ColorEditor.qml3
-rw-r--r--tests/manual/quickcontrols/testbench/ContentPane.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/ControlContainer.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/Dialog.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/ExampleContainer.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/Menu.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/SettingsDialog.qml9
-rw-r--r--tests/manual/quickcontrols/testbench/ToolBar.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/assetfixer.cpp2
-rw-r--r--tests/manual/quickcontrols/testbench/assetfixer.h2
-rw-r--r--tests/manual/quickcontrols/testbench/clipboard.cpp3
-rw-r--r--tests/manual/quickcontrols/testbench/clipboard.h2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/BusyIndicator.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/Button.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/CheckBox.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/CheckDelegate.qml8
-rw-r--r--tests/manual/quickcontrols/testbench/controls/ComboBox.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/DelayButton.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/Dial.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/Dialog.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/Frame.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/GroupBox.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/ItemDelegate.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/Label.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/Menu.qml5
-rw-r--r--tests/manual/quickcontrols/testbench/controls/MenuBar.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/Page.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/PageIndicator.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/Pane.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/ProgressBar.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/RadioButton.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/RadioDelegate.qml10
-rw-r--r--tests/manual/quickcontrols/testbench/controls/RangeSlider.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/RoundButton.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/ScrollBar.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/ScrollIndicator.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/Slider.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/SpinBox.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/SplitView.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/SwipeDelegate.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/Switch.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/SwitchDelegate.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/TabBar.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/TextArea.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/TextField.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/ToolBar.qml4
-rw-r--r--tests/manual/quickcontrols/testbench/controls/ToolTip.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/controls/Tumbler.qml2
-rw-r--r--tests/manual/quickcontrols/testbench/directoryvalidator.cpp2
-rw-r--r--tests/manual/quickcontrols/testbench/directoryvalidator.h2
-rw-r--r--tests/manual/quickcontrols/testbench/fonts.qrc2
-rw-r--r--tests/manual/quickcontrols/testbench/main.cpp2
-rw-r--r--tests/manual/quickcontrols/testbench/testbench.qml8
-rw-r--r--tests/manual/quickcontrols/viewinqwidget/main.cpp2
-rw-r--r--tests/manual/quickcontrols/viewinqwidget/main.qml2
355 files changed, 3362 insertions, 197 deletions
diff --git a/tests/manual/quickcontrols/CMakeLists.txt b/tests/manual/quickcontrols/CMakeLists.txt
index 524352d824..fa3bf67e9d 100644
--- a/tests/manual/quickcontrols/CMakeLists.txt
+++ b/tests/manual/quickcontrols/CMakeLists.txt
@@ -5,12 +5,18 @@
add_subdirectory(buttons)
add_subdirectory(fonts)
-add_subdirectory(gifs)
+if(LINUX)
+ add_subdirectory(gifs)
+endif()
add_subdirectory(headerview)
+add_subdirectory(imagine/musicplayer)
+add_subdirectory(menus)
add_subdirectory(qquickdialog)
add_subdirectory(screenshots)
+add_subdirectory(sidepanel)
add_subdirectory(styles)
add_subdirectory(styles-cover-flow)
+add_subdirectory(swipetoremove)
add_subdirectory(testbench)
if(QT_FEATURE_systemtrayicon)
add_subdirectory(systemtrayicon)
diff --git a/tests/manual/quickcontrols/buttons/ButtonLoader.qml b/tests/manual/quickcontrols/buttons/ButtonLoader.qml
index 24931d4078..66eb0eef29 100644
--- a/tests/manual/quickcontrols/buttons/ButtonLoader.qml
+++ b/tests/manual/quickcontrols/buttons/ButtonLoader.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/buttons/buttons.cpp b/tests/manual/quickcontrols/buttons/buttons.cpp
index 44e5971f4f..c27bed6612 100644
--- a/tests/manual/quickcontrols/buttons/buttons.cpp
+++ b/tests/manual/quickcontrols/buttons/buttons.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QGuiApplication>
#include <QQmlApplicationEngine>
diff --git a/tests/manual/quickcontrols/buttons/buttons.qml b/tests/manual/quickcontrols/buttons/buttons.qml
index 6c51c809e6..644e714a85 100644
--- a/tests/manual/quickcontrols/buttons/buttons.qml
+++ b/tests/manual/quickcontrols/buttons/buttons.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Material
diff --git a/tests/manual/quickcontrols/fonts/main.cpp b/tests/manual/quickcontrols/fonts/main.cpp
index eeee73e053..c0b285e76d 100644
--- a/tests/manual/quickcontrols/fonts/main.cpp
+++ b/tests/manual/quickcontrols/fonts/main.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QGuiApplication>
#include <QQmlApplicationEngine>
diff --git a/tests/manual/quickcontrols/fonts/main.qml b/tests/manual/quickcontrols/fonts/main.qml
index 3f1b5a91ed..1610b5abb4 100644
--- a/tests/manual/quickcontrols/fonts/main.qml
+++ b/tests/manual/quickcontrols/fonts/main.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
@@ -27,6 +27,7 @@ ApplicationWindow {
to: 48
value: 12
stepSize: 1
+ Layout.fillWidth: false
}
Label {
text: pointSizeSlider.value + " pt " + font.family
@@ -34,6 +35,7 @@ ApplicationWindow {
Button {
text: "Font…"
palette.buttonText: systemPalette.buttonText
+ Layout.fillWidth: false
onClicked: fontDialog.open()
FontDialog { id: fontDialog }
Component.onCompleted: fontDialog.selectedFont = window.font
@@ -42,6 +44,7 @@ ApplicationWindow {
Button {
text: "Text…"
palette.buttonText: textColorDialog.selectedColor
+ Layout.fillWidth: false
onClicked: textColorDialog.open()
ColorDialog { id: textColorDialog }
Component.onCompleted: textColorDialog.selectedColor = systemPalette.text
@@ -50,6 +53,7 @@ ApplicationWindow {
}
Button {
text: "Buttons…"
+ Layout.fillWidth: false
onClicked: buttonTextColorDialog.open()
ColorDialog { id: buttonTextColorDialog }
Component.onCompleted: buttonTextColorDialog.selectedColor = systemPalette.buttonText
@@ -72,20 +76,44 @@ ApplicationWindow {
text: "Label with **Bold** *Italics* _Underline_ ~~Strikethrough~~ `Mono`"
textFormat: Label.MarkdownText
}
- Button { text: "Button" }
+ Button {
+ text: "Button"
+ Layout.fillWidth: false
+ }
GroupBox {
title: "GroupBox"
+ Layout.fillWidth: false
+ Layout.fillHeight: false
ColumnLayout {
RadioButton { text: "RadioButton" }
CheckBox { text: "CheckBox" }
}
}
- Switch { text: "Switch" }
- TabButton { text: "TabButton" }
- TextField { placeholderText: "TextField" }
- TextArea { placeholderText: "TextArea" }
- ToolButton { text: "ToolButton" }
- Tumbler { model: 3 }
+ Switch {
+ text: "Switch"
+ Layout.fillWidth: false
+ }
+ TabButton {
+ text: "TabButton"
+ Layout.fillWidth: false
+ }
+ TextField {
+ placeholderText: "TextField"
+ Layout.fillWidth: false
+ }
+ TextArea {
+ placeholderText: "TextArea"
+ Layout.fillWidth: false
+ Layout.fillHeight: false
+ }
+ ToolButton {
+ text: "ToolButton"
+ }
+ Tumbler {
+ model: 3
+ Layout.fillWidth: false
+ Layout.fillHeight: false
+ }
}
ScrollBar.vertical: ScrollBar { }
diff --git a/tests/manual/quickcontrols/gifs/CMakeLists.txt b/tests/manual/quickcontrols/gifs/CMakeLists.txt
index 148aefe80f..674806e145 100644
--- a/tests/manual/quickcontrols/gifs/CMakeLists.txt
+++ b/tests/manual/quickcontrols/gifs/CMakeLists.txt
@@ -13,13 +13,12 @@ endif()
## tst_gifs Test:
#####################################################################
-# Collect test data
file(GLOB_RECURSE test_data_glob
RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/data/*)
list(APPEND test_data ${test_data_glob})
-qt_internal_add_manual_test(tst_gifs
+qt_internal_add_test(tst_gifs
SOURCES
capturedevent.cpp capturedevent.h
eventcapturer.cpp eventcapturer.h
@@ -28,9 +27,21 @@ qt_internal_add_manual_test(tst_gifs
LIBRARIES
Qt::Gui
Qt::Quick
+ Qt::Test
TESTDATA ${test_data}
)
+# Make the QML files available to Creator's locator.
+target_sources(tst_gifs
+ PRIVATE
+ ${test_data}
+)
+
+set_source_files_properties(${test_data}
+ PROPERTIES
+ HEADER_FILE_ONLY ON
+)
+
#### Keys ignored in scope 1:.:.:gifs.pro:<TRUE>:
# TEMPLATE = "app"
diff --git a/tests/manual/quickcontrols/gifs/capturedevent.cpp b/tests/manual/quickcontrols/gifs/capturedevent.cpp
index b693161814..4e67e9a039 100644
--- a/tests/manual/quickcontrols/gifs/capturedevent.cpp
+++ b/tests/manual/quickcontrols/gifs/capturedevent.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include "capturedevent.h"
diff --git a/tests/manual/quickcontrols/gifs/capturedevent.h b/tests/manual/quickcontrols/gifs/capturedevent.h
index 4ffa8ff72d..fe9b179962 100644
--- a/tests/manual/quickcontrols/gifs/capturedevent.h
+++ b/tests/manual/quickcontrols/gifs/capturedevent.h
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#ifndef CAPTUREDEVENT_H
#define CAPTUREDEVENT_H
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-busyindicator.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-busyindicator.qml
index 1463a48e42..ea977dffb8 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-busyindicator.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-busyindicator.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-button-flat.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-button-flat.qml
index c08885ccf7..030351e65a 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-button-flat.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-button-flat.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-button-highlighted.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-button-highlighted.qml
index 7d6baef42a..6085edf63c 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-button-highlighted.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-button-highlighted.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-button.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-button.qml
index 895a143762..4d55b72aae 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-button.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-button.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-checkbox-tristate.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-checkbox-tristate.qml
index 55d9bc28e3..490eb0fe9c 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-checkbox-tristate.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-checkbox-tristate.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
@@ -23,18 +23,21 @@ Window {
checkState: english.checked && norwegian.checked
? Qt.Checked : (english.checked || norwegian.checked) ? Qt.PartiallyChecked : Qt.Unchecked
tristate: true
+ Layout.fillWidth: false
}
CheckBox {
id: english
text: qsTr("English")
checked: true
leftPadding: indicator.width
+ Layout.fillWidth: false
}
CheckBox {
id: norwegian
text: qsTr("Norwegian")
checked: true
leftPadding: indicator.width
+ Layout.fillWidth: false
}
}
}
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-checkbox.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-checkbox.qml
index 867bb6142e..7d99c7421b 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-checkbox.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-checkbox.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
@@ -21,15 +21,18 @@ Window {
CheckBox {
checked: true
text: qsTr("First")
+ Layout.fillWidth: false
}
CheckBox {
id: control2
text: qsTr("Second")
+ Layout.fillWidth: false
}
CheckBox {
id: control3
checked: true
text: qsTr("Third")
+ Layout.fillWidth: false
}
}
}
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-checkdelegate-tristate.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-checkdelegate-tristate.qml
index 3dfec43cf5..4294170c94 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-checkdelegate-tristate.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-checkdelegate-tristate.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-checkdelegate.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-checkdelegate.qml
index 274f7580e9..e67960f335 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-checkdelegate.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-checkdelegate.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-combobox.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-combobox.qml
index 0982ff0bf0..67739ec3e6 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-combobox.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-combobox.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-delaybutton.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-delaybutton.qml
index e044dc7744..18a2980b8e 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-delaybutton.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-delaybutton.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-dial-no-wrap.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-dial-no-wrap.qml
index 13641e17f4..88d9f6c449 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-dial-no-wrap.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-dial-no-wrap.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-dial-wrap.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-dial-wrap.qml
index 3a47350a4f..c08b0d9d2c 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-dial-wrap.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-dial-wrap.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-drawer.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-drawer.qml
index 2cf05730af..c93f4c47a1 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-drawer.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-drawer.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-itemdelegate.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-itemdelegate.qml
index b4c7f29ec8..6f8011ecc9 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-itemdelegate.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-itemdelegate.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-menu.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-menu.qml
index f39cc8f7c5..ce4e58c025 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-menu.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-menu.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-progressbar-indeterminate.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-progressbar-indeterminate.qml
index 818c1a28ec..ce49f6c844 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-progressbar-indeterminate.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-progressbar-indeterminate.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-progressbar.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-progressbar.qml
index 2faca20388..3fa61db4ea 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-progressbar.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-progressbar.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-radiobutton.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-radiobutton.qml
index 7e4c391673..8869cf6659 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-radiobutton.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-radiobutton.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
@@ -23,14 +23,17 @@ Window {
id: control1
text: qsTr("First")
checked: true
+ Layout.fillWidth: false
}
RadioButton {
id: control2
text: qsTr("Second")
+ Layout.fillWidth: false
}
RadioButton {
id: control3
text: qsTr("Third")
+ Layout.fillWidth: false
}
}
}
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-radiodelegate.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-radiodelegate.qml
index 7569c8d7b2..004f806494 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-radiodelegate.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-radiodelegate.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-rangeslider.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-rangeslider.qml
index 6c7f548f48..42c4743e82 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-rangeslider.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-rangeslider.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-scrollbar-snap.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-scrollbar-snap.qml
index 06c8bd96d5..73f84b610b 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-scrollbar-snap.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-scrollbar-snap.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-scrollbar.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-scrollbar.qml
index 63afabbefe..7e784bd467 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-scrollbar.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-scrollbar.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-scrollindicator.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-scrollindicator.qml
index f2f12bbe91..fbb48d0325 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-scrollindicator.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-scrollindicator.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-slider-snap.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-slider-snap.qml
index ae5d8cf6cb..bcc57a4ca1 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-slider-snap.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-slider-snap.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-slider.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-slider.qml
index 134341ccfa..570fb67109 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-slider.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-slider.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-stackview-pop.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-stackview-pop.qml
index 64c44063a6..ad3d026c11 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-stackview-pop.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-stackview-pop.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-stackview-push.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-stackview-push.qml
index 523c482de8..6e241c4105 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-stackview-push.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-stackview-push.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-stackview-replace.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-stackview-replace.qml
index f1ba010b93..83e83cd6b6 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-stackview-replace.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-stackview-replace.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-stackview-unwind.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-stackview-unwind.qml
index 4631dce66a..bcef44cde0 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-stackview-unwind.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-stackview-unwind.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-swipedelegate-behind.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-swipedelegate-behind.qml
index 9a059e8c3d..2151e60afe 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-swipedelegate-behind.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-swipedelegate-behind.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-swipedelegate-leading-trailing.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-swipedelegate-leading-trailing.qml
index 7e09e7bcc6..b047ef4b64 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-swipedelegate-leading-trailing.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-swipedelegate-leading-trailing.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-swipedelegate.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-swipedelegate.qml
index a203f6fe83..48e67907b5 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-swipedelegate.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-swipedelegate.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-swipeview.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-swipeview.qml
index dcdc8832c9..dbc963dd69 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-swipeview.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-swipeview.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-switch.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-switch.qml
index 7099def2fc..98672e35d9 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-switch.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-switch.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-switchdelegate.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-switchdelegate.qml
index 123c4aec00..124e3eda29 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-switchdelegate.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-switchdelegate.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-tabbar.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-tabbar.qml
index 2a2da93f87..fd811585e0 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-tabbar.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-tabbar.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-tumbler-wrap.qml b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-tumbler-wrap.qml
index 1d6832bbc2..6cbd406493 100644
--- a/tests/manual/quickcontrols/gifs/data/qtquickcontrols-tumbler-wrap.qml
+++ b/tests/manual/quickcontrols/gifs/data/qtquickcontrols-tumbler-wrap.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/gifs/eventcapturer.cpp b/tests/manual/quickcontrols/gifs/eventcapturer.cpp
index 787e62a868..329426ab95 100644
--- a/tests/manual/quickcontrols/gifs/eventcapturer.cpp
+++ b/tests/manual/quickcontrols/gifs/eventcapturer.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include "eventcapturer.h"
diff --git a/tests/manual/quickcontrols/gifs/eventcapturer.h b/tests/manual/quickcontrols/gifs/eventcapturer.h
index 5833298c24..e595d01b9a 100644
--- a/tests/manual/quickcontrols/gifs/eventcapturer.h
+++ b/tests/manual/quickcontrols/gifs/eventcapturer.h
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#ifndef EVENTCAPTURER_H
#define EVENTCAPTURER_H
diff --git a/tests/manual/quickcontrols/gifs/gifrecorder.cpp b/tests/manual/quickcontrols/gifs/gifrecorder.cpp
index 77f965c2da..902341f11d 100644
--- a/tests/manual/quickcontrols/gifs/gifrecorder.cpp
+++ b/tests/manual/quickcontrols/gifs/gifrecorder.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include "gifrecorder.h"
@@ -14,7 +14,7 @@
\note The following programs must be installed if \c setHighQuality(true)
is called:
- \li \e ffmpeg (sudo apt-get install ffmpeg)
+ \li \e FFmpeg (sudo apt-get install ffmpeg)
\li \e convert (sudo apt-get install imagemagick)
\li \e gifsicle (sudo apt-get install gifsicle)
@@ -228,7 +228,7 @@ void GifRecorder::waitForFinish()
QSignalSpy spy(mWindow, SIGNAL(frameSwapped()));
QVERIFY(spy.wait());
- // Start ffmpeg and send its output to imagemagick's convert command.
+ // Start FFmpeg and send its output to imagemagick's convert command.
// Based on the example in the documentation for QProcess::setStandardOutputProcess().
QProcess ffmpegProcess;
QProcess convertProcess;
diff --git a/tests/manual/quickcontrols/gifs/gifrecorder.h b/tests/manual/quickcontrols/gifs/gifrecorder.h
index c01a6da5e3..738e46d980 100644
--- a/tests/manual/quickcontrols/gifs/gifrecorder.h
+++ b/tests/manual/quickcontrols/gifs/gifrecorder.h
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#ifndef GIFRECORDER_H
#define GIFRECORDER_H
diff --git a/tests/manual/quickcontrols/gifs/tst_gifs.cpp b/tests/manual/quickcontrols/gifs/tst_gifs.cpp
index 72f7039374..4ca12b1b82 100644
--- a/tests/manual/quickcontrols/gifs/tst_gifs.cpp
+++ b/tests/manual/quickcontrols/gifs/tst_gifs.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtTest>
#include <QtQuick>
diff --git a/tests/manual/quickcontrols/headerview/main.cpp b/tests/manual/quickcontrols/headerview/main.cpp
index fb4e191a88..ae248d08cf 100644
--- a/tests/manual/quickcontrols/headerview/main.cpp
+++ b/tests/manual/quickcontrols/headerview/main.cpp
@@ -1,10 +1,11 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QAbstractTableModel>
#include <QDebug>
#include <QGuiApplication>
#include <QQmlApplicationEngine>
+#include <QSet>
class TestTableModel : public QAbstractTableModel {
Q_OBJECT
diff --git a/tests/manual/quickcontrols/headerview/main.qml b/tests/manual/quickcontrols/headerview/main.qml
index 89367d91bf..182ba10069 100644
--- a/tests/manual/quickcontrols/headerview/main.qml
+++ b/tests/manual/quickcontrols/headerview/main.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQml.Models
import QtQuick
@@ -14,7 +14,7 @@ Window {
width: 640
height: 480
title: qsTr("HeaderView Test")
- color: Qt.styleHints.appearance === Qt.Light ? palette.mid : palette.midlight
+ color: Qt.styleHints.colorScheme === Qt.Light ? palette.mid : palette.midlight
TestTableModelWithHeader {
id: tableModel
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/CMakeLists.txt b/tests/manual/quickcontrols/imagine/musicplayer/CMakeLists.txt
new file mode 100644
index 0000000000..9adc56f86e
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/CMakeLists.txt
@@ -0,0 +1,187 @@
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
+
+cmake_minimum_required(VERSION 3.16)
+project(musicplayer LANGUAGES CXX)
+
+set(CMAKE_AUTOMOC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/quickcontrols/imagine/musicplayer")
+
+find_package(Qt6 REQUIRED COMPONENTS Core Gui Quick QuickControls2)
+
+qt_add_executable(musicplayerexample WIN32 MACOSX_BUNDLE
+ musicplayer.cpp
+)
+
+qt_add_qml_module(musicplayerexample
+ URI musicplayer
+ NO_RESOURCE_TARGET_PATH
+ QML_FILES
+ "musicplayer.qml"
+ RESOURCES
+ "icons/musicplayer/32x32/bluetooth.png"
+ "icons/musicplayer/32x32/cart.png"
+ "icons/musicplayer/32x32/cloud.png"
+ "icons/musicplayer/32x32/favorite.png"
+ "icons/musicplayer/32x32/filter.png"
+ "icons/musicplayer/32x32/folder.png"
+ "icons/musicplayer/32x32/message.png"
+ "icons/musicplayer/32x32/music.png"
+ "icons/musicplayer/32x32/next.png"
+ "icons/musicplayer/32x32/pause.png"
+ "icons/musicplayer/32x32/power.png"
+ "icons/musicplayer/32x32/previous.png"
+ "icons/musicplayer/32x32/repeat.png"
+ "icons/musicplayer/32x32/save.png"
+ "icons/musicplayer/32x32/settings.png"
+ "icons/musicplayer/32x32/shuffle.png"
+ "icons/musicplayer/32x32/stop.png"
+ "icons/musicplayer/32x32@2/bluetooth.png"
+ "icons/musicplayer/32x32@2/cart.png"
+ "icons/musicplayer/32x32@2/cloud.png"
+ "icons/musicplayer/32x32@2/favorite.png"
+ "icons/musicplayer/32x32@2/filter.png"
+ "icons/musicplayer/32x32@2/folder.png"
+ "icons/musicplayer/32x32@2/grid.png"
+ "icons/musicplayer/32x32@2/message.png"
+ "icons/musicplayer/32x32@2/music.png"
+ "icons/musicplayer/32x32@2/next.png"
+ "icons/musicplayer/32x32@2/pause.png"
+ "icons/musicplayer/32x32@2/power.png"
+ "icons/musicplayer/32x32@2/previous.png"
+ "icons/musicplayer/32x32@2/repeat.png"
+ "icons/musicplayer/32x32@2/save.png"
+ "icons/musicplayer/32x32@2/settings.png"
+ "icons/musicplayer/32x32@2/shuffle.png"
+ "icons/musicplayer/32x32@2/stop.png"
+ "icons/musicplayer/index.theme"
+ "images/album-cover.jpg"
+ "imagine-assets/applicationwindow-background.png"
+ "imagine-assets/button-background-checked-hovered.9.png"
+ "imagine-assets/button-background-checked-hovered@2x.9.png"
+ "imagine-assets/button-background-checked.9.png"
+ "imagine-assets/button-background-checked@2x.9.png"
+ "imagine-assets/button-background-disabled.9.png"
+ "imagine-assets/button-background-disabled@2x.9.png"
+ "imagine-assets/button-background-hovered.9.png"
+ "imagine-assets/button-background-hovered@2x.9.png"
+ "imagine-assets/button-background-pressed.9.png"
+ "imagine-assets/button-background-pressed@2x.9.png"
+ "imagine-assets/button-background.9.png"
+ "imagine-assets/button-background@2x.9.png"
+ "imagine-assets/combobox-background-hovered.9.png"
+ "imagine-assets/combobox-background-hovered@2x.9.png"
+ "imagine-assets/combobox-background-open.9.png"
+ "imagine-assets/combobox-background-open@2x.9.png"
+ "imagine-assets/combobox-background-pressed.9.png"
+ "imagine-assets/combobox-background-pressed@2x.9.png"
+ "imagine-assets/combobox-background.9.png"
+ "imagine-assets/combobox-background@2x.9.png"
+ "imagine-assets/combobox-indicator-hovered.png"
+ "imagine-assets/combobox-indicator-hovered@2x.png"
+ "imagine-assets/combobox-indicator-open.png"
+ "imagine-assets/combobox-indicator-open@2x.png"
+ "imagine-assets/combobox-indicator-pressed.png"
+ "imagine-assets/combobox-indicator-pressed@2x.png"
+ "imagine-assets/combobox-indicator.png"
+ "imagine-assets/combobox-indicator@2x.png"
+ "imagine-assets/combobox-popup.9.png"
+ "imagine-assets/combobox-popup@2x.9.png"
+ "imagine-assets/dial-background-hovered.png"
+ "imagine-assets/dial-background-hovered@2x.png"
+ "imagine-assets/dial-background-pressed.png"
+ "imagine-assets/dial-background-pressed@2x.png"
+ "imagine-assets/dial-background.png"
+ "imagine-assets/dial-background@2x.png"
+ "imagine-assets/dial-handle-pressed.png"
+ "imagine-assets/dial-handle-pressed@2x.png"
+ "imagine-assets/dial-handle.png"
+ "imagine-assets/dial-handle@2x.png"
+ "imagine-assets/frame-background.9.png"
+ "imagine-assets/frame-background@2x.9.png"
+ "imagine-assets/itemdelegate-background-checked.9.png"
+ "imagine-assets/itemdelegate-background-checked@2x.9.png"
+ "imagine-assets/itemdelegate-background-disabled.9.png"
+ "imagine-assets/itemdelegate-background-disabled@2x.9.png"
+ "imagine-assets/itemdelegate-background-hovered.9.png"
+ "imagine-assets/itemdelegate-background-hovered@2x.9.png"
+ "imagine-assets/itemdelegate-background-pressed.9.png"
+ "imagine-assets/itemdelegate-background-pressed@2x.9.png"
+ "imagine-assets/itemdelegate-background.9.png"
+ "imagine-assets/itemdelegate-background@2x.9.png"
+ "imagine-assets/roundbutton-background-checked-hovered.png"
+ "imagine-assets/roundbutton-background-checked-hovered@2x.png"
+ "imagine-assets/roundbutton-background-checked.png"
+ "imagine-assets/roundbutton-background-checked@2x.png"
+ "imagine-assets/roundbutton-background-disabled.png"
+ "imagine-assets/roundbutton-background-disabled@2x.png"
+ "imagine-assets/roundbutton-background-hovered.png"
+ "imagine-assets/roundbutton-background-hovered@2x.png"
+ "imagine-assets/roundbutton-background-pressed.png"
+ "imagine-assets/roundbutton-background-pressed@2x.png"
+ "imagine-assets/roundbutton-background.png"
+ "imagine-assets/roundbutton-background@2x.png"
+ "imagine-assets/scrollbar-handle-interactive-hovered.png"
+ "imagine-assets/scrollbar-handle-interactive-hovered@2x.png"
+ "imagine-assets/scrollbar-handle-interactive-pressed.png"
+ "imagine-assets/scrollbar-handle-interactive-pressed@2x.png"
+ "imagine-assets/scrollbar-handle-interactive.png"
+ "imagine-assets/scrollbar-handle-interactive@2x.png"
+ "imagine-assets/slider-background-horizontal-disabled.9.png"
+ "imagine-assets/slider-background-horizontal-disabled@2x.9.png"
+ "imagine-assets/slider-background-horizontal.9.png"
+ "imagine-assets/slider-background-horizontal@2x.9.png"
+ "imagine-assets/slider-background-vertical-disabled.9.png"
+ "imagine-assets/slider-background-vertical-disabled@2x.9.png"
+ "imagine-assets/slider-background-vertical.9.png"
+ "imagine-assets/slider-background-vertical@2x.9.png"
+ "imagine-assets/slider-handle-disabled.png"
+ "imagine-assets/slider-handle-disabled@2x.png"
+ "imagine-assets/slider-handle-hovered.png"
+ "imagine-assets/slider-handle-hovered@2x.png"
+ "imagine-assets/slider-handle.png"
+ "imagine-assets/slider-handle@2x.png"
+ "imagine-assets/slider-progress-horizontal.9.png"
+ "imagine-assets/slider-progress-horizontal@2x.9.png"
+ "imagine-assets/slider-progress-vertical-disabled.9.png"
+ "imagine-assets/slider-progress-vertical-disabled@2x.9.png"
+ "imagine-assets/slider-progress-vertical.9.png"
+ "imagine-assets/slider-progress-vertical@2x.9.png"
+ "imagine-assets/textfield-background-disabled.9.png"
+ "imagine-assets/textfield-background-disabled@2x.9.png"
+ "imagine-assets/textfield-background.9.png"
+ "imagine-assets/textfield-background@2x.9.png"
+ "imagine-assets/toolbar-background.9.png"
+ "imagine-assets/toolbar-background@2x.9.png"
+ "imagine-assets/toolbutton-background-checked-hovered.9.png"
+ "imagine-assets/toolbutton-background-checked-hovered@2x.9.png"
+ "imagine-assets/toolbutton-background-checked.9.png"
+ "imagine-assets/toolbutton-background-checked@2x.9.png"
+ "imagine-assets/toolbutton-background-hovered.9.png"
+ "imagine-assets/toolbutton-background-hovered@2x.9.png"
+ "imagine-assets/toolbutton-background-pressed.9.png"
+ "imagine-assets/toolbutton-background-pressed@2x.9.png"
+ "imagine-assets/toolbutton-background.9.png"
+ "imagine-assets/toolbutton-background@2x.9.png"
+ "imagine-assets/tooltip-background.9.png"
+ "imagine-assets/tooltip-background@2x.9.png"
+ "qtquickcontrols2.conf"
+)
+
+target_link_libraries(musicplayerexample PUBLIC
+ Qt6::Core
+ Qt6::Gui
+ Qt6::Quick
+ Qt6::QuickControls2
+)
+
+install(TARGETS musicplayerexample
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/icons.qrc b/tests/manual/quickcontrols/imagine/musicplayer/icons/icons.qrc
new file mode 100644
index 0000000000..870b4445e5
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/icons.qrc
@@ -0,0 +1,40 @@
+<RCC>
+ <qresource prefix="/icons">
+ <file>musicplayer/index.theme</file>
+ <file>musicplayer/32x32/bluetooth.png</file>
+ <file>musicplayer/32x32/cart.png</file>
+ <file>musicplayer/32x32/cloud.png</file>
+ <file>musicplayer/32x32/filter.png</file>
+ <file>musicplayer/32x32/folder.png</file>
+ <file>musicplayer/32x32/message.png</file>
+ <file>musicplayer/32x32/music.png</file>
+ <file>musicplayer/32x32/next.png</file>
+ <file>musicplayer/32x32/pause.png</file>
+ <file>musicplayer/32x32/power.png</file>
+ <file>musicplayer/32x32/previous.png</file>
+ <file>musicplayer/32x32/repeat.png</file>
+ <file>musicplayer/32x32/save.png</file>
+ <file>musicplayer/32x32/settings.png</file>
+ <file>musicplayer/32x32/shuffle.png</file>
+ <file>musicplayer/32x32/stop.png</file>
+ <file>musicplayer/32x32@2/bluetooth.png</file>
+ <file>musicplayer/32x32@2/cart.png</file>
+ <file>musicplayer/32x32@2/cloud.png</file>
+ <file>musicplayer/32x32@2/filter.png</file>
+ <file>musicplayer/32x32@2/folder.png</file>
+ <file>musicplayer/32x32@2/grid.png</file>
+ <file>musicplayer/32x32@2/message.png</file>
+ <file>musicplayer/32x32@2/music.png</file>
+ <file>musicplayer/32x32@2/next.png</file>
+ <file>musicplayer/32x32@2/pause.png</file>
+ <file>musicplayer/32x32@2/power.png</file>
+ <file>musicplayer/32x32@2/previous.png</file>
+ <file>musicplayer/32x32@2/repeat.png</file>
+ <file>musicplayer/32x32@2/save.png</file>
+ <file>musicplayer/32x32@2/settings.png</file>
+ <file>musicplayer/32x32@2/shuffle.png</file>
+ <file>musicplayer/32x32@2/stop.png</file>
+ <file>musicplayer/32x32/favorite.png</file>
+ <file>musicplayer/32x32@2/favorite.png</file>
+ </qresource>
+</RCC>
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/bluetooth.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/bluetooth.png
new file mode 100644
index 0000000000..925f564c9e
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/bluetooth.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/cart.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/cart.png
new file mode 100644
index 0000000000..4d5ad09955
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/cart.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/cloud.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/cloud.png
new file mode 100644
index 0000000000..62ef511833
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/cloud.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/favorite.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/favorite.png
new file mode 100644
index 0000000000..16ea84deb6
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/favorite.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/filter.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/filter.png
new file mode 100644
index 0000000000..4472cead58
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/filter.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/folder.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/folder.png
new file mode 100644
index 0000000000..5dd05778fd
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/folder.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/message.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/message.png
new file mode 100644
index 0000000000..1d93b3c660
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/message.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/music.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/music.png
new file mode 100644
index 0000000000..4448921389
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/music.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/next.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/next.png
new file mode 100644
index 0000000000..ab9164e877
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/next.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/pause.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/pause.png
new file mode 100644
index 0000000000..9c9ef8fa60
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/pause.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/power.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/power.png
new file mode 100644
index 0000000000..8f7d0c778c
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/power.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/previous.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/previous.png
new file mode 100644
index 0000000000..3a0880fdbc
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/previous.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/repeat.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/repeat.png
new file mode 100644
index 0000000000..7c8e8c1c2d
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/repeat.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/save.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/save.png
new file mode 100644
index 0000000000..c0b2748327
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/save.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/settings.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/settings.png
new file mode 100644
index 0000000000..7992146a6e
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/settings.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/shuffle.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/shuffle.png
new file mode 100644
index 0000000000..885782a219
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/shuffle.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/stop.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/stop.png
new file mode 100644
index 0000000000..3e9c332732
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32/stop.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/bluetooth.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/bluetooth.png
new file mode 100644
index 0000000000..2e70afc396
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/bluetooth.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/cart.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/cart.png
new file mode 100644
index 0000000000..5717dd6582
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/cart.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/cloud.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/cloud.png
new file mode 100644
index 0000000000..ce5ab9f991
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/cloud.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/favorite.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/favorite.png
new file mode 100644
index 0000000000..ddc9aa45c8
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/favorite.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/filter.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/filter.png
new file mode 100644
index 0000000000..3632c556fe
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/filter.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/folder.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/folder.png
new file mode 100644
index 0000000000..49d41e202e
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/folder.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/grid.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/grid.png
new file mode 100644
index 0000000000..8a1624e70b
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/grid.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/message.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/message.png
new file mode 100644
index 0000000000..6650f26b6a
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/message.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/music.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/music.png
new file mode 100644
index 0000000000..2cb8d49a67
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/music.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/next.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/next.png
new file mode 100644
index 0000000000..d7bb4b278e
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/next.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/pause.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/pause.png
new file mode 100644
index 0000000000..8a081d02f3
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/pause.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/power.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/power.png
new file mode 100644
index 0000000000..1201e55b4f
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/power.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/previous.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/previous.png
new file mode 100644
index 0000000000..4236afdbbd
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/previous.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/repeat.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/repeat.png
new file mode 100644
index 0000000000..c8cb06d84d
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/repeat.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/save.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/save.png
new file mode 100644
index 0000000000..448b25e4be
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/save.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/settings.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/settings.png
new file mode 100644
index 0000000000..12a0cf6b76
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/settings.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/shuffle.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/shuffle.png
new file mode 100644
index 0000000000..22b901cce9
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/shuffle.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/stop.png b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/stop.png
new file mode 100644
index 0000000000..0521a943d4
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/32x32@2/stop.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/icons.svg b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/icons.svg
new file mode 100644
index 0000000000..4cede992c3
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/icons.svg
@@ -0,0 +1,648 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="svg4485"
+ width="1116.5374"
+ height="64"
+ viewBox="0 0 1116.5374 63.999997"
+ sodipodi:docname="icons.svg"
+ inkscape:version="0.92.2 (5c3e80d, 2017-08-06)">
+ <metadata
+ id="metadata4491">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs4489" />
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1920"
+ inkscape:window-height="1017"
+ id="namedview4487"
+ showgrid="true"
+ inkscape:zoom="1.9019737"
+ inkscape:cx="833.25423"
+ inkscape:cy="74.046593"
+ inkscape:window-x="-8"
+ inkscape:window-y="-8"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="svg4485"
+ inkscape:snap-grids="false"
+ inkscape:object-nodes="false"
+ fit-margin-top="2.7755576e-017"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4517"
+ originx="-8.3788162"
+ originy="-6.3974667" />
+ </sodipodi:namedview>
+ <g
+ id="g5472"
+ transform="translate(0,3.2401047)"
+ inkscape:export-filename="C:\dev\qqc2-technical-style-demo\icons\technical\32x32@2\grid.png"
+ inkscape:export-xdpi="192"
+ inkscape:export-ydpi="192">
+ <g
+ transform="translate(-8.3787758,-966.40258)"
+ id="g5318">
+ <rect
+ y="998.53882"
+ x="27.755102"
+ height="9.2473469"
+ width="9.2473469"
+ id="rect4501"
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
+ <rect
+ y="1014.5388"
+ x="11.755102"
+ height="9.2473469"
+ width="9.2473469"
+ id="rect4513"
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
+ <rect
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ id="rect4515"
+ width="9.2473469"
+ height="9.2473469"
+ x="27.755102"
+ y="1014.5388" />
+ <rect
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ id="rect4519"
+ width="9.2473469"
+ height="9.2473469"
+ x="11.755102"
+ y="998.53882" />
+ </g>
+ <rect
+ y="28.759895"
+ x="0"
+ height="32"
+ width="32"
+ id="rect5360"
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
+ </g>
+ <g
+ id="g5478"
+ transform="translate(0,3.6478805)"
+ inkscape:export-filename="C:\dev\qqc2-technical-style-demo\icons\technical\32x32\settings.png"
+ inkscape:export-xdpi="96"
+ inkscape:export-ydpi="96">
+ <g
+ transform="translate(-8.3787758,-966.40258)"
+ id="g5322">
+ <path
+ style="fill:none;stroke:#000000;stroke-width:5;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="M 84.166529,1022.8327 69.433468,1008.4131"
+ id="path4507"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="m 64.778344,1000.0771 c 0.15838,-2.21589 0.892654,-3.97239 4.064921,-3.9244 l 5.79089,5.4089 -0.06518,5.0971 -6.56108,6.4293 -4.0079,0.3962 -6.391837,-5.0204 c 0.003,-1.8969 0.615654,-4.5976 3.391837,-4.2539 l 3.804082,2.5118 c 1.756369,-0.3456 2.524226,-1.6258 3.156295,-3.1014 z"
+ id="path4523"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccccccccc" />
+ </g>
+ <rect
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ id="rect5362"
+ width="32"
+ height="32"
+ x="47.771301"
+ y="28.352119" />
+ </g>
+ <g
+ id="g5484"
+ transform="translate(0,1.8732223)"
+ inkscape:export-filename="C:\dev\qqc2-technical-style-demo\icons\technical\32x32@2\filter.png"
+ inkscape:export-xdpi="192"
+ inkscape:export-ydpi="192">
+ <g
+ transform="translate(-8.3787758,-966.40258)"
+ id="g5326">
+ <path
+ style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 124.017,1012.8017 9.67769,-13.7927 H 108.6116 l 9.37299,13.931 v 13.1097 h 6.03241 z"
+ id="path4509"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccccc" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 116.70205,1019.6217 h 7.31466"
+ id="path4525"
+ inkscape:connector-curvature="0" />
+ </g>
+ <rect
+ y="30.126778"
+ x="96.808228"
+ height="32"
+ width="32"
+ id="rect5364"
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
+ </g>
+ <g
+ id="g5490"
+ transform="translate(0,3.322319)"
+ inkscape:export-filename="C:\dev\qqc2-technical-style-demo\icons\technical\32x32@2\message.png"
+ inkscape:export-xdpi="192"
+ inkscape:export-ydpi="192">
+ <g
+ transform="translate(-8.3787758,-966.40258)"
+ id="g5330">
+ <path
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ d="m 155.38109,1005.6573 14.74014,12.3019 14.29684,-12.3019 v 16.8459 h -29.03698 z"
+ id="rect4527"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccc" />
+ <path
+ sodipodi:nodetypes="cccccc"
+ inkscape:connector-curvature="0"
+ id="path4532"
+ d="m 155.38109,1002.206 14.74014,12.8565 14.29684,-12.8565 v -2.5487 h -29.03698 z"
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
+ </g>
+ <rect
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ id="rect5366"
+ width="32"
+ height="32"
+ x="145.52081"
+ y="28.677681" />
+ </g>
+ <g
+ id="g5497"
+ transform="translate(0,3.5476608)"
+ inkscape:export-filename="C:\dev\qqc2-technical-style-demo\icons\technical\32x32@2\music.png"
+ inkscape:export-xdpi="192"
+ inkscape:export-ydpi="192">
+ <g
+ transform="translate(-8.3787758,-966.40258)"
+ id="g5335">
+ <circle
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ id="path4534"
+ cx="210.02449"
+ cy="1019.4025"
+ r="5.7991834" />
+ <circle
+ r="5.7991834"
+ cy="1019.4025"
+ cx="227.51147"
+ id="circle4536"
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
+ <path
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.77122235;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ d="m 214.45548,1019.7112 v -19.81316 c 0,-1.11042 0.86314,-2.00436 1.93529,-2.00436 h 13.59886 c 1.07214,0 1.93528,0.89394 1.93528,2.00436 v 19.81316"
+ id="rect4538"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cssssc" />
+ </g>
+ <rect
+ y="28.452339"
+ x="194.38922"
+ height="32"
+ width="32"
+ id="rect5368"
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
+ </g>
+ <g
+ id="g5501"
+ transform="translate(0,3.1662521)"
+ inkscape:export-filename="C:\dev\qqc2-technical-style-demo\icons\technical\32x32@2\cloud.png"
+ inkscape:export-xdpi="192"
+ inkscape:export-ydpi="192">
+ <path
+ sodipodi:nodetypes="cccscc"
+ inkscape:connector-curvature="0"
+ id="rect4181"
+ d="m 251.48461,45.034419 c 0.4638,-10.8715 12.40207,-12.59447 15.43885,-2.5078 2.73388,0.2127 5.14555,2.6373 5.18665,5.068 0,3.4504 -2.90742,6.2281 -6.51889,6.2281 h -16.54418 c -5.83464,-1.7769 -4.57322,-9.6738 2.43757,-8.7883 z"
+ style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:2.46805668;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+ <rect
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ id="rect5370"
+ width="32"
+ height="32"
+ x="242.73279"
+ y="28.833748" />
+ </g>
+ <g
+ id="g5506"
+ transform="translate(0,2.188591)"
+ inkscape:export-filename="C:\dev\qqc2-technical-style-demo\icons\technical\32x32\bluetooth.png"
+ inkscape:export-xdpi="96"
+ inkscape:export-ydpi="96">
+ <g
+ transform="translate(-8.3787758,-966.40258)"
+ id="g5338">
+ <path
+ style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 302.67171,1006.3777 22.49812,12.0249 -9.75572,5.6324 v -23.642 l 9.85555,5.6901 -22.32088,12.5411"
+ id="path5197"
+ inkscape:connector-curvature="0" />
+ </g>
+ <rect
+ y="29.811409"
+ x="290.75372"
+ height="32"
+ width="32"
+ id="rect5372"
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
+ </g>
+ <g
+ id="g5514"
+ transform="translate(0,3.6180954)"
+ inkscape:export-filename="C:\dev\qqc2-technical-style-demo\icons\technical\32x32@2\cart.png"
+ inkscape:export-xdpi="192"
+ inkscape:export-ydpi="192">
+ <g
+ transform="translate(-8.3787758,-966.40258)"
+ id="g5344">
+ <rect
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.30289125;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ id="rect5199"
+ width="19.591835"
+ height="14.419591"
+ x="355.70938"
+ y="1002.3185" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 373.79839,1003.2635 v -5.25054 h 7.75837"
+ id="path5201"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccc" />
+ <circle
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ id="path5207"
+ cx="357.12"
+ cy="1020.8915"
+ r="2.6644897" />
+ <circle
+ r="2.6644897"
+ cy="1020.8915"
+ cx="374.64978"
+ id="circle5209"
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
+ </g>
+ <rect
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ id="rect5374"
+ width="32"
+ height="32"
+ x="342.87732"
+ y="28.381905" />
+ </g>
+ <g
+ id="g5520"
+ transform="translate(0,3.3700485)"
+ inkscape:export-filename="C:\dev\qqc2-technical-style-demo\icons\technical\32x32\power.png"
+ inkscape:export-xdpi="96"
+ inkscape:export-ydpi="96">
+ <g
+ transform="translate(-8.3787758,-966.40258)"
+ id="g5348">
+ <path
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ d="m 423.9111,999.19805 c 4.9899,1.81935 7.7689,6.19995 7.7689,11.81915 0,7.1847 -5.8243,13.009 -13.009,13.009 -7.1847,0 -13.009,-5.8243 -13.009,-13.009 0,-5.2414 3.0998,-9.7589 7.5661,-11.81915"
+ id="path5211"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cscsc" />
+ <rect
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.90877056;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ id="rect5214"
+ width="3"
+ height="14.321534"
+ x="417.20502"
+ y="996.53888" />
+ </g>
+ <rect
+ y="28.629951"
+ x="394.29221"
+ height="32"
+ width="32"
+ id="rect5376"
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
+ </g>
+ <g
+ id="g5528"
+ transform="translate(0,1.3681564)"
+ inkscape:export-filename="C:\dev\qqc2-technical-style-demo\icons\technical\32x32@2\save.png"
+ inkscape:export-xdpi="192"
+ inkscape:export-ydpi="192">
+ <g
+ transform="translate(-8.3787758,-966.40258)"
+ id="g5354">
+ <path
+ style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 461.313,1007.55 7.71825,-7.7187 H 486.75 v 26.4062 h -25.437 z"
+ id="path5250"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccc" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 466.625,1002.4875 v 5.625 h 14.1875 v -7.5625"
+ id="path5252"
+ inkscape:connector-curvature="0" />
+ <rect
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.85498571;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ id="rect5254"
+ width="3"
+ height="3"
+ x="469.43436"
+ y="1002.7332" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path5256"
+ d="m 466.625,1025.1125 v -7.9375 h 14.1875 v 7.875"
+ style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ sodipodi:nodetypes="cccc" />
+ </g>
+ <rect
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ id="rect5378"
+ width="32"
+ height="32"
+ x="449.65271"
+ y="30.631844" />
+ </g>
+ <g
+ id="g5534"
+ transform="translate(0,2.5602951)"
+ inkscape:export-filename="C:\dev\qqc2-technical-style-demo\icons\technical\32x32\folder.png"
+ inkscape:export-xdpi="96"
+ inkscape:export-ydpi="96">
+ <g
+ transform="translate(-8.3787758,-972.40258)"
+ id="g5358">
+ <path
+ id="rect5216"
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ d="m 510.7344,1007.7803 h 6.307 c 1.108,0 2,0.892 2,2 0.058,1.9158 0.4001,5.5746 -2,5.6471 l -6.307,-4e-4 h -2.0004 v -1.9996 l 4e-4,-3.6471 c 1e-4,-1.108 0.892,-2 2,-2 z m 3.3587,3.7123 h 13.2014 c 1.108,0 2.001,0.8774 2.0005,1.9674 v 1.967 h -2.0005 l -13.2014,5e-4 c -1.108,0 -2,-0.8775 -2,-1.9674 0,-1.09 0.892,-1.9674 2,-1.9674 z"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="sscccccsscssccsssc" />
+ <path
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ d="m 508.8555,1017.2315 v 8.6728 c 0,1.108 0.892,2 2,2 h 16.5957 c 1.108,0 2,-0.892 2,-2 v -8.6728 z"
+ id="rect5242"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="csssscc" />
+ </g>
+ <rect
+ y="29.439705"
+ x="494.71381"
+ height="32"
+ width="32"
+ id="rect5380"
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
+ </g>
+ <g
+ id="g3966"
+ inkscape:export-filename="C:\dev\qqc2-technical-style-demo\icons\technical\32x32@2\favorite.png"
+ inkscape:export-xdpi="192"
+ inkscape:export-ydpi="192">
+ <path
+ sodipodi:nodetypes="ccc"
+ inkscape:connector-curvature="0"
+ id="path5258"
+ d="m 679.76049,43.397888 c -11.16654,-4.90607 -6.54023,-14.887481 0.0528,-8.582499 6.18385,-6.259313 11.86465,3.625989 -0.0528,8.582499 z"
+ style="fill:none;stroke:#000000;stroke-width:2.2720654;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <rect
+ y="22.143074"
+ x="663.8728"
+ height="32"
+ width="32"
+ id="rect5399"
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
+ </g>
+ <g
+ id="g3970"
+ inkscape:export-filename="C:\dev\qqc2-technical-style-demo\icons\technical\32x32\stop.png"
+ inkscape:export-xdpi="96"
+ inkscape:export-ydpi="96">
+ <rect
+ ry="2"
+ rx="2"
+ y="30.209908"
+ x="730.55872"
+ height="13.875"
+ width="13.875"
+ id="rect5260"
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
+ <rect
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ id="rect5405"
+ width="32"
+ height="32"
+ x="721.49622"
+ y="21.147408" />
+ </g>
+ <g
+ id="g3976"
+ inkscape:export-filename="C:\dev\qqc2-technical-style-demo\icons\technical\32x32\previous.png"
+ inkscape:export-xdpi="96"
+ inkscape:export-ydpi="96">
+ <g
+ transform="matrix(0.92512795,0,0,0.92512795,49.646365,-1594.3495)"
+ id="g5275">
+ <path
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.84269726;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ inkscape:transform-center-x="1.6220757"
+ inkscape:transform-center-y="-9.5697762e-005"
+ d="m 809.37017,1768.9096 h -8.55767 -8.55877 v -4.1758 l 8.55877,-10.6475 8.55767,10.6475 z"
+ id="path5264"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccccc"
+ transform="matrix(0,-0.65656157,0.65656157,0,-358.61037,2289.4994)" />
+ <path
+ sodipodi:nodetypes="ccccccc"
+ inkscape:connector-curvature="0"
+ id="path5267"
+ d="m 810.35019,1758.0981 v 5.6186 5.6193 h -2.74167 l -6.99073,-5.6193 6.99073,-5.6186 z"
+ inkscape:transform-center-y="-9.5697762e-005"
+ inkscape:transform-center-x="1.6220757"
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.20984423;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
+ </g>
+ <rect
+ y="21.314461"
+ x="777.32397"
+ height="32"
+ width="32"
+ id="rect5407"
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
+ </g>
+ <g
+ id="g3988"
+ inkscape:export-filename="C:\dev\qqc2-technical-style-demo\icons\technical\32x32@2\next.png"
+ inkscape:export-xdpi="192"
+ inkscape:export-ydpi="192">
+ <g
+ transform="matrix(-0.92512795,0,0,0.92512795,1729.0016,-1594.3495)"
+ id="g5281">
+ <path
+ transform="matrix(0,-0.65656157,0.65656157,0,-358.61037,2289.4994)"
+ sodipodi:nodetypes="ccccccc"
+ inkscape:connector-curvature="0"
+ id="path5277"
+ d="m 809.37017,1768.9096 h -8.55767 -8.55877 v -4.1758 l 8.55877,-10.6475 8.55767,10.6475 z"
+ inkscape:transform-center-y="-9.5697762e-005"
+ inkscape:transform-center-x="1.6220757"
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.84269726;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
+ <path
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.20984423;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ inkscape:transform-center-x="1.6220757"
+ inkscape:transform-center-y="-9.5697762e-005"
+ d="m 810.35019,1758.0981 v 5.6186 5.6193 h -2.74167 l -6.99073,-5.6193 6.99073,-5.6186 z"
+ id="path5279"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccccc" />
+ </g>
+ <rect
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ id="rect5409"
+ width="32"
+ height="32"
+ x="969.32397"
+ y="21.314461" />
+ </g>
+ <g
+ id="g3996"
+ inkscape:export-filename="C:\dev\qqc2-technical-style-demo\icons\technical\32x32@2\repeat.png"
+ inkscape:export-xdpi="192"
+ inkscape:export-ydpi="192">
+ <g
+ transform="matrix(0.61777671,0,0,0.61777671,393.26213,-582.60358)"
+ id="g5386">
+ <path
+ style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 1057,996.9258 h -11 c -1.7949,2e-4 -3.2498,1.4551 -3.25,3.25 v 3.375"
+ id="path5283"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccc" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 1055.4787,992.6896 3.375,4.25 -3.75,3.875"
+ id="path5288"
+ inkscape:connector-curvature="0" />
+ <path
+ sodipodi:nodetypes="cccc"
+ inkscape:connector-curvature="0"
+ id="path5290"
+ d="m 1044.6035,1011.3192 h 11 c 1.7949,-2e-4 3.2498,-1.4551 3.25,-3.25 v -3.375"
+ style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path5292"
+ d="m 1046.1248,1015.5554 -3.375,-4.25 3.75,-3.875"
+ style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ </g>
+ <rect
+ y="21.719917"
+ x="1026.423"
+ height="32"
+ width="32"
+ id="rect5411"
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
+ </g>
+ <g
+ id="g4005"
+ inkscape:export-filename="C:\dev\qqc2-technical-style-demo\icons\technical\32x32@2\shuffle.png"
+ inkscape:export-xdpi="192"
+ inkscape:export-ydpi="192">
+ <g
+ transform="matrix(0.6410961,0,0,0.6410961,389.61554,-606.18813)"
+ id="g5393">
+ <path
+ style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 1101,997.8001 c 10.7776,0 1.9407,12.75 14.125,12.75"
+ id="path5294"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cc" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path5298"
+ d="m 1113.4787,992.6896 3.375,4.25 -3.75,3.875"
+ style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 1113.4787,1006.4897 3.375,4.25 -3.75,3.875"
+ id="path5300"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 1101.2501,1010.2375 c 1.479,0.07 2.6346,-0.5915 3.875,-1.6562"
+ id="path5302"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cc" />
+ <path
+ sodipodi:nodetypes="cc"
+ inkscape:connector-curvature="0"
+ id="path5312"
+ d="m 1113.6825,996.9157 c -1.479,-0.07 -2.6346,0.5915 -3.875,1.6562"
+ style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ </g>
+ <rect
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ id="rect5413"
+ width="32"
+ height="32"
+ x="1084.5374"
+ y="21.248909" />
+ </g>
+ <g
+ id="g3982"
+ inkscape:export-filename="C:\dev\qqc2-technical-style-demo\icons\technical\32x32@2\pause.png"
+ inkscape:export-xdpi="192"
+ inkscape:export-ydpi="192">
+ <g
+ transform="matrix(0.26732473,0,0,0.26732473,607.52158,-229.58324)"
+ id="g5397">
+ <rect
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.19984221;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
+ id="rect5269"
+ width="14.495689"
+ height="54.800774"
+ x="877.34277"
+ y="971.0022" />
+ <rect
+ y="971.0022"
+ x="904.9892"
+ height="54.800774"
+ width="14.495689"
+ id="rect5271"
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.19984221;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
+ </g>
+ <rect
+ y="21.314461"
+ x="831.68982"
+ height="32"
+ width="32"
+ id="rect5458"
+ style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.49999988;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
+ </g>
+</svg>
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/index.theme b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/index.theme
new file mode 100644
index 0000000000..2523293552
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/icons/musicplayer/index.theme
@@ -0,0 +1,14 @@
+[Icon Theme]
+Name=Music Player
+Comment=Icon theme for the Qt Quick Controls 2 Music Player Imagine Style Example
+
+Directories=32x32,32x32@2
+
+[32x32]
+Size=32
+Type=Fixed
+
+[32x32@2]
+Size=32
+Scale=2
+Type=Fixed
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/images/album-cover.jpg b/tests/manual/quickcontrols/imagine/musicplayer/images/album-cover.jpg
new file mode 100644
index 0000000000..48bd6231ba
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/images/album-cover.jpg
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/applicationwindow-background.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/applicationwindow-background.png
new file mode 100644
index 0000000000..036bf74692
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/applicationwindow-background.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-checked-hovered.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-checked-hovered.9.png
new file mode 100644
index 0000000000..c275d3242d
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-checked-hovered.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-checked-hovered@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-checked-hovered@2x.9.png
new file mode 100644
index 0000000000..eec285f305
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-checked-hovered@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-checked.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-checked.9.png
new file mode 100644
index 0000000000..2d284a5bc8
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-checked.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-checked@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-checked@2x.9.png
new file mode 100644
index 0000000000..fec385f539
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-checked@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-disabled.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-disabled.9.png
new file mode 100644
index 0000000000..bcad147094
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-disabled.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-disabled@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-disabled@2x.9.png
new file mode 100644
index 0000000000..03aba1535c
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-disabled@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-hovered.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-hovered.9.png
new file mode 100644
index 0000000000..962cf6778e
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-hovered.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-hovered@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-hovered@2x.9.png
new file mode 100644
index 0000000000..841c0064e7
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-hovered@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-pressed.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-pressed.9.png
new file mode 100644
index 0000000000..f97f42b809
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-pressed.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-pressed@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-pressed@2x.9.png
new file mode 100644
index 0000000000..970583495c
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background-pressed@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background.9.png
new file mode 100644
index 0000000000..74a8574fd3
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background@2x.9.png
new file mode 100644
index 0000000000..251633853e
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/button-background@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-hovered.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-hovered.9.png
new file mode 100644
index 0000000000..f9f90df4f4
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-hovered.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-hovered@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-hovered@2x.9.png
new file mode 100644
index 0000000000..a4be50e154
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-hovered@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-open.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-open.9.png
new file mode 100644
index 0000000000..147231ecb7
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-open.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-open@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-open@2x.9.png
new file mode 100644
index 0000000000..0a978572e7
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-open@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-pressed.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-pressed.9.png
new file mode 100644
index 0000000000..7726198ab1
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-pressed.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-pressed@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-pressed@2x.9.png
new file mode 100644
index 0000000000..d64d405239
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background-pressed@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background.9.png
new file mode 100644
index 0000000000..e919d50aa0
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background@2x.9.png
new file mode 100644
index 0000000000..5effba7e8b
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-background@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-hovered.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-hovered.png
new file mode 100644
index 0000000000..78b0650555
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-hovered.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-hovered@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-hovered@2x.png
new file mode 100644
index 0000000000..ec3c8734c8
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-hovered@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-open.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-open.png
new file mode 100644
index 0000000000..7a831632fe
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-open.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-open@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-open@2x.png
new file mode 100644
index 0000000000..47c664a2c8
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-open@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-pressed.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-pressed.png
new file mode 100644
index 0000000000..3340294f05
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-pressed.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-pressed@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-pressed@2x.png
new file mode 100644
index 0000000000..aa35b88200
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator-pressed@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator.png
new file mode 100644
index 0000000000..2c7f557819
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator@2x.png
new file mode 100644
index 0000000000..20b9c44c34
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-indicator@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-popup.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-popup.9.png
new file mode 100644
index 0000000000..cae75cd78e
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-popup.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-popup@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-popup@2x.9.png
new file mode 100644
index 0000000000..392607bcdf
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/combobox-popup@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background-hovered.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background-hovered.png
new file mode 100644
index 0000000000..ac614678b3
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background-hovered.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background-hovered@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background-hovered@2x.png
new file mode 100644
index 0000000000..b13783c23a
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background-hovered@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background-pressed.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background-pressed.png
new file mode 100644
index 0000000000..1bd74acac6
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background-pressed.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background-pressed@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background-pressed@2x.png
new file mode 100644
index 0000000000..ffd7d009eb
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background-pressed@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background.png
new file mode 100644
index 0000000000..c81fcb700b
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background@2x.png
new file mode 100644
index 0000000000..be3e15476b
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-background@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-handle-pressed.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-handle-pressed.png
new file mode 100644
index 0000000000..d27f9355d5
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-handle-pressed.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-handle-pressed@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-handle-pressed@2x.png
new file mode 100644
index 0000000000..a44e141066
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-handle-pressed@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-handle.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-handle.png
new file mode 100644
index 0000000000..9992a83990
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-handle.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-handle@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-handle@2x.png
new file mode 100644
index 0000000000..8816482a08
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/dial-handle@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/frame-background.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/frame-background.9.png
new file mode 100644
index 0000000000..1e436f2b36
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/frame-background.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/frame-background@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/frame-background@2x.9.png
new file mode 100644
index 0000000000..abdf3ab8e3
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/frame-background@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/imagine-assets.qrc b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/imagine-assets.qrc
new file mode 100644
index 0000000000..7bda4995d4
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/imagine-assets.qrc
@@ -0,0 +1,113 @@
+<RCC>
+ <qresource prefix="/imagine-assets">
+ <file>applicationwindow-background.png</file>
+ <file>button-background-checked-hovered.9.png</file>
+ <file>button-background-checked-hovered@2x.9.png</file>
+ <file>button-background-checked.9.png</file>
+ <file>button-background-checked@2x.9.png</file>
+ <file>button-background-disabled.9.png</file>
+ <file>button-background-disabled@2x.9.png</file>
+ <file>button-background-hovered.9.png</file>
+ <file>button-background-hovered@2x.9.png</file>
+ <file>button-background-pressed.9.png</file>
+ <file>button-background-pressed@2x.9.png</file>
+ <file>button-background.9.png</file>
+ <file>button-background@2x.9.png</file>
+ <file>combobox-background-hovered.9.png</file>
+ <file>combobox-background-hovered@2x.9.png</file>
+ <file>combobox-background-open.9.png</file>
+ <file>combobox-background-open@2x.9.png</file>
+ <file>combobox-background-pressed.9.png</file>
+ <file>combobox-background-pressed@2x.9.png</file>
+ <file>combobox-background.9.png</file>
+ <file>combobox-background@2x.9.png</file>
+ <file>combobox-indicator-hovered.png</file>
+ <file>combobox-indicator-hovered@2x.png</file>
+ <file>combobox-indicator-open.png</file>
+ <file>combobox-indicator-open@2x.png</file>
+ <file>combobox-indicator-pressed.png</file>
+ <file>combobox-indicator-pressed@2x.png</file>
+ <file>combobox-indicator.png</file>
+ <file>combobox-indicator@2x.png</file>
+ <file>combobox-popup.9.png</file>
+ <file>combobox-popup@2x.9.png</file>
+ <file>dial-background-hovered.png</file>
+ <file>dial-background-hovered@2x.png</file>
+ <file>dial-background-pressed.png</file>
+ <file>dial-background-pressed@2x.png</file>
+ <file>dial-background.png</file>
+ <file>dial-background@2x.png</file>
+ <file>dial-handle-pressed.png</file>
+ <file>dial-handle-pressed@2x.png</file>
+ <file>dial-handle.png</file>
+ <file>dial-handle@2x.png</file>
+ <file>frame-background.9.png</file>
+ <file>frame-background@2x.9.png</file>
+ <file>itemdelegate-background-checked.9.png</file>
+ <file>itemdelegate-background-checked@2x.9.png</file>
+ <file>itemdelegate-background-disabled.9.png</file>
+ <file>itemdelegate-background-disabled@2x.9.png</file>
+ <file>itemdelegate-background-hovered.9.png</file>
+ <file>itemdelegate-background-hovered@2x.9.png</file>
+ <file>itemdelegate-background-pressed.9.png</file>
+ <file>itemdelegate-background-pressed@2x.9.png</file>
+ <file>itemdelegate-background.9.png</file>
+ <file>itemdelegate-background@2x.9.png</file>
+ <file>roundbutton-background-checked-hovered.png</file>
+ <file>roundbutton-background-checked-hovered@2x.png</file>
+ <file>roundbutton-background-checked.png</file>
+ <file>roundbutton-background-checked@2x.png</file>
+ <file>roundbutton-background-disabled.png</file>
+ <file>roundbutton-background-disabled@2x.png</file>
+ <file>roundbutton-background-hovered.png</file>
+ <file>roundbutton-background-hovered@2x.png</file>
+ <file>roundbutton-background-pressed.png</file>
+ <file>roundbutton-background-pressed@2x.png</file>
+ <file>roundbutton-background.png</file>
+ <file>roundbutton-background@2x.png</file>
+ <file>scrollbar-handle-interactive-hovered.png</file>
+ <file>scrollbar-handle-interactive-hovered@2x.png</file>
+ <file>scrollbar-handle-interactive-pressed.png</file>
+ <file>scrollbar-handle-interactive-pressed@2x.png</file>
+ <file>scrollbar-handle-interactive.png</file>
+ <file>scrollbar-handle-interactive@2x.png</file>
+ <file>slider-background-horizontal-disabled.9.png</file>
+ <file>slider-background-horizontal-disabled@2x.9.png</file>
+ <file>slider-background-horizontal.9.png</file>
+ <file>slider-background-horizontal@2x.9.png</file>
+ <file>slider-background-vertical-disabled.9.png</file>
+ <file>slider-background-vertical-disabled@2x.9.png</file>
+ <file>slider-background-vertical.9.png</file>
+ <file>slider-background-vertical@2x.9.png</file>
+ <file>slider-handle-disabled.png</file>
+ <file>slider-handle-disabled@2x.png</file>
+ <file>slider-handle-hovered.png</file>
+ <file>slider-handle-hovered@2x.png</file>
+ <file>slider-handle.png</file>
+ <file>slider-handle@2x.png</file>
+ <file>slider-progress-horizontal.9.png</file>
+ <file>slider-progress-horizontal@2x.9.png</file>
+ <file>slider-progress-vertical-disabled.9.png</file>
+ <file>slider-progress-vertical-disabled@2x.9.png</file>
+ <file>slider-progress-vertical.9.png</file>
+ <file>slider-progress-vertical@2x.9.png</file>
+ <file>textfield-background-disabled.9.png</file>
+ <file>textfield-background-disabled@2x.9.png</file>
+ <file>textfield-background.9.png</file>
+ <file>textfield-background@2x.9.png</file>
+ <file>toolbar-background.9.png</file>
+ <file>toolbar-background@2x.9.png</file>
+ <file>toolbutton-background-checked-hovered.9.png</file>
+ <file>toolbutton-background-checked-hovered@2x.9.png</file>
+ <file>toolbutton-background-checked.9.png</file>
+ <file>toolbutton-background-checked@2x.9.png</file>
+ <file>toolbutton-background-hovered.9.png</file>
+ <file>toolbutton-background-hovered@2x.9.png</file>
+ <file>toolbutton-background-pressed.9.png</file>
+ <file>toolbutton-background-pressed@2x.9.png</file>
+ <file>toolbutton-background.9.png</file>
+ <file>toolbutton-background@2x.9.png</file>
+ <file>tooltip-background.9.png</file>
+ <file>tooltip-background@2x.9.png</file>
+ </qresource>
+</RCC>
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-checked.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-checked.9.png
new file mode 100644
index 0000000000..6c7915aab9
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-checked.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-checked@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-checked@2x.9.png
new file mode 100644
index 0000000000..24ddbce09a
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-checked@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-disabled.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-disabled.9.png
new file mode 100644
index 0000000000..65a670ebb5
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-disabled.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-disabled@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-disabled@2x.9.png
new file mode 100644
index 0000000000..df81dd0a98
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-disabled@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-hovered.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-hovered.9.png
new file mode 100644
index 0000000000..a8eb9e7a13
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-hovered.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-hovered@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-hovered@2x.9.png
new file mode 100644
index 0000000000..23559a28b4
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-hovered@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-pressed.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-pressed.9.png
new file mode 100644
index 0000000000..7d7a2bb960
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-pressed.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-pressed@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-pressed@2x.9.png
new file mode 100644
index 0000000000..911563fc0e
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background-pressed@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background.9.png
new file mode 100644
index 0000000000..65a670ebb5
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background@2x.9.png
new file mode 100644
index 0000000000..df81dd0a98
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/itemdelegate-background@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-checked-hovered.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-checked-hovered.png
new file mode 100644
index 0000000000..fae98b91b7
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-checked-hovered.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-checked-hovered@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-checked-hovered@2x.png
new file mode 100644
index 0000000000..1b575b0354
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-checked-hovered@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-checked.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-checked.png
new file mode 100644
index 0000000000..859232e2e5
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-checked.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-checked@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-checked@2x.png
new file mode 100644
index 0000000000..ef147a334a
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-checked@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-disabled.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-disabled.png
new file mode 100644
index 0000000000..862f4a26d8
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-disabled.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-disabled@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-disabled@2x.png
new file mode 100644
index 0000000000..f99e11fd08
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-disabled@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-hovered.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-hovered.png
new file mode 100644
index 0000000000..6239eb3214
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-hovered.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-hovered@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-hovered@2x.png
new file mode 100644
index 0000000000..aa2e8f46d8
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-hovered@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-pressed.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-pressed.png
new file mode 100644
index 0000000000..81d2cd7442
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-pressed.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-pressed@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-pressed@2x.png
new file mode 100644
index 0000000000..fd82c0c38c
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background-pressed@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background.png
new file mode 100644
index 0000000000..ab2e9ceea8
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background@2x.png
new file mode 100644
index 0000000000..33e81bf619
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/roundbutton-background@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive-hovered.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive-hovered.png
new file mode 100644
index 0000000000..2657743a81
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive-hovered.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive-hovered@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive-hovered@2x.png
new file mode 100644
index 0000000000..60ade78071
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive-hovered@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive-pressed.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive-pressed.png
new file mode 100644
index 0000000000..626ab8b6bb
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive-pressed.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive-pressed@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive-pressed@2x.png
new file mode 100644
index 0000000000..92789571d1
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive-pressed@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive.png
new file mode 100644
index 0000000000..a7a7347120
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive@2x.png
new file mode 100644
index 0000000000..837e179553
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/scrollbar-handle-interactive@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-horizontal-disabled.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-horizontal-disabled.9.png
new file mode 100644
index 0000000000..f45f588838
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-horizontal-disabled.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-horizontal-disabled@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-horizontal-disabled@2x.9.png
new file mode 100644
index 0000000000..40e6d50567
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-horizontal-disabled@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-horizontal.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-horizontal.9.png
new file mode 100644
index 0000000000..a465f300cc
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-horizontal.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-horizontal@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-horizontal@2x.9.png
new file mode 100644
index 0000000000..7a3170f529
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-horizontal@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-vertical-disabled.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-vertical-disabled.9.png
new file mode 100644
index 0000000000..0bee2685a0
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-vertical-disabled.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-vertical-disabled@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-vertical-disabled@2x.9.png
new file mode 100644
index 0000000000..7fed90c816
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-vertical-disabled@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-vertical.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-vertical.9.png
new file mode 100644
index 0000000000..a5074864b0
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-vertical.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-vertical@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-vertical@2x.9.png
new file mode 100644
index 0000000000..a3974ebe3c
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-background-vertical@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle-disabled.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle-disabled.png
new file mode 100644
index 0000000000..02a9df388d
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle-disabled.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle-disabled@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle-disabled@2x.png
new file mode 100644
index 0000000000..b37cef3272
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle-disabled@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle-hovered.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle-hovered.png
new file mode 100644
index 0000000000..2048aa6b07
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle-hovered.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle-hovered@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle-hovered@2x.png
new file mode 100644
index 0000000000..0515be8e11
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle-hovered@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle.png
new file mode 100644
index 0000000000..2a80f27f27
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle@2x.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle@2x.png
new file mode 100644
index 0000000000..2944704118
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-handle@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-horizontal.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-horizontal.9.png
new file mode 100644
index 0000000000..1224522f9d
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-horizontal.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-horizontal@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-horizontal@2x.9.png
new file mode 100644
index 0000000000..c304bfe5ad
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-horizontal@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-vertical-disabled.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-vertical-disabled.9.png
new file mode 100644
index 0000000000..0e7b08bd0e
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-vertical-disabled.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-vertical-disabled@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-vertical-disabled@2x.9.png
new file mode 100644
index 0000000000..d9654ceec4
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-vertical-disabled@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-vertical.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-vertical.9.png
new file mode 100644
index 0000000000..928ff864f0
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-vertical.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-vertical@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-vertical@2x.9.png
new file mode 100644
index 0000000000..3d640b277a
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/slider-progress-vertical@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/textfield-background-disabled.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/textfield-background-disabled.9.png
new file mode 100644
index 0000000000..de557cbc5f
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/textfield-background-disabled.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/textfield-background-disabled@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/textfield-background-disabled@2x.9.png
new file mode 100644
index 0000000000..23984d715d
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/textfield-background-disabled@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/textfield-background.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/textfield-background.9.png
new file mode 100644
index 0000000000..0dc163a4a3
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/textfield-background.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/textfield-background@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/textfield-background@2x.9.png
new file mode 100644
index 0000000000..41aae23d7f
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/textfield-background@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbar-background.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbar-background.9.png
new file mode 100644
index 0000000000..ab2f47e243
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbar-background.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbar-background@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbar-background@2x.9.png
new file mode 100644
index 0000000000..7e389fe0f0
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbar-background@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-checked-hovered.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-checked-hovered.9.png
new file mode 100644
index 0000000000..3acf92e12a
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-checked-hovered.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-checked-hovered@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-checked-hovered@2x.9.png
new file mode 100644
index 0000000000..0f43f93337
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-checked-hovered@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-checked.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-checked.9.png
new file mode 100644
index 0000000000..ff0faa567b
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-checked.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-checked@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-checked@2x.9.png
new file mode 100644
index 0000000000..694f5eab88
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-checked@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-hovered.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-hovered.9.png
new file mode 100644
index 0000000000..c60e64d10c
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-hovered.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-hovered@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-hovered@2x.9.png
new file mode 100644
index 0000000000..d0103202bd
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-hovered@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-pressed.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-pressed.9.png
new file mode 100644
index 0000000000..f2ec9c6e4b
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-pressed.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-pressed@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-pressed@2x.9.png
new file mode 100644
index 0000000000..e3a86911ee
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background-pressed@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background.9.png
new file mode 100644
index 0000000000..a292ac0959
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background@2x.9.png
new file mode 100644
index 0000000000..6f8880c393
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/toolbutton-background@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/tooltip-background.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/tooltip-background.9.png
new file mode 100644
index 0000000000..a74441c92a
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/tooltip-background.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/tooltip-background@2x.9.png b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/tooltip-background@2x.9.png
new file mode 100644
index 0000000000..d4b20b74b3
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/imagine-assets/tooltip-background@2x.9.png
Binary files differ
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/musicplayer.cpp b/tests/manual/quickcontrols/imagine/musicplayer/musicplayer.cpp
new file mode 100644
index 0000000000..bb1e01b6bc
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/musicplayer.cpp
@@ -0,0 +1,24 @@
+// Copyright (C) 2017 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+
+#include <QGuiApplication>
+#include <QQmlApplicationEngine>
+#include <QSettings>
+#include <QIcon>
+
+int main(int argc, char *argv[])
+{
+ QGuiApplication::setApplicationName("Music Player");
+ QGuiApplication::setOrganizationName("QtProject");
+
+ QGuiApplication app(argc, argv);
+
+ QIcon::setThemeName("musicplayer");
+
+ QQmlApplicationEngine engine;
+ engine.load(QUrl("qrc:/musicplayer.qml"));
+ if (engine.rootObjects().isEmpty())
+ return -1;
+
+ return app.exec();
+}
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/musicplayer.pro b/tests/manual/quickcontrols/imagine/musicplayer/musicplayer.pro
new file mode 100644
index 0000000000..67c716406e
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/musicplayer.pro
@@ -0,0 +1,16 @@
+TEMPLATE = app
+TARGET = musicplayer
+QT += quick quickcontrols2
+
+SOURCES += \
+ musicplayer.cpp
+
+RESOURCES += \
+ icons/icons.qrc \
+ images/album-cover.jpg \
+ imagine-assets/imagine-assets.qrc \
+ qtquickcontrols2.conf \
+ musicplayer.qml
+
+target.path = $$[QT_INSTALL_EXAMPLES]/quickcontrols/imagine/musicplayer
+INSTALLS += target
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/musicplayer.qml b/tests/manual/quickcontrols/imagine/musicplayer/musicplayer.qml
new file mode 100644
index 0000000000..314e05586c
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/musicplayer.qml
@@ -0,0 +1,417 @@
+// Copyright (C) 2017 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+
+import QtQuick
+import QtQuick.Layouts
+import QtQuick.Controls
+import QtQuick.Window
+
+ApplicationWindow {
+ id: window
+ width: 1280
+ height: 720
+ visible: true
+ title: "Qt Quick Controls - Imagine Style Example: Music Player"
+
+ Component.onCompleted: {
+ x = Screen.width / 2 - width / 2
+ y = Screen.height / 2 - height / 2
+ }
+
+ Shortcut {
+ sequence: "Ctrl+Q"
+ onActivated: Qt.quit()
+ }
+
+ header: ToolBar {
+ RowLayout {
+ id: headerRowLayout
+ anchors.fill: parent
+ spacing: 0
+
+ ToolButton { icon.name: "grid" }
+ ToolButton { icon.name: "settings" }
+ ToolButton { icon.name: "filter" }
+ ToolButton { icon.name: "message" }
+ ToolButton { icon.name: "music" }
+ ToolButton { icon.name: "cloud" }
+ ToolButton { icon.name: "bluetooth" }
+ ToolButton { icon.name: "cart" }
+
+ Item {
+ Layout.fillWidth: true
+ }
+
+ ToolButton {
+ icon.name: "power"
+ onClicked: Qt.quit()
+ }
+ }
+ }
+
+ Label {
+ text: "Qtify"
+ font.pixelSize: Qt.application.font.pixelSize * 1.3
+ anchors.centerIn: header
+ z: header.z + 1
+ }
+
+ RowLayout {
+ spacing: 115
+ anchors.fill: parent
+ anchors.margins: 70
+
+ ColumnLayout {
+ spacing: 0
+ Layout.preferredWidth: 230
+
+ RowLayout {
+ Layout.maximumHeight: 170
+
+ ColumnLayout {
+ Label {
+ text: "12 dB"
+ Layout.fillHeight: true
+ }
+ Label {
+ text: "6 dB"
+ Layout.fillHeight: true
+ }
+ Label {
+ text: "0 dB"
+ Layout.fillHeight: true
+ }
+ Label {
+ text: "-6 dB"
+ Layout.fillHeight: true
+ }
+ Label {
+ text: "-12 dB"
+ Layout.fillHeight: true
+ }
+ }
+
+ Repeater {
+ model: 7
+
+ Slider {
+ value: Math.random()
+ orientation: Qt.Vertical
+
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ }
+ }
+ }
+
+ RowLayout {
+ spacing: 10
+ Layout.topMargin: 23
+
+ ComboBox {
+ currentIndex: 1
+ model: ["Blues", "Classical", "Jazz", "Metal"]
+ Layout.fillWidth: true
+ }
+
+ Button {
+ icon.name: "folder"
+ Layout.fillWidth: false
+ }
+
+ Button {
+ icon.name: "save"
+ enabled: false
+ Layout.fillWidth: false
+ }
+ }
+
+ Dial {
+ Layout.alignment: Qt.AlignHCenter
+ Layout.topMargin: 50
+ }
+
+ Label {
+ text: "Volume"
+
+ Layout.alignment: Qt.AlignHCenter
+ Layout.topMargin: 12
+ }
+ }
+
+ ColumnLayout {
+ spacing: 26
+ Layout.preferredWidth: 230
+
+ Item {
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+
+ Image {
+ anchors.fill: parent
+ fillMode: Image.PreserveAspectCrop
+ source: "images/album-cover.jpg"
+ }
+ }
+
+ Item {
+ id: songLabelContainer
+ clip: true
+
+ Layout.fillWidth: true
+ Layout.preferredHeight: songNameLabel.implicitHeight
+
+ SequentialAnimation {
+ running: true
+ loops: Animation.Infinite
+
+ PauseAnimation {
+ duration: 2000
+ }
+ ParallelAnimation {
+ XAnimator {
+ target: songNameLabel
+ from: 0
+ to: songLabelContainer.width - songNameLabel.implicitWidth
+ duration: 5000
+ }
+ OpacityAnimator {
+ target: leftGradient
+ from: 0
+ to: 1
+ }
+ }
+ OpacityAnimator {
+ target: rightGradient
+ from: 1
+ to: 0
+ }
+ PauseAnimation {
+ duration: 1000
+ }
+ OpacityAnimator {
+ target: rightGradient
+ from: 0
+ to: 1
+ }
+ ParallelAnimation {
+ XAnimator {
+ target: songNameLabel
+ from: songLabelContainer.width - songNameLabel.implicitWidth
+ to: 0
+ duration: 5000
+ }
+ OpacityAnimator {
+ target: leftGradient
+ from: 0
+ to: 1
+ }
+ }
+ OpacityAnimator {
+ target: leftGradient
+ from: 1
+ to: 0
+ }
+ }
+
+ Rectangle {
+ id: leftGradient
+ gradient: Gradient {
+ GradientStop {
+ position: 0
+ color: "#dfe4ea"
+ }
+ GradientStop {
+ position: 1
+ color: "#00dfe4ea"
+ }
+ }
+
+ width: height
+ height: parent.height
+ anchors.left: parent.left
+ z: 1
+ rotation: -90
+ opacity: 0
+ }
+
+ Label {
+ id: songNameLabel
+ text: "Edvard Grieg - In the Hall of the Mountain King"
+ font.pixelSize: Qt.application.font.pixelSize * 1.4
+ }
+
+ Rectangle {
+ id: rightGradient
+ gradient: Gradient {
+ GradientStop {
+ position: 0
+ color: "#00dfe4ea"
+ }
+ GradientStop {
+ position: 1
+ color: "#dfe4ea"
+ }
+ }
+
+ width: height
+ height: parent.height
+ anchors.right: parent.right
+ rotation: -90
+ }
+ }
+
+ RowLayout {
+ spacing: 8
+ Layout.alignment: Qt.AlignHCenter
+
+ RoundButton {
+ icon.name: "favorite"
+ icon.width: 32
+ icon.height: 32
+ Layout.fillWidth: false
+ }
+ RoundButton {
+ icon.name: "stop"
+ icon.width: 32
+ icon.height: 32
+ Layout.fillWidth: false
+ }
+ RoundButton {
+ icon.name: "previous"
+ icon.width: 32
+ icon.height: 32
+ Layout.fillWidth: false
+ }
+ RoundButton {
+ icon.name: "pause"
+ icon.width: 32
+ icon.height: 32
+ Layout.fillWidth: false
+ }
+ RoundButton {
+ icon.name: "next"
+ icon.width: 32
+ icon.height: 32
+ Layout.fillWidth: false
+ }
+ RoundButton {
+ icon.name: "repeat"
+ icon.width: 32
+ icon.height: 32
+ Layout.fillWidth: false
+ }
+ RoundButton {
+ icon.name: "shuffle"
+ icon.width: 32
+ icon.height: 32
+ Layout.fillWidth: false
+ }
+ }
+
+ Slider {
+ id: seekSlider
+ value: 113
+ to: 261
+
+ Layout.fillWidth: true
+
+ ToolTip {
+ parent: seekSlider.handle
+ visible: seekSlider.pressed
+ text: pad(Math.floor(value / 60)) + ":" + pad(Math.floor(value % 60))
+ y: parent.height
+
+ readonly property int value: seekSlider.valueAt(seekSlider.position)
+
+ function pad(number) {
+ if (number <= 9)
+ return "0" + number;
+ return number;
+ }
+ }
+ }
+ }
+
+ ColumnLayout {
+ spacing: 16
+ Layout.preferredWidth: 230
+
+ ButtonGroup {
+ buttons: libraryRowLayout.children
+ }
+
+ RowLayout {
+ id: libraryRowLayout
+ Layout.alignment: Qt.AlignHCenter
+
+ Button {
+ text: "Files"
+ checked: true
+ Layout.fillWidth: false
+ }
+ Button {
+ text: "Playlists"
+ checkable: true
+ Layout.fillWidth: false
+ }
+ Button {
+ text: "Favourites"
+ checkable: true
+ Layout.fillWidth: false
+ }
+ }
+
+ RowLayout {
+ TextField {
+ Layout.fillWidth: true
+ }
+ Button {
+ icon.name: "folder"
+ Layout.fillWidth: false
+ }
+ }
+
+ Frame {
+ id: filesFrame
+ leftPadding: 1
+ rightPadding: 1
+
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+
+ ListView {
+ id: filesListView
+ clip: true
+ anchors.fill: parent
+ model: ListModel {
+ Component.onCompleted: {
+ for (var i = 0; i < 100; ++i) {
+ append({
+ author: "Author",
+ album: "Album",
+ track: "Track 0" + (i % 9 + 1),
+ });
+ }
+ }
+ }
+ delegate: ItemDelegate {
+ text: model.author + " - " + model.album + " - " + model.track
+ width: filesListView.width
+ }
+
+ ScrollBar.vertical: ScrollBar {
+ parent: filesFrame
+ policy: ScrollBar.AlwaysOn
+ anchors.top: parent.top
+ anchors.topMargin: filesFrame.topPadding
+ anchors.right: parent.right
+ anchors.rightMargin: 1
+ anchors.bottom: parent.bottom
+ anchors.bottomMargin: filesFrame.bottomPadding
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/tests/manual/quickcontrols/imagine/musicplayer/qtquickcontrols2.conf b/tests/manual/quickcontrols/imagine/musicplayer/qtquickcontrols2.conf
new file mode 100644
index 0000000000..df765ea7d2
--- /dev/null
+++ b/tests/manual/quickcontrols/imagine/musicplayer/qtquickcontrols2.conf
@@ -0,0 +1,8 @@
+[Controls]
+Style=Imagine
+
+[Imagine]
+Path=:/imagine-assets
+Palette\Text=#6b7b89
+Palette\ButtonText=#6b7b89
+Palette\WindowText=#6b7b89
diff --git a/tests/manual/quickcontrols/manual.pro b/tests/manual/quickcontrols/manual.pro
index 7010d902f1..874fdef2e7 100644
--- a/tests/manual/quickcontrols/manual.pro
+++ b/tests/manual/quickcontrols/manual.pro
@@ -4,6 +4,7 @@ SUBDIRS += \
fonts \
gifs \
headerview \
+ imagine/musicplayer \
qquickdialog \
screenshots \
styles \
diff --git a/tests/manual/quickcontrols/material/CMakeLists.txt b/tests/manual/quickcontrols/material/CMakeLists.txt
index 004d3e8708..8c18341bbe 100644
--- a/tests/manual/quickcontrols/material/CMakeLists.txt
+++ b/tests/manual/quickcontrols/material/CMakeLists.txt
@@ -24,6 +24,8 @@ set(qmake_immediate_resource_files
"pages/DelayButtonPage.qml"
"pages/RoundButtonPage.qml"
"pages/SwitchPage.qml"
+ "pages/TextAreaPage.qml"
+ "pages/TextFieldPage.qml"
"qmldir"
)
diff --git a/tests/manual/quickcontrols/material/Constants.qml b/tests/manual/quickcontrols/material/Constants.qml
index 51b9b6ff23..c2e46e6212 100644
--- a/tests/manual/quickcontrols/material/Constants.qml
+++ b/tests/manual/quickcontrols/material/Constants.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2022 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
pragma Singleton
import QtQml
diff --git a/tests/manual/quickcontrols/material/material.cpp b/tests/manual/quickcontrols/material/material.cpp
index 2e257b0902..aea1c937fe 100644
--- a/tests/manual/quickcontrols/material/material.cpp
+++ b/tests/manual/quickcontrols/material/material.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2022 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QGuiApplication>
#include <QQmlApplicationEngine>
#include <QSettings>
diff --git a/tests/manual/quickcontrols/material/material.qml b/tests/manual/quickcontrols/material/material.qml
index 78efaf72e3..5aae5211db 100644
--- a/tests/manual/quickcontrols/material/material.qml
+++ b/tests/manual/quickcontrols/material/material.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2022 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtCore
import QtQuick
import QtQuick.Controls.Material
@@ -53,6 +53,7 @@ ApplicationWindow {
ToolButton {
action: openDrawerAction
+ Layout.fillWidth: false
}
Label {
@@ -73,11 +74,13 @@ ApplicationWindow {
id: darkThemeSwitch
text: "Dark"
checked: settings.theme === Material.Dark
+ Layout.fillWidth: false
}
Switch {
id: denseSwitch
text: "Dense"
+ Layout.fillWidth: false
checked: settings.variant === "Dense"
ToolTip.text: "Requires restart"
@@ -97,7 +100,7 @@ ApplicationWindow {
focus: true
currentIndex: settings.currentControlIndex
anchors.fill: parent
- model: ["Button", "DelayButton", "RoundButton", "Switch"]
+ model: ["Button", "DelayButton", "RoundButton", "Switch", "TextArea", "TextField"]
delegate: ItemDelegate {
width: listView.width
text: modelData
diff --git a/tests/manual/quickcontrols/material/pages/ButtonPage.qml b/tests/manual/quickcontrols/material/pages/ButtonPage.qml
index 3f861e7a70..928f7c3194 100644
--- a/tests/manual/quickcontrols/material/pages/ButtonPage.qml
+++ b/tests/manual/quickcontrols/material/pages/ButtonPage.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2022 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.Material
import QtQuick.Layouts
@@ -13,13 +13,22 @@ Page {
header: RowLayout {
CheckBox {
+ id: textCheckBox
+ text: "Text"
+ checked: true
+ Layout.fillWidth: false
+ }
+
+ CheckBox {
id: iconCheckBox
text: "Icon"
+ Layout.fillWidth: false
}
CheckBox {
id: disabledCheckBox
text: "Disabled"
+ Layout.fillWidth: false
}
Item {
@@ -88,7 +97,7 @@ Page {
model: 13
Button {
- text: modelData
+ text: textCheckBox.checked ? modelData : ""
flat: flatCheckBox.checked
icon.source: iconCheckBox.checked ? "qrc:/qt-project.org/imports/QtQuick/Controls/Basic/images/check.png" : ""
diff --git a/tests/manual/quickcontrols/material/pages/DelayButtonPage.qml b/tests/manual/quickcontrols/material/pages/DelayButtonPage.qml
index ee9c12f446..cfdebf742c 100644
--- a/tests/manual/quickcontrols/material/pages/DelayButtonPage.qml
+++ b/tests/manual/quickcontrols/material/pages/DelayButtonPage.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2022 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.Material
import QtQuick.Layouts
@@ -15,6 +15,7 @@ Page {
CheckBox {
id: disabledCheckBox
text: "Disabled"
+ Layout.fillWidth: false
}
Item {
diff --git a/tests/manual/quickcontrols/material/pages/RoundButtonPage.qml b/tests/manual/quickcontrols/material/pages/RoundButtonPage.qml
index 1fbcbf2e45..bc9d3336f9 100644
--- a/tests/manual/quickcontrols/material/pages/RoundButtonPage.qml
+++ b/tests/manual/quickcontrols/material/pages/RoundButtonPage.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2022 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.Material
import QtQuick.Layouts
@@ -15,11 +15,13 @@ Page {
CheckBox {
id: iconCheckBox
text: "Icon"
+ Layout.fillWidth: false
}
CheckBox {
id: disabledCheckBox
text: "Disabled"
+ Layout.fillWidth: false
}
Item {
@@ -46,6 +48,7 @@ Page {
text: "Flat"
Layout.leftMargin: elevationLayout.contentLeftMargin
+ Layout.fillWidth: false
}
}
@@ -65,6 +68,7 @@ Page {
Material.elevation: modelData
Layout.leftMargin: elevationLayout.contentLeftMargin
+ Layout.fillWidth: false
}
}
diff --git a/tests/manual/quickcontrols/material/pages/SwitchPage.qml b/tests/manual/quickcontrols/material/pages/SwitchPage.qml
index 5335fa6290..12c553a1c5 100644
--- a/tests/manual/quickcontrols/material/pages/SwitchPage.qml
+++ b/tests/manual/quickcontrols/material/pages/SwitchPage.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2022 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.Material
import QtQuick.Layouts
@@ -17,22 +17,26 @@ Page {
Switch {
text: "Switch"
+ Layout.fillWidth: false
}
Switch {
text: "Checked Switch"
checked: true
+ Layout.fillWidth: false
}
Switch {
text: "Disabled Switch"
enabled: false
+ Layout.fillWidth: false
}
Switch {
text: "Checked disabled Switch"
checked: true
enabled: false
+ Layout.fillWidth: false
}
Item {
@@ -46,18 +50,21 @@ Page {
Switch {
text: "Switch"
icon.source: Constants.iconSource
+ Layout.fillWidth: false
}
Switch {
text: "Checked Switch"
icon.source: Constants.iconSource
checked: true
+ Layout.fillWidth: false
}
Switch {
text: "Disabled Switch"
icon.source: Constants.iconSource
enabled: false
+ Layout.fillWidth: false
}
Switch {
@@ -65,6 +72,7 @@ Page {
icon.source: Constants.iconSource
checked: true
enabled: false
+ Layout.fillWidth: false
}
Item {
diff --git a/tests/manual/quickcontrols/material/pages/TextAreaPage.qml b/tests/manual/quickcontrols/material/pages/TextAreaPage.qml
new file mode 100644
index 0000000000..9de28d1118
--- /dev/null
+++ b/tests/manual/quickcontrols/material/pages/TextAreaPage.qml
@@ -0,0 +1,194 @@
+// Copyright (C) 2022 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+import QtQuick
+import QtQuick.Controls.Material
+import QtQuick.Layouts
+
+import ".."
+
+Page {
+ id: root
+ topPadding: Constants.pageTopPadding
+
+// Component.onCompleted: Material.background = "red"
+
+ component TextAreaFlow: Flow {
+ id: layout
+ spacing: 40
+
+ required property int containerStyle
+
+ TextArea {
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextArea {
+ placeholderText: "placeholderText"
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextArea {
+ text: "text"
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextArea {
+ text: "text\nmore text"
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextArea {
+ text: "text"
+ placeholderText: "placeholderText"
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextArea {
+ text: "text\nmore text"
+ placeholderText: "placeholderText"
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextArea {
+ placeholderText: "Disabled placeholder"
+ enabled: false
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextArea {
+ text: "Disabled text"
+ enabled: false
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextArea {
+ text: "Disabled text\nMore text"
+ enabled: false
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextArea {
+ text: "text"
+ placeholderText: "placeholderText"
+ enabled: false
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextArea {
+ text: "text\nmore text"
+ placeholderText: "placeholderText"
+ enabled: false
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextArea {
+ text: "0 leftPadding"
+ placeholderText: "placeholderText"
+ leftPadding: 0
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextArea {
+ text: "0 rightPadding"
+ placeholderText: "placeholderText"
+ rightPadding: 0
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextArea {
+ text: "0 topPadding"
+ placeholderText: "placeholderText"
+ topPadding: 0
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextArea {
+ text: "0 bottomPadding"
+ placeholderText: "placeholderText"
+ bottomPadding: 0
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ Flickable {
+ width: 200
+ height: 100
+
+ TextArea.flickable: TextArea {
+ placeholderText: "placeholderText"
+ text: "a\nb\nc\nd\ne\nf\ng\nh\ni\nj\nk\nl\nm\nn"
+
+ Material.containerStyle: layout.containerStyle
+ }
+ }
+
+ TextArea {
+ text: "AlignLeft"
+ placeholderText: "AlignLeft"
+ horizontalAlignment: TextArea.AlignLeft
+ // Make it a big bigger so it's easier to see the effects of alignment.
+ width: implicitWidth + 30
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextArea {
+ text: "AlignHCenter"
+ placeholderText: "AlignMiddle"
+ horizontalAlignment: TextArea.AlignMiddle
+ width: implicitWidth + 30
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextArea {
+ text: "AlignRight"
+ placeholderText: "AlignRight"
+ horizontalAlignment: TextArea.AlignRight
+ width: implicitWidth + 30
+
+ Material.containerStyle: layout.containerStyle
+ }
+ }
+
+ ScrollView {
+ id: scrollView
+ anchors.fill: parent
+
+ ColumnLayout {
+ width: scrollView.availableWidth
+
+ Label {
+ text: "Filled"
+ }
+ TextAreaFlow {
+ containerStyle: Material.Filled
+
+ Layout.fillWidth: true
+ Layout.bottomMargin: 40
+ }
+
+ Label {
+ text: "Outlined"
+ }
+ TextAreaFlow {
+ containerStyle: Material.Outlined
+
+ Layout.fillWidth: true
+ }
+ }
+ }
+}
diff --git a/tests/manual/quickcontrols/material/pages/TextFieldPage.qml b/tests/manual/quickcontrols/material/pages/TextFieldPage.qml
new file mode 100644
index 0000000000..9aeef4b5c2
--- /dev/null
+++ b/tests/manual/quickcontrols/material/pages/TextFieldPage.qml
@@ -0,0 +1,118 @@
+// Copyright (C) 2022 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+import QtQuick
+import QtQuick.Controls.Material
+import QtQuick.Layouts
+
+import ".."
+
+Page {
+ topPadding: Constants.pageTopPadding
+
+ component TextFieldFlow: Flow {
+ id: layout
+ spacing: 40
+
+ required property int containerStyle
+
+ TextField {
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextField {
+ placeholderText: "placeholderText"
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextField {
+ text: "text"
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextField {
+ text: "text"
+ placeholderText: "placeholderText"
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextField {
+ placeholderText: "Disabled placeholder"
+ enabled: false
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextField {
+ text: "Disabled text"
+ enabled: false
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextField {
+ text: "text"
+ placeholderText: "placeholderText"
+ enabled: false
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextField {
+ text: "0 leftPadding"
+ placeholderText: "placeholderText"
+ leftPadding: 0
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextField {
+ text: "0 rightPadding"
+ placeholderText: "placeholderText"
+ rightPadding: 0
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextField {
+ text: "0 topPadding"
+ placeholderText: "placeholderText"
+ topPadding: 0
+
+ Material.containerStyle: layout.containerStyle
+ }
+
+ TextField {
+ text: "0 bottomPadding"
+ placeholderText: "placeholderText"
+ bottomPadding: 0
+
+ Material.containerStyle: layout.containerStyle
+ }
+ }
+
+ ColumnLayout {
+ width: parent.width
+
+ Label {
+ text: "Filled"
+ }
+ TextFieldFlow {
+ containerStyle: Material.Filled
+
+ Layout.fillWidth: true
+ Layout.bottomMargin: 40
+ }
+
+ Label {
+ text: "Outlined"
+ }
+ TextFieldFlow {
+ containerStyle: Material.Outlined
+
+ Layout.fillWidth: true
+ }
+ }
+}
diff --git a/tests/manual/quickcontrols/menus/CMakeLists.txt b/tests/manual/quickcontrols/menus/CMakeLists.txt
new file mode 100644
index 0000000000..ce757613a1
--- /dev/null
+++ b/tests/manual/quickcontrols/menus/CMakeLists.txt
@@ -0,0 +1,47 @@
+# Copyright (C) 2024 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
+
+cmake_minimum_required(VERSION 3.16)
+project(menus VERSION 0.1 LANGUAGES CXX)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_CXX_STANDARD_REQUIRED ON)
+
+find_package(Qt6 REQUIRED COMPONENTS Quick QuickControls2)
+
+qt_standard_project_setup(REQUIRES 6.8)
+
+qt_add_executable(appmenus
+ main.cpp
+)
+
+qt_add_qml_module(appmenus
+ URI Menus
+ VERSION 1.0
+ QML_FILES
+ Main.qml
+ SOURCES
+ cppsettings.cpp
+ cppsettings.h
+ main.cpp
+ RESOURCES
+ icons/warning.png
+ icons/warning@2x.png
+)
+
+# Qt for iOS sets MACOSX_BUNDLE_GUI_IDENTIFIER automatically since Qt 6.1.
+# If you are developing for iOS or macOS you should consider setting an
+# explicit, fixed bundle identifier manually though.
+set_target_properties(appmenus PROPERTIES
+# MACOSX_BUNDLE_GUI_IDENTIFIER com.example.appmenus
+ MACOSX_BUNDLE_BUNDLE_VERSION ${PROJECT_VERSION}
+ MACOSX_BUNDLE_SHORT_VERSION_STRING ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}
+ MACOSX_BUNDLE TRUE
+ WIN32_EXECUTABLE TRUE
+)
+
+target_link_libraries(appmenus
+ PRIVATE
+ Qt6::Quick
+ Qt6::QuickControls2
+)
diff --git a/tests/manual/quickcontrols/menus/Main.qml b/tests/manual/quickcontrols/menus/Main.qml
new file mode 100644
index 0000000000..7862e49b73
--- /dev/null
+++ b/tests/manual/quickcontrols/menus/Main.qml
@@ -0,0 +1,462 @@
+// Copyright (C) 2024 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+
+import QtCore
+import QtQuick
+import QtQuick.Layouts
+import QtQuick.Controls
+import QtQuick.Dialogs
+
+ApplicationWindow {
+ id: window
+ width: 800
+ height: 600
+ visible: true
+ title: qsTr("Menus - style: %1").arg(currentStyle)
+
+ required property string currentStyle
+
+ Shortcut {
+ sequence: "Ctrl+Q"
+ onActivated: Qt.quit()
+ }
+
+ Settings {
+ id: settings
+
+ property alias windowX: window.x
+ property alias windowY: window.y
+ }
+
+ menuBar: MenuBar {
+ visible: menuBarVisibleSwitch.checked
+
+ Menu {
+ id: fileMenu
+ objectName: "file"
+ title: qsTr("&File")
+ popupType: popupTypeCombo.popupType()
+ ContextAction { text: qsTr("&New...") }
+ ContextMenuItem { text: "menuItem" }
+ ContextAction { text: qsTr("&Open...") }
+ ContextAction { text: qsTr("&Save") }
+ ContextAction { text: qsTr("Save &As...") }
+ Menu {
+ title: qsTr("Sub...")
+ ContextAction { text: qsTr("Sub action 1") }
+ ContextAction { text: qsTr("Sub action 2") }
+ }
+ MenuSeparator { }
+ ContextAction {
+ text: qsTr("&Quit")
+ // This is needed for macOS since it takes priority over the Shortcut.
+ onTriggered: Qt.quit()
+ }
+ Action {
+ text: qsTr("Remove menu")
+ onTriggered: menuBar.removeMenu(fileMenu)
+ }
+ }
+ Menu {
+ id: editMenu
+ objectName: "edit"
+ title: qsTr("&Edit")
+ popupType: popupTypeCombo.popupType()
+ ContextAction {
+ id: cutAction
+ text: qsTr("Cut")
+ enabled: textArea.selectedText.length > 0
+ }
+ ContextAction {
+ text: qsTr("Copy")
+ enabled: textArea.selectedText.length > 0
+ }
+ ContextAction {
+ text: qsTr("Paste")
+ enabled: textArea.activeFocus
+ }
+
+ MenuSeparator {}
+
+ Action {
+ text: qsTr("Checkable menu")
+ checkable: true
+ checked: true
+ }
+ Action {
+ text: qsTr("Remove menu")
+ onTriggered: menuBar.removeMenu(editMenu)
+ }
+ Menu {
+ id: editSubMenu
+ title: qsTr("Find / Replace")
+ Action { text: qsTr("&Find") }
+ }
+
+ MenuSeparator {}
+
+ ContextAction {
+ text: qsTr("Dummy Action")
+ shortcut: "Ctrl+I"
+ }
+ }
+ MenuBarItem {
+ id: explicitMenuBarItem
+ menu: Menu {
+ id: menuBarItemMenu
+ objectName: "MenuBarItem"
+ title: "MenuBarItem"
+ popupType: popupTypeCombo.popupType()
+ ContextAction { text: qsTr("Action") }
+ Action {
+ text: qsTr("Remove menu")
+ onTriggered: menuBar.removeMenu(menuBarItemMenu)
+ }
+ }
+ }
+ }
+
+ Component {
+ id: extraMenuComp
+ Menu {
+ id: extraMenu
+ objectName: "Extra"
+ title: qsTr("&Extra")
+ ContextAction { text: qsTr("&Trigger") }
+ Action {
+ text: qsTr("Remove Extra menu")
+ onTriggered: menuBar.removeMenu(extraMenu)
+ }
+ }
+ }
+
+ ColumnLayout {
+ anchors.fill: parent
+
+ Label {
+ text: qsTr("Right click on the window background to open a context menu. "
+ + "Right click on the TextArea to access its edit context menu.\n\n"
+ + "Things to check:\n\n"
+ + "- Do the menu items trigger their actions (check console for output)?\n"
+ + "- Do checkable menu items work?\n"
+ + "- Do the Edit menu items (in the MenuBar menu and edit context menu)"
+ + " work as expected with the TextArea?\n"
+ + " - Are they enabled/disabled as expected?\n"
+ + " - Does the TextArea keep focus after interacting with the Edit menu items?\n"
+ + "- Does adding and removing menu items work?\n"
+ + "- Do the menus in the MenuBar work?\n"
+ + "- Can you add and remove menus from the MenuBar?\n"
+ + "- Do shortcuts work?")
+ verticalAlignment: Text.AlignVCenter
+ wrapMode: Text.Wrap
+
+ Layout.alignment: Qt.AlignHCenter
+ Layout.preferredWidth: window.width * 0.5
+ Layout.fillHeight: true
+ }
+
+ GroupBox {
+ title: qsTr("Context menu")
+
+ Layout.fillWidth: true
+
+ ColumnLayout {
+ anchors.fill: parent
+
+ RowLayout {
+ Label {
+ text: qsTr("Popup type")
+ }
+
+ ComboBox {
+ id: popupTypeCombo
+ model: ["Item", "Window", "Native"]
+ onCurrentIndexChanged: CppSettings.popupType = currentIndex
+ currentIndex: CppSettings.popupType
+
+ function popupType() {
+ if (currentText === "Window")
+ return Popup.Window
+ else if (currentText === "Native")
+ return Popup.Native
+ else
+ return Popup.Item
+ }
+ }
+ }
+
+ Row {
+ Button {
+ text: qsTr("Add action")
+ onClicked: backgroundContextMenu.appendAction()
+ }
+ Button {
+ text: qsTr("Remove action")
+ onClicked: backgroundContextMenu.removeLastAction()
+ }
+
+ Button {
+ text: qsTr("Add sub-menu action")
+ onClicked: subMenu.appendAction()
+ }
+ Button {
+ text: qsTr("Remove sub-menu action")
+ onClicked: subMenu.removeLastAction()
+ }
+ }
+ }
+ }
+
+ TextArea {
+ id: textArea
+ text: qsTr("Dummy TextArea to test disabled menu items")
+
+ Layout.fillWidth: true
+ Layout.minimumHeight: 100
+
+ TapHandler {
+ objectName: "textAreaMouseTapHandler"
+ acceptedButtons: Qt.RightButton
+ onPressedChanged: if (pressed) editContextMenu.popup()
+ }
+ TapHandler {
+ objectName: "textAreaTouchTapHandler"
+ acceptedDevices: PointerDevice.TouchScreen
+ onLongPressed: editContextMenu.popup()
+ }
+ }
+
+ Component {
+ id: menuBarItemComp
+ MenuBarItem {
+ }
+ }
+
+ MessageDialog {
+ id: restartNeededDialog
+ buttons: MessageDialog.Ok
+ text: "Your current changes requires a restart to take effect!"
+ }
+
+ GroupBox {
+ title: qsTr("MenuBar")
+
+ Layout.fillWidth: true
+
+ ColumnLayout {
+ anchors.fill: parent
+
+ Row {
+ Switch {
+ text: qsTr("Don't use native menu bar")
+ checked: CppSettings.dontUseNativeMenuBar
+
+ onClicked: {
+ CppSettings.dontUseNativeMenuBar = checked
+ restartNeededDialog.open()
+ }
+ }
+ Switch {
+ id: menuBarVisibleSwitch
+ text: qsTr("MenuBar visible")
+ checked: true
+ }
+ }
+ Row {
+ Button {
+ text: "Append menu"
+ onClicked: {
+ let menu = extraMenuComp.createObject(menuBar, { title: "Extra " + menuBar.count })
+ menuBar.addMenu(menu)
+ }
+ }
+ Button {
+ text: "Prepend menu"
+ onClicked: {
+ let menu = extraMenuComp.createObject(menuBar, { title: "Extra " + menuBar.count })
+ menuBar.insertMenu(0, menu)
+ }
+ }
+ Button {
+ text: qsTr("Add file menu")
+ onClicked: menuBar.addMenu(fileMenu)
+ }
+ Button {
+ text: "Change labels"
+ onClicked: {
+ fileMenu.title = "File changed"
+ cutAction.text = "Cut changed"
+ }
+ }
+ Button {
+ text: "toggle delegate"
+ onClicked: menuBar.delegate = menuBar.delegate ? null : menuBarItemComp
+ }
+ Switch {
+ text: "MenuBarItem visible"
+ checked: true
+ onCheckedChanged: explicitMenuBarItem.visible = checked
+ }
+ }
+ }
+ }
+ }
+
+ TapHandler {
+ objectName: "backgroundMouseTapHandler"
+ acceptedButtons: Qt.RightButton
+ onPressedChanged: if (pressed) backgroundContextMenu.popup()
+ }
+ TapHandler {
+ objectName: "backgroundTouchTapHandler"
+ acceptedDevices: PointerDevice.TouchScreen
+ onLongPressed: backgroundContextMenu.popup()
+ }
+
+ Component {
+ id: actionComponent
+
+ Action {}
+ }
+
+ component ContextAction: Action {
+ onCheckedChanged: (checked) => print("checked of \"" + text + "\" changed to " + checked)
+ onTriggered: print("triggered \"" + text + "\"")
+ }
+
+ component ContextMenuItem: MenuItem {
+ onCheckedChanged: print("checked of \"" + text + "\" changed to " + checked)
+ onTriggered: print("triggered \"" + text + "\"")
+ }
+
+ Menu {
+ id: backgroundContextMenu
+ objectName: "backgroundContextMenu"
+ popupType: popupTypeCombo.popupType()
+
+ function appendAction() {
+ let action = actionComponent.createObject(null, { text: qsTr("Extra context menu item") })
+ backgroundContextMenu.addAction(action)
+ }
+
+ function removeLastAction() {
+ // TODO: Can't use count here because it's 0: it uses contentModel->count(), but native menu items
+ // are not Qt Quick items, so we either need to document that you should use contentData.count
+ // or add an "actions" property. The problem with contentData is that it could contain
+ // non-Action objects. Another potential issue is that "It is not re-ordered when items are inserted or moved",
+ // making it unreliable as a general purpose container of actions if users add or remove them dynamically.
+ backgroundContextMenu.removeAction(backgroundContextMenu.actionAt(backgroundContextMenu.contentData.length - 1))
+ }
+
+ ContextAction {
+ text: qsTr("Context menu item")
+ shortcut: "A"
+ }
+ ContextMenuItem {
+ text: qsTr("Checkable context menu item")
+ checkable: true
+ }
+ ContextAction {
+ text: qsTr("Checked context menu item")
+ checkable: true
+ checked: true
+ shortcut: "C"
+ }
+ ContextAction {
+ text: qsTr("Disabled context menu item")
+ enabled: false
+ shortcut: "D"
+ }
+ ContextAction {
+ text: qsTr("Checked and disabled context menu item")
+ checkable: true
+ checked: true
+ enabled: false
+ shortcut: "E"
+ }
+
+ MenuSeparator {}
+
+ ContextAction {
+ text: qsTr("Context menu item with icon (name)")
+ icon.name: "mail-send"
+ }
+
+ ContextAction {
+ text: qsTr("Context menu item with icon (source)")
+ icon.source: "qrc:/qt/qml/Menus/icons/warning.png"
+ }
+
+ ContextAction {
+ text: qsTr("Context menu item with disabled icon (source)")
+ icon.source: "qrc:/qt/qml/Menus/icons/warning.png"
+ enabled: false
+ }
+
+ MenuSeparator {}
+
+ Menu {
+ id: subMenu
+ title: qsTr("Sub-menu")
+ objectName: title
+ popupType: popupTypeCombo.popupType()
+
+ function appendAction() {
+ let action = actionComponent.createObject(null, { text: qsTr("Extra sub-menu item") })
+ subMenu.addAction(action)
+ }
+
+ function removeLastAction() {
+ subMenu.removeAction(subMenu.actionAt(subMenu.contentData.length - 1))
+ }
+
+ ContextAction {
+ text: qsTr("Sub-menu item")
+ }
+ ContextAction {
+ text: qsTr("Checkable sub-menu item")
+ checkable: true
+ shortcut: "G"
+ }
+ ContextAction {
+ text: qsTr("Checked sub-menu item")
+ checkable: true
+ checked: true
+ }
+
+ MenuSeparator {}
+
+ ContextAction {
+ text: qsTr("Disabled sub-menu item")
+ enabled: false
+ shortcut: "I"
+ }
+ ContextAction {
+ text: qsTr("Checked and disabled sub-menu item")
+ checkable: true
+ checked: true
+ enabled: false
+ shortcut: "J"
+ }
+ }
+ }
+
+ Menu {
+ id: editContextMenu
+ objectName: "editContextMenu"
+
+ ContextAction {
+ text: qsTr("Cut")
+ enabled: textArea.selectedText.length > 0
+ }
+ ContextAction {
+ text: qsTr("Copy")
+ enabled: textArea.selectedText.length > 0
+ }
+ ContextAction {
+ text: qsTr("Paste")
+ enabled: textArea.activeFocus
+ }
+ }
+}
+
diff --git a/tests/manual/quickcontrols/menus/Menu.qml b/tests/manual/quickcontrols/menus/Menu.qml
new file mode 100644
index 0000000000..0d18fca2ab
--- /dev/null
+++ b/tests/manual/quickcontrols/menus/Menu.qml
@@ -0,0 +1,6 @@
+// Copyright (C) 2024 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+
+import QtQuick.Controls
+
+Menu {}
diff --git a/tests/manual/quickcontrols/menus/cppsettings.cpp b/tests/manual/quickcontrols/menus/cppsettings.cpp
new file mode 100644
index 0000000000..589cea916b
--- /dev/null
+++ b/tests/manual/quickcontrols/menus/cppsettings.cpp
@@ -0,0 +1,43 @@
+// Copyright (C) 2024 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+
+#include "cppsettings.h"
+
+#include <QCoreApplication>
+
+CppSettings::CppSettings(QObject *parent) :
+ QObject(parent),
+ mSettings("QtProject", "menus")
+{
+ QCoreApplication::setAttribute(Qt::AA_DontUseNativeMenuBar, dontUseNativeMenuBar());
+}
+
+bool CppSettings::dontUseNativeMenuBar() const
+{
+ return mSettings.value("dontUseNativeMenuBar").toBool();
+}
+
+void CppSettings::setDontUseNativeMenuBar(bool dontUseNativeMenuBar)
+{
+ const bool oldValue = this->dontUseNativeMenuBar();
+ if (dontUseNativeMenuBar == oldValue)
+ return;
+
+ QCoreApplication::setAttribute(Qt::AA_DontUseNativeMenuBar, dontUseNativeMenuBar);
+ mSettings.setValue("dontUseNativeMenuBar", dontUseNativeMenuBar);
+ emit dontUseNativeMenuBarChanged();
+}
+
+int CppSettings::popupType() const
+{
+ return mSettings.value("popupType").toInt();
+}
+
+void CppSettings::setPopupType(int newPopupType)
+{
+ const int oldValue = popupType();
+ if (oldValue == newPopupType)
+ return;
+ mSettings.setValue("popupType", newPopupType);
+ emit popupTypeChanged();
+}
diff --git a/tests/manual/quickcontrols/menus/cppsettings.h b/tests/manual/quickcontrols/menus/cppsettings.h
new file mode 100644
index 0000000000..b6af1f9f09
--- /dev/null
+++ b/tests/manual/quickcontrols/menus/cppsettings.h
@@ -0,0 +1,38 @@
+// Copyright (C) 2024 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+
+#ifndef CPPSETTINGS_H
+#define CPPSETTINGS_H
+
+#include <QObject>
+#include <QQmlEngine>
+#include <QSettings>
+
+class CppSettings : public QObject
+{
+ Q_OBJECT
+ Q_PROPERTY(bool dontUseNativeMenuBar READ dontUseNativeMenuBar WRITE setDontUseNativeMenuBar
+ NOTIFY dontUseNativeMenuBarChanged FINAL)
+ Q_PROPERTY(int popupType READ popupType WRITE setPopupType
+ NOTIFY popupTypeChanged FINAL)
+ QML_ELEMENT
+ QML_SINGLETON
+
+public:
+ explicit CppSettings(QObject *parent = nullptr);
+
+ bool dontUseNativeMenuBar() const;
+ void setDontUseNativeMenuBar(bool dontUseNativeMenuBar);
+
+ int popupType() const;
+ void setPopupType(int newPopupType);
+
+signals:
+ void dontUseNativeMenuBarChanged();
+ void popupTypeChanged();
+
+private:
+ QSettings mSettings;
+};
+
+#endif // CPPSETTINGS_H
diff --git a/tests/manual/quickcontrols/menus/icons/warning.png b/tests/manual/quickcontrols/menus/icons/warning.png
new file mode 100644
index 0000000000..590a61eb80
--- /dev/null
+++ b/tests/manual/quickcontrols/menus/icons/warning.png
Binary files differ
diff --git a/tests/manual/quickcontrols/menus/icons/warning@2x.png b/tests/manual/quickcontrols/menus/icons/warning@2x.png
new file mode 100644
index 0000000000..487fbafcfd
--- /dev/null
+++ b/tests/manual/quickcontrols/menus/icons/warning@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/menus/main.cpp b/tests/manual/quickcontrols/menus/main.cpp
new file mode 100644
index 0000000000..e9b4e6d5eb
--- /dev/null
+++ b/tests/manual/quickcontrols/menus/main.cpp
@@ -0,0 +1,27 @@
+// Copyright (C) 2023 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+
+#include <QGuiApplication>
+#include <QQmlApplicationEngine>
+#include <QQuickStyle>
+
+int main(int argc, char *argv[])
+{
+ QGuiApplication::setOrganizationName("QtProject");
+ QGuiApplication::setApplicationName("menus");
+
+ QGuiApplication app(argc, argv);
+
+ QQmlApplicationEngine engine;
+ engine.setInitialProperties({{ "currentStyle", QQuickStyle::name() }});
+ QObject::connect(
+ &engine,
+ &QQmlApplicationEngine::objectCreationFailed,
+ &app,
+ []() { QCoreApplication::exit(-1); },
+ Qt::QueuedConnection);
+ engine.loadFromModule("Menus", "Main");
+
+ return app.exec();
+}
+
diff --git a/tests/manual/quickcontrols/nativestyle/Buttons.qml b/tests/manual/quickcontrols/nativestyle/Buttons.qml
index d2fd1e2893..1332f1e198 100644
--- a/tests/manual/quickcontrols/nativestyle/Buttons.qml
+++ b/tests/manual/quickcontrols/nativestyle/Buttons.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/CheckBoxes.qml b/tests/manual/quickcontrols/nativestyle/CheckBoxes.qml
index 86d083c355..899cae5def 100644
--- a/tests/manual/quickcontrols/nativestyle/CheckBoxes.qml
+++ b/tests/manual/quickcontrols/nativestyle/CheckBoxes.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/ComboBoxes.qml b/tests/manual/quickcontrols/nativestyle/ComboBoxes.qml
index b32fa35038..9d3fd2d0ea 100644
--- a/tests/manual/quickcontrols/nativestyle/ComboBoxes.qml
+++ b/tests/manual/quickcontrols/nativestyle/ComboBoxes.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/ControlContainer.qml b/tests/manual/quickcontrols/nativestyle/ControlContainer.qml
index 11727aef09..6f85f0d901 100644
--- a/tests/manual/quickcontrols/nativestyle/ControlContainer.qml
+++ b/tests/manual/quickcontrols/nativestyle/ControlContainer.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/CustomButtons.qml b/tests/manual/quickcontrols/nativestyle/CustomButtons.qml
index 9a3ecb4928..5208a35d3b 100644
--- a/tests/manual/quickcontrols/nativestyle/CustomButtons.qml
+++ b/tests/manual/quickcontrols/nativestyle/CustomButtons.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/CustomCheckBoxes.qml b/tests/manual/quickcontrols/nativestyle/CustomCheckBoxes.qml
index 945669a3e5..a77ce31982 100644
--- a/tests/manual/quickcontrols/nativestyle/CustomCheckBoxes.qml
+++ b/tests/manual/quickcontrols/nativestyle/CustomCheckBoxes.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/CustomComboBoxes.qml b/tests/manual/quickcontrols/nativestyle/CustomComboBoxes.qml
index d9da3d4de8..8a8a7af627 100644
--- a/tests/manual/quickcontrols/nativestyle/CustomComboBoxes.qml
+++ b/tests/manual/quickcontrols/nativestyle/CustomComboBoxes.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/CustomDials.qml b/tests/manual/quickcontrols/nativestyle/CustomDials.qml
index 5a96741a7b..b7812b446b 100644
--- a/tests/manual/quickcontrols/nativestyle/CustomDials.qml
+++ b/tests/manual/quickcontrols/nativestyle/CustomDials.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/CustomFrames.qml b/tests/manual/quickcontrols/nativestyle/CustomFrames.qml
index 09194f48c3..b72e1e385a 100644
--- a/tests/manual/quickcontrols/nativestyle/CustomFrames.qml
+++ b/tests/manual/quickcontrols/nativestyle/CustomFrames.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/CustomProgressBars.qml b/tests/manual/quickcontrols/nativestyle/CustomProgressBars.qml
index 5ae4ce5bb0..a9b614611b 100644
--- a/tests/manual/quickcontrols/nativestyle/CustomProgressBars.qml
+++ b/tests/manual/quickcontrols/nativestyle/CustomProgressBars.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/CustomRadioButtons.qml b/tests/manual/quickcontrols/nativestyle/CustomRadioButtons.qml
index 7da347f891..a508e2465f 100644
--- a/tests/manual/quickcontrols/nativestyle/CustomRadioButtons.qml
+++ b/tests/manual/quickcontrols/nativestyle/CustomRadioButtons.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/CustomScrollBars.qml b/tests/manual/quickcontrols/nativestyle/CustomScrollBars.qml
index b10e7b7933..09d469ba74 100644
--- a/tests/manual/quickcontrols/nativestyle/CustomScrollBars.qml
+++ b/tests/manual/quickcontrols/nativestyle/CustomScrollBars.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/CustomSliders.qml b/tests/manual/quickcontrols/nativestyle/CustomSliders.qml
index dcc0c29d1e..c5c0c45a48 100644
--- a/tests/manual/quickcontrols/nativestyle/CustomSliders.qml
+++ b/tests/manual/quickcontrols/nativestyle/CustomSliders.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/CustomSpinBoxes.qml b/tests/manual/quickcontrols/nativestyle/CustomSpinBoxes.qml
index eeaee25ea5..5938f2c30f 100644
--- a/tests/manual/quickcontrols/nativestyle/CustomSpinBoxes.qml
+++ b/tests/manual/quickcontrols/nativestyle/CustomSpinBoxes.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/CustomTextAreas.qml b/tests/manual/quickcontrols/nativestyle/CustomTextAreas.qml
index ae8254f197..7a7f2a635e 100644
--- a/tests/manual/quickcontrols/nativestyle/CustomTextAreas.qml
+++ b/tests/manual/quickcontrols/nativestyle/CustomTextAreas.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/CustomTextFields.qml b/tests/manual/quickcontrols/nativestyle/CustomTextFields.qml
index 2a2c659e0e..609263c630 100644
--- a/tests/manual/quickcontrols/nativestyle/CustomTextFields.qml
+++ b/tests/manual/quickcontrols/nativestyle/CustomTextFields.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/Dials.qml b/tests/manual/quickcontrols/nativestyle/Dials.qml
index b83e6aac66..5c7e0d1820 100644
--- a/tests/manual/quickcontrols/nativestyle/Dials.qml
+++ b/tests/manual/quickcontrols/nativestyle/Dials.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/Frames.qml b/tests/manual/quickcontrols/nativestyle/Frames.qml
index a7a8684c99..499a9a1bd7 100644
--- a/tests/manual/quickcontrols/nativestyle/Frames.qml
+++ b/tests/manual/quickcontrols/nativestyle/Frames.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/ProgressBars.qml b/tests/manual/quickcontrols/nativestyle/ProgressBars.qml
index b22a4fef3f..aa94c60a6c 100644
--- a/tests/manual/quickcontrols/nativestyle/ProgressBars.qml
+++ b/tests/manual/quickcontrols/nativestyle/ProgressBars.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/RadioButtons.qml b/tests/manual/quickcontrols/nativestyle/RadioButtons.qml
index b67e53c8e7..6290f5a1bc 100644
--- a/tests/manual/quickcontrols/nativestyle/RadioButtons.qml
+++ b/tests/manual/quickcontrols/nativestyle/RadioButtons.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/ScrollBars.qml b/tests/manual/quickcontrols/nativestyle/ScrollBars.qml
index 1517907a06..8b95af8250 100644
--- a/tests/manual/quickcontrols/nativestyle/ScrollBars.qml
+++ b/tests/manual/quickcontrols/nativestyle/ScrollBars.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/Sliders.qml b/tests/manual/quickcontrols/nativestyle/Sliders.qml
index 856df57162..004027ec2b 100644
--- a/tests/manual/quickcontrols/nativestyle/Sliders.qml
+++ b/tests/manual/quickcontrols/nativestyle/Sliders.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/SlidersMini.qml b/tests/manual/quickcontrols/nativestyle/SlidersMini.qml
index 2f36845cee..c3017f8fd8 100644
--- a/tests/manual/quickcontrols/nativestyle/SlidersMini.qml
+++ b/tests/manual/quickcontrols/nativestyle/SlidersMini.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/SlidersSmall.qml b/tests/manual/quickcontrols/nativestyle/SlidersSmall.qml
index 1339b42a9e..65010abdb3 100644
--- a/tests/manual/quickcontrols/nativestyle/SlidersSmall.qml
+++ b/tests/manual/quickcontrols/nativestyle/SlidersSmall.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/SpinBoxes.qml b/tests/manual/quickcontrols/nativestyle/SpinBoxes.qml
index 8dd4f8762b..b1c18dc690 100644
--- a/tests/manual/quickcontrols/nativestyle/SpinBoxes.qml
+++ b/tests/manual/quickcontrols/nativestyle/SpinBoxes.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/TextAreas.qml b/tests/manual/quickcontrols/nativestyle/TextAreas.qml
index 9eb2fb6a6b..b9393f96aa 100644
--- a/tests/manual/quickcontrols/nativestyle/TextAreas.qml
+++ b/tests/manual/quickcontrols/nativestyle/TextAreas.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/TextFields.qml b/tests/manual/quickcontrols/nativestyle/TextFields.qml
index 4448edbfff..bf8130d8b3 100644
--- a/tests/manual/quickcontrols/nativestyle/TextFields.qml
+++ b/tests/manual/quickcontrols/nativestyle/TextFields.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/nativestyle/main.cpp b/tests/manual/quickcontrols/nativestyle/main.cpp
index 6ecd80f5e2..badc25887b 100644
--- a/tests/manual/quickcontrols/nativestyle/main.cpp
+++ b/tests/manual/quickcontrols/nativestyle/main.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QGuiApplication>
#include <QQmlApplicationEngine>
diff --git a/tests/manual/quickcontrols/nativestyle/main.qml b/tests/manual/quickcontrols/nativestyle/main.qml
index 85a476e280..e2dc856292 100644
--- a/tests/manual/quickcontrols/nativestyle/main.qml
+++ b/tests/manual/quickcontrols/nativestyle/main.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/qquickdialog/CustomDialog.qml b/tests/manual/quickcontrols/qquickdialog/CustomDialog.qml
index c54b58603b..3aa150b2fc 100644
--- a/tests/manual/quickcontrols/qquickdialog/CustomDialog.qml
+++ b/tests/manual/quickcontrols/qquickdialog/CustomDialog.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2019 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/qquickdialog/DialogLabel.qml b/tests/manual/quickcontrols/qquickdialog/DialogLabel.qml
index 273eaf162d..7c2d52953f 100644
--- a/tests/manual/quickcontrols/qquickdialog/DialogLabel.qml
+++ b/tests/manual/quickcontrols/qquickdialog/DialogLabel.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2019 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/qquickdialog/Marker.qml b/tests/manual/quickcontrols/qquickdialog/Marker.qml
index 42f9c2d93b..9e8e5188a3 100644
--- a/tests/manual/quickcontrols/qquickdialog/Marker.qml
+++ b/tests/manual/quickcontrols/qquickdialog/Marker.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2019 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
diff --git a/tests/manual/quickcontrols/qquickdialog/qquickdialog.cpp b/tests/manual/quickcontrols/qquickdialog/qquickdialog.cpp
index 92c060e6c4..16e4986c01 100644
--- a/tests/manual/quickcontrols/qquickdialog/qquickdialog.cpp
+++ b/tests/manual/quickcontrols/qquickdialog/qquickdialog.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2019 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QGuiApplication>
#include <QQmlApplicationEngine>
diff --git a/tests/manual/quickcontrols/qquickdialog/qquickdialog.qml b/tests/manual/quickcontrols/qquickdialog/qquickdialog.qml
index 2afa0898e8..a29869820e 100644
--- a/tests/manual/quickcontrols/qquickdialog/qquickdialog.qml
+++ b/tests/manual/quickcontrols/qquickdialog/qquickdialog.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2019 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/screenshots/screenshots.cpp b/tests/manual/quickcontrols/screenshots/screenshots.cpp
index f85ee9d258..c28ac5984c 100644
--- a/tests/manual/quickcontrols/screenshots/screenshots.cpp
+++ b/tests/manual/quickcontrols/screenshots/screenshots.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QGuiApplication>
#include <QQmlApplicationEngine>
diff --git a/tests/manual/quickcontrols/screenshots/screenshots.qml b/tests/manual/quickcontrols/screenshots/screenshots.qml
index cd8d52d658..9c4771920d 100644
--- a/tests/manual/quickcontrols/screenshots/screenshots.qml
+++ b/tests/manual/quickcontrols/screenshots/screenshots.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Layouts
diff --git a/tests/manual/quickcontrols/shared/FontAwesome.qml b/tests/manual/quickcontrols/shared/FontAwesome.qml
index d86620d149..3b654f9c11 100644
--- a/tests/manual/quickcontrols/shared/FontAwesome.qml
+++ b/tests/manual/quickcontrols/shared/FontAwesome.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
pragma Singleton
diff --git a/tests/manual/quickcontrols/shared/FontAwesomeIcon.qml b/tests/manual/quickcontrols/shared/FontAwesomeIcon.qml
index da98f26c73..273baad2b4 100644
--- a/tests/manual/quickcontrols/shared/FontAwesomeIcon.qml
+++ b/tests/manual/quickcontrols/shared/FontAwesomeIcon.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import "qrc:/shared"
diff --git a/tests/manual/quickcontrols/sidepanel/CMakeLists.txt b/tests/manual/quickcontrols/sidepanel/CMakeLists.txt
new file mode 100644
index 0000000000..fa65ea1f11
--- /dev/null
+++ b/tests/manual/quickcontrols/sidepanel/CMakeLists.txt
@@ -0,0 +1,46 @@
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
+
+cmake_minimum_required(VERSION 3.16)
+project(sidepanel LANGUAGES CXX)
+
+set(CMAKE_AUTOMOC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/quickcontrols/sidepanel")
+
+find_package(Qt6 REQUIRED COMPONENTS Core Gui Quick)
+
+qt_add_executable(sidepanelexample WIN32 MACOSX_BUNDLE
+ sidepanel.cpp
+)
+
+qt_add_qml_module(sidepanelexample
+ URI sidepanel
+ NO_RESOURCE_TARGET_PATH
+ QML_FILES
+ "sidepanel.qml"
+ RESOURCES
+ "images/qt-logo.png"
+ "images/qt-logo@2x.png"
+ "images/qt-logo@3x.png"
+ "images/qt-logo@4x.png"
+ "qtquickcontrols2.conf"
+ "doc/images/qtquickcontrols-sidepanel-landscape.png"
+ "doc/images/qtquickcontrols-sidepanel-portrait.png"
+)
+
+target_link_libraries(sidepanelexample PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::Quick
+)
+
+install(TARGETS sidepanelexample
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/tests/manual/quickcontrols/sidepanel/doc/images/qtquickcontrols-sidepanel-landscape.png b/tests/manual/quickcontrols/sidepanel/doc/images/qtquickcontrols-sidepanel-landscape.png
new file mode 100644
index 0000000000..86907591b2
--- /dev/null
+++ b/tests/manual/quickcontrols/sidepanel/doc/images/qtquickcontrols-sidepanel-landscape.png
Binary files differ
diff --git a/tests/manual/quickcontrols/sidepanel/doc/images/qtquickcontrols-sidepanel-portrait.png b/tests/manual/quickcontrols/sidepanel/doc/images/qtquickcontrols-sidepanel-portrait.png
new file mode 100644
index 0000000000..cf1ed2efd0
--- /dev/null
+++ b/tests/manual/quickcontrols/sidepanel/doc/images/qtquickcontrols-sidepanel-portrait.png
Binary files differ
diff --git a/tests/manual/quickcontrols/sidepanel/doc/src/qtquickcontrols-sidepanel.qdoc b/tests/manual/quickcontrols/sidepanel/doc/src/qtquickcontrols-sidepanel.qdoc
new file mode 100644
index 0000000000..7029099d0f
--- /dev/null
+++ b/tests/manual/quickcontrols/sidepanel/doc/src/qtquickcontrols-sidepanel.qdoc
@@ -0,0 +1,59 @@
+// Copyright (C) 2017 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
+
+/*!
+ \example sidepanel
+ \keyword Qt Quick Controls - Side Panel
+ \title Qt Quick Controls - Side Panel
+ \keyword Qt Quick Controls 2 - Side Panel
+ \ingroup qtquickcontrols-examples
+ \brief A persistent side panel with Drawer.
+
+ This example demonstrates how \l Drawer can be used as a persistent side
+ panel.
+
+ \raw HTML
+ <div class="table"><table style="background:transparent; border:0px">
+ <tr><td style="border:0px">
+ \endraw
+ \image qtquickcontrols-sidepanel-portrait.png
+ \caption An interactive Drawer in portrait mode
+ \raw HTML
+ </td><td style="border:0px">
+ \endraw
+ \image qtquickcontrols-sidepanel-landscape.png
+ \caption A non-interactive Drawer in landscape mode
+ \raw HTML
+ </td></tr>
+ </table></div>
+ \endraw
+
+ When the application is in portrait mode, the drawer is an interactive
+ side panel that can be swiped open from the left edge. It appears on
+ top of the content, blocking user interaction through its modal
+ background. When the application is in landscape mode, the drawer and
+ the content are laid out side-by-side.
+
+ The current orientation of the application is determined by comparing
+ the width and height of the window:
+
+ \snippet sidepanel/sidepanel.qml orientation
+
+ This is used to determine whether the drawer should be \l {Popup::}{modal}
+ and \l {Drawer::}{interactive}, and to configure its \l {Drawer::}{position}
+ and \l {Popup::visible}{visibility} accordingly.
+
+ \quotefromfile sidepanel/sidepanel.qml
+ \skipto Drawer
+ \printline Drawer
+ \dots 8
+ \codeline
+ \skipto modal
+ \printuntil visible
+ \dots 8
+ \skipuntil ScrollIndicator
+ \skipuntil }
+ \printline }
+
+ \include examples-run.qdocinc
+*/
diff --git a/tests/manual/quickcontrols/sidepanel/images/qt-logo.png b/tests/manual/quickcontrols/sidepanel/images/qt-logo.png
new file mode 100644
index 0000000000..dff7729515
--- /dev/null
+++ b/tests/manual/quickcontrols/sidepanel/images/qt-logo.png
Binary files differ
diff --git a/tests/manual/quickcontrols/sidepanel/images/qt-logo@2x.png b/tests/manual/quickcontrols/sidepanel/images/qt-logo@2x.png
new file mode 100644
index 0000000000..dbd73aab77
--- /dev/null
+++ b/tests/manual/quickcontrols/sidepanel/images/qt-logo@2x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/sidepanel/images/qt-logo@3x.png b/tests/manual/quickcontrols/sidepanel/images/qt-logo@3x.png
new file mode 100644
index 0000000000..68e763b597
--- /dev/null
+++ b/tests/manual/quickcontrols/sidepanel/images/qt-logo@3x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/sidepanel/images/qt-logo@4x.png b/tests/manual/quickcontrols/sidepanel/images/qt-logo@4x.png
new file mode 100644
index 0000000000..08fd882572
--- /dev/null
+++ b/tests/manual/quickcontrols/sidepanel/images/qt-logo@4x.png
Binary files differ
diff --git a/tests/manual/quickcontrols/sidepanel/qtquickcontrols2.conf b/tests/manual/quickcontrols/sidepanel/qtquickcontrols2.conf
new file mode 100644
index 0000000000..b6c7c87ea1
--- /dev/null
+++ b/tests/manual/quickcontrols/sidepanel/qtquickcontrols2.conf
@@ -0,0 +1,2 @@
+[Controls]
+Style=Material
diff --git a/tests/manual/quickcontrols/sidepanel/sidepanel.cpp b/tests/manual/quickcontrols/sidepanel/sidepanel.cpp
new file mode 100644
index 0000000000..5a3e6b32ee
--- /dev/null
+++ b/tests/manual/quickcontrols/sidepanel/sidepanel.cpp
@@ -0,0 +1,17 @@
+// Copyright (C) 2017 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+
+#include <QGuiApplication>
+#include <QQmlApplicationEngine>
+
+int main(int argc, char *argv[])
+{
+ QGuiApplication app(argc, argv);
+
+ QQmlApplicationEngine engine;
+ engine.load(QUrl("qrc:/sidepanel.qml"));
+ if (engine.rootObjects().isEmpty())
+ return -1;
+
+ return app.exec();
+}
diff --git a/tests/manual/quickcontrols/sidepanel/sidepanel.pro b/tests/manual/quickcontrols/sidepanel/sidepanel.pro
new file mode 100644
index 0000000000..bbf118b361
--- /dev/null
+++ b/tests/manual/quickcontrols/sidepanel/sidepanel.pro
@@ -0,0 +1,19 @@
+TEMPLATE = app
+TARGET = sidepanel
+QT += quick
+
+SOURCES += \
+ sidepanel.cpp
+
+RESOURCES += \
+ doc/images/qtquickcontrols-sidepanel-landscape.png \
+ doc/images/qtquickcontrols-sidepanel-portrait.png \
+ images/qt-logo@2x.png \
+ images/qt-logo@3x.png \
+ images/qt-logo@4x.png \
+ images/qt-logo.png \
+ qtquickcontrols2.conf \
+ sidepanel.qml
+
+target.path = $$[QT_INSTALL_EXAMPLES]/quickcontrols/sidepanel
+INSTALLS += target
diff --git a/tests/manual/quickcontrols/sidepanel/sidepanel.qml b/tests/manual/quickcontrols/sidepanel/sidepanel.qml
new file mode 100644
index 0000000000..e1b2f64678
--- /dev/null
+++ b/tests/manual/quickcontrols/sidepanel/sidepanel.qml
@@ -0,0 +1,132 @@
+// Copyright (C) 2017 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+
+import QtQuick
+import QtQuick.Controls
+
+ApplicationWindow {
+ id: window
+ width: 360
+ height: 520
+ visible: true
+ title: qsTr("Side Panel")
+
+ //! [orientation]
+ readonly property bool inPortrait: window.width < window.height
+ //! [orientation]
+
+ ToolBar {
+ id: overlayHeader
+
+ z: 1
+ width: parent.width
+ parent: Overlay.overlay
+
+ Label {
+ id: label
+ anchors.centerIn: parent
+ text: "Qt Quick Controls"
+ }
+ }
+
+ Drawer {
+ id: drawer
+
+ y: overlayHeader.height
+ width: window.width / 2
+ height: window.height - overlayHeader.height
+
+ modal: inPortrait
+ interactive: inPortrait
+ position: inPortrait ? 0 : 1
+ visible: !inPortrait
+
+ ListView {
+ id: listView
+ anchors.fill: parent
+
+ headerPositioning: ListView.OverlayHeader
+ header: Pane {
+ id: header
+ z: 2
+ width: parent.width
+
+ contentHeight: logo.height
+
+ Image {
+ id: logo
+ width: parent.width
+ source: "images/qt-logo.png"
+ fillMode: implicitWidth > width ? Image.PreserveAspectFit : Image.Pad
+ }
+
+ MenuSeparator {
+ parent: header
+ width: parent.width
+ anchors.verticalCenter: parent.bottom
+ visible: !listView.atYBeginning
+ }
+ }
+
+ footer: ItemDelegate {
+ id: footer
+ text: qsTr("Footer")
+ width: parent.width
+
+ MenuSeparator {
+ parent: footer
+ width: parent.width
+ anchors.verticalCenter: parent.top
+ }
+ }
+
+ model: 10
+
+ delegate: ItemDelegate {
+ text: qsTr("Title %1").arg(index + 1)
+ width: listView.width
+ }
+
+ ScrollIndicator.vertical: ScrollIndicator { }
+ }
+ }
+
+ Flickable {
+ id: flickable
+
+ anchors.fill: parent
+ anchors.topMargin: overlayHeader.height
+ anchors.leftMargin: !inPortrait ? drawer.width : undefined
+
+ topMargin: 20
+ bottomMargin: 20
+ contentHeight: column.height
+
+ Column {
+ id: column
+ spacing: 20
+ anchors.margins: 20
+ anchors.left: parent.left
+ anchors.right: parent.right
+
+ Label {
+ font.pixelSize: 22
+ width: parent.width
+ elide: Label.ElideRight
+ horizontalAlignment: Qt.AlignHCenter
+ text: qsTr("Side Panel Example")
+ }
+
+ Label {
+ width: parent.width
+ wrapMode: Label.WordWrap
+ text: qsTr("This example demonstrates how Drawer can be used as a non-closable persistent side panel.\n\n" +
+ "When the application is in portrait mode, the drawer is an interactive side panel that can " +
+ "be swiped open from the left edge. When the application is in landscape mode, the drawer " +
+ "and the content are laid out side by side.\n\nThe application is currently in %1 mode.").arg(inPortrait ? qsTr("portrait") : qsTr("landscape"))
+ }
+ }
+
+ ScrollIndicator.vertical: ScrollIndicator { }
+ }
+}
diff --git a/tests/manual/quickcontrols/styles-cover-flow/CoverFlowDelegate.qml b/tests/manual/quickcontrols/styles-cover-flow/CoverFlowDelegate.qml
index 7383b7fae8..9fabbd60de 100644
--- a/tests/manual/quickcontrols/styles-cover-flow/CoverFlowDelegate.qml
+++ b/tests/manual/quickcontrols/styles-cover-flow/CoverFlowDelegate.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtGraphicalEffects
import QtQuick
diff --git a/tests/manual/quickcontrols/styles-cover-flow/CoverFlowPath.qml b/tests/manual/quickcontrols/styles-cover-flow/CoverFlowPath.qml
index 408a3693f7..15869772d8 100644
--- a/tests/manual/quickcontrols/styles-cover-flow/CoverFlowPath.qml
+++ b/tests/manual/quickcontrols/styles-cover-flow/CoverFlowPath.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
diff --git a/tests/manual/quickcontrols/styles-cover-flow/styles-cover-flow.cpp b/tests/manual/quickcontrols/styles-cover-flow/styles-cover-flow.cpp
index 80d5ff7235..d2625408f6 100644
--- a/tests/manual/quickcontrols/styles-cover-flow/styles-cover-flow.cpp
+++ b/tests/manual/quickcontrols/styles-cover-flow/styles-cover-flow.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QGuiApplication>
#include <QQmlApplicationEngine>
diff --git a/tests/manual/quickcontrols/styles-cover-flow/styles-cover-flow.qml b/tests/manual/quickcontrols/styles-cover-flow/styles-cover-flow.qml
index 051732ec6b..b922a9e6c3 100644
--- a/tests/manual/quickcontrols/styles-cover-flow/styles-cover-flow.qml
+++ b/tests/manual/quickcontrols/styles-cover-flow/styles-cover-flow.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Window
diff --git a/tests/manual/quickcontrols/styles/styles.cpp b/tests/manual/quickcontrols/styles/styles.cpp
index c1355c43cf..f3c1937dc1 100644
--- a/tests/manual/quickcontrols/styles/styles.cpp
+++ b/tests/manual/quickcontrols/styles/styles.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QGuiApplication>
#include <QQmlApplicationEngine>
diff --git a/tests/manual/quickcontrols/styles/styles.qml b/tests/manual/quickcontrols/styles/styles.qml
index 62a39e4071..d8e96db62e 100644
--- a/tests/manual/quickcontrols/styles/styles.qml
+++ b/tests/manual/quickcontrols/styles/styles.qml
@@ -1,5 +1,86 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+
+/*
+ This manual test is used to take screenshots of each style for use in the
+ documentation:
+
+ Step 1
+
+ Take screenshots of the app in the relevant styles in both light and dark
+ themes (where applicable) using the commented-out window hints.
+
+ The screenshots are usually taken on a MacBook with a DPI of 2.
+ On macOS, Cmd+Shift+4 starts the screenshot process, Space allows selecting
+ a window, holding Option before left-clicking takes a screenshot of the
+ window without the default drop shadow border.
+
+ If updating all styles, it can be helpful to have a script to open an
+ instance of the app for each style:
+
+ #! /bin/bash
+
+ app=$1
+
+ set -e
+
+ usageExample="Usage example:\run-with-all-controls-styles.sh ./tst_manual_qqc_styles"
+
+ if [ ! -f "$app" ]; then
+ echo "app \"$app\" doesn't exist in \"$PWD\"; aborting"
+ echo $usageExample
+ exit
+ fi
+
+ # For dark mode.
+ export QT_QUICK_CONTROLS_MATERIAL_THEME=Dark
+ export QT_QUICK_CONTROLS_UNIVERSAL_THEME=Dark
+
+ QT_QUICK_CONTROLS_STYLE=Basic $app 0 0 &
+ QT_QUICK_CONTROLS_STYLE=Fusion $app 400 0 &
+ QT_QUICK_CONTROLS_STYLE=macOS $app 800 0 &
+ QT_QUICK_CONTROLS_STYLE=Material $app 1200 0 &
+ QT_QUICK_CONTROLS_STYLE=Imagine $app 0 400 &
+ QT_QUICK_CONTROLS_STYLE=iOS $app 400 0 &
+ QT_QUICK_CONTROLS_STYLE=Universal $app 800 400 &
+ #QT_QUICK_CONTROLS_STYLE=Windows $app 1200 400 &
+
+ Step 2
+
+ Rename images accordingly.
+
+ Step 3
+
+ Until QTBUG-63366 is solved, and if taken on a display with a DPR > 1,
+ reduce the size of the images so that they are their natural (1 DPI) size.
+ For example, if taken on a display with a DPR of 2, halve them:
+
+ mogrify -resize 50% qtquickcontrols-basic.png
+ mogrify -resize 50% qtquickcontrols-fusion-light.png
+ mogrify -resize 50% qtquickcontrols-fusion-dark.png
+ mogrify -resize 50% qtquickcontrols-imagine.png
+ mogrify -resize 50% qtquickcontrols-ios-light.png
+ mogrify -resize 50% qtquickcontrols-ios-dark.png
+ mogrify -resize 50% qtquickcontrols-macos-light.png
+ mogrify -resize 50% qtquickcontrols-macos-dark.png
+ mogrify -resize 50% qtquickcontrols-material-light.png
+ mogrify -resize 50% qtquickcontrols-material-dark.png
+ mogrify -resize 50% qtquickcontrols-universal-light.png
+ mogrify -resize 50% qtquickcontrols-universal-dark.png
+ mogrify -resize 50% qtquickcontrols-windows.png
+
+ Step 4
+
+ Run "optipng -o 7 -strip all" on each image to reduce their file size.
+
+ Step 5
+
+ There may be extra screenshot images that need to be updated, depending
+ on which style is being updated. For example, the Material style has
+ screenshots that can be generated using tst_snippets:
+
+ SCREENSHOTS=1 QT_QUICK_CONTROLS_STYLE=Material ./tst_snippets verify:qtquickcontrols-material-accent verify:qtquickcontrols-material-attributes verify:qtquickcontrols-material-background verify:qtquickcontrols-material-elevation verify:qtquickcontrols-material-foreground verify:qtquickcontrols-material-theme verify:qtquickcontrols-material-variant
+*/
import QtQuick
import QtQuick.Layouts
@@ -9,16 +90,16 @@ ApplicationWindow {
id: window
visible: true
- minimumWidth: column.implicitWidth + 80
- minimumHeight: column.implicitHeight + 80
- title: "Qt Quick Controls 2 - Styles"
+ // Add some extra width and height to give the content a little more room.
+ minimumWidth: column.implicitWidth + column.anchors.margins + 120
+ minimumHeight: column.implicitHeight + column.anchors.margins + 20
+ title: "Qt Quick Controls - Styles"
// for taking frameless screenshots:
- // flags: Qt.Window | Qt.FramelessWindowHint
+// flags: Qt.Window | Qt.FramelessWindowHint
ColumnLayout {
id: column
-
spacing: 20
anchors.fill: parent
anchors.margins: 40
@@ -26,41 +107,81 @@ ApplicationWindow {
GroupBox {
title: "Font Size"
topPadding: 30
+ contentWidth: fontColumnLayout.implicitWidth + fontColumnLayout.anchors.leftMargin
background.visible: false
+ Layout.fillWidth: false
+ Layout.fillHeight: false
ColumnLayout {
+ id: fontColumnLayout
anchors.fill: parent
anchors.leftMargin: 20
- RadioButton { leftPadding: 0; text: "Small" }
- RadioButton { leftPadding: 0; text: "Medium"; checked: true }
- RadioButton { leftPadding: 0; text: "Large" }
+ RadioButton {
+ leftPadding: 0
+ text: "Small"
+ Layout.fillWidth: false
+ }
+ RadioButton {
+ leftPadding: 0
+ text: "Medium"
+ checked: true
+ Layout.fillWidth: false
+ }
+ RadioButton {
+ leftPadding: 0
+ text: "Large"
+ Layout.fillWidth: false
+ }
}
}
GroupBox {
title: "Audio"
topPadding: 30
+ contentWidth: audioGridLayout.implicitWidth + audioGridLayout.anchors.leftMargin
background.visible: false
+ Layout.fillWidth: true
+ Layout.fillHeight: false
+
GridLayout {
+ id: audioGridLayout
columns: 2
columnSpacing: 30
anchors.fill: parent
anchors.leftMargin: 20
- Label { text: "Volume" }
- Slider { value: 1.0 }
- Label { text: "Bass" }
- Slider { value: 0.75 }
- Label { text: "Treble" }
- Slider { value: 0.5 }
+ Label {
+ text: "Volume"
+ }
+ Slider {
+ value: 1.0
+ Layout.fillWidth: true
+ }
+
+ Label {
+ text: "Bass"
+ }
+ Slider {
+ value: 0.75
+ Layout.fillWidth: true
+ }
+
+ Label {
+ text: "Treble"
+ }
+ Slider {
+ value: 0.5
+ Layout.fillWidth: true
+ }
}
}
Button {
text: "Save"
Layout.alignment: Qt.AlignRight
+ Layout.fillWidth: false
}
Item { Layout.fillHeight: true }
diff --git a/tests/manual/quickcontrols/swipedelegate/CloseOnCompletedWorks.qml b/tests/manual/quickcontrols/swipedelegate/CloseOnCompletedWorks.qml
index fc29a94699..64f8971828 100644
--- a/tests/manual/quickcontrols/swipedelegate/CloseOnCompletedWorks.qml
+++ b/tests/manual/quickcontrols/swipedelegate/CloseOnCompletedWorks.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2022 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick 2
import QtQuick.Controls 2
diff --git a/tests/manual/quickcontrols/swipetoremove/CMakeLists.txt b/tests/manual/quickcontrols/swipetoremove/CMakeLists.txt
new file mode 100644
index 0000000000..4500695355
--- /dev/null
+++ b/tests/manual/quickcontrols/swipetoremove/CMakeLists.txt
@@ -0,0 +1,40 @@
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
+
+cmake_minimum_required(VERSION 3.16)
+project(swipetoremove LANGUAGES CXX)
+
+set(CMAKE_AUTOMOC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/quickcontrols/swipetoremove")
+
+find_package(Qt6 REQUIRED COMPONENTS Core Gui Qml)
+
+qt_add_executable(swipetoremoveexample WIN32 MACOSX_BUNDLE
+ swipetoremove.cpp
+)
+target_link_libraries(swipetoremoveexample PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::Qml
+)
+
+# Resources:
+qt_add_qml_module(swipetoremoveexample
+ URI swipetoremove
+ NO_RESOURCE_TARGET_PATH
+ QML_FILES
+ "swipetoremove.qml"
+ RESOURCES
+ "fonts/fontello.ttf"
+)
+
+install(TARGETS swipetoremoveexample
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/tests/manual/quickcontrols/swipetoremove/doc/images/qtquickcontrols-swipetoremove.gif b/tests/manual/quickcontrols/swipetoremove/doc/images/qtquickcontrols-swipetoremove.gif
new file mode 100644
index 0000000000..6142831356
--- /dev/null
+++ b/tests/manual/quickcontrols/swipetoremove/doc/images/qtquickcontrols-swipetoremove.gif
Binary files differ
diff --git a/tests/manual/quickcontrols/swipetoremove/doc/images/qtquickcontrols-swipetoremove.png b/tests/manual/quickcontrols/swipetoremove/doc/images/qtquickcontrols-swipetoremove.png
new file mode 100644
index 0000000000..07a200fe92
--- /dev/null
+++ b/tests/manual/quickcontrols/swipetoremove/doc/images/qtquickcontrols-swipetoremove.png
Binary files differ
diff --git a/tests/manual/quickcontrols/swipetoremove/doc/src/qtquickcontrols-swipetoremove.qdoc b/tests/manual/quickcontrols/swipetoremove/doc/src/qtquickcontrols-swipetoremove.qdoc
new file mode 100644
index 0000000000..29f4e652b1
--- /dev/null
+++ b/tests/manual/quickcontrols/swipetoremove/doc/src/qtquickcontrols-swipetoremove.qdoc
@@ -0,0 +1,42 @@
+// Copyright (C) 2017 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
+
+/*!
+ \example swipetoremove
+ \keyword Qt Quick Controls - Swipe to Remove
+ \title Qt Quick Controls - Swipe to Remove
+ \ingroup qtquickcontrols-examples
+ \brief Demonstrates removal of list items by swipe gesture.
+
+ This example demonstrates how \l SwipeDelegate can be used to implement
+ removal of list items by swiping. This UI pattern is often used in touch
+ user interfaces.
+
+ \image qtquickcontrols-swipetoremove.png "Screen shot of the app"
+
+ Each list item can be swiped to the left, which reveals a label on the
+ \l {SwipeDelegate::swipe}{right} side indicating that the item will be
+ removed if the swipe is completed.
+
+ \image qtquickcontrols-swipetoremove.gif "Animation of the app working"
+
+ The following snippet contains the implementation of the side item.
+
+ \snippet swipetoremove/swipetoremove.qml delegate
+
+ The following snippet presents how the logic of removing items is
+ implemented. When the swipe is \l {SwipeDelegate::swipe}{completed}, it
+ starts a timer that waits a few seconds to let the user undo the remove
+ action. Once the undo timer triggers, the item is removed from the list:
+
+ \snippet swipetoremove/swipetoremove.qml removal
+
+ Finally, the removal of an item triggers the following transitions. The
+ \l {ListView::} {remove} transition applies to the item that is removed,
+ and the \l {ListView::}{displaced} transition applies to the other items
+ that got displaced due to the removal:
+
+ \snippet swipetoremove/swipetoremove.qml transitions
+
+ \include examples-run.qdocinc
+*/
diff --git a/tests/manual/quickcontrols/swipetoremove/fonts/LICENSE.txt b/tests/manual/quickcontrols/swipetoremove/fonts/LICENSE.txt
new file mode 100644
index 0000000000..7394a58ddf
--- /dev/null
+++ b/tests/manual/quickcontrols/swipetoremove/fonts/LICENSE.txt
@@ -0,0 +1,12 @@
+Font license info
+
+
+## Elusive
+
+ Copyright (C) 2013 by Aristeides Stathopoulos
+
+ Author: Aristeides Stathopoulos
+ License: SIL (http://scripts.sil.org/OFL)
+ Homepage: http://aristeides.com/
+
+
diff --git a/tests/manual/quickcontrols/swipetoremove/fonts/fontello.ttf b/tests/manual/quickcontrols/swipetoremove/fonts/fontello.ttf
new file mode 100644
index 0000000000..553fd2efca
--- /dev/null
+++ b/tests/manual/quickcontrols/swipetoremove/fonts/fontello.ttf
Binary files differ
diff --git a/tests/manual/quickcontrols/swipetoremove/swipetoremove.cpp b/tests/manual/quickcontrols/swipetoremove/swipetoremove.cpp
new file mode 100644
index 0000000000..c46926e2b2
--- /dev/null
+++ b/tests/manual/quickcontrols/swipetoremove/swipetoremove.cpp
@@ -0,0 +1,20 @@
+// Copyright (C) 2017 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+
+#include <QGuiApplication>
+#include <QQmlApplicationEngine>
+#include <QFontDatabase>
+
+int main(int argc, char *argv[])
+{
+ QGuiApplication app(argc, argv);
+
+ QFontDatabase::addApplicationFont(":/fonts/fontello.ttf");
+
+ QQmlApplicationEngine engine;
+ engine.load(QUrl("qrc:/swipetoremove.qml"));
+ if (engine.rootObjects().isEmpty())
+ return -1;
+
+ return app.exec();
+}
diff --git a/tests/manual/quickcontrols/swipetoremove/swipetoremove.pro b/tests/manual/quickcontrols/swipetoremove/swipetoremove.pro
new file mode 100644
index 0000000000..e16ff8145f
--- /dev/null
+++ b/tests/manual/quickcontrols/swipetoremove/swipetoremove.pro
@@ -0,0 +1,10 @@
+TEMPLATE = app
+TARGET = swipetoremove
+QT += qml
+
+SOURCES += swipetoremove.cpp
+
+RESOURCES += swipetoremove.qml
+
+target.path = $$[QT_INSTALL_EXAMPLES]/quickcontrols/swipetoremove
+INSTALLS += target
diff --git a/tests/manual/quickcontrols/swipetoremove/swipetoremove.qml b/tests/manual/quickcontrols/swipetoremove/swipetoremove.qml
new file mode 100644
index 0000000000..dd2d9d3ecf
--- /dev/null
+++ b/tests/manual/quickcontrols/swipetoremove/swipetoremove.qml
@@ -0,0 +1,130 @@
+// Copyright (C) 2017 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+
+import QtQuick
+import QtQuick.Controls
+import QtQuick.Controls.Material
+
+ApplicationWindow {
+ id: window
+ width: 300
+ height: 400
+ visible: true
+ title: qsTr("Swipe to Remove")
+
+ ListView {
+ id: listView
+ anchors.fill: parent
+
+ delegate: SwipeDelegate {
+ id: delegate
+
+ text: modelData
+ width: listView.width
+
+ //! [delegate]
+ swipe.right: Rectangle {
+ width: parent.width
+ height: parent.height
+
+ clip: true
+ color: SwipeDelegate.pressed ? "#555" : "#666"
+
+ Label {
+ font.family: "Fontello"
+ text: delegate.swipe.complete ? "\ue805" // icon-cw-circled
+ : "\ue801" // icon-cancel-circled-1
+
+ padding: 20
+ anchors.fill: parent
+ horizontalAlignment: Qt.AlignRight
+ verticalAlignment: Qt.AlignVCenter
+
+ opacity: 2 * -delegate.swipe.position
+
+ color: Material.color(delegate.swipe.complete ? Material.Green : Material.Red, Material.Shade200)
+ Behavior on color { ColorAnimation { } }
+ }
+
+ Label {
+ text: qsTr("Removed")
+ color: "white"
+
+ padding: 20
+ anchors.fill: parent
+ horizontalAlignment: Qt.AlignLeft
+ verticalAlignment: Qt.AlignVCenter
+
+ opacity: delegate.swipe.complete ? 1 : 0
+ Behavior on opacity { NumberAnimation { } }
+ }
+
+ SwipeDelegate.onClicked: delegate.swipe.close()
+ SwipeDelegate.onPressedChanged: undoTimer.stop()
+ }
+ //! [delegate]
+
+ //! [removal]
+ Timer {
+ id: undoTimer
+ interval: 3600
+ onTriggered: listModel.remove(index)
+ }
+
+ swipe.onCompleted: undoTimer.start()
+ //! [removal]
+ }
+
+ model: ListModel {
+ id: listModel
+ ListElement { text: "Lorem ipsum dolor sit amet" }
+ ListElement { text: "Curabitur sit amet risus" }
+ ListElement { text: "Suspendisse vehicula nisi" }
+ ListElement { text: "Mauris imperdiet libero" }
+ ListElement { text: "Sed vitae dui aliquet augue" }
+ ListElement { text: "Praesent in elit eu nulla" }
+ ListElement { text: "Etiam vitae magna" }
+ ListElement { text: "Pellentesque eget elit euismod" }
+ ListElement { text: "Nulla at enim porta" }
+ ListElement { text: "Fusce tincidunt odio" }
+ ListElement { text: "Ut non ex a ligula molestie" }
+ ListElement { text: "Nam vitae justo scelerisque" }
+ ListElement { text: "Vestibulum pulvinar tellus" }
+ ListElement { text: "Quisque dignissim leo sed gravida" }
+ }
+
+ //! [transitions]
+ remove: Transition {
+ SequentialAnimation {
+ PauseAnimation { duration: 125 }
+ NumberAnimation { property: "height"; to: 0; easing.type: Easing.InOutQuad }
+ }
+ }
+
+ displaced: Transition {
+ SequentialAnimation {
+ PauseAnimation { duration: 125 }
+ NumberAnimation { property: "y"; easing.type: Easing.InOutQuad }
+ }
+ }
+ //! [transitions]
+
+ ScrollIndicator.vertical: ScrollIndicator { }
+ }
+
+ Label {
+ id: placeholder
+ text: qsTr("Swipe no more")
+
+ anchors.margins: 60
+ anchors.fill: parent
+
+ opacity: 0.5
+ visible: listView.count === 0
+
+ horizontalAlignment: Qt.AlignHCenter
+ verticalAlignment: Qt.AlignVCenter
+ wrapMode: Label.WordWrap
+ font.pixelSize: 18
+ }
+}
diff --git a/tests/manual/quickcontrols/systemtrayicon/systemtrayicon.cpp b/tests/manual/quickcontrols/systemtrayicon/systemtrayicon.cpp
index 32b1b4c1ce..0108367b9f 100644
--- a/tests/manual/quickcontrols/systemtrayicon/systemtrayicon.cpp
+++ b/tests/manual/quickcontrols/systemtrayicon/systemtrayicon.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QGuiApplication>
#include <QQmlApplicationEngine>
diff --git a/tests/manual/quickcontrols/systemtrayicon/systemtrayicon.qml b/tests/manual/quickcontrols/systemtrayicon/systemtrayicon.qml
index d3a9454074..aeb0040ace 100644
--- a/tests/manual/quickcontrols/systemtrayicon/systemtrayicon.qml
+++ b/tests/manual/quickcontrols/systemtrayicon/systemtrayicon.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/+Imagine/ApplicationWindow.qml b/tests/manual/quickcontrols/testbench/+Imagine/ApplicationWindow.qml
index 8621f52da3..45c3e39a23 100644
--- a/tests/manual/quickcontrols/testbench/+Imagine/ApplicationWindow.qml
+++ b/tests/manual/quickcontrols/testbench/+Imagine/ApplicationWindow.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick.Controls.Imagine
diff --git a/tests/manual/quickcontrols/testbench/+Imagine/ContentPane.qml b/tests/manual/quickcontrols/testbench/+Imagine/ContentPane.qml
index e0c66c7c1d..bb0a8a2648 100644
--- a/tests/manual/quickcontrols/testbench/+Imagine/ContentPane.qml
+++ b/tests/manual/quickcontrols/testbench/+Imagine/ContentPane.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick.Controls.Imagine
diff --git a/tests/manual/quickcontrols/testbench/+Imagine/Dialog.qml b/tests/manual/quickcontrols/testbench/+Imagine/Dialog.qml
index 3cb16399cf..3f8a131c12 100644
--- a/tests/manual/quickcontrols/testbench/+Imagine/Dialog.qml
+++ b/tests/manual/quickcontrols/testbench/+Imagine/Dialog.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick.Controls.Imagine
diff --git a/tests/manual/quickcontrols/testbench/+Imagine/Menu.qml b/tests/manual/quickcontrols/testbench/+Imagine/Menu.qml
index 548f4a9c47..6614977ce6 100644
--- a/tests/manual/quickcontrols/testbench/+Imagine/Menu.qml
+++ b/tests/manual/quickcontrols/testbench/+Imagine/Menu.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick.Controls.Imagine
diff --git a/tests/manual/quickcontrols/testbench/+Imagine/ToolBar.qml b/tests/manual/quickcontrols/testbench/+Imagine/ToolBar.qml
index 0b2653835f..77a39f063d 100644
--- a/tests/manual/quickcontrols/testbench/+Imagine/ToolBar.qml
+++ b/tests/manual/quickcontrols/testbench/+Imagine/ToolBar.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick.Controls.Imagine
diff --git a/tests/manual/quickcontrols/testbench/ApplicationWindow.qml b/tests/manual/quickcontrols/testbench/ApplicationWindow.qml
index dca67c4750..57baed7127 100644
--- a/tests/manual/quickcontrols/testbench/ApplicationWindow.qml
+++ b/tests/manual/quickcontrols/testbench/ApplicationWindow.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/ColorEditor.qml b/tests/manual/quickcontrols/testbench/ColorEditor.qml
index dd5d7f3aaa..4d2ab5ad86 100644
--- a/tests/manual/quickcontrols/testbench/ColorEditor.qml
+++ b/tests/manual/quickcontrols/testbench/ColorEditor.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
@@ -29,5 +29,6 @@ RowLayout {
}
Layout.preferredWidth: 200
+ Layout.fillWidth: false
}
}
diff --git a/tests/manual/quickcontrols/testbench/ContentPane.qml b/tests/manual/quickcontrols/testbench/ContentPane.qml
index 5bff3f5d23..a42edbdb81 100644
--- a/tests/manual/quickcontrols/testbench/ContentPane.qml
+++ b/tests/manual/quickcontrols/testbench/ContentPane.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/ControlContainer.qml b/tests/manual/quickcontrols/testbench/ControlContainer.qml
index 34688fb7dd..57ba0c1a85 100644
--- a/tests/manual/quickcontrols/testbench/ControlContainer.qml
+++ b/tests/manual/quickcontrols/testbench/ControlContainer.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
diff --git a/tests/manual/quickcontrols/testbench/Dialog.qml b/tests/manual/quickcontrols/testbench/Dialog.qml
index a1a4e5d624..f909386c86 100644
--- a/tests/manual/quickcontrols/testbench/Dialog.qml
+++ b/tests/manual/quickcontrols/testbench/Dialog.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/ExampleContainer.qml b/tests/manual/quickcontrols/testbench/ExampleContainer.qml
index 19dbb9a41c..478012c884 100644
--- a/tests/manual/quickcontrols/testbench/ExampleContainer.qml
+++ b/tests/manual/quickcontrols/testbench/ExampleContainer.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/Menu.qml b/tests/manual/quickcontrols/testbench/Menu.qml
index 15786af830..8f39739aaa 100644
--- a/tests/manual/quickcontrols/testbench/Menu.qml
+++ b/tests/manual/quickcontrols/testbench/Menu.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/SettingsDialog.qml b/tests/manual/quickcontrols/testbench/SettingsDialog.qml
index f879e5074f..545cf6fa83 100644
--- a/tests/manual/quickcontrols/testbench/SettingsDialog.qml
+++ b/tests/manual/quickcontrols/testbench/SettingsDialog.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
@@ -120,6 +120,7 @@ Ui.Dialog {
GroupBox {
title: qsTr("General")
Layout.fillWidth: true
+ Layout.fillHeight: false
GridLayout {
columns: 2
@@ -161,6 +162,7 @@ Ui.Dialog {
title: qsTr("Imagine Style")
visible: usingImagineStyle
Layout.fillWidth: true
+ Layout.fillHeight: false
Layout.columnSpan: 2
GridLayout {
@@ -173,6 +175,7 @@ Ui.Dialog {
enabled: usingImagineStyle
Layout.columnSpan: 2
+ Layout.fillWidth: false
}
Label {
@@ -217,6 +220,7 @@ Ui.Dialog {
enabled: usingImagineStyle && customImagineStyleCheckBox.checked
Layout.columnSpan: 2
+ Layout.fillWidth: false
ToolTip {
text: "If set, custom Imagine style assets will be modified to be compliant whenever they have changed on disk"
@@ -231,6 +235,7 @@ Ui.Dialog {
GroupBox {
title: qsTr("Palette")
Layout.fillWidth: true
+ Layout.fillHeight: false
GridLayout {
columns: 2
@@ -239,6 +244,7 @@ Ui.Dialog {
CheckBox {
id: useCustomPaletteCheckBox
text: qsTr("Use Custom Palette")
+ Layout.fillWidth: false
}
ColorEditor {
@@ -376,6 +382,7 @@ Ui.Dialog {
Layout.columnSpan: 2
Layout.alignment: Qt.AlignRight
+ Layout.fillWidth: false
}
}
}
diff --git a/tests/manual/quickcontrols/testbench/ToolBar.qml b/tests/manual/quickcontrols/testbench/ToolBar.qml
index ffbf422a76..1d7c503f56 100644
--- a/tests/manual/quickcontrols/testbench/ToolBar.qml
+++ b/tests/manual/quickcontrols/testbench/ToolBar.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/assetfixer.cpp b/tests/manual/quickcontrols/testbench/assetfixer.cpp
index 57936b737b..c2582a561a 100644
--- a/tests/manual/quickcontrols/testbench/assetfixer.cpp
+++ b/tests/manual/quickcontrols/testbench/assetfixer.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include "assetfixer.h"
diff --git a/tests/manual/quickcontrols/testbench/assetfixer.h b/tests/manual/quickcontrols/testbench/assetfixer.h
index 88594a87d0..1651ffad26 100644
--- a/tests/manual/quickcontrols/testbench/assetfixer.h
+++ b/tests/manual/quickcontrols/testbench/assetfixer.h
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#ifndef ASSETFIXER_H
#define ASSETFIXER_H
diff --git a/tests/manual/quickcontrols/testbench/clipboard.cpp b/tests/manual/quickcontrols/testbench/clipboard.cpp
index e8017e0e23..93ee93cacf 100644
--- a/tests/manual/quickcontrols/testbench/clipboard.cpp
+++ b/tests/manual/quickcontrols/testbench/clipboard.cpp
@@ -1,11 +1,12 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include "clipboard.h"
#include <QClipboard>
#include <QGuiApplication>
#include <QSettings>
+#include <QMap>
const QStringList keys = {
"Palette/window",
diff --git a/tests/manual/quickcontrols/testbench/clipboard.h b/tests/manual/quickcontrols/testbench/clipboard.h
index f262638391..c56103b84c 100644
--- a/tests/manual/quickcontrols/testbench/clipboard.h
+++ b/tests/manual/quickcontrols/testbench/clipboard.h
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#ifndef CLIPBOARD_H
#define CLIPBOARD_H
diff --git a/tests/manual/quickcontrols/testbench/controls/BusyIndicator.qml b/tests/manual/quickcontrols/testbench/controls/BusyIndicator.qml
index c61c100668..1c14c13a00 100644
--- a/tests/manual/quickcontrols/testbench/controls/BusyIndicator.qml
+++ b/tests/manual/quickcontrols/testbench/controls/BusyIndicator.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/Button.qml b/tests/manual/quickcontrols/testbench/controls/Button.qml
index 1dcf05da36..12f398ccab 100644
--- a/tests/manual/quickcontrols/testbench/controls/Button.qml
+++ b/tests/manual/quickcontrols/testbench/controls/Button.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/CheckBox.qml b/tests/manual/quickcontrols/testbench/controls/CheckBox.qml
index 4973033a4d..b595e592b2 100644
--- a/tests/manual/quickcontrols/testbench/controls/CheckBox.qml
+++ b/tests/manual/quickcontrols/testbench/controls/CheckBox.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/CheckDelegate.qml b/tests/manual/quickcontrols/testbench/controls/CheckDelegate.qml
index d64339501f..085b5acc82 100644
--- a/tests/manual/quickcontrols/testbench/controls/CheckDelegate.qml
+++ b/tests/manual/quickcontrols/testbench/controls/CheckDelegate.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
@@ -15,6 +15,9 @@ QtObject {
["partially-checked"],
["partially-checked", "disabled"],
["partially-checked", "pressed"],
+ ["highlighted"],
+ ["highlighted", "pressed"],
+ ["mirrored"]
]
property Component component: CheckDelegate {
@@ -23,7 +26,10 @@ QtObject {
checkState: is("checked") ? Qt.Checked : is("partially-checked") ? Qt.PartiallyChecked : Qt.Unchecked
// Only set it if it's pressed, or the non-pressed examples will have no press effects
down: is("pressed") ? true : undefined
+ highlighted: is("highlighted")
focusPolicy: Qt.StrongFocus
+
+ LayoutMirroring.enabled: is("mirrored")
}
property Component exampleComponent: ListView {
diff --git a/tests/manual/quickcontrols/testbench/controls/ComboBox.qml b/tests/manual/quickcontrols/testbench/controls/ComboBox.qml
index 39b8579630..a1c57db693 100644
--- a/tests/manual/quickcontrols/testbench/controls/ComboBox.qml
+++ b/tests/manual/quickcontrols/testbench/controls/ComboBox.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/DelayButton.qml b/tests/manual/quickcontrols/testbench/controls/DelayButton.qml
index 1c36a4f7ca..8509932a0d 100644
--- a/tests/manual/quickcontrols/testbench/controls/DelayButton.qml
+++ b/tests/manual/quickcontrols/testbench/controls/DelayButton.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/Dial.qml b/tests/manual/quickcontrols/testbench/controls/Dial.qml
index c4847ac886..ec7f5411e3 100644
--- a/tests/manual/quickcontrols/testbench/controls/Dial.qml
+++ b/tests/manual/quickcontrols/testbench/controls/Dial.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/Dialog.qml b/tests/manual/quickcontrols/testbench/controls/Dialog.qml
index 1a25fbdfb9..259e1742b4 100644
--- a/tests/manual/quickcontrols/testbench/controls/Dialog.qml
+++ b/tests/manual/quickcontrols/testbench/controls/Dialog.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/Frame.qml b/tests/manual/quickcontrols/testbench/controls/Frame.qml
index a57cb76f18..76f90d7d2f 100644
--- a/tests/manual/quickcontrols/testbench/controls/Frame.qml
+++ b/tests/manual/quickcontrols/testbench/controls/Frame.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/GroupBox.qml b/tests/manual/quickcontrols/testbench/controls/GroupBox.qml
index 23c938ff21..44c122a230 100644
--- a/tests/manual/quickcontrols/testbench/controls/GroupBox.qml
+++ b/tests/manual/quickcontrols/testbench/controls/GroupBox.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/ItemDelegate.qml b/tests/manual/quickcontrols/testbench/controls/ItemDelegate.qml
index e8171c36bc..709a8d5b5f 100644
--- a/tests/manual/quickcontrols/testbench/controls/ItemDelegate.qml
+++ b/tests/manual/quickcontrols/testbench/controls/ItemDelegate.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/Label.qml b/tests/manual/quickcontrols/testbench/controls/Label.qml
index a5074e8faf..6632643803 100644
--- a/tests/manual/quickcontrols/testbench/controls/Label.qml
+++ b/tests/manual/quickcontrols/testbench/controls/Label.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/Menu.qml b/tests/manual/quickcontrols/testbench/controls/Menu.qml
index aeadee4f86..f1948a7399 100644
--- a/tests/manual/quickcontrols/testbench/controls/Menu.qml
+++ b/tests/manual/quickcontrols/testbench/controls/Menu.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
@@ -42,15 +42,18 @@ QtObject {
MenuItem {
text: "Checked"
+ checkable: true
checked: true
}
MenuItem {
text: "Checked + Pressed"
+ checkable: true
checked: true
down: true
}
MenuItem {
text: "Checked + Disabled"
+ checkable: true
checked: true
enabled: false
}
diff --git a/tests/manual/quickcontrols/testbench/controls/MenuBar.qml b/tests/manual/quickcontrols/testbench/controls/MenuBar.qml
index bed6fbd909..3ea2e2be83 100644
--- a/tests/manual/quickcontrols/testbench/controls/MenuBar.qml
+++ b/tests/manual/quickcontrols/testbench/controls/MenuBar.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/Page.qml b/tests/manual/quickcontrols/testbench/controls/Page.qml
index d8c29a7fe4..ef3a0dca7d 100644
--- a/tests/manual/quickcontrols/testbench/controls/Page.qml
+++ b/tests/manual/quickcontrols/testbench/controls/Page.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/PageIndicator.qml b/tests/manual/quickcontrols/testbench/controls/PageIndicator.qml
index 34a242a6af..4b7c0d5a0d 100644
--- a/tests/manual/quickcontrols/testbench/controls/PageIndicator.qml
+++ b/tests/manual/quickcontrols/testbench/controls/PageIndicator.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/Pane.qml b/tests/manual/quickcontrols/testbench/controls/Pane.qml
index 9f60bec588..7af1ae731a 100644
--- a/tests/manual/quickcontrols/testbench/controls/Pane.qml
+++ b/tests/manual/quickcontrols/testbench/controls/Pane.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/ProgressBar.qml b/tests/manual/quickcontrols/testbench/controls/ProgressBar.qml
index bd4ab8e379..3632effa3e 100644
--- a/tests/manual/quickcontrols/testbench/controls/ProgressBar.qml
+++ b/tests/manual/quickcontrols/testbench/controls/ProgressBar.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/RadioButton.qml b/tests/manual/quickcontrols/testbench/controls/RadioButton.qml
index 00beb1bac9..feb8d8f195 100644
--- a/tests/manual/quickcontrols/testbench/controls/RadioButton.qml
+++ b/tests/manual/quickcontrols/testbench/controls/RadioButton.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/RadioDelegate.qml b/tests/manual/quickcontrols/testbench/controls/RadioDelegate.qml
index 4dab387fcf..e182cae8ad 100644
--- a/tests/manual/quickcontrols/testbench/controls/RadioDelegate.qml
+++ b/tests/manual/quickcontrols/testbench/controls/RadioDelegate.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
@@ -11,7 +11,10 @@ QtObject {
["pressed"],
["checked"],
["checked", "disabled"],
- ["checked", "pressed"]
+ ["checked", "pressed"],
+ ["highlighted"],
+ ["highlighted", "pressed"],
+ ["mirrored"]
]
property Component component: Component {
@@ -21,7 +24,10 @@ QtObject {
checked: is("checked")
// Only set it if it's pressed, or the non-pressed examples will have no press effects
down: is("pressed") ? true : undefined
+ highlighted: is("highlighted")
focusPolicy: Qt.StrongFocus
+
+ LayoutMirroring.enabled: is("mirrored")
}
}
diff --git a/tests/manual/quickcontrols/testbench/controls/RangeSlider.qml b/tests/manual/quickcontrols/testbench/controls/RangeSlider.qml
index 18a2418451..75bfbd97a4 100644
--- a/tests/manual/quickcontrols/testbench/controls/RangeSlider.qml
+++ b/tests/manual/quickcontrols/testbench/controls/RangeSlider.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/RoundButton.qml b/tests/manual/quickcontrols/testbench/controls/RoundButton.qml
index 530aaee338..9e25c8210a 100644
--- a/tests/manual/quickcontrols/testbench/controls/RoundButton.qml
+++ b/tests/manual/quickcontrols/testbench/controls/RoundButton.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/ScrollBar.qml b/tests/manual/quickcontrols/testbench/controls/ScrollBar.qml
index 5fa00fec0f..d2124a53cb 100644
--- a/tests/manual/quickcontrols/testbench/controls/ScrollBar.qml
+++ b/tests/manual/quickcontrols/testbench/controls/ScrollBar.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/ScrollIndicator.qml b/tests/manual/quickcontrols/testbench/controls/ScrollIndicator.qml
index 5c0c0d4edc..f43027ae58 100644
--- a/tests/manual/quickcontrols/testbench/controls/ScrollIndicator.qml
+++ b/tests/manual/quickcontrols/testbench/controls/ScrollIndicator.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/Slider.qml b/tests/manual/quickcontrols/testbench/controls/Slider.qml
index d35e8fe0fa..098621fc73 100644
--- a/tests/manual/quickcontrols/testbench/controls/Slider.qml
+++ b/tests/manual/quickcontrols/testbench/controls/Slider.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/SpinBox.qml b/tests/manual/quickcontrols/testbench/controls/SpinBox.qml
index 06c6ca43ef..b7df6a080e 100644
--- a/tests/manual/quickcontrols/testbench/controls/SpinBox.qml
+++ b/tests/manual/quickcontrols/testbench/controls/SpinBox.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/SplitView.qml b/tests/manual/quickcontrols/testbench/controls/SplitView.qml
index c51ac846f2..7d7a975561 100644
--- a/tests/manual/quickcontrols/testbench/controls/SplitView.qml
+++ b/tests/manual/quickcontrols/testbench/controls/SplitView.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/SwipeDelegate.qml b/tests/manual/quickcontrols/testbench/controls/SwipeDelegate.qml
index e04f0bb630..36d683a8ac 100644
--- a/tests/manual/quickcontrols/testbench/controls/SwipeDelegate.qml
+++ b/tests/manual/quickcontrols/testbench/controls/SwipeDelegate.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/Switch.qml b/tests/manual/quickcontrols/testbench/controls/Switch.qml
index c7e5103183..db44ed1900 100644
--- a/tests/manual/quickcontrols/testbench/controls/Switch.qml
+++ b/tests/manual/quickcontrols/testbench/controls/Switch.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/SwitchDelegate.qml b/tests/manual/quickcontrols/testbench/controls/SwitchDelegate.qml
index 9508b2ce80..6fe3ecefce 100644
--- a/tests/manual/quickcontrols/testbench/controls/SwitchDelegate.qml
+++ b/tests/manual/quickcontrols/testbench/controls/SwitchDelegate.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/TabBar.qml b/tests/manual/quickcontrols/testbench/controls/TabBar.qml
index e0286146f9..96ee0896f4 100644
--- a/tests/manual/quickcontrols/testbench/controls/TabBar.qml
+++ b/tests/manual/quickcontrols/testbench/controls/TabBar.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/TextArea.qml b/tests/manual/quickcontrols/testbench/controls/TextArea.qml
index 3b76ef2b0a..b9c08846e4 100644
--- a/tests/manual/quickcontrols/testbench/controls/TextArea.qml
+++ b/tests/manual/quickcontrols/testbench/controls/TextArea.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/TextField.qml b/tests/manual/quickcontrols/testbench/controls/TextField.qml
index 205418f08c..74719dacad 100644
--- a/tests/manual/quickcontrols/testbench/controls/TextField.qml
+++ b/tests/manual/quickcontrols/testbench/controls/TextField.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/ToolBar.qml b/tests/manual/quickcontrols/testbench/controls/ToolBar.qml
index 1fccb74e65..867556d152 100644
--- a/tests/manual/quickcontrols/testbench/controls/ToolBar.qml
+++ b/tests/manual/quickcontrols/testbench/controls/ToolBar.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
@@ -34,6 +34,8 @@ QtObject {
ToolButton {
text: qsTr("ToolButton 3")
+ checkable: true
+ checked: true
}
}
}
diff --git a/tests/manual/quickcontrols/testbench/controls/ToolTip.qml b/tests/manual/quickcontrols/testbench/controls/ToolTip.qml
index de8f117429..f6ec986047 100644
--- a/tests/manual/quickcontrols/testbench/controls/ToolTip.qml
+++ b/tests/manual/quickcontrols/testbench/controls/ToolTip.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/controls/Tumbler.qml b/tests/manual/quickcontrols/testbench/controls/Tumbler.qml
index 1c571d22b1..067d3664b6 100644
--- a/tests/manual/quickcontrols/testbench/controls/Tumbler.qml
+++ b/tests/manual/quickcontrols/testbench/controls/Tumbler.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls
diff --git a/tests/manual/quickcontrols/testbench/directoryvalidator.cpp b/tests/manual/quickcontrols/testbench/directoryvalidator.cpp
index c1c083a246..f174832979 100644
--- a/tests/manual/quickcontrols/testbench/directoryvalidator.cpp
+++ b/tests/manual/quickcontrols/testbench/directoryvalidator.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include "directoryvalidator.h"
diff --git a/tests/manual/quickcontrols/testbench/directoryvalidator.h b/tests/manual/quickcontrols/testbench/directoryvalidator.h
index 89bb03bd29..b411662281 100644
--- a/tests/manual/quickcontrols/testbench/directoryvalidator.h
+++ b/tests/manual/quickcontrols/testbench/directoryvalidator.h
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#ifndef DIRECTORYVALIDATOR_H
#define DIRECTORYVALIDATOR_H
diff --git a/tests/manual/quickcontrols/testbench/fonts.qrc b/tests/manual/quickcontrols/testbench/fonts.qrc
index fc86e03183..4203c83326 100644
--- a/tests/manual/quickcontrols/testbench/fonts.qrc
+++ b/tests/manual/quickcontrols/testbench/fonts.qrc
@@ -1,5 +1,5 @@
<RCC>
<qresource prefix="/">
- <file>fonts/fontawesome.ttf</file>
+ <file>fonts/fontello.ttf</file>
</qresource>
</RCC>
diff --git a/tests/manual/quickcontrols/testbench/main.cpp b/tests/manual/quickcontrols/testbench/main.cpp
index 4a629523e6..14da6e7b2c 100644
--- a/tests/manual/quickcontrols/testbench/main.cpp
+++ b/tests/manual/quickcontrols/testbench/main.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QDebug>
#include <QFontDatabase>
diff --git a/tests/manual/quickcontrols/testbench/testbench.qml b/tests/manual/quickcontrols/testbench/testbench.qml
index 9df1ed873f..68975cfd69 100644
--- a/tests/manual/quickcontrols/testbench/testbench.qml
+++ b/tests/manual/quickcontrols/testbench/testbench.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2022 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtCore
import QtQuick
@@ -139,7 +139,11 @@ Ui.ApplicationWindow {
text: "\ue801"
font.family: "fontello"
visible: searchTextField.length > 0
- onClicked: searchTextField.clear()
+ onClicked: {
+ searchTextField.clear()
+ // textEdited is not emitted for clear(), so we have to set this ourselves.
+ settings.lastSearchText = ""
+ }
Layout.leftMargin: -5
}
diff --git a/tests/manual/quickcontrols/viewinqwidget/main.cpp b/tests/manual/quickcontrols/viewinqwidget/main.cpp
index 7ce08aaa78..21e78868c4 100644
--- a/tests/manual/quickcontrols/viewinqwidget/main.cpp
+++ b/tests/manual/quickcontrols/viewinqwidget/main.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QApplication>
#include <QHBoxLayout>
diff --git a/tests/manual/quickcontrols/viewinqwidget/main.qml b/tests/manual/quickcontrols/viewinqwidget/main.qml
index 8e347bdb81..10d70f18d1 100644
--- a/tests/manual/quickcontrols/viewinqwidget/main.qml
+++ b/tests/manual/quickcontrols/viewinqwidget/main.qml
@@ -1,5 +1,5 @@
// Copyright (C) 2017 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtQuick
import QtQuick.Controls