diff options
1756 files changed, 12154 insertions, 14043 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 05dcd0a7..2c31a50f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -10,7 +10,7 @@ project(QtQuickControls2 LANGUAGES CXX C ) -find_package(Qt6 ${PROJECT_VERSION} CONFIG REQUIRED COMPONENTS BuildInternals Core Gui Widgets Network Qml Quick QmlTools # special case +find_package(Qt6 ${PROJECT_VERSION} CONFIG REQUIRED COMPONENTS BuildInternals Core Gui Widgets Network Qml Quick # special case OPTIONAL_COMPONENTS QuickTest # special case ) if(NOT TARGET Qt::Quick) diff --git a/coin/module_config.yaml b/coin/module_config.yaml index 7f31a554..16d158c6 100644 --- a/coin/module_config.yaml +++ b/coin/module_config.yaml @@ -9,4 +9,4 @@ instructions: - !include "{{qt/qtbase}}/coin_module_build_template_v2.yaml" Test: - - !include "{{qt/qtbase}}/coin_module_test_template_v2.yaml" + - !include "{{qt/qtbase}}/coin_module_test_template_v3.yaml" diff --git a/dependencies.yaml b/dependencies.yaml index e0a7041d..8ec532b1 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -1,10 +1,7 @@ dependencies: ../qtdeclarative: - ref: f621603692ccc76c077ba3911048d823f80e4bd5 + ref: 6a5910c1c6947842500545542ec00ff105326a06 required: true - ../qtgraphicaleffects: - ref: 93e05abbbebc9ff5d2daecbe3b03978cfc00af03 - required: false ../qtimageformats: - ref: c81d38a6bf9eb5f11e71c45f8dbd0f8cd9c59d6b + ref: 110da1e534637890e11fa5592904f1dcba8fa53f required: false diff --git a/dist/changes-5.14.2 b/dist/changes-5.14.2 new file mode 100644 index 00000000..95572790 --- /dev/null +++ b/dist/changes-5.14.2 @@ -0,0 +1,40 @@ +Qt 5.14.2 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 5.14.0 through 5.14.1. + +For more details, refer to the online documentation included in this +distribution. The documentation is also available online: + +https://doc.qt.io/qt-5/index.html + +The Qt version 5.14 series is binary compatible with the 5.13.x series. +Applications compiled for 5.13 will continue to run with 5.14. + +Some of the changes listed in this file include issue tracking numbers +corresponding to tasks in the Qt Bug Tracker: + +https://bugreports.qt.io/ + +Each of these identifiers can be entered in the bug tracker to obtain more +information about a particular change. + +**************************************************************************** +* Controls * +**************************************************************************** + + - [QTBUG-82032] AbstractButton: fixed clicked() being emitted after + doubleClicked(). + - [QTBUG-81935] ToolTip: fixed timeout not activating if opened during exit + transition. + - [QTBUG-77202] Control: we now account for when a touch event is + synthesized by Qt as a mouse event. + - [QTBUG-81796] DialogButtonBox: fixed explicitly set button text not being + rendered. + - [QTBUG-75682] Fixed issue where Qt Quick Designer was not able to work + with the module on WebAssembly/static builds. + - [QTBUG-80970] RangeSlider: fixed errors in the documentation's example + code. + - [QDS-456] placeholderText is now set by default in Qt Design Studio + instead of text when dragging a TextField or TextArea onto the form + editor. + - [QTBUG-81216] Fixed QQuickStyle::setFallbackStyle() not working on + Android. diff --git a/dist/changes-5.15.0 b/dist/changes-5.15.0 new file mode 100644 index 00000000..b20691ea --- /dev/null +++ b/dist/changes-5.15.0 @@ -0,0 +1,80 @@ +Qt 5.15 introduces many new features and improvements as well as bugfixes +over the 5.14.x series. For more details, refer to the online documentation +included in this distribution. The documentation is also available online: + +https://doc.qt.io/qt-5/index.html + +The Qt version 5.15 series is binary compatible with the 5.14.x series. +Applications compiled for 5.14 will continue to run with 5.15. + +Some of the changes listed in this file include issue tracking numbers +corresponding to tasks in the Qt Bug Tracker: + +https://bugreports.qt.io/ + +Each of these identifiers can be entered in the bug tracker to obtain more +information about a particular change. + +Qt 5.15 introduces many new features and improvements as well as bugfixes +over the 5.14.x series. For more details, refer to the online documentation +included in this distribution. The documentation is also available online: + + https://doc.qt.io/qt-5.15/index.html + +The Qt version 5.15 series is binary compatible with the 5.14.x series. +Applications compiled for 5.14 will continue to run with 5.15. + +Some of the changes listed in this file include issue tracking numbers +corresponding to tasks in the Qt Bug Tracker: + + https://bugreports.qt.io/ + +Each of these identifiers can be entered in the bug tracker to obtain more +information about a particular change. + +**************************************************************************** +* Important Behavior Changes * +**************************************************************************** + + - [QTBUG-72085] Old delegate items (background, contentItem, etc.) are no + longer destroyed, as they are technically owned by user code. Instead, + they are hidden, unparented from the control (QQuickItem parent, not + QObject), and Accessible.ignored is set to true. This prevents them from + being unintentionally visible and interfering with the accessibility + tree when a new delegate item is set. + + See the following page for more information: + + https://doc.qt.io/qt-5/qtquickcontrols2-customize.html#considerations-for-custom-styles + +**************************************************************************** +* Controls * +**************************************************************************** + +- Added HorizontalHeaderView and VerticalHeaderView for use with TableView. +- Added selectTextByMouse property to ComboBox. +- [QTBUG-82473] Fixed Menu not taking padding into account when checking + if it is interactive. +- [QTBUG-73687] Fixed Menu positioning when a scale is set. +- [QTBUG-81867] Fixed hidden SplitView items causing visible items to not + be resizable. +- [QTBUG-82020] Fixed ComboBox text not being retranslated after a + translator is installed. +- [QTBUG-79501] Fixed keyboard navigation via tab in non-modal popups + (i.e. Drawer). +- [QTBUG-78858] Fixed Editable ComboBox's auto-completion performance. + +**************************************************************************** +* Styles * +**************************************************************************** + +Material +-------- +- [QTBUG-70768] Added missing visual distinction between enabled and + disabled sliders. +- [QTBUG-70768] Aligned Slider's visuals closer to the Material Design + guidelines. + +Imagine +------- +- [QTBUG-82463] Fixed squished Dial. diff --git a/examples/quickcontrols2/chattutorial/chapter1-settingup/main.qml b/examples/quickcontrols2/chattutorial/chapter1-settingup/main.qml index 29e5c300..3dc93e47 100644 --- a/examples/quickcontrols2/chattutorial/chapter1-settingup/main.qml +++ b/examples/quickcontrols2/chattutorial/chapter1-settingup/main.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 540 diff --git a/examples/quickcontrols2/chattutorial/chapter2-lists/main.qml b/examples/quickcontrols2/chattutorial/chapter2-lists/main.qml index 8308f5c0..66a51d2d 100644 --- a/examples/quickcontrols2/chattutorial/chapter2-lists/main.qml +++ b/examples/quickcontrols2/chattutorial/chapter2-lists/main.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 540 diff --git a/examples/quickcontrols2/chattutorial/chapter3-navigation/ContactPage.qml b/examples/quickcontrols2/chattutorial/chapter3-navigation/ContactPage.qml index 826aee42..080d8bdb 100644 --- a/examples/quickcontrols2/chattutorial/chapter3-navigation/ContactPage.qml +++ b/examples/quickcontrols2/chattutorial/chapter3-navigation/ContactPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Page { id: root diff --git a/examples/quickcontrols2/chattutorial/chapter3-navigation/ConversationPage.qml b/examples/quickcontrols2/chattutorial/chapter3-navigation/ConversationPage.qml index 94942191..2ae56444 100644 --- a/examples/quickcontrols2/chattutorial/chapter3-navigation/ConversationPage.qml +++ b/examples/quickcontrols2/chattutorial/chapter3-navigation/ConversationPage.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls Page { id: root diff --git a/examples/quickcontrols2/chattutorial/chapter3-navigation/main.qml b/examples/quickcontrols2/chattutorial/chapter3-navigation/main.qml index 3c0d1a23..029f45e3 100644 --- a/examples/quickcontrols2/chattutorial/chapter3-navigation/main.qml +++ b/examples/quickcontrols2/chattutorial/chapter3-navigation/main.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/examples/quickcontrols2/chattutorial/chapter4-models/ContactPage.qml b/examples/quickcontrols2/chattutorial/chapter4-models/ContactPage.qml index 61819491..c8e88724 100644 --- a/examples/quickcontrols2/chattutorial/chapter4-models/ContactPage.qml +++ b/examples/quickcontrols2/chattutorial/chapter4-models/ContactPage.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls -import io.qt.examples.chattutorial 1.0 +import io.qt.examples.chattutorial Page { id: root diff --git a/examples/quickcontrols2/chattutorial/chapter4-models/ConversationPage.qml b/examples/quickcontrols2/chattutorial/chapter4-models/ConversationPage.qml index d616fa38..35f770f5 100644 --- a/examples/quickcontrols2/chattutorial/chapter4-models/ConversationPage.qml +++ b/examples/quickcontrols2/chattutorial/chapter4-models/ConversationPage.qml @@ -48,11 +48,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls -import io.qt.examples.chattutorial 1.0 +import io.qt.examples.chattutorial Page { id: root diff --git a/examples/quickcontrols2/chattutorial/chapter4-models/main.qml b/examples/quickcontrols2/chattutorial/chapter4-models/main.qml index 3c0d1a23..029f45e3 100644 --- a/examples/quickcontrols2/chattutorial/chapter4-models/main.qml +++ b/examples/quickcontrols2/chattutorial/chapter4-models/main.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/examples/quickcontrols2/chattutorial/chapter5-styling/+material/ChatToolBar.qml b/examples/quickcontrols2/chattutorial/chapter5-styling/+material/ChatToolBar.qml index 1252706b..d4a66764 100644 --- a/examples/quickcontrols2/chattutorial/chapter5-styling/+material/ChatToolBar.qml +++ b/examples/quickcontrols2/chattutorial/chapter5-styling/+material/ChatToolBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick.Controls 2.12 -import QtQuick.Controls.Material 2.12 +import QtQuick.Controls +import QtQuick.Controls.Material ToolBar { Material.theme: Material.Dark diff --git a/examples/quickcontrols2/chattutorial/chapter5-styling/ChatToolBar.qml b/examples/quickcontrols2/chattutorial/chapter5-styling/ChatToolBar.qml index 32e6217c..c192aeb5 100644 --- a/examples/quickcontrols2/chattutorial/chapter5-styling/ChatToolBar.qml +++ b/examples/quickcontrols2/chattutorial/chapter5-styling/ChatToolBar.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick.Controls 2.12 +import QtQuick.Controls ToolBar { } diff --git a/examples/quickcontrols2/chattutorial/chapter5-styling/ContactPage.qml b/examples/quickcontrols2/chattutorial/chapter5-styling/ContactPage.qml index f26712f8..65460bf1 100644 --- a/examples/quickcontrols2/chattutorial/chapter5-styling/ContactPage.qml +++ b/examples/quickcontrols2/chattutorial/chapter5-styling/ContactPage.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls -import io.qt.examples.chattutorial 1.0 +import io.qt.examples.chattutorial Page { id: root diff --git a/examples/quickcontrols2/chattutorial/chapter5-styling/ConversationPage.qml b/examples/quickcontrols2/chattutorial/chapter5-styling/ConversationPage.qml index 31238454..c668072e 100644 --- a/examples/quickcontrols2/chattutorial/chapter5-styling/ConversationPage.qml +++ b/examples/quickcontrols2/chattutorial/chapter5-styling/ConversationPage.qml @@ -48,11 +48,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls -import io.qt.examples.chattutorial 1.0 +import io.qt.examples.chattutorial Page { id: root diff --git a/examples/quickcontrols2/chattutorial/chapter5-styling/main.qml b/examples/quickcontrols2/chattutorial/chapter5-styling/main.qml index 3c0d1a23..029f45e3 100644 --- a/examples/quickcontrols2/chattutorial/chapter5-styling/main.qml +++ b/examples/quickcontrols2/chattutorial/chapter5-styling/main.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/examples/quickcontrols2/contactlist/ContactDelegate.ui.qml b/examples/quickcontrols2/contactlist/ContactDelegate.ui.qml index 36803599..dde9a4f4 100644 --- a/examples/quickcontrols2/contactlist/ContactDelegate.ui.qml +++ b/examples/quickcontrols2/contactlist/ContactDelegate.ui.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls ItemDelegate { id: delegate diff --git a/examples/quickcontrols2/contactlist/ContactDialog.qml b/examples/quickcontrols2/contactlist/ContactDialog.qml index 7569f356..679a2673 100644 --- a/examples/quickcontrols2/contactlist/ContactDialog.qml +++ b/examples/quickcontrols2/contactlist/ContactDialog.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Dialog { id: dialog diff --git a/examples/quickcontrols2/contactlist/ContactForm.ui.qml b/examples/quickcontrols2/contactlist/ContactForm.ui.qml index 5988735a..406a300a 100644 --- a/examples/quickcontrols2/contactlist/ContactForm.ui.qml +++ b/examples/quickcontrols2/contactlist/ContactForm.ui.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls GridLayout { id: grid diff --git a/examples/quickcontrols2/contactlist/ContactView.ui.qml b/examples/quickcontrols2/contactlist/ContactView.ui.qml index 984fc787..88ac01cf 100644 --- a/examples/quickcontrols2/contactlist/ContactView.ui.qml +++ b/examples/quickcontrols2/contactlist/ContactView.ui.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import Backend 1.0 +import QtQuick +import QtQuick.Controls +import Backend ListView { id: listView diff --git a/examples/quickcontrols2/contactlist/SectionDelegate.ui.qml b/examples/quickcontrols2/contactlist/SectionDelegate.ui.qml index e7d7c2aa..49ae528b 100644 --- a/examples/quickcontrols2/contactlist/SectionDelegate.ui.qml +++ b/examples/quickcontrols2/contactlist/SectionDelegate.ui.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ToolBar { id: background diff --git a/examples/quickcontrols2/contactlist/contactlist.qml b/examples/quickcontrols2/contactlist/contactlist.qml index f79c609b..e904c9fa 100644 --- a/examples/quickcontrols2/contactlist/contactlist.qml +++ b/examples/quickcontrols2/contactlist/contactlist.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/examples/quickcontrols2/contactlist/designer/Backend/ContactModel.qml b/examples/quickcontrols2/contactlist/designer/Backend/ContactModel.qml index 12c1d416..2bdeae2e 100644 --- a/examples/quickcontrols2/contactlist/designer/Backend/ContactModel.qml +++ b/examples/quickcontrols2/contactlist/designer/Backend/ContactModel.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick ListModel { ListElement { diff --git a/examples/quickcontrols2/flatstyle/Flat/Button.qml b/examples/quickcontrols2/flatstyle/Flat/Button.qml index 0420ddb4..f072038a 100644 --- a/examples/quickcontrols2/flatstyle/Flat/Button.qml +++ b/examples/quickcontrols2/flatstyle/Flat/Button.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import Theme 1.0 +import QtQuick +import QtQuick.Templates as T +import Theme T.Button { id: control diff --git a/examples/quickcontrols2/flatstyle/Flat/CheckBox.qml b/examples/quickcontrols2/flatstyle/Flat/CheckBox.qml index ae819afa..01416033 100644 --- a/examples/quickcontrols2/flatstyle/Flat/CheckBox.qml +++ b/examples/quickcontrols2/flatstyle/Flat/CheckBox.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import Theme 1.0 +import QtQuick +import QtQuick.Templates as T +import Theme T.CheckBox { id: control diff --git a/examples/quickcontrols2/flatstyle/Flat/Switch.qml b/examples/quickcontrols2/flatstyle/Flat/Switch.qml index 3eea062f..1f3bd325 100644 --- a/examples/quickcontrols2/flatstyle/Flat/Switch.qml +++ b/examples/quickcontrols2/flatstyle/Flat/Switch.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import Theme 1.0 +import QtQuick +import QtQuick.Templates as T +import Theme T.Switch { id: control diff --git a/examples/quickcontrols2/flatstyle/MainForm.ui.qml b/examples/quickcontrols2/flatstyle/MainForm.ui.qml index e25158a3..fcb17adc 100644 --- a/examples/quickcontrols2/flatstyle/MainForm.ui.qml +++ b/examples/quickcontrols2/flatstyle/MainForm.ui.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Layouts 1.12 -import Theme 1.0 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts +import Theme Item { id: form diff --git a/examples/quickcontrols2/flatstyle/flatstyle.qml b/examples/quickcontrols2/flatstyle/flatstyle.qml index 44a29cda..273cd3db 100644 --- a/examples/quickcontrols2/flatstyle/flatstyle.qml +++ b/examples/quickcontrols2/flatstyle/flatstyle.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import Qt.labs.platform 1.0 -import Theme 1.0 +import QtQuick +import QtQuick.Controls +import Qt.labs.platform +import Theme ApplicationWindow { id: window diff --git a/examples/quickcontrols2/flatstyle/imports/Theme/Theme.qml b/examples/quickcontrols2/flatstyle/imports/Theme/Theme.qml index 9018ece5..4529fd54 100644 --- a/examples/quickcontrols2/flatstyle/imports/Theme/Theme.qml +++ b/examples/quickcontrols2/flatstyle/imports/Theme/Theme.qml @@ -50,7 +50,7 @@ pragma Singleton -import QtQuick 2.12 +import QtQuick QtObject { readonly property color gray: "#b2b1b1" diff --git a/examples/quickcontrols2/gallery/.prev_CMakeLists.txt b/examples/quickcontrols2/gallery/.prev_CMakeLists.txt new file mode 100644 index 00000000..a175afa9 --- /dev/null +++ b/examples/quickcontrols2/gallery/.prev_CMakeLists.txt @@ -0,0 +1,103 @@ +# Generated from gallery.pro. + +cmake_minimum_required(VERSION 3.14) +project(gallery LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/quickcontrols2/gallery") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS Quick) +find_package(Qt6 COMPONENTS QuickControls2) + +add_qt_gui_executable(gallery + gallery.cpp +) +target_link_libraries(gallery PUBLIC + Qt::Core + Qt::Gui + Qt::Quick + Qt::QuickControls2 +) + + +# Resources: +set(qmake_immediate_resource_files + "gallery.qml" + "icons/gallery/20x20/back.png" + "icons/gallery/20x20/drawer.png" + "icons/gallery/20x20/menu.png" + "icons/gallery/20x20@2/back.png" + "icons/gallery/20x20@2/drawer.png" + "icons/gallery/20x20@2/menu.png" + "icons/gallery/20x20@3/back.png" + "icons/gallery/20x20@3/drawer.png" + "icons/gallery/20x20@3/menu.png" + "icons/gallery/20x20@4/back.png" + "icons/gallery/20x20@4/drawer.png" + "icons/gallery/20x20@4/menu.png" + "icons/gallery/index.theme" + "images/arrow.png" + "images/arrow@2x.png" + "images/arrow@3x.png" + "images/arrow@4x.png" + "images/arrows.png" + "images/arrows@2x.png" + "images/arrows@3x.png" + "images/arrows@4x.png" + "images/qt-logo.png" + "images/qt-logo@2x.png" + "images/qt-logo@3x.png" + "images/qt-logo@4x.png" + "pages/BusyIndicatorPage.qml" + "pages/ButtonPage.qml" + "pages/CheckBoxPage.qml" + "pages/ComboBoxPage.qml" + "pages/DelayButtonPage.qml" + "pages/DelegatePage.qml" + "pages/DialPage.qml" + "pages/DialogPage.qml" + "pages/FramePage.qml" + "pages/GroupBoxPage.qml" + "pages/PageIndicatorPage.qml" + "pages/ProgressBarPage.qml" + "pages/RadioButtonPage.qml" + "pages/RangeSliderPage.qml" + "pages/ScrollBarPage.qml" + "pages/ScrollIndicatorPage.qml" + "pages/ScrollablePage.qml" + "pages/SliderPage.qml" + "pages/SpinBoxPage.qml" + "pages/StackViewPage.qml" + "pages/SwipeViewPage.qml" + "pages/SwitchPage.qml" + "pages/TabBarPage.qml" + "pages/TextAreaPage.qml" + "pages/TextFieldPage.qml" + "pages/ToolTipPage.qml" + "pages/TumblerPage.qml" + "qtquickcontrols2.conf" +) + +qt6_add_resources(gallery "qmake_immediate" + PREFIX + "/" + FILES + ${qmake_immediate_resource_files} +) + +install(TARGETS gallery + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/quickcontrols2/gallery/CMakeLists.txt b/examples/quickcontrols2/gallery/CMakeLists.txt index a175afa9..d4c9df04 100644 --- a/examples/quickcontrols2/gallery/CMakeLists.txt +++ b/examples/quickcontrols2/gallery/CMakeLists.txt @@ -1,7 +1,7 @@ # Generated from gallery.pro. cmake_minimum_required(VERSION 3.14) -project(gallery LANGUAGES CXX) +project(gallery_controls2 LANGUAGES CXX) # special case set(CMAKE_INCLUDE_CURRENT_DIR ON) @@ -20,10 +20,10 @@ find_package(Qt6 COMPONENTS Gui) find_package(Qt6 COMPONENTS Quick) find_package(Qt6 COMPONENTS QuickControls2) -add_qt_gui_executable(gallery +add_qt_gui_executable(gallery_controls2 # special case gallery.cpp ) -target_link_libraries(gallery PUBLIC +target_link_libraries(gallery_controls2 PUBLIC # special case Qt::Core Qt::Gui Qt::Quick @@ -89,14 +89,14 @@ set(qmake_immediate_resource_files "qtquickcontrols2.conf" ) -qt6_add_resources(gallery "qmake_immediate" +qt6_add_resources(gallery_controls2 "qmake_immediate" # special case PREFIX "/" FILES ${qmake_immediate_resource_files} ) -install(TARGETS gallery +install(TARGETS gallery_controls2 # special case RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" diff --git a/examples/quickcontrols2/gallery/gallery.cpp b/examples/quickcontrols2/gallery/gallery.cpp index b4d59685..bbcd2d14 100644 --- a/examples/quickcontrols2/gallery/gallery.cpp +++ b/examples/quickcontrols2/gallery/gallery.cpp @@ -73,7 +73,11 @@ int main(int argc, char *argv[]) QQuickStyle::setStyle(settings.value("style").toString()); QQmlApplicationEngine engine; - engine.rootContext()->setContextProperty("availableStyles", QQuickStyle::availableStyles()); + + const QStringList builtInStyles = { QLatin1String("Default"), QLatin1String("Fusion"), + QLatin1String("Imagine"), QLatin1String("Material"), QLatin1String("Universal") }; + engine.rootContext()->setContextProperty("builtInStyles", builtInStyles); + engine.load(QUrl("qrc:/gallery.qml")); if (engine.rootObjects().isEmpty()) return -1; diff --git a/examples/quickcontrols2/gallery/gallery.qml b/examples/quickcontrols2/gallery/gallery.qml index 504a36c7..872bdb44 100644 --- a/examples/quickcontrols2/gallery/gallery.qml +++ b/examples/quickcontrols2/gallery/gallery.qml @@ -48,12 +48,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Universal 2.12 -import Qt.labs.settings 1.0 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls +import QtQuick.Controls.Material +import QtQuick.Controls.Universal +import Qt.labs.settings ApplicationWindow { id: window @@ -287,7 +287,7 @@ ApplicationWindow { ComboBox { id: styleBox property int styleIndex: -1 - model: availableStyles + model: builtInStyles Component.onCompleted: { styleIndex = find(settings.style, Qt.MatchFixedString) if (styleIndex !== -1) diff --git a/examples/quickcontrols2/gallery/pages/BusyIndicatorPage.qml b/examples/quickcontrols2/gallery/pages/BusyIndicatorPage.qml index b0aa6284..867f5d28 100644 --- a/examples/quickcontrols2/gallery/pages/BusyIndicatorPage.qml +++ b/examples/quickcontrols2/gallery/pages/BusyIndicatorPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollablePage { id: page diff --git a/examples/quickcontrols2/gallery/pages/ButtonPage.qml b/examples/quickcontrols2/gallery/pages/ButtonPage.qml index c77b41e4..38404570 100644 --- a/examples/quickcontrols2/gallery/pages/ButtonPage.qml +++ b/examples/quickcontrols2/gallery/pages/ButtonPage.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls ScrollablePage { id: page diff --git a/examples/quickcontrols2/gallery/pages/CheckBoxPage.qml b/examples/quickcontrols2/gallery/pages/CheckBoxPage.qml index 7795f814..39ea53ca 100644 --- a/examples/quickcontrols2/gallery/pages/CheckBoxPage.qml +++ b/examples/quickcontrols2/gallery/pages/CheckBoxPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollablePage { id: page diff --git a/examples/quickcontrols2/gallery/pages/ComboBoxPage.qml b/examples/quickcontrols2/gallery/pages/ComboBoxPage.qml index ec75607c..04bb634a 100644 --- a/examples/quickcontrols2/gallery/pages/ComboBoxPage.qml +++ b/examples/quickcontrols2/gallery/pages/ComboBoxPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollablePage { id: page diff --git a/examples/quickcontrols2/gallery/pages/DelayButtonPage.qml b/examples/quickcontrols2/gallery/pages/DelayButtonPage.qml index 91110567..b0cc30c2 100644 --- a/examples/quickcontrols2/gallery/pages/DelayButtonPage.qml +++ b/examples/quickcontrols2/gallery/pages/DelayButtonPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollablePage { id: page diff --git a/examples/quickcontrols2/gallery/pages/DelegatePage.qml b/examples/quickcontrols2/gallery/pages/DelegatePage.qml index 20ceaa6b..d2064d98 100644 --- a/examples/quickcontrols2/gallery/pages/DelegatePage.qml +++ b/examples/quickcontrols2/gallery/pages/DelegatePage.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls Pane { padding: 0 diff --git a/examples/quickcontrols2/gallery/pages/DialPage.qml b/examples/quickcontrols2/gallery/pages/DialPage.qml index 3bb3bb28..55519fb3 100644 --- a/examples/quickcontrols2/gallery/pages/DialPage.qml +++ b/examples/quickcontrols2/gallery/pages/DialPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollablePage { id: page diff --git a/examples/quickcontrols2/gallery/pages/DialogPage.qml b/examples/quickcontrols2/gallery/pages/DialogPage.qml index 9d23e260..e5162b36 100644 --- a/examples/quickcontrols2/gallery/pages/DialogPage.qml +++ b/examples/quickcontrols2/gallery/pages/DialogPage.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls ScrollablePage { id: page diff --git a/examples/quickcontrols2/gallery/pages/FramePage.qml b/examples/quickcontrols2/gallery/pages/FramePage.qml index 4834d04d..7fda3d66 100644 --- a/examples/quickcontrols2/gallery/pages/FramePage.qml +++ b/examples/quickcontrols2/gallery/pages/FramePage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollablePage { id: page diff --git a/examples/quickcontrols2/gallery/pages/GroupBoxPage.qml b/examples/quickcontrols2/gallery/pages/GroupBoxPage.qml index 16f8762a..2a01297b 100644 --- a/examples/quickcontrols2/gallery/pages/GroupBoxPage.qml +++ b/examples/quickcontrols2/gallery/pages/GroupBoxPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollablePage { id: page diff --git a/examples/quickcontrols2/gallery/pages/PageIndicatorPage.qml b/examples/quickcontrols2/gallery/pages/PageIndicatorPage.qml index 4f13ce33..612a942c 100644 --- a/examples/quickcontrols2/gallery/pages/PageIndicatorPage.qml +++ b/examples/quickcontrols2/gallery/pages/PageIndicatorPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollablePage { id: page diff --git a/examples/quickcontrols2/gallery/pages/ProgressBarPage.qml b/examples/quickcontrols2/gallery/pages/ProgressBarPage.qml index 1f3c81b9..252e8eff 100644 --- a/examples/quickcontrols2/gallery/pages/ProgressBarPage.qml +++ b/examples/quickcontrols2/gallery/pages/ProgressBarPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollablePage { id: page diff --git a/examples/quickcontrols2/gallery/pages/RadioButtonPage.qml b/examples/quickcontrols2/gallery/pages/RadioButtonPage.qml index b573731e..41d4d34e 100644 --- a/examples/quickcontrols2/gallery/pages/RadioButtonPage.qml +++ b/examples/quickcontrols2/gallery/pages/RadioButtonPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollablePage { id: page diff --git a/examples/quickcontrols2/gallery/pages/RangeSliderPage.qml b/examples/quickcontrols2/gallery/pages/RangeSliderPage.qml index b6c35766..65f852ff 100644 --- a/examples/quickcontrols2/gallery/pages/RangeSliderPage.qml +++ b/examples/quickcontrols2/gallery/pages/RangeSliderPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollablePage { id: page diff --git a/examples/quickcontrols2/gallery/pages/ScrollBarPage.qml b/examples/quickcontrols2/gallery/pages/ScrollBarPage.qml index d9e77fa4..90c43965 100644 --- a/examples/quickcontrols2/gallery/pages/ScrollBarPage.qml +++ b/examples/quickcontrols2/gallery/pages/ScrollBarPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Flickable { id: flickable diff --git a/examples/quickcontrols2/gallery/pages/ScrollIndicatorPage.qml b/examples/quickcontrols2/gallery/pages/ScrollIndicatorPage.qml index 2adcbc6b..301146ea 100644 --- a/examples/quickcontrols2/gallery/pages/ScrollIndicatorPage.qml +++ b/examples/quickcontrols2/gallery/pages/ScrollIndicatorPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Flickable { id: flickable diff --git a/examples/quickcontrols2/gallery/pages/ScrollablePage.qml b/examples/quickcontrols2/gallery/pages/ScrollablePage.qml index afb5ef5c..483159e7 100644 --- a/examples/quickcontrols2/gallery/pages/ScrollablePage.qml +++ b/examples/quickcontrols2/gallery/pages/ScrollablePage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Page { id: page diff --git a/examples/quickcontrols2/gallery/pages/SliderPage.qml b/examples/quickcontrols2/gallery/pages/SliderPage.qml index 93a1ebb1..5dcac2d8 100644 --- a/examples/quickcontrols2/gallery/pages/SliderPage.qml +++ b/examples/quickcontrols2/gallery/pages/SliderPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollablePage { id: page diff --git a/examples/quickcontrols2/gallery/pages/SpinBoxPage.qml b/examples/quickcontrols2/gallery/pages/SpinBoxPage.qml index 9e458331..6fddbd27 100644 --- a/examples/quickcontrols2/gallery/pages/SpinBoxPage.qml +++ b/examples/quickcontrols2/gallery/pages/SpinBoxPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollablePage { id: page diff --git a/examples/quickcontrols2/gallery/pages/StackViewPage.qml b/examples/quickcontrols2/gallery/pages/StackViewPage.qml index 43ee5684..fc2a4bdf 100644 --- a/examples/quickcontrols2/gallery/pages/StackViewPage.qml +++ b/examples/quickcontrols2/gallery/pages/StackViewPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls StackView { id: stackView diff --git a/examples/quickcontrols2/gallery/pages/SwipeViewPage.qml b/examples/quickcontrols2/gallery/pages/SwipeViewPage.qml index 3c3bc56c..9cff5db8 100644 --- a/examples/quickcontrols2/gallery/pages/SwipeViewPage.qml +++ b/examples/quickcontrols2/gallery/pages/SwipeViewPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Pane { id: pane diff --git a/examples/quickcontrols2/gallery/pages/SwitchPage.qml b/examples/quickcontrols2/gallery/pages/SwitchPage.qml index 53ee1660..2f4089a0 100644 --- a/examples/quickcontrols2/gallery/pages/SwitchPage.qml +++ b/examples/quickcontrols2/gallery/pages/SwitchPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollablePage { id: page diff --git a/examples/quickcontrols2/gallery/pages/TabBarPage.qml b/examples/quickcontrols2/gallery/pages/TabBarPage.qml index 7c3cae44..b14df6d1 100644 --- a/examples/quickcontrols2/gallery/pages/TabBarPage.qml +++ b/examples/quickcontrols2/gallery/pages/TabBarPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Page { id: page diff --git a/examples/quickcontrols2/gallery/pages/TextAreaPage.qml b/examples/quickcontrols2/gallery/pages/TextAreaPage.qml index 7ed2b58b..91ecb16e 100644 --- a/examples/quickcontrols2/gallery/pages/TextAreaPage.qml +++ b/examples/quickcontrols2/gallery/pages/TextAreaPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollablePage { id: page diff --git a/examples/quickcontrols2/gallery/pages/TextFieldPage.qml b/examples/quickcontrols2/gallery/pages/TextFieldPage.qml index 37a5d605..7ecdddc2 100644 --- a/examples/quickcontrols2/gallery/pages/TextFieldPage.qml +++ b/examples/quickcontrols2/gallery/pages/TextFieldPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollablePage { id: page diff --git a/examples/quickcontrols2/gallery/pages/ToolTipPage.qml b/examples/quickcontrols2/gallery/pages/ToolTipPage.qml index 295ea2c4..eaae72b1 100644 --- a/examples/quickcontrols2/gallery/pages/ToolTipPage.qml +++ b/examples/quickcontrols2/gallery/pages/ToolTipPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollablePage { id: page diff --git a/examples/quickcontrols2/gallery/pages/TumblerPage.qml b/examples/quickcontrols2/gallery/pages/TumblerPage.qml index af4caee3..8a22a025 100644 --- a/examples/quickcontrols2/gallery/pages/TumblerPage.qml +++ b/examples/quickcontrols2/gallery/pages/TumblerPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollablePage { id: page diff --git a/examples/quickcontrols2/imagine/automotive/qml/CustomGlow.qml b/examples/quickcontrols2/imagine/automotive/qml/CustomGlow.qml index 483059ae..e8481930 100644 --- a/examples/quickcontrols2/imagine/automotive/qml/CustomGlow.qml +++ b/examples/quickcontrols2/imagine/automotive/qml/CustomGlow.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtGraphicalEffects 1.12 +import QtGraphicalEffects Glow { color: glowColor diff --git a/examples/quickcontrols2/imagine/automotive/qml/FeatureButton.qml b/examples/quickcontrols2/imagine/automotive/qml/FeatureButton.qml index d86b39c7..54ebeb48 100644 --- a/examples/quickcontrols2/imagine/automotive/qml/FeatureButton.qml +++ b/examples/quickcontrols2/imagine/automotive/qml/FeatureButton.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls Button { id: button diff --git a/examples/quickcontrols2/imagine/automotive/qml/GlowingLabel.qml b/examples/quickcontrols2/imagine/automotive/qml/GlowingLabel.qml index 088e9c16..39c5d6fe 100644 --- a/examples/quickcontrols2/imagine/automotive/qml/GlowingLabel.qml +++ b/examples/quickcontrols2/imagine/automotive/qml/GlowingLabel.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls // This container and the transform on the Label are // necessary to get precise bounding rect of the text for layouting reasons, diff --git a/examples/quickcontrols2/imagine/automotive/qml/automotive.qml b/examples/quickcontrols2/imagine/automotive/qml/automotive.qml index 2c001db2..88a7ba5f 100644 --- a/examples/quickcontrols2/imagine/automotive/qml/automotive.qml +++ b/examples/quickcontrols2/imagine/automotive/qml/automotive.qml @@ -48,11 +48,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Window 2.0 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls +import QtQuick.Controls.Imagine +import QtQuick.Window ApplicationWindow { id: window diff --git a/examples/quickcontrols2/imagine/musicplayer/musicplayer.qml b/examples/quickcontrols2/imagine/musicplayer/musicplayer.qml index 28ed5861..61b295cd 100644 --- a/examples/quickcontrols2/imagine/musicplayer/musicplayer.qml +++ b/examples/quickcontrols2/imagine/musicplayer/musicplayer.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 -import QtQuick.Window 2.0 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls +import QtQuick.Window ApplicationWindow { id: window diff --git a/examples/quickcontrols2/sidepanel/sidepanel.qml b/examples/quickcontrols2/sidepanel/sidepanel.qml index a0c69fb2..70af901d 100644 --- a/examples/quickcontrols2/sidepanel/sidepanel.qml +++ b/examples/quickcontrols2/sidepanel/sidepanel.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Material ApplicationWindow { id: window @@ -68,7 +68,7 @@ ApplicationWindow { z: 1 width: parent.width - parent: window.overlay + parent: Overlay.overlay Label { id: label diff --git a/examples/quickcontrols2/swipetoremove/swipetoremove.qml b/examples/quickcontrols2/swipetoremove/swipetoremove.qml index 65127a1a..41c578c6 100644 --- a/examples/quickcontrols2/swipetoremove/swipetoremove.qml +++ b/examples/quickcontrols2/swipetoremove/swipetoremove.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Material ApplicationWindow { id: window diff --git a/examples/quickcontrols2/texteditor/creatorKateHighlighter.png b/examples/quickcontrols2/texteditor/creatorKateHighlighter.png Binary files differnew file mode 100644 index 00000000..7dd81950 --- /dev/null +++ b/examples/quickcontrols2/texteditor/creatorKateHighlighter.png diff --git a/examples/quickcontrols2/texteditor/documenthandler.cpp b/examples/quickcontrols2/texteditor/documenthandler.cpp index e840d411..72608910 100644 --- a/examples/quickcontrols2/texteditor/documenthandler.cpp +++ b/examples/quickcontrols2/texteditor/documenthandler.cpp @@ -53,11 +53,12 @@ #include <QFile> #include <QFileInfo> #include <QFileSelector> +#include <QMimeDatabase> #include <QQmlFile> #include <QQmlFileSelector> #include <QQuickTextDocument> #include <QTextCharFormat> -#include <QTextCodec> +#include <QStringDecoder> #include <QTextDocument> #include <QDebug> @@ -293,14 +294,27 @@ void DocumentHandler::load(const QUrl &fileUrl) const QUrl path = QQmlFileSelector::get(engine)->selector()->select(fileUrl); const QString fileName = QQmlFile::urlToLocalFileOrQrc(path); if (QFile::exists(fileName)) { + QMimeType mime = QMimeDatabase().mimeTypeForFile(fileName); QFile file(fileName); if (file.open(QFile::ReadOnly)) { QByteArray data = file.readAll(); - QTextCodec *codec = QTextCodec::codecForHtml(data); - if (QTextDocument *doc = textDocument()) + if (QTextDocument *doc = textDocument()) { + doc->setBaseUrl(path.adjusted(QUrl::RemoveFilename)); doc->setModified(false); + if (mime.inherits("text/markdown")) { + emit loaded(QString::fromUtf8(data), Qt::MarkdownText); + } else { + auto encoding = QStringConverter::encodingForHtml(data.constData(), data.size()); + if (encoding) { + QStringDecoder decoder(*encoding); + emit loaded(decoder(data), Qt::AutoText); + } else { + // fall back to utf8 + emit loaded(QString::fromUtf8(data), Qt::AutoText); + } + } + } - emit loaded(codec->toUnicode(data)); reset(); } } diff --git a/examples/quickcontrols2/texteditor/documenthandler.h b/examples/quickcontrols2/texteditor/documenthandler.h index 1a34f0e0..3863eb49 100644 --- a/examples/quickcontrols2/texteditor/documenthandler.h +++ b/examples/quickcontrols2/texteditor/documenthandler.h @@ -152,7 +152,7 @@ Q_SIGNALS: void textChanged(); void fileUrlChanged(); - void loaded(const QString &text); + void loaded(const QString &text, int format); void error(const QString &message); void modifiedChanged(); diff --git a/examples/quickcontrols2/texteditor/einstein.png b/examples/quickcontrols2/texteditor/einstein.png Binary files differnew file mode 100644 index 00000000..3611284d --- /dev/null +++ b/examples/quickcontrols2/texteditor/einstein.png diff --git a/examples/quickcontrols2/texteditor/example.md b/examples/quickcontrols2/texteditor/example.md new file mode 100644 index 00000000..169ff433 --- /dev/null +++ b/examples/quickcontrols2/texteditor/example.md @@ -0,0 +1,173 @@ +# Markdown in Qt Quick + +The Text, TextEdit and TextArea items support rich text formatted in HTML. +Since Qt 5.14, they now support two dialects of Markdown as well: +[The CommonMark Specification](https://spec.commonmark.org/0.29/) is the +conservative formal specification, while +[GitHub Flavored Markdown](https://guides.github.com/features/mastering-markdown/#GitHub-flavored-markdown) +adds extra features such as task lists and tables. + +If you are viewing this document in the Qt Quick Controls Text Editor example, +you can edit this document to explore Qt's rich text editing features. +We have included some comments in each of the following sections to +encourage you to experiment. + +## Font and Paragraph Styles + +Markdown supports **bold**, *italic*, ~~strikethrough~~ and `monospace` font +styles. + +> A block quote is indented according to the convention for email quoting. + + A block of code; + can be indented; + with 4 spaces or a tab; + +or + +``` +Block { + id: code + CanBe { + wrappedBy: "triple backticks" + } +} +``` + +Block quotes can be nested, and block quotes can include indented code blocks. + +In [The CommonMark Specification](https://spec.commonmark.org/0.29/) +John MacFarlane writes: + +> What distinguishes Markdown from many other lightweight markup syntaxes, +> which are often easier to write, is its readability. As Gruber writes: + +> > The overriding design goal for Markdown's formatting syntax is to make it +> > as readable as possible. The idea is that a Markdown-formatted document should +> > be publishable as-is, as plain text, without looking like it's been marked up +> > with tags or formatting instructions. ( +> > [http://daringfireball.net/projects/markdown/](http://daringfireball.net/projects/markdown/)) + +> The point can be illustrated by comparing a sample of AsciiDoc with an +> equivalent sample of Markdown. Here is a sample of AsciiDoc from the AsciiDoc +> manual: + +> 1. List item one. +> + +> List item one continued with a second paragraph followed by an +> Indented block. +> + +> ................. +> $ ls *.sh +> $ mv *.sh ~/tmp +> ................. +> + +> List item continued with a third paragraph. +> +> 2. List item two continued with an open block. +> ... +> + +## Hyperlinks + +Hyperlinks can be written with the link text first, and the URL immediately +following: [Qt Assistant](http://doc.qt.io/qt-5/qtassistant-index.html) + +A plain url is automatically recognized: https://doc.qt.io/qt-5/qml-qtquick-text.html + +There are also "reference links" where the link text is first labeled +and then the URL for the label is given elsewhere: +[The Qt Creator Manual][creatormanual] + +## Images + +Inline images like this one ![red square](red.png) flow with the surrounding text. + +The code for including an image is just a link that starts with a bang. +An image in its own paragraph is given its own space: + +![Albert Einstein image](einstein.png) + +## Lists + +Different kinds of lists can be included. Standard bullet lists can be nested, +using different symbols for each level of the list. List items can have nested +items such as block quotes, code blocks and images. Check boxes can be included +to form a task list. + +- Disc symbols are typically used for top-level list items. + * Circle symbols can be used to distinguish between items in lower-level + lists. + + Square symbols provide a reasonable alternative to discs and circles. + * Lists can be continued... + * further down +- List items can include images: ![red square](red.png) +- and even nested quotes, like this: + + The [Qt Documentation](https://doc.qt.io/qt-5/qml-qtquick-textedit.html#details) + points out that + > The TextEdit item displays a block of editable, formatted text. + > + > It can display both plain and rich text. For example: + > + > TextEdit { + > width: 240 + > text: "<b>Hello</b> <i>World!</i>" + > font.family: "Helvetica" + > font.pointSize: 20 + > color: "blue" + > focus: true + > } +- List items with check boxes allow task lists to be incorporated: + * [ ] This task is not yet done + * [x] We aced this one! + +Ordered lists can be used for tables of contents, for example. Each number +should end with a period or a parenthesis: + +1. Markdown in Qt Quick + 1) Font and Paragraph Styles + 5) Hyperlinks + 3) Images ![red square](red.png) + 2) Lists + 4) Tables +2. Related work + +The list will automatically be renumbered during rendering. + +## Tables + +One of the GitHub extensions is support for tables: + +| |Development Tools |Programming Techniques |Graphical User Interfaces| +|-------------|------------------------------------|---------------------------|-------------------------| +|9:00 - 11:00 |Introduction to Qt ||| +|11:00 - 13:00|Using Qt Creator |QML and its runtime |Layouts in Qt | +|13:00 - 15:00|Qt Quick Designer Tutorial |Extreme Programming |Writing Custom Styles | +|15:00 - 17:00|Qt Linguist and Internationalization| | | + +# Related Work + +Some Qt Widgets also support Markdown. +[QTextEdit](https://doc.qt.io/qt-5/qtextedit.html) has similar WYSIWYG +editing features as TextEdit and TextArea: you can edit the rendered text +directly. You can use +[QTextDocument::toMarkdown](https://doc-snapshots.qt.io/qt5-dev/qtextdocument.html#toMarkdown) +to rewrite the Markdown format, and save it back to a file. + +If you have the [KDE Kate Editor](https://kate-editor.org/) installed on your +system, you probably also have the `markdown.xml` syntax highlighting +definition file; that can be reused to add Markdown syntax highlighting to +Qt Creator. + +![creator markdown highlighting from Kate](creatorKateHighlighter.png) + +Qt owes thanks to the authors of the [MD4C parser](https://github.com/mity/md4c) +for making markdown import possible. The QTextMarkdownWriter class does not +have such dependencies, and also has not yet been tested as extensively, so we +do not yet guarantee that we are able to rewrite every Markdown document that +you are able to read and display with Text or TextEdit. But you are free to +write [bugs](https://bugreports.qt.io) about any troublesome cases that you +encounter. + +[creatormanual]: https://doc.qt.io/qtcreator/ "Qt Creator Manual" diff --git a/examples/quickcontrols2/texteditor/qml/+touch/texteditor.qml b/examples/quickcontrols2/texteditor/qml/+touch/texteditor.qml index e56eddcd..61d7de8a 100644 --- a/examples/quickcontrols2/texteditor/qml/+touch/texteditor.qml +++ b/examples/quickcontrols2/texteditor/qml/+touch/texteditor.qml @@ -48,13 +48,13 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Window 2.0 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Material +import QtQuick.Layouts +import QtQuick.Window -import io.qt.examples.texteditor 1.0 +import io.qt.examples.texteditor // TODO: // - make designer-friendly diff --git a/examples/quickcontrols2/texteditor/qml/texteditor.qml b/examples/quickcontrols2/texteditor/qml/texteditor.qml index 6c95335b..0c0f75e1 100644 --- a/examples/quickcontrols2/texteditor/qml/texteditor.qml +++ b/examples/quickcontrols2/texteditor/qml/texteditor.qml @@ -48,12 +48,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Window 2.0 -import Qt.labs.platform 1.0 +import QtQuick +import QtQuick.Controls +import QtQuick.Window +import Qt.labs.platform -import io.qt.examples.texteditor 1.0 +import io.qt.examples.texteditor // TODO: // - make designer-friendly @@ -173,7 +173,7 @@ ApplicationWindow { id: openDialog fileMode: FileDialog.OpenFile selectedNameFilter.index: 1 - nameFilters: ["Text files (*.txt)", "HTML files (*.html *.htm)"] + nameFilters: ["Text files (*.txt)", "HTML files (*.html *.htm)", "Markdown files (*.md *.markdown)"] folder: StandardPaths.writableLocation(StandardPaths.DocumentsLocation) onAccepted: document.load(file) } @@ -383,8 +383,14 @@ ApplicationWindow { selectionStart: textArea.selectionStart selectionEnd: textArea.selectionEnd textColor: colorDialog.color - Component.onCompleted: document.load("qrc:/texteditor.html") + Component.onCompleted: { + if (Qt.application.arguments.length === 2) + document.load("file:" + Qt.application.arguments[1]); + else + document.load("qrc:/texteditor.html") + } onLoaded: { + textArea.textFormat = format textArea.text = text } onError: { diff --git a/examples/quickcontrols2/texteditor/red.png b/examples/quickcontrols2/texteditor/red.png Binary files differnew file mode 100644 index 00000000..9038fef7 --- /dev/null +++ b/examples/quickcontrols2/texteditor/red.png diff --git a/examples/quickcontrols2/wearable/qml/Alarms/AlarmsPage.qml b/examples/quickcontrols2/wearable/qml/Alarms/AlarmsPage.qml index 6874008f..eda81e1f 100644 --- a/examples/quickcontrols2/wearable/qml/Alarms/AlarmsPage.qml +++ b/examples/quickcontrols2/wearable/qml/Alarms/AlarmsPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.3 as QQC2 +import QtQuick +import QtQuick.Controls as QQC2 import ".." import "../Style" diff --git a/examples/quickcontrols2/wearable/qml/DemoMode.qml b/examples/quickcontrols2/wearable/qml/DemoMode.qml index 9d0f4d6b..17b1ea3c 100644 --- a/examples/quickcontrols2/wearable/qml/DemoMode.qml +++ b/examples/quickcontrols2/wearable/qml/DemoMode.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls import "Style" diff --git a/examples/quickcontrols2/wearable/qml/DemoModeIndicator.qml b/examples/quickcontrols2/wearable/qml/DemoModeIndicator.qml index 88678b36..a264a79b 100644 --- a/examples/quickcontrols2/wearable/qml/DemoModeIndicator.qml +++ b/examples/quickcontrols2/wearable/qml/DemoModeIndicator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.3 as QQC2 +import QtQuick +import QtQuick.Controls as QQC2 import "Style" Item { diff --git a/examples/quickcontrols2/wearable/qml/Fitness/FitnessPage.qml b/examples/quickcontrols2/wearable/qml/Fitness/FitnessPage.qml index 0e361066..81bad761 100644 --- a/examples/quickcontrols2/wearable/qml/Fitness/FitnessPage.qml +++ b/examples/quickcontrols2/wearable/qml/Fitness/FitnessPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.3 as QQC2 +import QtQuick +import QtQuick.Controls as QQC2 import ".." import "../Style" import "fitness.js" as FitnessData diff --git a/examples/quickcontrols2/wearable/qml/LauncherPage.qml b/examples/quickcontrols2/wearable/qml/LauncherPage.qml index 96a2d975..e0de97c3 100644 --- a/examples/quickcontrols2/wearable/qml/LauncherPage.qml +++ b/examples/quickcontrols2/wearable/qml/LauncherPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.3 as QQC2 +import QtQuick +import QtQuick.Controls as QQC2 import "Style" PathView { diff --git a/examples/quickcontrols2/wearable/qml/NaviButton.qml b/examples/quickcontrols2/wearable/qml/NaviButton.qml index 55ccc19d..1d4dc552 100644 --- a/examples/quickcontrols2/wearable/qml/NaviButton.qml +++ b/examples/quickcontrols2/wearable/qml/NaviButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.3 as QQC2 +import QtQuick +import QtQuick.Controls as QQC2 import "Style" QQC2.AbstractButton { diff --git a/examples/quickcontrols2/wearable/qml/Navigation/NavigationPage.qml b/examples/quickcontrols2/wearable/qml/Navigation/NavigationPage.qml index 4a7fbde1..06c9909e 100644 --- a/examples/quickcontrols2/wearable/qml/Navigation/NavigationPage.qml +++ b/examples/quickcontrols2/wearable/qml/Navigation/NavigationPage.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../Style" import "navigation.js" as NavigationData diff --git a/examples/quickcontrols2/wearable/qml/Navigation/RouteElement.qml b/examples/quickcontrols2/wearable/qml/Navigation/RouteElement.qml index 005ae3f7..4f5262f1 100644 --- a/examples/quickcontrols2/wearable/qml/Navigation/RouteElement.qml +++ b/examples/quickcontrols2/wearable/qml/Navigation/RouteElement.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../Style" Rectangle { diff --git a/examples/quickcontrols2/wearable/qml/Notifications/NotificationsPage.qml b/examples/quickcontrols2/wearable/qml/Notifications/NotificationsPage.qml index a8e99345..45f0dcb2 100644 --- a/examples/quickcontrols2/wearable/qml/Notifications/NotificationsPage.qml +++ b/examples/quickcontrols2/wearable/qml/Notifications/NotificationsPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.3 as QQC2 +import QtQuick +import QtQuick.Controls as QQC2 import "../Style" import "notifications.js" as NotificationData diff --git a/examples/quickcontrols2/wearable/qml/Settings/SettingsPage.qml b/examples/quickcontrols2/wearable/qml/Settings/SettingsPage.qml index 23bb9acd..347ad417 100644 --- a/examples/quickcontrols2/wearable/qml/Settings/SettingsPage.qml +++ b/examples/quickcontrols2/wearable/qml/Settings/SettingsPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.3 as QQC2 +import QtQuick +import QtQuick.Controls as QQC2 import ".." import "../Style" diff --git a/examples/quickcontrols2/wearable/qml/Style/PageIndicator.qml b/examples/quickcontrols2/wearable/qml/Style/PageIndicator.qml index 68485f5d..8328f627 100644 --- a/examples/quickcontrols2/wearable/qml/Style/PageIndicator.qml +++ b/examples/quickcontrols2/wearable/qml/Style/PageIndicator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T import "." T.PageIndicator { diff --git a/examples/quickcontrols2/wearable/qml/Style/Slider.qml b/examples/quickcontrols2/wearable/qml/Style/Slider.qml index a0be11c7..533510f5 100644 --- a/examples/quickcontrols2/wearable/qml/Style/Slider.qml +++ b/examples/quickcontrols2/wearable/qml/Style/Slider.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T import "." T.Slider { diff --git a/examples/quickcontrols2/wearable/qml/Style/Switch.qml b/examples/quickcontrols2/wearable/qml/Style/Switch.qml index 4a0f4e49..e5631bbb 100644 --- a/examples/quickcontrols2/wearable/qml/Style/Switch.qml +++ b/examples/quickcontrols2/wearable/qml/Style/Switch.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T import "." T.Switch { diff --git a/examples/quickcontrols2/wearable/qml/Style/UIStyle.qml b/examples/quickcontrols2/wearable/qml/Style/UIStyle.qml index 0efe84e5..626d37ec 100644 --- a/examples/quickcontrols2/wearable/qml/Style/UIStyle.qml +++ b/examples/quickcontrols2/wearable/qml/Style/UIStyle.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick pragma Singleton diff --git a/examples/quickcontrols2/wearable/qml/SwipeViewPage.qml b/examples/quickcontrols2/wearable/qml/SwipeViewPage.qml index 1417d9f7..b897127b 100644 --- a/examples/quickcontrols2/wearable/qml/SwipeViewPage.qml +++ b/examples/quickcontrols2/wearable/qml/SwipeViewPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { // Don't show the item when the StackView that contains us diff --git a/examples/quickcontrols2/wearable/qml/Weather/WeatherPage.qml b/examples/quickcontrols2/wearable/qml/Weather/WeatherPage.qml index 2d411302..28fc0bc1 100644 --- a/examples/quickcontrols2/wearable/qml/Weather/WeatherPage.qml +++ b/examples/quickcontrols2/wearable/qml/Weather/WeatherPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.3 as QQC2 +import QtQuick +import QtQuick.Controls as QQC2 import ".." import "../Style" import "weather.js" as WeatherData diff --git a/examples/quickcontrols2/wearable/qml/WorldClock/Clock.qml b/examples/quickcontrols2/wearable/qml/WorldClock/Clock.qml index 613d936b..31211309 100644 --- a/examples/quickcontrols2/wearable/qml/WorldClock/Clock.qml +++ b/examples/quickcontrols2/wearable/qml/WorldClock/Clock.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.3 as QQC2 +import QtQuick +import QtQuick.Controls as QQC2 import ".." import "../Style" diff --git a/examples/quickcontrols2/wearable/qml/WorldClock/WorldClockPage.qml b/examples/quickcontrols2/wearable/qml/WorldClock/WorldClockPage.qml index 8def8b45..b2f881e3 100644 --- a/examples/quickcontrols2/wearable/qml/WorldClock/WorldClockPage.qml +++ b/examples/quickcontrols2/wearable/qml/WorldClock/WorldClockPage.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.3 as QQC2 +import QtQuick +import QtQuick.Controls as QQC2 import "../Style" Item { diff --git a/examples/quickcontrols2/wearable/wearable.qml b/examples/quickcontrols2/wearable/wearable.qml index bda7d169..645ff561 100644 --- a/examples/quickcontrols2/wearable/wearable.qml +++ b/examples/quickcontrols2/wearable/wearable.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.3 as QQC2 -import Qt.labs.settings 1.0 +import QtQuick +import QtQuick.Controls as QQC2 +import Qt.labs.settings import "qml" import "qml/Style" diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 6c0dd97b..4ad5f89b 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -2,4 +2,5 @@ add_subdirectory(quicktemplates2) add_subdirectory(quickcontrols2) +add_subdirectory(quickcontrols2impl) add_subdirectory(imports) diff --git a/src/imports/.prev_CMakeLists.txt b/src/imports/.prev_CMakeLists.txt index 9bec7cd4..473471c2 100644 --- a/src/imports/.prev_CMakeLists.txt +++ b/src/imports/.prev_CMakeLists.txt @@ -1,10 +1,16 @@ # Generated from imports.pro. add_subdirectory(controls) -add_subdirectory(calendar) +add_subdirectory(controlsimpl) add_subdirectory(platform) add_subdirectory(templates) +add_subdirectory(controls/default) +add_subdirectory(controls/default/impl) add_subdirectory(controls/fusion) +add_subdirectory(controls/fusion/impl) add_subdirectory(controls/imagine) +add_subdirectory(controls/imagine/impl) add_subdirectory(controls/material) +add_subdirectory(controls/material/impl) add_subdirectory(controls/universal) +add_subdirectory(controls/universal/impl) diff --git a/src/imports/CMakeLists.txt b/src/imports/CMakeLists.txt index 46b803f7..fbd1d1d0 100644 --- a/src/imports/CMakeLists.txt +++ b/src/imports/CMakeLists.txt @@ -1,9 +1,24 @@ # Generated from imports.pro. add_subdirectory(controls) +add_subdirectory(controlsimpl) add_subdirectory(platform) add_subdirectory(templates) +add_subdirectory(nativestyle) +add_subdirectory(controls/default) +add_subdirectory(controls/default/impl) add_subdirectory(controls/fusion) +add_subdirectory(controls/fusion/impl) add_subdirectory(controls/imagine) +add_subdirectory(controls/imagine/impl) add_subdirectory(controls/material) +add_subdirectory(controls/material/impl) add_subdirectory(controls/universal) +add_subdirectory(controls/universal/impl) + +if(MACOS) + add_subdirectory(controls/macos) +endif() +if(WIN32) + add_subdirectory(controls/windows) +endif() diff --git a/src/imports/controls/.prev_CMakeLists.txt b/src/imports/controls/.prev_CMakeLists.txt index e017f0fe..ca2ddb43 100644 --- a/src/imports/controls/.prev_CMakeLists.txt +++ b/src/imports/controls/.prev_CMakeLists.txt @@ -4,21 +4,17 @@ ## qtquickcontrols2plugin Plugin: ##################################################################### -add_qml_module(qtquickcontrols2plugin - TARGET_PATH "QtQuick/Controls.2" +qt_add_qml_module(qtquickcontrols2plugin URI "QtQuick.Controls" - VERSION "2.${CMAKE_PROJECT_VERSION_MINOR}" + VERSION "${CMAKE_PROJECT_VERSION}" DESIGNER_SUPPORTED CLASSNAME QtQuickControls2Plugin DEPENDENCIES QtQuick.Templates/2.5 SKIP_TYPE_REGISTRATION + IMPORTS + QtQuick.Controls.impl/auto SOURCES - qquickdefaultbusyindicator.cpp qquickdefaultbusyindicator_p.h - qquickdefaultdial.cpp qquickdefaultdial_p.h - qquickdefaultprogressbar.cpp qquickdefaultprogressbar_p.h - qquickdefaultstyle.cpp qquickdefaultstyle_p.h - qquickdefaulttheme.cpp qquickdefaulttheme_p.h qtquickcontrols2plugin.cpp DEFINES QT_NO_CAST_FROM_ASCII @@ -27,6 +23,7 @@ add_qml_module(qtquickcontrols2plugin Qt::CorePrivate Qt::GuiPrivate Qt::QmlPrivate + Qt::QuickControls2ImplPrivate Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private @@ -37,110 +34,14 @@ add_qml_module(qtquickcontrols2plugin Qt::Quick ) -# Resources: -set(qtquickcontrols2plugin_resource_files - "images/arrow-indicator.png" - "images/arrow-indicator@2x.png" - "images/arrow-indicator@3x.png" - "images/arrow-indicator@4x.png" - "images/check.png" - "images/check@2x.png" - "images/check@3x.png" - "images/check@4x.png" - "images/dial-indicator.png" - "images/dial-indicator@2x.png" - "images/dial-indicator@3x.png" - "images/dial-indicator@4x.png" - "images/double-arrow.png" - "images/double-arrow@2x.png" - "images/double-arrow@3x.png" - "images/double-arrow@4x.png" - "images/drop-indicator.png" - "images/drop-indicator@2x.png" - "images/drop-indicator@3x.png" - "images/drop-indicator@4x.png" -) - -add_qt_resource(qtquickcontrols2plugin "qtquickcontrols2plugin" - PREFIX - "/qt-project.org/imports/QtQuick/Controls.2" - FILES - ${qtquickcontrols2plugin_resource_files} -) - - #### Keys ignored in scope 1:.:.:controls.pro:<TRUE>: -# IMPORT_VERSION = "2.$$QT_MINOR_VERSION" -# OTHER_FILES = "qmldir" "$$QML_FILES" "$$PWD/snippets/*.qml" "$$PWD/src/*.qdoc" "$$PWD/src/calendar/*.qdoc" "$$PWD/src/templates/*.qdoc" -# TARGETPATH = "QtQuick/Controls.2" -# _REQUIREMENTS = "qtConfig(quickcontrols2-default)" +# OTHER_FILES = "qmldir" "$$PWD/snippets/*.qml" "$$PWD/src/*.qdoc" "$$PWD/src/templates/*.qdoc" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# TARGETPATH = "QtQuick/Controls" ## Scopes: ##################################################################### - -set(qml_files - "AbstractButton.qml" - "Action.qml" - "ActionGroup.qml" - "ApplicationWindow.qml" - "BusyIndicator.qml" - "Button.qml" - "ButtonGroup.qml" - "CheckBox.qml" - "CheckDelegate.qml" - "ComboBox.qml" - "Container.qml" - "Control.qml" - "DelayButton.qml" - "Dial.qml" - "Dialog.qml" - "DialogButtonBox.qml" - "Drawer.qml" - "Frame.qml" - "GroupBox.qml" - "ItemDelegate.qml" - "Label.qml" - "Menu.qml" - "MenuBar.qml" - "MenuBarItem.qml" - "MenuItem.qml" - "MenuSeparator.qml" - "Page.qml" - "PageIndicator.qml" - "Pane.qml" - "Popup.qml" - "ProgressBar.qml" - "RadioButton.qml" - "RadioDelegate.qml" - "RangeSlider.qml" - "RoundButton.qml" - "ScrollBar.qml" - "ScrollIndicator.qml" - "ScrollView.qml" - "Slider.qml" - "SpinBox.qml" - "SplitView.qml" - "StackView.qml" - "SwipeDelegate.qml" - "Switch.qml" - "SwitchDelegate.qml" - "SwipeView.qml" - "TabBar.qml" - "TabButton.qml" - "TextArea.qml" - "TextField.qml" - "ToolBar.qml" - "ToolButton.qml" - "ToolSeparator.qml" - "ToolTip.qml" - "Tumbler.qml" -) - -qt6_target_qml_files(qtquickcontrols2plugin - FILES - ${qml_files} -) -add_qt_docs(qtquickcontrols2plugin +qt_add_docs(qtquickcontrols2plugin doc/qtquickcontrols.qdocconf ) diff --git a/src/imports/controls/ApplicationWindow.qml b/src/imports/controls/ApplicationWindow.qml deleted file mode 100644 index 85dfd279..00000000 --- a/src/imports/controls/ApplicationWindow.qml +++ /dev/null @@ -1,55 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL3$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPLv3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or later as published by the Free -** Software Foundation and appearing in the file LICENSE.GPL included in -** the packaging of this file. Please review the following information to -** ensure the GNU General Public License version 2.0 requirements will be -** met: http://www.gnu.org/licenses/gpl-2.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -import QtQuick 2.12 -import QtQuick.Window 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T - -T.ApplicationWindow { - id: window - - color: window.palette.window - - overlay.modal: Rectangle { - color: Color.transparent(window.palette.shadow, 0.5) - } - - overlay.modeless: Rectangle { - color: Color.transparent(window.palette.shadow, 0.12) - } -} diff --git a/src/imports/controls/CMakeLists.txt b/src/imports/controls/CMakeLists.txt index 3cef4d26..4e48373e 100644 --- a/src/imports/controls/CMakeLists.txt +++ b/src/imports/controls/CMakeLists.txt @@ -5,20 +5,17 @@ ##################################################################### qt_add_qml_module(qtquickcontrols2plugin - TARGET_PATH "QtQuick/Controls.2" + TARGET_PATH "QtQuick/Controls" URI "QtQuick.Controls" - VERSION "2.${CMAKE_PROJECT_VERSION_MINOR}" + VERSION "6.0" # special case DESIGNER_SUPPORTED CLASSNAME QtQuickControls2Plugin DEPENDENCIES QtQuick.Templates/2.5 SKIP_TYPE_REGISTRATION + IMPORTS + QtQuick.Controls.impl/auto SOURCES - qquickdefaultbusyindicator.cpp qquickdefaultbusyindicator_p.h - qquickdefaultdial.cpp qquickdefaultdial_p.h - qquickdefaultprogressbar.cpp qquickdefaultprogressbar_p.h - qquickdefaultstyle.cpp qquickdefaultstyle_p.h - qquickdefaulttheme.cpp qquickdefaulttheme_p.h qtquickcontrols2plugin.cpp DEFINES QT_NO_CAST_FROM_ASCII @@ -27,6 +24,7 @@ qt_add_qml_module(qtquickcontrols2plugin Qt::CorePrivate Qt::GuiPrivate Qt::QmlPrivate + Qt::QuickControls2ImplPrivate Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private @@ -37,282 +35,13 @@ qt_add_qml_module(qtquickcontrols2plugin Qt::Quick ) -# Resources: -set(qtquickcontrols2plugin_resource_files - "images/arrow-indicator.png" - "images/arrow-indicator@2x.png" - "images/arrow-indicator@3x.png" - "images/arrow-indicator@4x.png" - "images/check.png" - "images/check@2x.png" - "images/check@3x.png" - "images/check@4x.png" - "images/dial-indicator.png" - "images/dial-indicator@2x.png" - "images/dial-indicator@3x.png" - "images/dial-indicator@4x.png" - "images/double-arrow.png" - "images/double-arrow@2x.png" - "images/double-arrow@3x.png" - "images/double-arrow@4x.png" - "images/drop-indicator.png" - "images/drop-indicator@2x.png" - "images/drop-indicator@3x.png" - "images/drop-indicator@4x.png" -) - -qt_add_resource(qtquickcontrols2plugin "qtquickcontrols2plugin" - PREFIX - "/qt-project.org/imports/QtQuick/Controls.2" - FILES - ${qtquickcontrols2plugin_resource_files} -) - - #### Keys ignored in scope 1:.:.:controls.pro:<TRUE>: -# IMPORT_VERSION = "2.$$QT_MINOR_VERSION" -# OTHER_FILES = "qmldir" "$$QML_FILES" "$$PWD/snippets/*.qml" "$$PWD/src/*.qdoc" "$$PWD/src/templates/*.qdoc" -# TARGETPATH = "QtQuick/Controls.2" -# _REQUIREMENTS = "qtConfig(quickcontrols2-default)" +# OTHER_FILES = "qmldir" "$$PWD/snippets/*.qml" "$$PWD/src/*.qdoc" "$$PWD/src/templates/*.qdoc" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# TARGETPATH = "QtQuick/Controls" ## Scopes: ##################################################################### - -set(qml_files - "AbstractButton.qml" - "Action.qml" - "ActionGroup.qml" - "ApplicationWindow.qml" - "BusyIndicator.qml" - "Button.qml" - "ButtonGroup.qml" - "CheckBox.qml" - "CheckDelegate.qml" - "ComboBox.qml" - "Container.qml" - "Control.qml" - "DelayButton.qml" - "Dial.qml" - "Dialog.qml" - "DialogButtonBox.qml" - "Drawer.qml" - "Frame.qml" - "GroupBox.qml" - "HorizontalHeaderView.qml" - "ItemDelegate.qml" - "Label.qml" - "Menu.qml" - "MenuBar.qml" - "MenuBarItem.qml" - "MenuItem.qml" - "MenuSeparator.qml" - "Page.qml" - "PageIndicator.qml" - "Pane.qml" - "Popup.qml" - "ProgressBar.qml" - "RadioButton.qml" - "RadioDelegate.qml" - "RangeSlider.qml" - "RoundButton.qml" - "ScrollBar.qml" - "ScrollIndicator.qml" - "ScrollView.qml" - "Slider.qml" - "SpinBox.qml" - "SplitView.qml" - "StackView.qml" - "SwipeDelegate.qml" - "Switch.qml" - "SwitchDelegate.qml" - "SwipeView.qml" - "TabBar.qml" - "TabButton.qml" - "TextArea.qml" - "TextField.qml" - "ToolBar.qml" - "ToolButton.qml" - "ToolSeparator.qml" - "ToolTip.qml" - "Tumbler.qml" - "VerticalHeaderView.qml" -) -set_source_files_properties(AbstractButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(Action.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(ActionGroup.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(ApplicationWindow.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(BusyIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(Button.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(ButtonGroup.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(CheckBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(CheckDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(ComboBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(Container.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(Control.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(DelayButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(Dial.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(Dialog.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(DialogButtonBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(Drawer.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(Frame.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(GroupBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(HorizontalHeaderView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(ItemDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(Label.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(Menu.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(MenuBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(MenuBarItem.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(MenuItem.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(MenuSeparator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(Page.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(PageIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(Pane.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(Popup.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(ProgressBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(RadioButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(RadioDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(RangeSlider.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(RoundButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(ScrollBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(ScrollIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(ScrollView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(Slider.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(SpinBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(SplitView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(StackView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(SwipeDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(Switch.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(SwitchDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(SwipeView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(TabBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(TabButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(TextArea.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(TextField.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(ToolBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(ToolButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(ToolSeparator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(ToolTip.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(Tumbler.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(VerticalHeaderView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) - -qt6_target_qml_files(qtquickcontrols2plugin - FILES - ${qml_files} -) qt_add_docs(qtquickcontrols2plugin doc/qtquickcontrols.qdocconf ) diff --git a/src/imports/controls/controls.pro b/src/imports/controls/controls.pro index 66373d55..4eb402a3 100644 --- a/src/imports/controls/controls.pro +++ b/src/imports/controls/controls.pro @@ -1,28 +1,20 @@ TARGET = qtquickcontrols2plugin -TARGETPATH = QtQuick/Controls.2 -IMPORT_VERSION = 2.$$QT_MINOR_VERSION +TARGETPATH = QtQuick/Controls +QML_IMPORT_VERSION = $$QT_VERSION QT += qml quick -QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2-private +QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2-private quickcontrols2impl-private DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII -include(controls.pri) - OTHER_FILES += \ - qmldir \ - $$QML_FILES + qmldir SOURCES += \ $$PWD/qtquickcontrols2plugin.cpp -RESOURCES += \ - $$PWD/qtquickcontrols2plugin.qrc - qtConfig(quick-designer): include(designer/designer.pri) include(doc/doc.pri) -CONFIG += no_cxx_module install_qml_files builtin_resources qtquickcompiler +CONFIG += no_cxx_module load(qml_plugin) - -requires(qtConfig(quickcontrols2-default)) diff --git a/src/imports/controls/default/.prev_CMakeLists.txt b/src/imports/controls/default/.prev_CMakeLists.txt new file mode 100644 index 00000000..608f81b6 --- /dev/null +++ b/src/imports/controls/default/.prev_CMakeLists.txt @@ -0,0 +1,308 @@ +# Generated from default.pro. + +##################################################################### +## qtquickcontrols2defaultstyleplugin Plugin: +##################################################################### + +qt_add_qml_module(qtquickcontrols2defaultstyleplugin + URI "QtQuick.Controls.Default" + VERSION "${CMAKE_PROJECT_VERSION}" + CLASSNAME QtQuickControls2DefaultStylePlugin + DEPENDENCIES + QtQuick.Controls/2.5 + GENERATE_QMLTYPES + SOURCES + qquickdefaultstyle.cpp qquickdefaultstyle_p.h + qquickdefaulttheme.cpp qquickdefaulttheme_p.h + qtquickcontrols2defaultstyleplugin.cpp + DEFINES + QT_NO_CAST_FROM_ASCII + QT_NO_CAST_TO_ASCII + LIBRARIES + Qt::CorePrivate + Qt::GuiPrivate + Qt::QmlPrivate + Qt::QuickControls2Private + Qt::QuickPrivate + Qt::QuickTemplates2Private + PUBLIC_LIBRARIES + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick +) + +# Resources: +set(qtquickcontrols2defaultstyleplugin_resource_files + "images/arrow-indicator.png" + "images/arrow-indicator@2x.png" + "images/arrow-indicator@3x.png" + "images/arrow-indicator@4x.png" + "images/check.png" + "images/check@2x.png" + "images/check@3x.png" + "images/check@4x.png" + "images/dial-indicator.png" + "images/dial-indicator@2x.png" + "images/dial-indicator@3x.png" + "images/dial-indicator@4x.png" + "images/double-arrow.png" + "images/double-arrow@2x.png" + "images/double-arrow@3x.png" + "images/double-arrow@4x.png" + "images/drop-indicator.png" + "images/drop-indicator@2x.png" + "images/drop-indicator@3x.png" + "images/drop-indicator@4x.png" +) + +qt_add_resource(qtquickcontrols2defaultstyleplugin "qtquickcontrols2defaultstyleplugin" + PREFIX + "/qt-project.org/imports/QtQuick/Controls/Default" + FILES + ${qtquickcontrols2defaultstyleplugin_resource_files} +) + + +#### Keys ignored in scope 1:.:.:default.pro:<TRUE>: +# OTHER_FILES = "qmldir" "$$QML_FILES" +# QML_IMPORT_NAME = "QtQuick.Controls.Default" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# TARGETPATH = "QtQuick/Controls/Default" +# _REQUIREMENTS = "qtConfig(quickcontrols2-default)" + +set(qml_files + "AbstractButton.qml" + "Action.qml" + "ActionGroup.qml" + "ApplicationWindow.qml" + "BusyIndicator.qml" + "Button.qml" + "ButtonGroup.qml" + "CheckBox.qml" + "CheckDelegate.qml" + "ComboBox.qml" + "Container.qml" + "Control.qml" + "DelayButton.qml" + "Dial.qml" + "Dialog.qml" + "DialogButtonBox.qml" + "Drawer.qml" + "Frame.qml" + "GroupBox.qml" + "HorizontalHeaderView.qml" + "ItemDelegate.qml" + "Label.qml" + "Menu.qml" + "MenuBar.qml" + "MenuBarItem.qml" + "MenuItem.qml" + "MenuSeparator.qml" + "Page.qml" + "PageIndicator.qml" + "Pane.qml" + "Popup.qml" + "ProgressBar.qml" + "RadioButton.qml" + "RadioDelegate.qml" + "RangeSlider.qml" + "RoundButton.qml" + "ScrollBar.qml" + "ScrollIndicator.qml" + "ScrollView.qml" + "Slider.qml" + "SpinBox.qml" + "SplitView.qml" + "StackView.qml" + "SwipeDelegate.qml" + "Switch.qml" + "SwitchDelegate.qml" + "SwipeView.qml" + "TabBar.qml" + "TabButton.qml" + "TextArea.qml" + "TextField.qml" + "ToolBar.qml" + "ToolButton.qml" + "ToolSeparator.qml" + "ToolTip.qml" + "Tumbler.qml" + "VerticalHeaderView.qml" +) +set_source_files_properties(AbstractButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Action.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.3;6.0" +) +set_source_files_properties(ActionGroup.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.3;6.0" +) +set_source_files_properties(ApplicationWindow.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(BusyIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Button.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ButtonGroup.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(CheckBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(CheckDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ComboBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Container.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Control.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(DelayButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.2;6.0" +) +set_source_files_properties(Dial.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Dialog.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(DialogButtonBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(Drawer.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Frame.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(GroupBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(HorizontalHeaderView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.15;6.0" +) +set_source_files_properties(ItemDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Label.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Menu.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(MenuBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.3;6.0" +) +set_source_files_properties(MenuBarItem.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.3;6.0" +) +set_source_files_properties(MenuItem.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(MenuSeparator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(Page.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(PageIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Pane.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Popup.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ProgressBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(RadioButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(RadioDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(RangeSlider.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(RoundButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(ScrollBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ScrollIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ScrollView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.2;6.0" +) +set_source_files_properties(Slider.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SpinBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SplitView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.13;6.0" +) +set_source_files_properties(StackView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SwipeDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Switch.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SwitchDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SwipeView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(TabBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(TabButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(TextArea.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(TextField.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ToolBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ToolButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ToolSeparator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(ToolTip.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Tumbler.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(VerticalHeaderView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.15;6.0" +) + +qt6_target_qml_files(qtquickcontrols2defaultstyleplugin + FILES + ${qml_files} +) diff --git a/src/imports/controls/AbstractButton.qml b/src/imports/controls/default/AbstractButton.qml index 50ddb933..a4855c21 100644 --- a/src/imports/controls/AbstractButton.qml +++ b/src/imports/controls/default/AbstractButton.qml @@ -34,8 +34,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.AbstractButton { id: control diff --git a/src/imports/controls/Action.qml b/src/imports/controls/default/Action.qml index 996e9086..bb66fc8f 100644 --- a/src/imports/controls/Action.qml +++ b/src/imports/controls/default/Action.qml @@ -34,7 +34,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Action { } diff --git a/src/imports/controls/ActionGroup.qml b/src/imports/controls/default/ActionGroup.qml index 89e72c8f..70170f0e 100644 --- a/src/imports/controls/ActionGroup.qml +++ b/src/imports/controls/default/ActionGroup.qml @@ -34,7 +34,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ActionGroup { } diff --git a/src/imports/controls/default/ApplicationWindow.qml b/src/imports/controls/default/ApplicationWindow.qml new file mode 100644 index 00000000..b383139b --- /dev/null +++ b/src/imports/controls/default/ApplicationWindow.qml @@ -0,0 +1,47 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import QtQuick +import QtQuick.Window +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T + +T.ApplicationWindow { + id: window + + color: window.palette.window +} diff --git a/src/imports/controls/BusyIndicator.qml b/src/imports/controls/default/BusyIndicator.qml index ff5c191c..5db2a083 100644 --- a/src/imports/controls/BusyIndicator.qml +++ b/src/imports/controls/default/BusyIndicator.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Default.impl +import QtQuick.Templates as T T.BusyIndicator { id: control diff --git a/src/imports/controls/Button.qml b/src/imports/controls/default/Button.qml index a9e7fce6..06d4e93f 100644 --- a/src/imports/controls/Button.qml +++ b/src/imports/controls/default/Button.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.Button { id: control diff --git a/src/imports/controls/ButtonGroup.qml b/src/imports/controls/default/ButtonGroup.qml index cf0355ba..fadc538a 100644 --- a/src/imports/controls/ButtonGroup.qml +++ b/src/imports/controls/default/ButtonGroup.qml @@ -34,7 +34,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ButtonGroup { } diff --git a/src/imports/controls/default/CMakeLists.txt b/src/imports/controls/default/CMakeLists.txt new file mode 100644 index 00000000..336d04c9 --- /dev/null +++ b/src/imports/controls/default/CMakeLists.txt @@ -0,0 +1,308 @@ +# Generated from default.pro. + +##################################################################### +## qtquickcontrols2defaultstyleplugin Plugin: +##################################################################### + +qt_add_qml_module(qtquickcontrols2defaultstyleplugin + URI "QtQuick.Controls.Default" + VERSION "6.0" # special case + CLASSNAME QtQuickControls2DefaultStylePlugin + DEPENDENCIES + QtQuick.Controls/2.5 + GENERATE_QMLTYPES + SOURCES + qquickdefaultstyle.cpp qquickdefaultstyle_p.h + qquickdefaulttheme.cpp qquickdefaulttheme_p.h + qtquickcontrols2defaultstyleplugin.cpp + DEFINES + QT_NO_CAST_FROM_ASCII + QT_NO_CAST_TO_ASCII + LIBRARIES + Qt::CorePrivate + Qt::GuiPrivate + Qt::QmlPrivate + Qt::QuickControls2Private + Qt::QuickPrivate + Qt::QuickTemplates2Private + PUBLIC_LIBRARIES + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick +) + +# Resources: +set(qtquickcontrols2defaultstyleplugin_resource_files + "images/arrow-indicator.png" + "images/arrow-indicator@2x.png" + "images/arrow-indicator@3x.png" + "images/arrow-indicator@4x.png" + "images/check.png" + "images/check@2x.png" + "images/check@3x.png" + "images/check@4x.png" + "images/dial-indicator.png" + "images/dial-indicator@2x.png" + "images/dial-indicator@3x.png" + "images/dial-indicator@4x.png" + "images/double-arrow.png" + "images/double-arrow@2x.png" + "images/double-arrow@3x.png" + "images/double-arrow@4x.png" + "images/drop-indicator.png" + "images/drop-indicator@2x.png" + "images/drop-indicator@3x.png" + "images/drop-indicator@4x.png" +) + +qt_add_resource(qtquickcontrols2defaultstyleplugin "qtquickcontrols2defaultstyleplugin" + PREFIX + "/qt-project.org/imports/QtQuick/Controls/Default" + FILES + ${qtquickcontrols2defaultstyleplugin_resource_files} +) + + +#### Keys ignored in scope 1:.:.:default.pro:<TRUE>: +# OTHER_FILES = "qmldir" "$$QML_FILES" +# QML_IMPORT_NAME = "QtQuick.Controls.Default" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# TARGETPATH = "QtQuick/Controls/Default" +# _REQUIREMENTS = "qtConfig(quickcontrols2-default)" + +set(qml_files + "AbstractButton.qml" + "Action.qml" + "ActionGroup.qml" + "ApplicationWindow.qml" + "BusyIndicator.qml" + "Button.qml" + "ButtonGroup.qml" + "CheckBox.qml" + "CheckDelegate.qml" + "ComboBox.qml" + "Container.qml" + "Control.qml" + "DelayButton.qml" + "Dial.qml" + "Dialog.qml" + "DialogButtonBox.qml" + "Drawer.qml" + "Frame.qml" + "GroupBox.qml" + "HorizontalHeaderView.qml" + "ItemDelegate.qml" + "Label.qml" + "Menu.qml" + "MenuBar.qml" + "MenuBarItem.qml" + "MenuItem.qml" + "MenuSeparator.qml" + "Page.qml" + "PageIndicator.qml" + "Pane.qml" + "Popup.qml" + "ProgressBar.qml" + "RadioButton.qml" + "RadioDelegate.qml" + "RangeSlider.qml" + "RoundButton.qml" + "ScrollBar.qml" + "ScrollIndicator.qml" + "ScrollView.qml" + "Slider.qml" + "SpinBox.qml" + "SplitView.qml" + "StackView.qml" + "SwipeDelegate.qml" + "Switch.qml" + "SwitchDelegate.qml" + "SwipeView.qml" + "TabBar.qml" + "TabButton.qml" + "TextArea.qml" + "TextField.qml" + "ToolBar.qml" + "ToolButton.qml" + "ToolSeparator.qml" + "ToolTip.qml" + "Tumbler.qml" + "VerticalHeaderView.qml" +) +set_source_files_properties(AbstractButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Action.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.3;6.0" +) +set_source_files_properties(ActionGroup.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.3;6.0" +) +set_source_files_properties(ApplicationWindow.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(BusyIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Button.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ButtonGroup.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(CheckBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(CheckDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ComboBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Container.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Control.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(DelayButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.2;6.0" +) +set_source_files_properties(Dial.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Dialog.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(DialogButtonBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(Drawer.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Frame.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(GroupBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(HorizontalHeaderView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.15;6.0" +) +set_source_files_properties(ItemDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Label.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Menu.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(MenuBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.3;6.0" +) +set_source_files_properties(MenuBarItem.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.3;6.0" +) +set_source_files_properties(MenuItem.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(MenuSeparator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(Page.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(PageIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Pane.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Popup.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ProgressBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(RadioButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(RadioDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(RangeSlider.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(RoundButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(ScrollBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ScrollIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ScrollView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.2;6.0" +) +set_source_files_properties(Slider.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SpinBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SplitView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.13;6.0" +) +set_source_files_properties(StackView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SwipeDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Switch.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SwitchDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SwipeView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(TabBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(TabButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(TextArea.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(TextField.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ToolBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ToolButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ToolSeparator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(ToolTip.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Tumbler.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(VerticalHeaderView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.15;6.0" +) + +qt6_target_qml_files(qtquickcontrols2defaultstyleplugin + FILES + ${qml_files} +) diff --git a/src/imports/controls/CheckBox.qml b/src/imports/controls/default/CheckBox.qml index b1f50ed1..d9c92a56 100644 --- a/src/imports/controls/CheckBox.qml +++ b/src/imports/controls/default/CheckBox.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl T.CheckBox { id: control @@ -68,7 +68,7 @@ T.CheckBox { y: (parent.height - height) / 2 defaultColor: "#353637" color: control.palette.text - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png" visible: control.checkState === Qt.Checked } diff --git a/src/imports/controls/CheckDelegate.qml b/src/imports/controls/default/CheckDelegate.qml index 71b390ac..3153bb3e 100644 --- a/src/imports/controls/CheckDelegate.qml +++ b/src/imports/controls/default/CheckDelegate.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl T.CheckDelegate { id: control @@ -87,7 +87,7 @@ T.CheckDelegate { y: (parent.height - height) / 2 defaultColor: "#353637" color: control.palette.text - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png" visible: control.checkState === Qt.Checked } diff --git a/src/imports/controls/ComboBox.qml b/src/imports/controls/default/ComboBox.qml index e9f93d66..e1e60164 100644 --- a/src/imports/controls/ComboBox.qml +++ b/src/imports/controls/default/ComboBox.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Window 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Controls.impl 2.15 -import QtQuick.Templates 2.15 as T +import QtQuick +import QtQuick.Window +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.ComboBox { id: control @@ -67,7 +67,7 @@ T.ComboBox { y: control.topPadding + (control.availableHeight - height) / 2 color: control.palette.dark defaultColor: "#353637" - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/double-arrow.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/double-arrow.png" opacity: enabled ? 1 : 0.3 } diff --git a/src/imports/controls/Container.qml b/src/imports/controls/default/Container.qml index 83ab957d..93919075 100644 --- a/src/imports/controls/Container.qml +++ b/src/imports/controls/default/Container.qml @@ -34,8 +34,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Container { id: control diff --git a/src/imports/controls/Control.qml b/src/imports/controls/default/Control.qml index a963a563..7a68a431 100644 --- a/src/imports/controls/Control.qml +++ b/src/imports/controls/default/Control.qml @@ -34,8 +34,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Control { id: control diff --git a/src/imports/controls/DelayButton.qml b/src/imports/controls/default/DelayButton.qml index 1c545a71..3dbed315 100644 --- a/src/imports/controls/DelayButton.qml +++ b/src/imports/controls/default/DelayButton.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.DelayButton { id: control diff --git a/src/imports/controls/Dial.qml b/src/imports/controls/default/Dial.qml index e7c732cd..80f2bfb0 100644 --- a/src/imports/controls/Dial.qml +++ b/src/imports/controls/default/Dial.qml @@ -34,10 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Default.impl +import QtQuick.Templates as T T.Dial { id: control @@ -62,7 +63,7 @@ T.Dial { height: 10 defaultColor: "#353637" color: control.visualFocus ? control.palette.highlight : control.palette.dark - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/dial-indicator.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/dial-indicator.png" antialiasing: true opacity: control.enabled ? 1 : 0.3 transform: [ diff --git a/src/imports/controls/Dialog.qml b/src/imports/controls/default/Dialog.qml index 6c2e4b1b..254a6dcb 100644 --- a/src/imports/controls/Dialog.qml +++ b/src/imports/controls/default/Dialog.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl T.Dialog { id: control diff --git a/src/imports/controls/DialogButtonBox.qml b/src/imports/controls/default/DialogButtonBox.qml index 3c9d5b48..e4cdbd14 100644 --- a/src/imports/controls/DialogButtonBox.qml +++ b/src/imports/controls/default/DialogButtonBox.qml @@ -34,8 +34,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.DialogButtonBox { id: control diff --git a/src/imports/controls/Drawer.qml b/src/imports/controls/default/Drawer.qml index 17465fd4..719e5e1c 100644 --- a/src/imports/controls/Drawer.qml +++ b/src/imports/controls/default/Drawer.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.Drawer { id: control diff --git a/src/imports/controls/Frame.qml b/src/imports/controls/default/Frame.qml index 2fe46104..9696b5c9 100644 --- a/src/imports/controls/Frame.qml +++ b/src/imports/controls/default/Frame.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.Frame { id: control diff --git a/src/imports/controls/GroupBox.qml b/src/imports/controls/default/GroupBox.qml index 96f776f2..d6244113 100644 --- a/src/imports/controls/GroupBox.qml +++ b/src/imports/controls/default/GroupBox.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.GroupBox { id: control diff --git a/src/imports/controls/HorizontalHeaderView.qml b/src/imports/controls/default/HorizontalHeaderView.qml index ec91af25..093c868b 100644 --- a/src/imports/controls/HorizontalHeaderView.qml +++ b/src/imports/controls/default/HorizontalHeaderView.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Templates 2.15 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T T.HorizontalHeaderView { id: control diff --git a/src/imports/controls/ItemDelegate.qml b/src/imports/controls/default/ItemDelegate.qml index 6229e2bb..1183eb2b 100644 --- a/src/imports/controls/ItemDelegate.qml +++ b/src/imports/controls/default/ItemDelegate.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.ItemDelegate { id: control diff --git a/src/imports/controls/Label.qml b/src/imports/controls/default/Label.qml index 9a42635f..6d0aca41 100644 --- a/src/imports/controls/Label.qml +++ b/src/imports/controls/default/Label.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.Label { id: control diff --git a/src/imports/controls/Menu.qml b/src/imports/controls/default/Menu.qml index cf3a52f2..91384e4f 100644 --- a/src/imports/controls/Menu.qml +++ b/src/imports/controls/default/Menu.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Window 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T +import QtQuick.Window T.Menu { id: control diff --git a/src/imports/controls/MenuBar.qml b/src/imports/controls/default/MenuBar.qml index 122cdc53..9745a52d 100644 --- a/src/imports/controls/MenuBar.qml +++ b/src/imports/controls/default/MenuBar.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl T.MenuBar { id: control diff --git a/src/imports/controls/MenuBarItem.qml b/src/imports/controls/default/MenuBarItem.qml index f6835412..b2771a3c 100644 --- a/src/imports/controls/MenuBarItem.qml +++ b/src/imports/controls/default/MenuBarItem.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl T.MenuBarItem { id: control diff --git a/src/imports/controls/MenuItem.qml b/src/imports/controls/default/MenuItem.qml index 22cdf3ea..fc2d434f 100644 --- a/src/imports/controls/MenuItem.qml +++ b/src/imports/controls/default/MenuItem.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.MenuItem { id: control @@ -77,7 +77,7 @@ T.MenuItem { y: control.topPadding + (control.availableHeight - height) / 2 visible: control.checked - source: control.checkable ? "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png" : "" + source: control.checkable ? "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png" : "" color: control.palette.windowText defaultColor: "#353637" } @@ -88,7 +88,7 @@ T.MenuItem { visible: control.subMenu mirror: control.mirrored - source: control.subMenu ? "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/arrow-indicator.png" : "" + source: control.subMenu ? "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/arrow-indicator.png" : "" color: control.palette.windowText defaultColor: "#353637" } diff --git a/src/imports/controls/MenuSeparator.qml b/src/imports/controls/default/MenuSeparator.qml index cc5c2b6e..d503aecd 100644 --- a/src/imports/controls/MenuSeparator.qml +++ b/src/imports/controls/default/MenuSeparator.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.MenuSeparator { id: control diff --git a/src/imports/controls/Page.qml b/src/imports/controls/default/Page.qml index 4b3cf3d2..2fec37f0 100644 --- a/src/imports/controls/Page.qml +++ b/src/imports/controls/default/Page.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.Page { id: control diff --git a/src/imports/controls/PageIndicator.qml b/src/imports/controls/default/PageIndicator.qml index 78f9e3cf..3942f54f 100644 --- a/src/imports/controls/PageIndicator.qml +++ b/src/imports/controls/default/PageIndicator.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.PageIndicator { id: control diff --git a/src/imports/controls/Pane.qml b/src/imports/controls/default/Pane.qml index 47b916e3..221819d4 100644 --- a/src/imports/controls/Pane.qml +++ b/src/imports/controls/default/Pane.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.Pane { id: control diff --git a/src/imports/controls/Popup.qml b/src/imports/controls/default/Popup.qml index ee243c10..71372107 100644 --- a/src/imports/controls/Popup.qml +++ b/src/imports/controls/default/Popup.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.Popup { id: control diff --git a/src/imports/controls/ProgressBar.qml b/src/imports/controls/default/ProgressBar.qml index 61cdea43..56739f4f 100644 --- a/src/imports/controls/ProgressBar.qml +++ b/src/imports/controls/default/ProgressBar.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.Default.impl T.ProgressBar { id: control diff --git a/src/imports/controls/RadioButton.qml b/src/imports/controls/default/RadioButton.qml index cdf0c30e..02b2f627 100644 --- a/src/imports/controls/RadioButton.qml +++ b/src/imports/controls/default/RadioButton.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.RadioButton { id: control diff --git a/src/imports/controls/RadioDelegate.qml b/src/imports/controls/default/RadioDelegate.qml index a7e7dec0..dc998363 100644 --- a/src/imports/controls/RadioDelegate.qml +++ b/src/imports/controls/default/RadioDelegate.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.RadioDelegate { id: control diff --git a/src/imports/controls/RangeSlider.qml b/src/imports/controls/default/RangeSlider.qml index c3e7c964..1132a78b 100644 --- a/src/imports/controls/RangeSlider.qml +++ b/src/imports/controls/default/RangeSlider.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.RangeSlider { id: control diff --git a/src/imports/controls/RoundButton.qml b/src/imports/controls/default/RoundButton.qml index 825d5252..9445ecdf 100644 --- a/src/imports/controls/RoundButton.qml +++ b/src/imports/controls/default/RoundButton.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.RoundButton { id: control diff --git a/src/imports/controls/ScrollBar.qml b/src/imports/controls/default/ScrollBar.qml index 0948fb1d..1652ea81 100644 --- a/src/imports/controls/ScrollBar.qml +++ b/src/imports/controls/default/ScrollBar.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.ScrollBar { id: control diff --git a/src/imports/controls/ScrollIndicator.qml b/src/imports/controls/default/ScrollIndicator.qml index 795c20ee..4f3ece0c 100644 --- a/src/imports/controls/ScrollIndicator.qml +++ b/src/imports/controls/default/ScrollIndicator.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.ScrollIndicator { id: control diff --git a/src/imports/controls/ScrollView.qml b/src/imports/controls/default/ScrollView.qml index f775d624..76094c6c 100644 --- a/src/imports/controls/ScrollView.qml +++ b/src/imports/controls/default/ScrollView.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.ScrollView { id: control diff --git a/src/imports/controls/Slider.qml b/src/imports/controls/default/Slider.qml index 6d532389..cdd72b76 100644 --- a/src/imports/controls/Slider.qml +++ b/src/imports/controls/default/Slider.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.Slider { id: control diff --git a/src/imports/controls/SpinBox.qml b/src/imports/controls/default/SpinBox.qml index d1c2ea5b..46eca36e 100644 --- a/src/imports/controls/SpinBox.qml +++ b/src/imports/controls/default/SpinBox.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.SpinBox { id: control diff --git a/src/imports/controls/SplitView.qml b/src/imports/controls/default/SplitView.qml index 9d37a83e..020d07ea 100644 --- a/src/imports/controls/SplitView.qml +++ b/src/imports/controls/default/SplitView.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.13 -import QtQuick.Templates 2.13 as T -import QtQuick.Controls 2.13 -import QtQuick.Controls.impl 2.13 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl T.SplitView { id: control diff --git a/src/imports/controls/StackView.qml b/src/imports/controls/default/StackView.qml index 3e416b87..3b388e46 100644 --- a/src/imports/controls/StackView.qml +++ b/src/imports/controls/default/StackView.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T T.StackView { id: control diff --git a/src/imports/controls/SwipeDelegate.qml b/src/imports/controls/default/SwipeDelegate.qml index 37d66bb6..ff56f6f0 100644 --- a/src/imports/controls/SwipeDelegate.qml +++ b/src/imports/controls/default/SwipeDelegate.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.SwipeDelegate { id: control diff --git a/src/imports/controls/SwipeView.qml b/src/imports/controls/default/SwipeView.qml index 7722d258..7fb8d449 100644 --- a/src/imports/controls/SwipeView.qml +++ b/src/imports/controls/default/SwipeView.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T T.SwipeView { id: control diff --git a/src/imports/controls/Switch.qml b/src/imports/controls/default/Switch.qml index f62e2502..12420bed 100644 --- a/src/imports/controls/Switch.qml +++ b/src/imports/controls/default/Switch.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl T.Switch { id: control diff --git a/src/imports/controls/SwitchDelegate.qml b/src/imports/controls/default/SwitchDelegate.qml index d6447e77..e2a9f7b5 100644 --- a/src/imports/controls/SwitchDelegate.qml +++ b/src/imports/controls/default/SwitchDelegate.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl T.SwitchDelegate { id: control diff --git a/src/imports/controls/TabBar.qml b/src/imports/controls/default/TabBar.qml index 83f6b3b2..f1b11ac2 100644 --- a/src/imports/controls/TabBar.qml +++ b/src/imports/controls/default/TabBar.qml @@ -34,8 +34,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.TabBar { id: control diff --git a/src/imports/controls/TabButton.qml b/src/imports/controls/default/TabButton.qml index f8b303ea..0935d463 100644 --- a/src/imports/controls/TabButton.qml +++ b/src/imports/controls/default/TabButton.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.TabButton { id: control diff --git a/src/imports/controls/TextArea.qml b/src/imports/controls/default/TextArea.qml index 45790e67..e6a1509e 100644 --- a/src/imports/controls/TextArea.qml +++ b/src/imports/controls/default/TextArea.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.TextArea { id: control diff --git a/src/imports/controls/TextField.qml b/src/imports/controls/default/TextField.qml index 4d9cb691..2c69d351 100644 --- a/src/imports/controls/TextField.qml +++ b/src/imports/controls/default/TextField.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.TextField { id: control diff --git a/src/imports/controls/ToolBar.qml b/src/imports/controls/default/ToolBar.qml index 1e07b6bf..6f5e54e6 100644 --- a/src/imports/controls/ToolBar.qml +++ b/src/imports/controls/default/ToolBar.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.ToolBar { id: control diff --git a/src/imports/controls/ToolButton.qml b/src/imports/controls/default/ToolButton.qml index 63aaf893..63b40233 100644 --- a/src/imports/controls/ToolButton.qml +++ b/src/imports/controls/default/ToolButton.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.ToolButton { id: control diff --git a/src/imports/controls/ToolSeparator.qml b/src/imports/controls/default/ToolSeparator.qml index 188d0758..e6d6a7f7 100644 --- a/src/imports/controls/ToolSeparator.qml +++ b/src/imports/controls/default/ToolSeparator.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.ToolSeparator { id: control diff --git a/src/imports/controls/ToolTip.qml b/src/imports/controls/default/ToolTip.qml index e0389903..933b7400 100644 --- a/src/imports/controls/ToolTip.qml +++ b/src/imports/controls/default/ToolTip.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.ToolTip { id: control diff --git a/src/imports/controls/Tumbler.qml b/src/imports/controls/default/Tumbler.qml index 4d1abdd3..89f7f056 100644 --- a/src/imports/controls/Tumbler.qml +++ b/src/imports/controls/default/Tumbler.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T T.Tumbler { id: control diff --git a/src/imports/controls/VerticalHeaderView.qml b/src/imports/controls/default/VerticalHeaderView.qml index 3fc9ca5a..21e39c39 100644 --- a/src/imports/controls/VerticalHeaderView.qml +++ b/src/imports/controls/default/VerticalHeaderView.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Templates 2.15 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T T.VerticalHeaderView { id: control diff --git a/src/imports/controls/controls.pri b/src/imports/controls/default/default.pri index 03fc0f4b..e7147af4 100644 --- a/src/imports/controls/controls.pri +++ b/src/imports/controls/default/default.pri @@ -1,14 +1,8 @@ HEADERS += \ - $$PWD/qquickdefaultbusyindicator_p.h \ - $$PWD/qquickdefaultdial_p.h \ - $$PWD/qquickdefaultprogressbar_p.h \ $$PWD/qquickdefaultstyle_p.h \ $$PWD/qquickdefaulttheme_p.h SOURCES += \ - $$PWD/qquickdefaultbusyindicator.cpp \ - $$PWD/qquickdefaultdial.cpp \ - $$PWD/qquickdefaultprogressbar.cpp \ $$PWD/qquickdefaultstyle.cpp \ $$PWD/qquickdefaulttheme.cpp diff --git a/src/imports/controls/default/default.pro b/src/imports/controls/default/default.pro new file mode 100644 index 00000000..5ecaafce --- /dev/null +++ b/src/imports/controls/default/default.pro @@ -0,0 +1,27 @@ +TARGET = qtquickcontrols2defaultstyleplugin +TARGETPATH = QtQuick/Controls/Default + +QML_IMPORT_NAME = QtQuick.Controls.Default +QML_IMPORT_VERSION = $$QT_VERSION + +QT += qml quick +QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2-private + +DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII + +include(default.pri) + +OTHER_FILES += \ + qmldir \ + $$QML_FILES + +SOURCES += \ + $$PWD/qtquickcontrols2defaultstyleplugin.cpp + +RESOURCES += \ + $$PWD/qtquickcontrols2defaultstyleplugin.qrc + +CONFIG += qmltypes no_cxx_module install_qml_files builtin_resources qtquickcompiler +load(qml_plugin) + +requires(qtConfig(quickcontrols2-default)) diff --git a/src/imports/controls/dependencies.json b/src/imports/controls/default/dependencies.json index 78029004..78029004 100644 --- a/src/imports/controls/dependencies.json +++ b/src/imports/controls/default/dependencies.json diff --git a/src/imports/controls/images/arrow-indicator.png b/src/imports/controls/default/images/arrow-indicator.png Binary files differindex d833d52c..d833d52c 100644 --- a/src/imports/controls/images/arrow-indicator.png +++ b/src/imports/controls/default/images/arrow-indicator.png diff --git a/src/imports/controls/images/arrow-indicator@2x.png b/src/imports/controls/default/images/arrow-indicator@2x.png Binary files differindex 55c7940a..55c7940a 100644 --- a/src/imports/controls/images/arrow-indicator@2x.png +++ b/src/imports/controls/default/images/arrow-indicator@2x.png diff --git a/src/imports/controls/images/arrow-indicator@3x.png b/src/imports/controls/default/images/arrow-indicator@3x.png Binary files differindex c7067c5c..c7067c5c 100644 --- a/src/imports/controls/images/arrow-indicator@3x.png +++ b/src/imports/controls/default/images/arrow-indicator@3x.png diff --git a/src/imports/controls/images/arrow-indicator@4x.png b/src/imports/controls/default/images/arrow-indicator@4x.png Binary files differindex 4c5cf351..4c5cf351 100644 --- a/src/imports/controls/images/arrow-indicator@4x.png +++ b/src/imports/controls/default/images/arrow-indicator@4x.png diff --git a/src/imports/controls/images/check.png b/src/imports/controls/default/images/check.png Binary files differindex 479a8442..479a8442 100644 --- a/src/imports/controls/images/check.png +++ b/src/imports/controls/default/images/check.png diff --git a/src/imports/controls/images/check@2x.png b/src/imports/controls/default/images/check@2x.png Binary files differindex 79663c0b..79663c0b 100644 --- a/src/imports/controls/images/check@2x.png +++ b/src/imports/controls/default/images/check@2x.png diff --git a/src/imports/controls/images/check@3x.png b/src/imports/controls/default/images/check@3x.png Binary files differindex fd0135ab..fd0135ab 100644 --- a/src/imports/controls/images/check@3x.png +++ b/src/imports/controls/default/images/check@3x.png diff --git a/src/imports/controls/images/check@4x.png b/src/imports/controls/default/images/check@4x.png Binary files differindex e7e0b640..e7e0b640 100644 --- a/src/imports/controls/images/check@4x.png +++ b/src/imports/controls/default/images/check@4x.png diff --git a/src/imports/controls/images/dial-indicator.png b/src/imports/controls/default/images/dial-indicator.png Binary files differindex 92357c51..92357c51 100644 --- a/src/imports/controls/images/dial-indicator.png +++ b/src/imports/controls/default/images/dial-indicator.png diff --git a/src/imports/controls/images/dial-indicator@2x.png b/src/imports/controls/default/images/dial-indicator@2x.png Binary files differindex f436443b..f436443b 100644 --- a/src/imports/controls/images/dial-indicator@2x.png +++ b/src/imports/controls/default/images/dial-indicator@2x.png diff --git a/src/imports/controls/images/dial-indicator@3x.png b/src/imports/controls/default/images/dial-indicator@3x.png Binary files differindex d883045b..d883045b 100644 --- a/src/imports/controls/images/dial-indicator@3x.png +++ b/src/imports/controls/default/images/dial-indicator@3x.png diff --git a/src/imports/controls/images/dial-indicator@4x.png b/src/imports/controls/default/images/dial-indicator@4x.png Binary files differindex 79477712..79477712 100644 --- a/src/imports/controls/images/dial-indicator@4x.png +++ b/src/imports/controls/default/images/dial-indicator@4x.png diff --git a/src/imports/controls/images/double-arrow.png b/src/imports/controls/default/images/double-arrow.png Binary files differindex 3ecd7f89..3ecd7f89 100644 --- a/src/imports/controls/images/double-arrow.png +++ b/src/imports/controls/default/images/double-arrow.png diff --git a/src/imports/controls/images/double-arrow@2x.png b/src/imports/controls/default/images/double-arrow@2x.png Binary files differindex eeb03e28..eeb03e28 100644 --- a/src/imports/controls/images/double-arrow@2x.png +++ b/src/imports/controls/default/images/double-arrow@2x.png diff --git a/src/imports/controls/images/double-arrow@3x.png b/src/imports/controls/default/images/double-arrow@3x.png Binary files differindex f0662d20..f0662d20 100644 --- a/src/imports/controls/images/double-arrow@3x.png +++ b/src/imports/controls/default/images/double-arrow@3x.png diff --git a/src/imports/controls/images/double-arrow@4x.png b/src/imports/controls/default/images/double-arrow@4x.png Binary files differindex 10891e91..10891e91 100644 --- a/src/imports/controls/images/double-arrow@4x.png +++ b/src/imports/controls/default/images/double-arrow@4x.png diff --git a/src/imports/controls/images/drop-indicator.png b/src/imports/controls/default/images/drop-indicator.png Binary files differindex 80c1d958..80c1d958 100644 --- a/src/imports/controls/images/drop-indicator.png +++ b/src/imports/controls/default/images/drop-indicator.png diff --git a/src/imports/controls/images/drop-indicator@2x.png b/src/imports/controls/default/images/drop-indicator@2x.png Binary files differindex 6e0f228c..6e0f228c 100644 --- a/src/imports/controls/images/drop-indicator@2x.png +++ b/src/imports/controls/default/images/drop-indicator@2x.png diff --git a/src/imports/controls/images/drop-indicator@3x.png b/src/imports/controls/default/images/drop-indicator@3x.png Binary files differindex 199752fb..199752fb 100644 --- a/src/imports/controls/images/drop-indicator@3x.png +++ b/src/imports/controls/default/images/drop-indicator@3x.png diff --git a/src/imports/controls/images/drop-indicator@4x.png b/src/imports/controls/default/images/drop-indicator@4x.png Binary files differindex 58311fbe..58311fbe 100644 --- a/src/imports/controls/images/drop-indicator@4x.png +++ b/src/imports/controls/default/images/drop-indicator@4x.png diff --git a/src/imports/controls/default/impl/CMakeLists.txt b/src/imports/controls/default/impl/CMakeLists.txt new file mode 100644 index 00000000..d90ef86b --- /dev/null +++ b/src/imports/controls/default/impl/CMakeLists.txt @@ -0,0 +1,44 @@ +# Generated from default-impl.pro. + +##################################################################### +## qtquickcontrols2defaultstyleimplplugin Plugin: +##################################################################### + +qt_add_qml_module(qtquickcontrols2defaultstyleimplplugin + URI "QtQuick.Controls.Default.impl" + VERSION "${CMAKE_PROJECT_VERSION}" + CLASSNAME QtQuickControls2DefaultStyleImplPlugin + DEPENDENCIES + QtQuick.Templates/6.0 + QtQuick.Controls/6.0 + SKIP_TYPE_REGISTRATION + GENERATE_QMLTYPES + SOURCES + qquickdefaultbusyindicator.cpp qquickdefaultbusyindicator_p.h + qquickdefaultdial.cpp qquickdefaultdial_p.h + qquickdefaultprogressbar.cpp qquickdefaultprogressbar_p.h + qtquickcontrols2defaultstyleimplplugin.cpp + DEFINES + QT_NO_CAST_FROM_ASCII + QT_NO_CAST_TO_ASCII + LIBRARIES + Qt::CorePrivate + Qt::Gui + Qt::QmlPrivate + Qt::QuickControls2ImplPrivate + Qt::QuickPrivate + Qt::QuickTemplates2Private + PUBLIC_LIBRARIES + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick +) + +#### Keys ignored in scope 1:.:.:default-impl.pro:<TRUE>: +# OTHER_FILES = "qmldir" +# QML_IMPORT_NAME = "QtQuick.Controls.Default.impl" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# QT_FOR_CONFIG = "quickcontrols2-private" +# TARGETPATH = "QtQuick/Controls/Default/impl" +# _REQUIREMENTS = "qtConfig(quickcontrols2-default)" diff --git a/src/imports/controls/default/impl/default-impl.pro b/src/imports/controls/default/impl/default-impl.pro new file mode 100644 index 00000000..e26ae9ff --- /dev/null +++ b/src/imports/controls/default/impl/default-impl.pro @@ -0,0 +1,30 @@ +TARGET = qtquickcontrols2defaultstyleimplplugin +TARGETPATH = QtQuick/Controls/Default/impl + +QML_IMPORT_NAME = QtQuick.Controls.Default.impl +QML_IMPORT_VERSION = $$QT_VERSION + +QT += qml quick +QT_PRIVATE += core-private gui qml-private quick-private quicktemplates2-private quickcontrols2impl-private +QT_FOR_CONFIG = quickcontrols2-private + +DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII + +OTHER_FILES += \ + qmldir + +HEADERS += \ + $$PWD/qquickdefaultbusyindicator_p.h \ + $$PWD/qquickdefaultdial_p.h \ + $$PWD/qquickdefaultprogressbar_p.h + +SOURCES += \ + $$PWD/qquickdefaultbusyindicator.cpp \ + $$PWD/qquickdefaultdial.cpp \ + $$PWD/qquickdefaultprogressbar.cpp \ + $$PWD/qtquickcontrols2defaultstyleimplplugin.cpp + +CONFIG += qmltypes install_qmltypes no_cxx_module +load(qml_plugin) + +requires(qtConfig(quickcontrols2-default)) diff --git a/src/imports/controls/default/impl/qmldir b/src/imports/controls/default/impl/qmldir new file mode 100644 index 00000000..95deed07 --- /dev/null +++ b/src/imports/controls/default/impl/qmldir @@ -0,0 +1,5 @@ +module QtQuick.Controls.Default.impl +plugin qtquickcontrols2defaultstyleimplplugin +classname QtQuickControls2DefaultStyleImplPlugin +depends QtQuick.Templates 6.0 +depends QtQuick.Controls 6.0 diff --git a/src/imports/controls/qquickdefaultbusyindicator.cpp b/src/imports/controls/default/impl/qquickdefaultbusyindicator.cpp index aca795d9..880d869b 100644 --- a/src/imports/controls/qquickdefaultbusyindicator.cpp +++ b/src/imports/controls/default/impl/qquickdefaultbusyindicator.cpp @@ -38,7 +38,7 @@ #include <QtQuick/private/qquickitem_p.h> #include <QtQuick/private/qsgadaptationlayer_p.h> -#include <QtQuickControls2/private/qquickanimatednode_p.h> +#include <QtQuickControls2Impl/private/qquickanimatednode_p.h> QT_BEGIN_NAMESPACE diff --git a/src/imports/controls/qquickdefaultbusyindicator_p.h b/src/imports/controls/default/impl/qquickdefaultbusyindicator_p.h index eedaf09a..5cd60ff5 100644 --- a/src/imports/controls/qquickdefaultbusyindicator_p.h +++ b/src/imports/controls/default/impl/qquickdefaultbusyindicator_p.h @@ -59,6 +59,8 @@ class QQuickDefaultBusyIndicator : public QQuickItem Q_PROPERTY(QColor pen READ pen WRITE setPen FINAL) Q_PROPERTY(QColor fill READ fill WRITE setFill FINAL) Q_PROPERTY(bool running READ isRunning WRITE setRunning) + QML_NAMED_ELEMENT(BusyIndicatorImpl) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickDefaultBusyIndicator(QQuickItem *parent = nullptr); diff --git a/src/imports/controls/qquickdefaultdial.cpp b/src/imports/controls/default/impl/qquickdefaultdial.cpp index 1653def7..1653def7 100644 --- a/src/imports/controls/qquickdefaultdial.cpp +++ b/src/imports/controls/default/impl/qquickdefaultdial.cpp diff --git a/src/imports/controls/qquickdefaultdial_p.h b/src/imports/controls/default/impl/qquickdefaultdial_p.h index 73e14321..7cdc5e9a 100644 --- a/src/imports/controls/qquickdefaultdial_p.h +++ b/src/imports/controls/default/impl/qquickdefaultdial_p.h @@ -58,6 +58,8 @@ class QQuickDefaultDial : public QQuickPaintedItem Q_OBJECT Q_PROPERTY(qreal progress READ progress WRITE setProgress FINAL) Q_PROPERTY(QColor color READ color WRITE setColor FINAL) + QML_NAMED_ELEMENT(DialImpl) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickDefaultDial(QQuickItem *parent = nullptr); diff --git a/src/imports/controls/qquickdefaultprogressbar.cpp b/src/imports/controls/default/impl/qquickdefaultprogressbar.cpp index f44065e4..fcaada94 100644 --- a/src/imports/controls/qquickdefaultprogressbar.cpp +++ b/src/imports/controls/default/impl/qquickdefaultprogressbar.cpp @@ -39,7 +39,7 @@ #include <QtCore/qeasingcurve.h> #include <QtQuick/private/qquickitem_p.h> #include <QtQuick/private/qsgadaptationlayer_p.h> -#include <QtQuickControls2/private/qquickanimatednode_p.h> +#include <QtQuickControls2Impl/private/qquickanimatednode_p.h> QT_BEGIN_NAMESPACE diff --git a/src/imports/controls/qquickdefaultprogressbar_p.h b/src/imports/controls/default/impl/qquickdefaultprogressbar_p.h index 241d0b3b..3e4955c4 100644 --- a/src/imports/controls/qquickdefaultprogressbar_p.h +++ b/src/imports/controls/default/impl/qquickdefaultprogressbar_p.h @@ -59,6 +59,8 @@ class QQuickDefaultProgressBar : public QQuickItem Q_PROPERTY(bool indeterminate READ isIndeterminate WRITE setIndeterminate FINAL) Q_PROPERTY(qreal progress READ progress WRITE setProgress FINAL) Q_PROPERTY(QColor color READ color WRITE setColor FINAL) + QML_NAMED_ELEMENT(ProgressBarImpl) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickDefaultProgressBar(QQuickItem *parent = nullptr); diff --git a/src/imports/controls/fusiondesktop/GroupBox.qml b/src/imports/controls/default/impl/qtquickcontrols2defaultstyleimplplugin.cpp index 45911ba1..734d32de 100644 --- a/src/imports/controls/fusiondesktop/GroupBox.qml +++ b/src/imports/controls/default/impl/qtquickcontrols2defaultstyleimplplugin.cpp @@ -34,10 +34,24 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +#include <QtQml/qqmlextensionplugin.h> -NativeStyle.DefaultGroupBox { +QT_BEGIN_NAMESPACE + +class QtQuickControls2DefaultStyleImplPlugin : public QQmlEngineExtensionPlugin +{ + Q_OBJECT + Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid) + +public: + QtQuickControls2DefaultStyleImplPlugin(QObject *parent = nullptr); +}; + +QtQuickControls2DefaultStyleImplPlugin::QtQuickControls2DefaultStyleImplPlugin(QObject *parent) + : QQmlEngineExtensionPlugin(parent) +{ } + +QT_END_NAMESPACE + +#include "qtquickcontrols2defaultstyleimplplugin.moc" diff --git a/src/imports/controls/default/qmldir b/src/imports/controls/default/qmldir new file mode 100644 index 00000000..3f2501b7 --- /dev/null +++ b/src/imports/controls/default/qmldir @@ -0,0 +1,132 @@ +module QtQuick.Controls.Default +plugin qtquickcontrols2defaultstyleplugin +classname QtQuickControls2DefaultStylePlugin +depends QtQuick.Controls 2.5 + +# QtQuick.Controls 2.0 (originally introduced in Qt 5.7) +AbstractButton 2.0 AbstractButton.qml +ApplicationWindow 2.0 ApplicationWindow.qml +BusyIndicator 2.0 BusyIndicator.qml +Button 2.0 Button.qml +ButtonGroup 2.0 ButtonGroup.qml +CheckBox 2.0 CheckBox.qml +CheckDelegate 2.0 CheckDelegate.qml +ComboBox 2.0 ComboBox.qml +Container 2.0 Container.qml +Control 2.0 Control.qml +Dial 2.0 Dial.qml +Drawer 2.0 Drawer.qml +Frame 2.0 Frame.qml +GroupBox 2.0 GroupBox.qml +ItemDelegate 2.0 ItemDelegate.qml +Label 2.0 Label.qml +Menu 2.0 Menu.qml +MenuItem 2.0 MenuItem.qml +Page 2.0 Page.qml +PageIndicator 2.0 PageIndicator.qml +Pane 2.0 Pane.qml +Popup 2.0 Popup.qml +ProgressBar 2.0 ProgressBar.qml +RadioButton 2.0 RadioButton.qml +RadioDelegate 2.0 RadioDelegate.qml +RangeSlider 2.0 RangeSlider.qml +ScrollBar 2.0 ScrollBar.qml +ScrollIndicator 2.0 ScrollIndicator.qml +Slider 2.0 Slider.qml +SpinBox 2.0 SpinBox.qml +StackView 2.0 StackView.qml +SwipeDelegate 2.0 SwipeDelegate.qml +SwipeView 2.0 SwipeView.qml +Switch 2.0 Switch.qml +SwitchDelegate 2.0 SwitchDelegate.qml +TabBar 2.0 TabBar.qml +TabButton 2.0 TabButton.qml +TextArea 2.0 TextArea.qml +TextField 2.0 TextField.qml +ToolBar 2.0 ToolBar.qml +ToolButton 2.0 ToolButton.qml +ToolTip 2.0 ToolTip.qml +Tumbler 2.0 Tumbler.qml + +# QtQuick.Controls 2.1 (new types in Qt 5.8) +Dialog 2.1 Dialog.qml +DialogButtonBox 2.1 DialogButtonBox.qml +MenuSeparator 2.1 MenuSeparator.qml +RoundButton 2.1 RoundButton.qml +ToolSeparator 2.1 ToolSeparator.qml + +# QtQuick.Controls 2.2 (new types in Qt 5.9) +DelayButton 2.2 DelayButton.qml +ScrollView 2.2 ScrollView.qml + +# QtQuick.Controls 2.3 (new types in Qt 5.10) +Action 2.3 Action.qml +ActionGroup 2.3 ActionGroup.qml +MenuBar 2.3 MenuBar.qml +MenuBarItem 2.3 MenuBarItem.qml + +# QtQuick.Controls 2.13 (new types in Qt 5.13) +SplitView 2.13 SplitView.qml + +# QtQuick.Controls 2.15 (new types in Qt 5.15) +HorizontalHeaderView 2.15 HorizontalHeaderView.qml +VerticalHeaderView 2.15 VerticalHeaderView.qml + +# Make sure we have types registered for Qt 6: QTBUG-85774, QTBUG-85685 +AbstractButton 6.0 AbstractButton.qml +Action 6.0 Action.qml +ActionGroup 6.0 ActionGroup.qml +ApplicationWindow 6.0 ApplicationWindow.qml +BusyIndicator 6.0 BusyIndicator.qml +Button 6.0 Button.qml +ButtonGroup 6.0 ButtonGroup.qml +CheckBox 6.0 CheckBox.qml +CheckDelegate 6.0 CheckDelegate.qml +ComboBox 6.0 ComboBox.qml +Container 6.0 Container.qml +Control 6.0 Control.qml +DelayButton 6.0 DelayButton.qml +Dial 6.0 Dial.qml +Dialog 6.0 Dialog.qml +DialogButtonBox 6.0 DialogButtonBox.qml +Drawer 6.0 Drawer.qml +Frame 6.0 Frame.qml +GroupBox 6.0 GroupBox.qml +HorizontalHeaderView 6.0 HorizontalHeaderView.qml +ItemDelegate 6.0 ItemDelegate.qml +Label 6.0 Label.qml +Menu 6.0 Menu.qml +MenuBar 6.0 MenuBar.qml +MenuBarItem 6.0 MenuBarItem.qml +MenuItem 6.0 MenuItem.qml +MenuSeparator 6.0 MenuSeparator.qml +Page 6.0 Page.qml +PageIndicator 6.0 PageIndicator.qml +Pane 6.0 Pane.qml +Popup 6.0 Popup.qml +ProgressBar 6.0 ProgressBar.qml +RadioButton 6.0 RadioButton.qml +RadioDelegate 6.0 RadioDelegate.qml +RangeSlider 6.0 RangeSlider.qml +RoundButton 6.0 RoundButton.qml +ScrollBar 6.0 ScrollBar.qml +ScrollIndicator 6.0 ScrollIndicator.qml +ScrollView 6.0 ScrollView.qml +Slider 6.0 Slider.qml +SpinBox 6.0 SpinBox.qml +SplitView 6.0 SplitView.qml +StackView 6.0 StackView.qml +SwipeDelegate 6.0 SwipeDelegate.qml +SwipeView 6.0 SwipeView.qml +Switch 6.0 Switch.qml +SwitchDelegate 6.0 SwitchDelegate.qml +TabBar 6.0 TabBar.qml +TabButton 6.0 TabButton.qml +TextArea 6.0 TextArea.qml +TextField 6.0 TextField.qml +ToolBar 6.0 ToolBar.qml +ToolButton 6.0 ToolButton.qml +ToolSeparator 6.0 ToolSeparator.qml +ToolTip 6.0 ToolTip.qml +Tumbler 6.0 Tumbler.qml +VerticalHeaderView 6.0 VerticalHeaderView.qml diff --git a/src/imports/controls/qquickdefaultstyle.cpp b/src/imports/controls/default/qquickdefaultstyle.cpp index 15c59798..15c59798 100644 --- a/src/imports/controls/qquickdefaultstyle.cpp +++ b/src/imports/controls/default/qquickdefaultstyle.cpp diff --git a/src/imports/controls/qquickdefaultstyle_p.h b/src/imports/controls/default/qquickdefaultstyle_p.h index fcd489a0..fa4e77a8 100644 --- a/src/imports/controls/qquickdefaultstyle_p.h +++ b/src/imports/controls/default/qquickdefaultstyle_p.h @@ -50,6 +50,7 @@ #include <QtCore/qobject.h> #include <QtGui/qcolor.h> +#include <QtQml/qqml.h> QT_BEGIN_NAMESPACE @@ -96,6 +97,9 @@ class QQuickDefaultStyle : public QObject Q_PROPERTY(QColor separatorColor READ separatorColor CONSTANT FINAL) Q_PROPERTY(QColor disabledDarkColor READ disabledDarkColor CONSTANT FINAL) Q_PROPERTY(QColor disabledLightColor READ disabledLightColor CONSTANT FINAL) + QML_NAMED_ELEMENT(Default) + QML_SINGLETON + QML_ADDED_IN_VERSION(2, 1) public: explicit QQuickDefaultStyle(QObject *parent = nullptr); diff --git a/src/imports/controls/qquickdefaulttheme.cpp b/src/imports/controls/default/qquickdefaulttheme.cpp index 26fb2a2f..26fb2a2f 100644 --- a/src/imports/controls/qquickdefaulttheme.cpp +++ b/src/imports/controls/default/qquickdefaulttheme.cpp diff --git a/src/imports/controls/qquickdefaulttheme_p.h b/src/imports/controls/default/qquickdefaulttheme_p.h index 3a7311c7..3a7311c7 100644 --- a/src/imports/controls/qquickdefaulttheme_p.h +++ b/src/imports/controls/default/qquickdefaulttheme_p.h diff --git a/src/imports/controls/default/qtquickcontrols2defaultstyleplugin.cpp b/src/imports/controls/default/qtquickcontrols2defaultstyleplugin.cpp new file mode 100644 index 00000000..a486658e --- /dev/null +++ b/src/imports/controls/default/qtquickcontrols2defaultstyleplugin.cpp @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "qquickdefaultstyle_p.h" +#include "qquickdefaulttheme_p.h" + +#include <QtQuickControls2/private/qquickstyleplugin_p.h> +#include <QtQuickTemplates2/private/qquicktheme_p.h> + +QT_BEGIN_NAMESPACE + +class QtQuickControls2DefaultStylePlugin: public QQuickStylePlugin +{ + Q_OBJECT + Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid) + +public: + QtQuickControls2DefaultStylePlugin(QObject *parent = nullptr); + + QString name() const override; + + void registerTypes(const char *uri) override; + + QQuickDefaultTheme theme; +}; + +QtQuickControls2DefaultStylePlugin::QtQuickControls2DefaultStylePlugin(QObject *parent) : QQuickStylePlugin(parent) +{ +} + +QString QtQuickControls2DefaultStylePlugin::name() const +{ + return QStringLiteral("Default"); +} + +void QtQuickControls2DefaultStylePlugin::registerTypes(const char *uri) +{ + QQuickStylePlugin::registerTypes(uri); + + theme.initialize(QQuickTheme::instance()); +} + +QT_END_NAMESPACE + +#include "qtquickcontrols2defaultstyleplugin.moc" diff --git a/src/imports/controls/qtquickcontrols2plugin.qrc b/src/imports/controls/default/qtquickcontrols2defaultstyleplugin.qrc index c2dd9d39..a6058dd1 100644 --- a/src/imports/controls/qtquickcontrols2plugin.qrc +++ b/src/imports/controls/default/qtquickcontrols2defaultstyleplugin.qrc @@ -1,5 +1,5 @@ <RCC> - <qresource prefix="/qt-project.org/imports/QtQuick/Controls.2"> + <qresource prefix="/qt-project.org/imports/QtQuick/Controls/Default"> <file>images/arrow-indicator.png</file> <file>images/arrow-indicator@2x.png</file> <file>images/arrow-indicator@3x.png</file> diff --git a/src/imports/controls/designer/AbstractButtonSection.qml b/src/imports/controls/designer/AbstractButtonSection.qml index e8aa39c2..1b529c98 100644 --- a/src/imports/controls/designer/AbstractButtonSection.qml +++ b/src/imports/controls/designer/AbstractButtonSection.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Section { caption: qsTr("AbstractButton") diff --git a/src/imports/controls/designer/BusyIndicatorSpecifics.qml b/src/imports/controls/designer/BusyIndicatorSpecifics.qml index 7ae927fc..7b2899d3 100644 --- a/src/imports/controls/designer/BusyIndicatorSpecifics.qml +++ b/src/imports/controls/designer/BusyIndicatorSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/ButtonSection.qml b/src/imports/controls/designer/ButtonSection.qml index fef46071..de8194da 100644 --- a/src/imports/controls/designer/ButtonSection.qml +++ b/src/imports/controls/designer/ButtonSection.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Section { id: section diff --git a/src/imports/controls/designer/ButtonSpecifics.qml b/src/imports/controls/designer/ButtonSpecifics.qml index e094b9df..5a46e72a 100644 --- a/src/imports/controls/designer/ButtonSpecifics.qml +++ b/src/imports/controls/designer/ButtonSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/CheckBoxSpecifics.qml b/src/imports/controls/designer/CheckBoxSpecifics.qml index f76aa215..d3aae9b6 100644 --- a/src/imports/controls/designer/CheckBoxSpecifics.qml +++ b/src/imports/controls/designer/CheckBoxSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/CheckDelegateSpecifics.qml b/src/imports/controls/designer/CheckDelegateSpecifics.qml index 1df55e11..8014480c 100644 --- a/src/imports/controls/designer/CheckDelegateSpecifics.qml +++ b/src/imports/controls/designer/CheckDelegateSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/CheckSection.qml b/src/imports/controls/designer/CheckSection.qml index 76cde03e..0f49fa25 100644 --- a/src/imports/controls/designer/CheckSection.qml +++ b/src/imports/controls/designer/CheckSection.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Section { SectionLayout { diff --git a/src/imports/controls/designer/ComboBoxSpecifics.qml b/src/imports/controls/designer/ComboBoxSpecifics.qml index 8a5e33b6..810f19b5 100644 --- a/src/imports/controls/designer/ComboBoxSpecifics.qml +++ b/src/imports/controls/designer/ComboBoxSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/ContainerSection.qml b/src/imports/controls/designer/ContainerSection.qml index 896804c0..15d1ddf5 100644 --- a/src/imports/controls/designer/ContainerSection.qml +++ b/src/imports/controls/designer/ContainerSection.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Section { caption: qsTr("Container") diff --git a/src/imports/controls/designer/ControlSection.qml b/src/imports/controls/designer/ControlSection.qml index 7c53ac73..31780129 100644 --- a/src/imports/controls/designer/ControlSection.qml +++ b/src/imports/controls/designer/ControlSection.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Section { caption: qsTr("Control") @@ -69,7 +69,7 @@ Section { Label { text: qsTr("Hover") - tooltip: qsTr("Whether control accepts hover evets.") + tooltip: qsTr("Whether control accepts hover events.") } SecondColumnLayout { CheckBox { @@ -95,7 +95,7 @@ Section { Label { text: qsTr("Wheel") - tooltip: qsTr("Whether control accepts wheel evets.") + tooltip: qsTr("Whether control accepts wheel events.") } SecondColumnLayout { CheckBox { diff --git a/src/imports/controls/designer/ControlSpecifics.qml b/src/imports/controls/designer/ControlSpecifics.qml index ccfd8853..3937437b 100644 --- a/src/imports/controls/designer/ControlSpecifics.qml +++ b/src/imports/controls/designer/ControlSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/DelayButtonSpecifics.qml b/src/imports/controls/designer/DelayButtonSpecifics.qml index 40b673a1..024fe589 100644 --- a/src/imports/controls/designer/DelayButtonSpecifics.qml +++ b/src/imports/controls/designer/DelayButtonSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/DialSpecifics.qml b/src/imports/controls/designer/DialSpecifics.qml index fc5b5e83..026cb2b1 100644 --- a/src/imports/controls/designer/DialSpecifics.qml +++ b/src/imports/controls/designer/DialSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width @@ -112,7 +112,7 @@ Column { } SecondColumnLayout { ComboBox { - backendValue: backendValues.orientation + backendValue: backendValues.snapMode model: [ "NoSnap", "SnapOnRelease", "SnapAlways" ] scope: "Dial" Layout.fillWidth: true @@ -143,6 +143,18 @@ Column { Layout.fillWidth: true } } + + Label { + text: qsTr("Wrap") + tooltip: qsTr("Whether the dial wraps when dragged.") + } + SecondColumnLayout { + CheckBox { + text: backendValues.wrap.valueToString + backendValue: backendValues.wrap + Layout.fillWidth: true + } + } } } diff --git a/src/imports/controls/designer/FrameSpecifics.qml b/src/imports/controls/designer/FrameSpecifics.qml index f17b6399..36739956 100644 --- a/src/imports/controls/designer/FrameSpecifics.qml +++ b/src/imports/controls/designer/FrameSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/GroupBoxSpecifics.qml b/src/imports/controls/designer/GroupBoxSpecifics.qml index 3a705bcc..f808b001 100644 --- a/src/imports/controls/designer/GroupBoxSpecifics.qml +++ b/src/imports/controls/designer/GroupBoxSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/InsetSection.qml b/src/imports/controls/designer/InsetSection.qml new file mode 100644 index 00000000..45a4df4f --- /dev/null +++ b/src/imports/controls/designer/InsetSection.qml @@ -0,0 +1,119 @@ +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import QtQuick +import HelperWidgets +import QtQuick.Layouts + +Section { + caption: qsTr("Inset") + + SectionLayout { + Label { + text: qsTr("Vertical") + } + SecondColumnLayout { + Label { + text: qsTr("Top") + tooltip: qsTr("Top inset for the background.") + width: 42 + } + SpinBox { + maximumValue: 10000 + minimumValue: -10000 + realDragRange: 5000 + decimals: 0 + backendValue: backendValues.topInset + Layout.fillWidth: true + } + Item { + width: 4 + height: 4 + } + + Label { + text: qsTr("Bottom") + tooltip: qsTr("Bottom inset for the background.") + width: 42 + } + SpinBox { + maximumValue: 10000 + minimumValue: -10000 + realDragRange: 5000 + decimals: 0 + backendValue: backendValues.bottomInset + Layout.fillWidth: true + } + } + + Label { + text: qsTr("Horizontal") + } + SecondColumnLayout { + Label { + text: qsTr("Left") + tooltip: qsTr("Left inset for the background.") + width: 42 + } + SpinBox { + maximumValue: 10000 + minimumValue: -10000 + realDragRange: 5000 + decimals: 0 + backendValue: backendValues.leftInset + Layout.fillWidth: true + } + Item { + width: 4 + height: 4 + } + + Label { + text: qsTr("Right") + tooltip: qsTr("Right inset for the background.") + width: 42 + } + SpinBox { + maximumValue: 10000 + minimumValue: -10000 + realDragRange: 5000 + decimals: 0 + backendValue: backendValues.rightInset + Layout.fillWidth: true + } + } + } +} diff --git a/src/imports/controls/designer/ItemDelegateSection.qml b/src/imports/controls/designer/ItemDelegateSection.qml index a337bcee..448a20d9 100644 --- a/src/imports/controls/designer/ItemDelegateSection.qml +++ b/src/imports/controls/designer/ItemDelegateSection.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Section { id: section diff --git a/src/imports/controls/designer/ItemDelegateSpecifics.qml b/src/imports/controls/designer/ItemDelegateSpecifics.qml index 58063980..1757521d 100644 --- a/src/imports/controls/designer/ItemDelegateSpecifics.qml +++ b/src/imports/controls/designer/ItemDelegateSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/LabelSpecifics.qml b/src/imports/controls/designer/LabelSpecifics.qml index c832f894..569b44c8 100644 --- a/src/imports/controls/designer/LabelSpecifics.qml +++ b/src/imports/controls/designer/LabelSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width @@ -79,4 +79,8 @@ Column { PaddingSection { width: parent.width } + + InsetSection { + width: parent.width + } } diff --git a/src/imports/controls/designer/PaddingSection.qml b/src/imports/controls/designer/PaddingSection.qml index a7dee28e..325c5698 100644 --- a/src/imports/controls/designer/PaddingSection.qml +++ b/src/imports/controls/designer/PaddingSection.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Section { caption: qsTr("Padding") diff --git a/src/imports/controls/designer/PageIndicatorSpecifics.qml b/src/imports/controls/designer/PageIndicatorSpecifics.qml index 042672a9..c73652e9 100644 --- a/src/imports/controls/designer/PageIndicatorSpecifics.qml +++ b/src/imports/controls/designer/PageIndicatorSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width @@ -73,6 +73,18 @@ Column { Layout.fillWidth: true } } + + Label { + text: qsTr("Interactive") + tooltip: qsTr("Whether the control is interactive.") + } + SecondColumnLayout { + CheckBox { + text: backendValues.interactive.valueToString + backendValue: backendValues.interactive + Layout.fillWidth: true + } + } } } @@ -80,10 +92,6 @@ Column { width: parent.width } - FontSection { - width: parent.width - } - PaddingSection { width: parent.width } diff --git a/src/imports/controls/designer/PageSpecifics.qml b/src/imports/controls/designer/PageSpecifics.qml index 2dca1100..965ed655 100644 --- a/src/imports/controls/designer/PageSpecifics.qml +++ b/src/imports/controls/designer/PageSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/PaneSection.qml b/src/imports/controls/designer/PaneSection.qml index 80d154c9..9dcc2097 100644 --- a/src/imports/controls/designer/PaneSection.qml +++ b/src/imports/controls/designer/PaneSection.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Section { caption: qsTr("Pane") diff --git a/src/imports/controls/designer/PaneSpecifics.qml b/src/imports/controls/designer/PaneSpecifics.qml index f17b6399..36739956 100644 --- a/src/imports/controls/designer/PaneSpecifics.qml +++ b/src/imports/controls/designer/PaneSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/ProgressBarSpecifics.qml b/src/imports/controls/designer/ProgressBarSpecifics.qml index c24d71db..aa834142 100644 --- a/src/imports/controls/designer/ProgressBarSpecifics.qml +++ b/src/imports/controls/designer/ProgressBarSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/RadioButtonSpecifics.qml b/src/imports/controls/designer/RadioButtonSpecifics.qml index 6137ad8c..df0af7e7 100644 --- a/src/imports/controls/designer/RadioButtonSpecifics.qml +++ b/src/imports/controls/designer/RadioButtonSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/RadioDelegateSpecifics.qml b/src/imports/controls/designer/RadioDelegateSpecifics.qml index 58063980..1757521d 100644 --- a/src/imports/controls/designer/RadioDelegateSpecifics.qml +++ b/src/imports/controls/designer/RadioDelegateSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/RangeSliderSpecifics.qml b/src/imports/controls/designer/RangeSliderSpecifics.qml index 79d2404f..9ff032b9 100644 --- a/src/imports/controls/designer/RangeSliderSpecifics.qml +++ b/src/imports/controls/designer/RangeSliderSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width @@ -158,6 +158,20 @@ Column { Layout.fillWidth: true } } + + Label { + text: qsTr("Touch drag threshold") + tooltip: qsTr("The threshold (in logical pixels) at which a touch drag event will be initiated.") + } + SecondColumnLayout { + SpinBox { + minimumValue: 0 + maximumValue: 10000 + decimals: 0 + backendValue: backendValues.touchDragThreshold + Layout.fillWidth: true + } + } } } diff --git a/src/imports/controls/designer/RoundButtonSpecifics.qml b/src/imports/controls/designer/RoundButtonSpecifics.qml index 2da4cda6..58d34689 100644 --- a/src/imports/controls/designer/RoundButtonSpecifics.qml +++ b/src/imports/controls/designer/RoundButtonSpecifics.qml @@ -34,14 +34,15 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width Section { + width: parent.width caption: qsTr("RoundButton") SectionLayout { @@ -51,8 +52,8 @@ Column { } SecondColumnLayout { SpinBox { - maximumValue: 9999999 - minimumValue: -9999999 + minimumValue: 0 + maximumValue: 10000 decimals: 0 backendValue: backendValues.radius Layout.fillWidth: true diff --git a/src/imports/controls/designer/ScrollViewSpecifics.qml b/src/imports/controls/designer/ScrollViewSpecifics.qml index 0f3d56d2..ae525b74 100644 --- a/src/imports/controls/designer/ScrollViewSpecifics.qml +++ b/src/imports/controls/designer/ScrollViewSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/SliderSpecifics.qml b/src/imports/controls/designer/SliderSpecifics.qml index 076d8a1c..3edc2a66 100644 --- a/src/imports/controls/designer/SliderSpecifics.qml +++ b/src/imports/controls/designer/SliderSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width @@ -143,6 +143,20 @@ Column { Layout.fillWidth: true } } + + Label { + text: qsTr("Touch drag threshold") + tooltip: qsTr("The threshold (in logical pixels) at which a touch drag event will be initiated.") + } + SecondColumnLayout { + SpinBox { + minimumValue: 0 + maximumValue: 10000 + decimals: 0 + backendValue: backendValues.touchDragThreshold + Layout.fillWidth: true + } + } } } diff --git a/src/imports/controls/designer/SpinBoxSpecifics.qml b/src/imports/controls/designer/SpinBoxSpecifics.qml index d6375d7c..9c07e8c5 100644 --- a/src/imports/controls/designer/SpinBoxSpecifics.qml +++ b/src/imports/controls/designer/SpinBoxSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width @@ -113,6 +113,18 @@ Column { Layout.fillWidth: true } } + + Label { + text: qsTr("Wrap") + tooltip: qsTr("Whether the spinbox wraps.") + } + SecondColumnLayout { + CheckBox { + text: backendValues.wrap.valueToString + backendValue: backendValues.wrap + Layout.fillWidth: true + } + } } } diff --git a/src/imports/controls/designer/StackViewSpecifics.qml b/src/imports/controls/designer/StackViewSpecifics.qml index ccfd8853..3937437b 100644 --- a/src/imports/controls/designer/StackViewSpecifics.qml +++ b/src/imports/controls/designer/StackViewSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/SwipeDelegateSpecifics.qml b/src/imports/controls/designer/SwipeDelegateSpecifics.qml index 58063980..1757521d 100644 --- a/src/imports/controls/designer/SwipeDelegateSpecifics.qml +++ b/src/imports/controls/designer/SwipeDelegateSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/SwipeViewSpecifics.qml b/src/imports/controls/designer/SwipeViewSpecifics.qml index 02cc900e..a28a2917 100644 --- a/src/imports/controls/designer/SwipeViewSpecifics.qml +++ b/src/imports/controls/designer/SwipeViewSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/SwitchDelegateSpecifics.qml b/src/imports/controls/designer/SwitchDelegateSpecifics.qml index f8c0dcc6..4236de67 100644 --- a/src/imports/controls/designer/SwitchDelegateSpecifics.qml +++ b/src/imports/controls/designer/SwitchDelegateSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/SwitchSpecifics.qml b/src/imports/controls/designer/SwitchSpecifics.qml index 6137ad8c..df0af7e7 100644 --- a/src/imports/controls/designer/SwitchSpecifics.qml +++ b/src/imports/controls/designer/SwitchSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/TabBarSpecifics.qml b/src/imports/controls/designer/TabBarSpecifics.qml index f17e8e9a..6f02cdaa 100644 --- a/src/imports/controls/designer/TabBarSpecifics.qml +++ b/src/imports/controls/designer/TabBarSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/TabButtonSpecifics.qml b/src/imports/controls/designer/TabButtonSpecifics.qml index 6137ad8c..df0af7e7 100644 --- a/src/imports/controls/designer/TabButtonSpecifics.qml +++ b/src/imports/controls/designer/TabButtonSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/TextAreaSpecifics.qml b/src/imports/controls/designer/TextAreaSpecifics.qml index a14584e7..785d7a50 100644 --- a/src/imports/controls/designer/TextAreaSpecifics.qml +++ b/src/imports/controls/designer/TextAreaSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width @@ -57,6 +57,29 @@ Column { } } + + Label { + text: qsTr("Hover") + tooltip: qsTr("Whether text area accepts hover events.") + } + SecondColumnLayout { + CheckBox { + text: backendValues.hoverEnabled.valueToString + backendValue: backendValues.hoverEnabled + Layout.fillWidth: true + } + } + } + } + + Section { + width: parent.width + caption: qsTr("Placeholder Text Color") + + ColorEditor { + caption: qsTr("Placeholder Text Color") + backendValue: backendValues.placeholderTextColor + supportGradient: false } } @@ -74,4 +97,8 @@ Column { PaddingSection { width: parent.width } + + InsetSection { + width: parent.width + } } diff --git a/src/imports/controls/designer/TextFieldSpecifics.qml b/src/imports/controls/designer/TextFieldSpecifics.qml index 67a63ec4..33a90f2a 100644 --- a/src/imports/controls/designer/TextFieldSpecifics.qml +++ b/src/imports/controls/designer/TextFieldSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width @@ -57,6 +57,29 @@ Column { } } + + Label { + text: qsTr("Hover") + tooltip: qsTr("Whether text field accepts hover events.") + } + SecondColumnLayout { + CheckBox { + text: backendValues.hoverEnabled.valueToString + backendValue: backendValues.hoverEnabled + Layout.fillWidth: true + } + } + } + } + + Section { + width: parent.width + caption: qsTr("Placeholder Text Color") + + ColorEditor { + caption: qsTr("Placeholder Text Color") + backendValue: backendValues.placeholderTextColor + supportGradient: false } } @@ -71,4 +94,8 @@ Column { PaddingSection { width: parent.width } + + InsetSection { + width: parent.width + } } diff --git a/src/imports/controls/designer/ToolBarSpecifics.qml b/src/imports/controls/designer/ToolBarSpecifics.qml index acf02e7b..2b1b17d2 100644 --- a/src/imports/controls/designer/ToolBarSpecifics.qml +++ b/src/imports/controls/designer/ToolBarSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/ToolButtonSpecifics.qml b/src/imports/controls/designer/ToolButtonSpecifics.qml index e094b9df..5a46e72a 100644 --- a/src/imports/controls/designer/ToolButtonSpecifics.qml +++ b/src/imports/controls/designer/ToolButtonSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/ToolSeparatorSpecifics.qml b/src/imports/controls/designer/ToolSeparatorSpecifics.qml index d0ebd57c..a62147ec 100644 --- a/src/imports/controls/designer/ToolSeparatorSpecifics.qml +++ b/src/imports/controls/designer/ToolSeparatorSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/TumblerSpecifics.qml b/src/imports/controls/designer/TumblerSpecifics.qml index 04507ef6..25fb9275 100644 --- a/src/imports/controls/designer/TumblerSpecifics.qml +++ b/src/imports/controls/designer/TumblerSpecifics.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.12 +import QtQuick +import HelperWidgets +import QtQuick.Layouts Column { width: parent.width diff --git a/src/imports/controls/designer/designer.pri b/src/imports/controls/designer/designer.pri index 3ad99df7..6692b203 100644 --- a/src/imports/controls/designer/designer.pri +++ b/src/imports/controls/designer/designer.pri @@ -17,6 +17,7 @@ AUX_QML_FILES += \ $$PWD/DialSpecifics.qml \ $$PWD/FrameSpecifics.qml \ $$PWD/GroupBoxSpecifics.qml \ + $$PWD/InsetSection.qml \ $$PWD/ItemDelegateSection.qml \ $$PWD/ItemDelegateSpecifics.qml \ $$PWD/LabelSpecifics.qml \ diff --git a/src/imports/controls/doc/qtquickcontrols.qdocconf b/src/imports/controls/doc/qtquickcontrols.qdocconf index d52aceb8..e77452e2 100644 --- a/src/imports/controls/doc/qtquickcontrols.qdocconf +++ b/src/imports/controls/doc/qtquickcontrols.qdocconf @@ -33,7 +33,7 @@ qhp.QtQuickControls.subprojects.examples.title = Examples qhp.QtQuickControls.subprojects.examples.indexTitle = Qt Quick Controls Examples qhp.QtQuickControls.subprojects.examples.selectors = fake:example -depends = qtcore qtgui qtdoc qtqml qtqmlmodels qtquick qtquickdialogs qtquickcontrols1 qtquickextras qmake qtsql qtwidgets qtlabscalendar qtlabsplatform qtgraphicaleffects +depends = qtcore qtgui qtdoc qtqml qtqmlmodels qtquick qtquickdialogs qtquickcontrols1 qtquickextras qtsql qtwidgets qtlabscalendar qtlabsplatform qmake qtcmake # Specify the install path under QT_INSTALL_EXAMPLES # Note: paths passed to \example command must contain the parent directory, e.g. diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-action.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-action.qml index 11c7e802..1b65a824 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-action.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-action.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { //! [action] diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-busyindicator-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-busyindicator-custom.qml index 93ba9c44..8daffed7 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-busyindicator-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-busyindicator-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls BusyIndicator { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-button-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-button-custom.qml index 3145a6ef..095657b5 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-button-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-button-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Button { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-button-icononly.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-button-icononly.qml index f6559376..36d1f848 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-button-icononly.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-button-icononly.qml @@ -25,10 +25,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Button { - icon.source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png" + icon.source: "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png" display: Button.IconOnly } diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-button-textbesideicon.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-button-textbesideicon.qml index bc99bba7..3fe434e4 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-button-textbesideicon.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-button-textbesideicon.qml @@ -25,11 +25,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Button { text: "Button" - icon.source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png" + icon.source: "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png" display: Button.TextBesideIcon } diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-button-textonly.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-button-textonly.qml index 1ff1f0a8..59054f77 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-button-textonly.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-button-textonly.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Button { text: "Button" diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-checkbox-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-checkbox-custom.qml index 806655a3..93ebe46d 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-checkbox-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-checkbox-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls CheckBox { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-checkbox-group.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-checkbox-group.qml index a32e9f5f..c5032165 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-checkbox-group.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-checkbox-group.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [1] Column { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-checkdelegate-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-checkdelegate-custom.qml index b8fbbf69..91970f52 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-checkdelegate-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-checkdelegate-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls CheckDelegate { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-combobox-accepted.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-combobox-accepted.qml index 9f2ad928..b420e3a5 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-combobox-accepted.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-combobox-accepted.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [combobox] ComboBox { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-combobox-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-combobox-custom.qml index b902dab1..fea7e6d5 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-combobox-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-combobox-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ComboBox { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-combobox-valuerole.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-combobox-valuerole.qml index 4d7ae3d3..a4c40c0f 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-combobox-valuerole.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-combobox-valuerole.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.14 -import QtQuick.Controls 2.14 +import QtQuick +import QtQuick.Controls //! [file] ApplicationWindow { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-delaybutton-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-delaybutton-custom.qml index 4bcbaa67..0b86f1d0 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-delaybutton-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-delaybutton-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls DelayButton { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-dial-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-dial-custom.qml index 0221350d..170e9ccf 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-dial-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-dial-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Dial { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-dialog-modal.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-dialog-modal.qml index c8a71e5b..d60e4e30 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-dialog-modal.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-dialog-modal.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { width: dialog.implicitWidth diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-dialog-modeless.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-dialog-modeless.qml index be0e6f02..6acb74e5 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-dialog-modeless.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-dialog-modeless.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { width: dialog.implicitWidth diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-dialog.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-dialog.qml index 2953c371..13fbb0e8 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-dialog.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-dialog.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { width: dialog.implicitWidth diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-dialogbuttonbox-attached.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-dialogbuttonbox-attached.qml index f71f91cb..45a0b9e9 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-dialogbuttonbox-attached.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-dialogbuttonbox-attached.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [1] DialogButtonBox { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-dialogbuttonbox.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-dialogbuttonbox.qml index adfd8035..bcfd405b 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-dialogbuttonbox.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-dialogbuttonbox.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [1] DialogButtonBox { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-frame-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-frame-custom.qml index 0e90f0aa..798f95da 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-frame-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-frame-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Frame { background: Rectangle { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-frame.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-frame.qml index 8f8f9c23..71b9b310 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-frame.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-frame.qml @@ -25,9 +25,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls //! [1] Frame { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-groupbox-checkable.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-groupbox-checkable.qml index 5f6ee591..91689d9f 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-groupbox-checkable.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-groupbox-checkable.qml @@ -25,9 +25,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls //! [1] GroupBox { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-groupbox-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-groupbox-custom.qml index 7ccb55c3..e3355b23 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-groupbox-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-groupbox-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls GroupBox { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-groupbox.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-groupbox.qml index 67c68cf3..e9f1c7dc 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-groupbox.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-groupbox.qml @@ -25,9 +25,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls //! [1] GroupBox { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-headerview-simple.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-headerview-simple.qml index 07ec84d8..6878904f 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-headerview-simple.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-headerview-simple.qml @@ -49,9 +49,9 @@ ****************************************************************************/ //![file] -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import Qt.labs.qmlmodels 1.0 +import QtQuick +import QtQuick.Controls +import Qt.labs.qmlmodels ApplicationWindow { visible: true diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-itemdelegate-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-itemdelegate-custom.qml index d6ec5f78..fd52b46f 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-itemdelegate-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-itemdelegate-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ItemDelegate { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-itemdelegate.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-itemdelegate.qml index 8f483ed9..70d6104f 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-itemdelegate.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-itemdelegate.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [1] ListView { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-label-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-label-custom.qml index e984fc71..cc88d00f 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-label-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-label-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Label { text: qsTr("Label") diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-label.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-label.qml index fb68bb04..c492af50 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-label.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-label.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [1] Label { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-material-accent.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-material-accent.qml index 5191efce..aa4c62b8 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-material-accent.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-material-accent.qml @@ -25,10 +25,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls +import QtQuick.Controls.Material Pane { padding: 4 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-material-background.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-material-background.qml index cdbc16cc..f64e48d2 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-material-background.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-material-background.qml @@ -25,9 +25,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Material Pane { padding: 4 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-material-elevation.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-material-elevation.qml index e15bc216..f9e189f1 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-material-elevation.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-material-elevation.qml @@ -25,9 +25,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Material Pane { contentWidth: 120 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-material-foreground.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-material-foreground.qml index 003b5624..070576f5 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-material-foreground.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-material-foreground.qml @@ -25,9 +25,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Material Pane { padding: 4 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-material-theme.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-material-theme.qml index 955290fd..586433c3 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-material-theme.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-material-theme.qml @@ -25,9 +25,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Material Pane { padding: 10 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-material-variant.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-material-variant.qml index ce8a0356..1283fb43 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-material-variant.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-material-variant.qml @@ -25,10 +25,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Layouts 1.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Material +import QtQuick.Layouts Pane { implicitWidth: 400 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-menu-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-menu-custom.qml index 5a702b9f..3e766e8a 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-menu-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-menu-custom.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-menubar-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-menubar-custom.qml index ea27acf6..4b3d641e 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-menubar-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-menubar-custom.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-menubar.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-menubar.qml index 87371877..7ae22ae8 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-menubar.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-menubar.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [begin] ApplicationWindow { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-menuseparator-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-menuseparator-custom.qml index ea2d6ae7..fa7fa14a 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-menuseparator-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-menuseparator-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { id: window diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-menuseparator.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-menuseparator.qml index 0712c5fa..cd5d5441 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-menuseparator.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-menuseparator.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { id: window diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-overlay-modal.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-overlay-modal.qml index 8913e5bd..9751f057 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-overlay-modal.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-overlay-modal.qml @@ -25,9 +25,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Window 2.2 +import QtQuick +import QtQuick.Controls +import QtQuick.Window Item { id: root diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-overlay-modeless.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-overlay-modeless.qml index 96fb606f..a4951d13 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-overlay-modeless.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-overlay-modeless.qml @@ -25,9 +25,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Window 2.2 +import QtQuick +import QtQuick.Controls +import QtQuick.Window Item { id: root diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-overview.cmake b/src/imports/controls/doc/snippets/qtquickcontrols2-overview.cmake new file mode 100644 index 00000000..2e9d2f3f --- /dev/null +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-overview.cmake @@ -0,0 +1,4 @@ +#! [0] +find_package(Qt6 COMPONENTS QuickControls2 REQUIRED) +target_link_libraries(mytarget Qt::QuickControls2) +#! [0] diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-pageindicator-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-pageindicator-custom.qml index 7f828d93..ba0d2db9 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-pageindicator-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-pageindicator-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls PageIndicator { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-pageindicator-interactive.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-pageindicator-interactive.qml index 0a40c8b0..8f2221ee 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-pageindicator-interactive.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-pageindicator-interactive.qml @@ -25,7 +25,7 @@ ** ****************************************************************************/ -import QtQuick.Controls 2.12 +import QtQuick.Controls Pane { //! [1] diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-pageindicator.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-pageindicator.qml index 0eeec4d8..b3912efe 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-pageindicator.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-pageindicator.qml @@ -24,8 +24,8 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [1] PageIndicator { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-pane-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-pane-custom.qml index dfe2eaa4..855423c4 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-pane-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-pane-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Pane { background: Rectangle { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-pane.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-pane.qml index 9ed7a5b4..a8c8672e 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-pane.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-pane.qml @@ -25,9 +25,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls //! [1] Pane { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-popup-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-popup-custom.qml index 9408cd66..ad5481e3 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-popup-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-popup-custom.qml @@ -25,9 +25,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Window 2.2 +import QtQuick +import QtQuick.Controls +import QtQuick.Window Item { id: root diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-popup.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-popup.qml index 6d46b810..76ec20cd 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-popup.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-popup.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { //! [centerIn] diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-progressbar-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-progressbar-custom.qml index e23c1438..d9616157 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-progressbar-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-progressbar-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ProgressBar { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-radiobutton-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-radiobutton-custom.qml index 1361f09e..b33ce6b6 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-radiobutton-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-radiobutton-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls RadioButton { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-radiodelegate-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-radiodelegate-custom.qml index 27ad9da2..ed3dae67 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-radiodelegate-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-radiodelegate-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls RadioDelegate { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-rangeslider-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-rangeslider-custom.qml index b8510ddd..fcddc400 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-rangeslider-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-rangeslider-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls RangeSlider { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-roundbutton.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-roundbutton.qml index 4f727344..201ee244 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-roundbutton.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-roundbutton.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [1] RoundButton { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollbar-active.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollbar-active.qml index a4a66e93..bd417955 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollbar-active.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollbar-active.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { width: 100 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollbar-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollbar-custom.qml index 5efcb461..0aea2572 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollbar-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollbar-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollBar { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollbar-non-attached.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollbar-non-attached.qml index 43e2853e..7ca66615 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollbar-non-attached.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollbar-non-attached.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { width: 200 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollbar-policy.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollbar-policy.qml index 942722a5..c608dac4 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollbar-policy.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollbar-policy.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [1] Flickable { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollindicator-active.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollindicator-active.qml index 6cb749e6..719b9393 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollindicator-active.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollindicator-active.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { width: 100 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollindicator-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollindicator-custom.qml index 616c877d..b18d391c 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollindicator-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollindicator-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollIndicator { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollindicator-non-attached.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollindicator-non-attached.qml index f1b99bca..0d6c4529 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollindicator-non-attached.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollindicator-non-attached.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { width: 200 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollview-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollview-custom.qml index 9010f0af..1a80d263 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollview-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollview-custom.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { width: 200 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollview-interactive.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollview-interactive.qml index 26b0b5c4..83861720 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollview-interactive.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollview-interactive.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [file] ScrollView { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollview-listview.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollview-listview.qml index 6907d674..f1fbb627 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollview-listview.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollview-listview.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { id: root diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollview-policy.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollview-policy.qml index f5c33975..78098eaa 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollview-policy.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollview-policy.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [file] ScrollView { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollview.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollview.qml index cbdf9eb8..dce07b39 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-scrollview.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-scrollview.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Rectangle { id: root diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-slider-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-slider-custom.qml index 7745892d..c3d7f4b2 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-slider-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-slider-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Slider { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-spinbox-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-spinbox-custom.qml index ad05d463..89f6244f 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-spinbox-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-spinbox-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls SpinBox { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-spinbox-double.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-spinbox-double.qml index 6f1bb55b..852ee5be 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-spinbox-double.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-spinbox-double.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [1] SpinBox { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-spinbox-textual.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-spinbox-textual.qml index dd58b5ab..c1879d93 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-spinbox-textual.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-spinbox-textual.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.14 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [1] SpinBox { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-spinbox.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-spinbox.qml index 32d39b9f..87722749 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-spinbox.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-spinbox.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [1] SpinBox { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-splitview-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-splitview-custom.qml index 96e8ad2f..570c3acd 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-splitview-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-splitview-custom.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.13 -import QtQuick.Controls 2.13 +import QtQuick +import QtQuick.Controls Item { width: 200 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-stackview-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-stackview-custom.qml index cfeab812..64cdb3ce 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-stackview-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-stackview-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls StackView { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-stackview-visible.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-stackview-visible.qml index a9298460..0e1a0dd4 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-stackview-visible.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-stackview-visible.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [1] StackView { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-swipedelegate-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-swipedelegate-custom.qml index 432fcc87..c89b96a4 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-swipedelegate-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-swipedelegate-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls SwipeDelegate { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-swipedelegate-transition.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-swipedelegate-transition.qml index 6b71a5f0..dc0d58a2 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-swipedelegate-transition.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-swipedelegate-transition.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [1] SwipeDelegate { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-swipedelegate.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-swipedelegate.qml index 6e02c057..dcab908e 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-swipedelegate.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-swipedelegate.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [1] ListView { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-swipeview-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-swipeview-custom.qml index 40833dde..b8cddb31 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-swipeview-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-swipeview-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls SwipeView { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-swipeview-indicator.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-swipeview-indicator.qml index 1869a032..98b381f1 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-swipeview-indicator.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-swipeview-indicator.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { width: 200 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-switch-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-switch-custom.qml index a7dd2eea..9adccbed 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-switch-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-switch-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Switch { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-switchdelegate-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-switchdelegate-custom.qml index 19060824..bea35f29 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-switchdelegate-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-switchdelegate-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls SwitchDelegate { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-tabbar-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-tabbar-custom.qml index c06c44c7..eba48256 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-tabbar-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-tabbar-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls TabBar { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-tabbar-explicit.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-tabbar-explicit.qml index 01f0d875..5f548255 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-tabbar-explicit.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-tabbar-explicit.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { width: 360 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-tabbar-flickable.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-tabbar-flickable.qml index 628aef80..8e41bbf0 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-tabbar-flickable.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-tabbar-flickable.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { width: 360 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-tabbar.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-tabbar.qml index cbf6d728..7a02f375 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-tabbar.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-tabbar.qml @@ -25,9 +25,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls Column { width: 300 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-tabbutton.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-tabbutton.qml index 0aae7d15..e7240db4 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-tabbutton.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-tabbutton.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [1] TabBar { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-textarea-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-textarea-custom.qml index 3ce856ac..e4f1b397 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-textarea-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-textarea-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls TextArea { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-textarea-scrollable.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-textarea-scrollable.qml index e16c6bbf..52d9996e 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-textarea-scrollable.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-textarea-scrollable.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { width: 100 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-textfield-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-textfield-custom.qml index e48e0d65..8f1aba23 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-textfield-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-textfield-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls TextField { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-textfield-disabled.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-textfield-disabled.qml index 18634d5e..3d92b647 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-textfield-disabled.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-textfield-disabled.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls TextField { width: 80 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-textfield-focused.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-textfield-focused.qml index 5d8e067b..f2761988 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-textfield-focused.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-textfield-focused.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls TextField { width: 80 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-textfield-normal.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-textfield-normal.qml index b0a04674..c9208c0e 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-textfield-normal.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-textfield-normal.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls TextField { width: 80 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-toolbar-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-toolbar-custom.qml index 3d26e510..2cb9d0c5 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-toolbar-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-toolbar-custom.qml @@ -25,9 +25,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls //! [file] ToolBar { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-toolbar.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-toolbar.qml index e1c8c580..2ed5c23f 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-toolbar.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-toolbar.qml @@ -25,9 +25,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls Item { width: children[0].implicitWidth * 2 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-toolbutton-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-toolbutton-custom.qml index cf5bc70e..8eb27430 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-toolbutton-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-toolbutton-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ToolButton { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-toolseparator-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-toolseparator-custom.qml index e26986cc..f630256d 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-toolseparator-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-toolseparator-custom.qml @@ -25,10 +25,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Window 2.2 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Window +import QtQuick.Controls //! [file] ToolBar { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-toolseparator.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-toolseparator.qml index 2ccfb439..514b97fa 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-toolseparator.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-toolseparator.qml @@ -25,10 +25,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Window 2.2 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Window +import QtQuick.Controls //! [1] ToolBar { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip-custom.qml index 6a0a5b38..7b40c974 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { ToolTip { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip-hover.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip-hover.qml index 812b5ba2..6d1ee4c4 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip-hover.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip-hover.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [1] Button { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip-pressandhold.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip-pressandhold.qml index 927d29c3..cea49553 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip-pressandhold.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip-pressandhold.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [1] Button { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip-slider.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip-slider.qml index 508a417e..5f408224 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip-slider.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip-slider.qml @@ -25,9 +25,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.2 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Item { id: root diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip.qml index a4e92f88..2e5231dc 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-tooltip.qml @@ -25,9 +25,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.2 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Item { id: root diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-tumbler-custom.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-tumbler-custom.qml index ee054106..792e0e14 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-tumbler-custom.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-tumbler-custom.qml @@ -26,8 +26,8 @@ ****************************************************************************/ //! [file] -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Tumbler { id: control diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-tumbler-listView.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-tumbler-listView.qml index 7d16d139..54ce78af 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-tumbler-listView.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-tumbler-listView.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [contentItem] Tumbler { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-tumbler-pathView.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-tumbler-pathView.qml index 61e4ce01..408b7479 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-tumbler-pathView.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-tumbler-pathView.qml @@ -25,8 +25,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls //! [contentItem] Tumbler { diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-tumbler-timePicker.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-tumbler-timePicker.qml index 13130f97..d9edb2cb 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-tumbler-timePicker.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-tumbler-timePicker.qml @@ -26,9 +26,9 @@ ****************************************************************************/ //! [tumbler] -import QtQuick 2.12 -import QtQuick.Window 2.2 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Rectangle { width: frame.implicitWidth + 10 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-universal-accent.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-universal-accent.qml index c54a18a0..f429359e 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-universal-accent.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-universal-accent.qml @@ -25,10 +25,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls +import QtQuick.Controls.Universal Pane { padding: 10 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-universal-background.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-universal-background.qml index f22b5308..558618e6 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-universal-background.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-universal-background.qml @@ -25,9 +25,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Universal Pane { padding: 10 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-universal-foreground.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-universal-foreground.qml index 8c5b99a3..39a292d8 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-universal-foreground.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-universal-foreground.qml @@ -25,9 +25,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Universal Pane { padding: 10 diff --git a/src/imports/controls/doc/snippets/qtquickcontrols2-universal-theme.qml b/src/imports/controls/doc/snippets/qtquickcontrols2-universal-theme.qml index 1f0d6bd0..b55bf188 100644 --- a/src/imports/controls/doc/snippets/qtquickcontrols2-universal-theme.qml +++ b/src/imports/controls/doc/snippets/qtquickcontrols2-universal-theme.qml @@ -25,9 +25,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Universal Pane { padding: 10 diff --git a/src/imports/controls/doc/src/includes/qquickicon.qdocinc b/src/imports/controls/doc/src/includes/qquickicon.qdocinc index ba7cede9..beef5624 100644 --- a/src/imports/controls/doc/src/includes/qquickicon.qdocinc +++ b/src/imports/controls/doc/src/includes/qquickicon.qdocinc @@ -44,5 +44,7 @@ \li This property specifies whether the icon should be cached. The default value is true. + + This property was introduced in QtQuick.Controls 2.13. \endtable //! [grouped-properties] diff --git a/src/imports/controls/doc/src/qtquickcontrols2-cppclasses.qdoc b/src/imports/controls/doc/src/qtquickcontrols2-cppclasses.qdoc index 4a8ecfea..a9147086 100644 --- a/src/imports/controls/doc/src/qtquickcontrols2-cppclasses.qdoc +++ b/src/imports/controls/doc/src/qtquickcontrols2-cppclasses.qdoc @@ -31,6 +31,7 @@ \title Qt Quick Controls C++ Classes \keyword Qt Quick Controls 2 C++ Classes \ingroup modules + \qtcmakepackage QuickControls2 \qtvariable quickcontrols2 \brief Provides classes for setting up the controls from C++. diff --git a/src/imports/controls/doc/src/qtquickcontrols2-customize.qdoc b/src/imports/controls/doc/src/qtquickcontrols2-customize.qdoc index 5901663a..58138a07 100644 --- a/src/imports/controls/doc/src/qtquickcontrols2-customize.qdoc +++ b/src/imports/controls/doc/src/qtquickcontrols2-customize.qdoc @@ -58,7 +58,7 @@ \c Button.qml. This file can be found in the following path in your Qt installation: - \c {$QTDIR/qml/QtQuick/Controls.2/Button.qml} + \c {$QTDIR/qml/QtQuick/Controls/Default/Button.qml} After doing that, we'll simply add the following line: @@ -112,7 +112,7 @@ \section2 Definition of a Style In Qt Quick Controls, a style is essentially an interchangeable set of - QML files within a single directory. There are three requirements for a style + QML files within a single directory. There are four requirements for a style to be \l {Using Styles in Qt Quick Controls}{usable}: \list @@ -125,21 +125,37 @@ If we instead used the corresponding type from the \l {Qt Quick Controls} {QtQuick.Controls} import as we did in the previous section, it would not work: the control we were defining would try to derive from itself. - \li The files must be in a directory in the filesystem or in the - \l {The Qt Resource System}{resource system}. + \li A \l {Module Definition qmldir Files}{qmldir} file must exist alongside + the QML file(s). Below is an example of a simple \c qmldir file for a style that + provides a button: - For example, these are all valid paths to a style: + \badcode + module MyStyle + Button 2.15 Button.qml + \endcode + + The directory structure for such a style looks like this: + + \badcode + MyStyle + ├─── Button.qml + └─── qmldir + \endcode + \li The files must be in a directory that is findable via the \l {QML Import Path}. + + For example, if the path to \e MyStyle directory mentioned above was + \c /home/user/MyApp/MyStyle, then \c /home/user/MyApp must be added to + the QML import path. + + To \l {Using Styles in Qt Quick Controls}{use} \e MyStyle in \e MyApp, + refer to it by name: \list - \li \c {./myapp -style /home/absolute/path/to/my/style} - \li \c {./myapp -style :/mystyle} - \li \c {./myapp -style relative/path/to/my/style} - \li \c {./myapp -style MyStyle} + \li \c {./MyApp -style MyStyle} \endlist - The third and fourth paths will be looked up within the QML engine's import path - list. This is the same as what happens when you pass \c Material as the style, - for example. + The style name must match the casing of the style directory; passing + \e mystyle or \e MYSTYLE is not supported. \endlist By default, the styling system uses the Default style as a fallback for @@ -302,7 +318,7 @@ style will illustrate the elevation with a drop shadow; the higher the elevation, the larger the shadow. - The first step is to \l {Qt Creator: Creating Qt Quick Projects}{create a new Qt Quick + The first step is to \l {Creating Qt Quick Projects}{create a new Qt Quick Controls 2 application} in Qt Creator. After that, we \l {Qt Creator: Creating C++ Classes}{add a C++ type} that stores the elevation. Since the type will be used for every control supported by our style, and because @@ -390,6 +406,8 @@ qmlRegisterUncreatableType<MyStyle>("MyStyle", 1, 0, "MyStyle", "MyStyle is an attached property"); QQmlApplicationEngine engine; + // Make the directory containing our style known to the QML engine. + engine.addImportPath(":/"); engine.load(QUrl(QLatin1String("qrc:/main.qml"))); return app.exec(); @@ -397,7 +415,7 @@ \endcode We then copy \c Button.qml from the Default style in - \c {$QTDIR/qml/QtQuick/Controls.2/} into a new \c myproject folder in our + \c {$QTDIR/qml/QtQuick/Controls/Default/} into a new \c myproject folder in our project directory. Add the newly copied \c Button.qml to \c qml.qrc, which is the resource file that contains our QML files. @@ -465,7 +483,7 @@ One button has no elevation, and the other has an elevation of \c 10. With that in place, we can run our example. To tell the application to - use our new style, we pass \c {-style :/mystyle} as an application + use our new style, we pass \c {-style MyStyle} as an application argument, but there are \l {Using Styles in Qt Quick Controls}{many ways} to specify the style to use. @@ -488,9 +506,7 @@ \section2 Customizing ApplicationWindow ApplicationWindow consists of one visual item: - \l {ApplicationWindow::background}{background}. It is also possible - to customize the \l {ApplicationWindow::overlay}{modal} and - \l {ApplicationWindow::overlay}{modeless} items. + \l {ApplicationWindow::background}{background}. \code \QtMinorVersion import QtQuick 2.\1 @@ -505,14 +521,6 @@ GradientStop { position: 1; color: "#c1bbf9" } } } - - overlay.modal: Rectangle { - color: "#8f28282a" - } - - overlay.modeless: Rectangle { - color: "#2f28282a" - } } \endcode diff --git a/src/imports/controls/doc/src/qtquickcontrols2-environment.qdoc b/src/imports/controls/doc/src/qtquickcontrols2-environment.qdoc index 37be7b4c..4484acf3 100644 --- a/src/imports/controls/doc/src/qtquickcontrols2-environment.qdoc +++ b/src/imports/controls/doc/src/qtquickcontrols2-environment.qdoc @@ -41,18 +41,12 @@ \li \c QT_QUICK_CONTROLS_STYLE \li Specifies the default \l {Styling Qt Quick Controls}{Qt Quick Controls style}. The value can be either one of the built-in styles, for example \c "Material", - or the path to a custom style such as \c ":/mystyle". + or a custom style such as \c "MyStyle". \row \li \c QT_QUICK_CONTROLS_FALLBACK_STYLE \li Specifies a fallback style for \l {Creating a Custom Style}{custom styles}. The value can be one of the built-in styles, for example \c "Material", \row - \li \c QT_QUICK_CONTROLS_STYLE_PATH - \li Specifies a list of additional paths that are used to lookup \l {Styling Qt Quick Controls} - {Qt Quick Controls styles}. Multiple path entries must be \l {QDir::listSeparator}{separated} - by \c ':' under Unix and \c ';' under Windows. By default, styles are looked up from - \c $QML2_IMPORT_PATH/QtQuick/Controls.2. - \row \li \c QT_QUICK_CONTROLS_CONF \li Specifies the location of the \l {Qt Quick Controls configuration file}. By default, the configuration file is loaded from the application's diff --git a/src/imports/controls/doc/src/qtquickcontrols2-fileselectors.qdoc b/src/imports/controls/doc/src/qtquickcontrols2-fileselectors.qdoc index d73d1abe..adda3b15 100644 --- a/src/imports/controls/doc/src/qtquickcontrols2-fileselectors.qdoc +++ b/src/imports/controls/doc/src/qtquickcontrols2-fileselectors.qdoc @@ -40,8 +40,7 @@ can assume the context, that is, a specific style. This typically leads to some code duplication, but on the other hand, cuts the aforementioned hard dependency to the style, and leads to simpler and more efficient - QML code. The same technique is used to implement the \l {Styling Qt - Quick Controls}{Qt Quick Controls styles}. + QML code. The following example demonstrates a custom rounded button that has a styled drop shadow in the \l {Material Style}{Material style}, and looks diff --git a/src/imports/controls/doc/src/qtquickcontrols2-icons.qdoc b/src/imports/controls/doc/src/qtquickcontrols2-icons.qdoc index f8cb1f52..190aafd9 100644 --- a/src/imports/controls/doc/src/qtquickcontrols2-icons.qdoc +++ b/src/imports/controls/doc/src/qtquickcontrols2-icons.qdoc @@ -44,6 +44,7 @@ \li \c icon.width \li \c icon.height \li \c icon.color + \li \c icon.cache \endlist Theme icons are referenced by a name, and regular icons by a source URL. Both diff --git a/src/imports/controls/doc/src/qtquickcontrols2-imagine.qdoc b/src/imports/controls/doc/src/qtquickcontrols2-imagine.qdoc index ac2e9cc1..bca826fd 100644 --- a/src/imports/controls/doc/src/qtquickcontrols2-imagine.qdoc +++ b/src/imports/controls/doc/src/qtquickcontrols2-imagine.qdoc @@ -87,11 +87,6 @@ \li active \li .9.png (or .png) \row - \li - \li overlay - \li modal - \li .9.png (or .png) - \row \li \l BusyIndicator \li animation \li disabled, running, mirrored, hovered diff --git a/src/imports/controls/doc/src/qtquickcontrols2-index.qdoc b/src/imports/controls/doc/src/qtquickcontrols2-index.qdoc index fee009e6..c0047c30 100644 --- a/src/imports/controls/doc/src/qtquickcontrols2-index.qdoc +++ b/src/imports/controls/doc/src/qtquickcontrols2-index.qdoc @@ -41,7 +41,10 @@ Qt Quick Controls comes with a selection customizable styles. See \l {Styling Qt Quick Controls} for more details. - \section1 Prerequisites + + \section1 Using the Module + + \section2 QML API The \l{Qt Quick Controls QML Types}{QML types} can be imported into your application using the following import statement in your \c {.qml} file: @@ -50,22 +53,27 @@ import QtQuick.Controls 2.\1 \endqml - The \l{Qt Quick Controls C++ Classes}{C++ classes} can be included into - your application using the following include statement: + \section2 C++ API - \code - #include <QtQuickControls2> - \endcode + Using the \l{Qt Quick Controls C++ Classes}{C++ API} requires linking against the module library, + either directly or through other dependencies. + Several build tools have dedicated support for this, including CMake and qmake. - To link against the corresponding C++ libraries, add the following to your - qmake project file: + \section3 Building with CMake + Use the \c find_package() command to locate the needed module components in the Qt6 package: + + \snippet qtquickcontrols2-overview.cmake 0 + + See also the \l{Build with CMake} overview. + + \section3 Building with qmake + To configure the module for building with qmake, + add the module as a value of the QT variable in the project's .pro file: \code QT += quickcontrols2 \endcode - For more details, see \l {Getting Started with Qt Quick Controls}. - \section2 Building From Source When building from source, ensure that the \l {Qt Graphical Effects} module @@ -145,6 +153,7 @@ \section1 Topics \list + \li \l{Getting Started with Qt Quick Controls}{Getting Started} \li \l{Qt Quick Controls Guidelines}{Guidelines} \li \l{Styling Qt Quick Controls}{Styling} \li \l{Icons in Qt Quick Controls}{Icons} diff --git a/src/imports/controls/fusion/.prev_CMakeLists.txt b/src/imports/controls/fusion/.prev_CMakeLists.txt index 2fb5b2a1..b9d5e58b 100644 --- a/src/imports/controls/fusion/.prev_CMakeLists.txt +++ b/src/imports/controls/fusion/.prev_CMakeLists.txt @@ -4,18 +4,14 @@ ## qtquickcontrols2fusionstyleplugin Plugin: ##################################################################### -add_qml_module(qtquickcontrols2fusionstyleplugin - TARGET_PATH "QtQuick/Controls.2/Fusion" +qt_add_qml_module(qtquickcontrols2fusionstyleplugin URI "QtQuick.Controls.Fusion" - VERSION "2.${CMAKE_PROJECT_VERSION_MINOR}" + VERSION "${CMAKE_PROJECT_VERSION}" CLASSNAME QtQuickControls2FusionStylePlugin - DEPENDENCIES - QtQuick.Controls/2.5 - SKIP_TYPE_REGISTRATION + IMPORTS + QtQuick.Controls.Default/auto + GENERATE_QMLTYPES SOURCES - qquickfusionbusyindicator.cpp qquickfusionbusyindicator_p.h - qquickfusiondial.cpp qquickfusiondial_p.h - qquickfusionknob.cpp qquickfusionknob_p.h qquickfusionstyle.cpp qquickfusionstyle_p.h qquickfusiontheme.cpp qquickfusiontheme_p.h qtquickcontrols2fusionstyleplugin.cpp @@ -52,29 +48,27 @@ set(qtquickcontrols2fusionstyle_resource_files "images/progressmask@4x.png" ) -add_qt_resource(qtquickcontrols2fusionstyleplugin "qtquickcontrols2fusionstyle" +qt_add_resource(qtquickcontrols2fusionstyleplugin "qtquickcontrols2fusionstyle" PREFIX - "/qt-project.org/imports/QtQuick/Controls.2/Fusion" + "/qt-project.org/imports/QtQuick/Controls/Fusion" FILES ${qtquickcontrols2fusionstyle_resource_files} ) #### Keys ignored in scope 1:.:.:fusion.pro:<TRUE>: -# IMPORT_NAME = "QtQuick.Controls.Fusion" -# IMPORT_VERSION = "2.$$QT_MINOR_VERSION" # OTHER_FILES = "qmldir" "$$QML_FILES" -# TARGETPATH = "QtQuick/Controls.2/Fusion" +# QML_IMPORT_NAME = "QtQuick.Controls.Fusion" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# TARGETPATH = "QtQuick/Controls/Fusion" # _REQUIREMENTS = "qtConfig(quickcontrols2-fusion)" set(qml_files "ApplicationWindow.qml" "BusyIndicator.qml" "Button.qml" - "ButtonPanel.qml" "CheckBox.qml" "CheckDelegate.qml" - "CheckIndicator.qml" "ComboBox.qml" "DelayButton.qml" "Dial.qml" @@ -83,6 +77,7 @@ set(qml_files "Drawer.qml" "Frame.qml" "GroupBox.qml" + "HorizontalHeaderView.qml" "ItemDelegate.qml" "Label.qml" "Menu.qml" @@ -97,19 +92,15 @@ set(qml_files "ProgressBar.qml" "RadioButton.qml" "RadioDelegate.qml" - "RadioIndicator.qml" "RangeSlider.qml" "RoundButton.qml" "ScrollBar.qml" "ScrollIndicator.qml" "Slider.qml" - "SliderGroove.qml" - "SliderHandle.qml" "SpinBox.qml" "SplitView.qml" "SwipeDelegate.qml" "SwitchDelegate.qml" - "SwitchIndicator.qml" "Switch.qml" "TabBar.qml" "TabButton.qml" @@ -120,6 +111,151 @@ set(qml_files "ToolSeparator.qml" "ToolTip.qml" "Tumbler.qml" + "VerticalHeaderView.qml" +) +set_source_files_properties(ApplicationWindow.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(BusyIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Button.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(CheckBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(CheckDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ComboBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(DelayButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.2;6.0" +) +set_source_files_properties(Dial.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Dialog.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(DialogButtonBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(Drawer.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Frame.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(GroupBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(HorizontalHeaderView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.15;6.0" +) +set_source_files_properties(ItemDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Label.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Menu.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(MenuBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.3;6.0" +) +set_source_files_properties(MenuBarItem.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.3;6.0" +) +set_source_files_properties(MenuItem.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(MenuSeparator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(Page.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(PageIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Pane.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Popup.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ProgressBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(RadioButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(RadioDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(RangeSlider.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(RoundButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(ScrollBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ScrollIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Slider.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SpinBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SplitView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.13;6.0" +) +set_source_files_properties(SwipeDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SwitchDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Switch.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(TabBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(TabButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(TextArea.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(TextField.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ToolBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ToolButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ToolSeparator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(ToolTip.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Tumbler.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(VerticalHeaderView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.15;6.0" ) qt6_target_qml_files(qtquickcontrols2fusionstyleplugin diff --git a/src/imports/controls/fusion/ApplicationWindow.qml b/src/imports/controls/fusion/ApplicationWindow.qml index 30c921cb..090d361c 100644 --- a/src/imports/controls/fusion/ApplicationWindow.qml +++ b/src/imports/controls/fusion/ApplicationWindow.qml @@ -34,22 +34,14 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.2 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Templates as T +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.ApplicationWindow { id: window color: window.palette.window - - overlay.modal: Rectangle { - color: Fusion.topShadow - } - - overlay.modeless: Rectangle { - color: Fusion.topShadow - } } diff --git a/src/imports/controls/fusion/BusyIndicator.qml b/src/imports/controls/fusion/BusyIndicator.qml index 554c3368..e5f5b75a 100644 --- a/src/imports/controls/fusion/BusyIndicator.qml +++ b/src/imports/controls/fusion/BusyIndicator.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.BusyIndicator { id: control diff --git a/src/imports/controls/fusion/Button.qml b/src/imports/controls/fusion/Button.qml index 7822634d..f0a8bfcd 100644 --- a/src/imports/controls/fusion/Button.qml +++ b/src/imports/controls/fusion/Button.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.Button { id: control diff --git a/src/imports/controls/fusion/CMakeLists.txt b/src/imports/controls/fusion/CMakeLists.txt index 59b06842..9d93aa89 100644 --- a/src/imports/controls/fusion/CMakeLists.txt +++ b/src/imports/controls/fusion/CMakeLists.txt @@ -5,17 +5,14 @@ ##################################################################### qt_add_qml_module(qtquickcontrols2fusionstyleplugin - TARGET_PATH "QtQuick/Controls.2/Fusion" + TARGET_PATH "QtQuick/Controls/Fusion" URI "QtQuick.Controls.Fusion" - VERSION "2.${CMAKE_PROJECT_VERSION_MINOR}" + VERSION "6.0" # special case CLASSNAME QtQuickControls2FusionStylePlugin - DEPENDENCIES - QtQuick.Controls/2.5 - SKIP_TYPE_REGISTRATION + IMPORTS + QtQuick.Controls.Default/auto + GENERATE_QMLTYPES SOURCES - qquickfusionbusyindicator.cpp qquickfusionbusyindicator_p.h - qquickfusiondial.cpp qquickfusiondial_p.h - qquickfusionknob.cpp qquickfusionknob_p.h qquickfusionstyle.cpp qquickfusionstyle_p.h qquickfusiontheme.cpp qquickfusiontheme_p.h qtquickcontrols2fusionstyleplugin.cpp @@ -54,27 +51,25 @@ set(qtquickcontrols2fusionstyle_resource_files qt_add_resource(qtquickcontrols2fusionstyleplugin "qtquickcontrols2fusionstyle" PREFIX - "/qt-project.org/imports/QtQuick/Controls.2/Fusion" + "/qt-project.org/imports/QtQuick/Controls/Fusion" FILES ${qtquickcontrols2fusionstyle_resource_files} ) #### Keys ignored in scope 1:.:.:fusion.pro:<TRUE>: -# IMPORT_NAME = "QtQuick.Controls.Fusion" -# IMPORT_VERSION = "2.$$QT_MINOR_VERSION" # OTHER_FILES = "qmldir" "$$QML_FILES" -# TARGETPATH = "QtQuick/Controls.2/Fusion" +# QML_IMPORT_NAME = "QtQuick.Controls.Fusion" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# TARGETPATH = "QtQuick/Controls/Fusion" # _REQUIREMENTS = "qtConfig(quickcontrols2-fusion)" set(qml_files "ApplicationWindow.qml" "BusyIndicator.qml" "Button.qml" - "ButtonPanel.qml" "CheckBox.qml" "CheckDelegate.qml" - "CheckIndicator.qml" "ComboBox.qml" "DelayButton.qml" "Dial.qml" @@ -98,19 +93,15 @@ set(qml_files "ProgressBar.qml" "RadioButton.qml" "RadioDelegate.qml" - "RadioIndicator.qml" "RangeSlider.qml" "RoundButton.qml" "ScrollBar.qml" "ScrollIndicator.qml" "Slider.qml" - "SliderGroove.qml" - "SliderHandle.qml" "SpinBox.qml" "SplitView.qml" "SwipeDelegate.qml" "SwitchDelegate.qml" - "SwitchIndicator.qml" "Switch.qml" "TabBar.qml" "TabButton.qml" @@ -124,166 +115,148 @@ set(qml_files "VerticalHeaderView.qml" ) set_source_files_properties(ApplicationWindow.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(BusyIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Button.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(ButtonPanel.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(CheckBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(CheckDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(CheckIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ComboBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(DelayButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.2;6.0" ) set_source_files_properties(Dial.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Dialog.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(DialogButtonBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(Drawer.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Frame.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(GroupBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(HorizontalHeaderView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.15;6.0" ) set_source_files_properties(ItemDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Label.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Menu.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(MenuBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.3;6.0" ) set_source_files_properties(MenuBarItem.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.3;6.0" ) set_source_files_properties(MenuItem.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(MenuSeparator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(Page.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(PageIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Pane.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Popup.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ProgressBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(RadioButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(RadioDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(RadioIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(RangeSlider.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(RoundButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(ScrollBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ScrollIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Slider.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(SliderGroove.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(SliderHandle.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SpinBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SplitView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.13;6.0" ) set_source_files_properties(SwipeDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SwitchDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(SwitchIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Switch.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(TabBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(TabButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(TextArea.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(TextField.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ToolBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ToolButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ToolSeparator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(ToolTip.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Tumbler.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(VerticalHeaderView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.15;6.0" ) qt6_target_qml_files(qtquickcontrols2fusionstyleplugin diff --git a/src/imports/controls/fusion/CheckBox.qml b/src/imports/controls/fusion/CheckBox.qml index edb4c77f..fec41f22 100644 --- a/src/imports/controls/fusion/CheckBox.qml +++ b/src/imports/controls/fusion/CheckBox.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.CheckBox { id: control diff --git a/src/imports/controls/fusion/CheckDelegate.qml b/src/imports/controls/fusion/CheckDelegate.qml index 1b97b1fd..81c5da0b 100644 --- a/src/imports/controls/fusion/CheckDelegate.qml +++ b/src/imports/controls/fusion/CheckDelegate.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.CheckDelegate { id: control diff --git a/src/imports/controls/fusion/ComboBox.qml b/src/imports/controls/fusion/ComboBox.qml index d0e4b564..b8ad32e9 100644 --- a/src/imports/controls/fusion/ComboBox.qml +++ b/src/imports/controls/fusion/ComboBox.qml @@ -34,13 +34,13 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Window 2.15 -import QtQuick.Templates 2.15 as T -import QtQuick.Controls 2.15 -import QtQuick.Controls.impl 2.15 -import QtQuick.Controls.Fusion 2.15 -import QtQuick.Controls.Fusion.impl 2.15 +import QtQuick +import QtQuick.Window +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.ComboBox { id: control @@ -66,7 +66,7 @@ T.ComboBox { x: control.mirrored ? control.padding : control.width - width - control.padding y: control.topPadding + (control.availableHeight - height) / 2 color: control.editable ? control.palette.text : control.palette.buttonText - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/Fusion/images/arrow.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/images/arrow.png" width: 20 fillMode: Image.Pad } diff --git a/src/imports/controls/fusion/DelayButton.qml b/src/imports/controls/fusion/DelayButton.qml index 622de111..9a9371fb 100644 --- a/src/imports/controls/fusion/DelayButton.qml +++ b/src/imports/controls/fusion/DelayButton.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.DelayButton { id: control diff --git a/src/imports/controls/fusion/Dial.qml b/src/imports/controls/fusion/Dial.qml index 3c22c66a..94558e3b 100644 --- a/src/imports/controls/fusion/Dial.qml +++ b/src/imports/controls/fusion/Dial.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.Dial { id: control diff --git a/src/imports/controls/fusion/Dialog.qml b/src/imports/controls/fusion/Dialog.qml index 79e179d9..600777d9 100644 --- a/src/imports/controls/fusion/Dialog.qml +++ b/src/imports/controls/fusion/Dialog.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.Dialog { id: control diff --git a/src/imports/controls/fusion/DialogButtonBox.qml b/src/imports/controls/fusion/DialogButtonBox.qml index a0b0f243..101c0ba3 100644 --- a/src/imports/controls/fusion/DialogButtonBox.qml +++ b/src/imports/controls/fusion/DialogButtonBox.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.DialogButtonBox { id: control diff --git a/src/imports/controls/fusion/Drawer.qml b/src/imports/controls/fusion/Drawer.qml index 5a23dde1..2f7e510e 100644 --- a/src/imports/controls/fusion/Drawer.qml +++ b/src/imports/controls/fusion/Drawer.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.Drawer { id: control diff --git a/src/imports/controls/fusion/Frame.qml b/src/imports/controls/fusion/Frame.qml index c2df6351..d0d7d8f2 100644 --- a/src/imports/controls/fusion/Frame.qml +++ b/src/imports/controls/fusion/Frame.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.Frame { id: control diff --git a/src/imports/controls/fusion/GroupBox.qml b/src/imports/controls/fusion/GroupBox.qml index 3df3e1e6..501db7ac 100644 --- a/src/imports/controls/fusion/GroupBox.qml +++ b/src/imports/controls/fusion/GroupBox.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.GroupBox { id: control diff --git a/src/imports/controls/fusion/HorizontalHeaderView.qml b/src/imports/controls/fusion/HorizontalHeaderView.qml index bbd9dc3f..ef4db4b5 100644 --- a/src/imports/controls/fusion/HorizontalHeaderView.qml +++ b/src/imports/controls/fusion/HorizontalHeaderView.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Templates 2.15 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T T.HorizontalHeaderView { id: control diff --git a/src/imports/controls/fusion/ItemDelegate.qml b/src/imports/controls/fusion/ItemDelegate.qml index 4c15ae68..a90dc8e4 100644 --- a/src/imports/controls/fusion/ItemDelegate.qml +++ b/src/imports/controls/fusion/ItemDelegate.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.ItemDelegate { id: control diff --git a/src/imports/controls/fusion/Label.qml b/src/imports/controls/fusion/Label.qml index 9821f71c..ddd1634c 100644 --- a/src/imports/controls/fusion/Label.qml +++ b/src/imports/controls/fusion/Label.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.Label { id: control diff --git a/src/imports/controls/fusion/Menu.qml b/src/imports/controls/fusion/Menu.qml index 8bace6b9..8ce88e37 100644 --- a/src/imports/controls/fusion/Menu.qml +++ b/src/imports/controls/fusion/Menu.qml @@ -34,13 +34,13 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 -import QtQuick.Window 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl +import QtQuick.Window T.Menu { id: control diff --git a/src/imports/controls/fusion/MenuBar.qml b/src/imports/controls/fusion/MenuBar.qml index 4ba71fee..1f54d6f2 100644 --- a/src/imports/controls/fusion/MenuBar.qml +++ b/src/imports/controls/fusion/MenuBar.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.MenuBar { id: control diff --git a/src/imports/controls/fusion/MenuBarItem.qml b/src/imports/controls/fusion/MenuBarItem.qml index 9fa685dc..c12bd344 100644 --- a/src/imports/controls/fusion/MenuBarItem.qml +++ b/src/imports/controls/fusion/MenuBarItem.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.MenuBarItem { id: control diff --git a/src/imports/controls/fusion/MenuItem.qml b/src/imports/controls/fusion/MenuItem.qml index a428fbc8..2f179b17 100644 --- a/src/imports/controls/fusion/MenuItem.qml +++ b/src/imports/controls/fusion/MenuItem.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.MenuItem { id: control @@ -81,7 +81,7 @@ T.MenuItem { visible: control.subMenu rotation: control.mirrored ? 90 : -90 color: control.down || control.hovered || control.highlighted ? Fusion.highlightedText(control.palette) : control.palette.text - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/Fusion/images/arrow.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/images/arrow.png" fillMode: Image.Pad } diff --git a/src/imports/controls/fusion/MenuSeparator.qml b/src/imports/controls/fusion/MenuSeparator.qml index 522ada15..1ff0dfa8 100644 --- a/src/imports/controls/fusion/MenuSeparator.qml +++ b/src/imports/controls/fusion/MenuSeparator.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.MenuSeparator { id: control diff --git a/src/imports/controls/fusion/Page.qml b/src/imports/controls/fusion/Page.qml index ce4b1d54..3353f155 100644 --- a/src/imports/controls/fusion/Page.qml +++ b/src/imports/controls/fusion/Page.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.Page { id: control diff --git a/src/imports/controls/fusion/PageIndicator.qml b/src/imports/controls/fusion/PageIndicator.qml index 5679b14f..907a86cb 100644 --- a/src/imports/controls/fusion/PageIndicator.qml +++ b/src/imports/controls/fusion/PageIndicator.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.PageIndicator { id: control diff --git a/src/imports/controls/fusion/Pane.qml b/src/imports/controls/fusion/Pane.qml index 28be3b47..a05092dc 100644 --- a/src/imports/controls/fusion/Pane.qml +++ b/src/imports/controls/fusion/Pane.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.Pane { id: control diff --git a/src/imports/controls/fusion/Popup.qml b/src/imports/controls/fusion/Popup.qml index 25a8c5ae..75923a1f 100644 --- a/src/imports/controls/fusion/Popup.qml +++ b/src/imports/controls/fusion/Popup.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.Popup { id: control diff --git a/src/imports/controls/fusion/ProgressBar.qml b/src/imports/controls/fusion/ProgressBar.qml index 5deade58..91ccbf19 100644 --- a/src/imports/controls/fusion/ProgressBar.qml +++ b/src/imports/controls/fusion/ProgressBar.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.ProgressBar { id: control @@ -85,7 +85,7 @@ T.ProgressBar { mirror: control.mirrored fillMode: Image.TileHorizontally - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/Fusion/images/progressmask.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/images/progressmask.png" color: Color.transparent(Qt.lighter(Fusion.highlight(control.palette), 1.2), 160 / 255) visible: control.indeterminate diff --git a/src/imports/controls/fusion/RadioButton.qml b/src/imports/controls/fusion/RadioButton.qml index a940aff3..81100e9c 100644 --- a/src/imports/controls/fusion/RadioButton.qml +++ b/src/imports/controls/fusion/RadioButton.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.RadioButton { id: control diff --git a/src/imports/controls/fusion/RadioDelegate.qml b/src/imports/controls/fusion/RadioDelegate.qml index e8555a17..701a58f7 100644 --- a/src/imports/controls/fusion/RadioDelegate.qml +++ b/src/imports/controls/fusion/RadioDelegate.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.RadioDelegate { id: control diff --git a/src/imports/controls/fusion/RangeSlider.qml b/src/imports/controls/fusion/RangeSlider.qml index 7edbed57..3a635459 100644 --- a/src/imports/controls/fusion/RangeSlider.qml +++ b/src/imports/controls/fusion/RangeSlider.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.RangeSlider { id: control diff --git a/src/imports/controls/fusion/RoundButton.qml b/src/imports/controls/fusion/RoundButton.qml index 59bf4c16..3fa27783 100644 --- a/src/imports/controls/fusion/RoundButton.qml +++ b/src/imports/controls/fusion/RoundButton.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.RoundButton { id: control diff --git a/src/imports/controls/fusion/ScrollBar.qml b/src/imports/controls/fusion/ScrollBar.qml index 93b58f0e..4288adb5 100644 --- a/src/imports/controls/fusion/ScrollBar.qml +++ b/src/imports/controls/fusion/ScrollBar.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.ScrollBar { id: control diff --git a/src/imports/controls/fusion/ScrollIndicator.qml b/src/imports/controls/fusion/ScrollIndicator.qml index efe0b2fa..c8ffb076 100644 --- a/src/imports/controls/fusion/ScrollIndicator.qml +++ b/src/imports/controls/fusion/ScrollIndicator.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.ScrollIndicator { id: control diff --git a/src/imports/controls/fusion/Slider.qml b/src/imports/controls/fusion/Slider.qml index d212a233..9d0dbb7a 100644 --- a/src/imports/controls/fusion/Slider.qml +++ b/src/imports/controls/fusion/Slider.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.Slider { id: control diff --git a/src/imports/controls/fusion/SpinBox.qml b/src/imports/controls/fusion/SpinBox.qml index 41754f63..a94451cb 100644 --- a/src/imports/controls/fusion/SpinBox.qml +++ b/src/imports/controls/fusion/SpinBox.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.SpinBox { id: control @@ -98,7 +98,7 @@ T.SpinBox { height: parent.height opacity: enabled ? 1.0 : 0.5 color: control.palette.buttonText - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/Fusion/images/arrow.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/images/arrow.png" fillMode: Image.Pad } } @@ -121,7 +121,7 @@ T.SpinBox { height: parent.height opacity: enabled ? 1.0 : 0.5 color: control.palette.buttonText - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/Fusion/images/arrow.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/images/arrow.png" fillMode: Image.Pad } } diff --git a/src/imports/controls/fusion/SplitView.qml b/src/imports/controls/fusion/SplitView.qml index 6a04b4da..8da522e6 100644 --- a/src/imports/controls/fusion/SplitView.qml +++ b/src/imports/controls/fusion/SplitView.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.13 -import QtQuick.Templates 2.13 as T -import QtQuick.Controls 2.13 -import QtQuick.Controls.impl 2.13 -import QtQuick.Controls.Fusion 2.13 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion T.SplitView { id: control diff --git a/src/imports/controls/fusion/SwipeDelegate.qml b/src/imports/controls/fusion/SwipeDelegate.qml index 48c531ea..107900b0 100644 --- a/src/imports/controls/fusion/SwipeDelegate.qml +++ b/src/imports/controls/fusion/SwipeDelegate.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.SwipeDelegate { id: control diff --git a/src/imports/controls/fusion/Switch.qml b/src/imports/controls/fusion/Switch.qml index bf18003a..2ff19073 100644 --- a/src/imports/controls/fusion/Switch.qml +++ b/src/imports/controls/fusion/Switch.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.Switch { id: control diff --git a/src/imports/controls/fusion/SwitchDelegate.qml b/src/imports/controls/fusion/SwitchDelegate.qml index 67c41924..3c3c24e3 100644 --- a/src/imports/controls/fusion/SwitchDelegate.qml +++ b/src/imports/controls/fusion/SwitchDelegate.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.SwitchDelegate { id: control diff --git a/src/imports/controls/fusion/TabBar.qml b/src/imports/controls/fusion/TabBar.qml index 233a2acd..1707b305 100644 --- a/src/imports/controls/fusion/TabBar.qml +++ b/src/imports/controls/fusion/TabBar.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.TabBar { id: control diff --git a/src/imports/controls/fusion/TabButton.qml b/src/imports/controls/fusion/TabButton.qml index 136503b6..3ee09eeb 100644 --- a/src/imports/controls/fusion/TabButton.qml +++ b/src/imports/controls/fusion/TabButton.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.TabButton { id: control diff --git a/src/imports/controls/fusion/TextArea.qml b/src/imports/controls/fusion/TextArea.qml index c7107ac4..336c699e 100644 --- a/src/imports/controls/fusion/TextArea.qml +++ b/src/imports/controls/fusion/TextArea.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.TextArea { id: control diff --git a/src/imports/controls/fusion/TextField.qml b/src/imports/controls/fusion/TextField.qml index d5b5788d..187aebaf 100644 --- a/src/imports/controls/fusion/TextField.qml +++ b/src/imports/controls/fusion/TextField.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.TextField { id: control diff --git a/src/imports/controls/fusion/ToolBar.qml b/src/imports/controls/fusion/ToolBar.qml index fa069c0b..73324de0 100644 --- a/src/imports/controls/fusion/ToolBar.qml +++ b/src/imports/controls/fusion/ToolBar.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.ToolBar { id: control diff --git a/src/imports/controls/fusion/ToolButton.qml b/src/imports/controls/fusion/ToolButton.qml index 4c00b402..65626ba1 100644 --- a/src/imports/controls/fusion/ToolButton.qml +++ b/src/imports/controls/fusion/ToolButton.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.ToolButton { id: control diff --git a/src/imports/controls/fusion/ToolSeparator.qml b/src/imports/controls/fusion/ToolSeparator.qml index 5d366652..6051e6fe 100644 --- a/src/imports/controls/fusion/ToolSeparator.qml +++ b/src/imports/controls/fusion/ToolSeparator.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.ToolSeparator { id: control diff --git a/src/imports/controls/fusion/ToolTip.qml b/src/imports/controls/fusion/ToolTip.qml index b505e2c9..bd1f3dd5 100644 --- a/src/imports/controls/fusion/ToolTip.qml +++ b/src/imports/controls/fusion/ToolTip.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.ToolTip { id: control diff --git a/src/imports/controls/fusion/Tumbler.qml b/src/imports/controls/fusion/Tumbler.qml index c26bd145..cbb84423 100644 --- a/src/imports/controls/fusion/Tumbler.qml +++ b/src/imports/controls/fusion/Tumbler.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl T.Tumbler { id: control diff --git a/src/imports/controls/fusion/VerticalHeaderView.qml b/src/imports/controls/fusion/VerticalHeaderView.qml index b220cdf2..7eeb65f1 100644 --- a/src/imports/controls/fusion/VerticalHeaderView.qml +++ b/src/imports/controls/fusion/VerticalHeaderView.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Templates 2.15 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T T.VerticalHeaderView { id: control diff --git a/src/imports/controls/fusion/fusion.pri b/src/imports/controls/fusion/fusion.pri index bdc413fd..5bc3fbce 100644 --- a/src/imports/controls/fusion/fusion.pri +++ b/src/imports/controls/fusion/fusion.pri @@ -1,14 +1,8 @@ HEADERS += \ - $$PWD/qquickfusionbusyindicator_p.h \ - $$PWD/qquickfusiondial_p.h \ - $$PWD/qquickfusionknob_p.h \ $$PWD/qquickfusionstyle_p.h \ $$PWD/qquickfusiontheme_p.h SOURCES += \ - $$PWD/qquickfusionbusyindicator.cpp \ - $$PWD/qquickfusiondial.cpp \ - $$PWD/qquickfusionknob.cpp \ $$PWD/qquickfusionstyle.cpp \ $$PWD/qquickfusiontheme.cpp @@ -16,10 +10,8 @@ QML_FILES += \ $$PWD/ApplicationWindow.qml \ $$PWD/BusyIndicator.qml \ $$PWD/Button.qml \ - $$PWD/ButtonPanel.qml \ $$PWD/CheckBox.qml \ $$PWD/CheckDelegate.qml \ - $$PWD/CheckIndicator.qml \ $$PWD/ComboBox.qml \ $$PWD/DelayButton.qml \ $$PWD/Dial.qml \ @@ -43,19 +35,15 @@ QML_FILES += \ $$PWD/ProgressBar.qml \ $$PWD/RadioButton.qml \ $$PWD/RadioDelegate.qml \ - $$PWD/RadioIndicator.qml \ $$PWD/RangeSlider.qml \ $$PWD/RoundButton.qml \ $$PWD/ScrollBar.qml \ $$PWD/ScrollIndicator.qml \ $$PWD/Slider.qml \ - $$PWD/SliderGroove.qml \ - $$PWD/SliderHandle.qml \ $$PWD/SpinBox.qml \ $$PWD/SplitView.qml \ $$PWD/SwipeDelegate.qml \ $$PWD/SwitchDelegate.qml \ - $$PWD/SwitchIndicator.qml \ $$PWD/Switch.qml \ $$PWD/TabBar.qml \ $$PWD/TabButton.qml \ diff --git a/src/imports/controls/fusion/fusion.pro b/src/imports/controls/fusion/fusion.pro index 663636da..eceaf0f5 100644 --- a/src/imports/controls/fusion/fusion.pro +++ b/src/imports/controls/fusion/fusion.pro @@ -1,8 +1,8 @@ TARGET = qtquickcontrols2fusionstyleplugin -TARGETPATH = QtQuick/Controls.2/Fusion +TARGETPATH = QtQuick/Controls/Fusion -IMPORT_NAME = QtQuick.Controls.Fusion -IMPORT_VERSION = 2.$$QT_MINOR_VERSION +QML_IMPORT_NAME = QtQuick.Controls.Fusion +QML_IMPORT_VERSION = $$QT_VERSION QT += qml quick QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2-private @@ -21,7 +21,7 @@ SOURCES += \ RESOURCES += \ $$PWD/qtquickcontrols2fusionstyle.qrc -CONFIG += no_cxx_module install_qml_files builtin_resources qtquickcompiler +CONFIG += qmltypes no_cxx_module install_qml_files builtin_resources qtquickcompiler load(qml_plugin) requires(qtConfig(quickcontrols2-fusion)) diff --git a/src/imports/controls/fusion/ButtonPanel.qml b/src/imports/controls/fusion/impl/ButtonPanel.qml index 125aa2f3..bb0bd45e 100644 --- a/src/imports/controls/fusion/ButtonPanel.qml +++ b/src/imports/controls/fusion/impl/ButtonPanel.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl Rectangle { id: panel diff --git a/src/imports/controls/fusion/impl/CMakeLists.txt b/src/imports/controls/fusion/impl/CMakeLists.txt new file mode 100644 index 00000000..628c5f90 --- /dev/null +++ b/src/imports/controls/fusion/impl/CMakeLists.txt @@ -0,0 +1,73 @@ +# Generated from fusion-impl.pro. + +##################################################################### +## qtquickcontrols2fusionstyleimplplugin Plugin: +##################################################################### + +qt_add_qml_module(qtquickcontrols2fusionstyleimplplugin + URI "QtQuick.Controls.Fusion.impl" + VERSION "${CMAKE_PROJECT_VERSION}" + CLASSNAME QtQuickControls2FusionStyleImpPlugin + GENERATE_QMLTYPES + SOURCES + qquickfusionbusyindicator.cpp qquickfusionbusyindicator_p.h + qquickfusiondial.cpp qquickfusiondial_p.h + qquickfusionknob.cpp qquickfusionknob_p.h + qtquickcontrols2fusionstyleimplplugin.cpp + DEFINES + QT_NO_CAST_FROM_ASCII + QT_NO_CAST_TO_ASCII + LIBRARIES + Qt::CorePrivate + Qt::Gui + Qt::QmlPrivate + Qt::QuickControls2ImplPrivate + Qt::QuickPrivate + Qt::QuickTemplates2Private + PUBLIC_LIBRARIES + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick +) + +#### Keys ignored in scope 1:.:.:fusion-impl.pro:<TRUE>: +# OTHER_FILES = "qmldir" "$$QML_FILES" +# QML_FILES = "$$PWD/ButtonPanel.qml" "$$PWD/CheckIndicator.qml" "$$PWD/RadioIndicator.qml" "$$PWD/SliderGroove.qml" "$$PWD/SliderHandle.qml" "$$PWD/SwitchIndicator.qml" +# QML_IMPORT_NAME = "QtQuick.Controls.Fusion.impl" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# QT_FOR_CONFIG = "quickcontrols2-private" +# TARGETPATH = "QtQuick/Controls/Fusion/impl" +# _REQUIREMENTS = "qtConfig(quickcontrols2-fusion)" + +set(qml_files + "ButtonPanel.qml" + "CheckIndicator.qml" + "RadioIndicator.qml" + "SliderGroove.qml" + "SliderHandle.qml" + "SwitchIndicator.qml" +) +set_source_files_properties(ButtonPanel.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.3" +) +set_source_files_properties(CheckIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.3" +) +set_source_files_properties(RadioIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.3" +) +set_source_files_properties(SliderGroove.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.3" +) +set_source_files_properties(SliderHandle.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.3" +) +set_source_files_properties(SwitchIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.3" +) + +qt6_target_qml_files(qtquickcontrols2fusionstyleimplplugin + FILES + ${qml_files} +) diff --git a/src/imports/controls/fusion/CheckIndicator.qml b/src/imports/controls/fusion/impl/CheckIndicator.qml index 7dcfee30..75d1c5d6 100644 --- a/src/imports/controls/fusion/CheckIndicator.qml +++ b/src/imports/controls/fusion/impl/CheckIndicator.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl Rectangle { id: indicator @@ -66,7 +66,7 @@ Rectangle { x: (parent.width - width) / 2 y: (parent.height - height) / 2 color: Color.transparent(indicator.checkMarkColor, 210 / 255) - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/Fusion/images/checkmark.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/images/checkmark.png" visible: indicator.control.checkState === Qt.Checked || (indicator.control.checked && indicator.control.checkState === undefined) } diff --git a/src/imports/controls/fusion/RadioIndicator.qml b/src/imports/controls/fusion/impl/RadioIndicator.qml index c73cd49f..3dac4d7a 100644 --- a/src/imports/controls/fusion/RadioIndicator.qml +++ b/src/imports/controls/fusion/impl/RadioIndicator.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl Rectangle { id: indicator diff --git a/src/imports/controls/fusion/SliderGroove.qml b/src/imports/controls/fusion/impl/SliderGroove.qml index 381a02b5..62dc05c7 100644 --- a/src/imports/controls/fusion/SliderGroove.qml +++ b/src/imports/controls/fusion/impl/SliderGroove.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl Rectangle { id: groove diff --git a/src/imports/controls/fusion/SliderHandle.qml b/src/imports/controls/fusion/impl/SliderHandle.qml index c53af57e..e56642f4 100644 --- a/src/imports/controls/fusion/SliderHandle.qml +++ b/src/imports/controls/fusion/impl/SliderHandle.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl Rectangle { id: handle diff --git a/src/imports/controls/fusion/SwitchIndicator.qml b/src/imports/controls/fusion/impl/SwitchIndicator.qml index ae7c89a0..8d1a8096 100644 --- a/src/imports/controls/fusion/SwitchIndicator.qml +++ b/src/imports/controls/fusion/impl/SwitchIndicator.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Fusion.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Fusion +import QtQuick.Controls.Fusion.impl Rectangle { id: indicator diff --git a/src/imports/controls/fusion/impl/fusion-impl.pro b/src/imports/controls/fusion/impl/fusion-impl.pro new file mode 100644 index 00000000..40abe7ac --- /dev/null +++ b/src/imports/controls/fusion/impl/fusion-impl.pro @@ -0,0 +1,39 @@ +TARGET = qtquickcontrols2fusionstyleimplplugin +TARGETPATH = QtQuick/Controls/Fusion/impl + +QML_IMPORT_NAME = QtQuick.Controls.Fusion.impl +QML_IMPORT_VERSION = $$QT_VERSION + +QT += qml quick +QT_PRIVATE += core-private gui qml-private quick-private quicktemplates2-private quickcontrols2impl-private +QT_FOR_CONFIG = quickcontrols2-private + +DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII + +QML_FILES += \ + $$PWD/ButtonPanel.qml \ + $$PWD/CheckIndicator.qml \ + $$PWD/RadioIndicator.qml \ + $$PWD/SliderGroove.qml \ + $$PWD/SliderHandle.qml \ + $$PWD/SwitchIndicator.qml + +OTHER_FILES += \ + qmldir \ + $$QML_FILES + +HEADERS += \ + $$PWD/qquickfusionbusyindicator_p.h \ + $$PWD/qquickfusiondial_p.h \ + $$PWD/qquickfusionknob_p.h + +SOURCES += \ + $$PWD/qquickfusionbusyindicator.cpp \ + $$PWD/qquickfusiondial.cpp \ + $$PWD/qquickfusionknob.cpp \ + $$PWD/qtquickcontrols2fusionstyleimplplugin.cpp + +CONFIG += qmltypes install_qmltypes no_cxx_module install_qml_files builtin_resources qtquickcompiler +load(qml_plugin) + +requires(qtConfig(quickcontrols2-fusion)) diff --git a/src/imports/controls/fusion/impl/qmldir b/src/imports/controls/fusion/impl/qmldir new file mode 100644 index 00000000..172f7ae5 --- /dev/null +++ b/src/imports/controls/fusion/impl/qmldir @@ -0,0 +1,10 @@ +module QtQuick.Controls.Fusion.impl +plugin qtquickcontrols2fusionstyleimplplugin +classname QtQuickControls2FusionStyleImpPlugin + +ButtonPanel 2.3 ButtonPanel.qml +CheckIndicator 2.3 CheckIndicator.qml +RadioIndicator 2.3 RadioIndicator.qml +SliderGroove 2.3 SliderGroove.qml +SliderHandle 2.3 SliderHandle.qml +SwitchIndicator 2.3 SwitchIndicator.qml diff --git a/src/imports/controls/fusion/qquickfusionbusyindicator.cpp b/src/imports/controls/fusion/impl/qquickfusionbusyindicator.cpp index a9b75d27..a9b75d27 100644 --- a/src/imports/controls/fusion/qquickfusionbusyindicator.cpp +++ b/src/imports/controls/fusion/impl/qquickfusionbusyindicator.cpp diff --git a/src/imports/controls/fusion/qquickfusionbusyindicator_p.h b/src/imports/controls/fusion/impl/qquickfusionbusyindicator_p.h index 77487ec8..5aeea6c4 100644 --- a/src/imports/controls/fusion/qquickfusionbusyindicator_p.h +++ b/src/imports/controls/fusion/impl/qquickfusionbusyindicator_p.h @@ -58,6 +58,8 @@ class QQuickFusionBusyIndicator : public QQuickPaintedItem Q_OBJECT Q_PROPERTY(QColor color READ color WRITE setColor FINAL) Q_PROPERTY(bool running READ isRunning WRITE setRunning) + QML_NAMED_ELEMENT(BusyIndicatorImpl) + QML_ADDED_IN_VERSION(2, 3) public: explicit QQuickFusionBusyIndicator(QQuickItem *parent = nullptr); diff --git a/src/imports/controls/fusion/qquickfusiondial.cpp b/src/imports/controls/fusion/impl/qquickfusiondial.cpp index eb6f21ad..eb6f21ad 100644 --- a/src/imports/controls/fusion/qquickfusiondial.cpp +++ b/src/imports/controls/fusion/impl/qquickfusiondial.cpp diff --git a/src/imports/controls/fusion/qquickfusiondial_p.h b/src/imports/controls/fusion/impl/qquickfusiondial_p.h index 07c80cdb..c320527a 100644 --- a/src/imports/controls/fusion/qquickfusiondial_p.h +++ b/src/imports/controls/fusion/impl/qquickfusiondial_p.h @@ -56,6 +56,8 @@ class QQuickFusionDial : public QQuickPaintedItem { Q_OBJECT Q_PROPERTY(bool highlight READ highlight WRITE setHighlight FINAL) + QML_NAMED_ELEMENT(DialImpl) + QML_ADDED_IN_VERSION(2, 3) public: explicit QQuickFusionDial(QQuickItem *parent = nullptr); diff --git a/src/imports/controls/fusion/qquickfusionknob.cpp b/src/imports/controls/fusion/impl/qquickfusionknob.cpp index a641d190..a641d190 100644 --- a/src/imports/controls/fusion/qquickfusionknob.cpp +++ b/src/imports/controls/fusion/impl/qquickfusionknob.cpp diff --git a/src/imports/controls/fusion/qquickfusionknob_p.h b/src/imports/controls/fusion/impl/qquickfusionknob_p.h index 85e5f53e..b9b9c377 100644 --- a/src/imports/controls/fusion/qquickfusionknob_p.h +++ b/src/imports/controls/fusion/impl/qquickfusionknob_p.h @@ -55,6 +55,8 @@ QT_BEGIN_NAMESPACE class QQuickFusionKnob : public QQuickPaintedItem { Q_OBJECT + QML_NAMED_ELEMENT(KnobImpl) + QML_ADDED_IN_VERSION(2, 3) public: explicit QQuickFusionKnob(QQuickItem *parent = nullptr); diff --git a/src/imports/controls/fusiondesktop/Slider.qml b/src/imports/controls/fusion/impl/qtquickcontrols2fusionstyleimplplugin.cpp index 3aed431f..56cfc151 100644 --- a/src/imports/controls/fusiondesktop/Slider.qml +++ b/src/imports/controls/fusion/impl/qtquickcontrols2fusionstyleimplplugin.cpp @@ -34,10 +34,24 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +#include <QtQml/qqmlextensionplugin.h> -NativeStyle.DefaultSlider { +QT_BEGIN_NAMESPACE + +class QtQuickControls2FusionStyleImplPlugin : public QQmlEngineExtensionPlugin +{ + Q_OBJECT + Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid) + +public: + QtQuickControls2FusionStyleImplPlugin(QObject *parent = nullptr); +}; + +QtQuickControls2FusionStyleImplPlugin::QtQuickControls2FusionStyleImplPlugin(QObject *parent) + : QQmlEngineExtensionPlugin(parent) +{ } + +QT_END_NAMESPACE + +#include "qtquickcontrols2fusionstyleimplplugin.moc" diff --git a/src/imports/controls/fusion/plugins.qmltypes b/src/imports/controls/fusion/plugins.qmltypes deleted file mode 100644 index 5140d1e8..00000000 --- a/src/imports/controls/fusion/plugins.qmltypes +++ /dev/null @@ -1,414 +0,0 @@ -import QtQuick.tooling 1.2 - -// This file describes the plugin-supplied types contained in the library. -// It is used for QML tooling purposes only. -// -// This file was auto-generated by: -// 'qmlplugindump -nonrelocatable -dependencies dependencies.json QtQuick.Controls.Fusion 2.14' - -Module { - dependencies: ["QtQuick.Controls 2.0"] - Component { - name: "QQuickFusionBusyIndicator" - defaultProperty: "data" - prototype: "QQuickPaintedItem" - exports: ["QtQuick.Controls.Fusion.impl/BusyIndicatorImpl 2.3"] - exportMetaObjectRevisions: [0] - Property { name: "color"; type: "QColor" } - Property { name: "running"; type: "bool" } - } - Component { - name: "QQuickFusionDial" - defaultProperty: "data" - prototype: "QQuickPaintedItem" - exports: ["QtQuick.Controls.Fusion.impl/DialImpl 2.3"] - exportMetaObjectRevisions: [0] - Property { name: "highlight"; type: "bool" } - Property { name: "palette"; type: "QPalette" } - } - Component { - name: "QQuickFusionKnob" - defaultProperty: "data" - prototype: "QQuickPaintedItem" - exports: ["QtQuick.Controls.Fusion.impl/KnobImpl 2.3"] - exportMetaObjectRevisions: [0] - Property { name: "palette"; type: "QPalette" } - } - Component { - name: "QQuickFusionStyle" - prototype: "QObject" - exports: ["QtQuick.Controls.Fusion.impl/Fusion 2.3"] - isCreatable: false - isSingleton: true - exportMetaObjectRevisions: [0] - Property { name: "lightShade"; type: "QColor"; isReadonly: true } - Property { name: "darkShade"; type: "QColor"; isReadonly: true } - Property { name: "topShadow"; type: "QColor"; isReadonly: true } - Property { name: "innerContrastLine"; type: "QColor"; isReadonly: true } - Method { - name: "highlight" - type: "QColor" - Parameter { name: "palette"; type: "QPalette" } - } - Method { - name: "highlightedText" - type: "QColor" - Parameter { name: "palette"; type: "QPalette" } - } - Method { - name: "outline" - type: "QColor" - Parameter { name: "palette"; type: "QPalette" } - } - Method { - name: "highlightedOutline" - type: "QColor" - Parameter { name: "palette"; type: "QPalette" } - } - Method { - name: "tabFrameColor" - type: "QColor" - Parameter { name: "palette"; type: "QPalette" } - } - Method { - name: "buttonColor" - type: "QColor" - Parameter { name: "palette"; type: "QPalette" } - Parameter { name: "highlighted"; type: "bool" } - Parameter { name: "down"; type: "bool" } - Parameter { name: "hovered"; type: "bool" } - } - Method { - name: "buttonColor" - type: "QColor" - Parameter { name: "palette"; type: "QPalette" } - Parameter { name: "highlighted"; type: "bool" } - Parameter { name: "down"; type: "bool" } - } - Method { - name: "buttonColor" - type: "QColor" - Parameter { name: "palette"; type: "QPalette" } - Parameter { name: "highlighted"; type: "bool" } - } - Method { - name: "buttonColor" - type: "QColor" - Parameter { name: "palette"; type: "QPalette" } - } - Method { - name: "buttonOutline" - type: "QColor" - Parameter { name: "palette"; type: "QPalette" } - Parameter { name: "highlighted"; type: "bool" } - Parameter { name: "enabled"; type: "bool" } - } - Method { - name: "buttonOutline" - type: "QColor" - Parameter { name: "palette"; type: "QPalette" } - Parameter { name: "highlighted"; type: "bool" } - } - Method { - name: "buttonOutline" - type: "QColor" - Parameter { name: "palette"; type: "QPalette" } - } - Method { - name: "gradientStart" - type: "QColor" - Parameter { name: "baseColor"; type: "QColor" } - } - Method { - name: "gradientStop" - type: "QColor" - Parameter { name: "baseColor"; type: "QColor" } - } - Method { - name: "mergedColors" - type: "QColor" - Parameter { name: "colorA"; type: "QColor" } - Parameter { name: "colorB"; type: "QColor" } - Parameter { name: "factor"; type: "int" } - } - Method { - name: "mergedColors" - type: "QColor" - Parameter { name: "colorA"; type: "QColor" } - Parameter { name: "colorB"; type: "QColor" } - } - Method { - name: "grooveColor" - type: "QColor" - Parameter { name: "palette"; type: "QPalette" } - } - } - Component { - name: "QQuickItem" - defaultProperty: "data" - prototype: "QObject" - Enum { - name: "Flags" - values: { - "ItemClipsChildrenToShape": 1, - "ItemAcceptsInputMethod": 2, - "ItemIsFocusScope": 4, - "ItemHasContents": 8, - "ItemAcceptsDrops": 16 - } - } - Enum { - name: "TransformOrigin" - values: { - "TopLeft": 0, - "Top": 1, - "TopRight": 2, - "Left": 3, - "Center": 4, - "Right": 5, - "BottomLeft": 6, - "Bottom": 7, - "BottomRight": 8 - } - } - Property { name: "parent"; type: "QQuickItem"; isPointer: true } - Property { name: "data"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "resources"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "children"; type: "QQuickItem"; isList: true; isReadonly: true } - Property { name: "x"; type: "double" } - Property { name: "y"; type: "double" } - Property { name: "z"; type: "double" } - Property { name: "width"; type: "double" } - Property { name: "height"; type: "double" } - Property { name: "opacity"; type: "double" } - Property { name: "enabled"; type: "bool" } - Property { name: "visible"; type: "bool" } - Property { name: "visibleChildren"; type: "QQuickItem"; isList: true; isReadonly: true } - Property { name: "states"; type: "QQuickState"; isList: true; isReadonly: true } - Property { name: "transitions"; type: "QQuickTransition"; isList: true; isReadonly: true } - Property { name: "state"; type: "string" } - Property { name: "childrenRect"; type: "QRectF"; isReadonly: true } - Property { name: "anchors"; type: "QQuickAnchors"; isReadonly: true; isPointer: true } - Property { name: "left"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "right"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "horizontalCenter"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "top"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "bottom"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "verticalCenter"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "baseline"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "baselineOffset"; type: "double" } - Property { name: "clip"; type: "bool" } - Property { name: "focus"; type: "bool" } - Property { name: "activeFocus"; type: "bool"; isReadonly: true } - Property { name: "activeFocusOnTab"; revision: 1; type: "bool" } - Property { name: "rotation"; type: "double" } - Property { name: "scale"; type: "double" } - Property { name: "transformOrigin"; type: "TransformOrigin" } - Property { name: "transformOriginPoint"; type: "QPointF"; isReadonly: true } - Property { name: "transform"; type: "QQuickTransform"; isList: true; isReadonly: true } - Property { name: "smooth"; type: "bool" } - Property { name: "antialiasing"; type: "bool" } - Property { name: "implicitWidth"; type: "double" } - Property { name: "implicitHeight"; type: "double" } - Property { name: "containmentMask"; revision: 11; type: "QObject"; isPointer: true } - Property { name: "layer"; type: "QQuickItemLayer"; isReadonly: true; isPointer: true } - Signal { - name: "childrenRectChanged" - Parameter { type: "QRectF" } - } - Signal { - name: "baselineOffsetChanged" - Parameter { type: "double" } - } - Signal { - name: "stateChanged" - Parameter { type: "string" } - } - Signal { - name: "focusChanged" - Parameter { type: "bool" } - } - Signal { - name: "activeFocusChanged" - Parameter { type: "bool" } - } - Signal { - name: "activeFocusOnTabChanged" - revision: 1 - Parameter { type: "bool" } - } - Signal { - name: "parentChanged" - Parameter { type: "QQuickItem"; isPointer: true } - } - Signal { - name: "transformOriginChanged" - Parameter { type: "TransformOrigin" } - } - Signal { - name: "smoothChanged" - Parameter { type: "bool" } - } - Signal { - name: "antialiasingChanged" - Parameter { type: "bool" } - } - Signal { - name: "clipChanged" - Parameter { type: "bool" } - } - Signal { - name: "windowChanged" - revision: 1 - Parameter { name: "window"; type: "QQuickWindow"; isPointer: true } - } - Signal { name: "containmentMaskChanged"; revision: 11 } - Method { name: "update" } - Method { - name: "grabToImage" - revision: 4 - type: "bool" - Parameter { name: "callback"; type: "QJSValue" } - Parameter { name: "targetSize"; type: "QSize" } - } - Method { - name: "grabToImage" - revision: 4 - type: "bool" - Parameter { name: "callback"; type: "QJSValue" } - } - Method { - name: "contains" - type: "bool" - Parameter { name: "point"; type: "QPointF" } - } - Method { - name: "mapFromItem" - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "mapToItem" - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "mapFromGlobal" - revision: 7 - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "mapToGlobal" - revision: 7 - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { name: "forceActiveFocus" } - Method { - name: "forceActiveFocus" - Parameter { name: "reason"; type: "Qt::FocusReason" } - } - Method { - name: "nextItemInFocusChain" - revision: 1 - type: "QQuickItem*" - Parameter { name: "forward"; type: "bool" } - } - Method { name: "nextItemInFocusChain"; revision: 1; type: "QQuickItem*" } - Method { - name: "childAt" - type: "QQuickItem*" - Parameter { name: "x"; type: "double" } - Parameter { name: "y"; type: "double" } - } - } - Component { - name: "QQuickPaintedItem" - defaultProperty: "data" - prototype: "QQuickItem" - Enum { - name: "RenderTarget" - values: { - "Image": 0, - "FramebufferObject": 1, - "InvertedYFramebufferObject": 2 - } - } - Enum { - name: "PerformanceHints" - values: { - "FastFBOResizing": 1 - } - } - Property { name: "contentsSize"; type: "QSize" } - Property { name: "fillColor"; type: "QColor" } - Property { name: "contentsScale"; type: "double" } - Property { name: "renderTarget"; type: "RenderTarget" } - Property { name: "textureSize"; type: "QSize" } - } - Component { - prototype: "QQuickRectangle" - name: "QtQuick.Controls.Fusion.impl/ButtonPanel 2.3" - exports: ["QtQuick.Controls.Fusion.impl/ButtonPanel 2.3"] - exportMetaObjectRevisions: [3] - isComposite: true - defaultProperty: "data" - Property { name: "control"; type: "QQuickItem"; isPointer: true } - Property { name: "highlighted"; type: "bool" } - } - Component { - prototype: "QQuickRectangle" - name: "QtQuick.Controls.Fusion.impl/CheckIndicator 2.3" - exports: ["QtQuick.Controls.Fusion.impl/CheckIndicator 2.3"] - exportMetaObjectRevisions: [3] - isComposite: true - defaultProperty: "data" - Property { name: "control"; type: "QQuickItem"; isPointer: true } - Property { name: "pressedColor"; type: "QColor"; isReadonly: true } - Property { name: "checkMarkColor"; type: "QColor"; isReadonly: true } - } - Component { - prototype: "QQuickRectangle" - name: "QtQuick.Controls.Fusion.impl/RadioIndicator 2.3" - exports: ["QtQuick.Controls.Fusion.impl/RadioIndicator 2.3"] - exportMetaObjectRevisions: [3] - isComposite: true - defaultProperty: "data" - Property { name: "control"; type: "QQuickItem"; isPointer: true } - Property { name: "pressedColor"; type: "QColor"; isReadonly: true } - Property { name: "checkMarkColor"; type: "QColor"; isReadonly: true } - } - Component { - prototype: "QQuickRectangle" - name: "QtQuick.Controls.Fusion.impl/SliderGroove 2.3" - exports: ["QtQuick.Controls.Fusion.impl/SliderGroove 2.3"] - exportMetaObjectRevisions: [3] - isComposite: true - defaultProperty: "data" - Property { name: "control"; type: "QQuickItem"; isPointer: true } - Property { name: "offset"; type: "double" } - Property { name: "progress"; type: "double" } - Property { name: "visualProgress"; type: "double" } - } - Component { - prototype: "QQuickRectangle" - name: "QtQuick.Controls.Fusion.impl/SliderHandle 2.3" - exports: ["QtQuick.Controls.Fusion.impl/SliderHandle 2.3"] - exportMetaObjectRevisions: [3] - isComposite: true - defaultProperty: "data" - Property { name: "palette"; type: "QVariant" } - Property { name: "pressed"; type: "bool" } - Property { name: "hovered"; type: "bool" } - Property { name: "vertical"; type: "bool" } - Property { name: "visualFocus"; type: "bool" } - } - Component { - prototype: "QQuickRectangle" - name: "QtQuick.Controls.Fusion.impl/SwitchIndicator 2.3" - exports: ["QtQuick.Controls.Fusion.impl/SwitchIndicator 2.3"] - exportMetaObjectRevisions: [3] - isComposite: true - defaultProperty: "data" - Property { name: "control"; type: "QQuickItem"; isPointer: true } - Property { name: "pressedColor"; type: "QColor"; isReadonly: true } - Property { name: "checkMarkColor"; type: "QColor"; isReadonly: true } - } -} diff --git a/src/imports/controls/fusion/qmldir b/src/imports/controls/fusion/qmldir index b584adc8..c08f1e4a 100644 --- a/src/imports/controls/fusion/qmldir +++ b/src/imports/controls/fusion/qmldir @@ -1,4 +1,114 @@ module QtQuick.Controls.Fusion plugin qtquickcontrols2fusionstyleplugin classname QtQuickControls2FusionStylePlugin -depends QtQuick.Controls 2.5 +import QtQuick.Controls.Default auto + +# QtQuick.Controls 2.0 (originally introduced in Qt 5.7) +ApplicationWindow 2.0 ApplicationWindow.qml +BusyIndicator 2.0 BusyIndicator.qml +Button 2.0 Button.qml +CheckBox 2.0 CheckBox.qml +CheckDelegate 2.0 CheckDelegate.qml +ComboBox 2.0 ComboBox.qml +Dial 2.0 Dial.qml +Drawer 2.0 Drawer.qml +Frame 2.0 Frame.qml +GroupBox 2.0 GroupBox.qml +ItemDelegate 2.0 ItemDelegate.qml +Label 2.0 Label.qml +Menu 2.0 Menu.qml +MenuItem 2.0 MenuItem.qml +Page 2.0 Page.qml +PageIndicator 2.0 PageIndicator.qml +Pane 2.0 Pane.qml +Popup 2.0 Popup.qml +ProgressBar 2.0 ProgressBar.qml +RadioButton 2.0 RadioButton.qml +RadioDelegate 2.0 RadioDelegate.qml +RangeSlider 2.0 RangeSlider.qml +ScrollBar 2.0 ScrollBar.qml +ScrollIndicator 2.0 ScrollIndicator.qml +Slider 2.0 Slider.qml +SpinBox 2.0 SpinBox.qml +SwipeDelegate 2.0 SwipeDelegate.qml +Switch 2.0 Switch.qml +SwitchDelegate 2.0 SwitchDelegate.qml +TabBar 2.0 TabBar.qml +TabButton 2.0 TabButton.qml +TextArea 2.0 TextArea.qml +TextField 2.0 TextField.qml +ToolBar 2.0 ToolBar.qml +ToolButton 2.0 ToolButton.qml +ToolTip 2.0 ToolTip.qml +Tumbler 2.0 Tumbler.qml + +# QtQuick.Controls 2.1 (new types in Qt 5.8) +Dialog 2.1 Dialog.qml +DialogButtonBox 2.1 DialogButtonBox.qml +MenuSeparator 2.1 MenuSeparator.qml +RoundButton 2.1 RoundButton.qml +ToolSeparator 2.1 ToolSeparator.qml + +# QtQuick.Controls 2.2 (new types in Qt 5.9) +DelayButton 2.2 DelayButton.qml + +# QtQuick.Controls 2.3 (new types in Qt 5.10) +MenuBar 2.3 MenuBar.qml +MenuBarItem 2.3 MenuBarItem.qml + +# QtQuick.Controls 2.13 (new types in Qt 5.13) +SplitView 2.13 SplitView.qml + +# QtQuick.Controls 2.15 (new types in Qt 5.15) +HorizontalHeaderView 2.15 HorizontalHeaderView.qml +VerticalHeaderView 2.15 VerticalHeaderView.qml + +# Make sure we have types registered for Qt 6: QTBUG-85774, QTBUG-85685 +ApplicationWindow 6.0 ApplicationWindow.qml +BusyIndicator 6.0 BusyIndicator.qml +Button 6.0 Button.qml +CheckBox 6.0 CheckBox.qml +CheckDelegate 6.0 CheckDelegate.qml +ComboBox 6.0 ComboBox.qml +DelayButton 6.0 DelayButton.qml +Dial 6.0 Dial.qml +Dialog 6.0 Dialog.qml +DialogButtonBox 6.0 DialogButtonBox.qml +Drawer 6.0 Drawer.qml +Frame 6.0 Frame.qml +GroupBox 6.0 GroupBox.qml +HorizontalHeaderView 6.0 HorizontalHeaderView.qml +ItemDelegate 6.0 ItemDelegate.qml +Label 6.0 Label.qml +Menu 6.0 Menu.qml +MenuBar 6.0 MenuBar.qml +MenuBarItem 6.0 MenuBarItem.qml +MenuItem 6.0 MenuItem.qml +MenuSeparator 6.0 MenuSeparator.qml +Page 6.0 Page.qml +PageIndicator 6.0 PageIndicator.qml +Pane 6.0 Pane.qml +Popup 6.0 Popup.qml +ProgressBar 6.0 ProgressBar.qml +RadioButton 6.0 RadioButton.qml +RadioDelegate 6.0 RadioDelegate.qml +RangeSlider 6.0 RangeSlider.qml +RoundButton 6.0 RoundButton.qml +ScrollBar 6.0 ScrollBar.qml +ScrollIndicator 6.0 ScrollIndicator.qml +Slider 6.0 Slider.qml +SpinBox 6.0 SpinBox.qml +SplitView 6.0 SplitView.qml +SwipeDelegate 6.0 SwipeDelegate.qml +Switch 6.0 Switch.qml +SwitchDelegate 6.0 SwitchDelegate.qml +TabBar 6.0 TabBar.qml +TabButton 6.0 TabButton.qml +TextArea 6.0 TextArea.qml +TextField 6.0 TextField.qml +ToolBar 6.0 ToolBar.qml +ToolButton 6.0 ToolButton.qml +ToolSeparator 6.0 ToolSeparator.qml +ToolTip 6.0 ToolTip.qml +Tumbler 6.0 Tumbler.qml +VerticalHeaderView 6.0 VerticalHeaderView.qml diff --git a/src/imports/controls/fusion/qquickfusionstyle_p.h b/src/imports/controls/fusion/qquickfusionstyle_p.h index 0e7526ee..4655fd3d 100644 --- a/src/imports/controls/fusion/qquickfusionstyle_p.h +++ b/src/imports/controls/fusion/qquickfusionstyle_p.h @@ -50,6 +50,7 @@ #include <QtCore/qobject.h> #include <QtGui/qcolor.h> +#include <QtQml/qqml.h> QT_BEGIN_NAMESPACE @@ -62,6 +63,9 @@ class QQuickFusionStyle : public QObject Q_PROPERTY(QColor darkShade READ darkShade CONSTANT) Q_PROPERTY(QColor topShadow READ topShadow CONSTANT) Q_PROPERTY(QColor innerContrastLine READ innerContrastLine CONSTANT) + QML_NAMED_ELEMENT(Fusion) + QML_SINGLETON + QML_ADDED_IN_VERSION(2, 3) public: explicit QQuickFusionStyle(QObject *parent = nullptr); diff --git a/src/imports/controls/fusion/qtquickcontrols2fusionstyle.qrc b/src/imports/controls/fusion/qtquickcontrols2fusionstyle.qrc index 74c8e671..0a9e195a 100644 --- a/src/imports/controls/fusion/qtquickcontrols2fusionstyle.qrc +++ b/src/imports/controls/fusion/qtquickcontrols2fusionstyle.qrc @@ -1,5 +1,5 @@ <!DOCTYPE RCC><RCC version="1.0"> -<qresource prefix="qt-project.org/imports/QtQuick/Controls.2/Fusion"> +<qresource prefix="qt-project.org/imports/QtQuick/Controls/Fusion"> <file>images/arrow.png</file> <file>images/arrow@2x.png</file> <file>images/arrow@3x.png</file> diff --git a/src/imports/controls/fusion/qtquickcontrols2fusionstyleplugin.cpp b/src/imports/controls/fusion/qtquickcontrols2fusionstyleplugin.cpp index 985945cf..c70c9602 100644 --- a/src/imports/controls/fusion/qtquickcontrols2fusionstyleplugin.cpp +++ b/src/imports/controls/fusion/qtquickcontrols2fusionstyleplugin.cpp @@ -34,25 +34,16 @@ ** ****************************************************************************/ -#include <QtQuickControls2/private/qquickstyleplugin_p.h> -#include <QtQml/qqml.h> - -#include "qquickfusionbusyindicator_p.h" -#include "qquickfusiondial_p.h" -#include "qquickfusionknob_p.h" #include "qquickfusionstyle_p.h" #include "qquickfusiontheme_p.h" -QT_BEGIN_NAMESPACE +#include <QtQml/qqml.h> +#include <QtQuickControls2/private/qquickstyleplugin_p.h> +#include <QtQuickTemplates2/private/qquicktheme_p.h> -static QObject *styleSingleton(QQmlEngine *engine, QJSEngine *scriptEngine) -{ - Q_UNUSED(engine); - Q_UNUSED(scriptEngine); - return new QQuickFusionStyle; -} +QT_BEGIN_NAMESPACE -class QtQuickControls2FusionStylePlugin: public QQuickStylePlugin +class QtQuickControls2FusionStylePlugin : public QQuickStylePlugin { Q_OBJECT Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid) @@ -60,46 +51,27 @@ class QtQuickControls2FusionStylePlugin: public QQuickStylePlugin public: QtQuickControls2FusionStylePlugin(QObject *parent = nullptr); + QString name() const override; + void registerTypes(const char *uri) override; - QString name() const override; - void initializeTheme(QQuickTheme *theme) override; + QQuickFusionTheme theme; }; QtQuickControls2FusionStylePlugin::QtQuickControls2FusionStylePlugin(QObject *parent) : QQuickStylePlugin(parent) { } -void QtQuickControls2FusionStylePlugin::registerTypes(const char *uri) -{ - qmlRegisterModule(uri, 2, 3); // Qt 5.10->2.3 - qmlRegisterModule(uri, 2, 15); // Qt 5.12->2.12, 5.13->2.13... - - QByteArray import = QByteArray(uri) + ".impl"; - qmlRegisterModule(import, 2, 15); // Qt 5.12->2.12, 5.13->2.13... - - qmlRegisterSingletonType<QQuickFusionStyle>(import, 2, 3, "Fusion", styleSingleton); - - qmlRegisterType<QQuickFusionBusyIndicator>(import, 2, 3, "BusyIndicatorImpl"); - qmlRegisterType<QQuickFusionDial>(import, 2, 3, "DialImpl"); - qmlRegisterType<QQuickFusionKnob>(import, 2, 3, "KnobImpl"); - - qmlRegisterType(resolvedUrl(QStringLiteral("ButtonPanel.qml")), import, 2, 3, "ButtonPanel"); - qmlRegisterType(resolvedUrl(QStringLiteral("CheckIndicator.qml")), import, 2, 3, "CheckIndicator"); - qmlRegisterType(resolvedUrl(QStringLiteral("RadioIndicator.qml")), import, 2, 3, "RadioIndicator"); - qmlRegisterType(resolvedUrl(QStringLiteral("SliderGroove.qml")), import, 2, 3, "SliderGroove"); - qmlRegisterType(resolvedUrl(QStringLiteral("SliderHandle.qml")), import, 2, 3, "SliderHandle"); - qmlRegisterType(resolvedUrl(QStringLiteral("SwitchIndicator.qml")), import, 2, 3, "SwitchIndicator"); -} - QString QtQuickControls2FusionStylePlugin::name() const { return QStringLiteral("Fusion"); } -void QtQuickControls2FusionStylePlugin::initializeTheme(QQuickTheme *theme) +void QtQuickControls2FusionStylePlugin::registerTypes(const char *uri) { - QQuickFusionTheme::initialize(theme); + QQuickStylePlugin::registerTypes(uri); + + theme.initialize(QQuickTheme::instance()); } QT_END_NAMESPACE diff --git a/src/imports/controls/fusiondesktop/fusiondesktop.pri b/src/imports/controls/fusiondesktop/fusiondesktop.pri deleted file mode 100644 index 17db019a..00000000 --- a/src/imports/controls/fusiondesktop/fusiondesktop.pri +++ /dev/null @@ -1,4 +0,0 @@ -QML_FILES += \ - $$PWD/Button.qml \ - $$PWD/Slider.qml \ - $$PWD/GroupBox.qml \ diff --git a/src/imports/controls/fusiondesktop/fusiondesktop.pro b/src/imports/controls/fusiondesktop/fusiondesktop.pro deleted file mode 100644 index bf3a9961..00000000 --- a/src/imports/controls/fusiondesktop/fusiondesktop.pro +++ /dev/null @@ -1,29 +0,0 @@ -TARGET = qtquickcontrols2fusiondesktopstyleplugin -TARGETPATH = QtQuick/Controls.2/FusionDesktop - -QML_IMPORT_NAME = QtQuick.Controls.FusionDesktop -QML_IMPORT_MAJOR_VERSION = 6 - -QT += qml quick quickcontrols2 quicktemplates2 -QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2-private - -DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII - -include(fusiondesktop.pri) - -OTHER_FILES += \ - qmldir \ - $$QML_FILES - -SOURCES += \ - $$PWD/qtquickcontrols2fusiondesktopstyleplugin.cpp - -CONFIG += no_cxx_module install_qml_files builtin_resources qtquickcompiler -CONFIG += qmltypes install_qmltypes - -load(qml_plugin) - -# TODO: add config flag -#requires(qtConfig(quickcontrols2-nativestyle)) - -HEADERS += diff --git a/src/imports/controls/fusiondesktop/qmldir b/src/imports/controls/fusiondesktop/qmldir deleted file mode 100644 index 8d16d743..00000000 --- a/src/imports/controls/fusiondesktop/qmldir +++ /dev/null @@ -1,4 +0,0 @@ -module QtQuick.Controls.FusionDesktop -plugin qtquickcontrols2fusiondesktopstyleplugin -classname QtQuickControls2FusionDesktopStylePlugin -depends QtQuick.Controls 2.5 diff --git a/src/imports/controls/imagine/.prev_CMakeLists.txt b/src/imports/controls/imagine/.prev_CMakeLists.txt index 5533f872..b1e1a959 100644 --- a/src/imports/controls/imagine/.prev_CMakeLists.txt +++ b/src/imports/controls/imagine/.prev_CMakeLists.txt @@ -5,18 +5,15 @@ ##################################################################### qt_add_qml_module(qtquickcontrols2imaginestyleplugin - TARGET_PATH "QtQuick/Controls.2/Imagine" URI "QtQuick.Controls.Imagine" - VERSION "2.${CMAKE_PROJECT_VERSION_MINOR}" + VERSION "${CMAKE_PROJECT_VERSION}" CLASSNAME QtQuickControls2ImagineStylePlugin - DEPENDENCIES - QtQuick.Controls/2.5 - SKIP_TYPE_REGISTRATION + IMPORTS + QtQuick.Controls.Default/auto + GENERATE_QMLTYPES SOURCES - qquickimageselector.cpp qquickimageselector_p.h qquickimaginestyle.cpp qquickimaginestyle_p.h qquickimaginetheme.cpp qquickimaginetheme_p.h - qquickninepatchimage.cpp qquickninepatchimage_p.h qtquickcontrols2imaginestyleplugin.cpp DEFINES QT_NO_CAST_FROM_ASCII @@ -25,6 +22,7 @@ qt_add_qml_module(qtquickcontrols2imaginestyleplugin Qt::CorePrivate Qt::GuiPrivate Qt::QmlPrivate + Qt::QuickControls2ImplPrivate Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private @@ -49,24 +47,21 @@ endforeach() set(qmake_qtquickcontrols2imaginestyle_resource_files ${resource_glob_0} ${resource_glob_1} - "shaders/+glslcore/OpacityMask.frag" - "shaders/+qsb/OpacityMask.frag" - "shaders/OpacityMask.frag" ) qt_add_resource(qtquickcontrols2imaginestyleplugin "qmake_qtquickcontrols2imaginestyle" PREFIX - "qt-project.org/imports/QtQuick/Controls.2/Imagine" + "qt-project.org/imports/QtQuick/Controls/Imagine" FILES ${qmake_qtquickcontrols2imaginestyle_resource_files} ) #### Keys ignored in scope 1:.:.:imagine.pro:<TRUE>: -# IMPORT_NAME = "QtQuick.Controls.Imagine" -# IMPORT_VERSION = "2.$$QT_MINOR_VERSION" # OTHER_FILES = "qmldir" "$$QML_FILES" -# TARGETPATH = "QtQuick/Controls.2/Imagine" +# QML_IMPORT_NAME = "QtQuick.Controls.Imagine" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# TARGETPATH = "QtQuick/Controls/Imagine" # _REQUIREMENTS = "qtConfig(quickcontrols2-imagine)" set(qml_files @@ -89,7 +84,6 @@ set(qml_files "Menu.qml" "MenuItem.qml" "MenuSeparator.qml" - "OpacityMask.qml" "PageIndicator.qml" "Page.qml" "Pane.qml" @@ -121,151 +115,148 @@ set(qml_files "VerticalHeaderView.qml" ) set_source_files_properties(ApplicationWindow.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(BusyIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Button.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(CheckBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(CheckDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ComboBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(DelayButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.2;6.0" ) set_source_files_properties(Dial.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Dialog.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(DialogButtonBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(Drawer.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Frame.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(GroupBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(HorizontalHeaderView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.15;6.0" ) set_source_files_properties(ItemDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Label.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Menu.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(MenuItem.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(MenuSeparator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(OpacityMask.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(PageIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Page.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Pane.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Popup.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ProgressBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(RadioButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(RadioDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(RangeSlider.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(RoundButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(ScrollBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ScrollIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Slider.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SpinBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SplitView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.13;6.0" ) set_source_files_properties(StackView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SwipeDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SwipeView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Switch.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SwitchDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(TextField.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(TextArea.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(TabBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(TabButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ToolBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ToolButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ToolSeparator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(ToolTip.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Tumbler.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(VerticalHeaderView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.15;6.0" ) qt6_target_qml_files(qtquickcontrols2imaginestyleplugin diff --git a/src/imports/controls/imagine/ApplicationWindow.qml b/src/imports/controls/imagine/ApplicationWindow.qml index 7bfcc3f9..b54527eb 100644 --- a/src/imports/controls/imagine/ApplicationWindow.qml +++ b/src/imports/controls/imagine/ApplicationWindow.qml @@ -34,35 +34,15 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.2 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.ApplicationWindow { id: window - // ### remove? - overlay.modal: NinePatchImage { - source: Imagine.url + "applicationwindow-overlay" - NinePatchImageSelector on source { - states: [ - {"modal": true} - ] - } - } - - // ### remove? - overlay.modeless: NinePatchImage { - source: Imagine.url + "applicationwindow-overlay" - NinePatchImageSelector on source { - states: [ - {"modal": false} - ] - } - } - background: NinePatchImage { width: window.width height: window.height diff --git a/src/imports/controls/imagine/BusyIndicator.qml b/src/imports/controls/imagine/BusyIndicator.qml index 652365b1..163a64b4 100644 --- a/src/imports/controls/imagine/BusyIndicator.qml +++ b/src/imports/controls/imagine/BusyIndicator.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.BusyIndicator { id: control diff --git a/src/imports/controls/imagine/Button.qml b/src/imports/controls/imagine/Button.qml index e7171eb1..4d6b2ce0 100644 --- a/src/imports/controls/imagine/Button.qml +++ b/src/imports/controls/imagine/Button.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.Button { id: control diff --git a/src/imports/controls/imagine/CMakeLists.txt b/src/imports/controls/imagine/CMakeLists.txt index 5533f872..ce9b98cb 100644 --- a/src/imports/controls/imagine/CMakeLists.txt +++ b/src/imports/controls/imagine/CMakeLists.txt @@ -5,18 +5,15 @@ ##################################################################### qt_add_qml_module(qtquickcontrols2imaginestyleplugin - TARGET_PATH "QtQuick/Controls.2/Imagine" URI "QtQuick.Controls.Imagine" - VERSION "2.${CMAKE_PROJECT_VERSION_MINOR}" + VERSION "6.0" # special case CLASSNAME QtQuickControls2ImagineStylePlugin - DEPENDENCIES - QtQuick.Controls/2.5 - SKIP_TYPE_REGISTRATION + IMPORTS + QtQuick.Controls.Default/auto + GENERATE_QMLTYPES SOURCES - qquickimageselector.cpp qquickimageselector_p.h qquickimaginestyle.cpp qquickimaginestyle_p.h qquickimaginetheme.cpp qquickimaginetheme_p.h - qquickninepatchimage.cpp qquickninepatchimage_p.h qtquickcontrols2imaginestyleplugin.cpp DEFINES QT_NO_CAST_FROM_ASCII @@ -25,6 +22,7 @@ qt_add_qml_module(qtquickcontrols2imaginestyleplugin Qt::CorePrivate Qt::GuiPrivate Qt::QmlPrivate + Qt::QuickControls2ImplPrivate Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private @@ -49,24 +47,21 @@ endforeach() set(qmake_qtquickcontrols2imaginestyle_resource_files ${resource_glob_0} ${resource_glob_1} - "shaders/+glslcore/OpacityMask.frag" - "shaders/+qsb/OpacityMask.frag" - "shaders/OpacityMask.frag" ) qt_add_resource(qtquickcontrols2imaginestyleplugin "qmake_qtquickcontrols2imaginestyle" PREFIX - "qt-project.org/imports/QtQuick/Controls.2/Imagine" + "qt-project.org/imports/QtQuick/Controls/Imagine" FILES ${qmake_qtquickcontrols2imaginestyle_resource_files} ) #### Keys ignored in scope 1:.:.:imagine.pro:<TRUE>: -# IMPORT_NAME = "QtQuick.Controls.Imagine" -# IMPORT_VERSION = "2.$$QT_MINOR_VERSION" # OTHER_FILES = "qmldir" "$$QML_FILES" -# TARGETPATH = "QtQuick/Controls.2/Imagine" +# QML_IMPORT_NAME = "QtQuick.Controls.Imagine" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# TARGETPATH = "QtQuick/Controls/Imagine" # _REQUIREMENTS = "qtConfig(quickcontrols2-imagine)" set(qml_files @@ -89,7 +84,6 @@ set(qml_files "Menu.qml" "MenuItem.qml" "MenuSeparator.qml" - "OpacityMask.qml" "PageIndicator.qml" "Page.qml" "Pane.qml" @@ -121,151 +115,148 @@ set(qml_files "VerticalHeaderView.qml" ) set_source_files_properties(ApplicationWindow.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(BusyIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Button.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(CheckBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(CheckDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ComboBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(DelayButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.2;6.0" ) set_source_files_properties(Dial.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Dialog.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(DialogButtonBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(Drawer.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Frame.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(GroupBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(HorizontalHeaderView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.15;6.0" ) set_source_files_properties(ItemDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Label.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Menu.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(MenuItem.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(MenuSeparator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(OpacityMask.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(PageIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Page.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Pane.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Popup.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ProgressBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(RadioButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(RadioDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(RangeSlider.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(RoundButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(ScrollBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ScrollIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Slider.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SpinBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SplitView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.13;6.0" ) set_source_files_properties(StackView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SwipeDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SwipeView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Switch.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SwitchDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(TextField.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(TextArea.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(TabBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(TabButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ToolBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ToolButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ToolSeparator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(ToolTip.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Tumbler.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(VerticalHeaderView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.15;6.0" ) qt6_target_qml_files(qtquickcontrols2imaginestyleplugin diff --git a/src/imports/controls/imagine/CheckBox.qml b/src/imports/controls/imagine/CheckBox.qml index b91ceb40..a92837b5 100644 --- a/src/imports/controls/imagine/CheckBox.qml +++ b/src/imports/controls/imagine/CheckBox.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.CheckBox { id: control diff --git a/src/imports/controls/imagine/CheckDelegate.qml b/src/imports/controls/imagine/CheckDelegate.qml index 19975152..7017b47a 100644 --- a/src/imports/controls/imagine/CheckDelegate.qml +++ b/src/imports/controls/imagine/CheckDelegate.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.CheckDelegate { id: control diff --git a/src/imports/controls/imagine/ComboBox.qml b/src/imports/controls/imagine/ComboBox.qml index d657e734..166ee7af 100644 --- a/src/imports/controls/imagine/ComboBox.qml +++ b/src/imports/controls/imagine/ComboBox.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Window 2.15 -import QtQuick.Templates 2.15 as T -import QtQuick.Controls 2.15 -import QtQuick.Controls.Imagine 2.15 -import QtQuick.Controls.Imagine.impl 2.15 +import QtQuick +import QtQuick.Window +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.ComboBox { id: control diff --git a/src/imports/controls/imagine/DelayButton.qml b/src/imports/controls/imagine/DelayButton.qml index ed4ad1e5..e542eb69 100644 --- a/src/imports/controls/imagine/DelayButton.qml +++ b/src/imports/controls/imagine/DelayButton.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.DelayButton { id: control diff --git a/src/imports/controls/imagine/Dial.qml b/src/imports/controls/imagine/Dial.qml index 83daf14a..224bff56 100644 --- a/src/imports/controls/imagine/Dial.qml +++ b/src/imports/controls/imagine/Dial.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.Dial { id: control diff --git a/src/imports/controls/imagine/Dialog.qml b/src/imports/controls/imagine/Dialog.qml index 730b7f57..46c22b6c 100644 --- a/src/imports/controls/imagine/Dialog.qml +++ b/src/imports/controls/imagine/Dialog.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.Dialog { id: control diff --git a/src/imports/controls/imagine/DialogButtonBox.qml b/src/imports/controls/imagine/DialogButtonBox.qml index c24b29fc..5094582a 100644 --- a/src/imports/controls/imagine/DialogButtonBox.qml +++ b/src/imports/controls/imagine/DialogButtonBox.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.DialogButtonBox { id: control diff --git a/src/imports/controls/imagine/Drawer.qml b/src/imports/controls/imagine/Drawer.qml index 2c93ba75..414516d3 100644 --- a/src/imports/controls/imagine/Drawer.qml +++ b/src/imports/controls/imagine/Drawer.qml @@ -34,15 +34,15 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.Drawer { id: control - parent: T.ApplicationWindow.overlay + parent: T.Overlay.overlay implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset, contentWidth + leftPadding + rightPadding) diff --git a/src/imports/controls/imagine/Frame.qml b/src/imports/controls/imagine/Frame.qml index 2bef3c88..7ba93dbc 100644 --- a/src/imports/controls/imagine/Frame.qml +++ b/src/imports/controls/imagine/Frame.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.Frame { id: control diff --git a/src/imports/controls/imagine/GroupBox.qml b/src/imports/controls/imagine/GroupBox.qml index 7abdb6f0..ecee0691 100644 --- a/src/imports/controls/imagine/GroupBox.qml +++ b/src/imports/controls/imagine/GroupBox.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.GroupBox { id: control diff --git a/src/imports/controls/imagine/HorizontalHeaderView.qml b/src/imports/controls/imagine/HorizontalHeaderView.qml index ec91af25..093c868b 100644 --- a/src/imports/controls/imagine/HorizontalHeaderView.qml +++ b/src/imports/controls/imagine/HorizontalHeaderView.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Templates 2.15 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T T.HorizontalHeaderView { id: control diff --git a/src/imports/controls/imagine/ItemDelegate.qml b/src/imports/controls/imagine/ItemDelegate.qml index 0b3edeaf..8073bec4 100644 --- a/src/imports/controls/imagine/ItemDelegate.qml +++ b/src/imports/controls/imagine/ItemDelegate.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.ItemDelegate { id: control diff --git a/src/imports/controls/imagine/Label.qml b/src/imports/controls/imagine/Label.qml index 82c0ef47..3654cd7d 100644 --- a/src/imports/controls/imagine/Label.qml +++ b/src/imports/controls/imagine/Label.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.Label { id: control diff --git a/src/imports/controls/imagine/Menu.qml b/src/imports/controls/imagine/Menu.qml index 832565e6..162edda0 100644 --- a/src/imports/controls/imagine/Menu.qml +++ b/src/imports/controls/imagine/Menu.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 -import QtQuick.Window 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl +import QtQuick.Window T.Menu { id: control diff --git a/src/imports/controls/imagine/MenuItem.qml b/src/imports/controls/imagine/MenuItem.qml index f85fc657..717d6af5 100644 --- a/src/imports/controls/imagine/MenuItem.qml +++ b/src/imports/controls/imagine/MenuItem.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.MenuItem { id: control diff --git a/src/imports/controls/imagine/MenuSeparator.qml b/src/imports/controls/imagine/MenuSeparator.qml index 9ed39087..42d1812f 100644 --- a/src/imports/controls/imagine/MenuSeparator.qml +++ b/src/imports/controls/imagine/MenuSeparator.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.MenuSeparator { id: control diff --git a/src/imports/controls/imagine/Page.qml b/src/imports/controls/imagine/Page.qml index 07ec0a75..1b77112f 100644 --- a/src/imports/controls/imagine/Page.qml +++ b/src/imports/controls/imagine/Page.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.Page { id: control diff --git a/src/imports/controls/imagine/PageIndicator.qml b/src/imports/controls/imagine/PageIndicator.qml index 8da89f5a..ba9bb85c 100644 --- a/src/imports/controls/imagine/PageIndicator.qml +++ b/src/imports/controls/imagine/PageIndicator.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.PageIndicator { id: control diff --git a/src/imports/controls/imagine/Pane.qml b/src/imports/controls/imagine/Pane.qml index 970b22b9..4fdfaa18 100644 --- a/src/imports/controls/imagine/Pane.qml +++ b/src/imports/controls/imagine/Pane.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.Pane { id: control diff --git a/src/imports/controls/imagine/Popup.qml b/src/imports/controls/imagine/Popup.qml index 8f69bef4..bc7e544b 100644 --- a/src/imports/controls/imagine/Popup.qml +++ b/src/imports/controls/imagine/Popup.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.Popup { id: control diff --git a/src/imports/controls/imagine/ProgressBar.qml b/src/imports/controls/imagine/ProgressBar.qml index 69d352eb..0c2ed8d7 100644 --- a/src/imports/controls/imagine/ProgressBar.qml +++ b/src/imports/controls/imagine/ProgressBar.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.ProgressBar { id: control diff --git a/src/imports/controls/imagine/RadioButton.qml b/src/imports/controls/imagine/RadioButton.qml index a50bc127..e1a81321 100644 --- a/src/imports/controls/imagine/RadioButton.qml +++ b/src/imports/controls/imagine/RadioButton.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.RadioButton { id: control diff --git a/src/imports/controls/imagine/RadioDelegate.qml b/src/imports/controls/imagine/RadioDelegate.qml index 5a8356f8..f8bf6c44 100644 --- a/src/imports/controls/imagine/RadioDelegate.qml +++ b/src/imports/controls/imagine/RadioDelegate.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.RadioDelegate { id: control diff --git a/src/imports/controls/imagine/RangeSlider.qml b/src/imports/controls/imagine/RangeSlider.qml index 47d90cf3..37f59a3a 100644 --- a/src/imports/controls/imagine/RangeSlider.qml +++ b/src/imports/controls/imagine/RangeSlider.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.RangeSlider { id: control diff --git a/src/imports/controls/imagine/RoundButton.qml b/src/imports/controls/imagine/RoundButton.qml index fe4cbb36..fe3c3da6 100644 --- a/src/imports/controls/imagine/RoundButton.qml +++ b/src/imports/controls/imagine/RoundButton.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.RoundButton { id: control diff --git a/src/imports/controls/imagine/ScrollBar.qml b/src/imports/controls/imagine/ScrollBar.qml index 68772e12..f512a0b7 100644 --- a/src/imports/controls/imagine/ScrollBar.qml +++ b/src/imports/controls/imagine/ScrollBar.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.ScrollBar { id: control diff --git a/src/imports/controls/imagine/ScrollIndicator.qml b/src/imports/controls/imagine/ScrollIndicator.qml index 896cd876..316b749c 100644 --- a/src/imports/controls/imagine/ScrollIndicator.qml +++ b/src/imports/controls/imagine/ScrollIndicator.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.ScrollIndicator { id: control diff --git a/src/imports/controls/imagine/ScrollView.qml b/src/imports/controls/imagine/ScrollView.qml index 9d469ba5..a251a827 100644 --- a/src/imports/controls/imagine/ScrollView.qml +++ b/src/imports/controls/imagine/ScrollView.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.ScrollView { id: control diff --git a/src/imports/controls/imagine/Slider.qml b/src/imports/controls/imagine/Slider.qml index fe9c3388..597e222a 100644 --- a/src/imports/controls/imagine/Slider.qml +++ b/src/imports/controls/imagine/Slider.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.Slider { id: control diff --git a/src/imports/controls/imagine/SpinBox.qml b/src/imports/controls/imagine/SpinBox.qml index 61135806..6d1bdaba 100644 --- a/src/imports/controls/imagine/SpinBox.qml +++ b/src/imports/controls/imagine/SpinBox.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.SpinBox { id: control diff --git a/src/imports/controls/imagine/SplitView.qml b/src/imports/controls/imagine/SplitView.qml index a4a858f4..36e1b213 100644 --- a/src/imports/controls/imagine/SplitView.qml +++ b/src/imports/controls/imagine/SplitView.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.13 -import QtQuick.Templates 2.13 as T -import QtQuick.Controls.Imagine 2.13 -import QtQuick.Controls.Imagine.impl 2.13 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.SplitView { id: control diff --git a/src/imports/controls/imagine/StackView.qml b/src/imports/controls/imagine/StackView.qml index 407b1d15..a9ddac66 100644 --- a/src/imports/controls/imagine/StackView.qml +++ b/src/imports/controls/imagine/StackView.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.StackView { id: control diff --git a/src/imports/controls/imagine/SwipeDelegate.qml b/src/imports/controls/imagine/SwipeDelegate.qml index 3850253f..ff0924b4 100644 --- a/src/imports/controls/imagine/SwipeDelegate.qml +++ b/src/imports/controls/imagine/SwipeDelegate.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.SwipeDelegate { id: control diff --git a/src/imports/controls/imagine/SwipeView.qml b/src/imports/controls/imagine/SwipeView.qml index 70d65fef..12cafbb8 100644 --- a/src/imports/controls/imagine/SwipeView.qml +++ b/src/imports/controls/imagine/SwipeView.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.SwipeView { id: control diff --git a/src/imports/controls/imagine/Switch.qml b/src/imports/controls/imagine/Switch.qml index 50b407ac..a2f7a9a7 100644 --- a/src/imports/controls/imagine/Switch.qml +++ b/src/imports/controls/imagine/Switch.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.Switch { id: control diff --git a/src/imports/controls/imagine/SwitchDelegate.qml b/src/imports/controls/imagine/SwitchDelegate.qml index 73e5aac0..5b4b2836 100644 --- a/src/imports/controls/imagine/SwitchDelegate.qml +++ b/src/imports/controls/imagine/SwitchDelegate.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.SwitchDelegate { id: control diff --git a/src/imports/controls/imagine/TabBar.qml b/src/imports/controls/imagine/TabBar.qml index 69516e03..26c30e92 100644 --- a/src/imports/controls/imagine/TabBar.qml +++ b/src/imports/controls/imagine/TabBar.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.TabBar { id: control diff --git a/src/imports/controls/imagine/TabButton.qml b/src/imports/controls/imagine/TabButton.qml index 1cdcfc4b..bdd27b93 100644 --- a/src/imports/controls/imagine/TabButton.qml +++ b/src/imports/controls/imagine/TabButton.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.TabButton { id: control diff --git a/src/imports/controls/imagine/TextArea.qml b/src/imports/controls/imagine/TextArea.qml index c7505b52..43c34bd2 100644 --- a/src/imports/controls/imagine/TextArea.qml +++ b/src/imports/controls/imagine/TextArea.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.TextArea { id: control diff --git a/src/imports/controls/imagine/TextField.qml b/src/imports/controls/imagine/TextField.qml index 3ff0ad44..e6f0c889 100644 --- a/src/imports/controls/imagine/TextField.qml +++ b/src/imports/controls/imagine/TextField.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.TextField { id: control diff --git a/src/imports/controls/imagine/ToolBar.qml b/src/imports/controls/imagine/ToolBar.qml index 99bcd3ba..4a343e3c 100644 --- a/src/imports/controls/imagine/ToolBar.qml +++ b/src/imports/controls/imagine/ToolBar.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.ToolBar { id: control diff --git a/src/imports/controls/imagine/ToolButton.qml b/src/imports/controls/imagine/ToolButton.qml index cc22f88d..4f1c43b1 100644 --- a/src/imports/controls/imagine/ToolButton.qml +++ b/src/imports/controls/imagine/ToolButton.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.ToolButton { id: control diff --git a/src/imports/controls/imagine/ToolSeparator.qml b/src/imports/controls/imagine/ToolSeparator.qml index c0887e4d..962c14c7 100644 --- a/src/imports/controls/imagine/ToolSeparator.qml +++ b/src/imports/controls/imagine/ToolSeparator.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.ToolSeparator { id: control diff --git a/src/imports/controls/imagine/ToolTip.qml b/src/imports/controls/imagine/ToolTip.qml index 21d75ebc..f5261400 100644 --- a/src/imports/controls/imagine/ToolTip.qml +++ b/src/imports/controls/imagine/ToolTip.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.ToolTip { id: control diff --git a/src/imports/controls/imagine/Tumbler.qml b/src/imports/controls/imagine/Tumbler.qml index b53b6265..79c719bf 100644 --- a/src/imports/controls/imagine/Tumbler.qml +++ b/src/imports/controls/imagine/Tumbler.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl T.Tumbler { id: control diff --git a/src/imports/controls/imagine/VerticalHeaderView.qml b/src/imports/controls/imagine/VerticalHeaderView.qml index 3fc9ca5a..21e39c39 100644 --- a/src/imports/controls/imagine/VerticalHeaderView.qml +++ b/src/imports/controls/imagine/VerticalHeaderView.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Templates 2.15 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T T.VerticalHeaderView { id: control diff --git a/src/imports/controls/imagine/imagine.pri b/src/imports/controls/imagine/imagine.pri index 9033808f..1c9ffaa2 100644 --- a/src/imports/controls/imagine/imagine.pri +++ b/src/imports/controls/imagine/imagine.pri @@ -1,3 +1,11 @@ +HEADERS += \ + $$PWD/qquickimaginestyle_p.h \ + $$PWD/qquickimaginetheme_p.h + +SOURCES += \ + $$PWD/qquickimaginestyle.cpp \ + $$PWD/qquickimaginetheme.cpp + QML_FILES += \ $$PWD/ApplicationWindow.qml \ $$PWD/BusyIndicator.qml \ @@ -18,7 +26,6 @@ QML_FILES += \ $$PWD/Menu.qml \ $$PWD/MenuItem.qml \ $$PWD/MenuSeparator.qml \ - $$PWD/OpacityMask.qml \ $$PWD/PageIndicator.qml \ $$PWD/Page.qml \ $$PWD/Pane.qml \ @@ -48,15 +55,3 @@ QML_FILES += \ $$PWD/ToolTip.qml \ $$PWD/Tumbler.qml \ $$PWD/VerticalHeaderView.qml - -HEADERS += \ - $$PWD/qquickimageselector_p.h \ - $$PWD/qquickimaginestyle_p.h \ - $$PWD/qquickimaginetheme_p.h \ - $$PWD/qquickninepatchimage_p.h - -SOURCES += \ - $$PWD/qquickimageselector.cpp \ - $$PWD/qquickimaginestyle.cpp \ - $$PWD/qquickimaginetheme.cpp \ - $$PWD/qquickninepatchimage.cpp diff --git a/src/imports/controls/imagine/imagine.pro b/src/imports/controls/imagine/imagine.pro index 66aec543..6a82f5e4 100644 --- a/src/imports/controls/imagine/imagine.pro +++ b/src/imports/controls/imagine/imagine.pro @@ -1,11 +1,11 @@ TARGET = qtquickcontrols2imaginestyleplugin -TARGETPATH = QtQuick/Controls.2/Imagine +TARGETPATH = QtQuick/Controls/Imagine -IMPORT_NAME = QtQuick.Controls.Imagine -IMPORT_VERSION = 2.$$QT_MINOR_VERSION +QML_IMPORT_NAME = QtQuick.Controls.Imagine +QML_IMPORT_VERSION = $$QT_VERSION QT += qml quick -QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2-private +QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2-private quickcontrols2impl-private DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII @@ -18,16 +18,13 @@ OTHER_FILES += \ SOURCES += \ $$PWD/qtquickcontrols2imaginestyleplugin.cpp -qtquickcontrols2imaginestyle.prefix = qt-project.org/imports/QtQuick/Controls.2/Imagine +qtquickcontrols2imaginestyle.prefix = qt-project.org/imports/QtQuick/Controls/Imagine qtquickcontrols2imaginestyle.files += \ $$files($$PWD/images/*.png) \ - $$files($$PWD/images/*.webp) \ - $$files($$PWD/shaders/OpacityMask.frag) \ - $$files($$PWD/shaders/+glslcore/OpacityMask.frag) \ - $$files($$PWD/shaders/+qsb/OpacityMask.frag) + $$files($$PWD/images/*.webp) RESOURCES += qtquickcontrols2imaginestyle -CONFIG += no_cxx_module install_qml_files builtin_resources qtquickcompiler +CONFIG += qmltypes no_cxx_module install_qml_files builtin_resources qtquickcompiler load(qml_plugin) requires(qtConfig(quickcontrols2-imagine)) diff --git a/src/imports/controls/imagine/impl/CMakeLists.txt b/src/imports/controls/imagine/impl/CMakeLists.txt new file mode 100644 index 00000000..a2e38302 --- /dev/null +++ b/src/imports/controls/imagine/impl/CMakeLists.txt @@ -0,0 +1,67 @@ +# Generated from imagine-impl.pro. + +##################################################################### +## qtquickcontrols2imaginestyleimplplugin Plugin: +##################################################################### + +qt_add_qml_module(qtquickcontrols2imaginestyleimplplugin + URI "QtQuick.Controls.Imagine.impl" + VERSION "${CMAKE_PROJECT_VERSION}" + CLASSNAME QtQuickControls2ImagineStyleImplPlugin + GENERATE_QMLTYPES + SOURCES + qquickimageselector.cpp qquickimageselector_p.h + qquickninepatchimage.cpp qquickninepatchimage_p.h + qtquickcontrols2imaginestyleimplplugin.cpp + DEFINES + QT_NO_CAST_FROM_ASCII + QT_NO_CAST_TO_ASCII + LIBRARIES + Qt::CorePrivate + Qt::Gui + Qt::QmlPrivate + Qt::QuickControls2ImplPrivate + Qt::QuickPrivate + Qt::QuickTemplates2Private + PUBLIC_LIBRARIES + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick +) + +# Resources: +set(qmake_qtquickcontrols2imaginestyleimpl_resource_files + "shaders/+glslcore/OpacityMask.frag" + "shaders/+qsb/OpacityMask.frag" + "shaders/OpacityMask.frag" +) + +qt_add_resource(qtquickcontrols2imaginestyleimplplugin "qmake_qtquickcontrols2imaginestyleimpl" + PREFIX + "qt-project.org/imports/QtQuick/Controls/Imagine/impl" + FILES + ${qmake_qtquickcontrols2imaginestyleimpl_resource_files} +) + + +#### Keys ignored in scope 1:.:.:imagine-impl.pro:<TRUE>: +# OTHER_FILES = "qmldir" "$$QML_FILES" +# QML_FILES = "$$PWD/OpacityMask.qml" +# QML_IMPORT_NAME = "QtQuick.Controls.Imagine.impl" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# QT_FOR_CONFIG = "quickcontrols2-private" +# TARGETPATH = "QtQuick/Controls/Imagine/impl" +# _REQUIREMENTS = "qtConfig(quickcontrols2-imagine)" + +set(qml_files + "OpacityMask.qml" +) +set_source_files_properties(OpacityMask.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0" +) + +qt6_target_qml_files(qtquickcontrols2imaginestyleimplplugin + FILES + ${qml_files} +) diff --git a/src/imports/controls/imagine/OpacityMask.qml b/src/imports/controls/imagine/impl/OpacityMask.qml index 040bdcf4..2f1ab139 100644 --- a/src/imports/controls/imagine/OpacityMask.qml +++ b/src/imports/controls/imagine/impl/OpacityMask.qml @@ -34,7 +34,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick /* A cross-graphics API implementation of QtGraphicalEffects' OpacityMask. @@ -63,6 +63,6 @@ Item { anchors.fill: parent - fragmentShader: "qrc:/qt-project.org/imports/QtQuick/Controls.2/Imagine/shaders/OpacityMask.frag" + fragmentShader: "qrc:/qt-project.org/imports/QtQuick/Controls/Imagine/impl/shaders/OpacityMask.frag" } } diff --git a/src/imports/controls/imagine/impl/imagine-impl.pro b/src/imports/controls/imagine/impl/imagine-impl.pro new file mode 100644 index 00000000..aeddd4cc --- /dev/null +++ b/src/imports/controls/imagine/impl/imagine-impl.pro @@ -0,0 +1,39 @@ +TARGET = qtquickcontrols2imaginestyleimplplugin +TARGETPATH = QtQuick/Controls/Imagine/impl + +QML_IMPORT_NAME = QtQuick.Controls.Imagine.impl +QML_IMPORT_VERSION = $$QT_VERSION + +QT += qml quick +QT_PRIVATE += core-private gui qml-private quick-private quicktemplates2-private quickcontrols2impl-private +QT_FOR_CONFIG = quickcontrols2-private + +DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII + +QML_FILES += \ + $$PWD/OpacityMask.qml + +OTHER_FILES += \ + qmldir \ + $$QML_FILES + +HEADERS += \ + $$PWD/qquickimageselector_p.h \ + $$PWD/qquickninepatchimage_p.h + +SOURCES += \ + $$PWD/qquickimageselector.cpp \ + $$PWD/qquickninepatchimage.cpp \ + $$PWD/qtquickcontrols2imaginestyleimplplugin.cpp + +qtquickcontrols2imaginestyleimpl.prefix = qt-project.org/imports/QtQuick/Controls/Imagine/impl +qtquickcontrols2imaginestyleimpl.files += \ + $$files($$PWD/shaders/OpacityMask.frag) \ + $$files($$PWD/shaders/+glslcore/OpacityMask.frag) \ + $$files($$PWD/shaders/+qsb/OpacityMask.frag) +RESOURCES += qtquickcontrols2imaginestyleimpl + +CONFIG += qmltypes install_qmltypes no_cxx_module builtin_resources qtquickcompiler +load(qml_plugin) + +requires(qtConfig(quickcontrols2-imagine)) diff --git a/src/imports/controls/imagine/impl/qmldir b/src/imports/controls/imagine/impl/qmldir new file mode 100644 index 00000000..9febda6d --- /dev/null +++ b/src/imports/controls/imagine/impl/qmldir @@ -0,0 +1,6 @@ +module QtQuick.Controls.Imagine.impl +plugin qtquickcontrols2imaginestyleimplplugin +classname QtQuickControls2ImagineStyleImplPlugin + +#TODO: update to 6.0 +OpacityMask 2.0 OpacityMask.qml diff --git a/src/imports/controls/imagine/qquickimageselector.cpp b/src/imports/controls/imagine/impl/qquickimageselector.cpp index 67d3a24b..dcb7738c 100644 --- a/src/imports/controls/imagine/qquickimageselector.cpp +++ b/src/imports/controls/imagine/impl/qquickimageselector.cpp @@ -47,6 +47,8 @@ QT_BEGIN_NAMESPACE +Q_LOGGING_CATEGORY(lcQtQuickControlsImagine, "qt.quick.controls.imagine") + static const int DEFAULT_CACHE = 500; static inline int cacheSize() @@ -56,8 +58,6 @@ static inline int cacheSize() return ok ? size : DEFAULT_CACHE; } -Q_DECLARE_LOGGING_CATEGORY(lcQtQuickControlsImagine) - // input: [focused, pressed] // => [[focused, pressed], [pressed, focused], [focused], [pressed]] static QList<QStringList> permutations(const QStringList &input, int count = -1) diff --git a/src/imports/controls/imagine/qquickimageselector_p.h b/src/imports/controls/imagine/impl/qquickimageselector_p.h index d050707d..351caefb 100644 --- a/src/imports/controls/imagine/qquickimageselector_p.h +++ b/src/imports/controls/imagine/impl/qquickimageselector_p.h @@ -69,6 +69,8 @@ class QQuickImageSelector : public QObject, public QQmlParserStatus, public QQml Q_PROPERTY(QString separator READ separator WRITE setSeparator FINAL) Q_PROPERTY(bool cache READ cache WRITE setCache FINAL) Q_INTERFACES(QQmlParserStatus QQmlPropertyValueInterceptor) + QML_NAMED_ELEMENT(ImageSelector) + QML_ADDED_IN_VERSION(2, 3) public: explicit QQuickImageSelector(QObject *parent = nullptr); @@ -124,6 +126,8 @@ private: class QQuickNinePatchImageSelector : public QQuickImageSelector { Q_OBJECT + QML_NAMED_ELEMENT(NinePatchImageSelector) + QML_ADDED_IN_VERSION(2, 3) public: explicit QQuickNinePatchImageSelector(QObject *parent = nullptr); @@ -135,6 +139,8 @@ protected: class QQuickAnimatedImageSelector : public QQuickImageSelector { Q_OBJECT + QML_NAMED_ELEMENT(AnimatedImageSelector) + QML_ADDED_IN_VERSION(2, 3) public: explicit QQuickAnimatedImageSelector(QObject *parent = nullptr); diff --git a/src/imports/controls/imagine/qquickninepatchimage.cpp b/src/imports/controls/imagine/impl/qquickninepatchimage.cpp index 7d5e4f71..1d6d60dd 100644 --- a/src/imports/controls/imagine/qquickninepatchimage.cpp +++ b/src/imports/controls/imagine/impl/qquickninepatchimage.cpp @@ -46,22 +46,22 @@ QT_BEGIN_NAMESPACE struct QQuickNinePatchData { - QVector<qreal> coordsForSize(qreal count) const; + QList<qreal> coordsForSize(qreal count) const; inline bool isNull() const { return data.isEmpty(); } inline int count() const { return data.size(); } inline qreal at(int index) const { return data.at(index); } inline qreal size() const { return data.last(); } - void fill(const QVector<qreal> &coords, qreal count); + void fill(const QList<qreal> &coords, qreal count); void clear(); private: bool inverted = false; - QVector<qreal> data; + QList<qreal> data; }; -QVector<qreal> QQuickNinePatchData::coordsForSize(qreal size) const +QList<qreal> QQuickNinePatchData::coordsForSize(qreal size) const { // n = number of stretchable sections // We have to compensate when adding 0 and/or @@ -70,7 +70,7 @@ QVector<qreal> QQuickNinePatchData::coordsForSize(qreal size) const const int n = (inverted ? l - 1 : l) / 2; const qreal stretch = (size - data.last()) / n; - QVector<qreal> coords; + QList<qreal> coords; coords.reserve(l); coords.append(0); @@ -87,7 +87,7 @@ QVector<qreal> QQuickNinePatchData::coordsForSize(qreal size) const return coords; } -void QQuickNinePatchData::fill(const QVector<qreal> &coords, qreal size) +void QQuickNinePatchData::fill(const QList<qreal> &coords, qreal size) { data.clear(); inverted = coords.isEmpty() || coords.first() != 0; @@ -151,8 +151,8 @@ void QQuickNinePatchNode::initialize(QSGTexture *texture, const QSizeF &targetSi m_geometry.allocate(xlen * ylen, verticesPerQuad * quads); QSGGeometry::TexturedPoint2D *vertices = m_geometry.vertexDataAsTexturedPoint2D(); - QVector<qreal> xCoords = xDivs.coordsForSize(targetSize.width()); - QVector<qreal> yCoords = yDivs.coordsForSize(targetSize.height()); + QList<qreal> xCoords = xDivs.coordsForSize(targetSize.width()); + QList<qreal> yCoords = yDivs.coordsForSize(targetSize.height()); for (int y = 0; y < ylen; ++y) { for (int x = 0; x < xlen; ++x, ++vertices) @@ -189,8 +189,8 @@ class QQuickNinePatchImagePrivate : public QQuickImagePrivate public: void updatePatches(); - void updatePaddings(const QSizeF &size, const QVector<qreal> &horizontal, const QVector<qreal> &vertical); - void updateInsets(const QVector<qreal> &horizontal, const QVector<qreal> &vertical); + void updatePaddings(const QSizeF &size, const QList<qreal> &horizontal, const QList<qreal> &vertical); + void updateInsets(const QList<qreal> &horizontal, const QList<qreal> &vertical); bool resetNode = false; qreal topPadding = 0; @@ -207,10 +207,10 @@ public: QQuickNinePatchData yDivs; }; -static QVector<qreal> readCoords(const QRgb *data, int from, int count, int offset, QRgb color) +static QList<qreal> readCoords(const QRgb *data, int from, int count, int offset, QRgb color) { int p1 = -1; - QVector<qreal> coords; + QList<qreal> coords; for (int i = 0; i < count; ++i) { int p2 = from + i * offset; if (data[p2] == color) { @@ -243,17 +243,17 @@ void QQuickNinePatchImagePrivate::updatePatches() xDivs.fill(readCoords(data, 1, w - 1, 1, black), w - 2); // top left -> top right yDivs.fill(readCoords(data, w, h - 1, w, black), h - 2); // top left -> bottom left - QVector<qreal> hInsets = readCoords(data, (h - 1) * w + 1, w - 1, 1, red); // bottom left -> bottom right - QVector<qreal> vInsets = readCoords(data, 2 * w - 1, h - 1, w, red); // top right -> bottom right + QList<qreal> hInsets = readCoords(data, (h - 1) * w + 1, w - 1, 1, red); // bottom left -> bottom right + QList<qreal> vInsets = readCoords(data, 2 * w - 1, h - 1, w, red); // top right -> bottom right updateInsets(hInsets, vInsets); const QSizeF sz(w - leftInset - rightInset, h - topInset - bottomInset); - QVector<qreal> hPaddings = readCoords(data, (h - 1) * w + leftInset + 1, sz.width() - 2, 1, black); // bottom left -> bottom right - QVector<qreal> vPaddings = readCoords(data, (2 + topInset) * w - 1, sz.height() - 2, w, black); // top right -> bottom right + QList<qreal> hPaddings = readCoords(data, (h - 1) * w + leftInset + 1, sz.width() - 2, 1, black); // bottom left -> bottom right + QList<qreal> vPaddings = readCoords(data, (2 + topInset) * w - 1, sz.height() - 2, w, black); // top right -> bottom right updatePaddings(sz, hPaddings, vPaddings); } -void QQuickNinePatchImagePrivate::updatePaddings(const QSizeF &size, const QVector<qreal> &horizontal, const QVector<qreal> &vertical) +void QQuickNinePatchImagePrivate::updatePaddings(const QSizeF &size, const QList<qreal> &horizontal, const QList<qreal> &vertical) { Q_Q(QQuickNinePatchImage); qreal oldTopPadding = topPadding; @@ -287,7 +287,7 @@ void QQuickNinePatchImagePrivate::updatePaddings(const QSizeF &size, const QVect emit q->rightPaddingChanged(); } -void QQuickNinePatchImagePrivate::updateInsets(const QVector<qreal> &horizontal, const QVector<qreal> &vertical) +void QQuickNinePatchImagePrivate::updateInsets(const QList<qreal> &horizontal, const QList<qreal> &vertical) { Q_Q(QQuickNinePatchImage); qreal oldTopInset = topInset; diff --git a/src/imports/controls/imagine/qquickninepatchimage_p.h b/src/imports/controls/imagine/impl/qquickninepatchimage_p.h index 2c29490a..78cc3068 100644 --- a/src/imports/controls/imagine/qquickninepatchimage_p.h +++ b/src/imports/controls/imagine/impl/qquickninepatchimage_p.h @@ -65,6 +65,8 @@ class QQuickNinePatchImage : public QQuickImage Q_PROPERTY(qreal leftInset READ leftInset NOTIFY leftInsetChanged FINAL) Q_PROPERTY(qreal rightInset READ rightInset NOTIFY rightInsetChanged FINAL) Q_PROPERTY(qreal bottomInset READ bottomInset NOTIFY bottomInsetChanged FINAL) + QML_NAMED_ELEMENT(NinePatchImage) + QML_ADDED_IN_VERSION(2, 3) public: explicit QQuickNinePatchImage(QQuickItem *parent = nullptr); diff --git a/src/imports/controls/imagine/impl/qtquickcontrols2imaginestyleimplplugin.cpp b/src/imports/controls/imagine/impl/qtquickcontrols2imaginestyleimplplugin.cpp new file mode 100644 index 00000000..514d9ed8 --- /dev/null +++ b/src/imports/controls/imagine/impl/qtquickcontrols2imaginestyleimplplugin.cpp @@ -0,0 +1,57 @@ +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include <QtQml/qqmlextensionplugin.h> + +QT_BEGIN_NAMESPACE + +class QtQuickControls2ImagineStyleImplPlugin : public QQmlEngineExtensionPlugin +{ + Q_OBJECT + Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid) + +public: + QtQuickControls2ImagineStyleImplPlugin(QObject *parent = nullptr); +}; + +QtQuickControls2ImagineStyleImplPlugin::QtQuickControls2ImagineStyleImplPlugin(QObject *parent) + : QQmlEngineExtensionPlugin(parent) +{ +} + +QT_END_NAMESPACE + +#include "qtquickcontrols2imaginestyleimplplugin.moc" diff --git a/src/imports/controls/imagine/shaders/+glslcore/OpacityMask.frag b/src/imports/controls/imagine/impl/shaders/+glslcore/OpacityMask.frag index 529e2696..529e2696 100644 --- a/src/imports/controls/imagine/shaders/+glslcore/OpacityMask.frag +++ b/src/imports/controls/imagine/impl/shaders/+glslcore/OpacityMask.frag diff --git a/src/imports/controls/imagine/shaders/+qsb/OpacityMask.frag b/src/imports/controls/imagine/impl/shaders/+qsb/OpacityMask.frag Binary files differindex 331b30b8..331b30b8 100644 --- a/src/imports/controls/imagine/shaders/+qsb/OpacityMask.frag +++ b/src/imports/controls/imagine/impl/shaders/+qsb/OpacityMask.frag diff --git a/src/imports/controls/imagine/shaders/OpacityMask.frag b/src/imports/controls/imagine/impl/shaders/OpacityMask.frag index 84f9bc3e..84f9bc3e 100644 --- a/src/imports/controls/imagine/shaders/OpacityMask.frag +++ b/src/imports/controls/imagine/impl/shaders/OpacityMask.frag diff --git a/src/imports/controls/imagine/shaders/OpacityMask_rhi.frag b/src/imports/controls/imagine/impl/shaders/OpacityMask_rhi.frag index 9ae32499..9ae32499 100644 --- a/src/imports/controls/imagine/shaders/OpacityMask_rhi.frag +++ b/src/imports/controls/imagine/impl/shaders/OpacityMask_rhi.frag diff --git a/src/imports/controls/imagine/shaders/compile.bat b/src/imports/controls/imagine/impl/shaders/compile.bat index 8f16d7ac..8f16d7ac 100644 --- a/src/imports/controls/imagine/shaders/compile.bat +++ b/src/imports/controls/imagine/impl/shaders/compile.bat diff --git a/src/imports/controls/imagine/plugins.qmltypes b/src/imports/controls/imagine/plugins.qmltypes deleted file mode 100644 index 191807ae..00000000 --- a/src/imports/controls/imagine/plugins.qmltypes +++ /dev/null @@ -1,335 +0,0 @@ -import QtQuick.tooling 1.2 - -// This file describes the plugin-supplied types contained in the library. -// It is used for QML tooling purposes only. -// -// This file was auto-generated by: -// 'qmlplugindump -nonrelocatable -dependencies dependencies.json QtQuick.Controls.Imagine 2.14' - -Module { - dependencies: ["QtQuick.Controls 2.0"] - Component { - name: "QQuickAnimatedImageSelector" - prototype: "QQuickImageSelector" - exports: ["QtQuick.Controls.Imagine.impl/AnimatedImageSelector 2.3"] - exportMetaObjectRevisions: [0] - } - Component { name: "QQuickAttachedObject"; prototype: "QObject" } - Component { - name: "QQuickImage" - defaultProperty: "data" - prototype: "QQuickImageBase" - Enum { - name: "HAlignment" - values: { - "AlignLeft": 1, - "AlignRight": 2, - "AlignHCenter": 4 - } - } - Enum { - name: "VAlignment" - values: { - "AlignTop": 32, - "AlignBottom": 64, - "AlignVCenter": 128 - } - } - Enum { - name: "FillMode" - values: { - "Stretch": 0, - "PreserveAspectFit": 1, - "PreserveAspectCrop": 2, - "Tile": 3, - "TileVertically": 4, - "TileHorizontally": 5, - "Pad": 6 - } - } - Property { name: "fillMode"; type: "FillMode" } - Property { name: "paintedWidth"; type: "double"; isReadonly: true } - Property { name: "paintedHeight"; type: "double"; isReadonly: true } - Property { name: "horizontalAlignment"; type: "HAlignment" } - Property { name: "verticalAlignment"; type: "VAlignment" } - Property { name: "mipmap"; revision: 3; type: "bool" } - Property { name: "autoTransform"; revision: 5; type: "bool" } - Signal { name: "paintedGeometryChanged" } - Signal { - name: "horizontalAlignmentChanged" - Parameter { name: "alignment"; type: "HAlignment" } - } - Signal { - name: "verticalAlignmentChanged" - Parameter { name: "alignment"; type: "VAlignment" } - } - Signal { - name: "mipmapChanged" - revision: 3 - Parameter { type: "bool" } - } - Signal { name: "autoTransformChanged"; revision: 5 } - } - Component { - name: "QQuickImageBase" - defaultProperty: "data" - prototype: "QQuickImplicitSizeItem" - Enum { - name: "Status" - values: { - "Null": 0, - "Ready": 1, - "Loading": 2, - "Error": 3 - } - } - Property { name: "status"; type: "Status"; isReadonly: true } - Property { name: "source"; type: "QUrl" } - Property { name: "progress"; type: "double"; isReadonly: true } - Property { name: "asynchronous"; type: "bool" } - Property { name: "cache"; type: "bool" } - Property { name: "sourceSize"; type: "QSize" } - Property { name: "mirror"; type: "bool" } - Property { name: "currentFrame"; revision: 14; type: "int" } - Property { name: "frameCount"; revision: 14; type: "int"; isReadonly: true } - Signal { - name: "sourceChanged" - Parameter { type: "QUrl" } - } - Signal { - name: "statusChanged" - Parameter { type: "QQuickImageBase::Status" } - } - Signal { - name: "progressChanged" - Parameter { name: "progress"; type: "double" } - } - Signal { name: "currentFrameChanged"; revision: 14 } - Signal { name: "frameCountChanged"; revision: 14 } - } - Component { - name: "QQuickImageSelector" - prototype: "QObject" - exports: ["QtQuick.Controls.Imagine.impl/ImageSelector 2.3"] - exportMetaObjectRevisions: [0] - Property { name: "source"; type: "QUrl"; isReadonly: true } - Property { name: "name"; type: "string" } - Property { name: "path"; type: "string" } - Property { name: "states"; type: "QVariantList" } - Property { name: "separator"; type: "string" } - Property { name: "cache"; type: "bool" } - } - Component { - name: "QQuickImagineStyle" - prototype: "QQuickAttachedObject" - exports: ["QtQuick.Controls.Imagine/Imagine 2.3"] - isCreatable: false - exportMetaObjectRevisions: [0] - Property { name: "path"; type: "string" } - Property { name: "url"; type: "QUrl"; isReadonly: true } - } - Component { - name: "QQuickImplicitSizeItem" - defaultProperty: "data" - prototype: "QQuickItem" - Property { name: "implicitWidth"; type: "double"; isReadonly: true } - Property { name: "implicitHeight"; type: "double"; isReadonly: true } - } - Component { - name: "QQuickItem" - defaultProperty: "data" - prototype: "QObject" - Enum { - name: "Flags" - values: { - "ItemClipsChildrenToShape": 1, - "ItemAcceptsInputMethod": 2, - "ItemIsFocusScope": 4, - "ItemHasContents": 8, - "ItemAcceptsDrops": 16 - } - } - Enum { - name: "TransformOrigin" - values: { - "TopLeft": 0, - "Top": 1, - "TopRight": 2, - "Left": 3, - "Center": 4, - "Right": 5, - "BottomLeft": 6, - "Bottom": 7, - "BottomRight": 8 - } - } - Property { name: "parent"; type: "QQuickItem"; isPointer: true } - Property { name: "data"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "resources"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "children"; type: "QQuickItem"; isList: true; isReadonly: true } - Property { name: "x"; type: "double" } - Property { name: "y"; type: "double" } - Property { name: "z"; type: "double" } - Property { name: "width"; type: "double" } - Property { name: "height"; type: "double" } - Property { name: "opacity"; type: "double" } - Property { name: "enabled"; type: "bool" } - Property { name: "visible"; type: "bool" } - Property { name: "visibleChildren"; type: "QQuickItem"; isList: true; isReadonly: true } - Property { name: "states"; type: "QQuickState"; isList: true; isReadonly: true } - Property { name: "transitions"; type: "QQuickTransition"; isList: true; isReadonly: true } - Property { name: "state"; type: "string" } - Property { name: "childrenRect"; type: "QRectF"; isReadonly: true } - Property { name: "anchors"; type: "QQuickAnchors"; isReadonly: true; isPointer: true } - Property { name: "left"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "right"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "horizontalCenter"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "top"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "bottom"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "verticalCenter"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "baseline"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "baselineOffset"; type: "double" } - Property { name: "clip"; type: "bool" } - Property { name: "focus"; type: "bool" } - Property { name: "activeFocus"; type: "bool"; isReadonly: true } - Property { name: "activeFocusOnTab"; revision: 1; type: "bool" } - Property { name: "rotation"; type: "double" } - Property { name: "scale"; type: "double" } - Property { name: "transformOrigin"; type: "TransformOrigin" } - Property { name: "transformOriginPoint"; type: "QPointF"; isReadonly: true } - Property { name: "transform"; type: "QQuickTransform"; isList: true; isReadonly: true } - Property { name: "smooth"; type: "bool" } - Property { name: "antialiasing"; type: "bool" } - Property { name: "implicitWidth"; type: "double" } - Property { name: "implicitHeight"; type: "double" } - Property { name: "containmentMask"; revision: 11; type: "QObject"; isPointer: true } - Property { name: "layer"; type: "QQuickItemLayer"; isReadonly: true; isPointer: true } - Signal { - name: "childrenRectChanged" - Parameter { type: "QRectF" } - } - Signal { - name: "baselineOffsetChanged" - Parameter { type: "double" } - } - Signal { - name: "stateChanged" - Parameter { type: "string" } - } - Signal { - name: "focusChanged" - Parameter { type: "bool" } - } - Signal { - name: "activeFocusChanged" - Parameter { type: "bool" } - } - Signal { - name: "activeFocusOnTabChanged" - revision: 1 - Parameter { type: "bool" } - } - Signal { - name: "parentChanged" - Parameter { type: "QQuickItem"; isPointer: true } - } - Signal { - name: "transformOriginChanged" - Parameter { type: "TransformOrigin" } - } - Signal { - name: "smoothChanged" - Parameter { type: "bool" } - } - Signal { - name: "antialiasingChanged" - Parameter { type: "bool" } - } - Signal { - name: "clipChanged" - Parameter { type: "bool" } - } - Signal { - name: "windowChanged" - revision: 1 - Parameter { name: "window"; type: "QQuickWindow"; isPointer: true } - } - Signal { name: "containmentMaskChanged"; revision: 11 } - Method { name: "update" } - Method { - name: "grabToImage" - revision: 4 - type: "bool" - Parameter { name: "callback"; type: "QJSValue" } - Parameter { name: "targetSize"; type: "QSize" } - } - Method { - name: "grabToImage" - revision: 4 - type: "bool" - Parameter { name: "callback"; type: "QJSValue" } - } - Method { - name: "contains" - type: "bool" - Parameter { name: "point"; type: "QPointF" } - } - Method { - name: "mapFromItem" - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "mapToItem" - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "mapFromGlobal" - revision: 7 - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "mapToGlobal" - revision: 7 - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { name: "forceActiveFocus" } - Method { - name: "forceActiveFocus" - Parameter { name: "reason"; type: "Qt::FocusReason" } - } - Method { - name: "nextItemInFocusChain" - revision: 1 - type: "QQuickItem*" - Parameter { name: "forward"; type: "bool" } - } - Method { name: "nextItemInFocusChain"; revision: 1; type: "QQuickItem*" } - Method { - name: "childAt" - type: "QQuickItem*" - Parameter { name: "x"; type: "double" } - Parameter { name: "y"; type: "double" } - } - } - Component { - name: "QQuickNinePatchImage" - defaultProperty: "data" - prototype: "QQuickImage" - exports: ["QtQuick.Controls.Imagine.impl/NinePatchImage 2.3"] - exportMetaObjectRevisions: [0] - Property { name: "topPadding"; type: "double"; isReadonly: true } - Property { name: "leftPadding"; type: "double"; isReadonly: true } - Property { name: "rightPadding"; type: "double"; isReadonly: true } - Property { name: "bottomPadding"; type: "double"; isReadonly: true } - Property { name: "topInset"; type: "double"; isReadonly: true } - Property { name: "leftInset"; type: "double"; isReadonly: true } - Property { name: "rightInset"; type: "double"; isReadonly: true } - Property { name: "bottomInset"; type: "double"; isReadonly: true } - } - Component { - name: "QQuickNinePatchImageSelector" - prototype: "QQuickImageSelector" - exports: ["QtQuick.Controls.Imagine.impl/NinePatchImageSelector 2.3"] - exportMetaObjectRevisions: [0] - } -} diff --git a/src/imports/controls/imagine/qmldir b/src/imports/controls/imagine/qmldir index 4319a82c..65165bf4 100644 --- a/src/imports/controls/imagine/qmldir +++ b/src/imports/controls/imagine/qmldir @@ -1,4 +1,112 @@ module QtQuick.Controls.Imagine plugin qtquickcontrols2imaginestyleplugin classname QtQuickControls2ImagineStylePlugin -depends QtQuick.Controls 2.5 +import QtQuick.Controls.Default auto + +# QtQuick.Controls 2.0 (originally introduced in Qt 5.7) +ApplicationWindow 2.0 ApplicationWindow.qml +BusyIndicator 2.0 BusyIndicator.qml +Button 2.0 Button.qml +CheckBox 2.0 CheckBox.qml +CheckDelegate 2.0 CheckDelegate.qml +ComboBox 2.0 ComboBox.qml +Dial 2.0 Dial.qml +Drawer 2.0 Drawer.qml +Frame 2.0 Frame.qml +GroupBox 2.0 GroupBox.qml +ItemDelegate 2.0 ItemDelegate.qml +Label 2.0 Label.qml +Menu 2.0 Menu.qml +MenuItem 2.0 MenuItem.qml +Page 2.0 Page.qml +PageIndicator 2.0 PageIndicator.qml +Pane 2.0 Pane.qml +Popup 2.0 Popup.qml +ProgressBar 2.0 ProgressBar.qml +RadioButton 2.0 RadioButton.qml +RadioDelegate 2.0 RadioDelegate.qml +RangeSlider 2.0 RangeSlider.qml +ScrollBar 2.0 ScrollBar.qml +ScrollIndicator 2.0 ScrollIndicator.qml +Slider 2.0 Slider.qml +SpinBox 2.0 SpinBox.qml +StackView 2.0 StackView.qml +SwipeDelegate 2.0 SwipeDelegate.qml +SwipeView 2.0 SwipeView.qml +Switch 2.0 Switch.qml +SwitchDelegate 2.0 SwitchDelegate.qml +TabBar 2.0 TabBar.qml +TabButton 2.0 TabButton.qml +TextArea 2.0 TextArea.qml +TextField 2.0 TextField.qml +ToolBar 2.0 ToolBar.qml +ToolButton 2.0 ToolButton.qml +ToolTip 2.0 ToolTip.qml +Tumbler 2.0 Tumbler.qml + +# QtQuick.Controls 2.1 (new types in Qt 5.8) +Dialog 2.1 Dialog.qml +DialogButtonBox 2.1 DialogButtonBox.qml +MenuSeparator 2.1 MenuSeparator.qml +RoundButton 2.1 RoundButton.qml +ToolSeparator 2.1 ToolSeparator.qml + +# QtQuick.Controls 2.2 (new types in Qt 5.9) +DelayButton 2.2 DelayButton.qml + +# QtQuick.Controls 2.13 (new types in Qt 5.13) +SplitView 2.13 SplitView.qml + +# QtQuick.Controls 2.15 (new types in Qt 5.15) +HorizontalHeaderView 2.15 HorizontalHeaderView.qml +VerticalHeaderView 2.15 VerticalHeaderView.qml + +# Make sure we have types registered for Qt 6: QTBUG-85774, QTBUG-85685 +ApplicationWindow 6.0 ApplicationWindow.qml +BusyIndicator 6.0 BusyIndicator.qml +Button 6.0 Button.qml +CheckBox 6.0 CheckBox.qml +CheckDelegate 6.0 CheckDelegate.qml +ComboBox 6.0 ComboBox.qml +DelayButton 6.0 DelayButton.qml +Dial 6.0 Dial.qml +Dialog 6.0 Dialog.qml +DialogButtonBox 6.0 DialogButtonBox.qml +Drawer 6.0 Drawer.qml +Frame 6.0 Frame.qml +GroupBox 6.0 GroupBox.qml +HorizontalHeaderView 6.0 HorizontalHeaderView.qml +ItemDelegate 6.0 ItemDelegate.qml +Label 6.0 Label.qml +Menu 6.0 Menu.qml +MenuItem 6.0 MenuItem.qml +MenuSeparator 6.0 MenuSeparator.qml +Page 6.0 Page.qml +PageIndicator 6.0 PageIndicator.qml +Pane 6.0 Pane.qml +Popup 6.0 Popup.qml +ProgressBar 6.0 ProgressBar.qml +RadioButton 6.0 RadioButton.qml +RadioDelegate 6.0 RadioDelegate.qml +RangeSlider 6.0 RangeSlider.qml +RoundButton 6.0 RoundButton.qml +ScrollBar 6.0 ScrollBar.qml +ScrollIndicator 6.0 ScrollIndicator.qml +Slider 6.0 Slider.qml +SpinBox 6.0 SpinBox.qml +SplitView 6.0 SplitView.qml +StackView 6.0 StackView.qml +SwipeDelegate 6.0 SwipeDelegate.qml +SwipeView 6.0 SwipeView.qml +Switch 6.0 Switch.qml +SwitchDelegate 6.0 SwitchDelegate.qml +TabBar 6.0 TabBar.qml +TabButton 6.0 TabButton.qml +TextArea 6.0 TextArea.qml +TextField 6.0 TextField.qml +ToolBar 6.0 ToolBar.qml +ToolButton 6.0 ToolButton.qml +ToolSeparator 6.0 ToolSeparator.qml +ToolTip 6.0 ToolTip.qml +Tumbler 6.0 Tumbler.qml +VerticalHeaderView 6.0 VerticalHeaderView.qml diff --git a/src/imports/controls/imagine/qquickimaginestyle.cpp b/src/imports/controls/imagine/qquickimaginestyle.cpp index 745bef10..37e55b61 100644 --- a/src/imports/controls/imagine/qquickimaginestyle.cpp +++ b/src/imports/controls/imagine/qquickimaginestyle.cpp @@ -41,7 +41,7 @@ QT_BEGIN_NAMESPACE -Q_GLOBAL_STATIC_WITH_ARGS(QString, GlobalPath, (QLatin1String("qrc:/qt-project.org/imports/QtQuick/Controls.2/Imagine/images/"))) +Q_GLOBAL_STATIC_WITH_ARGS(QString, GlobalPath, (QLatin1String("qrc:/qt-project.org/imports/QtQuick/Controls/Imagine/images/"))) static QString ensureSlash(const QString &path) { @@ -117,7 +117,7 @@ QUrl QQuickImagineStyle::url() const // // If Imagine.path is set to ":/images" by the user, then the final URL would be: // - // QUrl("file:///home/user/qt/qtbase/qml/QtQuick/Controls.2/Imagine/:/images/applicationwindow-background") + // QUrl("file:///home/user/qt/qtbase/qml/QtQuick/Controls/Imagine/:/images/applicationwindow-background") // // To ensure that the correct URL is constructed, we do it ourselves here, // and then the control QML files use the "url" property instead. diff --git a/src/imports/controls/imagine/qquickimaginestyle_p.h b/src/imports/controls/imagine/qquickimaginestyle_p.h index 20a4baf0..212096b9 100644 --- a/src/imports/controls/imagine/qquickimaginestyle_p.h +++ b/src/imports/controls/imagine/qquickimaginestyle_p.h @@ -48,9 +48,9 @@ // We mean it. // -#include <QtQuickControls2/private/qquickattachedobject_p.h> #include <QtCore/qvariant.h> #include <QtQml/qqml.h> +#include <QtQuickControls2Impl/private/qquickattachedobject_p.h> QT_BEGIN_NAMESPACE @@ -59,6 +59,10 @@ class QQuickImagineStyle : public QQuickAttachedObject Q_OBJECT Q_PROPERTY(QString path READ path WRITE setPath RESET resetPath NOTIFY pathChanged FINAL) Q_PROPERTY(QUrl url READ url NOTIFY pathChanged FINAL) + QML_NAMED_ELEMENT(Imagine) + QML_ATTACHED(QQuickImagineStyle) + QML_UNCREATABLE("") + QML_ADDED_IN_VERSION(2, 3) public: explicit QQuickImagineStyle(QObject *parent = nullptr); diff --git a/src/imports/controls/imagine/qtquickcontrols2imaginestyleplugin.cpp b/src/imports/controls/imagine/qtquickcontrols2imaginestyleplugin.cpp index dd20c84b..0c864254 100644 --- a/src/imports/controls/imagine/qtquickcontrols2imaginestyleplugin.cpp +++ b/src/imports/controls/imagine/qtquickcontrols2imaginestyleplugin.cpp @@ -34,20 +34,17 @@ ** ****************************************************************************/ -#include <QtQuickControls2/private/qquickstyleplugin_p.h> -#include <QtCore/qloggingcategory.h> -#include <QtQml/qqml.h> - -#include "qquickimageselector_p.h" #include "qquickimaginestyle_p.h" #include "qquickimaginetheme_p.h" -#include "qquickninepatchimage_p.h" -QT_BEGIN_NAMESPACE +#include <QtCore/qloggingcategory.h> +#include <QtQml/qqml.h> +#include <QtQuickControls2/private/qquickstyleplugin_p.h> +#include <QtQuickTemplates2/private/qquicktheme_p.h> -Q_LOGGING_CATEGORY(lcQtQuickControlsImagine, "qt.quick.controls.imagine") +QT_BEGIN_NAMESPACE -class QtQuickControls2ImagineStylePlugin: public QQuickStylePlugin +class QtQuickControls2ImagineStylePlugin : public QQuickStylePlugin { Q_OBJECT Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid) @@ -55,41 +52,27 @@ class QtQuickControls2ImagineStylePlugin: public QQuickStylePlugin public: QtQuickControls2ImagineStylePlugin(QObject *parent = nullptr); + QString name() const override; + void registerTypes(const char *uri) override; - QString name() const override; - void initializeTheme(QQuickTheme *theme) override; + QQuickImagineTheme theme; }; QtQuickControls2ImagineStylePlugin::QtQuickControls2ImagineStylePlugin(QObject *parent) : QQuickStylePlugin(parent) { } -void QtQuickControls2ImagineStylePlugin::registerTypes(const char *uri) -{ - qmlRegisterModule(uri, 2, 15); // Qt 5.12->2.12, 5.13->2.13... - qmlRegisterUncreatableType<QQuickImagineStyle>(uri, 2, 3, "Imagine", tr("Imagine is an attached property")); - - QByteArray import = QByteArray(uri) + ".impl"; - qmlRegisterModule(import, 2, 15); // Qt 5.12->2.12, 5.13->2.13... - - qmlRegisterType<QQuickAnimatedImageSelector>(import, 2, 3, "AnimatedImageSelector"); - qmlRegisterType<QQuickImageSelector>(import, 2, 3, "ImageSelector"); - qmlRegisterType<QQuickNinePatchImage>(import, 2, 3, "NinePatchImage"); - qmlRegisterType<QQuickNinePatchImageSelector>(import, 2, 3, "NinePatchImageSelector"); - - // Qt 6.0, import version may need to be updated. - qmlRegisterType(resolvedUrl(QStringLiteral("OpacityMask.qml")), import, 2, 0, "OpacityMask"); -} - QString QtQuickControls2ImagineStylePlugin::name() const { return QStringLiteral("Imagine"); } -void QtQuickControls2ImagineStylePlugin::initializeTheme(QQuickTheme *theme) +void QtQuickControls2ImagineStylePlugin::registerTypes(const char *uri) { - QQuickImagineTheme::initialize(theme); + QQuickStylePlugin::registerTypes(uri); + + theme.initialize(QQuickTheme::instance()); } QT_END_NAMESPACE diff --git a/src/imports/controls/macos/Button.qml b/src/imports/controls/macos/Button.qml index 7db1f9ed..6d5e1503 100644 --- a/src/imports/controls/macos/Button.qml +++ b/src/imports/controls/macos/Button.qml @@ -34,10 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.NativeStyle as NativeStyle NativeStyle.DefaultButton { } diff --git a/src/imports/controls/macos/CMakeLists.txt b/src/imports/controls/macos/CMakeLists.txt new file mode 100644 index 00000000..59a1a1f7 --- /dev/null +++ b/src/imports/controls/macos/CMakeLists.txt @@ -0,0 +1,100 @@ +# Generated from macos.pro. + +##################################################################### +## qtquickcontrols2macosstyleplugin Plugin: +##################################################################### + +qt_add_qml_module(qtquickcontrols2macosstyleplugin + URI "QtQuick.Controls.macOS" + VERSION "6.0" # special case + CLASSNAME QtQuickControls2MacOSStylePlugin + IMPORTS + QtQuick.Controls.Fusion/auto + GENERATE_QMLTYPES + SOURCES + qtquickcontrols2macosstyleplugin.cpp + DEFINES + QT_NO_CAST_FROM_ASCII + QT_NO_CAST_TO_ASCII + LIBRARIES + Qt::CorePrivate + Qt::GuiPrivate + Qt::QmlPrivate + Qt::QuickControls2Private + Qt::QuickPrivate + Qt::QuickTemplates2Private + PUBLIC_LIBRARIES + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick + Qt::QuickControls2 + Qt::QuickTemplates2 +) + +#### Keys ignored in scope 1:.:.:macos.pro:<TRUE>: +# OTHER_FILES = "qmldir" "$$QML_FILES" +# QML_IMPORT_NAME = "QtQuick.Controls.macOS" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# TARGETPATH = "QtQuick/Controls/macOS" +# _REQUIREMENTS = "qtConfig(quickcontrols2-macos)" + +set(qml_files + "Button.qml" + "Slider.qml" + "GroupBox.qml" + "CheckBox.qml" + "RadioButton.qml" + "SpinBox.qml" + "TextField.qml" + "Frame.qml" + "TextArea.qml" + "ComboBox.qml" + "ScrollBar.qml" + "ProgressBar.qml" + "Dial.qml" +) +set_source_files_properties(Button.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(Slider.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(GroupBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(CheckBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(RadioButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(SpinBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(TextField.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(Frame.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(TextArea.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(ComboBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(ScrollBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(ProgressBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(Dial.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) + +qt6_target_qml_files(qtquickcontrols2macosstyleplugin + FILES + ${qml_files} +) diff --git a/src/imports/controls/macos/CheckBox.qml b/src/imports/controls/macos/CheckBox.qml index 00ab05d6..9caf3dd0 100644 --- a/src/imports/controls/macos/CheckBox.qml +++ b/src/imports/controls/macos/CheckBox.qml @@ -34,10 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.NativeStyle as NativeStyle NativeStyle.DefaultCheckBox { } diff --git a/src/imports/controls/macos/ComboBox.qml b/src/imports/controls/macos/ComboBox.qml index e331c401..c3880aba 100644 --- a/src/imports/controls/macos/ComboBox.qml +++ b/src/imports/controls/macos/ComboBox.qml @@ -34,10 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.NativeStyle as NativeStyle NativeStyle.DefaultComboBox { } diff --git a/src/imports/controls/fusiondesktop/Button.qml b/src/imports/controls/macos/Dial.qml index 7db1f9ed..90779f71 100644 --- a/src/imports/controls/fusiondesktop/Button.qml +++ b/src/imports/controls/macos/Dial.qml @@ -34,10 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.NativeStyle as NativeStyle -NativeStyle.DefaultButton { +NativeStyle.DefaultDial { } diff --git a/src/imports/controls/macos/Frame.qml b/src/imports/controls/macos/Frame.qml index 024e31a2..0b45b352 100644 --- a/src/imports/controls/macos/Frame.qml +++ b/src/imports/controls/macos/Frame.qml @@ -34,10 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.NativeStyle as NativeStyle NativeStyle.DefaultFrame { } diff --git a/src/imports/controls/macos/GroupBox.qml b/src/imports/controls/macos/GroupBox.qml index 45911ba1..42e6993d 100644 --- a/src/imports/controls/macos/GroupBox.qml +++ b/src/imports/controls/macos/GroupBox.qml @@ -34,10 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.NativeStyle as NativeStyle NativeStyle.DefaultGroupBox { } diff --git a/src/imports/controls/macos/ProgressBar.qml b/src/imports/controls/macos/ProgressBar.qml index 6c4c9c22..feeaca23 100644 --- a/src/imports/controls/macos/ProgressBar.qml +++ b/src/imports/controls/macos/ProgressBar.qml @@ -34,11 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T +import QtQuick.NativeStyle as NativeStyle T.ProgressBar { id: control diff --git a/src/imports/controls/macos/RadioButton.qml b/src/imports/controls/macos/RadioButton.qml index 6f1bdb04..9670abef 100644 --- a/src/imports/controls/macos/RadioButton.qml +++ b/src/imports/controls/macos/RadioButton.qml @@ -34,10 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.NativeStyle as NativeStyle NativeStyle.DefaultRadioButton { } diff --git a/src/imports/controls/macos/ScrollBar.qml b/src/imports/controls/macos/ScrollBar.qml index cfd5735e..72430e95 100644 --- a/src/imports/controls/macos/ScrollBar.qml +++ b/src/imports/controls/macos/ScrollBar.qml @@ -34,10 +34,29 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.NativeStyle as NativeStyle NativeStyle.DefaultScrollBar { + id: controlRoot + + contentItem: NativeStyle.ScrollBar { + control: controlRoot + subControl: NativeStyle.ScrollBar.Handle + overrideState: NativeStyle.ScrollBar.NeverHovered + } + + NativeStyle.ScrollBar { + // Fade a hovered-looking version of the handle + // on top of the default handle when hovering it + anchors.fill: contentItem + control: controlRoot + subControl: NativeStyle.ScrollBar.Handle + overrideState: NativeStyle.ScrollBar.AlwaysHovered + opacity: controlRoot.hovered || control.pressed ? 1 : 0 + visible: contentItem instanceof NativeStyle.StyleItem + Behavior on opacity { NumberAnimation { duration: 150 } } + } + } diff --git a/src/imports/controls/macos/Slider.qml b/src/imports/controls/macos/Slider.qml index 3aed431f..1d04beca 100644 --- a/src/imports/controls/macos/Slider.qml +++ b/src/imports/controls/macos/Slider.qml @@ -34,10 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.NativeStyle as NativeStyle NativeStyle.DefaultSlider { } diff --git a/src/imports/controls/macos/SpinBox.qml b/src/imports/controls/macos/SpinBox.qml index 57b7669d..06663375 100644 --- a/src/imports/controls/macos/SpinBox.qml +++ b/src/imports/controls/macos/SpinBox.qml @@ -34,11 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T +import QtQuick.NativeStyle as NativeStyle T.SpinBox { id: control diff --git a/src/imports/controls/macos/TextArea.qml b/src/imports/controls/macos/TextArea.qml index 6845c13e..51982ff6 100644 --- a/src/imports/controls/macos/TextArea.qml +++ b/src/imports/controls/macos/TextArea.qml @@ -34,10 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.NativeStyle as NativeStyle NativeStyle.DefaultTextArea { } diff --git a/src/imports/controls/macos/TextField.qml b/src/imports/controls/macos/TextField.qml index 5728689b..f96023a6 100644 --- a/src/imports/controls/macos/TextField.qml +++ b/src/imports/controls/macos/TextField.qml @@ -34,10 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.NativeStyle as NativeStyle NativeStyle.DefaultTextField { } diff --git a/src/imports/controls/macos/macos.pri b/src/imports/controls/macos/macos.pri index aeafdcb3..98474a92 100644 --- a/src/imports/controls/macos/macos.pri +++ b/src/imports/controls/macos/macos.pri @@ -11,3 +11,4 @@ QML_FILES += \ $$PWD/ComboBox.qml \ $$PWD/ScrollBar.qml \ $$PWD/ProgressBar.qml \ + $$PWD/Dial.qml \ diff --git a/src/imports/controls/macos/macos.pro b/src/imports/controls/macos/macos.pro index 3ed55ef8..a190a6d2 100644 --- a/src/imports/controls/macos/macos.pro +++ b/src/imports/controls/macos/macos.pro @@ -1,8 +1,8 @@ TARGET = qtquickcontrols2macosstyleplugin -TARGETPATH = QtQuick/Controls.2/macOS +TARGETPATH = QtQuick/Controls/macOS QML_IMPORT_NAME = QtQuick.Controls.macOS -QML_IMPORT_MAJOR_VERSION = 2 +QML_IMPORT_VERSION = $$QT_VERSION QT += qml quick quickcontrols2 quicktemplates2 QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2-private @@ -23,7 +23,6 @@ CONFIG += qmltypes install_qmltypes load(qml_plugin) -# TODO: add config flag -#requires(qtConfig(quickcontrols2-nativestyle)) +requires(qtConfig(quickcontrols2-macos)) HEADERS += diff --git a/src/imports/controls/macos/qmldir b/src/imports/controls/macos/qmldir index acc73818..ea71d8fc 100644 --- a/src/imports/controls/macos/qmldir +++ b/src/imports/controls/macos/qmldir @@ -1,4 +1,18 @@ module QtQuick.Controls.macOS plugin qtquickcontrols2macosstyleplugin classname QtQuickControls2MacOSStylePlugin -depends QtQuick.Controls 2.5 +import QtQuick.Controls.Fusion auto + +Button 6.0 Button.qml +CheckBox 6.0 CheckBox.qml +RadioButton 6.0 RadioButton.qml +Slider 6.0 Slider.qml +GroupBox 6.0 GroupBox.qml +SpinBox 6.0 SpinBox.qml +TextField 6.0 TextField.qml +Frame 6.0 Frame.qml +TextArea 6.0 TextArea.qml +ComboBox 6.0 ComboBox.qml +ScrollBar 6.0 ScrollBar.qml +ProgressBar 6.0 ProgressBar.qml +Dial 6.0 Dial.qml diff --git a/src/imports/controls/material/.prev_CMakeLists.txt b/src/imports/controls/material/.prev_CMakeLists.txt index 15fe3519..123c89dc 100644 --- a/src/imports/controls/material/.prev_CMakeLists.txt +++ b/src/imports/controls/material/.prev_CMakeLists.txt @@ -4,18 +4,14 @@ ## qtquickcontrols2materialstyleplugin Plugin: ##################################################################### -add_qml_module(qtquickcontrols2materialstyleplugin - TARGET_PATH "QtQuick/Controls.2/Material" +qt_add_qml_module(qtquickcontrols2materialstyleplugin URI "QtQuick.Controls.Material" - VERSION "2.${CMAKE_PROJECT_VERSION_MINOR}" + VERSION "${CMAKE_PROJECT_VERSION}" CLASSNAME QtQuickControls2MaterialStylePlugin - DEPENDENCIES - QtQuick.Controls/2.5 - SKIP_TYPE_REGISTRATION + IMPORTS + QtQuick.Controls.Default/auto + GENERATE_QMLTYPES SOURCES - qquickmaterialbusyindicator.cpp qquickmaterialbusyindicator_p.h - qquickmaterialprogressbar.cpp qquickmaterialprogressbar_p.h - qquickmaterialripple.cpp qquickmaterialripple_p.h qquickmaterialstyle.cpp qquickmaterialstyle_p.h qquickmaterialtheme.cpp qquickmaterialtheme_p.h qtquickcontrols2materialstyleplugin.cpp @@ -26,6 +22,7 @@ add_qml_module(qtquickcontrols2materialstyleplugin Qt::CorePrivate Qt::GuiPrivate Qt::QmlPrivate + Qt::QuickControls2ImplPrivate Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private @@ -56,39 +53,36 @@ set(qtquickcontrols2materialstyleplugin_resource_files "shaders/RectangularGlow.frag" ) -add_qt_resource(qtquickcontrols2materialstyleplugin "qtquickcontrols2materialstyleplugin" +qt_add_resource(qtquickcontrols2materialstyleplugin "qtquickcontrols2materialstyleplugin" PREFIX - "/qt-project.org/imports/QtQuick/Controls.2/Material" + "/qt-project.org/imports/QtQuick/Controls/Material" FILES ${qtquickcontrols2materialstyleplugin_resource_files} ) #### Keys ignored in scope 1:.:.:material.pro:<TRUE>: -# IMPORT_NAME = "QtQuick.Controls.Material" -# IMPORT_VERSION = "2.$$QT_MINOR_VERSION" # OTHER_FILES = "qmldir" "$$QML_FILES" -# TARGETPATH = "QtQuick/Controls.2/Material" +# QML_IMPORT_NAME = "QtQuick.Controls.Material" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# TARGETPATH = "QtQuick/Controls/Material" # _REQUIREMENTS = "qtConfig(quickcontrols2-material)" set(qml_files "ApplicationWindow.qml" - "BoxShadow.qml" "BusyIndicator.qml" "Button.qml" "CheckBox.qml" "CheckDelegate.qml" - "CheckIndicator.qml" "ComboBox.qml" - "CursorDelegate.qml" "DelayButton.qml" "Dial.qml" "Dialog.qml" "DialogButtonBox.qml" "Drawer.qml" - "ElevationEffect.qml" "Frame.qml" "GroupBox.qml" + "HorizontalHeaderView.qml" "ItemDelegate.qml" "Label.qml" "Menu.qml" @@ -103,14 +97,11 @@ set(qml_files "ProgressBar.qml" "RadioButton.qml" "RadioDelegate.qml" - "RadioIndicator.qml" "RangeSlider.qml" "RoundButton.qml" - "RectangularGlow.qml" "ScrollBar.qml" "ScrollIndicator.qml" "Slider.qml" - "SliderHandle.qml" "SpinBox.qml" "SplitView.qml" "StackView.qml" @@ -118,7 +109,6 @@ set(qml_files "SwipeView.qml" "Switch.qml" "SwitchDelegate.qml" - "SwitchIndicator.qml" "TabBar.qml" "TabButton.qml" "TextArea.qml" @@ -128,6 +118,157 @@ set(qml_files "ToolSeparator.qml" "ToolTip.qml" "Tumbler.qml" + "VerticalHeaderView.qml" +) +set_source_files_properties(ApplicationWindow.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(BusyIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Button.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(CheckBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(CheckDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ComboBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(DelayButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.2;6.0" +) +set_source_files_properties(Dial.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Dialog.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(DialogButtonBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(Drawer.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Frame.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(GroupBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(HorizontalHeaderView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.15;6.0" +) +set_source_files_properties(ItemDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Label.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Menu.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(MenuBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.3;6.0" +) +set_source_files_properties(MenuBarItem.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.3;6.0" +) +set_source_files_properties(MenuItem.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(MenuSeparator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(Page.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(PageIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Pane.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Popup.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ProgressBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(RadioButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(RadioDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(RangeSlider.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(RoundButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(ScrollBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ScrollIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Slider.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SpinBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SplitView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.13;6.0" +) +set_source_files_properties(StackView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SwipeDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SwipeView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Switch.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SwitchDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(TabBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(TabButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(TextArea.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(TextField.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ToolBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ToolButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ToolSeparator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(ToolTip.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Tumbler.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(VerticalHeaderView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.15;6.0" ) qt6_target_qml_files(qtquickcontrols2materialstyleplugin diff --git a/src/imports/controls/material/ApplicationWindow.qml b/src/imports/controls/material/ApplicationWindow.qml index 6a10ed7f..82a0da8b 100644 --- a/src/imports/controls/material/ApplicationWindow.qml +++ b/src/imports/controls/material/ApplicationWindow.qml @@ -34,23 +34,13 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Templates as T +import QtQuick.Controls.Material T.ApplicationWindow { id: window color: Material.backgroundColor - - overlay.modal: Rectangle { - color: window.Material.backgroundDimColor - Behavior on opacity { NumberAnimation { duration: 150 } } - } - - overlay.modeless: Rectangle { - color: window.Material.backgroundDimColor - Behavior on opacity { NumberAnimation { duration: 150 } } - } } diff --git a/src/imports/controls/material/BusyIndicator.qml b/src/imports/controls/material/BusyIndicator.qml index 8173248c..621b2b43 100644 --- a/src/imports/controls/material/BusyIndicator.qml +++ b/src/imports/controls/material/BusyIndicator.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.BusyIndicator { id: control diff --git a/src/imports/controls/material/Button.qml b/src/imports/controls/material/Button.qml index 04c6664c..9bda0128 100644 --- a/src/imports/controls/material/Button.qml +++ b/src/imports/controls/material/Button.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.Button { id: control diff --git a/src/imports/controls/material/CMakeLists.txt b/src/imports/controls/material/CMakeLists.txt index 1270bfc6..71030fe6 100644 --- a/src/imports/controls/material/CMakeLists.txt +++ b/src/imports/controls/material/CMakeLists.txt @@ -5,17 +5,14 @@ ##################################################################### qt_add_qml_module(qtquickcontrols2materialstyleplugin - TARGET_PATH "QtQuick/Controls.2/Material" + TARGET_PATH "QtQuick/Controls/Material" URI "QtQuick.Controls.Material" - VERSION "2.${CMAKE_PROJECT_VERSION_MINOR}" + VERSION "6.0" # special case CLASSNAME QtQuickControls2MaterialStylePlugin - DEPENDENCIES - QtQuick.Controls/2.5 - SKIP_TYPE_REGISTRATION + IMPORTS + QtQuick.Controls.Default/auto + GENERATE_QMLTYPES SOURCES - qquickmaterialbusyindicator.cpp qquickmaterialbusyindicator_p.h - qquickmaterialprogressbar.cpp qquickmaterialprogressbar_p.h - qquickmaterialripple.cpp qquickmaterialripple_p.h qquickmaterialstyle.cpp qquickmaterialstyle_p.h qquickmaterialtheme.cpp qquickmaterialtheme_p.h qtquickcontrols2materialstyleplugin.cpp @@ -26,6 +23,7 @@ qt_add_qml_module(qtquickcontrols2materialstyleplugin Qt::CorePrivate Qt::GuiPrivate Qt::QmlPrivate + Qt::QuickControls2ImplPrivate Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private @@ -58,35 +56,31 @@ set(qtquickcontrols2materialstyleplugin_resource_files qt_add_resource(qtquickcontrols2materialstyleplugin "qtquickcontrols2materialstyleplugin" PREFIX - "/qt-project.org/imports/QtQuick/Controls.2/Material" + "/qt-project.org/imports/QtQuick/Controls/Material" FILES ${qtquickcontrols2materialstyleplugin_resource_files} ) #### Keys ignored in scope 1:.:.:material.pro:<TRUE>: -# IMPORT_NAME = "QtQuick.Controls.Material" -# IMPORT_VERSION = "2.$$QT_MINOR_VERSION" # OTHER_FILES = "qmldir" "$$QML_FILES" -# TARGETPATH = "QtQuick/Controls.2/Material" +# QML_IMPORT_NAME = "QtQuick.Controls.Material" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# TARGETPATH = "QtQuick/Controls/Material" # _REQUIREMENTS = "qtConfig(quickcontrols2-material)" set(qml_files "ApplicationWindow.qml" - "BoxShadow.qml" "BusyIndicator.qml" "Button.qml" "CheckBox.qml" "CheckDelegate.qml" - "CheckIndicator.qml" "ComboBox.qml" - "CursorDelegate.qml" "DelayButton.qml" "Dial.qml" "Dialog.qml" "DialogButtonBox.qml" "Drawer.qml" - "ElevationEffect.qml" "Frame.qml" "GroupBox.qml" "HorizontalHeaderView.qml" @@ -104,14 +98,11 @@ set(qml_files "ProgressBar.qml" "RadioButton.qml" "RadioDelegate.qml" - "RadioIndicator.qml" "RangeSlider.qml" "RoundButton.qml" - "RectangularGlow.qml" "ScrollBar.qml" "ScrollIndicator.qml" "Slider.qml" - "SliderHandle.qml" "SpinBox.qml" "SplitView.qml" "StackView.qml" @@ -119,7 +110,6 @@ set(qml_files "SwipeView.qml" "Switch.qml" "SwitchDelegate.qml" - "SwitchIndicator.qml" "TabBar.qml" "TabButton.qml" "TextArea.qml" @@ -132,178 +122,154 @@ set(qml_files "VerticalHeaderView.qml" ) set_source_files_properties(ApplicationWindow.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(BoxShadow.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(BusyIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Button.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(CheckBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(CheckDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(CheckIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ComboBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(CursorDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(DelayButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.2;6.0" ) set_source_files_properties(Dial.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Dialog.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(DialogButtonBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(Drawer.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(ElevationEffect.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Frame.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(GroupBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(HorizontalHeaderView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.15;6.0" ) set_source_files_properties(ItemDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Label.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Menu.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(MenuBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.3;6.0" ) set_source_files_properties(MenuBarItem.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.3;6.0" ) set_source_files_properties(MenuItem.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(MenuSeparator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(Page.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(PageIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Pane.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Popup.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ProgressBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(RadioButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(RadioDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(RadioIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(RangeSlider.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(RoundButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(RectangularGlow.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(ScrollBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ScrollIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Slider.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(SliderHandle.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SpinBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SplitView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.13;6.0" ) set_source_files_properties(StackView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SwipeDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SwipeView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Switch.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SwitchDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(SwitchIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(TabBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(TabButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(TextArea.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(TextField.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ToolBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ToolButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ToolSeparator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(ToolTip.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Tumbler.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(VerticalHeaderView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.15;6.0" ) qt6_target_qml_files(qtquickcontrols2materialstyleplugin diff --git a/src/imports/controls/material/CheckBox.qml b/src/imports/controls/material/CheckBox.qml index 159e2f12..a3f717be 100644 --- a/src/imports/controls/material/CheckBox.qml +++ b/src/imports/controls/material/CheckBox.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.CheckBox { id: control diff --git a/src/imports/controls/material/CheckDelegate.qml b/src/imports/controls/material/CheckDelegate.qml index c7d7575e..e5ea5716 100644 --- a/src/imports/controls/material/CheckDelegate.qml +++ b/src/imports/controls/material/CheckDelegate.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.CheckDelegate { id: control diff --git a/src/imports/controls/material/ComboBox.qml b/src/imports/controls/material/ComboBox.qml index e4e5f935..7abb8ddd 100644 --- a/src/imports/controls/material/ComboBox.qml +++ b/src/imports/controls/material/ComboBox.qml @@ -34,13 +34,13 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Window 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Controls.impl 2.15 -import QtQuick.Templates 2.15 as T -import QtQuick.Controls.Material 2.15 -import QtQuick.Controls.Material.impl 2.15 +import QtQuick +import QtQuick.Window +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.ComboBox { id: control @@ -65,7 +65,7 @@ T.ComboBox { delegate: MenuItem { width: ListView.view.width text: control.textRole ? (Array.isArray(control.model) ? modelData[control.textRole] : model[control.textRole]) : modelData - Material.foreground: control.currentIndex === index ? parent.Material.accent : parent.Material.foreground + Material.foreground: control.currentIndex === index ? ListView.view.contentItem.Material.accent : ListView.view.contentItem.Material.foreground highlighted: control.highlightedIndex === index hoverEnabled: control.hoverEnabled } @@ -74,7 +74,7 @@ T.ComboBox { x: control.mirrored ? control.padding : control.width - width - control.padding y: control.topPadding + (control.availableHeight - height) / 2 color: control.enabled ? control.Material.foreground : control.Material.hintTextColor - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/Material/images/drop-indicator.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Material/images/drop-indicator.png" } contentItem: T.TextField { diff --git a/src/imports/controls/material/DelayButton.qml b/src/imports/controls/material/DelayButton.qml index 6b5ef3ad..68773b04 100644 --- a/src/imports/controls/material/DelayButton.qml +++ b/src/imports/controls/material/DelayButton.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.DelayButton { id: control diff --git a/src/imports/controls/material/Dial.qml b/src/imports/controls/material/Dial.qml index 1ad9a0ce..2731436f 100644 --- a/src/imports/controls/material/Dial.qml +++ b/src/imports/controls/material/Dial.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.Dial { id: control diff --git a/src/imports/controls/material/Dialog.qml b/src/imports/controls/material/Dialog.qml index 364c0e57..0a711eec 100644 --- a/src/imports/controls/material/Dialog.qml +++ b/src/imports/controls/material/Dialog.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.Dialog { id: control diff --git a/src/imports/controls/material/DialogButtonBox.qml b/src/imports/controls/material/DialogButtonBox.qml index c53b8210..fda957b1 100644 --- a/src/imports/controls/material/DialogButtonBox.qml +++ b/src/imports/controls/material/DialogButtonBox.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.DialogButtonBox { id: control diff --git a/src/imports/controls/material/Drawer.qml b/src/imports/controls/material/Drawer.qml index 3d64cdef..93c4bf56 100644 --- a/src/imports/controls/material/Drawer.qml +++ b/src/imports/controls/material/Drawer.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.Drawer { id: control diff --git a/src/imports/controls/material/Frame.qml b/src/imports/controls/material/Frame.qml index 0001825e..8626f766 100644 --- a/src/imports/controls/material/Frame.qml +++ b/src/imports/controls/material/Frame.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.Frame { id: control diff --git a/src/imports/controls/material/GroupBox.qml b/src/imports/controls/material/GroupBox.qml index e18a5949..4a27b832 100644 --- a/src/imports/controls/material/GroupBox.qml +++ b/src/imports/controls/material/GroupBox.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.GroupBox { id: control diff --git a/src/imports/controls/material/HorizontalHeaderView.qml b/src/imports/controls/material/HorizontalHeaderView.qml index fd672f34..f6c76c4a 100644 --- a/src/imports/controls/material/HorizontalHeaderView.qml +++ b/src/imports/controls/material/HorizontalHeaderView.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Templates 2.15 as T -import QtQuick.Controls.Material 2.15 -import QtQuick.Controls.Material.impl 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.HorizontalHeaderView { id: control diff --git a/src/imports/controls/material/ItemDelegate.qml b/src/imports/controls/material/ItemDelegate.qml index 2078ce6c..f8cf41df 100644 --- a/src/imports/controls/material/ItemDelegate.qml +++ b/src/imports/controls/material/ItemDelegate.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.ItemDelegate { id: control diff --git a/src/imports/controls/material/Label.qml b/src/imports/controls/material/Label.qml index ad923a24..77e85f42 100644 --- a/src/imports/controls/material/Label.qml +++ b/src/imports/controls/material/Label.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material T.Label { id: control diff --git a/src/imports/controls/material/Menu.qml b/src/imports/controls/material/Menu.qml index 94bcc15e..8e362964 100644 --- a/src/imports/controls/material/Menu.qml +++ b/src/imports/controls/material/Menu.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 -import QtQuick.Window 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl +import QtQuick.Window T.Menu { id: control diff --git a/src/imports/controls/material/MenuBar.qml b/src/imports/controls/material/MenuBar.qml index 66252d6e..621cfbd5 100644 --- a/src/imports/controls/material/MenuBar.qml +++ b/src/imports/controls/material/MenuBar.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.MenuBar { id: control diff --git a/src/imports/controls/material/MenuBarItem.qml b/src/imports/controls/material/MenuBarItem.qml index 588d6fbb..957ee867 100644 --- a/src/imports/controls/material/MenuBarItem.qml +++ b/src/imports/controls/material/MenuBarItem.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.MenuBarItem { id: control diff --git a/src/imports/controls/material/MenuItem.qml b/src/imports/controls/material/MenuItem.qml index a5d2f8a1..522efd4d 100644 --- a/src/imports/controls/material/MenuItem.qml +++ b/src/imports/controls/material/MenuItem.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.MenuItem { id: control @@ -73,7 +73,7 @@ T.MenuItem { visible: control.subMenu mirror: control.mirrored color: control.enabled ? control.Material.foreground : control.Material.hintTextColor - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/Material/images/arrow-indicator.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Material/images/arrow-indicator.png" } contentItem: IconLabel { diff --git a/src/imports/controls/material/MenuSeparator.qml b/src/imports/controls/material/MenuSeparator.qml index 6d80c049..08a33ffe 100644 --- a/src/imports/controls/material/MenuSeparator.qml +++ b/src/imports/controls/material/MenuSeparator.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material T.MenuSeparator { id: control diff --git a/src/imports/controls/material/Page.qml b/src/imports/controls/material/Page.qml index 4da0ecc6..711fac2d 100644 --- a/src/imports/controls/material/Page.qml +++ b/src/imports/controls/material/Page.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material T.Page { id: control diff --git a/src/imports/controls/material/PageIndicator.qml b/src/imports/controls/material/PageIndicator.qml index 5e6ca245..8ccd7de3 100644 --- a/src/imports/controls/material/PageIndicator.qml +++ b/src/imports/controls/material/PageIndicator.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material T.PageIndicator { id: control diff --git a/src/imports/controls/material/Pane.qml b/src/imports/controls/material/Pane.qml index 988e225a..055a8d23 100644 --- a/src/imports/controls/material/Pane.qml +++ b/src/imports/controls/material/Pane.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.Pane { id: control diff --git a/src/imports/controls/material/Popup.qml b/src/imports/controls/material/Popup.qml index 1b576385..cb5b62ec 100644 --- a/src/imports/controls/material/Popup.qml +++ b/src/imports/controls/material/Popup.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.Popup { id: control diff --git a/src/imports/controls/material/ProgressBar.qml b/src/imports/controls/material/ProgressBar.qml index 2848f037..dd4fae0e 100644 --- a/src/imports/controls/material/ProgressBar.qml +++ b/src/imports/controls/material/ProgressBar.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.ProgressBar { id: control diff --git a/src/imports/controls/material/RadioButton.qml b/src/imports/controls/material/RadioButton.qml index dadcc84f..664cb19e 100644 --- a/src/imports/controls/material/RadioButton.qml +++ b/src/imports/controls/material/RadioButton.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.RadioButton { id: control diff --git a/src/imports/controls/material/RadioDelegate.qml b/src/imports/controls/material/RadioDelegate.qml index c977d332..f9737fa5 100644 --- a/src/imports/controls/material/RadioDelegate.qml +++ b/src/imports/controls/material/RadioDelegate.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.RadioDelegate { id: control diff --git a/src/imports/controls/material/RangeSlider.qml b/src/imports/controls/material/RangeSlider.qml index f05601a7..d1d22115 100644 --- a/src/imports/controls/material/RangeSlider.qml +++ b/src/imports/controls/material/RangeSlider.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.impl +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.RangeSlider { id: control diff --git a/src/imports/controls/material/RoundButton.qml b/src/imports/controls/material/RoundButton.qml index 13d0f9db..79f4a249 100644 --- a/src/imports/controls/material/RoundButton.qml +++ b/src/imports/controls/material/RoundButton.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.RoundButton { id: control diff --git a/src/imports/controls/material/ScrollBar.qml b/src/imports/controls/material/ScrollBar.qml index fda64346..55de0d13 100644 --- a/src/imports/controls/material/ScrollBar.qml +++ b/src/imports/controls/material/ScrollBar.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material T.ScrollBar { id: control diff --git a/src/imports/controls/material/ScrollIndicator.qml b/src/imports/controls/material/ScrollIndicator.qml index 19f23ad2..bc81c630 100644 --- a/src/imports/controls/material/ScrollIndicator.qml +++ b/src/imports/controls/material/ScrollIndicator.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material T.ScrollIndicator { id: control diff --git a/src/imports/controls/material/Slider.qml b/src/imports/controls/material/Slider.qml index ac7a0c42..2a366734 100644 --- a/src/imports/controls/material/Slider.qml +++ b/src/imports/controls/material/Slider.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.impl +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.Slider { id: control diff --git a/src/imports/controls/material/SpinBox.qml b/src/imports/controls/material/SpinBox.qml index 23c86bc3..4f69dd25 100644 --- a/src/imports/controls/material/SpinBox.qml +++ b/src/imports/controls/material/SpinBox.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.SpinBox { id: control diff --git a/src/imports/controls/material/SplitView.qml b/src/imports/controls/material/SplitView.qml index 5544e833..e6e3ed3b 100644 --- a/src/imports/controls/material/SplitView.qml +++ b/src/imports/controls/material/SplitView.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.13 -import QtQuick.Templates 2.13 as T -import QtQuick.Controls 2.13 -import QtQuick.Controls.impl 2.13 -import QtQuick.Controls.Material 2.13 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Material T.SplitView { id: control diff --git a/src/imports/controls/material/StackView.qml b/src/imports/controls/material/StackView.qml index dd5d6ce6..4c3e6749 100644 --- a/src/imports/controls/material/StackView.qml +++ b/src/imports/controls/material/StackView.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material T.StackView { id: control diff --git a/src/imports/controls/material/SwipeDelegate.qml b/src/imports/controls/material/SwipeDelegate.qml index d06799be..16ef8ea2 100644 --- a/src/imports/controls/material/SwipeDelegate.qml +++ b/src/imports/controls/material/SwipeDelegate.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.SwipeDelegate { id: control diff --git a/src/imports/controls/material/SwipeView.qml b/src/imports/controls/material/SwipeView.qml index a84f16c5..cd4da229 100644 --- a/src/imports/controls/material/SwipeView.qml +++ b/src/imports/controls/material/SwipeView.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material T.SwipeView { id: control diff --git a/src/imports/controls/material/Switch.qml b/src/imports/controls/material/Switch.qml index fd0db925..a43e8730 100644 --- a/src/imports/controls/material/Switch.qml +++ b/src/imports/controls/material/Switch.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl +import QtQuick.Templates as T T.Switch { id: control diff --git a/src/imports/controls/material/SwitchDelegate.qml b/src/imports/controls/material/SwitchDelegate.qml index 834a3dfa..dd1c4e8d 100644 --- a/src/imports/controls/material/SwitchDelegate.qml +++ b/src/imports/controls/material/SwitchDelegate.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.SwitchDelegate { id: control diff --git a/src/imports/controls/material/TabBar.qml b/src/imports/controls/material/TabBar.qml index 98c9132a..9e9585f3 100644 --- a/src/imports/controls/material/TabBar.qml +++ b/src/imports/controls/material/TabBar.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.TabBar { id: control diff --git a/src/imports/controls/material/TabButton.qml b/src/imports/controls/material/TabButton.qml index 5245652c..eacc95b8 100644 --- a/src/imports/controls/material/TabButton.qml +++ b/src/imports/controls/material/TabButton.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.TabButton { id: control diff --git a/src/imports/controls/material/TextArea.qml b/src/imports/controls/material/TextArea.qml index 249b6401..b1529437 100644 --- a/src/imports/controls/material/TextArea.qml +++ b/src/imports/controls/material/TextArea.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.TextArea { id: control diff --git a/src/imports/controls/material/TextField.qml b/src/imports/controls/material/TextField.qml index ed42b295..2c123c91 100644 --- a/src/imports/controls/material/TextField.qml +++ b/src/imports/controls/material/TextField.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.TextField { id: control diff --git a/src/imports/controls/material/ToolBar.qml b/src/imports/controls/material/ToolBar.qml index 5b887598..a1aa82bd 100644 --- a/src/imports/controls/material/ToolBar.qml +++ b/src/imports/controls/material/ToolBar.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.ToolBar { id: control diff --git a/src/imports/controls/material/ToolButton.qml b/src/imports/controls/material/ToolButton.qml index 69c42441..dc27157f 100644 --- a/src/imports/controls/material/ToolButton.qml +++ b/src/imports/controls/material/ToolButton.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.ToolButton { id: control diff --git a/src/imports/controls/material/ToolSeparator.qml b/src/imports/controls/material/ToolSeparator.qml index 94367657..4bce553d 100644 --- a/src/imports/controls/material/ToolSeparator.qml +++ b/src/imports/controls/material/ToolSeparator.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material T.ToolSeparator { id: control diff --git a/src/imports/controls/material/ToolTip.qml b/src/imports/controls/material/ToolTip.qml index 83afe4b1..033e48a3 100644 --- a/src/imports/controls/material/ToolTip.qml +++ b/src/imports/controls/material/ToolTip.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Material T.ToolTip { id: control diff --git a/src/imports/controls/material/Tumbler.qml b/src/imports/controls/material/Tumbler.qml index 973b4a68..81e35044 100644 --- a/src/imports/controls/material/Tumbler.qml +++ b/src/imports/controls/material/Tumbler.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T +import QtQuick.Controls.Material T.Tumbler { id: control diff --git a/src/imports/controls/material/VerticalHeaderView.qml b/src/imports/controls/material/VerticalHeaderView.qml index 5fc5aebe..1a38b30a 100644 --- a/src/imports/controls/material/VerticalHeaderView.qml +++ b/src/imports/controls/material/VerticalHeaderView.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Templates 2.15 as T -import QtQuick.Controls.Material 2.15 -import QtQuick.Controls.Material.impl 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl T.VerticalHeaderView { id: control diff --git a/src/imports/controls/material/BoxShadow.qml b/src/imports/controls/material/impl/BoxShadow.qml index 5a746c0f..ea09570e 100644 --- a/src/imports/controls/material/BoxShadow.qml +++ b/src/imports/controls/material/impl/BoxShadow.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl /* A implementation of CSS's box-shadow, used by ElevationEffect for a Material Design diff --git a/src/imports/controls/material/impl/CMakeLists.txt b/src/imports/controls/material/impl/CMakeLists.txt new file mode 100644 index 00000000..bcb4f998 --- /dev/null +++ b/src/imports/controls/material/impl/CMakeLists.txt @@ -0,0 +1,81 @@ +# Generated from material-impl.pro. + +##################################################################### +## qtquickcontrols2materialstyleimplplugin Plugin: +##################################################################### + +qt_add_qml_module(qtquickcontrols2materialstyleimplplugin + URI "QtQuick.Controls.Material.impl" + VERSION "${CMAKE_PROJECT_VERSION}" + CLASSNAME QtQuickControls2MaterialStyleImplPlugin + GENERATE_QMLTYPES + SOURCES + qquickmaterialbusyindicator.cpp qquickmaterialbusyindicator_p.h + qquickmaterialprogressbar.cpp qquickmaterialprogressbar_p.h + qquickmaterialripple.cpp qquickmaterialripple_p.h + qtquickcontrols2materialstyleimplplugin.cpp + DEFINES + QT_NO_CAST_FROM_ASCII + QT_NO_CAST_TO_ASCII + LIBRARIES + Qt::CorePrivate + Qt::Gui + Qt::QmlPrivate + Qt::QuickControls2ImplPrivate + Qt::QuickPrivate + Qt::QuickTemplates2Private + PUBLIC_LIBRARIES + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick +) + +#### Keys ignored in scope 1:.:.:material-impl.pro:<TRUE>: +# OTHER_FILES = "qmldir" "$$QML_FILES" +# QML_FILES = "$$PWD/BoxShadow.qml" "$$PWD/CheckIndicator.qml" "$$PWD/CursorDelegate.qml" "$$PWD/ElevationEffect.qml" "$$PWD/RadioIndicator.qml" "$$PWD/RectangularGlow.qml" "$$PWD/SliderHandle.qml" "$$PWD/SwitchIndicator.qml" +# QML_IMPORT_NAME = "QtQuick.Controls.Material.impl" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# QT_FOR_CONFIG = "quickcontrols2-private" +# TARGETPATH = "QtQuick/Controls/Material/impl" +# _REQUIREMENTS = "qtConfig(quickcontrols2-material)" + +set(qml_files + "BoxShadow.qml" + "CheckIndicator.qml" + "CursorDelegate.qml" + "ElevationEffect.qml" + "RadioIndicator.qml" + "RectangularGlow.qml" + "SliderHandle.qml" + "SwitchIndicator.qml" +) +set_source_files_properties(BoxShadow.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0" +) +set_source_files_properties(CheckIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0" +) +set_source_files_properties(CursorDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0" +) +set_source_files_properties(ElevationEffect.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0" +) +set_source_files_properties(RadioIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0" +) +set_source_files_properties(RectangularGlow.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0" +) +set_source_files_properties(SliderHandle.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0" +) +set_source_files_properties(SwitchIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0" +) + +qt6_target_qml_files(qtquickcontrols2materialstyleimplplugin + FILES + ${qml_files} +) diff --git a/src/imports/controls/material/CheckIndicator.qml b/src/imports/controls/material/impl/CheckIndicator.qml index 7caf8553..b6593fab 100644 --- a/src/imports/controls/material/CheckIndicator.qml +++ b/src/imports/controls/material/impl/CheckIndicator.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl Rectangle { id: indicatorItem @@ -72,7 +72,7 @@ Rectangle { y: (parent.height - height) / 2 width: 14 height: 14 - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/Material/images/check.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Material/images/check.png" fillMode: Image.PreserveAspectFit scale: indicatorItem.checkState === Qt.Checked ? 1 : 0 diff --git a/src/imports/controls/material/CursorDelegate.qml b/src/imports/controls/material/impl/CursorDelegate.qml index fe2d25c6..a913ab84 100644 --- a/src/imports/controls/material/CursorDelegate.qml +++ b/src/imports/controls/material/impl/CursorDelegate.qml @@ -34,8 +34,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Controls.Material Rectangle { id: cursor diff --git a/src/imports/controls/material/ElevationEffect.qml b/src/imports/controls/material/impl/ElevationEffect.qml index 73a2a238..8a4e98e3 100644 --- a/src/imports/controls/material/ElevationEffect.qml +++ b/src/imports/controls/material/impl/ElevationEffect.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl /* An effect for standard Material Design elevation shadows. Useful for using as \c layer.effect. diff --git a/src/imports/controls/material/RadioIndicator.qml b/src/imports/controls/material/impl/RadioIndicator.qml index e2c55184..68681c44 100644 --- a/src/imports/controls/material/RadioIndicator.qml +++ b/src/imports/controls/material/impl/RadioIndicator.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl Rectangle { id: indicator diff --git a/src/imports/controls/material/RectangularGlow.qml b/src/imports/controls/material/impl/RectangularGlow.qml index c01e536d..b2337afc 100644 --- a/src/imports/controls/material/RectangularGlow.qml +++ b/src/imports/controls/material/impl/RectangularGlow.qml @@ -34,7 +34,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick /* A cross-graphics API implementation of QtGraphicalEffects' RectangularGlow. @@ -235,6 +235,6 @@ Item { property real spread: rootItem.spread / 2.0 property real cornerRadius: clampedCornerRadius() - fragmentShader: "qrc:/qt-project.org/imports/QtQuick/Controls.2/Material/shaders/RectangularGlow.frag" + fragmentShader: "qrc:/qt-project.org/imports/QtQuick/Controls/Material/shaders/RectangularGlow.frag" } } diff --git a/src/imports/controls/material/SliderHandle.qml b/src/imports/controls/material/impl/SliderHandle.qml index c9078bc8..60fd7aed 100644 --- a/src/imports/controls/material/SliderHandle.qml +++ b/src/imports/controls/material/impl/SliderHandle.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl Item { id: root diff --git a/src/imports/controls/material/SwitchIndicator.qml b/src/imports/controls/material/impl/SwitchIndicator.qml index 3034e771..ae1709b6 100644 --- a/src/imports/controls/material/SwitchIndicator.qml +++ b/src/imports/controls/material/impl/SwitchIndicator.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Material.impl 2.12 +import QtQuick +import QtQuick.Controls.Material +import QtQuick.Controls.Material.impl Item { id: indicator diff --git a/src/imports/controls/material/impl/material-impl.pro b/src/imports/controls/material/impl/material-impl.pro new file mode 100644 index 00000000..b35ab58a --- /dev/null +++ b/src/imports/controls/material/impl/material-impl.pro @@ -0,0 +1,41 @@ +TARGET = qtquickcontrols2materialstyleimplplugin +TARGETPATH = QtQuick/Controls/Material/impl + +QML_IMPORT_NAME = QtQuick.Controls.Material.impl +QML_IMPORT_VERSION = $$QT_VERSION + +QT += qml quick +QT_PRIVATE += core-private gui qml-private quick-private quicktemplates2-private quickcontrols2impl-private +QT_FOR_CONFIG = quickcontrols2-private + +DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII + +QML_FILES += \ + $$PWD/BoxShadow.qml \ + $$PWD/CheckIndicator.qml \ + $$PWD/CursorDelegate.qml \ + $$PWD/ElevationEffect.qml \ + $$PWD/RadioIndicator.qml \ + $$PWD/RectangularGlow.qml \ + $$PWD/SliderHandle.qml \ + $$PWD/SwitchIndicator.qml + +OTHER_FILES += \ + qmldir \ + $$QML_FILES + +HEADERS += \ + qquickmaterialbusyindicator_p.h \ + qquickmaterialprogressbar_p.h \ + qquickmaterialripple_p.h + +SOURCES += \ + $$PWD/qquickmaterialbusyindicator.cpp \ + $$PWD/qquickmaterialprogressbar.cpp \ + $$PWD/qquickmaterialripple.cpp \ + $$PWD/qtquickcontrols2materialstyleimplplugin.cpp + +CONFIG += qmltypes install_qmltypes no_cxx_module install_qml_files builtin_resources qtquickcompiler +load(qml_plugin) + +requires(qtConfig(quickcontrols2-material)) diff --git a/src/imports/controls/material/impl/qmldir b/src/imports/controls/material/impl/qmldir new file mode 100644 index 00000000..09c6f01a --- /dev/null +++ b/src/imports/controls/material/impl/qmldir @@ -0,0 +1,12 @@ +module QtQuick.Controls.Material.impl +plugin qtquickcontrols2materialstyleimplplugin +classname QtQuickControls2MaterialStyleImplPlugin + +BoxShadow 2.0 BoxShadow.qml +CheckIndicator 2.0 CheckIndicator.qml +CursorDelegate 2.0 CursorDelegate.qml +ElevationEffect 2.0 ElevationEffect.qml +RadioIndicator 2.0 RadioIndicator.qml +RectangularGlow 2.0 RectangularGlow.qml +SliderHandle 2.0 SliderHandle.qml +SwitchIndicator 2.0 SwitchIndicator.qml diff --git a/src/imports/controls/material/qquickmaterialbusyindicator.cpp b/src/imports/controls/material/impl/qquickmaterialbusyindicator.cpp index 58c1fd8c..10bcc035 100644 --- a/src/imports/controls/material/qquickmaterialbusyindicator.cpp +++ b/src/imports/controls/material/impl/qquickmaterialbusyindicator.cpp @@ -41,7 +41,7 @@ #include <QtGui/qpainter.h> #include <QtQuick/qsgimagenode.h> #include <QtQuick/qquickwindow.h> -#include <QtQuickControls2/private/qquickanimatednode_p.h> +#include <QtQuickControls2Impl/private/qquickanimatednode_p.h> QT_BEGIN_NAMESPACE diff --git a/src/imports/controls/material/qquickmaterialbusyindicator_p.h b/src/imports/controls/material/impl/qquickmaterialbusyindicator_p.h index ad7bc002..72aeaf66 100644 --- a/src/imports/controls/material/qquickmaterialbusyindicator_p.h +++ b/src/imports/controls/material/impl/qquickmaterialbusyindicator_p.h @@ -58,6 +58,8 @@ class QQuickMaterialBusyIndicator : public QQuickItem Q_OBJECT Q_PROPERTY(QColor color READ color WRITE setColor FINAL) Q_PROPERTY(bool running READ isRunning WRITE setRunning FINAL) + QML_NAMED_ELEMENT(BusyIndicatorImpl) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickMaterialBusyIndicator(QQuickItem *parent = nullptr); diff --git a/src/imports/controls/material/qquickmaterialprogressbar.cpp b/src/imports/controls/material/impl/qquickmaterialprogressbar.cpp index 4635c57b..8b3dde23 100644 --- a/src/imports/controls/material/qquickmaterialprogressbar.cpp +++ b/src/imports/controls/material/impl/qquickmaterialprogressbar.cpp @@ -43,7 +43,7 @@ #include <QtQuick/qsgrectanglenode.h> #include <QtQuick/qsgimagenode.h> #include <QtQuick/qquickwindow.h> -#include <QtQuickControls2/private/qquickanimatednode_p.h> +#include <QtQuickControls2Impl/private/qquickanimatednode_p.h> QT_BEGIN_NAMESPACE diff --git a/src/imports/controls/material/qquickmaterialprogressbar_p.h b/src/imports/controls/material/impl/qquickmaterialprogressbar_p.h index 680f36a4..bf93812d 100644 --- a/src/imports/controls/material/qquickmaterialprogressbar_p.h +++ b/src/imports/controls/material/impl/qquickmaterialprogressbar_p.h @@ -59,6 +59,8 @@ class QQuickMaterialProgressBar : public QQuickItem Q_PROPERTY(QColor color READ color WRITE setColor FINAL) Q_PROPERTY(qreal progress READ progress WRITE setProgress FINAL) Q_PROPERTY(bool indeterminate READ isIndeterminate WRITE setIndeterminate FINAL) + QML_NAMED_ELEMENT(ProgressBarImpl) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickMaterialProgressBar(QQuickItem *parent = nullptr); diff --git a/src/imports/controls/material/qquickmaterialripple.cpp b/src/imports/controls/material/impl/qquickmaterialripple.cpp index e6287ff9..a39a115b 100644 --- a/src/imports/controls/material/qquickmaterialripple.cpp +++ b/src/imports/controls/material/impl/qquickmaterialripple.cpp @@ -39,7 +39,7 @@ #include <QtCore/qmath.h> #include <QtQuick/private/qquickitem_p.h> #include <QtQuick/private/qsgadaptationlayer_p.h> -#include <QtQuickControls2/private/qquickanimatednode_p.h> +#include <QtQuickControls2Impl/private/qquickanimatednode_p.h> #include <QtQuickTemplates2/private/qquickabstractbutton_p.h> #include <QtQuickTemplates2/private/qquickabstractbutton_p_p.h> diff --git a/src/imports/controls/material/qquickmaterialripple_p.h b/src/imports/controls/material/impl/qquickmaterialripple_p.h index 8a80113b..51728389 100644 --- a/src/imports/controls/material/qquickmaterialripple_p.h +++ b/src/imports/controls/material/impl/qquickmaterialripple_p.h @@ -62,6 +62,8 @@ class QQuickMaterialRipple : public QQuickItem Q_PROPERTY(bool active READ isActive WRITE setActive FINAL) Q_PROPERTY(QQuickItem *anchor READ anchor WRITE setAnchor FINAL) Q_PROPERTY(Trigger trigger READ trigger WRITE setTrigger FINAL) + QML_NAMED_ELEMENT(Ripple) + QML_ADDED_IN_VERSION(2, 0) public: QQuickMaterialRipple(QQuickItem *parent = nullptr); diff --git a/src/imports/controls/material/impl/qtquickcontrols2materialstyleimplplugin.cpp b/src/imports/controls/material/impl/qtquickcontrols2materialstyleimplplugin.cpp new file mode 100644 index 00000000..258ea2b6 --- /dev/null +++ b/src/imports/controls/material/impl/qtquickcontrols2materialstyleimplplugin.cpp @@ -0,0 +1,57 @@ +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include <QtQml/qqmlextensionplugin.h> + +QT_BEGIN_NAMESPACE + +class QtQuickControls2MaterialStyleImplPlugin : public QQmlEngineExtensionPlugin +{ + Q_OBJECT + Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid) + +public: + QtQuickControls2MaterialStyleImplPlugin(QObject *parent = nullptr); +}; + +QtQuickControls2MaterialStyleImplPlugin::QtQuickControls2MaterialStyleImplPlugin(QObject *parent) + : QQmlEngineExtensionPlugin(parent) +{ +} + +QT_END_NAMESPACE + +#include "qtquickcontrols2materialstyleimplplugin.moc" diff --git a/src/imports/controls/material/material.pri b/src/imports/controls/material/material.pri index 457a8df1..8cffdabb 100644 --- a/src/imports/controls/material/material.pri +++ b/src/imports/controls/material/material.pri @@ -1,33 +1,23 @@ HEADERS += \ - $$PWD/qquickmaterialbusyindicator_p.h \ - $$PWD/qquickmaterialprogressbar_p.h \ - $$PWD/qquickmaterialripple_p.h \ $$PWD/qquickmaterialstyle_p.h \ $$PWD/qquickmaterialtheme_p.h SOURCES += \ - $$PWD/qquickmaterialbusyindicator.cpp \ - $$PWD/qquickmaterialprogressbar.cpp \ - $$PWD/qquickmaterialripple.cpp \ $$PWD/qquickmaterialstyle.cpp \ $$PWD/qquickmaterialtheme.cpp QML_FILES += \ $$PWD/ApplicationWindow.qml \ - $$PWD/BoxShadow.qml \ $$PWD/BusyIndicator.qml \ $$PWD/Button.qml \ $$PWD/CheckBox.qml \ $$PWD/CheckDelegate.qml \ - $$PWD/CheckIndicator.qml \ $$PWD/ComboBox.qml \ - $$PWD/CursorDelegate.qml \ $$PWD/DelayButton.qml \ $$PWD/Dial.qml \ $$PWD/Dialog.qml \ $$PWD/DialogButtonBox.qml \ $$PWD/Drawer.qml \ - $$PWD/ElevationEffect.qml \ $$PWD/Frame.qml \ $$PWD/GroupBox.qml \ $$PWD/HorizontalHeaderView.qml \ @@ -45,14 +35,11 @@ QML_FILES += \ $$PWD/ProgressBar.qml \ $$PWD/RadioButton.qml \ $$PWD/RadioDelegate.qml \ - $$PWD/RadioIndicator.qml \ $$PWD/RangeSlider.qml \ $$PWD/RoundButton.qml \ - $$PWD/RectangularGlow.qml \ $$PWD/ScrollBar.qml \ $$PWD/ScrollIndicator.qml \ $$PWD/Slider.qml \ - $$PWD/SliderHandle.qml \ $$PWD/SpinBox.qml \ $$PWD/SplitView.qml \ $$PWD/StackView.qml \ @@ -60,7 +47,6 @@ QML_FILES += \ $$PWD/SwipeView.qml \ $$PWD/Switch.qml \ $$PWD/SwitchDelegate.qml \ - $$PWD/SwitchIndicator.qml \ $$PWD/TabBar.qml \ $$PWD/TabButton.qml \ $$PWD/TextArea.qml \ diff --git a/src/imports/controls/material/material.pro b/src/imports/controls/material/material.pro index cf08b925..e8d9db52 100644 --- a/src/imports/controls/material/material.pro +++ b/src/imports/controls/material/material.pro @@ -1,11 +1,11 @@ TARGET = qtquickcontrols2materialstyleplugin -TARGETPATH = QtQuick/Controls.2/Material +TARGETPATH = QtQuick/Controls/Material -IMPORT_NAME = QtQuick.Controls.Material -IMPORT_VERSION = 2.$$QT_MINOR_VERSION +QML_IMPORT_NAME = QtQuick.Controls.Material +QML_IMPORT_VERSION = $$QT_VERSION QT += qml quick -QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2-private +QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2-private quickcontrols2impl-private DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII @@ -21,7 +21,7 @@ SOURCES += \ RESOURCES += \ $$PWD/qtquickcontrols2materialstyleplugin.qrc -CONFIG += no_cxx_module install_qml_files builtin_resources qtquickcompiler +CONFIG += qmltypes no_cxx_module install_qml_files builtin_resources qtquickcompiler load(qml_plugin) requires(qtConfig(quickcontrols2-material)) diff --git a/src/imports/controls/material/plugins.qmltypes b/src/imports/controls/material/plugins.qmltypes deleted file mode 100644 index 7546a7b0..00000000 --- a/src/imports/controls/material/plugins.qmltypes +++ /dev/null @@ -1,458 +0,0 @@ -import QtQuick.tooling 1.2 - -// This file describes the plugin-supplied types contained in the library. -// It is used for QML tooling purposes only. -// -// This file was auto-generated by: -// 'qmlplugindump -nonrelocatable -dependencies dependencies.json QtQuick.Controls.Material 2.14' - -Module { - dependencies: ["QtQuick.Controls 2.0"] - Component { name: "QQuickAttachedObject"; prototype: "QObject" } - Component { - name: "QQuickItem" - defaultProperty: "data" - prototype: "QObject" - Enum { - name: "Flags" - values: { - "ItemClipsChildrenToShape": 1, - "ItemAcceptsInputMethod": 2, - "ItemIsFocusScope": 4, - "ItemHasContents": 8, - "ItemAcceptsDrops": 16 - } - } - Enum { - name: "TransformOrigin" - values: { - "TopLeft": 0, - "Top": 1, - "TopRight": 2, - "Left": 3, - "Center": 4, - "Right": 5, - "BottomLeft": 6, - "Bottom": 7, - "BottomRight": 8 - } - } - Property { name: "parent"; type: "QQuickItem"; isPointer: true } - Property { name: "data"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "resources"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "children"; type: "QQuickItem"; isList: true; isReadonly: true } - Property { name: "x"; type: "double" } - Property { name: "y"; type: "double" } - Property { name: "z"; type: "double" } - Property { name: "width"; type: "double" } - Property { name: "height"; type: "double" } - Property { name: "opacity"; type: "double" } - Property { name: "enabled"; type: "bool" } - Property { name: "visible"; type: "bool" } - Property { name: "visibleChildren"; type: "QQuickItem"; isList: true; isReadonly: true } - Property { name: "states"; type: "QQuickState"; isList: true; isReadonly: true } - Property { name: "transitions"; type: "QQuickTransition"; isList: true; isReadonly: true } - Property { name: "state"; type: "string" } - Property { name: "childrenRect"; type: "QRectF"; isReadonly: true } - Property { name: "anchors"; type: "QQuickAnchors"; isReadonly: true; isPointer: true } - Property { name: "left"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "right"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "horizontalCenter"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "top"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "bottom"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "verticalCenter"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "baseline"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "baselineOffset"; type: "double" } - Property { name: "clip"; type: "bool" } - Property { name: "focus"; type: "bool" } - Property { name: "activeFocus"; type: "bool"; isReadonly: true } - Property { name: "activeFocusOnTab"; revision: 1; type: "bool" } - Property { name: "rotation"; type: "double" } - Property { name: "scale"; type: "double" } - Property { name: "transformOrigin"; type: "TransformOrigin" } - Property { name: "transformOriginPoint"; type: "QPointF"; isReadonly: true } - Property { name: "transform"; type: "QQuickTransform"; isList: true; isReadonly: true } - Property { name: "smooth"; type: "bool" } - Property { name: "antialiasing"; type: "bool" } - Property { name: "implicitWidth"; type: "double" } - Property { name: "implicitHeight"; type: "double" } - Property { name: "containmentMask"; revision: 11; type: "QObject"; isPointer: true } - Property { name: "layer"; type: "QQuickItemLayer"; isReadonly: true; isPointer: true } - Signal { - name: "childrenRectChanged" - Parameter { type: "QRectF" } - } - Signal { - name: "baselineOffsetChanged" - Parameter { type: "double" } - } - Signal { - name: "stateChanged" - Parameter { type: "string" } - } - Signal { - name: "focusChanged" - Parameter { type: "bool" } - } - Signal { - name: "activeFocusChanged" - Parameter { type: "bool" } - } - Signal { - name: "activeFocusOnTabChanged" - revision: 1 - Parameter { type: "bool" } - } - Signal { - name: "parentChanged" - Parameter { type: "QQuickItem"; isPointer: true } - } - Signal { - name: "transformOriginChanged" - Parameter { type: "TransformOrigin" } - } - Signal { - name: "smoothChanged" - Parameter { type: "bool" } - } - Signal { - name: "antialiasingChanged" - Parameter { type: "bool" } - } - Signal { - name: "clipChanged" - Parameter { type: "bool" } - } - Signal { - name: "windowChanged" - revision: 1 - Parameter { name: "window"; type: "QQuickWindow"; isPointer: true } - } - Signal { name: "containmentMaskChanged"; revision: 11 } - Method { name: "update" } - Method { - name: "grabToImage" - revision: 4 - type: "bool" - Parameter { name: "callback"; type: "QJSValue" } - Parameter { name: "targetSize"; type: "QSize" } - } - Method { - name: "grabToImage" - revision: 4 - type: "bool" - Parameter { name: "callback"; type: "QJSValue" } - } - Method { - name: "contains" - type: "bool" - Parameter { name: "point"; type: "QPointF" } - } - Method { - name: "mapFromItem" - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "mapToItem" - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "mapFromGlobal" - revision: 7 - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "mapToGlobal" - revision: 7 - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { name: "forceActiveFocus" } - Method { - name: "forceActiveFocus" - Parameter { name: "reason"; type: "Qt::FocusReason" } - } - Method { - name: "nextItemInFocusChain" - revision: 1 - type: "QQuickItem*" - Parameter { name: "forward"; type: "bool" } - } - Method { name: "nextItemInFocusChain"; revision: 1; type: "QQuickItem*" } - Method { - name: "childAt" - type: "QQuickItem*" - Parameter { name: "x"; type: "double" } - Parameter { name: "y"; type: "double" } - } - } - Component { - name: "QQuickMaterialBusyIndicator" - defaultProperty: "data" - prototype: "QQuickItem" - exports: ["QtQuick.Controls.Material.impl/BusyIndicatorImpl 2.0"] - exportMetaObjectRevisions: [0] - Property { name: "color"; type: "QColor" } - Property { name: "running"; type: "bool" } - } - Component { - name: "QQuickMaterialProgressBar" - defaultProperty: "data" - prototype: "QQuickItem" - exports: ["QtQuick.Controls.Material.impl/ProgressBarImpl 2.0"] - exportMetaObjectRevisions: [0] - Property { name: "color"; type: "QColor" } - Property { name: "progress"; type: "double" } - Property { name: "indeterminate"; type: "bool" } - } - Component { - name: "QQuickMaterialRipple" - defaultProperty: "data" - prototype: "QQuickItem" - exports: ["QtQuick.Controls.Material.impl/Ripple 2.0"] - exportMetaObjectRevisions: [0] - Enum { - name: "Trigger" - values: { - "Press": 0, - "Release": 1 - } - } - Property { name: "color"; type: "QColor" } - Property { name: "clipRadius"; type: "double" } - Property { name: "pressed"; type: "bool" } - Property { name: "active"; type: "bool" } - Property { name: "anchor"; type: "QQuickItem"; isPointer: true } - Property { name: "trigger"; type: "Trigger" } - } - Component { - name: "QQuickMaterialStyle" - prototype: "QQuickAttachedObject" - exports: ["QtQuick.Controls.Material/Material 2.0"] - isCreatable: false - exportMetaObjectRevisions: [0] - Enum { - name: "Theme" - values: { - "Light": 0, - "Dark": 1, - "System": 2 - } - } - Enum { - name: "Variant" - values: { - "Normal": 0, - "Dense": 1 - } - } - Enum { - name: "Color" - values: { - "Red": 0, - "Pink": 1, - "Purple": 2, - "DeepPurple": 3, - "Indigo": 4, - "Blue": 5, - "LightBlue": 6, - "Cyan": 7, - "Teal": 8, - "Green": 9, - "LightGreen": 10, - "Lime": 11, - "Yellow": 12, - "Amber": 13, - "Orange": 14, - "DeepOrange": 15, - "Brown": 16, - "Grey": 17, - "BlueGrey": 18 - } - } - Enum { - name: "Shade" - values: { - "Shade50": 0, - "Shade100": 1, - "Shade200": 2, - "Shade300": 3, - "Shade400": 4, - "Shade500": 5, - "Shade600": 6, - "Shade700": 7, - "Shade800": 8, - "Shade900": 9, - "ShadeA100": 10, - "ShadeA200": 11, - "ShadeA400": 12, - "ShadeA700": 13 - } - } - Property { name: "theme"; type: "Theme" } - Property { name: "primary"; type: "QVariant" } - Property { name: "accent"; type: "QVariant" } - Property { name: "foreground"; type: "QVariant" } - Property { name: "background"; type: "QVariant" } - Property { name: "elevation"; type: "int" } - Property { name: "primaryColor"; type: "QColor"; isReadonly: true } - Property { name: "accentColor"; type: "QColor"; isReadonly: true } - Property { name: "backgroundColor"; type: "QColor"; isReadonly: true } - Property { name: "primaryTextColor"; type: "QColor"; isReadonly: true } - Property { name: "primaryHighlightedTextColor"; type: "QColor"; isReadonly: true } - Property { name: "secondaryTextColor"; type: "QColor"; isReadonly: true } - Property { name: "hintTextColor"; type: "QColor"; isReadonly: true } - Property { name: "textSelectionColor"; type: "QColor"; isReadonly: true } - Property { name: "dropShadowColor"; type: "QColor"; isReadonly: true } - Property { name: "dividerColor"; type: "QColor"; isReadonly: true } - Property { name: "iconColor"; type: "QColor"; isReadonly: true } - Property { name: "iconDisabledColor"; type: "QColor"; isReadonly: true } - Property { name: "buttonColor"; type: "QColor"; isReadonly: true } - Property { name: "buttonDisabledColor"; type: "QColor"; isReadonly: true } - Property { name: "highlightedButtonColor"; type: "QColor"; isReadonly: true } - Property { name: "frameColor"; type: "QColor"; isReadonly: true } - Property { name: "rippleColor"; type: "QColor"; isReadonly: true } - Property { name: "highlightedRippleColor"; type: "QColor"; isReadonly: true } - Property { name: "switchUncheckedTrackColor"; type: "QColor"; isReadonly: true } - Property { name: "switchCheckedTrackColor"; type: "QColor"; isReadonly: true } - Property { name: "switchUncheckedHandleColor"; type: "QColor"; isReadonly: true } - Property { name: "switchCheckedHandleColor"; type: "QColor"; isReadonly: true } - Property { name: "switchDisabledTrackColor"; type: "QColor"; isReadonly: true } - Property { name: "switchDisabledHandleColor"; type: "QColor"; isReadonly: true } - Property { name: "scrollBarColor"; type: "QColor"; isReadonly: true } - Property { name: "scrollBarHoveredColor"; type: "QColor"; isReadonly: true } - Property { name: "scrollBarPressedColor"; type: "QColor"; isReadonly: true } - Property { name: "dialogColor"; type: "QColor"; isReadonly: true } - Property { name: "backgroundDimColor"; type: "QColor"; isReadonly: true } - Property { name: "listHighlightColor"; type: "QColor"; isReadonly: true } - Property { name: "tooltipColor"; type: "QColor"; isReadonly: true } - Property { name: "toolBarColor"; type: "QColor"; isReadonly: true } - Property { name: "toolTextColor"; type: "QColor"; isReadonly: true } - Property { name: "spinBoxDisabledIconColor"; type: "QColor"; isReadonly: true } - Property { name: "touchTarget"; type: "int"; isReadonly: true } - Property { name: "buttonHeight"; type: "int"; isReadonly: true } - Property { name: "delegateHeight"; type: "int"; isReadonly: true } - Property { name: "dialogButtonBoxHeight"; type: "int"; isReadonly: true } - Property { name: "frameVerticalPadding"; type: "int"; isReadonly: true } - Property { name: "menuItemHeight"; type: "int"; isReadonly: true } - Property { name: "menuItemVerticalPadding"; type: "int"; isReadonly: true } - Property { name: "switchDelegateVerticalPadding"; type: "int"; isReadonly: true } - Property { name: "tooltipHeight"; type: "int"; isReadonly: true } - Signal { name: "paletteChanged" } - Method { - name: "color" - type: "QColor" - Parameter { name: "color"; type: "Color" } - Parameter { name: "shade"; type: "Shade" } - } - Method { - name: "color" - type: "QColor" - Parameter { name: "color"; type: "Color" } - } - Method { - name: "shade" - type: "QColor" - Parameter { name: "color"; type: "QColor" } - Parameter { name: "shade"; type: "Shade" } - } - } - Component { - prototype: "QQuickItem" - name: "QtQuick.Controls.Material.impl/BoxShadow 2.0" - exports: ["QtQuick.Controls.Material.impl/BoxShadow 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - Property { name: "offsetX"; type: "int" } - Property { name: "offsetY"; type: "int" } - Property { name: "blurRadius"; type: "int" } - Property { name: "spreadRadius"; type: "int" } - Property { name: "source"; type: "QQuickItem"; isPointer: true } - Property { name: "fullWidth"; type: "bool" } - Property { name: "fullHeight"; type: "bool" } - Property { name: "glowRadius"; type: "double" } - Property { name: "spread"; type: "double" } - Property { name: "color"; type: "QColor" } - Property { name: "cornerRadius"; type: "double" } - Property { name: "cached"; type: "bool" } - } - Component { - prototype: "QQuickRectangle" - name: "QtQuick.Controls.Material.impl/CheckIndicator 2.0" - exports: ["QtQuick.Controls.Material.impl/CheckIndicator 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - Property { name: "control"; type: "QQuickItem"; isPointer: true } - Property { name: "checkState"; type: "int" } - } - Component { - prototype: "QQuickRectangle" - name: "QtQuick.Controls.Material.impl/CursorDelegate 2.0" - exports: ["QtQuick.Controls.Material.impl/CursorDelegate 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickItem" - name: "QtQuick.Controls.Material.impl/ElevationEffect 2.0" - exports: ["QtQuick.Controls.Material.impl/ElevationEffect 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - Property { name: "source"; type: "QVariant" } - Property { name: "elevation"; type: "int" } - Property { name: "fullWidth"; type: "bool" } - Property { name: "fullHeight"; type: "bool" } - Property { name: "sourceItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } - Property { name: "_shadows"; type: "QVariant"; isReadonly: true } - Property { name: "_shadow"; type: "QVariant"; isReadonly: true } - } - Component { - prototype: "QQuickRectangle" - name: "QtQuick.Controls.Material.impl/RadioIndicator 2.0" - exports: ["QtQuick.Controls.Material.impl/RadioIndicator 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - Property { name: "control"; type: "QQuickItem"; isPointer: true } - } - Component { - prototype: "QQuickItem" - name: "QtQuick.Controls.Material.impl/RectangularGlow 2.0" - exports: ["QtQuick.Controls.Material.impl/RectangularGlow 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - Property { name: "glowRadius"; type: "double" } - Property { name: "spread"; type: "double" } - Property { name: "color"; type: "QColor" } - Property { name: "cornerRadius"; type: "double" } - Property { name: "cached"; type: "bool" } - } - Component { - prototype: "QQuickItem" - name: "QtQuick.Controls.Material.impl/SliderHandle 2.0" - exports: ["QtQuick.Controls.Material.impl/SliderHandle 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - Property { name: "value"; type: "double" } - Property { name: "handleHasFocus"; type: "bool" } - Property { name: "handlePressed"; type: "bool" } - Property { name: "handleHovered"; type: "bool" } - Property { name: "initialSize"; type: "int"; isReadonly: true } - Property { name: "control"; type: "QVariant"; isReadonly: true } - } - Component { - prototype: "QQuickItem" - name: "QtQuick.Controls.Material.impl/SwitchIndicator 2.0" - exports: ["QtQuick.Controls.Material.impl/SwitchIndicator 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - Property { name: "control"; type: "QQuickItem"; isPointer: true } - Property { name: "handle"; type: "QQuickRectangle"; isReadonly: true; isPointer: true } - } -} diff --git a/src/imports/controls/material/qmldir b/src/imports/controls/material/qmldir index 870a0382..ae8a26fb 100644 --- a/src/imports/controls/material/qmldir +++ b/src/imports/controls/material/qmldir @@ -1,4 +1,118 @@ module QtQuick.Controls.Material plugin qtquickcontrols2materialstyleplugin classname QtQuickControls2MaterialStylePlugin -depends QtQuick.Controls 2.5 +import QtQuick.Controls.Default auto + +# QtQuick.Controls 2.0 (originally introduced in Qt 5.7) +ApplicationWindow 2.0 ApplicationWindow.qml +BusyIndicator 2.0 BusyIndicator.qml +Button 2.0 Button.qml +CheckBox 2.0 CheckBox.qml +CheckDelegate 2.0 CheckDelegate.qml +ComboBox 2.0 ComboBox.qml +Dial 2.0 Dial.qml +Drawer 2.0 Drawer.qml +Frame 2.0 Frame.qml +GroupBox 2.0 GroupBox.qml +ItemDelegate 2.0 ItemDelegate.qml +Label 2.0 Label.qml +Menu 2.0 Menu.qml +MenuItem 2.0 MenuItem.qml +Page 2.0 Page.qml +PageIndicator 2.0 PageIndicator.qml +Pane 2.0 Pane.qml +Popup 2.0 Popup.qml +ProgressBar 2.0 ProgressBar.qml +RadioButton 2.0 RadioButton.qml +RadioDelegate 2.0 RadioDelegate.qml +RangeSlider 2.0 RangeSlider.qml +ScrollBar 2.0 ScrollBar.qml +ScrollIndicator 2.0 ScrollIndicator.qml +Slider 2.0 Slider.qml +SpinBox 2.0 SpinBox.qml +StackView 2.0 StackView.qml +SwipeDelegate 2.0 SwipeDelegate.qml +SwipeView 2.0 SwipeView.qml +Switch 2.0 Switch.qml +SwitchDelegate 2.0 SwitchDelegate.qml +TabBar 2.0 TabBar.qml +TabButton 2.0 TabButton.qml +TextArea 2.0 TextArea.qml +TextField 2.0 TextField.qml +ToolBar 2.0 ToolBar.qml +ToolButton 2.0 ToolButton.qml +ToolTip 2.0 ToolTip.qml +Tumbler 2.0 Tumbler.qml + +# QtQuick.Controls 2.1 (new types in Qt 5.8) +Dialog 2.1 Dialog.qml +DialogButtonBox 2.1 DialogButtonBox.qml +MenuSeparator 2.1 MenuSeparator.qml +RoundButton 2.1 RoundButton.qml +ToolSeparator 2.1 ToolSeparator.qml + +# QtQuick.Controls 2.2 (new types in Qt 5.9) +DelayButton 2.2 DelayButton.qml + +# QtQuick.Controls 2.3 (new types in Qt 5.10) +MenuBar 2.3 MenuBar.qml +MenuBarItem 2.3 MenuBarItem.qml + +# QtQuick.Controls 2.13 (new types in Qt 5.13) +SplitView 2.13 SplitView.qml + +# QtQuick.Controls 2.15 (new types in Qt 5.15) +HorizontalHeaderView 2.15 HorizontalHeaderView.qml +VerticalHeaderView 2.15 VerticalHeaderView.qml + +# Make sure we have types registered for Qt 6: QTBUG-85774, QTBUG-85685 +ApplicationWindow 6.0 ApplicationWindow.qml +BusyIndicator 6.0 BusyIndicator.qml +Button 6.0 Button.qml +CheckBox 6.0 CheckBox.qml +CheckDelegate 6.0 CheckDelegate.qml +ComboBox 6.0 ComboBox.qml +DelayButton 6.0 DelayButton.qml +Dial 6.0 Dial.qml +Dialog 6.0 Dialog.qml +DialogButtonBox 6.0 DialogButtonBox.qml +Drawer 6.0 Drawer.qml +Frame 6.0 Frame.qml +GroupBox 6.0 GroupBox.qml +HorizontalHeaderView 6.0 HorizontalHeaderView.qml +ItemDelegate 6.0 ItemDelegate.qml +Label 6.0 Label.qml +Menu 6.0 Menu.qml +MenuBar 6.0 MenuBar.qml +MenuBarItem 6.0 MenuBarItem.qml +MenuItem 6.0 MenuItem.qml +MenuSeparator 6.0 MenuSeparator.qml +Page 6.0 Page.qml +PageIndicator 6.0 PageIndicator.qml +Pane 6.0 Pane.qml +Popup 6.0 Popup.qml +ProgressBar 6.0 ProgressBar.qml +RadioButton 6.0 RadioButton.qml +RadioDelegate 6.0 RadioDelegate.qml +RangeSlider 6.0 RangeSlider.qml +RoundButton 6.0 RoundButton.qml +ScrollBar 6.0 ScrollBar.qml +ScrollIndicator 6.0 ScrollIndicator.qml +Slider 6.0 Slider.qml +SpinBox 6.0 SpinBox.qml +SplitView 6.0 SplitView.qml +StackView 6.0 StackView.qml +SwipeDelegate 6.0 SwipeDelegate.qml +SwipeView 6.0 SwipeView.qml +Switch 6.0 Switch.qml +SwitchDelegate 6.0 SwitchDelegate.qml +TabBar 6.0 TabBar.qml +TabButton 6.0 TabButton.qml +TextArea 6.0 TextArea.qml +TextField 6.0 TextField.qml +ToolBar 6.0 ToolBar.qml +ToolButton 6.0 ToolButton.qml +ToolSeparator 6.0 ToolSeparator.qml +ToolTip 6.0 ToolTip.qml +Tumbler 6.0 Tumbler.qml +VerticalHeaderView 6.0 VerticalHeaderView.qml diff --git a/src/imports/controls/material/qquickmaterialstyle.cpp b/src/imports/controls/material/qquickmaterialstyle.cpp index 35afeb00..08f47990 100644 --- a/src/imports/controls/material/qquickmaterialstyle.cpp +++ b/src/imports/controls/material/qquickmaterialstyle.cpp @@ -661,6 +661,7 @@ void QQuickMaterialStyle::setForeground(const QVariant &var) m_foreground = foreground; propagateForeground(); emit foregroundChanged(); + emit paletteChanged(); } void QQuickMaterialStyle::inheritForeground(uint foreground, bool custom, bool has) diff --git a/src/imports/controls/material/qquickmaterialstyle_p.h b/src/imports/controls/material/qquickmaterialstyle_p.h index fa980efc..557a4434 100644 --- a/src/imports/controls/material/qquickmaterialstyle_p.h +++ b/src/imports/controls/material/qquickmaterialstyle_p.h @@ -49,7 +49,7 @@ // #include <QtGui/qcolor.h> -#include <QtQuickControls2/private/qquickattachedobject_p.h> +#include <QtQuickControls2Impl/private/qquickattachedobject_p.h> QT_BEGIN_NAMESPACE @@ -109,6 +109,11 @@ class QQuickMaterialStyle : public QQuickAttachedObject Q_PROPERTY(int switchDelegateVerticalPadding READ switchDelegateVerticalPadding CONSTANT FINAL) Q_PROPERTY(int tooltipHeight READ tooltipHeight CONSTANT FINAL) + QML_NAMED_ELEMENT(Material) + QML_ATTACHED(QQuickMaterialStyle) + QML_UNCREATABLE("") + QML_ADDED_IN_VERSION(2, 0) + public: enum Theme { Light, diff --git a/src/imports/controls/material/qtquickcontrols2materialstyleplugin.cpp b/src/imports/controls/material/qtquickcontrols2materialstyleplugin.cpp index d8cc04dd..6066d3f5 100644 --- a/src/imports/controls/material/qtquickcontrols2materialstyleplugin.cpp +++ b/src/imports/controls/material/qtquickcontrols2materialstyleplugin.cpp @@ -34,16 +34,12 @@ ** ****************************************************************************/ -#include <QtQuickControls2/private/qquickstyleplugin_p.h> - #include "qquickmaterialstyle_p.h" #include "qquickmaterialtheme_p.h" -#include "qquickmaterialbusyindicator_p.h" -#include "qquickmaterialprogressbar_p.h" -#include "qquickmaterialripple_p.h" -#include <QtQuickControls2/private/qquickstyleselector_p.h> -#include <QtQuickControls2/private/qquickpaddedrectangle_p.h> +#include <QtQuickControls2/private/qquickstyleplugin_p.h> +#include <QtQuickControls2Impl/private/qquickpaddedrectangle_p.h> +#include <QtQuickTemplates2/private/qquicktheme_p.h> QT_BEGIN_NAMESPACE @@ -55,36 +51,15 @@ class QtQuickControls2MaterialStylePlugin : public QQuickStylePlugin public: QtQuickControls2MaterialStylePlugin(QObject *parent = nullptr); + QString name() const override; + void registerTypes(const char *uri) override; - QString name() const override; - void initializeTheme(QQuickTheme *theme) override; + QQuickMaterialTheme theme; }; QtQuickControls2MaterialStylePlugin::QtQuickControls2MaterialStylePlugin(QObject *parent) : QQuickStylePlugin(parent) { - QQuickMaterialStyle::initGlobals(); -} - -void QtQuickControls2MaterialStylePlugin::registerTypes(const char *uri) -{ - qmlRegisterModule(uri, 2, 15); // Qt 5.12->2.12, 5.13->2.13... - qmlRegisterUncreatableType<QQuickMaterialStyle>(uri, 2, 0, "Material", tr("Material is an attached property")); - - QByteArray import = QByteArray(uri) + ".impl"; - qmlRegisterModule(import, 2, 15); // Qt 5.12->2.12, 5.13->2.13... - - qmlRegisterType<QQuickMaterialBusyIndicator>(import, 2, 0, "BusyIndicatorImpl"); - qmlRegisterType<QQuickMaterialProgressBar>(import, 2, 0, "ProgressBarImpl"); - qmlRegisterType<QQuickMaterialRipple>(import, 2, 0, "Ripple"); - qmlRegisterType(resolvedUrl(QStringLiteral("BoxShadow.qml")), import, 2, 0, "BoxShadow"); - qmlRegisterType(resolvedUrl(QStringLiteral("CheckIndicator.qml")), import, 2, 0, "CheckIndicator"); - qmlRegisterType(resolvedUrl(QStringLiteral("CursorDelegate.qml")), import, 2, 0, "CursorDelegate"); - qmlRegisterType(resolvedUrl(QStringLiteral("ElevationEffect.qml")), import, 2, 0, "ElevationEffect"); - qmlRegisterType(resolvedUrl(QStringLiteral("RadioIndicator.qml")), import, 2, 0, "RadioIndicator"); - qmlRegisterType(resolvedUrl(QStringLiteral("RectangularGlow.qml")), import, 2, 0, "RectangularGlow"); - qmlRegisterType(resolvedUrl(QStringLiteral("SliderHandle.qml")), import, 2, 0, "SliderHandle"); - qmlRegisterType(resolvedUrl(QStringLiteral("SwitchIndicator.qml")), import, 2, 0, "SwitchIndicator"); } QString QtQuickControls2MaterialStylePlugin::name() const @@ -92,9 +67,12 @@ QString QtQuickControls2MaterialStylePlugin::name() const return QStringLiteral("Material"); } -void QtQuickControls2MaterialStylePlugin::initializeTheme(QQuickTheme *theme) +void QtQuickControls2MaterialStylePlugin::registerTypes(const char *uri) { - QQuickMaterialTheme::initialize(theme); + QQuickStylePlugin::registerTypes(uri); + + QQuickMaterialStyle::initGlobals(); + theme.initialize(QQuickTheme::instance()); } QT_END_NAMESPACE diff --git a/src/imports/controls/material/qtquickcontrols2materialstyleplugin.qrc b/src/imports/controls/material/qtquickcontrols2materialstyleplugin.qrc index 71f9563b..981960c4 100644 --- a/src/imports/controls/material/qtquickcontrols2materialstyleplugin.qrc +++ b/src/imports/controls/material/qtquickcontrols2materialstyleplugin.qrc @@ -1,5 +1,5 @@ <RCC> - <qresource prefix="/qt-project.org/imports/QtQuick/Controls.2/Material"> + <qresource prefix="/qt-project.org/imports/QtQuick/Controls/Material"> <file>images/arrow-indicator.png</file> <file>images/arrow-indicator@2x.png</file> <file>images/arrow-indicator@3x.png</file> diff --git a/src/imports/controls/plugins.qmltypes b/src/imports/controls/plugins.qmltypes deleted file mode 100644 index c3e53431..00000000 --- a/src/imports/controls/plugins.qmltypes +++ /dev/null @@ -1,879 +0,0 @@ -import QtQuick.tooling 1.2 - -// This file describes the plugin-supplied types contained in the library. -// It is used for QML tooling purposes only. -// -// This file was auto-generated by: -// 'qmlplugindump -nonrelocatable -dependencies dependencies.json QtQuick.Controls 2.14' - -Module { - dependencies: [ - "QtQuick 2.11", - "QtQuick.Templates 2.5", - "QtQuick.Window 2.2" - ] - Component { - name: "QQuickCheckLabel" - defaultProperty: "data" - prototype: "QQuickText" - exports: ["QtQuick.Controls.impl/CheckLabel 2.3"] - exportMetaObjectRevisions: [0] - } - Component { - name: "QQuickClippedText" - defaultProperty: "data" - prototype: "QQuickText" - exports: ["QtQuick.Controls.impl/ClippedText 2.2"] - exportMetaObjectRevisions: [0] - Property { name: "clipX"; type: "double" } - Property { name: "clipY"; type: "double" } - Property { name: "clipWidth"; type: "double" } - Property { name: "clipHeight"; type: "double" } - } - Component { - name: "QQuickColor" - prototype: "QObject" - exports: ["QtQuick.Controls.impl/Color 2.3"] - isCreatable: false - isSingleton: true - exportMetaObjectRevisions: [0] - Method { - name: "transparent" - type: "QColor" - Parameter { name: "color"; type: "QColor" } - Parameter { name: "opacity"; type: "double" } - } - Method { - name: "blend" - type: "QColor" - Parameter { name: "a"; type: "QColor" } - Parameter { name: "b"; type: "QColor" } - Parameter { name: "factor"; type: "double" } - } - } - Component { - name: "QQuickColorImage" - defaultProperty: "data" - prototype: "QQuickImage" - exports: ["QtQuick.Controls.impl/ColorImage 2.3"] - exportMetaObjectRevisions: [0] - Property { name: "color"; type: "QColor" } - Property { name: "defaultColor"; type: "QColor" } - } - Component { - name: "QQuickDefaultBusyIndicator" - defaultProperty: "data" - prototype: "QQuickItem" - exports: ["QtQuick.Controls.impl/BusyIndicatorImpl 2.0"] - exportMetaObjectRevisions: [0] - Property { name: "pen"; type: "QColor" } - Property { name: "fill"; type: "QColor" } - Property { name: "running"; type: "bool" } - } - Component { - name: "QQuickDefaultDial" - defaultProperty: "data" - prototype: "QQuickPaintedItem" - exports: ["QtQuick.Controls.impl/DialImpl 2.0"] - exportMetaObjectRevisions: [0] - Property { name: "progress"; type: "double" } - Property { name: "color"; type: "QColor" } - } - Component { - name: "QQuickDefaultProgressBar" - defaultProperty: "data" - prototype: "QQuickItem" - exports: ["QtQuick.Controls.impl/ProgressBarImpl 2.0"] - exportMetaObjectRevisions: [0] - Property { name: "indeterminate"; type: "bool" } - Property { name: "progress"; type: "double" } - Property { name: "color"; type: "QColor" } - } - Component { - name: "QQuickDefaultStyle" - prototype: "QObject" - exports: ["QtQuick.Controls.impl/Default 2.1"] - isCreatable: false - isSingleton: true - exportMetaObjectRevisions: [0] - Property { name: "backgroundColor"; type: "QColor"; isReadonly: true } - Property { name: "overlayModalColor"; type: "QColor"; isReadonly: true } - Property { name: "overlayDimColor"; type: "QColor"; isReadonly: true } - Property { name: "textColor"; type: "QColor"; isReadonly: true } - Property { name: "textDarkColor"; type: "QColor"; isReadonly: true } - Property { name: "textLightColor"; type: "QColor"; isReadonly: true } - Property { name: "textLinkColor"; type: "QColor"; isReadonly: true } - Property { name: "textSelectionColor"; type: "QColor"; isReadonly: true } - Property { name: "textDisabledColor"; type: "QColor"; isReadonly: true } - Property { name: "textDisabledLightColor"; type: "QColor"; isReadonly: true } - Property { name: "textPlaceholderColor"; type: "QColor"; isReadonly: true } - Property { name: "focusColor"; type: "QColor"; isReadonly: true } - Property { name: "focusLightColor"; type: "QColor"; isReadonly: true } - Property { name: "focusPressedColor"; type: "QColor"; isReadonly: true } - Property { name: "buttonColor"; type: "QColor"; isReadonly: true } - Property { name: "buttonPressedColor"; type: "QColor"; isReadonly: true } - Property { name: "buttonCheckedColor"; type: "QColor"; isReadonly: true } - Property { name: "buttonCheckedPressedColor"; type: "QColor"; isReadonly: true } - Property { name: "buttonCheckedFocusColor"; type: "QColor"; isReadonly: true } - Property { name: "toolButtonColor"; type: "QColor"; isReadonly: true } - Property { name: "tabButtonColor"; type: "QColor"; isReadonly: true } - Property { name: "tabButtonPressedColor"; type: "QColor"; isReadonly: true } - Property { name: "tabButtonCheckedPressedColor"; type: "QColor"; isReadonly: true } - Property { name: "delegateColor"; type: "QColor"; isReadonly: true } - Property { name: "delegatePressedColor"; type: "QColor"; isReadonly: true } - Property { name: "delegateFocusColor"; type: "QColor"; isReadonly: true } - Property { name: "indicatorPressedColor"; type: "QColor"; isReadonly: true } - Property { name: "indicatorDisabledColor"; type: "QColor"; isReadonly: true } - Property { name: "indicatorFrameColor"; type: "QColor"; isReadonly: true } - Property { name: "indicatorFramePressedColor"; type: "QColor"; isReadonly: true } - Property { name: "indicatorFrameDisabledColor"; type: "QColor"; isReadonly: true } - Property { name: "frameDarkColor"; type: "QColor"; isReadonly: true } - Property { name: "frameLightColor"; type: "QColor"; isReadonly: true } - Property { name: "scrollBarColor"; type: "QColor"; isReadonly: true } - Property { name: "scrollBarPressedColor"; type: "QColor"; isReadonly: true } - Property { name: "progressBarColor"; type: "QColor"; isReadonly: true } - Property { name: "pageIndicatorColor"; type: "QColor"; isReadonly: true } - Property { name: "separatorColor"; type: "QColor"; isReadonly: true } - Property { name: "disabledDarkColor"; type: "QColor"; isReadonly: true } - Property { name: "disabledLightColor"; type: "QColor"; isReadonly: true } - } - Component { - name: "QQuickIconImage" - defaultProperty: "data" - prototype: "QQuickImage" - exports: ["QtQuick.Controls.impl/IconImage 2.3"] - exportMetaObjectRevisions: [0] - Property { name: "name"; type: "string" } - Property { name: "color"; type: "QColor" } - } - Component { - name: "QQuickIconLabel" - defaultProperty: "data" - prototype: "QQuickItem" - exports: ["QtQuick.Controls.impl/IconLabel 2.3"] - exportMetaObjectRevisions: [0] - Enum { - name: "Display" - values: { - "IconOnly": 0, - "TextOnly": 1, - "TextBesideIcon": 2, - "TextUnderIcon": 3 - } - } - Property { name: "icon"; type: "QQuickIcon" } - Property { name: "text"; type: "string" } - Property { name: "font"; type: "QFont" } - Property { name: "color"; type: "QColor" } - Property { name: "display"; type: "Display" } - Property { name: "spacing"; type: "double" } - Property { name: "mirrored"; type: "bool" } - Property { name: "alignment"; type: "Qt::Alignment" } - Property { name: "topPadding"; type: "double" } - Property { name: "leftPadding"; type: "double" } - Property { name: "rightPadding"; type: "double" } - Property { name: "bottomPadding"; type: "double" } - } - Component { - name: "QQuickImplicitSizeItem" - defaultProperty: "data" - prototype: "QQuickItem" - Property { name: "implicitWidth"; type: "double"; isReadonly: true } - Property { name: "implicitHeight"; type: "double"; isReadonly: true } - } - Component { - name: "QQuickItemGroup" - defaultProperty: "data" - prototype: "QQuickImplicitSizeItem" - exports: ["QtQuick.Controls.impl/ItemGroup 2.2"] - exportMetaObjectRevisions: [0] - } - Component { - name: "QQuickMnemonicLabel" - defaultProperty: "data" - prototype: "QQuickText" - exports: ["QtQuick.Controls.impl/MnemonicLabel 2.3"] - exportMetaObjectRevisions: [0] - Property { name: "text"; type: "string" } - Property { name: "mnemonicVisible"; type: "bool" } - } - Component { - name: "QQuickOverlay" - defaultProperty: "data" - prototype: "QQuickItem" - exports: ["QtQuick.Controls/Overlay 2.3"] - isCreatable: false - exportMetaObjectRevisions: [0] - attachedType: "QQuickOverlayAttached" - Property { name: "modal"; type: "QQmlComponent"; isPointer: true } - Property { name: "modeless"; type: "QQmlComponent"; isPointer: true } - Signal { name: "pressed" } - Signal { name: "released" } - } - Component { - name: "QQuickPaddedRectangle" - defaultProperty: "data" - prototype: "QQuickRectangle" - exports: ["QtQuick.Controls.impl/PaddedRectangle 2.0"] - exportMetaObjectRevisions: [0] - Property { name: "padding"; type: "double" } - Property { name: "topPadding"; type: "double" } - Property { name: "leftPadding"; type: "double" } - Property { name: "rightPadding"; type: "double" } - Property { name: "bottomPadding"; type: "double" } - } - Component { - name: "QQuickPlaceholderText" - defaultProperty: "data" - prototype: "QQuickText" - exports: ["QtQuick.Controls.impl/PlaceholderText 2.2"] - exportMetaObjectRevisions: [0] - } - Component { - name: "QQuickSplitHandleAttached" - prototype: "QObject" - exports: ["QtQuick.Controls/SplitHandle 2.13"] - isCreatable: false - exportMetaObjectRevisions: [0] - Property { name: "hovered"; type: "bool"; isReadonly: true } - Property { name: "pressed"; type: "bool"; isReadonly: true } - } - Component { - name: "QQuickText" - defaultProperty: "data" - prototype: "QQuickImplicitSizeItem" - Enum { - name: "HAlignment" - values: { - "AlignLeft": 1, - "AlignRight": 2, - "AlignHCenter": 4, - "AlignJustify": 8 - } - } - Enum { - name: "VAlignment" - values: { - "AlignTop": 32, - "AlignBottom": 64, - "AlignVCenter": 128 - } - } - Enum { - name: "TextStyle" - values: { - "Normal": 0, - "Outline": 1, - "Raised": 2, - "Sunken": 3 - } - } - Enum { - name: "TextFormat" - values: { - "PlainText": 0, - "RichText": 1, - "MarkdownText": 3, - "AutoText": 2, - "StyledText": 4 - } - } - Enum { - name: "TextElideMode" - values: { - "ElideLeft": 0, - "ElideRight": 1, - "ElideMiddle": 2, - "ElideNone": 3 - } - } - Enum { - name: "WrapMode" - values: { - "NoWrap": 0, - "WordWrap": 1, - "WrapAnywhere": 3, - "WrapAtWordBoundaryOrAnywhere": 4, - "Wrap": 4 - } - } - Enum { - name: "RenderType" - values: { - "QtRendering": 0, - "NativeRendering": 1 - } - } - Enum { - name: "LineHeightMode" - values: { - "ProportionalHeight": 0, - "FixedHeight": 1 - } - } - Enum { - name: "FontSizeMode" - values: { - "FixedSize": 0, - "HorizontalFit": 1, - "VerticalFit": 2, - "Fit": 3 - } - } - Property { name: "text"; type: "string" } - Property { name: "font"; type: "QFont" } - Property { name: "color"; type: "QColor" } - Property { name: "linkColor"; type: "QColor" } - Property { name: "style"; type: "TextStyle" } - Property { name: "styleColor"; type: "QColor" } - Property { name: "horizontalAlignment"; type: "HAlignment" } - Property { name: "effectiveHorizontalAlignment"; type: "HAlignment"; isReadonly: true } - Property { name: "verticalAlignment"; type: "VAlignment" } - Property { name: "wrapMode"; type: "WrapMode" } - Property { name: "lineCount"; type: "int"; isReadonly: true } - Property { name: "truncated"; type: "bool"; isReadonly: true } - Property { name: "maximumLineCount"; type: "int" } - Property { name: "textFormat"; type: "TextFormat" } - Property { name: "elide"; type: "TextElideMode" } - Property { name: "contentWidth"; type: "double"; isReadonly: true } - Property { name: "contentHeight"; type: "double"; isReadonly: true } - Property { name: "paintedWidth"; type: "double"; isReadonly: true } - Property { name: "paintedHeight"; type: "double"; isReadonly: true } - Property { name: "lineHeight"; type: "double" } - Property { name: "lineHeightMode"; type: "LineHeightMode" } - Property { name: "baseUrl"; type: "QUrl" } - Property { name: "minimumPixelSize"; type: "int" } - Property { name: "minimumPointSize"; type: "int" } - Property { name: "fontSizeMode"; type: "FontSizeMode" } - Property { name: "renderType"; type: "RenderType" } - Property { name: "hoveredLink"; revision: 2; type: "string"; isReadonly: true } - Property { name: "padding"; revision: 6; type: "double" } - Property { name: "topPadding"; revision: 6; type: "double" } - Property { name: "leftPadding"; revision: 6; type: "double" } - Property { name: "rightPadding"; revision: 6; type: "double" } - Property { name: "bottomPadding"; revision: 6; type: "double" } - Property { name: "fontInfo"; revision: 9; type: "QJSValue"; isReadonly: true } - Property { name: "advance"; revision: 10; type: "QSizeF"; isReadonly: true } - Signal { - name: "textChanged" - Parameter { name: "text"; type: "string" } - } - Signal { - name: "linkActivated" - Parameter { name: "link"; type: "string" } - } - Signal { - name: "linkHovered" - revision: 2 - Parameter { name: "link"; type: "string" } - } - Signal { - name: "fontChanged" - Parameter { name: "font"; type: "QFont" } - } - Signal { - name: "styleChanged" - Parameter { name: "style"; type: "QQuickText::TextStyle" } - } - Signal { - name: "horizontalAlignmentChanged" - Parameter { name: "alignment"; type: "QQuickText::HAlignment" } - } - Signal { - name: "verticalAlignmentChanged" - Parameter { name: "alignment"; type: "QQuickText::VAlignment" } - } - Signal { - name: "textFormatChanged" - Parameter { name: "textFormat"; type: "QQuickText::TextFormat" } - } - Signal { - name: "elideModeChanged" - Parameter { name: "mode"; type: "QQuickText::TextElideMode" } - } - Signal { name: "contentSizeChanged" } - Signal { - name: "contentWidthChanged" - Parameter { name: "contentWidth"; type: "double" } - } - Signal { - name: "contentHeightChanged" - Parameter { name: "contentHeight"; type: "double" } - } - Signal { - name: "lineHeightChanged" - Parameter { name: "lineHeight"; type: "double" } - } - Signal { - name: "lineHeightModeChanged" - Parameter { name: "mode"; type: "LineHeightMode" } - } - Signal { - name: "lineLaidOut" - Parameter { name: "line"; type: "QQuickTextLine"; isPointer: true } - } - Signal { name: "paddingChanged"; revision: 6 } - Signal { name: "topPaddingChanged"; revision: 6 } - Signal { name: "leftPaddingChanged"; revision: 6 } - Signal { name: "rightPaddingChanged"; revision: 6 } - Signal { name: "bottomPaddingChanged"; revision: 6 } - Signal { name: "fontInfoChanged"; revision: 9 } - Method { name: "doLayout" } - Method { name: "forceLayout"; revision: 9 } - Method { - name: "linkAt" - revision: 3 - type: "string" - Parameter { name: "x"; type: "double" } - Parameter { name: "y"; type: "double" } - } - } - Component { - name: "QQuickTumblerView" - defaultProperty: "data" - prototype: "QQuickItem" - exports: ["QtQuick.Controls.impl/TumblerView 2.1"] - exportMetaObjectRevisions: [0] - Property { name: "model"; type: "QVariant" } - Property { name: "delegate"; type: "QQmlComponent"; isPointer: true } - Property { name: "path"; type: "QQuickPath"; isPointer: true } - } - Component { - prototype: "QQuickAbstractButton" - name: "QtQuick.Controls/AbstractButton 2.0" - exports: ["QtQuick.Controls/AbstractButton 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickAction" - name: "QtQuick.Controls/Action 2.3" - exports: ["QtQuick.Controls/Action 2.3"] - exportMetaObjectRevisions: [3] - isComposite: true - } - Component { - prototype: "QQuickActionGroup" - name: "QtQuick.Controls/ActionGroup 2.3" - exports: ["QtQuick.Controls/ActionGroup 2.3"] - exportMetaObjectRevisions: [3] - isComposite: true - defaultProperty: "actions" - } - Component { - prototype: "QQuickApplicationWindow" - name: "QtQuick.Controls/ApplicationWindow 2.0" - exports: ["QtQuick.Controls/ApplicationWindow 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "contentData" - } - Component { - prototype: "QQuickBusyIndicator" - name: "QtQuick.Controls/BusyIndicator 2.0" - exports: ["QtQuick.Controls/BusyIndicator 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickButton" - name: "QtQuick.Controls/Button 2.0" - exports: ["QtQuick.Controls/Button 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickButtonGroup" - name: "QtQuick.Controls/ButtonGroup 2.0" - exports: ["QtQuick.Controls/ButtonGroup 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - } - Component { - prototype: "QQuickCheckBox" - name: "QtQuick.Controls/CheckBox 2.0" - exports: ["QtQuick.Controls/CheckBox 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickCheckDelegate" - name: "QtQuick.Controls/CheckDelegate 2.0" - exports: ["QtQuick.Controls/CheckDelegate 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickComboBox" - name: "QtQuick.Controls/ComboBox 2.0" - exports: ["QtQuick.Controls/ComboBox 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickContainer" - name: "QtQuick.Controls/Container 2.0" - exports: ["QtQuick.Controls/Container 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "contentData" - } - Component { - prototype: "QQuickControl" - name: "QtQuick.Controls/Control 2.0" - exports: ["QtQuick.Controls/Control 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickDelayButton" - name: "QtQuick.Controls/DelayButton 2.2" - exports: ["QtQuick.Controls/DelayButton 2.2"] - exportMetaObjectRevisions: [2] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickDial" - name: "QtQuick.Controls/Dial 2.0" - exports: ["QtQuick.Controls/Dial 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickDialog" - name: "QtQuick.Controls/Dialog 2.1" - exports: ["QtQuick.Controls/Dialog 2.1"] - exportMetaObjectRevisions: [1] - isComposite: true - defaultProperty: "contentData" - } - Component { - prototype: "QQuickDialogButtonBox" - name: "QtQuick.Controls/DialogButtonBox 2.1" - exports: ["QtQuick.Controls/DialogButtonBox 2.1"] - exportMetaObjectRevisions: [1] - isComposite: true - defaultProperty: "contentData" - } - Component { - prototype: "QQuickDrawer" - name: "QtQuick.Controls/Drawer 2.0" - exports: ["QtQuick.Controls/Drawer 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "contentData" - } - Component { - prototype: "QQuickFrame" - name: "QtQuick.Controls/Frame 2.0" - exports: ["QtQuick.Controls/Frame 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "contentData" - } - Component { - prototype: "QQuickGroupBox" - name: "QtQuick.Controls/GroupBox 2.0" - exports: ["QtQuick.Controls/GroupBox 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "contentData" - } - Component { - prototype: "QQuickItemDelegate" - name: "QtQuick.Controls/ItemDelegate 2.0" - exports: ["QtQuick.Controls/ItemDelegate 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickLabel" - name: "QtQuick.Controls/Label 2.0" - exports: ["QtQuick.Controls/Label 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickMenu" - name: "QtQuick.Controls/Menu 2.0" - exports: ["QtQuick.Controls/Menu 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "contentData" - } - Component { - prototype: "QQuickMenuBar" - name: "QtQuick.Controls/MenuBar 2.3" - exports: ["QtQuick.Controls/MenuBar 2.3"] - exportMetaObjectRevisions: [3] - isComposite: true - defaultProperty: "contentData" - } - Component { - prototype: "QQuickMenuBarItem" - name: "QtQuick.Controls/MenuBarItem 2.3" - exports: ["QtQuick.Controls/MenuBarItem 2.3"] - exportMetaObjectRevisions: [3] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickMenuItem" - name: "QtQuick.Controls/MenuItem 2.0" - exports: ["QtQuick.Controls/MenuItem 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickMenuSeparator" - name: "QtQuick.Controls/MenuSeparator 2.1" - exports: ["QtQuick.Controls/MenuSeparator 2.1"] - exportMetaObjectRevisions: [1] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickPage" - name: "QtQuick.Controls/Page 2.0" - exports: ["QtQuick.Controls/Page 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "contentData" - } - Component { - prototype: "QQuickPageIndicator" - name: "QtQuick.Controls/PageIndicator 2.0" - exports: ["QtQuick.Controls/PageIndicator 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickPane" - name: "QtQuick.Controls/Pane 2.0" - exports: ["QtQuick.Controls/Pane 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "contentData" - } - Component { - prototype: "QQuickPopup" - name: "QtQuick.Controls/Popup 2.0" - exports: ["QtQuick.Controls/Popup 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "contentData" - } - Component { - prototype: "QQuickProgressBar" - name: "QtQuick.Controls/ProgressBar 2.0" - exports: ["QtQuick.Controls/ProgressBar 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickRadioButton" - name: "QtQuick.Controls/RadioButton 2.0" - exports: ["QtQuick.Controls/RadioButton 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickRadioDelegate" - name: "QtQuick.Controls/RadioDelegate 2.0" - exports: ["QtQuick.Controls/RadioDelegate 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickRangeSlider" - name: "QtQuick.Controls/RangeSlider 2.0" - exports: ["QtQuick.Controls/RangeSlider 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickRoundButton" - name: "QtQuick.Controls/RoundButton 2.1" - exports: ["QtQuick.Controls/RoundButton 2.1"] - exportMetaObjectRevisions: [1] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickScrollBar" - name: "QtQuick.Controls/ScrollBar 2.0" - exports: ["QtQuick.Controls/ScrollBar 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickScrollIndicator" - name: "QtQuick.Controls/ScrollIndicator 2.0" - exports: ["QtQuick.Controls/ScrollIndicator 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickScrollView" - name: "QtQuick.Controls/ScrollView 2.2" - exports: ["QtQuick.Controls/ScrollView 2.2"] - exportMetaObjectRevisions: [2] - isComposite: true - defaultProperty: "contentData" - } - Component { - prototype: "QQuickSlider" - name: "QtQuick.Controls/Slider 2.0" - exports: ["QtQuick.Controls/Slider 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickSpinBox" - name: "QtQuick.Controls/SpinBox 2.0" - exports: ["QtQuick.Controls/SpinBox 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickSplitView" - name: "QtQuick.Controls/SplitView 2.13" - exports: ["QtQuick.Controls/SplitView 2.13"] - exportMetaObjectRevisions: [13] - isComposite: true - defaultProperty: "contentData" - } - Component { - prototype: "QQuickStackView" - name: "QtQuick.Controls/StackView 2.0" - exports: ["QtQuick.Controls/StackView 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickSwipeDelegate" - name: "QtQuick.Controls/SwipeDelegate 2.0" - exports: ["QtQuick.Controls/SwipeDelegate 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickSwipeView" - name: "QtQuick.Controls/SwipeView 2.0" - exports: ["QtQuick.Controls/SwipeView 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "contentData" - } - Component { - prototype: "QQuickSwitch" - name: "QtQuick.Controls/Switch 2.0" - exports: ["QtQuick.Controls/Switch 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickSwitchDelegate" - name: "QtQuick.Controls/SwitchDelegate 2.0" - exports: ["QtQuick.Controls/SwitchDelegate 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickTabBar" - name: "QtQuick.Controls/TabBar 2.0" - exports: ["QtQuick.Controls/TabBar 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "contentData" - } - Component { - prototype: "QQuickTabButton" - name: "QtQuick.Controls/TabButton 2.0" - exports: ["QtQuick.Controls/TabButton 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickTextArea" - name: "QtQuick.Controls/TextArea 2.0" - exports: ["QtQuick.Controls/TextArea 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickTextField" - name: "QtQuick.Controls/TextField 2.0" - exports: ["QtQuick.Controls/TextField 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickToolBar" - name: "QtQuick.Controls/ToolBar 2.0" - exports: ["QtQuick.Controls/ToolBar 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "contentData" - } - Component { - prototype: "QQuickToolButton" - name: "QtQuick.Controls/ToolButton 2.0" - exports: ["QtQuick.Controls/ToolButton 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickToolSeparator" - name: "QtQuick.Controls/ToolSeparator 2.1" - exports: ["QtQuick.Controls/ToolSeparator 2.1"] - exportMetaObjectRevisions: [1] - isComposite: true - defaultProperty: "data" - } - Component { - prototype: "QQuickToolTip" - name: "QtQuick.Controls/ToolTip 2.0" - exports: ["QtQuick.Controls/ToolTip 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "contentData" - } - Component { - prototype: "QQuickTumbler" - name: "QtQuick.Controls/Tumbler 2.0" - exports: ["QtQuick.Controls/Tumbler 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - } -} diff --git a/src/imports/controls/qmldir b/src/imports/controls/qmldir index c9ccb8f9..ae46e973 100644 --- a/src/imports/controls/qmldir +++ b/src/imports/controls/qmldir @@ -2,4 +2,5 @@ module QtQuick.Controls plugin qtquickcontrols2plugin classname QtQuickControls2Plugin depends QtQuick.Templates 2.5 +import QtQuick.Controls.impl auto designersupported diff --git a/src/imports/controls/qtquickcontrols2plugin.cpp b/src/imports/controls/qtquickcontrols2plugin.cpp index 6730848f..ef642905 100644 --- a/src/imports/controls/qtquickcontrols2plugin.cpp +++ b/src/imports/controls/qtquickcontrols2plugin.cpp @@ -37,39 +37,23 @@ #include <QtCore/qdir.h> #include <QtCore/qfile.h> #include <QtCore/qfileinfo.h> +#include <QtCore/qloggingcategory.h> #include <QtCore/qpluginloader.h> #include <QtCore/private/qfileselector_p.h> #include <QtQml/qqmlfile.h> +#include <QtQml/qqmlextensionplugin.h> +#include <QtQml/qqmlengine.h> #include <QtQml/private/qqmldirparser_p.h> #include <QtQuickControls2/qquickstyle.h> -#include <QtQuickControls2/private/qquickchecklabel_p.h> -#include <QtQuickControls2/private/qquickcolor_p.h> -#include <QtQuickControls2/private/qquickcolorimage_p.h> -#include <QtQuickControls2/private/qquickiconimage_p.h> -#include <QtQuickControls2/private/qquickmnemoniclabel_p.h> -#include <QtQuickControls2/private/qquickpaddedrectangle_p.h> -#include <QtQuickControls2/private/qquickplaceholdertext_p.h> -#include <QtQuickControls2/private/qquickiconlabel_p.h> #include <QtQuickControls2/private/qquickstyle_p.h> #include <QtQuickControls2/private/qquickstyleplugin_p.h> -#if QT_CONFIG(quick_listview) && QT_CONFIG(quick_pathview) -#include <QtQuickControls2/private/qquicktumblerview_p.h> -#endif -#include <QtQuickTemplates2/private/qquickoverlay_p.h> -#include <QtQuickTemplates2/private/qquicksplitview_p.h> -#include <QtQuickControls2/private/qquickclippedtext_p.h> -#include <QtQuickControls2/private/qquickitemgroup_p.h> #include <QtQuickTemplates2/private/qquicktheme_p_p.h> -#include "qquickdefaultbusyindicator_p.h" -#include "qquickdefaultdial_p.h" -#include "qquickdefaultprogressbar_p.h" -#include "qquickdefaultstyle_p.h" -#include "qquickdefaulttheme_p.h" - QT_BEGIN_NAMESPACE -class QtQuickControls2Plugin: public QQuickStylePlugin +Q_LOGGING_CATEGORY(lcQtQuickControlsStylePlugin, "qt.quick.controls.qtquickcontrols2plugin") + +class QtQuickControls2Plugin : public QQmlExtensionPlugin { Q_OBJECT Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid) @@ -81,231 +65,125 @@ public: void registerTypes(const char *uri) override; void unregisterTypes() override; - QString name() const override; - void initializeTheme(QQuickTheme *theme) override; - private: - QList<QQuickStylePlugin *> loadStylePlugins(); QQuickTheme *createTheme(const QString &name); + + bool registeredFallbackImport = false; }; -QtQuickControls2Plugin::QtQuickControls2Plugin(QObject *parent) : QQuickStylePlugin(parent) +static const char *qtQuickControlsUri = "QtQuick.Controls"; + +QString styleUri() +{ + const QString style = QQuickStyle::name(); + if (!QQuickStylePrivate::isCustomStyle()) { + // The style set is a built-in style. + const QString styleName = QQuickStylePrivate::effectiveStyleName(style); + return QString::fromLatin1("QtQuick.Controls.%1").arg(styleName); + } + + // This is a custom style, so just use the name as the import uri. + QString styleName = style; + if (styleName.startsWith(QLatin1String(":/"))) + styleName.remove(0, 2); + return styleName; +} + +QString fallbackStyleUri() { + // The fallback style must be a built-in style, so we don't need to check for custom styles here. + const QString fallbackStyle = QQuickStylePrivate::fallbackStyle(); + const QString fallbackStyleName = QQuickStylePrivate::effectiveStyleName(fallbackStyle); + return QString::fromLatin1("QtQuick.Controls.%1").arg(fallbackStyleName); } -QtQuickControls2Plugin::~QtQuickControls2Plugin() +QtQuickControls2Plugin::QtQuickControls2Plugin(QObject *parent) : QQmlExtensionPlugin(parent) { - // Intentionally empty: we use register/unregisterTypes() to do - // initialization and cleanup, as plugins are not unloaded on macOS. } -static bool isDefaultStyle(const QString &style) +QtQuickControls2Plugin::~QtQuickControls2Plugin() { - return style.isEmpty() || style.compare(QStringLiteral("Default"), Qt::CaseInsensitive) == 0; + // Intentionally empty: we use register/unregisterTypes() to do + // initialization and cleanup, as plugins are not unloaded on macOS. } void QtQuickControls2Plugin::registerTypes(const char *uri) { - QQuickStylePrivate::init(baseUrl()); + qCDebug(lcQtQuickControlsStylePlugin) << "registerTypes() called with uri" << uri; + + // It's OK that the style is resolved more than once; some accessors like name() cause it to be called, for example. + QQuickStylePrivate::init(); + + const QString styleName = QQuickStylePrivate::effectiveStyleName(QQuickStyle::name()); + const QString fallbackStyleName = QQuickStylePrivate::effectiveStyleName(QQuickStylePrivate::fallbackStyle()); + qCDebug(lcQtQuickControlsStylePlugin) << "style:" << QQuickStyle::name() << "effective style:" << styleName + << "fallback style:" << QQuickStylePrivate::fallbackStyle() << "effective fallback style:" << fallbackStyleName; + + createTheme(styleName); + + // If the style is Default, we don't need to register the fallback because the Default style + // provides all controls. Also, if we didn't return early here, we can get an infinite import loop + // when the style is set to Default. + if (styleName != fallbackStyleName && styleName != QLatin1String("Default")) { + const QString fallbackstyleUri = ::fallbackStyleUri(); + qCDebug(lcQtQuickControlsStylePlugin) << "calling qmlRegisterModuleImport() to register fallback style with" + << "uri \"" << qtQuickControlsUri << "\" moduleMajor" << QQmlModuleImportModuleAny << "import" << fallbackstyleUri + << "importMajor" << QQmlModuleImportAuto; + // The fallback style must be a built-in style, so we match the version number. + qmlRegisterModuleImport(qtQuickControlsUri, QQmlModuleImportModuleAny, fallbackstyleUri.toUtf8().constData(), + QQmlModuleImportAuto, QQmlModuleImportAuto); + registeredFallbackImport = true; + } + + const QString styleUri = ::styleUri(); + // If the user imports QtQuick.Controls 2.15, and they're using the Material style, we should import version 2.15. + // However, if they import QtQuick.Controls 2.15, but are using a custom style, we want to use the latest version + // number of their style. + const int importMajor = !QQuickStylePrivate::isCustomStyle() ? QQmlModuleImportAuto : QQmlModuleImportLatest; + qCDebug(lcQtQuickControlsStylePlugin).nospace() << "calling qmlRegisterModuleImport() to register primary style with" + << " uri \"" << qtQuickControlsUri << "\" moduleMajor " << importMajor << " import " << styleUri + << " importMajor " << importMajor; + qmlRegisterModuleImport(qtQuickControlsUri, QQmlModuleImportModuleAny, styleUri.toUtf8().constData(), importMajor); const QString style = QQuickStyle::name(); if (!style.isEmpty()) - QFileSelectorPrivate::addStatics(QStringList() << style.toLower()); - - QQuickTheme *theme = createTheme(style.isEmpty() ? name() : style); - if (isDefaultStyle(style)) - initializeTheme(theme); - - // load the style's plugins to get access to its resources and initialize the theme - QList<QQuickStylePlugin *> stylePlugins = loadStylePlugins(); - for (QQuickStylePlugin *stylePlugin : stylePlugins) - stylePlugin->initializeTheme(theme); - qDeleteAll(stylePlugins); - - // The minor version used to be the current Qt 5 minor. For compatibility it is the last - // Qt 5 release. - qmlRegisterModule(uri, 2, 15); - - // QtQuick.Controls 2.0 (originally introduced in Qt 5.7) - qmlRegisterType(resolvedUrl(QStringLiteral("AbstractButton.qml")), uri, 2, 0, "AbstractButton"); - qmlRegisterType(resolvedUrl(QStringLiteral("ApplicationWindow.qml")), uri, 2, 0, "ApplicationWindow"); - qmlRegisterType(resolvedUrl(QStringLiteral("BusyIndicator.qml")), uri, 2, 0, "BusyIndicator"); - qmlRegisterType(resolvedUrl(QStringLiteral("Button.qml")), uri, 2, 0, "Button"); - qmlRegisterType(resolvedUrl(QStringLiteral("ButtonGroup.qml")), uri, 2, 0, "ButtonGroup"); - qmlRegisterType(resolvedUrl(QStringLiteral("CheckBox.qml")), uri, 2, 0, "CheckBox"); - qmlRegisterType(resolvedUrl(QStringLiteral("CheckDelegate.qml")), uri, 2, 0, "CheckDelegate"); - qmlRegisterType(resolvedUrl(QStringLiteral("ComboBox.qml")), uri, 2, 0, "ComboBox"); - qmlRegisterType(resolvedUrl(QStringLiteral("Container.qml")), uri, 2, 0, "Container"); - qmlRegisterType(resolvedUrl(QStringLiteral("Control.qml")), uri, 2, 0, "Control"); - qmlRegisterType(resolvedUrl(QStringLiteral("Dial.qml")), uri, 2, 0, "Dial"); - qmlRegisterType(resolvedUrl(QStringLiteral("Drawer.qml")), uri, 2, 0, "Drawer"); - qmlRegisterType(resolvedUrl(QStringLiteral("Frame.qml")), uri, 2, 0, "Frame"); - qmlRegisterType(resolvedUrl(QStringLiteral("GroupBox.qml")), uri, 2, 0, "GroupBox"); - qmlRegisterType(resolvedUrl(QStringLiteral("ItemDelegate.qml")), uri, 2, 0, "ItemDelegate"); - qmlRegisterType(resolvedUrl(QStringLiteral("Label.qml")), uri, 2, 0, "Label"); - qmlRegisterType(resolvedUrl(QStringLiteral("Menu.qml")), uri, 2, 0, "Menu"); - qmlRegisterType(resolvedUrl(QStringLiteral("MenuItem.qml")), uri, 2, 0, "MenuItem"); - qmlRegisterType(resolvedUrl(QStringLiteral("Page.qml")), uri, 2, 0, "Page"); - qmlRegisterType(resolvedUrl(QStringLiteral("PageIndicator.qml")), uri, 2, 0, "PageIndicator"); - qmlRegisterType(resolvedUrl(QStringLiteral("Pane.qml")), uri, 2, 0, "Pane"); - qmlRegisterType(resolvedUrl(QStringLiteral("Popup.qml")), uri, 2, 0, "Popup"); - qmlRegisterType(resolvedUrl(QStringLiteral("ProgressBar.qml")), uri, 2, 0, "ProgressBar"); - qmlRegisterType(resolvedUrl(QStringLiteral("RadioButton.qml")), uri, 2, 0, "RadioButton"); - qmlRegisterType(resolvedUrl(QStringLiteral("RadioDelegate.qml")), uri, 2, 0, "RadioDelegate"); - qmlRegisterType(resolvedUrl(QStringLiteral("RangeSlider.qml")), uri, 2, 0, "RangeSlider"); - qmlRegisterType(resolvedUrl(QStringLiteral("ScrollBar.qml")), uri, 2, 0, "ScrollBar"); - qmlRegisterType(resolvedUrl(QStringLiteral("ScrollIndicator.qml")), uri, 2, 0, "ScrollIndicator"); - qmlRegisterType(resolvedUrl(QStringLiteral("Slider.qml")), uri, 2, 0, "Slider"); - qmlRegisterType(resolvedUrl(QStringLiteral("SpinBox.qml")), uri, 2, 0, "SpinBox"); - qmlRegisterType(resolvedUrl(QStringLiteral("StackView.qml")), uri, 2, 0, "StackView"); - qmlRegisterType(resolvedUrl(QStringLiteral("SwipeDelegate.qml")), uri, 2, 0, "SwipeDelegate"); - qmlRegisterType(resolvedUrl(QStringLiteral("SwipeView.qml")), uri, 2, 0, "SwipeView"); - qmlRegisterType(resolvedUrl(QStringLiteral("Switch.qml")), uri, 2, 0, "Switch"); - qmlRegisterType(resolvedUrl(QStringLiteral("SwitchDelegate.qml")), uri, 2, 0, "SwitchDelegate"); - qmlRegisterType(resolvedUrl(QStringLiteral("TabBar.qml")), uri, 2, 0, "TabBar"); - qmlRegisterType(resolvedUrl(QStringLiteral("TabButton.qml")), uri, 2, 0, "TabButton"); - qmlRegisterType(resolvedUrl(QStringLiteral("TextArea.qml")), uri, 2, 0, "TextArea"); - qmlRegisterType(resolvedUrl(QStringLiteral("TextField.qml")), uri, 2, 0, "TextField"); - qmlRegisterType(resolvedUrl(QStringLiteral("ToolBar.qml")), uri, 2, 0, "ToolBar"); - qmlRegisterType(resolvedUrl(QStringLiteral("ToolButton.qml")), uri, 2, 0, "ToolButton"); - qmlRegisterType(resolvedUrl(QStringLiteral("ToolTip.qml")), uri, 2, 0, "ToolTip"); -#if QT_CONFIG(quick_listview) && QT_CONFIG(quick_pathview) - qmlRegisterType(resolvedUrl(QStringLiteral("Tumbler.qml")), uri, 2, 0, "Tumbler"); -#endif - - // QtQuick.Controls 2.1 (new types in Qt 5.8) - qmlRegisterType(resolvedUrl(QStringLiteral("Dialog.qml")), uri, 2, 1, "Dialog"); - qmlRegisterType(resolvedUrl(QStringLiteral("DialogButtonBox.qml")), uri, 2, 1, "DialogButtonBox"); - qmlRegisterType(resolvedUrl(QStringLiteral("MenuSeparator.qml")), uri, 2, 1, "MenuSeparator"); - qmlRegisterType(resolvedUrl(QStringLiteral("RoundButton.qml")), uri, 2, 1, "RoundButton"); - qmlRegisterType(resolvedUrl(QStringLiteral("ToolSeparator.qml")), uri, 2, 1, "ToolSeparator"); - - // QtQuick.Controls 2.2 (new types in Qt 5.9) - qmlRegisterType(resolvedUrl(QStringLiteral("DelayButton.qml")), uri, 2, 2, "DelayButton"); - qmlRegisterType(resolvedUrl(QStringLiteral("ScrollView.qml")), uri, 2, 2, "ScrollView"); - - // QtQuick.Controls 2.3 (new types in Qt 5.10) - qmlRegisterType(resolvedUrl(QStringLiteral("Action.qml")), uri, 2, 3, "Action"); - qmlRegisterType(resolvedUrl(QStringLiteral("ActionGroup.qml")), uri, 2, 3, "ActionGroup"); - qmlRegisterType(resolvedUrl(QStringLiteral("MenuBar.qml")), uri, 2, 3, "MenuBar"); - qmlRegisterType(resolvedUrl(QStringLiteral("MenuBarItem.qml")), uri, 2, 3, "MenuBarItem"); - qmlRegisterUncreatableType<QQuickOverlay>(uri, 2, 3, "Overlay", QStringLiteral("Overlay is only available as an attached property.")); - - // QtQuick.Controls 2.13 (new types in Qt 5.13) - qmlRegisterType(resolvedUrl(QStringLiteral("SplitView.qml")), uri, 2, 13, "SplitView"); - qmlRegisterUncreatableType<QQuickSplitHandleAttached>(uri, 2, 13, "SplitHandle", - QStringLiteral("SplitHandle is only available as an attached property.")); - - // QtQuick.Controls 2.15 (new types in Qt 5.15) - qmlRegisterType(resolvedUrl(QStringLiteral("HorizontalHeaderView.qml")), uri, 2, 15, "HorizontalHeaderView"); - qmlRegisterType(resolvedUrl(QStringLiteral("VerticalHeaderView.qml")), uri, 2, 15, "VerticalHeaderView"); - - // The minor version used to be the current Qt 5 minor. For compatibility it is the last - // Qt 5 release. - const QByteArray import = QByteArray(uri) + ".impl"; - qmlRegisterModule(import, 2, 15); - - // QtQuick.Controls.impl 2.0 (Qt 5.7) - qmlRegisterType<QQuickDefaultBusyIndicator>(import, 2, 0, "BusyIndicatorImpl"); - qmlRegisterType<QQuickDefaultDial>(import, 2, 0, "DialImpl"); - qmlRegisterType<QQuickPaddedRectangle>(import, 2, 0, "PaddedRectangle"); - qmlRegisterType<QQuickDefaultProgressBar>(import, 2, 0, "ProgressBarImpl"); - - // QtQuick.Controls.impl 2.1 (Qt 5.8) -#if QT_CONFIG(quick_listview) && QT_CONFIG(quick_pathview) - qmlRegisterType<QQuickTumblerView>(import, 2, 1, "TumblerView"); -#endif - qmlRegisterSingletonType<QQuickDefaultStyle>(import, 2, 1, "Default", [](QQmlEngine *engine, QJSEngine *scriptEngine) -> QObject* { - Q_UNUSED(engine); - Q_UNUSED(scriptEngine); - return new QQuickDefaultStyle; - }); - - // QtQuick.Controls.impl 2.2 (Qt 5.9) - qmlRegisterType<QQuickClippedText>(import, 2, 2, "ClippedText"); - qmlRegisterType<QQuickItemGroup>(import, 2, 2, "ItemGroup"); - qmlRegisterType<QQuickPlaceholderText>(import, 2, 2, "PlaceholderText"); - - // QtQuick.Controls.impl 2.3 (Qt 5.10) - qmlRegisterType<QQuickColorImage>(import, 2, 3, "ColorImage"); - qmlRegisterType<QQuickIconImage>(import, 2, 3, "IconImage"); - qmlRegisterSingletonType<QQuickColor>(import, 2, 3, "Color", [](QQmlEngine *engine, QJSEngine *scriptEngine) -> QObject* { - Q_UNUSED(engine); - Q_UNUSED(scriptEngine); - return new QQuickColor; - }); - qmlRegisterType<QQuickIconLabel>(import, 2, 3, "IconLabel"); - qmlRegisterType<QQuickCheckLabel>(import, 2, 3, "CheckLabel"); - qmlRegisterType<QQuickMnemonicLabel>(import, 2, 3, "MnemonicLabel"); - qmlRegisterRevision<QQuickText, 6>(import, 2, 3); + QFileSelectorPrivate::addStatics(QStringList() << style); } void QtQuickControls2Plugin::unregisterTypes() { - QQuickStylePlugin::unregisterTypes(); + qCDebug(lcQtQuickControlsStylePlugin) << "unregisterTypes() called"; + + if (registeredFallbackImport) { + const QString fallbackStyleUri = ::fallbackStyleUri(); + qmlUnregisterModuleImport(qtQuickControlsUri, QQmlModuleImportModuleAny, fallbackStyleUri.toUtf8().constData(), + QQmlModuleImportAuto, QQmlModuleImportAuto); + } + + const QString primary = QQuickStylePrivate::effectiveStyleName(QQuickStyle::name()); + const QString styleUri = ::styleUri(); + const int importMajor = !QQuickStylePrivate::isCustomStyle() ? QQmlModuleImportAuto : QQmlModuleImportLatest; + qmlUnregisterModuleImport(qtQuickControlsUri, QQmlModuleImportModuleAny, styleUri.toUtf8().constData(), importMajor); + QQuickStylePrivate::reset(); } -QString QtQuickControls2Plugin::name() const -{ - return QStringLiteral("Default"); -} +/*! + \internal -void QtQuickControls2Plugin::initializeTheme(QQuickTheme *theme) -{ - QQuickDefaultTheme::initialize(theme); -} + Responsible for setting the font and palette settings that were specified in the + qtquickcontrols2.conf file. -QList<QQuickStylePlugin *> QtQuickControls2Plugin::loadStylePlugins() -{ - QList<QQuickStylePlugin *> stylePlugins; - - QFileInfo fileInfo = QQmlFile::urlToLocalFileOrQrc(resolvedUrl(QStringLiteral("qmldir"))); - if (fileInfo.exists() && fileInfo.path() != QQmlFile::urlToLocalFileOrQrc(baseUrl())) { - QFile file(fileInfo.filePath()); - if (file.open(QIODevice::ReadOnly | QIODevice::Text)) { - QQmlDirParser parser; - parser.parse(QString::fromUtf8(file.readAll())); - if (!parser.hasError()) { -#ifdef QT_STATIC - const auto plugins = QPluginLoader::staticInstances(); - for (QObject *instance : plugins) { - QQuickStylePlugin *stylePlugin = qobject_cast<QQuickStylePlugin *>(instance); - if (!stylePlugin || parser.className() != QLatin1String(instance->metaObject()->className())) - continue; - stylePlugins += stylePlugin; - } -#elif QT_CONFIG(library) - QPluginLoader loader; - const auto plugins = parser.plugins(); - for (const QQmlDirParser::Plugin &plugin : plugins) { - QDir dir = fileInfo.dir(); - if (!plugin.path.isEmpty() && !dir.cd(plugin.path)) - continue; - QString filePath = dir.filePath(plugin.name); -#if defined(Q_OS_MACOS) && defined(QT_DEBUG) - // Avoid mismatching plugins on macOS so that we don't end up loading both debug and - // release versions of the same Qt libraries (due to the plugin's dependencies). - filePath += QStringLiteral("_debug"); -#endif // Q_OS_MACOS && QT_DEBUG -#if defined(Q_OS_WIN) && defined(QT_DEBUG) - // Debug versions of plugins have a "d" prefix on Windows. - filePath += QLatin1Char('d'); -#endif // Q_OS_WIN && QT_DEBUG - loader.setFileName(filePath); - QQuickStylePlugin *stylePlugin = qobject_cast<QQuickStylePlugin *>(loader.instance()); - if (stylePlugin) - stylePlugins += stylePlugin; - } -#endif - } - } - } - return stylePlugins; -} + Style-specific settings (e.g. Variant=Dense) are read in the constructor of the + appropriate style plugin (e.g. QtQuickControls2MaterialStylePlugin). + Implicit style-specific font and palette values are assigned in the relevant theme + (e.g. QQuickMaterialTheme). +*/ QQuickTheme *QtQuickControls2Plugin::createTheme(const QString &name) { + qCDebug(lcQtQuickControlsStylePlugin) << "creating QQuickTheme instance to be initialized by style-specific theme of" << name; + QQuickTheme *theme = new QQuickTheme; #if QT_CONFIG(settings) QQuickThemePrivate *p = QQuickThemePrivate::get(theme); diff --git a/src/imports/controls/universal/.prev_CMakeLists.txt b/src/imports/controls/universal/.prev_CMakeLists.txt index f78b6e49..df0232e7 100644 --- a/src/imports/controls/universal/.prev_CMakeLists.txt +++ b/src/imports/controls/universal/.prev_CMakeLists.txt @@ -4,18 +4,14 @@ ## qtquickcontrols2universalstyleplugin Plugin: ##################################################################### -add_qml_module(qtquickcontrols2universalstyleplugin - TARGET_PATH "QtQuick/Controls.2/Universal" +qt_add_qml_module(qtquickcontrols2universalstyleplugin URI "QtQuick.Controls.Universal" - VERSION "2.${CMAKE_PROJECT_VERSION_MINOR}" + VERSION "${CMAKE_PROJECT_VERSION}" CLASSNAME QtQuickControls2UniversalStylePlugin - DEPENDENCIES - QtQuick.Controls/2.5 - SKIP_TYPE_REGISTRATION + IMPORTS + QtQuick.Controls.Default/auto + GENERATE_QMLTYPES SOURCES - qquickuniversalbusyindicator.cpp qquickuniversalbusyindicator_p.h - qquickuniversalfocusrectangle.cpp qquickuniversalfocusrectangle_p.h - qquickuniversalprogressbar.cpp qquickuniversalprogressbar_p.h qquickuniversalstyle.cpp qquickuniversalstyle_p.h qquickuniversaltheme.cpp qquickuniversaltheme_p.h qtquickcontrols2universalstyleplugin.cpp @@ -26,6 +22,7 @@ add_qml_module(qtquickcontrols2universalstyleplugin Qt::CorePrivate Qt::GuiPrivate Qt::QmlPrivate + Qt::QuickControls2ImplPrivate Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private @@ -56,19 +53,19 @@ set(qtquickcontrols2universalstyleplugin_resource_files "images/rightarrow@4x.png" ) -add_qt_resource(qtquickcontrols2universalstyleplugin "qtquickcontrols2universalstyleplugin" +qt_add_resource(qtquickcontrols2universalstyleplugin "qtquickcontrols2universalstyleplugin" PREFIX - "/qt-project.org/imports/QtQuick/Controls.2/Universal" + "/qt-project.org/imports/QtQuick/Controls/Universal" FILES ${qtquickcontrols2universalstyleplugin_resource_files} ) #### Keys ignored in scope 1:.:.:universal.pro:<TRUE>: -# IMPORT_NAME = "QtQuick.Controls.Universal" -# IMPORT_VERSION = "2.$$QT_MINOR_VERSION" # OTHER_FILES = "qmldir" "$$QML_FILES" -# TARGETPATH = "QtQuick/Controls.2/Universal" +# QML_IMPORT_NAME = "QtQuick.Controls.Universal" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# TARGETPATH = "QtQuick/Controls/Universal" # _REQUIREMENTS = "qtConfig(quickcontrols2-universal)" set(qml_files @@ -77,7 +74,6 @@ set(qml_files "Button.qml" "CheckBox.qml" "CheckDelegate.qml" - "CheckIndicator.qml" "ComboBox.qml" "DelayButton.qml" "Dial.qml" @@ -86,6 +82,7 @@ set(qml_files "Drawer.qml" "Frame.qml" "GroupBox.qml" + "HorizontalHeaderView.qml" "ItemDelegate.qml" "Label.qml" "Menu.qml" @@ -100,7 +97,6 @@ set(qml_files "ProgressBar.qml" "RadioButton.qml" "RadioDelegate.qml" - "RadioIndicator.qml" "RangeSlider.qml" "RoundButton.qml" "ScrollBar.qml" @@ -111,7 +107,6 @@ set(qml_files "StackView.qml" "SwipeDelegate.qml" "SwitchDelegate.qml" - "SwitchIndicator.qml" "Switch.qml" "TabBar.qml" "TabButton.qml" @@ -122,6 +117,154 @@ set(qml_files "ToolSeparator.qml" "ToolTip.qml" "Tumbler.qml" + "VerticalHeaderView.qml" +) +set_source_files_properties(ApplicationWindow.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(BusyIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Button.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(CheckBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(CheckDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ComboBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(DelayButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.2;6.0" +) +set_source_files_properties(Dial.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Dialog.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(DialogButtonBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(Drawer.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Frame.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(GroupBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(HorizontalHeaderView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.15;6.0" +) +set_source_files_properties(ItemDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Label.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Menu.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(MenuBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.3;6.0" +) +set_source_files_properties(MenuBarItem.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.3;6.0" +) +set_source_files_properties(MenuItem.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(MenuSeparator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(Page.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(PageIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Pane.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Popup.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ProgressBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(RadioButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(RadioDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(RangeSlider.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(RoundButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(ScrollBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ScrollIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Slider.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SpinBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SplitView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.13;6.0" +) +set_source_files_properties(StackView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SwipeDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(SwitchDelegate.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Switch.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(TabBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(TabButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(TextArea.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(TextField.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ToolBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ToolButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(ToolSeparator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.1;6.0" +) +set_source_files_properties(ToolTip.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(Tumbler.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0;6.0" +) +set_source_files_properties(VerticalHeaderView.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.15;6.0" ) qt6_target_qml_files(qtquickcontrols2universalstyleplugin diff --git a/src/imports/controls/universal/ApplicationWindow.qml b/src/imports/controls/universal/ApplicationWindow.qml index 153b9e8e..2ec9c565 100644 --- a/src/imports/controls/universal/ApplicationWindow.qml +++ b/src/imports/controls/universal/ApplicationWindow.qml @@ -34,25 +34,17 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 -import QtQuick.Controls.Universal.impl 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Templates as T +import QtQuick.Controls.Universal +import QtQuick.Controls.Universal.impl T.ApplicationWindow { id: window color: Universal.background - overlay.modal: Rectangle { - color: window.Universal.baseLowColor - } - - overlay.modeless: Rectangle { - color: window.Universal.baseLowColor - } - FocusRectangle { parent: window.activeFocusControl width: parent ? parent.width : 0 diff --git a/src/imports/controls/universal/BusyIndicator.qml b/src/imports/controls/universal/BusyIndicator.qml index 2ad21b46..0bd3ca03 100644 --- a/src/imports/controls/universal/BusyIndicator.qml +++ b/src/imports/controls/universal/BusyIndicator.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 -import QtQuick.Controls.Universal.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal +import QtQuick.Controls.Universal.impl T.BusyIndicator { id: control diff --git a/src/imports/controls/universal/Button.qml b/src/imports/controls/universal/Button.qml index 657b2835..2f88fe60 100644 --- a/src/imports/controls/universal/Button.qml +++ b/src/imports/controls/universal/Button.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Universal T.Button { id: control diff --git a/src/imports/controls/universal/CMakeLists.txt b/src/imports/controls/universal/CMakeLists.txt index cf0464f3..f97a92e9 100644 --- a/src/imports/controls/universal/CMakeLists.txt +++ b/src/imports/controls/universal/CMakeLists.txt @@ -5,17 +5,14 @@ ##################################################################### qt_add_qml_module(qtquickcontrols2universalstyleplugin - TARGET_PATH "QtQuick/Controls.2/Universal" + TARGET_PATH "QtQuick/Controls/Universal" URI "QtQuick.Controls.Universal" - VERSION "2.${CMAKE_PROJECT_VERSION_MINOR}" + VERSION "6.0" # special case CLASSNAME QtQuickControls2UniversalStylePlugin - DEPENDENCIES - QtQuick.Controls/2.5 - SKIP_TYPE_REGISTRATION + IMPORTS + QtQuick.Controls.Default/auto + GENERATE_QMLTYPES SOURCES - qquickuniversalbusyindicator.cpp qquickuniversalbusyindicator_p.h - qquickuniversalfocusrectangle.cpp qquickuniversalfocusrectangle_p.h - qquickuniversalprogressbar.cpp qquickuniversalprogressbar_p.h qquickuniversalstyle.cpp qquickuniversalstyle_p.h qquickuniversaltheme.cpp qquickuniversaltheme_p.h qtquickcontrols2universalstyleplugin.cpp @@ -26,6 +23,7 @@ qt_add_qml_module(qtquickcontrols2universalstyleplugin Qt::CorePrivate Qt::GuiPrivate Qt::QmlPrivate + Qt::QuickControls2ImplPrivate Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private @@ -58,17 +56,17 @@ set(qtquickcontrols2universalstyleplugin_resource_files qt_add_resource(qtquickcontrols2universalstyleplugin "qtquickcontrols2universalstyleplugin" PREFIX - "/qt-project.org/imports/QtQuick/Controls.2/Universal" + "/qt-project.org/imports/QtQuick/Controls/Universal" FILES ${qtquickcontrols2universalstyleplugin_resource_files} ) #### Keys ignored in scope 1:.:.:universal.pro:<TRUE>: -# IMPORT_NAME = "QtQuick.Controls.Universal" -# IMPORT_VERSION = "2.$$QT_MINOR_VERSION" # OTHER_FILES = "qmldir" "$$QML_FILES" -# TARGETPATH = "QtQuick/Controls.2/Universal" +# QML_IMPORT_NAME = "QtQuick.Controls.Universal" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# TARGETPATH = "QtQuick/Controls/Universal" # _REQUIREMENTS = "qtConfig(quickcontrols2-universal)" set(qml_files @@ -77,7 +75,6 @@ set(qml_files "Button.qml" "CheckBox.qml" "CheckDelegate.qml" - "CheckIndicator.qml" "ComboBox.qml" "DelayButton.qml" "Dial.qml" @@ -101,7 +98,6 @@ set(qml_files "ProgressBar.qml" "RadioButton.qml" "RadioDelegate.qml" - "RadioIndicator.qml" "RangeSlider.qml" "RoundButton.qml" "ScrollBar.qml" @@ -112,7 +108,6 @@ set(qml_files "StackView.qml" "SwipeDelegate.qml" "SwitchDelegate.qml" - "SwitchIndicator.qml" "Switch.qml" "TabBar.qml" "TabButton.qml" @@ -126,160 +121,151 @@ set(qml_files "VerticalHeaderView.qml" ) set_source_files_properties(ApplicationWindow.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(BusyIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Button.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(CheckBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(CheckDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(CheckIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ComboBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(DelayButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.2;6.0" ) set_source_files_properties(Dial.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Dialog.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(DialogButtonBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(Drawer.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Frame.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(GroupBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(HorizontalHeaderView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.15;6.0" ) set_source_files_properties(ItemDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Label.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Menu.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(MenuBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.3;6.0" ) set_source_files_properties(MenuBarItem.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.3;6.0" ) set_source_files_properties(MenuItem.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(MenuSeparator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(Page.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(PageIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Pane.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Popup.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ProgressBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(RadioButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(RadioDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(RadioIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(RangeSlider.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(RoundButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(ScrollBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ScrollIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Slider.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SpinBox.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SplitView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.13;6.0" ) set_source_files_properties(StackView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SwipeDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(SwitchDelegate.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE -) -set_source_files_properties(SwitchIndicator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Switch.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(TabBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(TabButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(TextArea.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(TextField.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ToolBar.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ToolButton.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(ToolSeparator.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.1;6.0" ) set_source_files_properties(ToolTip.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(Tumbler.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.0;6.0" ) set_source_files_properties(VerticalHeaderView.qml PROPERTIES - QT_QML_SKIP_QMLDIR_ENTRY TRUE + QT_QML_SOURCE_VERSION "2.15;6.0" ) qt6_target_qml_files(qtquickcontrols2universalstyleplugin diff --git a/src/imports/controls/universal/CheckBox.qml b/src/imports/controls/universal/CheckBox.qml index 9494f4d2..ff35d372 100644 --- a/src/imports/controls/universal/CheckBox.qml +++ b/src/imports/controls/universal/CheckBox.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 -import QtQuick.Controls.Universal.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal +import QtQuick.Controls.Universal.impl T.CheckBox { id: control diff --git a/src/imports/controls/universal/CheckDelegate.qml b/src/imports/controls/universal/CheckDelegate.qml index b544c42e..13de8c57 100644 --- a/src/imports/controls/universal/CheckDelegate.qml +++ b/src/imports/controls/universal/CheckDelegate.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Universal 2.12 -import QtQuick.Controls.Universal.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Universal +import QtQuick.Controls.Universal.impl T.CheckDelegate { id: control diff --git a/src/imports/controls/universal/ComboBox.qml b/src/imports/controls/universal/ComboBox.qml index 9b88ccf9..1568d488 100644 --- a/src/imports/controls/universal/ComboBox.qml +++ b/src/imports/controls/universal/ComboBox.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Window 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Controls.impl 2.15 -import QtQuick.Templates 2.15 as T -import QtQuick.Controls.Universal 2.15 +import QtQuick +import QtQuick.Window +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.ComboBox { id: control @@ -67,7 +67,7 @@ T.ComboBox { x: control.mirrored ? control.padding : control.width - width - control.padding y: control.topPadding + (control.availableHeight - height) / 2 color: !control.enabled ? control.Universal.baseLowColor : control.Universal.baseMediumHighColor - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/Universal/images/downarrow.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Universal/images/downarrow.png" Rectangle { z: -1 diff --git a/src/imports/controls/universal/DelayButton.qml b/src/imports/controls/universal/DelayButton.qml index 2a3a3b3a..5840fa86 100644 --- a/src/imports/controls/universal/DelayButton.qml +++ b/src/imports/controls/universal/DelayButton.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.DelayButton { id: control diff --git a/src/imports/controls/universal/Dial.qml b/src/imports/controls/universal/Dial.qml index 0d8fcba0..cd9e615e 100644 --- a/src/imports/controls/universal/Dial.qml +++ b/src/imports/controls/universal/Dial.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.Dial { id: control diff --git a/src/imports/controls/universal/Dialog.qml b/src/imports/controls/universal/Dialog.qml index 6151d090..5bec0992 100644 --- a/src/imports/controls/universal/Dialog.qml +++ b/src/imports/controls/universal/Dialog.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.Universal T.Dialog { id: control diff --git a/src/imports/controls/universal/DialogButtonBox.qml b/src/imports/controls/universal/DialogButtonBox.qml index 0458c39d..1b1148e3 100644 --- a/src/imports/controls/universal/DialogButtonBox.qml +++ b/src/imports/controls/universal/DialogButtonBox.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.Universal T.DialogButtonBox { id: control diff --git a/src/imports/controls/universal/Drawer.qml b/src/imports/controls/universal/Drawer.qml index 7ec1d7f8..19f78f1e 100644 --- a/src/imports/controls/universal/Drawer.qml +++ b/src/imports/controls/universal/Drawer.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.Drawer { id: control diff --git a/src/imports/controls/universal/Frame.qml b/src/imports/controls/universal/Frame.qml index 8bb44849..780ba734 100644 --- a/src/imports/controls/universal/Frame.qml +++ b/src/imports/controls/universal/Frame.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.Frame { id: control diff --git a/src/imports/controls/universal/GroupBox.qml b/src/imports/controls/universal/GroupBox.qml index dc156dd7..5104b710 100644 --- a/src/imports/controls/universal/GroupBox.qml +++ b/src/imports/controls/universal/GroupBox.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.GroupBox { id: control diff --git a/src/imports/controls/universal/HorizontalHeaderView.qml b/src/imports/controls/universal/HorizontalHeaderView.qml index 47daa8ce..30bbbaaf 100644 --- a/src/imports/controls/universal/HorizontalHeaderView.qml +++ b/src/imports/controls/universal/HorizontalHeaderView.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Controls.impl 2.15 -import QtQuick.Templates 2.15 as T -import QtQuick.Controls.Universal 2.15 -import QtQuick.Controls.Universal.impl 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T +import QtQuick.Controls.Universal +import QtQuick.Controls.Universal.impl T.HorizontalHeaderView { id: control diff --git a/src/imports/controls/universal/ItemDelegate.qml b/src/imports/controls/universal/ItemDelegate.qml index ed985405..694a896f 100644 --- a/src/imports/controls/universal/ItemDelegate.qml +++ b/src/imports/controls/universal/ItemDelegate.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Universal T.ItemDelegate { id: control diff --git a/src/imports/controls/universal/Label.qml b/src/imports/controls/universal/Label.qml index c66435c3..9460c997 100644 --- a/src/imports/controls/universal/Label.qml +++ b/src/imports/controls/universal/Label.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.Label { id: control diff --git a/src/imports/controls/universal/Menu.qml b/src/imports/controls/universal/Menu.qml index 4814d006..080ea482 100644 --- a/src/imports/controls/universal/Menu.qml +++ b/src/imports/controls/universal/Menu.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 -import QtQuick.Window 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T +import QtQuick.Controls.Universal +import QtQuick.Window T.Menu { id: control diff --git a/src/imports/controls/universal/MenuBar.qml b/src/imports/controls/universal/MenuBar.qml index 2317f505..f09083aa 100644 --- a/src/imports/controls/universal/MenuBar.qml +++ b/src/imports/controls/universal/MenuBar.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Universal T.MenuBar { id: control diff --git a/src/imports/controls/universal/MenuBarItem.qml b/src/imports/controls/universal/MenuBarItem.qml index 30f1fc57..eddc8090 100644 --- a/src/imports/controls/universal/MenuBarItem.qml +++ b/src/imports/controls/universal/MenuBarItem.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Universal T.MenuBarItem { id: control diff --git a/src/imports/controls/universal/MenuItem.qml b/src/imports/controls/universal/MenuItem.qml index 23d0ee3c..cf6d12c9 100644 --- a/src/imports/controls/universal/MenuItem.qml +++ b/src/imports/controls/universal/MenuItem.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Universal T.MenuItem { id: control @@ -82,7 +82,7 @@ T.MenuItem { visible: control.subMenu mirror: control.mirrored color: !enabled ? control.Universal.baseLowColor : control.Universal.baseHighColor - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/Universal/images/rightarrow.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Universal/images/rightarrow.png" } indicator: ColorImage { @@ -91,7 +91,7 @@ T.MenuItem { visible: control.checked color: !control.enabled ? control.Universal.baseLowColor : control.down ? control.Universal.baseHighColor : control.Universal.baseMediumHighColor - source: !control.checkable ? "" : "qrc:/qt-project.org/imports/QtQuick/Controls.2/Universal/images/checkmark.png" + source: !control.checkable ? "" : "qrc:/qt-project.org/imports/QtQuick/Controls/Universal/images/checkmark.png" } background: Rectangle { diff --git a/src/imports/controls/universal/MenuSeparator.qml b/src/imports/controls/universal/MenuSeparator.qml index 72f9f6f7..be6fad45 100644 --- a/src/imports/controls/universal/MenuSeparator.qml +++ b/src/imports/controls/universal/MenuSeparator.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.MenuSeparator { id: control diff --git a/src/imports/controls/universal/Page.qml b/src/imports/controls/universal/Page.qml index 347d6d9a..8946e7ad 100644 --- a/src/imports/controls/universal/Page.qml +++ b/src/imports/controls/universal/Page.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.Page { id: control diff --git a/src/imports/controls/universal/PageIndicator.qml b/src/imports/controls/universal/PageIndicator.qml index 3dcc84ab..2adb85c6 100644 --- a/src/imports/controls/universal/PageIndicator.qml +++ b/src/imports/controls/universal/PageIndicator.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.PageIndicator { id: control diff --git a/src/imports/controls/universal/Pane.qml b/src/imports/controls/universal/Pane.qml index 63a5ecec..257f9caf 100644 --- a/src/imports/controls/universal/Pane.qml +++ b/src/imports/controls/universal/Pane.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.Pane { id: control diff --git a/src/imports/controls/universal/Popup.qml b/src/imports/controls/universal/Popup.qml index e39134e1..5e972ea9 100644 --- a/src/imports/controls/universal/Popup.qml +++ b/src/imports/controls/universal/Popup.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.Popup { id: control diff --git a/src/imports/controls/universal/ProgressBar.qml b/src/imports/controls/universal/ProgressBar.qml index ce79bd54..4f8cc874 100644 --- a/src/imports/controls/universal/ProgressBar.qml +++ b/src/imports/controls/universal/ProgressBar.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 -import QtQuick.Controls.Universal.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal +import QtQuick.Controls.Universal.impl T.ProgressBar { id: control diff --git a/src/imports/controls/universal/RadioButton.qml b/src/imports/controls/universal/RadioButton.qml index a50cdf9b..abd386ce 100644 --- a/src/imports/controls/universal/RadioButton.qml +++ b/src/imports/controls/universal/RadioButton.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 -import QtQuick.Controls.Universal.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal +import QtQuick.Controls.Universal.impl T.RadioButton { id: control diff --git a/src/imports/controls/universal/RadioDelegate.qml b/src/imports/controls/universal/RadioDelegate.qml index 9fc910f3..e4656af9 100644 --- a/src/imports/controls/universal/RadioDelegate.qml +++ b/src/imports/controls/universal/RadioDelegate.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Universal 2.12 -import QtQuick.Controls.Universal.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Universal +import QtQuick.Controls.Universal.impl T.RadioDelegate { id: control diff --git a/src/imports/controls/universal/RangeSlider.qml b/src/imports/controls/universal/RangeSlider.qml index f2e4d71e..5bdc4d8f 100644 --- a/src/imports/controls/universal/RangeSlider.qml +++ b/src/imports/controls/universal/RangeSlider.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.RangeSlider { id: control diff --git a/src/imports/controls/universal/RoundButton.qml b/src/imports/controls/universal/RoundButton.qml index 2eedf96e..f9538f99 100644 --- a/src/imports/controls/universal/RoundButton.qml +++ b/src/imports/controls/universal/RoundButton.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Universal T.RoundButton { id: control diff --git a/src/imports/controls/universal/ScrollBar.qml b/src/imports/controls/universal/ScrollBar.qml index 8b8e325d..d101658c 100644 --- a/src/imports/controls/universal/ScrollBar.qml +++ b/src/imports/controls/universal/ScrollBar.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.ScrollBar { id: control diff --git a/src/imports/controls/universal/ScrollIndicator.qml b/src/imports/controls/universal/ScrollIndicator.qml index ab66ee7c..f66a9658 100644 --- a/src/imports/controls/universal/ScrollIndicator.qml +++ b/src/imports/controls/universal/ScrollIndicator.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.ScrollIndicator { id: control diff --git a/src/imports/controls/universal/Slider.qml b/src/imports/controls/universal/Slider.qml index 8f427b1e..37c77a35 100644 --- a/src/imports/controls/universal/Slider.qml +++ b/src/imports/controls/universal/Slider.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.Slider { id: control diff --git a/src/imports/controls/universal/SpinBox.qml b/src/imports/controls/universal/SpinBox.qml index dfe927f5..8f227190 100644 --- a/src/imports/controls/universal/SpinBox.qml +++ b/src/imports/controls/universal/SpinBox.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Universal T.SpinBox { id: control @@ -105,7 +105,7 @@ T.SpinBox { y: (parent.height - height) / 2 color: !enabled ? control.Universal.chromeDisabledLowColor : control.activeFocus ? control.Universal.chromeBlackHighColor : control.Universal.baseHighColor - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/Universal/images/" + (control.mirrored ? "left" : "right") + "arrow.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Universal/images/" + (control.mirrored ? "left" : "right") + "arrow.png" } } @@ -131,7 +131,7 @@ T.SpinBox { y: (parent.height - height) / 2 color: !enabled ? control.Universal.chromeDisabledLowColor : control.activeFocus ? control.Universal.chromeBlackHighColor : control.Universal.baseHighColor - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/Universal/images/" + (control.mirrored ? "right" : "left") + "arrow.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Universal/images/" + (control.mirrored ? "right" : "left") + "arrow.png" } } diff --git a/src/imports/controls/universal/SplitView.qml b/src/imports/controls/universal/SplitView.qml index a4ed22dd..e05d7235 100644 --- a/src/imports/controls/universal/SplitView.qml +++ b/src/imports/controls/universal/SplitView.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.13 -import QtQuick.Templates 2.13 as T -import QtQuick.Controls 2.13 -import QtQuick.Controls.impl 2.13 -import QtQuick.Controls.Universal 2.13 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Universal T.SplitView { id: control diff --git a/src/imports/controls/universal/StackView.qml b/src/imports/controls/universal/StackView.qml index 5a3f7751..41611dd3 100644 --- a/src/imports/controls/universal/StackView.qml +++ b/src/imports/controls/universal/StackView.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.StackView { id: control diff --git a/src/imports/controls/universal/SwipeDelegate.qml b/src/imports/controls/universal/SwipeDelegate.qml index 066049a7..10460bb8 100644 --- a/src/imports/controls/universal/SwipeDelegate.qml +++ b/src/imports/controls/universal/SwipeDelegate.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Universal T.SwipeDelegate { id: control diff --git a/src/imports/controls/universal/Switch.qml b/src/imports/controls/universal/Switch.qml index 284b1229..33ee4abb 100644 --- a/src/imports/controls/universal/Switch.qml +++ b/src/imports/controls/universal/Switch.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 -import QtQuick.Controls.Universal.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal +import QtQuick.Controls.Universal.impl T.Switch { id: control diff --git a/src/imports/controls/universal/SwitchDelegate.qml b/src/imports/controls/universal/SwitchDelegate.qml index 56ba8494..79835808 100644 --- a/src/imports/controls/universal/SwitchDelegate.qml +++ b/src/imports/controls/universal/SwitchDelegate.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Universal 2.12 -import QtQuick.Controls.Universal.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Universal +import QtQuick.Controls.Universal.impl T.SwitchDelegate { id: control diff --git a/src/imports/controls/universal/TabBar.qml b/src/imports/controls/universal/TabBar.qml index c7d27cbd..9b98c10e 100644 --- a/src/imports/controls/universal/TabBar.qml +++ b/src/imports/controls/universal/TabBar.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.TabBar { id: control diff --git a/src/imports/controls/universal/TabButton.qml b/src/imports/controls/universal/TabButton.qml index 66e3d725..a68162c7 100644 --- a/src/imports/controls/universal/TabButton.qml +++ b/src/imports/controls/universal/TabButton.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Universal T.TabButton { id: control diff --git a/src/imports/controls/universal/TextArea.qml b/src/imports/controls/universal/TextArea.qml index 03ad4a89..5c4a5748 100644 --- a/src/imports/controls/universal/TextArea.qml +++ b/src/imports/controls/universal/TextArea.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Universal T.TextArea { id: control diff --git a/src/imports/controls/universal/TextField.qml b/src/imports/controls/universal/TextField.qml index ba5bf685..7f940983 100644 --- a/src/imports/controls/universal/TextField.qml +++ b/src/imports/controls/universal/TextField.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Universal T.TextField { id: control diff --git a/src/imports/controls/universal/ToolBar.qml b/src/imports/controls/universal/ToolBar.qml index 5a385e8e..0266056f 100644 --- a/src/imports/controls/universal/ToolBar.qml +++ b/src/imports/controls/universal/ToolBar.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.ToolBar { id: control diff --git a/src/imports/controls/universal/ToolButton.qml b/src/imports/controls/universal/ToolButton.qml index f36dac22..adde3dd0 100644 --- a/src/imports/controls/universal/ToolButton.qml +++ b/src/imports/controls/universal/ToolButton.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Universal T.ToolButton { id: control diff --git a/src/imports/controls/universal/ToolSeparator.qml b/src/imports/controls/universal/ToolSeparator.qml index ee8e6e1c..cd9be32d 100644 --- a/src/imports/controls/universal/ToolSeparator.qml +++ b/src/imports/controls/universal/ToolSeparator.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.ToolSeparator { id: control diff --git a/src/imports/controls/universal/ToolTip.qml b/src/imports/controls/universal/ToolTip.qml index 431cdf7c..bf931a4c 100644 --- a/src/imports/controls/universal/ToolTip.qml +++ b/src/imports/controls/universal/ToolTip.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal T.ToolTip { id: control diff --git a/src/imports/controls/universal/Tumbler.qml b/src/imports/controls/universal/Tumbler.qml index ebbc746d..5dbe6d93 100644 --- a/src/imports/controls/universal/Tumbler.qml +++ b/src/imports/controls/universal/Tumbler.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal +import QtQuick.Controls +import QtQuick.Controls.impl T.Tumbler { id: control diff --git a/src/imports/controls/universal/VerticalHeaderView.qml b/src/imports/controls/universal/VerticalHeaderView.qml index 04408d68..47eb8c95 100644 --- a/src/imports/controls/universal/VerticalHeaderView.qml +++ b/src/imports/controls/universal/VerticalHeaderView.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Controls.impl 2.15 -import QtQuick.Templates 2.15 as T -import QtQuick.Controls.Universal 2.15 -import QtQuick.Controls.Universal.impl 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T +import QtQuick.Controls.Universal +import QtQuick.Controls.Universal.impl T.VerticalHeaderView { id: control diff --git a/src/imports/controls/universal/impl/CMakeLists.txt b/src/imports/controls/universal/impl/CMakeLists.txt new file mode 100644 index 00000000..6172b908 --- /dev/null +++ b/src/imports/controls/universal/impl/CMakeLists.txt @@ -0,0 +1,61 @@ +# Generated from universal-impl.pro. + +##################################################################### +## qtquickcontrols2universalstyleimplplugin Plugin: +##################################################################### + +qt_add_qml_module(qtquickcontrols2universalstyleimplplugin + URI "QtQuick.Controls.Universal.impl" + VERSION "${CMAKE_PROJECT_VERSION}" + CLASSNAME QtQuickControls2UniversalStyleImplPlugin + GENERATE_QMLTYPES + SOURCES + qquickuniversalbusyindicator.cpp qquickuniversalbusyindicator_p.h + qquickuniversalfocusrectangle.cpp qquickuniversalfocusrectangle_p.h + qquickuniversalprogressbar.cpp qquickuniversalprogressbar_p.h + qtquickcontrols2universalstyleimplplugin.cpp + DEFINES + QT_NO_CAST_FROM_ASCII + QT_NO_CAST_TO_ASCII + LIBRARIES + Qt::CorePrivate + Qt::Gui + Qt::QmlPrivate + Qt::QuickControls2ImplPrivate + Qt::QuickPrivate + Qt::QuickTemplates2Private + PUBLIC_LIBRARIES + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick +) + +#### Keys ignored in scope 1:.:.:universal-impl.pro:<TRUE>: +# OTHER_FILES = "qmldir" "$$QML_FILES" +# QML_FILES = "$$PWD/CheckIndicator.qml" "$$PWD/RadioIndicator.qml" "$$PWD/SwitchIndicator.qml" +# QML_IMPORT_NAME = "QtQuick.Controls.Universal.impl" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# QT_FOR_CONFIG = "quickcontrols2-private" +# TARGETPATH = "QtQuick/Controls/Universal/impl" +# _REQUIREMENTS = "qtConfig(quickcontrols2-universal)" + +set(qml_files + "CheckIndicator.qml" + "RadioIndicator.qml" + "SwitchIndicator.qml" +) +set_source_files_properties(CheckIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0" +) +set_source_files_properties(RadioIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0" +) +set_source_files_properties(SwitchIndicator.qml PROPERTIES + QT_QML_SOURCE_VERSION "2.0" +) + +qt6_target_qml_files(qtquickcontrols2universalstyleimplplugin + FILES + ${qml_files} +) diff --git a/src/imports/controls/universal/CheckIndicator.qml b/src/imports/controls/universal/impl/CheckIndicator.qml index 8f41617a..5e56ca88 100644 --- a/src/imports/controls/universal/CheckIndicator.qml +++ b/src/imports/controls/universal/impl/CheckIndicator.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Universal Rectangle { id: indicator @@ -62,7 +62,7 @@ Rectangle { visible: indicator.control.checkState === Qt.Checked color: !indicator.control.enabled ? indicator.control.Universal.baseLowColor : indicator.control.Universal.chromeWhiteColor - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/Universal/images/checkmark.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Universal/images/checkmark.png" } Rectangle { diff --git a/src/imports/controls/universal/RadioIndicator.qml b/src/imports/controls/universal/impl/RadioIndicator.qml index 1a32decb..3cf1bf37 100644 --- a/src/imports/controls/universal/RadioIndicator.qml +++ b/src/imports/controls/universal/impl/RadioIndicator.qml @@ -34,8 +34,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Controls.Universal Rectangle { id: indicator diff --git a/src/imports/controls/universal/SwitchIndicator.qml b/src/imports/controls/universal/impl/SwitchIndicator.qml index 10f39515..aa455419 100644 --- a/src/imports/controls/universal/SwitchIndicator.qml +++ b/src/imports/controls/universal/impl/SwitchIndicator.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls.Universal Item { id: indicator diff --git a/src/imports/controls/universal/impl/qmldir b/src/imports/controls/universal/impl/qmldir new file mode 100644 index 00000000..5c39a4bb --- /dev/null +++ b/src/imports/controls/universal/impl/qmldir @@ -0,0 +1,7 @@ +module QtQuick.Controls.Universal.impl +plugin qtquickcontrols2universalstyleimplplugin +classname QtQuickControls2UniversalStyleImplPlugin + +CheckIndicator 2.0 CheckIndicator.qml +RadioIndicator 2.0 RadioIndicator.qml +SwitchIndicator 2.0 SwitchIndicator.qml diff --git a/src/imports/controls/universal/qquickuniversalbusyindicator.cpp b/src/imports/controls/universal/impl/qquickuniversalbusyindicator.cpp index 70170296..2f0ada49 100644 --- a/src/imports/controls/universal/qquickuniversalbusyindicator.cpp +++ b/src/imports/controls/universal/impl/qquickuniversalbusyindicator.cpp @@ -40,7 +40,7 @@ #include <QtCore/qeasingcurve.h> #include <QtQuick/private/qquickitem_p.h> #include <QtQuick/private/qsgadaptationlayer_p.h> -#include <QtQuickControls2/private/qquickanimatednode_p.h> +#include <QtQuickControls2Impl/private/qquickanimatednode_p.h> QT_BEGIN_NAMESPACE diff --git a/src/imports/controls/universal/qquickuniversalbusyindicator_p.h b/src/imports/controls/universal/impl/qquickuniversalbusyindicator_p.h index 119091b5..6d3ebb84 100644 --- a/src/imports/controls/universal/qquickuniversalbusyindicator_p.h +++ b/src/imports/controls/universal/impl/qquickuniversalbusyindicator_p.h @@ -58,6 +58,8 @@ class QQuickUniversalBusyIndicator : public QQuickItem Q_OBJECT Q_PROPERTY(int count READ count WRITE setCount FINAL) Q_PROPERTY(QColor color READ color WRITE setColor FINAL) + QML_NAMED_ELEMENT(BusyIndicatorImpl) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickUniversalBusyIndicator(QQuickItem *parent = nullptr); diff --git a/src/imports/controls/universal/qquickuniversalfocusrectangle.cpp b/src/imports/controls/universal/impl/qquickuniversalfocusrectangle.cpp index 88b78e10..51508c6f 100644 --- a/src/imports/controls/universal/qquickuniversalfocusrectangle.cpp +++ b/src/imports/controls/universal/impl/qquickuniversalfocusrectangle.cpp @@ -72,7 +72,7 @@ void QQuickUniversalFocusRectangle::paint(QPainter *painter) p.drawRect(bounds); pen.setColor(Qt::black); - pen.setDashPattern(QVector<qreal>(2, 1)); + pen.setDashPattern(QList<qreal>(2, 1)); p.setPen(pen); p.drawRect(bounds); diff --git a/src/imports/controls/universal/qquickuniversalfocusrectangle_p.h b/src/imports/controls/universal/impl/qquickuniversalfocusrectangle_p.h index 6bae3b13..f309b512 100644 --- a/src/imports/controls/universal/qquickuniversalfocusrectangle_p.h +++ b/src/imports/controls/universal/impl/qquickuniversalfocusrectangle_p.h @@ -55,6 +55,8 @@ QT_BEGIN_NAMESPACE class QQuickUniversalFocusRectangle : public QQuickPaintedItem { Q_OBJECT + QML_NAMED_ELEMENT(FocusRectangle) + QML_ADDED_IN_VERSION(2, 0) public: QQuickUniversalFocusRectangle(QQuickItem *parent = nullptr); diff --git a/src/imports/controls/universal/qquickuniversalprogressbar.cpp b/src/imports/controls/universal/impl/qquickuniversalprogressbar.cpp index 7d4642c5..8f907b75 100644 --- a/src/imports/controls/universal/qquickuniversalprogressbar.cpp +++ b/src/imports/controls/universal/impl/qquickuniversalprogressbar.cpp @@ -41,7 +41,7 @@ #include <QtQuick/private/qquickitem_p.h> #include <QtQuick/private/qsgadaptationlayer_p.h> #include <QtQuick/qsgrectanglenode.h> -#include <QtQuickControls2/private/qquickanimatednode_p.h> +#include <QtQuickControls2Impl/private/qquickanimatednode_p.h> QT_BEGIN_NAMESPACE diff --git a/src/imports/controls/universal/qquickuniversalprogressbar_p.h b/src/imports/controls/universal/impl/qquickuniversalprogressbar_p.h index 449f7965..31cb4a32 100644 --- a/src/imports/controls/universal/qquickuniversalprogressbar_p.h +++ b/src/imports/controls/universal/impl/qquickuniversalprogressbar_p.h @@ -59,6 +59,8 @@ class QQuickUniversalProgressBar : public QQuickItem Q_PROPERTY(QColor color READ color WRITE setColor FINAL) Q_PROPERTY(qreal progress READ progress WRITE setProgress FINAL) Q_PROPERTY(bool indeterminate READ isIndeterminate WRITE setIndeterminate FINAL) + QML_NAMED_ELEMENT(ProgressBarImpl) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickUniversalProgressBar(QQuickItem *parent = nullptr); diff --git a/src/imports/controls/universal/impl/qtquickcontrols2universalstyleimplplugin.cpp b/src/imports/controls/universal/impl/qtquickcontrols2universalstyleimplplugin.cpp new file mode 100644 index 00000000..bc36be44 --- /dev/null +++ b/src/imports/controls/universal/impl/qtquickcontrols2universalstyleimplplugin.cpp @@ -0,0 +1,57 @@ +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include <QtQml/qqmlextensionplugin.h> + +QT_BEGIN_NAMESPACE + +class QtQuickControls2UniversalStyleImplPlugin : public QQmlEngineExtensionPlugin +{ + Q_OBJECT + Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid) + +public: + QtQuickControls2UniversalStyleImplPlugin(QObject *parent = nullptr); +}; + +QtQuickControls2UniversalStyleImplPlugin::QtQuickControls2UniversalStyleImplPlugin(QObject *parent) + : QQmlEngineExtensionPlugin(parent) +{ +} + +QT_END_NAMESPACE + +#include "qtquickcontrols2universalstyleimplplugin.moc" diff --git a/src/imports/controls/universal/impl/universal-impl.pro b/src/imports/controls/universal/impl/universal-impl.pro new file mode 100644 index 00000000..dd4aab46 --- /dev/null +++ b/src/imports/controls/universal/impl/universal-impl.pro @@ -0,0 +1,36 @@ +TARGET = qtquickcontrols2universalstyleimplplugin +TARGETPATH = QtQuick/Controls/Universal/impl + +QML_IMPORT_NAME = QtQuick.Controls.Universal.impl +QML_IMPORT_VERSION = $$QT_VERSION + +QT += qml quick +QT_PRIVATE += core-private gui qml-private quick-private quicktemplates2-private quickcontrols2impl-private +QT_FOR_CONFIG = quickcontrols2-private + +DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII + +QML_FILES += \ + $$PWD/CheckIndicator.qml \ + $$PWD/RadioIndicator.qml \ + $$PWD/SwitchIndicator.qml + +OTHER_FILES += \ + qmldir \ + $$QML_FILES + +HEADERS += \ + $$PWD/qquickuniversalbusyindicator_p.h \ + $$PWD/qquickuniversalfocusrectangle_p.h \ + $$PWD/qquickuniversalprogressbar_p.h + +SOURCES += \ + $$PWD/qquickuniversalbusyindicator.cpp \ + $$PWD/qquickuniversalfocusrectangle.cpp \ + $$PWD/qquickuniversalprogressbar.cpp \ + $$PWD/qtquickcontrols2universalstyleimplplugin.cpp + +CONFIG += qmltypes install_qmltypes no_cxx_module install_qml_files builtin_resources qtquickcompiler +load(qml_plugin) + +requires(qtConfig(quickcontrols2-universal)) diff --git a/src/imports/controls/universal/plugins.qmltypes b/src/imports/controls/universal/plugins.qmltypes deleted file mode 100644 index 1734c01b..00000000 --- a/src/imports/controls/universal/plugins.qmltypes +++ /dev/null @@ -1,340 +0,0 @@ -import QtQuick.tooling 1.2 - -// This file describes the plugin-supplied types contained in the library. -// It is used for QML tooling purposes only. -// -// This file was auto-generated by: -// 'qmlplugindump -nonrelocatable -dependencies dependencies.json QtQuick.Controls.Universal 2.14' - -Module { - dependencies: ["QtQuick.Controls 2.0"] - Component { name: "QQuickAttachedObject"; prototype: "QObject" } - Component { - name: "QQuickItem" - defaultProperty: "data" - prototype: "QObject" - Enum { - name: "Flags" - values: { - "ItemClipsChildrenToShape": 1, - "ItemAcceptsInputMethod": 2, - "ItemIsFocusScope": 4, - "ItemHasContents": 8, - "ItemAcceptsDrops": 16 - } - } - Enum { - name: "TransformOrigin" - values: { - "TopLeft": 0, - "Top": 1, - "TopRight": 2, - "Left": 3, - "Center": 4, - "Right": 5, - "BottomLeft": 6, - "Bottom": 7, - "BottomRight": 8 - } - } - Property { name: "parent"; type: "QQuickItem"; isPointer: true } - Property { name: "data"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "resources"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "children"; type: "QQuickItem"; isList: true; isReadonly: true } - Property { name: "x"; type: "double" } - Property { name: "y"; type: "double" } - Property { name: "z"; type: "double" } - Property { name: "width"; type: "double" } - Property { name: "height"; type: "double" } - Property { name: "opacity"; type: "double" } - Property { name: "enabled"; type: "bool" } - Property { name: "visible"; type: "bool" } - Property { name: "visibleChildren"; type: "QQuickItem"; isList: true; isReadonly: true } - Property { name: "states"; type: "QQuickState"; isList: true; isReadonly: true } - Property { name: "transitions"; type: "QQuickTransition"; isList: true; isReadonly: true } - Property { name: "state"; type: "string" } - Property { name: "childrenRect"; type: "QRectF"; isReadonly: true } - Property { name: "anchors"; type: "QQuickAnchors"; isReadonly: true; isPointer: true } - Property { name: "left"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "right"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "horizontalCenter"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "top"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "bottom"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "verticalCenter"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "baseline"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "baselineOffset"; type: "double" } - Property { name: "clip"; type: "bool" } - Property { name: "focus"; type: "bool" } - Property { name: "activeFocus"; type: "bool"; isReadonly: true } - Property { name: "activeFocusOnTab"; revision: 1; type: "bool" } - Property { name: "rotation"; type: "double" } - Property { name: "scale"; type: "double" } - Property { name: "transformOrigin"; type: "TransformOrigin" } - Property { name: "transformOriginPoint"; type: "QPointF"; isReadonly: true } - Property { name: "transform"; type: "QQuickTransform"; isList: true; isReadonly: true } - Property { name: "smooth"; type: "bool" } - Property { name: "antialiasing"; type: "bool" } - Property { name: "implicitWidth"; type: "double" } - Property { name: "implicitHeight"; type: "double" } - Property { name: "containmentMask"; revision: 11; type: "QObject"; isPointer: true } - Property { name: "layer"; type: "QQuickItemLayer"; isReadonly: true; isPointer: true } - Signal { - name: "childrenRectChanged" - Parameter { type: "QRectF" } - } - Signal { - name: "baselineOffsetChanged" - Parameter { type: "double" } - } - Signal { - name: "stateChanged" - Parameter { type: "string" } - } - Signal { - name: "focusChanged" - Parameter { type: "bool" } - } - Signal { - name: "activeFocusChanged" - Parameter { type: "bool" } - } - Signal { - name: "activeFocusOnTabChanged" - revision: 1 - Parameter { type: "bool" } - } - Signal { - name: "parentChanged" - Parameter { type: "QQuickItem"; isPointer: true } - } - Signal { - name: "transformOriginChanged" - Parameter { type: "TransformOrigin" } - } - Signal { - name: "smoothChanged" - Parameter { type: "bool" } - } - Signal { - name: "antialiasingChanged" - Parameter { type: "bool" } - } - Signal { - name: "clipChanged" - Parameter { type: "bool" } - } - Signal { - name: "windowChanged" - revision: 1 - Parameter { name: "window"; type: "QQuickWindow"; isPointer: true } - } - Signal { name: "containmentMaskChanged"; revision: 11 } - Method { name: "update" } - Method { - name: "grabToImage" - revision: 4 - type: "bool" - Parameter { name: "callback"; type: "QJSValue" } - Parameter { name: "targetSize"; type: "QSize" } - } - Method { - name: "grabToImage" - revision: 4 - type: "bool" - Parameter { name: "callback"; type: "QJSValue" } - } - Method { - name: "contains" - type: "bool" - Parameter { name: "point"; type: "QPointF" } - } - Method { - name: "mapFromItem" - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "mapToItem" - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "mapFromGlobal" - revision: 7 - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "mapToGlobal" - revision: 7 - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { name: "forceActiveFocus" } - Method { - name: "forceActiveFocus" - Parameter { name: "reason"; type: "Qt::FocusReason" } - } - Method { - name: "nextItemInFocusChain" - revision: 1 - type: "QQuickItem*" - Parameter { name: "forward"; type: "bool" } - } - Method { name: "nextItemInFocusChain"; revision: 1; type: "QQuickItem*" } - Method { - name: "childAt" - type: "QQuickItem*" - Parameter { name: "x"; type: "double" } - Parameter { name: "y"; type: "double" } - } - } - Component { - name: "QQuickPaintedItem" - defaultProperty: "data" - prototype: "QQuickItem" - Enum { - name: "RenderTarget" - values: { - "Image": 0, - "FramebufferObject": 1, - "InvertedYFramebufferObject": 2 - } - } - Enum { - name: "PerformanceHints" - values: { - "FastFBOResizing": 1 - } - } - Property { name: "contentsSize"; type: "QSize" } - Property { name: "fillColor"; type: "QColor" } - Property { name: "contentsScale"; type: "double" } - Property { name: "renderTarget"; type: "RenderTarget" } - Property { name: "textureSize"; type: "QSize" } - } - Component { - name: "QQuickUniversalBusyIndicator" - defaultProperty: "data" - prototype: "QQuickItem" - exports: ["QtQuick.Controls.Universal.impl/BusyIndicatorImpl 2.0"] - exportMetaObjectRevisions: [0] - Property { name: "count"; type: "int" } - Property { name: "color"; type: "QColor" } - } - Component { - name: "QQuickUniversalFocusRectangle" - defaultProperty: "data" - prototype: "QQuickPaintedItem" - exports: ["QtQuick.Controls.Universal.impl/FocusRectangle 2.0"] - exportMetaObjectRevisions: [0] - } - Component { - name: "QQuickUniversalProgressBar" - defaultProperty: "data" - prototype: "QQuickItem" - exports: ["QtQuick.Controls.Universal.impl/ProgressBarImpl 2.0"] - exportMetaObjectRevisions: [0] - Property { name: "color"; type: "QColor" } - Property { name: "progress"; type: "double" } - Property { name: "indeterminate"; type: "bool" } - } - Component { - name: "QQuickUniversalStyle" - prototype: "QQuickAttachedObject" - exports: ["QtQuick.Controls.Universal/Universal 2.0"] - isCreatable: false - exportMetaObjectRevisions: [0] - Enum { - name: "Theme" - values: { - "Light": 0, - "Dark": 1, - "System": 2 - } - } - Enum { - name: "Color" - values: { - "Lime": 0, - "Green": 1, - "Emerald": 2, - "Teal": 3, - "Cyan": 4, - "Cobalt": 5, - "Indigo": 6, - "Violet": 7, - "Pink": 8, - "Magenta": 9, - "Crimson": 10, - "Red": 11, - "Orange": 12, - "Amber": 13, - "Yellow": 14, - "Brown": 15, - "Olive": 16, - "Steel": 17, - "Mauve": 18, - "Taupe": 19 - } - } - Property { name: "theme"; type: "Theme" } - Property { name: "accent"; type: "QVariant" } - Property { name: "foreground"; type: "QVariant" } - Property { name: "background"; type: "QVariant" } - Property { name: "altHighColor"; type: "QColor"; isReadonly: true } - Property { name: "altLowColor"; type: "QColor"; isReadonly: true } - Property { name: "altMediumColor"; type: "QColor"; isReadonly: true } - Property { name: "altMediumHighColor"; type: "QColor"; isReadonly: true } - Property { name: "altMediumLowColor"; type: "QColor"; isReadonly: true } - Property { name: "baseHighColor"; type: "QColor"; isReadonly: true } - Property { name: "baseLowColor"; type: "QColor"; isReadonly: true } - Property { name: "baseMediumColor"; type: "QColor"; isReadonly: true } - Property { name: "baseMediumHighColor"; type: "QColor"; isReadonly: true } - Property { name: "baseMediumLowColor"; type: "QColor"; isReadonly: true } - Property { name: "chromeAltLowColor"; type: "QColor"; isReadonly: true } - Property { name: "chromeBlackHighColor"; type: "QColor"; isReadonly: true } - Property { name: "chromeBlackLowColor"; type: "QColor"; isReadonly: true } - Property { name: "chromeBlackMediumLowColor"; type: "QColor"; isReadonly: true } - Property { name: "chromeBlackMediumColor"; type: "QColor"; isReadonly: true } - Property { name: "chromeDisabledHighColor"; type: "QColor"; isReadonly: true } - Property { name: "chromeDisabledLowColor"; type: "QColor"; isReadonly: true } - Property { name: "chromeHighColor"; type: "QColor"; isReadonly: true } - Property { name: "chromeLowColor"; type: "QColor"; isReadonly: true } - Property { name: "chromeMediumColor"; type: "QColor"; isReadonly: true } - Property { name: "chromeMediumLowColor"; type: "QColor"; isReadonly: true } - Property { name: "chromeWhiteColor"; type: "QColor"; isReadonly: true } - Property { name: "listLowColor"; type: "QColor"; isReadonly: true } - Property { name: "listMediumColor"; type: "QColor"; isReadonly: true } - Signal { name: "paletteChanged" } - Method { - name: "color" - type: "QColor" - Parameter { name: "color"; type: "Color" } - } - } - Component { - prototype: "QQuickRectangle" - name: "QtQuick.Controls.Universal.impl/CheckIndicator 2.0" - exports: ["QtQuick.Controls.Universal.impl/CheckIndicator 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - Property { name: "control"; type: "QQuickItem"; isPointer: true } - Property { name: "partiallyChecked"; type: "bool"; isReadonly: true } - } - Component { - prototype: "QQuickRectangle" - name: "QtQuick.Controls.Universal.impl/RadioIndicator 2.0" - exports: ["QtQuick.Controls.Universal.impl/RadioIndicator 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - Property { name: "control"; type: "QVariant" } - } - Component { - prototype: "QQuickItem" - name: "QtQuick.Controls.Universal.impl/SwitchIndicator 2.0" - exports: ["QtQuick.Controls.Universal.impl/SwitchIndicator 2.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - Property { name: "control"; type: "QQuickItem"; isPointer: true } - } -} diff --git a/src/imports/controls/universal/qmldir b/src/imports/controls/universal/qmldir index 6870a4e1..5891244a 100644 --- a/src/imports/controls/universal/qmldir +++ b/src/imports/controls/universal/qmldir @@ -1,4 +1,116 @@ module QtQuick.Controls.Universal plugin qtquickcontrols2universalstyleplugin classname QtQuickControls2UniversalStylePlugin -depends QtQuick.Controls 2.5 +import QtQuick.Controls.Default auto + +# QtQuick.Controls 2.0 (originally introduced in Qt 5.7) +ApplicationWindow 2.0 ApplicationWindow.qml +BusyIndicator 2.0 BusyIndicator.qml +Button 2.0 Button.qml +CheckBox 2.0 CheckBox.qml +CheckDelegate 2.0 CheckDelegate.qml +ComboBox 2.0 ComboBox.qml +Dial 2.0 Dial.qml +Drawer 2.0 Drawer.qml +Frame 2.0 Frame.qml +GroupBox 2.0 GroupBox.qml +ItemDelegate 2.0 ItemDelegate.qml +Label 2.0 Label.qml +Menu 2.0 Menu.qml +MenuItem 2.0 MenuItem.qml +Page 2.0 Page.qml +PageIndicator 2.0 PageIndicator.qml +Pane 2.0 Pane.qml +Popup 2.0 Popup.qml +ProgressBar 2.0 ProgressBar.qml +RadioButton 2.0 RadioButton.qml +RadioDelegate 2.0 RadioDelegate.qml +RangeSlider 2.0 RangeSlider.qml +ScrollBar 2.0 ScrollBar.qml +ScrollIndicator 2.0 ScrollIndicator.qml +Slider 2.0 Slider.qml +SpinBox 2.0 SpinBox.qml +StackView 2.0 StackView.qml +SwipeDelegate 2.0 SwipeDelegate.qml +Switch 2.0 Switch.qml +SwitchDelegate 2.0 SwitchDelegate.qml +TabBar 2.0 TabBar.qml +TabButton 2.0 TabButton.qml +TextArea 2.0 TextArea.qml +TextField 2.0 TextField.qml +ToolBar 2.0 ToolBar.qml +ToolButton 2.0 ToolButton.qml +ToolTip 2.0 ToolTip.qml +Tumbler 2.0 Tumbler.qml + +# QtQuick.Controls 2.1 (new types in Qt 5.8) +Dialog 2.1 Dialog.qml +DialogButtonBox 2.1 DialogButtonBox.qml +MenuSeparator 2.1 MenuSeparator.qml +RoundButton 2.1 RoundButton.qml +ToolSeparator 2.1 ToolSeparator.qml + +# QtQuick.Controls 2.2 (new types in Qt 5.9) +DelayButton 2.2 DelayButton.qml + +# QtQuick.Controls 2.3 (new types in Qt 5.10) +MenuBar 2.3 MenuBar.qml +MenuBarItem 2.3 MenuBarItem.qml + +# QtQuick.Controls 2.13 (new types in Qt 5.13) +SplitView 2.13 SplitView.qml + +# QtQuick.Controls 2.15 (new types in Qt 5.15) +HorizontalHeaderView 2.15 HorizontalHeaderView.qml +VerticalHeaderView 2.15 VerticalHeaderView.qml + +# Make sure we have types registered for Qt 6: QTBUG-85774, QTBUG-85685 +ApplicationWindow 6.0 ApplicationWindow.qml +BusyIndicator 6.0 BusyIndicator.qml +Button 6.0 Button.qml +CheckBox 6.0 CheckBox.qml +CheckDelegate 6.0 CheckDelegate.qml +ComboBox 6.0 ComboBox.qml +DelayButton 6.0 DelayButton.qml +Dial 6.0 Dial.qml +Dialog 6.0 Dialog.qml +DialogButtonBox 6.0 DialogButtonBox.qml +Drawer 6.0 Drawer.qml +Frame 6.0 Frame.qml +GroupBox 6.0 GroupBox.qml +HorizontalHeaderView 6.0 HorizontalHeaderView.qml +ItemDelegate 6.0 ItemDelegate.qml +Label 6.0 Label.qml +Menu 6.0 Menu.qml +MenuBar 6.0 MenuBar.qml +MenuBarItem 6.0 MenuBarItem.qml +MenuItem 6.0 MenuItem.qml +MenuSeparator 6.0 MenuSeparator.qml +Page 6.0 Page.qml +PageIndicator 6.0 PageIndicator.qml +Pane 6.0 Pane.qml +Popup 6.0 Popup.qml +ProgressBar 6.0 ProgressBar.qml +RadioButton 6.0 RadioButton.qml +RadioDelegate 6.0 RadioDelegate.qml +RangeSlider 6.0 RangeSlider.qml +RoundButton 6.0 RoundButton.qml +ScrollBar 6.0 ScrollBar.qml +ScrollIndicator 6.0 ScrollIndicator.qml +Slider 6.0 Slider.qml +SpinBox 6.0 SpinBox.qml +SplitView 6.0 SplitView.qml +StackView 6.0 StackView.qml +SwipeDelegate 6.0 SwipeDelegate.qml +Switch 6.0 Switch.qml +SwitchDelegate 6.0 SwitchDelegate.qml +TabBar 6.0 TabBar.qml +TabButton 6.0 TabButton.qml +TextArea 6.0 TextArea.qml +TextField 6.0 TextField.qml +ToolBar 6.0 ToolBar.qml +ToolButton 6.0 ToolButton.qml +ToolSeparator 6.0 ToolSeparator.qml +ToolTip 6.0 ToolTip.qml +Tumbler 6.0 Tumbler.qml +VerticalHeaderView 6.0 VerticalHeaderView.qml diff --git a/src/imports/controls/universal/qquickuniversalstyle_p.h b/src/imports/controls/universal/qquickuniversalstyle_p.h index 429621d7..50b07071 100644 --- a/src/imports/controls/universal/qquickuniversalstyle_p.h +++ b/src/imports/controls/universal/qquickuniversalstyle_p.h @@ -49,7 +49,7 @@ // #include <QtGui/qcolor.h> -#include <QtQuickControls2/private/qquickattachedobject_p.h> +#include <QtQuickControls2Impl/private/qquickattachedobject_p.h> QT_BEGIN_NAMESPACE @@ -88,6 +88,11 @@ class QQuickUniversalStyle : public QQuickAttachedObject Q_PROPERTY(QColor listLowColor READ listLowColor NOTIFY paletteChanged FINAL) Q_PROPERTY(QColor listMediumColor READ listMediumColor NOTIFY paletteChanged FINAL) + QML_NAMED_ELEMENT(Universal) + QML_ATTACHED(QQuickUniversalStyle) + QML_UNCREATABLE("") + QML_ADDED_IN_VERSION(2, 0) + public: explicit QQuickUniversalStyle(QObject *parent = nullptr); diff --git a/src/imports/controls/universal/qtquickcontrols2universalstyleplugin.cpp b/src/imports/controls/universal/qtquickcontrols2universalstyleplugin.cpp index 08cd5001..d6f7746d 100644 --- a/src/imports/controls/universal/qtquickcontrols2universalstyleplugin.cpp +++ b/src/imports/controls/universal/qtquickcontrols2universalstyleplugin.cpp @@ -34,17 +34,15 @@ ** ****************************************************************************/ -#include <QtQuickControls2/private/qquickstyleplugin_p.h> - -#include "qquickuniversalbusyindicator_p.h" -#include "qquickuniversalfocusrectangle_p.h" -#include "qquickuniversalprogressbar_p.h" #include "qquickuniversalstyle_p.h" #include "qquickuniversaltheme_p.h" +#include <QtQuickControls2/private/qquickstyleplugin_p.h> +#include <QtQuickTemplates2/private/qquicktheme_p.h> + QT_BEGIN_NAMESPACE -class QtQuickControls2UniversalStylePlugin: public QQuickStylePlugin +class QtQuickControls2UniversalStylePlugin : public QQuickStylePlugin { Q_OBJECT Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid) @@ -52,32 +50,15 @@ class QtQuickControls2UniversalStylePlugin: public QQuickStylePlugin public: QtQuickControls2UniversalStylePlugin(QObject *parent = nullptr); + QString name() const override; + void registerTypes(const char *uri) override; - QString name() const override; - void initializeTheme(QQuickTheme *theme) override; + QQuickUniversalTheme theme; }; QtQuickControls2UniversalStylePlugin::QtQuickControls2UniversalStylePlugin(QObject *parent) : QQuickStylePlugin(parent) { - QQuickUniversalStyle::initGlobals(); -} - -void QtQuickControls2UniversalStylePlugin::registerTypes(const char *uri) -{ - qmlRegisterModule(uri, 2, 15); // Qt 5.12->2.12, 5.13->2.13... - qmlRegisterUncreatableType<QQuickUniversalStyle>(uri, 2, 0, "Universal", tr("Universal is an attached property")); - - QByteArray import = QByteArray(uri) + ".impl"; - qmlRegisterModule(import, 2, 15); // Qt 5.12->2.12, 5.13->2.13... - - qmlRegisterType<QQuickUniversalFocusRectangle>(import, 2, 0, "FocusRectangle"); - qmlRegisterType<QQuickUniversalBusyIndicator>(import, 2, 0, "BusyIndicatorImpl"); - qmlRegisterType<QQuickUniversalProgressBar>(import, 2, 0, "ProgressBarImpl"); - - qmlRegisterType(resolvedUrl(QStringLiteral("CheckIndicator.qml")), import, 2, 0, "CheckIndicator"); - qmlRegisterType(resolvedUrl(QStringLiteral("RadioIndicator.qml")), import, 2, 0, "RadioIndicator"); - qmlRegisterType(resolvedUrl(QStringLiteral("SwitchIndicator.qml")), import, 2, 0, "SwitchIndicator"); } QString QtQuickControls2UniversalStylePlugin::name() const @@ -85,9 +66,12 @@ QString QtQuickControls2UniversalStylePlugin::name() const return QStringLiteral("Universal"); } -void QtQuickControls2UniversalStylePlugin::initializeTheme(QQuickTheme *theme) +void QtQuickControls2UniversalStylePlugin::registerTypes(const char *uri) { - QQuickUniversalTheme::initialize(theme); + QQuickStylePlugin::registerTypes(uri); + + QQuickUniversalStyle::initGlobals(); + theme.initialize(QQuickTheme::instance()); } QT_END_NAMESPACE diff --git a/src/imports/controls/universal/qtquickcontrols2universalstyleplugin.qrc b/src/imports/controls/universal/qtquickcontrols2universalstyleplugin.qrc index cd9ea61f..bfcb0974 100644 --- a/src/imports/controls/universal/qtquickcontrols2universalstyleplugin.qrc +++ b/src/imports/controls/universal/qtquickcontrols2universalstyleplugin.qrc @@ -1,5 +1,5 @@ <!DOCTYPE RCC><RCC version="1.0"> -<qresource prefix="qt-project.org/imports/QtQuick/Controls.2/Universal"> +<qresource prefix="qt-project.org/imports/QtQuick/Controls/Universal"> <file>images/checkmark.png</file> <file>images/checkmark@2x.png</file> <file>images/checkmark@3x.png</file> diff --git a/src/imports/controls/universal/universal.pri b/src/imports/controls/universal/universal.pri index 8f1b905c..983fcf10 100644 --- a/src/imports/controls/universal/universal.pri +++ b/src/imports/controls/universal/universal.pri @@ -1,10 +1,17 @@ +HEADERS += \ + $$PWD/qquickuniversalstyle_p.h \ + $$PWD/qquickuniversaltheme_p.h + +SOURCES += \ + $$PWD/qquickuniversalstyle.cpp \ + $$PWD/qquickuniversaltheme.cpp + QML_FILES += \ $$PWD/ApplicationWindow.qml \ $$PWD/BusyIndicator.qml \ $$PWD/Button.qml \ $$PWD/CheckBox.qml \ $$PWD/CheckDelegate.qml \ - $$PWD/CheckIndicator.qml \ $$PWD/ComboBox.qml \ $$PWD/DelayButton.qml \ $$PWD/Dial.qml \ @@ -28,7 +35,6 @@ QML_FILES += \ $$PWD/ProgressBar.qml \ $$PWD/RadioButton.qml \ $$PWD/RadioDelegate.qml \ - $$PWD/RadioIndicator.qml \ $$PWD/RangeSlider.qml \ $$PWD/RoundButton.qml \ $$PWD/ScrollBar.qml \ @@ -39,7 +45,6 @@ QML_FILES += \ $$PWD/StackView.qml \ $$PWD/SwipeDelegate.qml \ $$PWD/SwitchDelegate.qml \ - $$PWD/SwitchIndicator.qml \ $$PWD/Switch.qml \ $$PWD/TabBar.qml \ $$PWD/TabButton.qml \ @@ -51,17 +56,3 @@ QML_FILES += \ $$PWD/ToolTip.qml \ $$PWD/Tumbler.qml \ $$PWD/VerticalHeaderView.qml - -HEADERS += \ - $$PWD/qquickuniversalbusyindicator_p.h \ - $$PWD/qquickuniversalfocusrectangle_p.h \ - $$PWD/qquickuniversalprogressbar_p.h \ - $$PWD/qquickuniversalstyle_p.h \ - $$PWD/qquickuniversaltheme_p.h - -SOURCES += \ - $$PWD/qquickuniversalbusyindicator.cpp \ - $$PWD/qquickuniversalfocusrectangle.cpp \ - $$PWD/qquickuniversalprogressbar.cpp \ - $$PWD/qquickuniversalstyle.cpp \ - $$PWD/qquickuniversaltheme.cpp diff --git a/src/imports/controls/universal/universal.pro b/src/imports/controls/universal/universal.pro index 99bad4da..a8b98fa7 100644 --- a/src/imports/controls/universal/universal.pro +++ b/src/imports/controls/universal/universal.pro @@ -1,11 +1,11 @@ TARGET = qtquickcontrols2universalstyleplugin -TARGETPATH = QtQuick/Controls.2/Universal +TARGETPATH = QtQuick/Controls/Universal -IMPORT_NAME = QtQuick.Controls.Universal -IMPORT_VERSION = 2.$$QT_MINOR_VERSION +QML_IMPORT_NAME = QtQuick.Controls.Universal +QML_IMPORT_VERSION = $$QT_VERSION QT += qml quick -QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2-private +QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2-private quickcontrols2impl-private DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII @@ -21,7 +21,7 @@ SOURCES += \ RESOURCES += \ $$PWD/qtquickcontrols2universalstyleplugin.qrc -CONFIG += no_cxx_module install_qml_files builtin_resources qtquickcompiler +CONFIG += qmltypes no_cxx_module install_qml_files builtin_resources qtquickcompiler load(qml_plugin) requires(qtConfig(quickcontrols2-universal)) diff --git a/src/imports/controls/windows/Button.qml b/src/imports/controls/windows/Button.qml index a00a3ea4..71a0bad5 100644 --- a/src/imports/controls/windows/Button.qml +++ b/src/imports/controls/windows/Button.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T +import QtQuick.NativeStyle as NativeStyle T.Button { id: control diff --git a/src/imports/controls/windows/CMakeLists.txt b/src/imports/controls/windows/CMakeLists.txt new file mode 100644 index 00000000..749d19a2 --- /dev/null +++ b/src/imports/controls/windows/CMakeLists.txt @@ -0,0 +1,88 @@ +# Generated from windows.pro. + +##################################################################### +## qtquickcontrols2windowsstyleplugin Plugin: +##################################################################### + +qt_add_qml_module(qtquickcontrols2windowsstyleplugin + URI "QtQuick.Controls.Windows" + VERSION "6.0" # special case + CLASSNAME QtQuickControls2WindowsStylePlugin + IMPORTS + QtQuick.Controls.Fusion/auto + GENERATE_QMLTYPES + SOURCES + qtquickcontrols2windowsstyleplugin.cpp + DEFINES + QT_NO_CAST_FROM_ASCII + QT_NO_CAST_TO_ASCII + LIBRARIES + Qt::CorePrivate + Qt::GuiPrivate + Qt::QmlPrivate + Qt::QuickControls2Private + Qt::QuickPrivate + Qt::QuickTemplates2Private + PUBLIC_LIBRARIES + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick + Qt::QuickControls2 + Qt::QuickTemplates2 +) + +#### Keys ignored in scope 1:.:.:windows.pro:<TRUE>: +# OTHER_FILES = "qmldir" "$$QML_FILES" +# QML_IMPORT_NAME = "QtQuick.Controls.Windows" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# TARGETPATH = "QtQuick/Controls/Windows" +# _REQUIREMENTS = "qtConfig(quickcontrols2-windows)" + +set(qml_files + "Button.qml" + "CheckBox.qml" + "ComboBox.qml" + "Frame.qml" + "GroupBox.qml" + "RadioButton.qml" + "Slider.qml" + "SpinBox.qml" + "TextArea.qml" + "TextField.qml" +) +set_source_files_properties(Button.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(CheckBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(ComboBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(Frame.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(GroupBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(RadioButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(Slider.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(SpinBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(TextArea.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(TextField.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) + +qt6_target_qml_files(qtquickcontrols2windowsstyleplugin + FILES + ${qml_files} +) diff --git a/src/imports/controls/windows/CheckBox.qml b/src/imports/controls/windows/CheckBox.qml index 00ab05d6..9caf3dd0 100644 --- a/src/imports/controls/windows/CheckBox.qml +++ b/src/imports/controls/windows/CheckBox.qml @@ -34,10 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.NativeStyle as NativeStyle NativeStyle.DefaultCheckBox { } diff --git a/src/imports/controls/windows/ComboBox.qml b/src/imports/controls/windows/ComboBox.qml index e331c401..c3880aba 100644 --- a/src/imports/controls/windows/ComboBox.qml +++ b/src/imports/controls/windows/ComboBox.qml @@ -34,10 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.NativeStyle as NativeStyle NativeStyle.DefaultComboBox { } diff --git a/src/imports/controls/windows/Frame.qml b/src/imports/controls/windows/Frame.qml index 024e31a2..0b45b352 100644 --- a/src/imports/controls/windows/Frame.qml +++ b/src/imports/controls/windows/Frame.qml @@ -34,10 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.NativeStyle as NativeStyle NativeStyle.DefaultFrame { } diff --git a/src/imports/controls/windows/GroupBox.qml b/src/imports/controls/windows/GroupBox.qml index 45911ba1..42e6993d 100644 --- a/src/imports/controls/windows/GroupBox.qml +++ b/src/imports/controls/windows/GroupBox.qml @@ -34,10 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.NativeStyle as NativeStyle NativeStyle.DefaultGroupBox { } diff --git a/src/imports/controls/windows/RadioButton.qml b/src/imports/controls/windows/RadioButton.qml index 6f1bdb04..9670abef 100644 --- a/src/imports/controls/windows/RadioButton.qml +++ b/src/imports/controls/windows/RadioButton.qml @@ -34,10 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.NativeStyle as NativeStyle NativeStyle.DefaultRadioButton { } diff --git a/src/imports/controls/windows/Slider.qml b/src/imports/controls/windows/Slider.qml index 3aed431f..1d04beca 100644 --- a/src/imports/controls/windows/Slider.qml +++ b/src/imports/controls/windows/Slider.qml @@ -34,10 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.NativeStyle as NativeStyle NativeStyle.DefaultSlider { } diff --git a/src/imports/controls/windows/SpinBox.qml b/src/imports/controls/windows/SpinBox.qml index 57b7669d..df9351c1 100644 --- a/src/imports/controls/windows/SpinBox.qml +++ b/src/imports/controls/windows/SpinBox.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T +import QtQuick.NativeStyle as NativeStyle T.SpinBox { id: control diff --git a/src/imports/controls/windows/TextArea.qml b/src/imports/controls/windows/TextArea.qml index 6845c13e..51982ff6 100644 --- a/src/imports/controls/windows/TextArea.qml +++ b/src/imports/controls/windows/TextArea.qml @@ -34,10 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.NativeStyle as NativeStyle NativeStyle.DefaultTextArea { } diff --git a/src/imports/controls/windows/TextField.qml b/src/imports/controls/windows/TextField.qml index 5728689b..f96023a6 100644 --- a/src/imports/controls/windows/TextField.qml +++ b/src/imports/controls/windows/TextField.qml @@ -34,10 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.NativeStyle as NativeStyle NativeStyle.DefaultTextField { } diff --git a/src/imports/controls/windows/qmldir b/src/imports/controls/windows/qmldir index 92601cb6..ae893d7e 100644 --- a/src/imports/controls/windows/qmldir +++ b/src/imports/controls/windows/qmldir @@ -1,4 +1,17 @@ module QtQuick.Controls.Windows plugin qtquickcontrols2windowsstyleplugin classname QtQuickControls2WindowsStylePlugin -depends QtQuick.Controls 2.5 +import QtQuick.Controls.Fusion auto + +Button 6.0 Button.qml +CheckBox 6.0 CheckBox.qml +RadioButton 6.0 RadioButton.qml +Slider 6.0 Slider.qml +GroupBox 6.0 GroupBox.qml +SpinBox 6.0 SpinBox.qml +TextField 6.0 TextField.qml +Frame 6.0 Frame.qml +TextArea 6.0 TextArea.qml +ComboBox 6.0 ComboBox.qml +ScrollBar 6.0 ScrollBar.qml +Dial 6.0 Dial.qml diff --git a/src/imports/controls/windows/windows.pro b/src/imports/controls/windows/windows.pro index a19c2e79..a72397d7 100644 --- a/src/imports/controls/windows/windows.pro +++ b/src/imports/controls/windows/windows.pro @@ -1,8 +1,8 @@ TARGET = qtquickcontrols2windowsstyleplugin -TARGETPATH = QtQuick/Controls.2/Windows +TARGETPATH = QtQuick/Controls/Windows QML_IMPORT_NAME = QtQuick.Controls.Windows -QML_IMPORT_MAJOR_VERSION = 6 +QML_IMPORT_VERSION = $$QT_VERSION QT += qml quick quickcontrols2 quicktemplates2 QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2-private @@ -23,7 +23,6 @@ CONFIG += qmltypes install_qmltypes load(qml_plugin) -# TODO: add config flag -#requires(qtConfig(quickcontrols2-nativestyle)) +requires(qtConfig(quickcontrols2-windows)) HEADERS += diff --git a/src/imports/controlsimpl/.prev_CMakeLists.txt b/src/imports/controlsimpl/.prev_CMakeLists.txt new file mode 100644 index 00000000..58f7ad8c --- /dev/null +++ b/src/imports/controlsimpl/.prev_CMakeLists.txt @@ -0,0 +1,37 @@ +# Generated from controlsimpl.pro. + +##################################################################### +## qtquickcontrols2implplugin Plugin: +##################################################################### + +qt_add_qml_module(qtquickcontrols2implplugin + URI "QtQuick.Controls.impl" + VERSION "${CMAKE_PROJECT_VERSION}" + CLASSNAME QtQuickControls2ImplPlugin + DEPENDENCIES + QtQuick.Templates/2.5 + SKIP_TYPE_REGISTRATION + SOURCES + qtquickcontrols2implplugin.cpp + DEFINES + QT_NO_CAST_FROM_ASCII + QT_NO_CAST_TO_ASCII + LIBRARIES + Qt::CorePrivate + Qt::GuiPrivate + Qt::QmlPrivate + Qt::QuickControls2ImplPrivate + Qt::QuickControls2Private + Qt::QuickPrivate + Qt::QuickTemplates2Private + PUBLIC_LIBRARIES + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick +) + +#### Keys ignored in scope 1:.:.:controlsimpl.pro:<TRUE>: +# OTHER_FILES = "qmldir" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# TARGETPATH = "QtQuick/Controls/impl" diff --git a/src/imports/controlsimpl/CMakeLists.txt b/src/imports/controlsimpl/CMakeLists.txt new file mode 100644 index 00000000..7b65cccb --- /dev/null +++ b/src/imports/controlsimpl/CMakeLists.txt @@ -0,0 +1,37 @@ +# Generated from controlsimpl.pro. + +##################################################################### +## qtquickcontrols2implplugin Plugin: +##################################################################### + +qt_add_qml_module(qtquickcontrols2implplugin + URI "QtQuick.Controls.impl" + VERSION "6.0" # special case + CLASSNAME QtQuickControls2ImplPlugin + DEPENDENCIES + QtQuick.Templates/2.5 + SKIP_TYPE_REGISTRATION + SOURCES + qtquickcontrols2implplugin.cpp + DEFINES + QT_NO_CAST_FROM_ASCII + QT_NO_CAST_TO_ASCII + LIBRARIES + Qt::CorePrivate + Qt::GuiPrivate + Qt::QmlPrivate + Qt::QuickControls2ImplPrivate + Qt::QuickControls2Private + Qt::QuickPrivate + Qt::QuickTemplates2Private + PUBLIC_LIBRARIES + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick +) + +#### Keys ignored in scope 1:.:.:controlsimpl.pro:<TRUE>: +# OTHER_FILES = "qmldir" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# TARGETPATH = "QtQuick/Controls/impl" diff --git a/src/imports/controlsimpl/controlsimpl.pro b/src/imports/controlsimpl/controlsimpl.pro new file mode 100644 index 00000000..ed629ce9 --- /dev/null +++ b/src/imports/controlsimpl/controlsimpl.pro @@ -0,0 +1,17 @@ +TARGET = qtquickcontrols2implplugin +TARGETPATH = QtQuick/Controls/impl +QML_IMPORT_VERSION = $$QT_VERSION + +QT += qml quick +QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2-private quickcontrols2impl-private + +DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII + +OTHER_FILES += \ + qmldir + +SOURCES += \ + $$PWD/qtquickcontrols2implplugin.cpp + +CONFIG += no_cxx_module +load(qml_plugin) diff --git a/src/imports/controlsimpl/qmldir b/src/imports/controlsimpl/qmldir new file mode 100644 index 00000000..e7097d82 --- /dev/null +++ b/src/imports/controlsimpl/qmldir @@ -0,0 +1,4 @@ +module QtQuick.Controls.impl +plugin qtquickcontrols2implplugin +classname QtQuickControls2ImplPlugin +depends QtQuick.Templates 2.5 diff --git a/src/imports/controls/fusiondesktop/qtquickcontrols2fusiondesktopstyleplugin.cpp b/src/imports/controlsimpl/qtquickcontrols2implplugin.cpp index 1b85f7ff..d5f29f5c 100644 --- a/src/imports/controls/fusiondesktop/qtquickcontrols2fusiondesktopstyleplugin.cpp +++ b/src/imports/controlsimpl/qtquickcontrols2implplugin.cpp @@ -34,32 +34,26 @@ ** ****************************************************************************/ -#include <QtQml/qqml.h> -#include <QtQuickControls2/private/qquickstyleplugin_p.h> -#include <QtQuickControls2/qquickstyle.h> +#include <QtQml/qqmlextensionplugin.h> +#include <QtQuickControls2Impl/private/qtquickcontrols2implglobal_p.h> QT_BEGIN_NAMESPACE -class QtQuickControls2WindowsStylePlugin : public QQuickStylePlugin +class QtQuickControls2ImplPlugin : public QQmlEngineExtensionPlugin { Q_OBJECT Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid) public: - void registerTypes(const char *uri) override; - QString name() const override; + QtQuickControls2ImplPlugin(QObject *parent = nullptr); }; -QString QtQuickControls2WindowsStylePlugin::name() const +QtQuickControls2ImplPlugin::QtQuickControls2ImplPlugin(QObject *parent) : QQmlEngineExtensionPlugin(parent) { - return QStringLiteral("FusionDesktop"); -} - -void QtQuickControls2WindowsStylePlugin::registerTypes(const char *uri) -{ - Q_UNUSED(uri); + volatile auto registration = &qml_register_types_QtQuick_Controls_impl; + Q_UNUSED(registration) } QT_END_NAMESPACE -#include "qtquickcontrols2fusiondesktopstyleplugin.moc" +#include "qtquickcontrols2implplugin.moc" diff --git a/src/imports/imports.pro b/src/imports/imports.pro index b304b7ce..bd690fea 100644 --- a/src/imports/imports.pro +++ b/src/imports/imports.pro @@ -1,17 +1,22 @@ TEMPLATE = subdirs SUBDIRS += \ controls \ + controlsimpl \ platform \ templates \ nativestyle SUBDIRS += \ + controls/default/default.pro \ + controls/default/impl/default-impl.pro \ controls/fusion/fusion.pro \ + controls/fusion/impl/fusion-impl.pro \ controls/imagine/imagine.pro \ + controls/imagine/impl/imagine-impl.pro \ controls/material/material.pro \ - controls/universal/universal.pro + controls/material/impl/material-impl.pro \ + controls/universal/universal.pro \ + controls/universal/impl/universal-impl.pro macos: SUBDIRS += controls/macos/macos.pro win32: SUBDIRS += controls/windows/windows.pro -unix: SUBDIRS += controls/fusiondesktop/fusiondesktop.pro - diff --git a/src/imports/nativestyle/CMakeLists.txt b/src/imports/nativestyle/CMakeLists.txt new file mode 100644 index 00000000..2039f102 --- /dev/null +++ b/src/imports/nativestyle/CMakeLists.txt @@ -0,0 +1,148 @@ +# Generated from nativestyle.pro. + +##################################################################### +## qtquickcontrols2nativestyleplugin Plugin: +##################################################################### + +qt_add_qml_module(qtquickcontrols2nativestyleplugin + URI "QtQuick.NativeStyle" + VERSION "6.0" + CLASSNAME QtQuickControls2NativeStylePlugin + DEPENDENCIES + QtQuick.Controls/2.5 + GENERATE_QMLTYPES + SOURCES + items/qquickstyleitem.cpp items/qquickstyleitem.h + items/qquickstyleitembutton.cpp items/qquickstyleitembutton.h + items/qquickstyleitemcheckbox.cpp items/qquickstyleitemcheckbox.h + items/qquickstyleitemcombobox.cpp items/qquickstyleitemcombobox.h + items/qquickstyleitemdial.cpp items/qquickstyleitemdial.h + items/qquickstyleitemframe.cpp items/qquickstyleitemframe.h + items/qquickstyleitemgroupbox.cpp items/qquickstyleitemgroupbox.h + items/qquickstyleitemprogressbar.cpp items/qquickstyleitemprogressbar.h + items/qquickstyleitemradiobutton.cpp items/qquickstyleitemradiobutton.h + items/qquickstyleitemscrollbar.cpp items/qquickstyleitemscrollbar.h + items/qquickstyleitemslider.cpp items/qquickstyleitemslider.h + items/qquickstyleitemspinbox.cpp items/qquickstyleitemspinbox.h + items/qquickstyleitemtextfield.cpp items/qquickstyleitemtextfield.h + qstyle/qquickcommonstyle.cpp qstyle/qquickcommonstyle.h qstyle/qquickcommonstyle_p.h + qstyle/qquickcommonstylepixmaps_p.h + qstyle/qquickdrawutil.cpp qstyle/qquickdrawutil.h + qstyle/qquicknativestyle.cpp qstyle/qquicknativestyle.h + qstyle/qquickstyle.cpp qstyle/qquickstyle.h qstyle/qquickstyle_p.h + qstyle/qquickstylehelper.cpp qstyle/qquickstylehelper_p.h + qstyle/qquickstyleoption.cpp qstyle/qquickstyleoption.h + qtquickcontrols2nativestyleplugin.cpp + DEFINES + QT_NO_CAST_FROM_ASCII + QT_NO_CAST_TO_ASCII + INCLUDE_DIRECTORIES + items + qstyle + LIBRARIES + Qt::CorePrivate + Qt::GuiPrivate + Qt::QmlPrivate + Qt::QuickControls2Private + Qt::QuickPrivate + Qt::QuickTemplates2Private + PUBLIC_LIBRARIES + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick + Qt::QuickControls2 + Qt::QuickTemplates2 +) + +#### Keys ignored in scope 1:.:.:nativestyle.pro:<TRUE>: +# OTHER_FILES = "qmldir" "$$QML_FILES" +# QML_IMPORT_MAJOR_VERSION = "6" +# QML_IMPORT_NAME = "QtQuick.NativeStyle" +# TARGETPATH = "QtQuick/NativeStyle" +# _REQUIREMENTS = "qtConfig(quickcontrols2-macos)|qtConfig(quickcontrols2-windows)" + +## Scopes: +##################################################################### + +qt_extend_target(qtquickcontrols2nativestyleplugin CONDITION MACOS + SOURCES + qstyle/mac/qquickmacstyle_mac.mm qstyle/mac/qquickmacstyle_mac_p.h + qstyle/mac/qquickmacstyle_mac_p_p.h + INCLUDE_DIRECTORIES + qstyle/mac + LIBRARIES + ${FWAppKit} +) + +qt_extend_target(qtquickcontrols2nativestyleplugin CONDITION WIN32 + SOURCES + qstyle/windows/qquickwindowsstyle.cpp qstyle/windows/qquickwindowsstyle_p.h + qstyle/windows/qquickwindowsstyle_p_p.h + INCLUDE_DIRECTORIES + qstyle/windows + LIBRARIES + gdi32 + user32 + uxtheme +) + +set(qml_files + "controls/DefaultButton.qml" + "controls/DefaultSlider.qml" + "controls/DefaultGroupBox.qml" + "controls/DefaultCheckBox.qml" + "controls/DefaultRadioButton.qml" + "controls/DefaultSpinBox.qml" + "controls/DefaultTextField.qml" + "controls/DefaultFrame.qml" + "controls/DefaultTextArea.qml" + "controls/DefaultComboBox.qml" + "controls/DefaultScrollBar.qml" + "controls/DefaultProgressBar.qml" + "controls/DefaultDial.qml" +) +set_source_files_properties(controls/DefaultButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(controls/DefaultSlider.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(controls/DefaultGroupBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(controls/DefaultCheckBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(controls/DefaultRadioButton.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(controls/DefaultSpinBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(controls/DefaultTextField.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(controls/DefaultFrame.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(controls/DefaultTextArea.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(controls/DefaultComboBox.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(controls/DefaultScrollBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(controls/DefaultProgressBar.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) +set_source_files_properties(controls/DefaultDial.qml PROPERTIES + QT_QML_SOURCE_VERSION "6.0" +) + +qt6_target_qml_files(qtquickcontrols2nativestyleplugin + FILES + ${qml_files} +) diff --git a/src/imports/nativestyle/controls/DefaultButton.qml b/src/imports/nativestyle/controls/DefaultButton.qml index d98916ca..de0c8b70 100644 --- a/src/imports/nativestyle/controls/DefaultButton.qml +++ b/src/imports/nativestyle/controls/DefaultButton.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T +import QtQuick.NativeStyle as NativeStyle T.Button { id: control diff --git a/src/imports/nativestyle/controls/DefaultCheckBox.qml b/src/imports/nativestyle/controls/DefaultCheckBox.qml index c75e755e..09166820 100644 --- a/src/imports/nativestyle/controls/DefaultCheckBox.qml +++ b/src/imports/nativestyle/controls/DefaultCheckBox.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.NativeStyle as NativeStyle T.CheckBox { id: control diff --git a/src/imports/nativestyle/controls/DefaultComboBox.qml b/src/imports/nativestyle/controls/DefaultComboBox.qml index ec6fe7c8..9d0ed5cf 100644 --- a/src/imports/nativestyle/controls/DefaultComboBox.qml +++ b/src/imports/nativestyle/controls/DefaultComboBox.qml @@ -34,12 +34,12 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Window 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Controls.impl 2.15 -import QtQuick.Templates 2.15 as T -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Window +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T +import QtQuick.NativeStyle as NativeStyle T.ComboBox { id: control diff --git a/src/imports/nativestyle/controls/DefaultDial.qml b/src/imports/nativestyle/controls/DefaultDial.qml new file mode 100644 index 00000000..0f1d2c7d --- /dev/null +++ b/src/imports/nativestyle/controls/DefaultDial.qml @@ -0,0 +1,58 @@ +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T +import QtQuick.NativeStyle as NativeStyle + +T.Dial { + id: control + + readonly property bool nativeBackground: background instanceof NativeStyle.StyleItem + + implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset, + implicitContentWidth + leftPadding + rightPadding) + implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset, + implicitContentHeight + topPadding + bottomPadding) + + font.pixelSize: nativeBackground ? background.styleFont(control).pixelSize : undefined + + background: NativeStyle.Dial { + control: control + useNinePatchImage: false + } +} diff --git a/src/imports/nativestyle/controls/DefaultFrame.qml b/src/imports/nativestyle/controls/DefaultFrame.qml index 3dffd4d1..6241a91e 100644 --- a/src/imports/nativestyle/controls/DefaultFrame.qml +++ b/src/imports/nativestyle/controls/DefaultFrame.qml @@ -34,11 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T +import QtQuick.NativeStyle as NativeStyle T.Frame { id: control diff --git a/src/imports/nativestyle/controls/DefaultGroupBox.qml b/src/imports/nativestyle/controls/DefaultGroupBox.qml index 0d29fd7d..d5265bc0 100644 --- a/src/imports/nativestyle/controls/DefaultGroupBox.qml +++ b/src/imports/nativestyle/controls/DefaultGroupBox.qml @@ -34,11 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T +import QtQuick.NativeStyle as NativeStyle T.GroupBox { id: control diff --git a/src/imports/nativestyle/controls/DefaultProgressBar.qml b/src/imports/nativestyle/controls/DefaultProgressBar.qml index e86f9410..646a0ab5 100644 --- a/src/imports/nativestyle/controls/DefaultProgressBar.qml +++ b/src/imports/nativestyle/controls/DefaultProgressBar.qml @@ -34,11 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.NativeStyle as NativeStyle T.ProgressBar { id: control diff --git a/src/imports/nativestyle/controls/DefaultRadioButton.qml b/src/imports/nativestyle/controls/DefaultRadioButton.qml index e22e2f2f..29746ba7 100644 --- a/src/imports/nativestyle/controls/DefaultRadioButton.qml +++ b/src/imports/nativestyle/controls/DefaultRadioButton.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.NativeStyle as NativeStyle T.RadioButton { id: control diff --git a/src/imports/nativestyle/controls/DefaultScrollBar.qml b/src/imports/nativestyle/controls/DefaultScrollBar.qml index 1e563bbc..0f42bc80 100644 --- a/src/imports/nativestyle/controls/DefaultScrollBar.qml +++ b/src/imports/nativestyle/controls/DefaultScrollBar.qml @@ -34,11 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T +import QtQuick.NativeStyle as NativeStyle T.ScrollBar { id: control @@ -62,6 +61,5 @@ T.ScrollBar { contentItem: NativeStyle.ScrollBar { control: control subControl: NativeStyle.ScrollBar.Handle - width: control.width } } diff --git a/src/imports/nativestyle/controls/DefaultSlider.qml b/src/imports/nativestyle/controls/DefaultSlider.qml index 00069137..8648143d 100644 --- a/src/imports/nativestyle/controls/DefaultSlider.qml +++ b/src/imports/nativestyle/controls/DefaultSlider.qml @@ -34,11 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T +import QtQuick.NativeStyle as NativeStyle T.Slider { id: control diff --git a/src/imports/nativestyle/controls/DefaultSpinBox.qml b/src/imports/nativestyle/controls/DefaultSpinBox.qml index 11cf345d..c959516a 100644 --- a/src/imports/nativestyle/controls/DefaultSpinBox.qml +++ b/src/imports/nativestyle/controls/DefaultSpinBox.qml @@ -34,11 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T +import QtQuick.NativeStyle as NativeStyle T.SpinBox { id: control diff --git a/src/imports/nativestyle/controls/DefaultTextArea.qml b/src/imports/nativestyle/controls/DefaultTextArea.qml index 29277414..819e32ad 100644 --- a/src/imports/nativestyle/controls/DefaultTextArea.qml +++ b/src/imports/nativestyle/controls/DefaultTextArea.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T +import QtQuick.NativeStyle as NativeStyle T.TextArea { id: control @@ -81,9 +81,7 @@ T.TextArea { renderType: control.renderType } - background: NativeStyle.TextArea { - control: control - contentWidth: Math.max(control.contentWidth, placeholder.implicitWidth) - contentHeight: control.contentHeight + background: Rectangle { + color: control.palette.light } } diff --git a/src/imports/nativestyle/controls/DefaultTextField.qml b/src/imports/nativestyle/controls/DefaultTextField.qml index 8df069d8..c2081d61 100644 --- a/src/imports/nativestyle/controls/DefaultTextField.qml +++ b/src/imports/nativestyle/controls/DefaultTextField.qml @@ -34,11 +34,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.NativeStyle 6.0 as NativeStyle +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T +import QtQuick.NativeStyle as NativeStyle T.TextField { id: control diff --git a/src/imports/nativestyle/controls/controls.pri b/src/imports/nativestyle/controls/controls.pri index 55f84703..8675989e 100644 --- a/src/imports/nativestyle/controls/controls.pri +++ b/src/imports/nativestyle/controls/controls.pri @@ -11,3 +11,4 @@ QML_FILES += \ $$PWD/DefaultComboBox.qml \ $$PWD/DefaultScrollBar.qml \ $$PWD/DefaultProgressBar.qml \ + $$PWD/DefaultDial.qml \ diff --git a/src/imports/nativestyle/items/items.pri b/src/imports/nativestyle/items/items.pri index a5c33b86..f572cf24 100644 --- a/src/imports/nativestyle/items/items.pri +++ b/src/imports/nativestyle/items/items.pri @@ -10,10 +10,10 @@ HEADERS += \ $$PWD/qquickstyleitemspinbox.h \ $$PWD/qquickstyleitemtextfield.h \ $$PWD/qquickstyleitemframe.h \ - $$PWD/qquickstyleitemtextarea.h \ $$PWD/qquickstyleitemcombobox.h \ $$PWD/qquickstyleitemscrollbar.h \ $$PWD/qquickstyleitemprogressbar.h \ + $$PWD/qquickstyleitemdial.h \ SOURCES += \ $$PWD/qquickstyleitem.cpp \ @@ -25,7 +25,7 @@ SOURCES += \ $$PWD/qquickstyleitemspinbox.cpp \ $$PWD/qquickstyleitemtextfield.cpp \ $$PWD/qquickstyleitemframe.cpp \ - $$PWD/qquickstyleitemtextarea.cpp \ $$PWD/qquickstyleitemcombobox.cpp \ $$PWD/qquickstyleitemscrollbar.cpp \ $$PWD/qquickstyleitemprogressbar.cpp \ + $$PWD/qquickstyleitemdial.cpp \ diff --git a/src/imports/nativestyle/items/qquickstyleitem.h b/src/imports/nativestyle/items/qquickstyleitem.h index 37e9dc3d..ad315b96 100644 --- a/src/imports/nativestyle/items/qquickstyleitem.h +++ b/src/imports/nativestyle/items/qquickstyleitem.h @@ -154,7 +154,7 @@ class QQuickStyleItem : public QQuickItem Q_OBJECT // Input - Q_PROPERTY(QQuickItem *control MEMBER m_control) + Q_PROPERTY(QQuickItem *control MEMBER m_control NOTIFY controlChanged) Q_PROPERTY(qreal contentWidth READ contentWidth WRITE setContentWidth) Q_PROPERTY(qreal contentHeight READ contentHeight WRITE setContentHeight) Q_PROPERTY(bool useNinePatchImage MEMBER m_useNinePatchImage) @@ -208,6 +208,7 @@ public: void markImageDirty(); signals: + void controlChanged(); void contentPaddingChanged(); void layoutMarginsChanged(); void fontChanged(); diff --git a/src/imports/nativestyle/items/qquickstyleitemdial.cpp b/src/imports/nativestyle/items/qquickstyleitemdial.cpp new file mode 100644 index 00000000..f214fb2e --- /dev/null +++ b/src/imports/nativestyle/items/qquickstyleitemdial.cpp @@ -0,0 +1,110 @@ +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "qquickstyleitemdial.h" + +QFont QQuickStyleItemDial::styleFont(QQuickItem *control) +{ + return style()->font(QStyle::CE_ProgressBarLabel, controlSize(control)); +} + +void QQuickStyleItemDial::connectToControl() +{ + QQuickStyleItem::connectToControl(); + auto dial = control<QQuickDial>(); + connect(dial, &QQuickDial::fromChanged, this, &QQuickStyleItem::markImageDirty); + connect(dial, &QQuickDial::toChanged, this, &QQuickStyleItem::markImageDirty); + connect(dial, &QQuickDial::positionChanged, this, &QQuickStyleItem::markImageDirty); + connect(dial, &QQuickDial::valueChanged, this, &QQuickStyleItem::markImageDirty); + connect(dial, &QQuickDial::stepSizeChanged, this, &QQuickStyleItem::markImageDirty); + connect(dial, &QQuickDial::pressedChanged, this, &QQuickStyleItem::markImageDirty); +} + +StyleItemGeometry QQuickStyleItemDial::calculateGeometry() +{ + QStyleOptionSlider styleOption; + initStyleOption(styleOption); + + StyleItemGeometry geometry; + geometry.minimumSize = style()->sizeFromContents(QStyle::CT_Dial, &styleOption, QSize(0, 0)); + geometry.implicitSize = geometry.minimumSize; + geometry.layoutRect = style()->subElementRect(QStyle::SE_SliderLayoutItem, &styleOption); + geometry.ninePatchMargins = style()->ninePatchMargins(QStyle::CC_Dial, &styleOption, geometry.minimumSize); + + return geometry; +} + +void QQuickStyleItemDial::paintEvent(QPainter *painter) +{ + QStyleOptionSlider styleOption; + initStyleOption(styleOption); + style()->drawComplexControl(QStyle::CC_Dial, &styleOption, painter); +} + +void QQuickStyleItemDial::initStyleOption(QStyleOptionSlider &styleOption) +{ + initStyleOptionBase(styleOption); + auto dial = control<QQuickDial>(); + + styleOption.subControls = QStyle::SC_SliderGroove | QStyle::SC_SliderHandle; + styleOption.activeSubControls = QStyle::SC_None; + styleOption.tickInterval = dial->stepSize(); + styleOption.dialWrapping = dial->wrap(); + styleOption.upsideDown = true; + + if (dial->isPressed()) + styleOption.state |= QStyle::State_Sunken; + + if (dial->stepSize() == 0) { + styleOption.minimum = 0; + styleOption.maximum = 10000; + styleOption.sliderPosition = dial->position() * styleOption.maximum; + } else { + styleOption.minimum = dial->from(); + styleOption.maximum = dial->to(); + styleOption.sliderPosition = dial->value(); + } + + // TODO: add proper API for tickmarks + const int index = dial->metaObject()->indexOfProperty("qqc2_style_tickPosition"); + if (index != -1) { + const int tickPosition = dial->metaObject()->property(index).read(dial).toInt(); + styleOption.tickPosition = QStyleOptionSlider::TickPosition(tickPosition); + if (styleOption.tickPosition != QStyleOptionSlider::NoTicks) + styleOption.subControls |= QStyle::SC_DialTickmarks; + } + +} diff --git a/src/imports/nativestyle/items/qquickstyleitemtextarea.h b/src/imports/nativestyle/items/qquickstyleitemdial.h index 90d83ad7..3eefa734 100644 --- a/src/imports/nativestyle/items/qquickstyleitemtextarea.h +++ b/src/imports/nativestyle/items/qquickstyleitemdial.h @@ -34,16 +34,16 @@ ** ****************************************************************************/ -#ifndef QQUICKSTYLEITEMTEXTAREA_H -#define QQUICKSTYLEITEMTEXTAREA_H +#ifndef QQUICKSTYLEITEMDIAL_H +#define QQUICKSTYLEITEMDIAL_H #include "qquickstyleitem.h" -#include <QtQuickTemplates2/private/qquicktextarea_p.h> +#include <QtQuickTemplates2/private/qquickdial_p.h> -class QQuickStyleItemTextArea : public QQuickStyleItem +class QQuickStyleItemDial : public QQuickStyleItem { Q_OBJECT - QML_NAMED_ELEMENT(TextArea) + QML_NAMED_ELEMENT(Dial) public: QFont styleFont(QQuickItem *control) override; @@ -54,7 +54,7 @@ protected: StyleItemGeometry calculateGeometry() override; private: - void initStyleOption(QStyleOptionFrame &styleOption); + void initStyleOption(QStyleOptionSlider &styleOption); }; -#endif // QQUICKSTYLEITEMTEXTAREA_H +#endif // QQUICKSTYLEITEMDIAL_H diff --git a/src/imports/nativestyle/items/qquickstyleitemscrollbar.cpp b/src/imports/nativestyle/items/qquickstyleitemscrollbar.cpp index 7a462082..72f850a8 100644 --- a/src/imports/nativestyle/items/qquickstyleitemscrollbar.cpp +++ b/src/imports/nativestyle/items/qquickstyleitemscrollbar.cpp @@ -83,6 +83,17 @@ void QQuickStyleItemScrollBar::initStyleOption(QStyleOptionSlider &styleOption) if (scrollBar->isPressed()) styleOption.state |= QStyle::State_Sunken; +#ifdef Q_OS_MACOS + if (m_overrideState != None) { + // In ScrollBar.qml we fade between two versions of + // the handle, depending on if it's hovered or not + if (m_overrideState & AlwaysHovered) + styleOption.state |= QStyle::State_Sunken; + else if (m_overrideState & NeverHovered) + styleOption.state &= ~QStyle::State_Sunken; + } +#endif + // The following values will let the handle fill 100% of the // groove / imageSize. But when the handle is resized by // QQuickScrollBar, it will end up with the correct size visually. diff --git a/src/imports/nativestyle/items/qquickstyleitemscrollbar.h b/src/imports/nativestyle/items/qquickstyleitemscrollbar.h index e181d4ec..db241ad8 100644 --- a/src/imports/nativestyle/items/qquickstyleitemscrollbar.h +++ b/src/imports/nativestyle/items/qquickstyleitemscrollbar.h @@ -46,6 +46,10 @@ class QQuickStyleItemScrollBar : public QQuickStyleItem Q_PROPERTY(SubControl subControl MEMBER m_subControl) +#ifdef Q_OS_MACOS + Q_PROPERTY(OverrideState overrideState MEMBER m_overrideState) +#endif + QML_NAMED_ELEMENT(ScrollBar) public: @@ -55,6 +59,15 @@ public: }; Q_ENUM(SubControl) +#ifdef Q_OS_MACOS + enum OverrideState { + None = 0, + AlwaysHovered, + NeverHovered, + }; + Q_ENUM(OverrideState) +#endif + QFont styleFont(QQuickItem *control) override; protected: @@ -67,6 +80,10 @@ private: private: SubControl m_subControl = Groove; + +#ifdef Q_OS_MACOS + OverrideState m_overrideState = None; +#endif }; #endif // QQUICKSTYLEITEMSCROLLBAR_H diff --git a/src/imports/nativestyle/items/qquickstyleitemtextarea.cpp b/src/imports/nativestyle/items/qquickstyleitemtextarea.cpp deleted file mode 100644 index c149444b..00000000 --- a/src/imports/nativestyle/items/qquickstyleitemtextarea.cpp +++ /dev/null @@ -1,85 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2020 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL3$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPLv3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or later as published by the Free -** Software Foundation and appearing in the file LICENSE.GPL included in -** the packaging of this file. Please review the following information to -** ensure the GNU General Public License version 2.0 requirements will be -** met: http://www.gnu.org/licenses/gpl-2.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qquickstyleitemtextarea.h" - -QFont QQuickStyleItemTextArea::styleFont(QQuickItem *control) -{ - return style()->font(QStyle::CE_ComboBoxLabel, controlSize(control)); -} - -void QQuickStyleItemTextArea::connectToControl() -{ - QQuickStyleItem::connectToControl(); - auto textArea = control<QQuickTextArea>(); - connect(textArea, &QQuickTextArea::readOnlyChanged, this, &QQuickStyleItem::markImageDirty); - connect(textArea, &QQuickTextArea::focusChanged, this, &QQuickStyleItem::markImageDirty); -} - -StyleItemGeometry QQuickStyleItemTextArea::calculateGeometry() -{ - QStyleOptionFrame styleOption; - initStyleOption(styleOption); - StyleItemGeometry geometry; - - // There is no CT_TextEdit in QStyle, so we "borrow" CT_LineEdit for now - geometry.minimumSize = style()->sizeFromContents(QStyle::CT_LineEdit, &styleOption, QSize(0, 0)); - geometry.implicitSize = style()->sizeFromContents(QStyle::CT_LineEdit, &styleOption, contentSize()); - styleOption.rect = QRect(QPoint(0, 0), geometry.implicitSize); - geometry.contentRect = style()->subElementRect(QStyle::SE_LineEditContents, &styleOption); - geometry.ninePatchMargins = style()->ninePatchMargins(QStyle::CE_ShapedFrame, &styleOption, geometry.minimumSize); - - return geometry; -} - -void QQuickStyleItemTextArea::paintEvent(QPainter *painter) -{ - QStyleOptionFrame styleOption; - initStyleOption(styleOption); - style()->drawPrimitive(QStyle::PE_PanelLineEdit, &styleOption, painter); -} - -void QQuickStyleItemTextArea::initStyleOption(QStyleOptionFrame &styleOption) -{ - initStyleOptionBase(styleOption); - auto textArea = control<QQuickTextArea>(); - - styleOption.lineWidth = 1; - styleOption.midLineWidth = 0; - styleOption.state |= QStyle::State_Sunken; - if (textArea->isReadOnly()) - styleOption.state |= QStyle::State_ReadOnly; -} diff --git a/src/imports/nativestyle/nativestyle.pro b/src/imports/nativestyle/nativestyle.pro index aa8b28b5..b06e5daf 100644 --- a/src/imports/nativestyle/nativestyle.pro +++ b/src/imports/nativestyle/nativestyle.pro @@ -25,7 +25,6 @@ CONFIG += qmltypes install_qmltypes load(qml_plugin) -# TODO: add config flag -#requires(qtConfig(quickcontrols2-nativestyle)) +requires(qtConfig(quickcontrols2-macos)|qtConfig(quickcontrols2-windows)) HEADERS += diff --git a/src/imports/nativestyle/qmldir b/src/imports/nativestyle/qmldir index 799a9609..3b6ce6c5 100644 --- a/src/imports/nativestyle/qmldir +++ b/src/imports/nativestyle/qmldir @@ -15,3 +15,4 @@ DefaultTextArea 6.0 controls/DefaultTextArea.qml DefaultComboBox 6.0 controls/DefaultComboBox.qml DefaultScrollBar 6.0 controls/DefaultScrollBar.qml DefaultProgressBar 6.0 controls/DefaultProgressBar.qml +DefaultDial 6.0 controls/DefaultDial.qml diff --git a/src/imports/nativestyle/qstyle/mac/qquickmacstyle_mac.mm b/src/imports/nativestyle/qstyle/mac/qquickmacstyle_mac.mm index 6ad3be5c..e61bdafa 100644 --- a/src/imports/nativestyle/qstyle/mac/qquickmacstyle_mac.mm +++ b/src/imports/nativestyle/qstyle/mac/qquickmacstyle_mac.mm @@ -1903,6 +1903,7 @@ NSCell *QMacStylePrivate::cocoaCell(CocoaControl cocoaControl) const void QMacStylePrivate::drawNSViewInRect(NSView *view, const QRectF &rect, QPainter *p, DrawRectBlock drawRectBlock) const { + QMacAutoReleasePool pool; QMacCGContext ctx(p); setupNSGraphicsContext(ctx, YES); @@ -2857,6 +2858,7 @@ void QMacStyle::drawPrimitive(PrimitiveElement pe, const QStyleOption *opt, QPai // if (QTabWidget *tabWidget = qobject_cast<QTabWidget *>(opt->styleObject)) // clipTabBarFrame(opt, this, ctx); //#endif + QMacAutoReleasePool pool; CGContextTranslateCTM(ctx, 0, rect.origin.y + rect.size.height); CGContextScaleCTM(ctx, 1, -1); if (QOperatingSystemVersion::current() < QOperatingSystemVersion::MacOSMojave @@ -3026,6 +3028,7 @@ void QMacStyle::drawPrimitive(PrimitiveElement pe, const QStyleOption *opt, QPai return cs == QStyleHelper::SizeSmall ? 0.5 : 0.0; } (); d->drawNSViewInRect(tb, opt->rect, p, ^(CGContextRef ctx, const CGRect &rect) { + QMacAutoReleasePool pool; CGContextTranslateCTM(ctx, 0, vOffset); [tb.cell drawInteriorWithFrame:rect inView:tb]; }); @@ -3080,6 +3083,7 @@ void QMacStyle::drawPrimitive(PrimitiveElement pe, const QStyleOption *opt, QPai static_cast<NSTextFieldCell *>(tf.cell).bezelStyle = isRounded ? NSTextFieldRoundedBezel : NSTextFieldSquareBezel; tf.frame = opt->rect.toCGRect(); d->drawNSViewInRect(tf, opt->rect, p, ^(CGContextRef, const CGRect &rect) { + QMacAutoReleasePool pool; if (!qt_mac_applicationIsInDarkMode()) { // In 'Dark' mode controls are transparent, so we do not // over-paint the (potentially custom) color in the background. @@ -3444,6 +3448,7 @@ void QMacStyle::drawControl(ControlElement ce, const QStyleOption *opt, QPainter [pb highlight:isPressed]; pb.state = isHighlighted && !isPressed ? NSOnState : NSOffState; d->drawNSViewInRect(pb, frameRect, p, ^(CGContextRef, const CGRect &r) { + QMacAutoReleasePool pool; [pb.cell drawBezelWithFrame:r inView:pb.superview]; }); [pb highlight:NO]; @@ -3658,6 +3663,7 @@ void QMacStyle::drawControl(ControlElement ce, const QStyleOption *opt, QPainter pb.state = (isActive && isSelected && !isPressed) ? NSOnState : NSOffState; const auto drawBezelBlock = ^(CGContextRef ctx, const CGRect &r) { + QMacAutoReleasePool pool; CGContextClipToRect(ctx, opt->rect.toCGRect()); if (!isSelected || needsInactiveHack) { // Final stage of the pressed state hack: flip NSPopupButton rendering @@ -3711,6 +3717,7 @@ void QMacStyle::drawControl(ControlElement ce, const QStyleOption *opt, QPainter tabPixmap.fill(Qt::transparent); QPainter tabPainter(&tabPixmap); d->drawNSViewInRect(pb, frameRect, &tabPainter, ^(CGContextRef ctx, const CGRect &r) { + QMacAutoReleasePool pool; CGContextTranslateCTM(ctx, -opt->rect.left(), -opt->rect.top()); drawBezelBlock(ctx, r); }); @@ -4150,6 +4157,7 @@ void QMacStyle::drawControl(ControlElement ce, const QStyleOption *opt, QPainter const auto cw = QMacStylePrivate::CocoaControl(QMacStylePrivate::ProgressIndicator_Determinate, aquaSize); auto *pi = static_cast<NSProgressIndicator *>(d->cocoaControl(cw)); d->drawNSViewInRect(pi, rect, p, ^(CGContextRef ctx, const CGRect &rect) { + QMacAutoReleasePool pool; d->setupVerticalInvertedXform(ctx, reverse, false, rect); pi.minValue = pb->minimum; pi.maxValue = pb->maximum; @@ -4200,6 +4208,7 @@ void QMacStyle::drawControl(ControlElement ce, const QStyleOption *opt, QPainter auto *sv = static_cast<NSSplitView *>(d->cocoaControl(cw)); sv.frame = opt->rect.toCGRect(); d->drawNSViewInRect(sv, opt->rect, p, ^(CGContextRef, const CGRect &rect) { + QMacAutoReleasePool pool; [sv drawDividerInRect:rect]; }); } else { @@ -5058,6 +5067,7 @@ void QMacStyle::drawComplexControl(ComplexControl cc, const QStyleOptionComplex } d->drawNSViewInRect(slider, opt->rect, p, ^(CGContextRef ctx, const CGRect &rect) { + QMacAutoReleasePool pool; // Since the GC is flipped, upsideDown means *not* inverted when vertical. const bool verticalFlip = !isHorizontal && !sl->upsideDown; // FIXME: && !isSierraOrLater @@ -5224,6 +5234,7 @@ void QMacStyle::drawComplexControl(ComplexControl cc, const QStyleOptionComplex pb.frame = frameRect.toCGRect(); [pb highlight:isPressed]; d->drawNSViewInRect(pb, frameRect, p, ^(CGContextRef, const CGRect &r) { + QMacAutoReleasePool pool; [pb.cell drawBezelWithFrame:r inView:pb.superview]; }); } else if (cw.type == QMacStylePrivate::ComboBox) { @@ -5241,6 +5252,7 @@ void QMacStyle::drawComplexControl(ComplexControl cc, const QStyleOptionComplex d->drawNSViewInRect(cb, frameRect, p, ^(CGContextRef, const CGRect &r) { // FIXME This is usually drawn in the control's superview, but we wouldn't get inactive look in this case + QMacAutoReleasePool pool; [cb.cell drawWithFrame:r inView:cb]; }); } @@ -5311,6 +5323,7 @@ void QMacStyle::drawComplexControl(ComplexControl cc, const QStyleOptionComplex const auto buttonRect = proxy()->subControlRect(CC_TitleBar, titlebar, sc); d->drawNSViewInRect(wb, buttonRect, p, ^(CGContextRef, const CGRect &rect) { + QMacAutoReleasePool pool; auto *wbCell = static_cast<NSButtonCell *>(wb.cell); [wbCell drawWithFrame:rect inView:wb]; }); @@ -5417,6 +5430,7 @@ void QMacStyle::drawComplexControl(ComplexControl cc, const QStyleOptionComplex pb.state = isHighlighted && !isPressed ? NSOnState : NSOffState; const auto buttonRect = proxy()->subControlRect(cc, tb, SC_ToolButton); d->drawNSViewInRect(pb, buttonRect, p, ^(CGContextRef, const CGRect &rect) { + QMacAutoReleasePool pool; [pb.cell drawBezelWithFrame:rect inView:pb]; }); } @@ -5894,7 +5908,7 @@ QSize QMacStyle::sizeFromContents(ContentsType ct, const QStyleOption *opt, cons case CT_SpinBox: if (const QStyleOptionSpinBox *vopt = qstyleoption_cast<const QStyleOptionSpinBox *>(opt)) { if (vopt->subControls == SC_SpinBoxFrame) { - const QSize minimumSize(10, 10); + const QSize minimumSize(20, 24); if (sz.width() < minimumSize.width()) sz.setWidth(minimumSize.width()); if (sz.height() < minimumSize.height()) @@ -6030,9 +6044,9 @@ QSize QMacStyle::sizeFromContents(ContentsType ct, const QStyleOption *opt, cons case CT_LineEdit: if (const QStyleOptionFrame *f = qstyleoption_cast<const QStyleOptionFrame *>(opt)) { if (sz.isEmpty()) { - // Minimum size (10, 10) - sz.rwidth() += 2; - sz.rheight() += 6; + // Minimum size (with padding: 18x24) + sz.rwidth() = 10; + sz.rheight() = 20; } // From using pixelTool with XCode/NSTextTextField int leftPadding = 4; diff --git a/src/imports/nativestyle/qstyle/qquickcommonstyle.cpp b/src/imports/nativestyle/qstyle/qquickcommonstyle.cpp index 16e05abd..41f12545 100644 --- a/src/imports/nativestyle/qstyle/qquickcommonstyle.cpp +++ b/src/imports/nativestyle/qstyle/qquickcommonstyle.cpp @@ -4666,6 +4666,8 @@ QSize QCommonStyle::sizeFromContents(ContentsType ct, const QStyleOption *opt, c if (const QStyleOptionSlider *option = qstyleoption_cast<const QStyleOptionSlider *>(opt)) sz = subControlRect(QStyle::CC_Slider, option, QStyle::SC_SliderHandle).size(); break; + case CT_Dial: + sz = QSize(20, 20); case CT_Frame: if (const QStyleOptionFrame *option = qstyleoption_cast<const QStyleOptionFrame *>(opt)) { const int ninePatchSplit = 1; diff --git a/src/imports/nativestyle/qstyle/qquickstyle.h b/src/imports/nativestyle/qstyle/qquickstyle.h index 8fd3a5ae..4a2e5287 100644 --- a/src/imports/nativestyle/qstyle/qquickstyle.h +++ b/src/imports/nativestyle/qstyle/qquickstyle.h @@ -543,6 +543,7 @@ public: CT_Menu, CT_TabBarTab, CT_Slider, + CT_Dial, CT_ScrollBar, CT_LineEdit, CT_SpinBox, diff --git a/src/imports/nativestyle/qstyle/qstyle.pri b/src/imports/nativestyle/qstyle/qstyle.pri index 33257845..4d025498 100644 --- a/src/imports/nativestyle/qstyle/qstyle.pri +++ b/src/imports/nativestyle/qstyle/qstyle.pri @@ -20,4 +20,4 @@ SOURCES += \ $$PWD/qquickstyleoption.cpp macos: include(mac/mac.pri) -windows: include(windows/windows.pri) +win32: include(windows/windows.pri) diff --git a/src/imports/nativestyle/qtquickcontrols2nativestyleplugin.cpp b/src/imports/nativestyle/qtquickcontrols2nativestyleplugin.cpp index 8aedcdb8..dd34d2f8 100644 --- a/src/imports/nativestyle/qtquickcontrols2nativestyleplugin.cpp +++ b/src/imports/nativestyle/qtquickcontrols2nativestyleplugin.cpp @@ -36,6 +36,9 @@ #include <QtQml/qqml.h> #include <QtQuickControls2/private/qquickstyleplugin_p.h> +#include <QtGui/qguiapplication.h> + +#include <QtQuickTemplates2/private/qquicktheme_p.h> #include "qquicknativestyle.h" #include "qquickcommonstyle.h" @@ -63,8 +66,28 @@ public: QString name() const override; }; +static void deleteQStyle() +{ + // When we delete QStyle, it will free up it's own internal resources. Especially + // on macOS, this means releasing a lot of NSViews and NSCells from the QMacStyle + // destructor. If we did this from ~QtQuickControls2NativeStylePlugin, it would + // happen when the plugin was unloaded from a Q_DESTRUCTOR_FUNCTION in QLibrary, + // which is very late in the tear-down process, and after qGuiApp has been set to + // nullptr, NSApplication has stopped running, and perhaps also other static platform + // variables (e.g in AppKit?) has been deleted. And to our best guess, this is also why + // we see a crash in AppKit from the destructor in QMacStyle. So for this reason, we + // delete QStyle from a post routine rather than from the destructor. + QQuickNativeStyle::setStyle(nullptr); +} + QtQuickControls2NativeStylePlugin::~QtQuickControls2NativeStylePlugin() { + if (!qGuiApp) + return; + + // QGuiApplication is still running, so we need to remove the post + // routine to not be called after we have been unloaded. + qRemovePostRoutine(deleteQStyle); QQuickNativeStyle::setStyle(nullptr); } @@ -106,12 +129,16 @@ void QtQuickControls2NativeStylePlugin::initializeEngine(QQmlEngine *engine, con #endif } } + + qAddPostRoutine(deleteQStyle); QQuickNativeStyle::setStyle(style); } void QtQuickControls2NativeStylePlugin::registerTypes(const char *uri) { Q_UNUSED(uri); + QQuickTheme::instance()->setPalette(QQuickTheme::System, QPalette()); + QQuickTheme::instance()->setFont(QQuickTheme::System, QFont()); } QT_END_NAMESPACE diff --git a/src/imports/platform/CMakeLists.txt b/src/imports/platform/CMakeLists.txt index b7ea06d3..0db2f60d 100644 --- a/src/imports/platform/CMakeLists.txt +++ b/src/imports/platform/CMakeLists.txt @@ -6,7 +6,7 @@ qt_add_qml_module(qtlabsplatformplugin URI "Qt.labs.platform" - VERSION "1.0" + VERSION "1.1" CLASSNAME QtLabsPlatformPlugin SKIP_TYPE_REGISTRATION SOURCES @@ -42,7 +42,7 @@ qt_add_qml_module(qtlabsplatformplugin ) #### Keys ignored in scope 1:.:.:platform.pro:<TRUE>: -# IMPORT_VERSION = "1.0" +# IMPORT_VERSION = "1.1" # OTHER_FILES = "qmldir" # TARGETPATH = "Qt/labs/platform" diff --git a/src/imports/platform/plugins.qmltypes b/src/imports/platform/plugins.qmltypes deleted file mode 100644 index e9312047..00000000 --- a/src/imports/platform/plugins.qmltypes +++ /dev/null @@ -1,492 +0,0 @@ -import QtQuick.tooling 1.2 - -// This file describes the plugin-supplied types contained in the library. -// It is used for QML tooling purposes only. -// -// This file was auto-generated by: -// 'qmlplugindump -nonrelocatable Qt.labs.platform 1.1' - -Module { - dependencies: ["QtQuick 2.0"] - Component { - name: "QPlatformDialogHelper" - prototype: "QObject" - exports: ["Qt.labs.platform/StandardButton 1.0"] - isCreatable: false - exportMetaObjectRevisions: [0] - Enum { - name: "StandardButtons" - values: { - "NoButton": 0, - "Ok": 1024, - "Save": 2048, - "SaveAll": 4096, - "Open": 8192, - "Yes": 16384, - "YesToAll": 32768, - "No": 65536, - "NoToAll": 131072, - "Abort": 262144, - "Retry": 524288, - "Ignore": 1048576, - "Close": 2097152, - "Cancel": 4194304, - "Discard": 8388608, - "Help": 16777216, - "Apply": 33554432, - "Reset": 67108864, - "RestoreDefaults": 134217728, - "FirstButton": 1024, - "LastButton": 134217728, - "LowestBit": 10, - "HighestBit": 27 - } - } - Enum { - name: "ButtonRole" - values: { - "InvalidRole": -1, - "AcceptRole": 0, - "RejectRole": 1, - "DestructiveRole": 2, - "ActionRole": 3, - "HelpRole": 4, - "YesRole": 5, - "NoRole": 6, - "ResetRole": 7, - "ApplyRole": 8, - "NRoles": 9, - "RoleMask": 268435455, - "AlternateRole": 268435456, - "Stretch": 536870912, - "Reverse": 1073741824, - "EOL": -1 - } - } - Enum { - name: "ButtonLayout" - values: { - "UnknownLayout": -1, - "WinLayout": 0, - "MacLayout": 1, - "KdeLayout": 2, - "GnomeLayout": 3, - "MacModelessLayout": 4, - "AndroidLayout": 5 - } - } - Signal { name: "accept" } - Signal { name: "reject" } - } - Component { - name: "QQuickPlatformColorDialog" - defaultProperty: "data" - prototype: "QQuickPlatformDialog" - exports: ["Qt.labs.platform/ColorDialog 1.0"] - exportMetaObjectRevisions: [0] - Property { name: "color"; type: "QColor" } - Property { name: "currentColor"; type: "QColor" } - Property { name: "options"; type: "QColorDialogOptions::ColorDialogOptions" } - } - Component { - name: "QQuickPlatformDialog" - defaultProperty: "data" - prototype: "QObject" - exports: ["Qt.labs.platform/Dialog 1.0"] - isCreatable: false - exportMetaObjectRevisions: [0] - Enum { - name: "StandardCode" - values: { - "Rejected": 0, - "Accepted": 1 - } - } - Property { name: "data"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "parentWindow"; type: "QWindow"; isPointer: true } - Property { name: "title"; type: "string" } - Property { name: "flags"; type: "Qt::WindowFlags" } - Property { name: "modality"; type: "Qt::WindowModality" } - Property { name: "visible"; type: "bool" } - Property { name: "result"; type: "int" } - Signal { name: "accepted" } - Signal { name: "rejected" } - Method { name: "open" } - Method { name: "close" } - Method { name: "accept" } - Method { name: "reject" } - Method { - name: "done" - Parameter { name: "result"; type: "int" } - } - } - Component { - name: "QQuickPlatformFileDialog" - defaultProperty: "data" - prototype: "QQuickPlatformDialog" - exports: ["Qt.labs.platform/FileDialog 1.0"] - exportMetaObjectRevisions: [0] - Enum { - name: "FileMode" - values: { - "OpenFile": 0, - "OpenFiles": 1, - "SaveFile": 2 - } - } - Property { name: "fileMode"; type: "FileMode" } - Property { name: "file"; type: "QUrl" } - Property { name: "files"; type: "QList<QUrl>" } - Property { name: "currentFile"; type: "QUrl" } - Property { name: "currentFiles"; type: "QList<QUrl>" } - Property { name: "folder"; type: "QUrl" } - Property { name: "options"; type: "QFileDialogOptions::FileDialogOptions" } - Property { name: "nameFilters"; type: "QStringList" } - Property { - name: "selectedNameFilter" - type: "QQuickPlatformFileNameFilter" - isReadonly: true - isPointer: true - } - Property { name: "defaultSuffix"; type: "string" } - Property { name: "acceptLabel"; type: "string" } - Property { name: "rejectLabel"; type: "string" } - } - Component { - name: "QQuickPlatformFileNameFilter" - prototype: "QObject" - Property { name: "index"; type: "int" } - Property { name: "name"; type: "string"; isReadonly: true } - Property { name: "extensions"; type: "QStringList"; isReadonly: true } - Signal { - name: "indexChanged" - Parameter { name: "index"; type: "int" } - } - Signal { - name: "nameChanged" - Parameter { name: "name"; type: "string" } - } - Signal { - name: "extensionsChanged" - Parameter { name: "extensions"; type: "QStringList" } - } - } - Component { - name: "QQuickPlatformFolderDialog" - defaultProperty: "data" - prototype: "QQuickPlatformDialog" - exports: ["Qt.labs.platform/FolderDialog 1.0"] - exportMetaObjectRevisions: [0] - Property { name: "folder"; type: "QUrl" } - Property { name: "currentFolder"; type: "QUrl" } - Property { name: "options"; type: "QFileDialogOptions::FileDialogOptions" } - Property { name: "acceptLabel"; type: "string" } - Property { name: "rejectLabel"; type: "string" } - } - Component { - name: "QQuickPlatformFontDialog" - defaultProperty: "data" - prototype: "QQuickPlatformDialog" - exports: ["Qt.labs.platform/FontDialog 1.0"] - exportMetaObjectRevisions: [0] - Property { name: "font"; type: "QFont" } - Property { name: "currentFont"; type: "QFont" } - Property { name: "options"; type: "QFontDialogOptions::FontDialogOptions" } - } - Component { - name: "QQuickPlatformIcon" - Property { name: "source"; type: "QUrl" } - Property { name: "name"; type: "string" } - Property { name: "mask"; type: "bool" } - } - Component { - name: "QQuickPlatformMenu" - defaultProperty: "data" - prototype: "QObject" - exports: ["Qt.labs.platform/Menu 1.0"] - exportMetaObjectRevisions: [0] - Property { name: "data"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "items"; type: "QQuickPlatformMenuItem"; isList: true; isReadonly: true } - Property { name: "menuBar"; type: "QQuickPlatformMenuBar"; isReadonly: true; isPointer: true } - Property { name: "parentMenu"; type: "QQuickPlatformMenu"; isReadonly: true; isPointer: true } - Property { - name: "systemTrayIcon" - type: "QQuickPlatformSystemTrayIcon" - isReadonly: true - isPointer: true - } - Property { name: "menuItem"; type: "QQuickPlatformMenuItem"; isReadonly: true; isPointer: true } - Property { name: "enabled"; type: "bool" } - Property { name: "visible"; type: "bool" } - Property { name: "minimumWidth"; type: "int" } - Property { name: "type"; type: "QPlatformMenu::MenuType" } - Property { name: "title"; type: "string" } - Property { name: "iconSource"; type: "QUrl" } - Property { name: "iconName"; type: "string" } - Property { name: "font"; type: "QFont" } - Property { name: "icon"; revision: 1; type: "QQuickPlatformIcon" } - Signal { name: "aboutToShow" } - Signal { name: "aboutToHide" } - Signal { name: "iconChanged"; revision: 1 } - Method { - name: "open" - Parameter { name: "args"; type: "QQmlV4Function"; isPointer: true } - } - Method { name: "close" } - Method { - name: "addItem" - Parameter { name: "item"; type: "QQuickPlatformMenuItem"; isPointer: true } - } - Method { - name: "insertItem" - Parameter { name: "index"; type: "int" } - Parameter { name: "item"; type: "QQuickPlatformMenuItem"; isPointer: true } - } - Method { - name: "removeItem" - Parameter { name: "item"; type: "QQuickPlatformMenuItem"; isPointer: true } - } - Method { - name: "addMenu" - Parameter { name: "menu"; type: "QQuickPlatformMenu"; isPointer: true } - } - Method { - name: "insertMenu" - Parameter { name: "index"; type: "int" } - Parameter { name: "menu"; type: "QQuickPlatformMenu"; isPointer: true } - } - Method { - name: "removeMenu" - Parameter { name: "menu"; type: "QQuickPlatformMenu"; isPointer: true } - } - Method { name: "clear" } - } - Component { - name: "QQuickPlatformMenuBar" - defaultProperty: "data" - prototype: "QObject" - exports: ["Qt.labs.platform/MenuBar 1.0"] - exportMetaObjectRevisions: [0] - Property { name: "data"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "menus"; type: "QQuickPlatformMenu"; isList: true; isReadonly: true } - Property { name: "window"; type: "QWindow"; isPointer: true } - Method { - name: "addMenu" - Parameter { name: "menu"; type: "QQuickPlatformMenu"; isPointer: true } - } - Method { - name: "insertMenu" - Parameter { name: "index"; type: "int" } - Parameter { name: "menu"; type: "QQuickPlatformMenu"; isPointer: true } - } - Method { - name: "removeMenu" - Parameter { name: "menu"; type: "QQuickPlatformMenu"; isPointer: true } - } - Method { name: "clear" } - } - Component { - name: "QQuickPlatformMenuItem" - prototype: "QObject" - exports: [ - "Qt.labs.platform/MenuItem 1.0", - "Qt.labs.platform/MenuItem 1.1" - ] - exportMetaObjectRevisions: [0, 1] - Property { name: "menu"; type: "QQuickPlatformMenu"; isReadonly: true; isPointer: true } - Property { name: "subMenu"; type: "QQuickPlatformMenu"; isReadonly: true; isPointer: true } - Property { name: "group"; type: "QQuickPlatformMenuItemGroup"; isPointer: true } - Property { name: "enabled"; type: "bool" } - Property { name: "visible"; type: "bool" } - Property { name: "separator"; type: "bool" } - Property { name: "checkable"; type: "bool" } - Property { name: "checked"; type: "bool" } - Property { name: "role"; type: "QPlatformMenuItem::MenuRole" } - Property { name: "text"; type: "string" } - Property { name: "iconSource"; type: "QUrl" } - Property { name: "iconName"; type: "string" } - Property { name: "shortcut"; type: "QVariant" } - Property { name: "font"; type: "QFont" } - Property { name: "icon"; revision: 1; type: "QQuickPlatformIcon" } - Signal { name: "triggered" } - Signal { name: "hovered" } - Signal { name: "iconChanged"; revision: 1 } - Method { name: "toggle" } - } - Component { - name: "QQuickPlatformMenuItemGroup" - prototype: "QObject" - exports: ["Qt.labs.platform/MenuItemGroup 1.0"] - exportMetaObjectRevisions: [0] - Property { name: "enabled"; type: "bool" } - Property { name: "visible"; type: "bool" } - Property { name: "exclusive"; type: "bool" } - Property { name: "checkedItem"; type: "QQuickPlatformMenuItem"; isPointer: true } - Property { name: "items"; type: "QQuickPlatformMenuItem"; isList: true; isReadonly: true } - Signal { - name: "triggered" - Parameter { name: "item"; type: "QQuickPlatformMenuItem"; isPointer: true } - } - Signal { - name: "hovered" - Parameter { name: "item"; type: "QQuickPlatformMenuItem"; isPointer: true } - } - Method { - name: "addItem" - Parameter { name: "item"; type: "QQuickPlatformMenuItem"; isPointer: true } - } - Method { - name: "removeItem" - Parameter { name: "item"; type: "QQuickPlatformMenuItem"; isPointer: true } - } - Method { name: "clear" } - } - Component { - name: "QQuickPlatformMenuSeparator" - prototype: "QQuickPlatformMenuItem" - exports: ["Qt.labs.platform/MenuSeparator 1.0"] - exportMetaObjectRevisions: [0] - } - Component { - name: "QQuickPlatformMessageDialog" - defaultProperty: "data" - prototype: "QQuickPlatformDialog" - exports: ["Qt.labs.platform/MessageDialog 1.0"] - exportMetaObjectRevisions: [0] - Property { name: "text"; type: "string" } - Property { name: "informativeText"; type: "string" } - Property { name: "detailedText"; type: "string" } - Property { name: "buttons"; type: "QPlatformDialogHelper::StandardButtons" } - Signal { - name: "clicked" - Parameter { name: "button"; type: "QPlatformDialogHelper::StandardButton" } - } - Signal { name: "okClicked" } - Signal { name: "saveClicked" } - Signal { name: "saveAllClicked" } - Signal { name: "openClicked" } - Signal { name: "yesClicked" } - Signal { name: "yesToAllClicked" } - Signal { name: "noClicked" } - Signal { name: "noToAllClicked" } - Signal { name: "abortClicked" } - Signal { name: "retryClicked" } - Signal { name: "ignoreClicked" } - Signal { name: "closeClicked" } - Signal { name: "cancelClicked" } - Signal { name: "discardClicked" } - Signal { name: "helpClicked" } - Signal { name: "applyClicked" } - Signal { name: "resetClicked" } - Signal { name: "restoreDefaultsClicked" } - } - Component { - name: "QQuickPlatformStandardPaths" - prototype: "QObject" - exports: ["Qt.labs.platform/StandardPaths 1.0"] - isCreatable: false - isSingleton: true - exportMetaObjectRevisions: [0] - Method { - name: "displayName" - type: "string" - Parameter { name: "type"; type: "QStandardPaths::StandardLocation" } - } - Method { - name: "findExecutable" - type: "QUrl" - Parameter { name: "executableName"; type: "string" } - Parameter { name: "paths"; type: "QStringList" } - } - Method { - name: "findExecutable" - type: "QUrl" - Parameter { name: "executableName"; type: "string" } - } - Method { - name: "locate" - type: "QUrl" - Parameter { name: "type"; type: "QStandardPaths::StandardLocation" } - Parameter { name: "fileName"; type: "string" } - Parameter { name: "options"; type: "QStandardPaths::LocateOptions" } - } - Method { - name: "locate" - type: "QUrl" - Parameter { name: "type"; type: "QStandardPaths::StandardLocation" } - Parameter { name: "fileName"; type: "string" } - } - Method { - name: "locateAll" - type: "QList<QUrl>" - Parameter { name: "type"; type: "QStandardPaths::StandardLocation" } - Parameter { name: "fileName"; type: "string" } - Parameter { name: "options"; type: "QStandardPaths::LocateOptions" } - } - Method { - name: "locateAll" - type: "QList<QUrl>" - Parameter { name: "type"; type: "QStandardPaths::StandardLocation" } - Parameter { name: "fileName"; type: "string" } - } - Method { - name: "setTestModeEnabled" - Parameter { name: "testMode"; type: "bool" } - } - Method { - name: "standardLocations" - type: "QList<QUrl>" - Parameter { name: "type"; type: "QStandardPaths::StandardLocation" } - } - Method { - name: "writableLocation" - type: "QUrl" - Parameter { name: "type"; type: "QStandardPaths::StandardLocation" } - } - } - Component { - name: "QQuickPlatformSystemTrayIcon" - prototype: "QObject" - exports: [ - "Qt.labs.platform/SystemTrayIcon 1.0", - "Qt.labs.platform/SystemTrayIcon 1.1" - ] - exportMetaObjectRevisions: [0, 1] - Property { name: "available"; type: "bool"; isReadonly: true } - Property { name: "supportsMessages"; type: "bool"; isReadonly: true } - Property { name: "visible"; type: "bool" } - Property { name: "iconSource"; type: "QUrl" } - Property { name: "iconName"; type: "string" } - Property { name: "tooltip"; type: "string" } - Property { name: "menu"; type: "QQuickPlatformMenu"; isPointer: true } - Property { name: "geometry"; revision: 1; type: "QRect"; isReadonly: true } - Property { name: "icon"; revision: 1; type: "QQuickPlatformIcon" } - Signal { - name: "activated" - Parameter { name: "reason"; type: "QPlatformSystemTrayIcon::ActivationReason" } - } - Signal { name: "messageClicked" } - Signal { name: "geometryChanged"; revision: 1 } - Signal { name: "iconChanged"; revision: 1 } - Method { name: "show" } - Method { name: "hide" } - Method { - name: "showMessage" - Parameter { name: "title"; type: "string" } - Parameter { name: "message"; type: "string" } - Parameter { name: "iconType"; type: "QPlatformSystemTrayIcon::MessageIcon" } - Parameter { name: "msecs"; type: "int" } - } - Method { - name: "showMessage" - Parameter { name: "title"; type: "string" } - Parameter { name: "message"; type: "string" } - Parameter { name: "iconType"; type: "QPlatformSystemTrayIcon::MessageIcon" } - } - Method { - name: "showMessage" - Parameter { name: "title"; type: "string" } - Parameter { name: "message"; type: "string" } - } - } -} diff --git a/src/imports/platform/qquickplatformfiledialog.cpp b/src/imports/platform/qquickplatformfiledialog.cpp index 2ef08ef6..3b9ceab2 100644 --- a/src/imports/platform/qquickplatformfiledialog.cpp +++ b/src/imports/platform/qquickplatformfiledialog.cpp @@ -36,7 +36,7 @@ #include "qquickplatformfiledialog_p.h" -#include <QtCore/qvector.h> +#include <QtCore/qlist.h> QT_BEGIN_NAMESPACE @@ -86,7 +86,6 @@ QT_BEGIN_NAMESPACE \li Linux (when running with the GTK+ platform theme) \li macOS \li Windows - \li WinRT \endlist \input includes/widgets.qdocinc 1 @@ -611,21 +610,21 @@ static QString extractName(const QString &filter) return filter.left(filter.indexOf(QLatin1Char('(')) - 1); } -static QString extractExtension(const QString &filter) +static QString extractExtension(QStringView filter) { - return filter.mid(filter.indexOf(QLatin1Char('.')) + 1); + return filter.mid(filter.indexOf(QLatin1Char('.')) + 1).toString(); } -static QStringList extractExtensions(const QString &filter) +static QStringList extractExtensions(QStringView filter) { QStringList extensions; const int from = filter.indexOf(QLatin1Char('(')); const int to = filter.lastIndexOf(QLatin1Char(')')) - 1; if (from >= 0 && from < to) { - const QStringRef ref = filter.midRef(from + 1, to - from); - const QVector<QStringRef> exts = ref.split(QLatin1Char(' '), Qt::SkipEmptyParts); - for (const QStringRef &ref : exts) - extensions += extractExtension(ref.toString()); + const QStringView ref = filter.mid(from + 1, to - from); + const QList<QStringView> exts = ref.split(QLatin1Char(' '), Qt::SkipEmptyParts); + for (const QStringView &ref : exts) + extensions += extractExtension(ref); } return extensions; diff --git a/src/imports/platform/qquickplatformfolderdialog.cpp b/src/imports/platform/qquickplatformfolderdialog.cpp index 4ae6341e..a28dc828 100644 --- a/src/imports/platform/qquickplatformfolderdialog.cpp +++ b/src/imports/platform/qquickplatformfolderdialog.cpp @@ -83,7 +83,6 @@ QT_BEGIN_NAMESPACE \li Linux (when running with the GTK+ platform theme) \li macOS \li Windows - \li WinRT \endlist \input includes/widgets.qdocinc 1 diff --git a/src/imports/platform/qquickplatformmenu.cpp b/src/imports/platform/qquickplatformmenu.cpp index 8954d439..7219ef54 100644 --- a/src/imports/platform/qquickplatformmenu.cpp +++ b/src/imports/platform/qquickplatformmenu.cpp @@ -419,8 +419,7 @@ QQuickPlatformMenuItem *QQuickPlatformMenu::menuItem() const m_menuItem = new QQuickPlatformMenuItem(that); m_menuItem->setSubMenu(that); m_menuItem->setText(m_title); - m_menuItem->setIconName(iconName()); - m_menuItem->setIconSource(iconSource()); + m_menuItem->setIcon(icon()); m_menuItem->setVisible(m_visible); m_menuItem->setEnabled(m_enabled); m_menuItem->componentComplete(); @@ -542,51 +541,6 @@ void QQuickPlatformMenu::setTitle(const QString &title) } /*! - \qmlproperty url Qt.labs.platform::Menu::iconSource - \deprecated Use icon.source instead -*/ -QUrl QQuickPlatformMenu::iconSource() const -{ - return icon().source(); -} - -void QQuickPlatformMenu::setIconSource(const QUrl& source) -{ - QQuickPlatformIcon newIcon = icon(); - if (source == newIcon.source()) - return; - - if (m_menuItem) - m_menuItem->setIconSource(source); - - newIcon.setSource(source); - iconLoader()->setIcon(newIcon); - emit iconSourceChanged(); -} - -/*! - \qmlproperty string Qt.labs.platform::Menu::iconName - \deprecated Use icon.name instead -*/ -QString QQuickPlatformMenu::iconName() const -{ - return icon().name(); -} - -void QQuickPlatformMenu::setIconName(const QString& name) -{ - QQuickPlatformIcon newIcon = icon(); - if (name == newIcon.name()) - return; - - if (m_menuItem) - m_menuItem->setIconName(name); - - newIcon.setName(name); - iconLoader()->setIcon(newIcon); - emit iconNameChanged();} - -/*! \qmlproperty font Qt.labs.platform::Menu::font This property holds the menu's font. diff --git a/src/imports/platform/qquickplatformmenu_p.h b/src/imports/platform/qquickplatformmenu_p.h index eb18f66b..b573b0d4 100644 --- a/src/imports/platform/qquickplatformmenu_p.h +++ b/src/imports/platform/qquickplatformmenu_p.h @@ -85,10 +85,8 @@ class QQuickPlatformMenu : public QObject, public QQmlParserStatus Q_PROPERTY(int minimumWidth READ minimumWidth WRITE setMinimumWidth NOTIFY minimumWidthChanged FINAL) Q_PROPERTY(QPlatformMenu::MenuType type READ type WRITE setType NOTIFY typeChanged FINAL) Q_PROPERTY(QString title READ title WRITE setTitle NOTIFY titleChanged FINAL) - Q_PROPERTY(QUrl iconSource READ iconSource WRITE setIconSource NOTIFY iconSourceChanged FINAL) - Q_PROPERTY(QString iconName READ iconName WRITE setIconName NOTIFY iconNameChanged FINAL) Q_PROPERTY(QFont font READ font WRITE setFont NOTIFY fontChanged FINAL) - Q_PROPERTY(QQuickPlatformIcon icon READ icon WRITE setIcon NOTIFY iconChanged FINAL REVISION 1) + Q_PROPERTY(QQuickPlatformIcon icon READ icon WRITE setIcon NOTIFY iconChanged FINAL REVISION(1, 1)) Q_ENUMS(QPlatformMenu::MenuType) Q_CLASSINFO("DefaultProperty", "data") @@ -130,12 +128,6 @@ public: QString title() const; void setTitle(const QString &title); - QUrl iconSource() const; - void setIconSource(const QUrl &source); - - QString iconName() const; - void setIconName(const QString &name); - QFont font() const; void setFont(const QFont &font); @@ -165,14 +157,12 @@ Q_SIGNALS: void parentMenuChanged(); void systemTrayIconChanged(); void titleChanged(); - void iconSourceChanged(); - void iconNameChanged(); void enabledChanged(); void visibleChanged(); void minimumWidthChanged(); void fontChanged(); void typeChanged(); - Q_REVISION(1) void iconChanged(); + Q_REVISION(2, 1) void iconChanged(); protected: void classBegin() override; diff --git a/src/imports/platform/qquickplatformmenuitem.cpp b/src/imports/platform/qquickplatformmenuitem.cpp index b63f7202..11cf98b4 100644 --- a/src/imports/platform/qquickplatformmenuitem.cpp +++ b/src/imports/platform/qquickplatformmenuitem.cpp @@ -61,7 +61,7 @@ QT_BEGIN_NAMESPACE \image qtlabsplatform-menu.png - A menu item consists of an \l {iconSource}{icon}, \l text, and \l shortcut. + A menu item consists of an \l icon, \l text, and \l shortcut. \code Menu { @@ -458,46 +458,6 @@ void QQuickPlatformMenuItem::setText(const QString &text) } /*! - \qmlproperty url Qt.labs.platform::MenuItem::iconSource - \deprecated Use icon.source instead -*/ -QUrl QQuickPlatformMenuItem::iconSource() const -{ - return icon().source(); -} - -void QQuickPlatformMenuItem::setIconSource(const QUrl& source) -{ - QQuickPlatformIcon newIcon = icon(); - if (source == newIcon.source()) - return; - - newIcon.setSource(source); - iconLoader()->setIcon(newIcon); - emit iconSourceChanged(); -} - -/*! - \qmlproperty string Qt.labs.platform::MenuItem::iconName - \deprecated Use icon.name instead -*/ -QString QQuickPlatformMenuItem::iconName() const -{ - return icon().name(); -} - -void QQuickPlatformMenuItem::setIconName(const QString& name) -{ - QQuickPlatformIcon newIcon = icon(); - if (name == newIcon.name()) - return; - - newIcon.setName(name); - iconLoader()->setIcon(newIcon); - emit iconNameChanged(); -} - -/*! \qmlproperty keysequence Qt.labs.platform::MenuItem::shortcut This property holds the menu item's shortcut. diff --git a/src/imports/platform/qquickplatformmenuitem_p.h b/src/imports/platform/qquickplatformmenuitem_p.h index e3d5258a..01b7482d 100644 --- a/src/imports/platform/qquickplatformmenuitem_p.h +++ b/src/imports/platform/qquickplatformmenuitem_p.h @@ -78,11 +78,9 @@ class QQuickPlatformMenuItem : public QObject, public QQmlParserStatus Q_PROPERTY(bool checked READ isChecked WRITE setChecked NOTIFY checkedChanged FINAL) Q_PROPERTY(QPlatformMenuItem::MenuRole role READ role WRITE setRole NOTIFY roleChanged FINAL) Q_PROPERTY(QString text READ text WRITE setText NOTIFY textChanged FINAL) - Q_PROPERTY(QUrl iconSource READ iconSource WRITE setIconSource NOTIFY iconSourceChanged FINAL) - Q_PROPERTY(QString iconName READ iconName WRITE setIconName NOTIFY iconNameChanged FINAL) Q_PROPERTY(QVariant shortcut READ shortcut WRITE setShortcut NOTIFY shortcutChanged FINAL) Q_PROPERTY(QFont font READ font WRITE setFont NOTIFY fontChanged FINAL) - Q_PROPERTY(QQuickPlatformIcon icon READ icon WRITE setIcon NOTIFY iconChanged FINAL REVISION 1) + Q_PROPERTY(QQuickPlatformIcon icon READ icon WRITE setIcon NOTIFY iconChanged FINAL REVISION(1, 1)) Q_ENUMS(QPlatformMenuItem::MenuRole) public: @@ -123,12 +121,6 @@ public: QString text() const; void setText(const QString &text); - QUrl iconSource() const; - void setIconSource(const QUrl &source); - - QString iconName() const; - void setIconName(const QString &name); - QVariant shortcut() const; void setShortcut(const QVariant& shortcut); @@ -155,11 +147,9 @@ Q_SIGNALS: void checkedChanged(); void roleChanged(); void textChanged(); - void iconSourceChanged(); - void iconNameChanged(); void shortcutChanged(); void fontChanged(); - Q_REVISION(1) void iconChanged(); + Q_REVISION(2, 1) void iconChanged(); protected: void classBegin() override; diff --git a/src/imports/platform/qquickplatformmenuitemgroup_p.h b/src/imports/platform/qquickplatformmenuitemgroup_p.h index 8b3531d9..57499347 100644 --- a/src/imports/platform/qquickplatformmenuitemgroup_p.h +++ b/src/imports/platform/qquickplatformmenuitemgroup_p.h @@ -49,7 +49,7 @@ // #include <QtCore/qobject.h> -#include <QtCore/qvector.h> +#include <QtCore/qlist.h> #include <QtQml/qqml.h> QT_BEGIN_NAMESPACE @@ -113,7 +113,7 @@ private: bool m_visible; bool m_exclusive; QQuickPlatformMenuItem *m_checkedItem; - QVector<QQuickPlatformMenuItem*> m_items; + QList<QQuickPlatformMenuItem*> m_items; }; QT_END_NAMESPACE diff --git a/src/imports/platform/qquickplatformmessagedialog.cpp b/src/imports/platform/qquickplatformmessagedialog.cpp index 075b4d62..f2e0970c 100644 --- a/src/imports/platform/qquickplatformmessagedialog.cpp +++ b/src/imports/platform/qquickplatformmessagedialog.cpp @@ -99,7 +99,6 @@ QT_BEGIN_NAMESPACE \list \li iOS \li Android - \li WinRT \endlist \input includes/widgets.qdocinc 1 diff --git a/src/imports/platform/qquickplatformsystemtrayicon.cpp b/src/imports/platform/qquickplatformsystemtrayicon.cpp index 4a96b38f..1631e449 100644 --- a/src/imports/platform/qquickplatformsystemtrayicon.cpp +++ b/src/imports/platform/qquickplatformsystemtrayicon.cpp @@ -253,48 +253,6 @@ void QQuickPlatformSystemTrayIcon::setVisible(bool visible) } /*! - \qmlproperty url Qt.labs.platform::SystemTrayIcon::iconSource - \deprecated Use icon.source instead. - \sa icon -*/ -QUrl QQuickPlatformSystemTrayIcon::iconSource() const -{ - return icon().source(); -} - -void QQuickPlatformSystemTrayIcon::setIconSource(const QUrl& source) -{ - QQuickPlatformIcon newIcon = icon(); - if (source == newIcon.source()) - return; - - newIcon.setSource(source); - iconLoader()->setIcon(newIcon); - emit iconSourceChanged(); -} - -/*! - \qmlproperty string Qt.labs.platform::SystemTrayIcon::iconName - \deprecated Use icon.name instead. - \sa icon -*/ -QString QQuickPlatformSystemTrayIcon::iconName() const -{ - return icon().name(); -} - -void QQuickPlatformSystemTrayIcon::setIconName(const QString& name) -{ - QQuickPlatformIcon newIcon = icon(); - if (name == newIcon.name()) - return; - - newIcon.setName(name); - iconLoader()->setIcon(newIcon); - emit iconNameChanged(); -} - -/*! \qmlproperty string Qt.labs.platform::SystemTrayIcon::tooltip This property holds the tooltip of the system tray icon. diff --git a/src/imports/platform/qquickplatformsystemtrayicon_p.h b/src/imports/platform/qquickplatformsystemtrayicon_p.h index e43366cb..d7cc46c0 100644 --- a/src/imports/platform/qquickplatformsystemtrayicon_p.h +++ b/src/imports/platform/qquickplatformsystemtrayicon_p.h @@ -70,12 +70,10 @@ class QQuickPlatformSystemTrayIcon : public QObject, public QQmlParserStatus Q_PROPERTY(bool available READ isAvailable CONSTANT FINAL) Q_PROPERTY(bool supportsMessages READ supportsMessages CONSTANT FINAL) Q_PROPERTY(bool visible READ isVisible WRITE setVisible NOTIFY visibleChanged FINAL) - Q_PROPERTY(QUrl iconSource READ iconSource WRITE setIconSource NOTIFY iconSourceChanged FINAL) - Q_PROPERTY(QString iconName READ iconName WRITE setIconName NOTIFY iconNameChanged FINAL) Q_PROPERTY(QString tooltip READ tooltip WRITE setTooltip NOTIFY tooltipChanged FINAL) Q_PROPERTY(QQuickPlatformMenu *menu READ menu WRITE setMenu NOTIFY menuChanged FINAL) - Q_PROPERTY(QRect geometry READ geometry NOTIFY geometryChanged FINAL REVISION 1) - Q_PROPERTY(QQuickPlatformIcon icon READ icon WRITE setIcon NOTIFY iconChanged FINAL REVISION 1) + Q_PROPERTY(QRect geometry READ geometry NOTIFY geometryChanged FINAL REVISION(1, 1)) + Q_PROPERTY(QQuickPlatformIcon icon READ icon WRITE setIcon NOTIFY iconChanged FINAL REVISION(1, 1)) Q_ENUMS(QPlatformSystemTrayIcon::ActivationReason QPlatformSystemTrayIcon::MessageIcon) public: @@ -90,12 +88,6 @@ public: bool isVisible() const; void setVisible(bool visible); - QUrl iconSource() const; - void setIconSource(const QUrl &source); - - QString iconName() const; - void setIconName(const QString &name); - QString tooltip() const; void setTooltip(const QString &tooltip); @@ -118,12 +110,10 @@ Q_SIGNALS: void activated(QPlatformSystemTrayIcon::ActivationReason reason); void messageClicked(); void visibleChanged(); - void iconSourceChanged(); - void iconNameChanged(); void tooltipChanged(); void menuChanged(); - Q_REVISION(1) void geometryChanged(); - Q_REVISION(1) void iconChanged(); + Q_REVISION(2, 1) void geometryChanged(); + Q_REVISION(2, 1) void iconChanged(); protected: void init(); diff --git a/src/imports/platform/widgets/qwidgetplatform_p.h b/src/imports/platform/widgets/qwidgetplatform_p.h index c203406c..cbdaa24a 100644 --- a/src/imports/platform/widgets/qwidgetplatform_p.h +++ b/src/imports/platform/widgets/qwidgetplatform_p.h @@ -111,8 +111,8 @@ namespace QWidgetPlatform if (available) return new T(parent); #else - Q_UNUSED(parent) - Q_UNUSED(available) + Q_UNUSED(parent); + Q_UNUSED(available); #endif return nullptr; } diff --git a/src/imports/platform/widgets/qwidgetplatformmenu_p.h b/src/imports/platform/widgets/qwidgetplatformmenu_p.h index 4d58f528..9d1ef57e 100644 --- a/src/imports/platform/widgets/qwidgetplatformmenu_p.h +++ b/src/imports/platform/widgets/qwidgetplatformmenu_p.h @@ -90,7 +90,7 @@ public: private: QScopedPointer<QMenu> m_menu; - QVector<QWidgetPlatformMenuItem *> m_items; + QList<QWidgetPlatformMenuItem *> m_items; }; QT_END_NAMESPACE diff --git a/src/imports/templates/.prev_CMakeLists.txt b/src/imports/templates/.prev_CMakeLists.txt new file mode 100644 index 00000000..178906d7 --- /dev/null +++ b/src/imports/templates/.prev_CMakeLists.txt @@ -0,0 +1,35 @@ +# Generated from templates.pro. + +##################################################################### +## qtquicktemplates2plugin Plugin: +##################################################################### + +qt_add_qml_module(qtquicktemplates2plugin + URI "QtQuick.Templates" + VERSION "${CMAKE_PROJECT_VERSION}" + CLASSNAME QtQuickTemplates2Plugin + DEPENDENCIES + QtQuick.Window/2.2 + SKIP_TYPE_REGISTRATION + SOURCES + qtquicktemplates2plugin.cpp + DEFINES + QT_NO_CAST_FROM_ASCII + QT_NO_CAST_TO_ASCII + LIBRARIES + Qt::CorePrivate + Qt::GuiPrivate + Qt::QmlPrivate + Qt::QuickPrivate + Qt::QuickTemplates2Private + PUBLIC_LIBRARIES + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick +) + +#### Keys ignored in scope 1:.:.:templates.pro:<TRUE>: +# OTHER_FILES = "qmldir" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# TARGETPATH = "QtQuick/Templates" diff --git a/src/imports/templates/CMakeLists.txt b/src/imports/templates/CMakeLists.txt index 4e6a80c4..f37f69a8 100644 --- a/src/imports/templates/CMakeLists.txt +++ b/src/imports/templates/CMakeLists.txt @@ -5,9 +5,8 @@ ##################################################################### qt_add_qml_module(qtquicktemplates2plugin - TARGET_PATH "QtQuick/Templates.2" URI "QtQuick.Templates" - VERSION "2.${CMAKE_PROJECT_VERSION_MINOR}" + VERSION "6.0" # special case CLASSNAME QtQuickTemplates2Plugin DEPENDENCIES QtQuick.Window/2.2 @@ -31,6 +30,6 @@ qt_add_qml_module(qtquicktemplates2plugin ) #### Keys ignored in scope 1:.:.:templates.pro:<TRUE>: -# IMPORT_VERSION = "2.$$QT_MINOR_VERSION" # OTHER_FILES = "qmldir" -# TARGETPATH = "QtQuick/Templates.2" +# QML_IMPORT_VERSION = "$$QT_VERSION" +# TARGETPATH = "QtQuick/Templates" diff --git a/src/imports/templates/plugins.qmltypes b/src/imports/templates/plugins.qmltypes deleted file mode 100644 index da81e095..00000000 --- a/src/imports/templates/plugins.qmltypes +++ /dev/null @@ -1,3074 +0,0 @@ -import QtQuick.tooling 1.2 - -// This file describes the plugin-supplied types contained in the library. -// It is used for QML tooling purposes only. -// -// This file was auto-generated by: -// 'qmlplugindump -nonrelocatable -dependencies dependencies.json QtQuick.Templates 2.14' - -Module { - dependencies: ["QtQuick 2.9", "QtQuick.Window 2.2"] - Component { - name: "QQuickAbstractButton" - defaultProperty: "data" - prototype: "QQuickControl" - exports: [ - "QtQuick.Templates/AbstractButton 2.0", - "QtQuick.Templates/AbstractButton 2.2", - "QtQuick.Templates/AbstractButton 2.3", - "QtQuick.Templates/AbstractButton 2.4", - "QtQuick.Templates/AbstractButton 2.5" - ] - exportMetaObjectRevisions: [0, 2, 3, 4, 5] - Enum { - name: "Display" - values: { - "IconOnly": 0, - "TextOnly": 1, - "TextBesideIcon": 2, - "TextUnderIcon": 3 - } - } - Property { name: "text"; type: "string" } - Property { name: "down"; type: "bool" } - Property { name: "pressed"; type: "bool"; isReadonly: true } - Property { name: "checked"; type: "bool" } - Property { name: "checkable"; type: "bool" } - Property { name: "autoExclusive"; type: "bool" } - Property { name: "autoRepeat"; type: "bool" } - Property { name: "indicator"; type: "QQuickItem"; isPointer: true } - Property { name: "icon"; revision: 3; type: "QQuickIcon" } - Property { name: "display"; revision: 3; type: "Display" } - Property { name: "action"; revision: 3; type: "QQuickAction"; isPointer: true } - Property { name: "autoRepeatDelay"; revision: 4; type: "int" } - Property { name: "autoRepeatInterval"; revision: 4; type: "int" } - Property { name: "pressX"; revision: 4; type: "double"; isReadonly: true } - Property { name: "pressY"; revision: 4; type: "double"; isReadonly: true } - Property { name: "implicitIndicatorWidth"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitIndicatorHeight"; revision: 5; type: "double"; isReadonly: true } - Signal { name: "pressed" } - Signal { name: "released" } - Signal { name: "canceled" } - Signal { name: "clicked" } - Signal { name: "pressAndHold" } - Signal { name: "doubleClicked" } - Signal { name: "toggled"; revision: 2 } - Signal { name: "iconChanged"; revision: 3 } - Signal { name: "displayChanged"; revision: 3 } - Signal { name: "actionChanged"; revision: 3 } - Signal { name: "autoRepeatDelayChanged"; revision: 4 } - Signal { name: "autoRepeatIntervalChanged"; revision: 4 } - Signal { name: "pressXChanged"; revision: 4 } - Signal { name: "pressYChanged"; revision: 4 } - Signal { name: "implicitIndicatorWidthChanged"; revision: 5 } - Signal { name: "implicitIndicatorHeightChanged"; revision: 5 } - Method { name: "toggle" } - } - Component { - name: "QQuickAction" - prototype: "QObject" - exports: ["QtQuick.Templates/Action 2.3"] - exportMetaObjectRevisions: [0] - Property { name: "text"; type: "string" } - Property { name: "icon"; type: "QQuickIcon" } - Property { name: "enabled"; type: "bool" } - Property { name: "checked"; type: "bool" } - Property { name: "checkable"; type: "bool" } - Property { name: "shortcut"; type: "QVariant" } - Signal { - name: "textChanged" - Parameter { name: "text"; type: "string" } - } - Signal { - name: "iconChanged" - Parameter { name: "icon"; type: "QQuickIcon" } - } - Signal { - name: "enabledChanged" - Parameter { name: "enabled"; type: "bool" } - } - Signal { - name: "checkedChanged" - Parameter { name: "checked"; type: "bool" } - } - Signal { - name: "checkableChanged" - Parameter { name: "checkable"; type: "bool" } - } - Signal { - name: "shortcutChanged" - Parameter { name: "shortcut"; type: "QKeySequence" } - } - Signal { - name: "toggled" - Parameter { name: "source"; type: "QObject"; isPointer: true } - } - Signal { name: "toggled" } - Signal { - name: "triggered" - Parameter { name: "source"; type: "QObject"; isPointer: true } - } - Signal { name: "triggered" } - Method { - name: "toggle" - Parameter { name: "source"; type: "QObject"; isPointer: true } - } - Method { name: "toggle" } - Method { - name: "trigger" - Parameter { name: "source"; type: "QObject"; isPointer: true } - } - Method { name: "trigger" } - } - Component { - name: "QQuickActionGroup" - defaultProperty: "actions" - prototype: "QObject" - exports: ["QtQuick.Templates/ActionGroup 2.3"] - exportMetaObjectRevisions: [0] - attachedType: "QQuickActionGroupAttached" - Property { name: "checkedAction"; type: "QQuickAction"; isPointer: true } - Property { name: "actions"; type: "QQuickAction"; isList: true; isReadonly: true } - Property { name: "exclusive"; type: "bool" } - Property { name: "enabled"; type: "bool" } - Signal { - name: "triggered" - Parameter { name: "action"; type: "QQuickAction"; isPointer: true } - } - Method { - name: "addAction" - Parameter { name: "action"; type: "QQuickAction"; isPointer: true } - } - Method { - name: "removeAction" - Parameter { name: "action"; type: "QQuickAction"; isPointer: true } - } - } - Component { - name: "QQuickActionGroupAttached" - prototype: "QObject" - Property { name: "group"; type: "QQuickActionGroup"; isPointer: true } - } - Component { - name: "QQuickApplicationWindow" - defaultProperty: "contentData" - prototype: "QQuickWindowQmlImpl" - exports: [ - "QtQuick.Templates/ApplicationWindow 2.0", - "QtQuick.Templates/ApplicationWindow 2.3" - ] - exportMetaObjectRevisions: [0, 3] - attachedType: "QQuickApplicationWindowAttached" - Property { name: "background"; type: "QQuickItem"; isPointer: true } - Property { name: "contentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } - Property { name: "contentData"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "activeFocusControl"; type: "QQuickItem"; isReadonly: true; isPointer: true } - Property { name: "header"; type: "QQuickItem"; isPointer: true } - Property { name: "footer"; type: "QQuickItem"; isPointer: true } - Property { name: "overlay"; type: "QQuickOverlay"; isReadonly: true; isPointer: true } - Property { name: "font"; type: "QFont" } - Property { name: "locale"; type: "QLocale" } - Property { name: "palette"; revision: 3; type: "QPalette" } - Property { name: "menuBar"; revision: 3; type: "QQuickItem"; isPointer: true } - Signal { name: "paletteChanged"; revision: 3 } - Signal { name: "menuBarChanged"; revision: 3 } - } - Component { - name: "QQuickApplicationWindowAttached" - prototype: "QObject" - Property { name: "window"; type: "QQuickApplicationWindow"; isReadonly: true; isPointer: true } - Property { name: "contentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } - Property { name: "activeFocusControl"; type: "QQuickItem"; isReadonly: true; isPointer: true } - Property { name: "header"; type: "QQuickItem"; isReadonly: true; isPointer: true } - Property { name: "footer"; type: "QQuickItem"; isReadonly: true; isPointer: true } - Property { name: "overlay"; type: "QQuickOverlay"; isReadonly: true; isPointer: true } - Property { name: "menuBar"; type: "QQuickItem"; isReadonly: true; isPointer: true } - } - Component { - name: "QQuickBusyIndicator" - defaultProperty: "data" - prototype: "QQuickControl" - exports: ["QtQuick.Templates/BusyIndicator 2.0"] - exportMetaObjectRevisions: [0] - Property { name: "running"; type: "bool" } - } - Component { - name: "QQuickButton" - defaultProperty: "data" - prototype: "QQuickAbstractButton" - exports: ["QtQuick.Templates/Button 2.0"] - exportMetaObjectRevisions: [0] - Property { name: "highlighted"; type: "bool" } - Property { name: "flat"; type: "bool" } - } - Component { - name: "QQuickButtonGroup" - prototype: "QObject" - exports: [ - "QtQuick.Templates/ButtonGroup 2.0", - "QtQuick.Templates/ButtonGroup 2.1", - "QtQuick.Templates/ButtonGroup 2.3", - "QtQuick.Templates/ButtonGroup 2.4" - ] - exportMetaObjectRevisions: [0, 1, 3, 4] - attachedType: "QQuickButtonGroupAttached" - Property { name: "checkedButton"; type: "QQuickAbstractButton"; isPointer: true } - Property { name: "buttons"; type: "QQuickAbstractButton"; isList: true; isReadonly: true } - Property { name: "exclusive"; revision: 3; type: "bool" } - Property { name: "checkState"; revision: 4; type: "Qt::CheckState" } - Signal { - name: "clicked" - revision: 1 - Parameter { name: "button"; type: "QQuickAbstractButton"; isPointer: true } - } - Signal { name: "exclusiveChanged"; revision: 3 } - Signal { name: "checkStateChanged"; revision: 4 } - Method { - name: "addButton" - Parameter { name: "button"; type: "QQuickAbstractButton"; isPointer: true } - } - Method { - name: "removeButton" - Parameter { name: "button"; type: "QQuickAbstractButton"; isPointer: true } - } - } - Component { - name: "QQuickButtonGroupAttached" - prototype: "QObject" - Property { name: "group"; type: "QQuickButtonGroup"; isPointer: true } - } - Component { - name: "QQuickCheckBox" - defaultProperty: "data" - prototype: "QQuickAbstractButton" - exports: [ - "QtQuick.Templates/CheckBox 2.0", - "QtQuick.Templates/CheckBox 2.4" - ] - exportMetaObjectRevisions: [0, 4] - Property { name: "tristate"; type: "bool" } - Property { name: "checkState"; type: "Qt::CheckState" } - Property { name: "nextCheckState"; revision: 4; type: "QJSValue" } - Signal { name: "nextCheckStateChanged"; revision: 4 } - } - Component { - name: "QQuickCheckDelegate" - defaultProperty: "data" - prototype: "QQuickItemDelegate" - exports: [ - "QtQuick.Templates/CheckDelegate 2.0", - "QtQuick.Templates/CheckDelegate 2.4" - ] - exportMetaObjectRevisions: [0, 4] - Property { name: "tristate"; type: "bool" } - Property { name: "checkState"; type: "Qt::CheckState" } - Property { name: "nextCheckState"; revision: 4; type: "QJSValue" } - Signal { name: "nextCheckStateChanged"; revision: 4 } - } - Component { - name: "QQuickComboBox" - defaultProperty: "data" - prototype: "QQuickControl" - exports: [ - "QtQuick.Templates/ComboBox 2.0", - "QtQuick.Templates/ComboBox 2.1", - "QtQuick.Templates/ComboBox 2.14", - "QtQuick.Templates/ComboBox 2.2", - "QtQuick.Templates/ComboBox 2.5" - ] - exportMetaObjectRevisions: [0, 1, 14, 2, 5] - Property { name: "count"; type: "int"; isReadonly: true } - Property { name: "model"; type: "QVariant" } - Property { name: "delegateModel"; type: "QQmlInstanceModel"; isReadonly: true; isPointer: true } - Property { name: "pressed"; type: "bool" } - Property { name: "highlightedIndex"; type: "int"; isReadonly: true } - Property { name: "currentIndex"; type: "int" } - Property { name: "currentText"; type: "string"; isReadonly: true } - Property { name: "displayText"; type: "string" } - Property { name: "textRole"; type: "string" } - Property { name: "delegate"; type: "QQmlComponent"; isPointer: true } - Property { name: "indicator"; type: "QQuickItem"; isPointer: true } - Property { name: "popup"; type: "QQuickPopup"; isPointer: true } - Property { name: "flat"; revision: 1; type: "bool" } - Property { name: "down"; revision: 2; type: "bool" } - Property { name: "editable"; revision: 2; type: "bool" } - Property { name: "editText"; revision: 2; type: "string" } - Property { name: "validator"; revision: 2; type: "QValidator"; isPointer: true } - Property { name: "inputMethodHints"; revision: 2; type: "Qt::InputMethodHints" } - Property { name: "inputMethodComposing"; revision: 2; type: "bool"; isReadonly: true } - Property { name: "acceptableInput"; revision: 2; type: "bool"; isReadonly: true } - Property { name: "implicitIndicatorWidth"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitIndicatorHeight"; revision: 5; type: "double"; isReadonly: true } - Property { name: "currentValue"; revision: 14; type: "QVariant"; isReadonly: true } - Property { name: "valueRole"; revision: 14; type: "string" } - Signal { - name: "activated" - Parameter { name: "index"; type: "int" } - } - Signal { - name: "highlighted" - Parameter { name: "index"; type: "int" } - } - Signal { name: "flatChanged"; revision: 1 } - Signal { name: "accepted"; revision: 2 } - Signal { name: "downChanged"; revision: 2 } - Signal { name: "editableChanged"; revision: 2 } - Signal { name: "editTextChanged"; revision: 2 } - Signal { name: "validatorChanged"; revision: 2 } - Signal { name: "inputMethodHintsChanged"; revision: 2 } - Signal { name: "inputMethodComposingChanged"; revision: 2 } - Signal { name: "acceptableInputChanged"; revision: 2 } - Signal { name: "implicitIndicatorWidthChanged"; revision: 5 } - Signal { name: "implicitIndicatorHeightChanged"; revision: 5 } - Signal { name: "valueRoleChanged"; revision: 14 } - Signal { name: "currentValueChanged"; revision: 14 } - Method { name: "incrementCurrentIndex" } - Method { name: "decrementCurrentIndex" } - Method { name: "selectAll"; revision: 2 } - Method { - name: "textAt" - type: "string" - Parameter { name: "index"; type: "int" } - } - Method { - name: "find" - type: "int" - Parameter { name: "text"; type: "string" } - Parameter { name: "flags"; type: "Qt::MatchFlags" } - } - Method { - name: "find" - type: "int" - Parameter { name: "text"; type: "string" } - } - Method { - name: "valueAt" - revision: 14 - type: "QVariant" - Parameter { name: "index"; type: "int" } - } - Method { - name: "indexOfValue" - revision: 14 - type: "int" - Parameter { name: "value"; type: "QVariant" } - } - } - Component { - name: "QQuickContainer" - defaultProperty: "contentData" - prototype: "QQuickControl" - exports: [ - "QtQuick.Templates/Container 2.0", - "QtQuick.Templates/Container 2.1", - "QtQuick.Templates/Container 2.3", - "QtQuick.Templates/Container 2.5" - ] - exportMetaObjectRevisions: [0, 1, 3, 5] - Property { name: "count"; type: "int"; isReadonly: true } - Property { name: "contentModel"; type: "QVariant"; isReadonly: true } - Property { name: "contentData"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "contentChildren"; type: "QQuickItem"; isList: true; isReadonly: true } - Property { name: "currentIndex"; type: "int" } - Property { name: "currentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } - Property { name: "contentWidth"; revision: 5; type: "double" } - Property { name: "contentHeight"; revision: 5; type: "double" } - Signal { name: "contentWidthChanged"; revision: 5 } - Signal { name: "contentHeightChanged"; revision: 5 } - Method { - name: "setCurrentIndex" - Parameter { name: "index"; type: "int" } - } - Method { name: "incrementCurrentIndex"; revision: 1 } - Method { name: "decrementCurrentIndex"; revision: 1 } - Method { - name: "itemAt" - type: "QQuickItem*" - Parameter { name: "index"; type: "int" } - } - Method { - name: "addItem" - Parameter { name: "item"; type: "QQuickItem"; isPointer: true } - } - Method { - name: "insertItem" - Parameter { name: "index"; type: "int" } - Parameter { name: "item"; type: "QQuickItem"; isPointer: true } - } - Method { - name: "moveItem" - Parameter { name: "from"; type: "int" } - Parameter { name: "to"; type: "int" } - } - Method { - name: "removeItem" - Parameter { name: "item"; type: "QVariant" } - } - Method { - name: "takeItem" - revision: 3 - type: "QQuickItem*" - Parameter { name: "index"; type: "int" } - } - } - Component { name: "QQuickContentItem"; defaultProperty: "data"; prototype: "QQuickItem" } - Component { - name: "QQuickControl" - defaultProperty: "data" - prototype: "QQuickItem" - exports: [ - "QtQuick.Templates/Control 2.0", - "QtQuick.Templates/Control 2.3", - "QtQuick.Templates/Control 2.5" - ] - exportMetaObjectRevisions: [0, 3, 5] - Property { name: "font"; type: "QFont" } - Property { name: "availableWidth"; type: "double"; isReadonly: true } - Property { name: "availableHeight"; type: "double"; isReadonly: true } - Property { name: "padding"; type: "double" } - Property { name: "topPadding"; type: "double" } - Property { name: "leftPadding"; type: "double" } - Property { name: "rightPadding"; type: "double" } - Property { name: "bottomPadding"; type: "double" } - Property { name: "spacing"; type: "double" } - Property { name: "locale"; type: "QLocale" } - Property { name: "mirrored"; type: "bool"; isReadonly: true } - Property { name: "focusPolicy"; type: "Qt::FocusPolicy" } - Property { name: "focusReason"; type: "Qt::FocusReason" } - Property { name: "visualFocus"; type: "bool"; isReadonly: true } - Property { name: "hovered"; type: "bool"; isReadonly: true } - Property { name: "hoverEnabled"; type: "bool" } - Property { name: "wheelEnabled"; type: "bool" } - Property { name: "background"; type: "QQuickItem"; isPointer: true } - Property { name: "contentItem"; type: "QQuickItem"; isPointer: true } - Property { name: "baselineOffset"; type: "double" } - Property { name: "palette"; revision: 3; type: "QPalette" } - Property { name: "horizontalPadding"; revision: 5; type: "double" } - Property { name: "verticalPadding"; revision: 5; type: "double" } - Property { name: "implicitContentWidth"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitContentHeight"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitBackgroundWidth"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitBackgroundHeight"; revision: 5; type: "double"; isReadonly: true } - Property { name: "topInset"; revision: 5; type: "double" } - Property { name: "leftInset"; revision: 5; type: "double" } - Property { name: "rightInset"; revision: 5; type: "double" } - Property { name: "bottomInset"; revision: 5; type: "double" } - Signal { name: "paletteChanged"; revision: 3 } - Signal { name: "horizontalPaddingChanged"; revision: 5 } - Signal { name: "verticalPaddingChanged"; revision: 5 } - Signal { name: "implicitContentWidthChanged"; revision: 5 } - Signal { name: "implicitContentHeightChanged"; revision: 5 } - Signal { name: "implicitBackgroundWidthChanged"; revision: 5 } - Signal { name: "implicitBackgroundHeightChanged"; revision: 5 } - Signal { name: "topInsetChanged"; revision: 5 } - Signal { name: "leftInsetChanged"; revision: 5 } - Signal { name: "rightInsetChanged"; revision: 5 } - Signal { name: "bottomInsetChanged"; revision: 5 } - } - Component { - name: "QQuickDelayButton" - defaultProperty: "data" - prototype: "QQuickAbstractButton" - exports: ["QtQuick.Templates/DelayButton 2.2"] - exportMetaObjectRevisions: [0] - Property { name: "delay"; type: "int" } - Property { name: "progress"; type: "double" } - Property { name: "transition"; type: "QQuickTransition"; isPointer: true } - Signal { name: "activated" } - } - Component { - name: "QQuickDial" - defaultProperty: "data" - prototype: "QQuickControl" - exports: [ - "QtQuick.Templates/Dial 2.0", - "QtQuick.Templates/Dial 2.2", - "QtQuick.Templates/Dial 2.5" - ] - exportMetaObjectRevisions: [0, 2, 5] - Enum { - name: "SnapMode" - values: { - "NoSnap": 0, - "SnapAlways": 1, - "SnapOnRelease": 2 - } - } - Enum { - name: "InputMode" - values: { - "Circular": 0, - "Horizontal": 1, - "Vertical": 2 - } - } - Property { name: "from"; type: "double" } - Property { name: "to"; type: "double" } - Property { name: "value"; type: "double" } - Property { name: "position"; type: "double"; isReadonly: true } - Property { name: "angle"; type: "double"; isReadonly: true } - Property { name: "stepSize"; type: "double" } - Property { name: "snapMode"; type: "SnapMode" } - Property { name: "wrap"; type: "bool" } - Property { name: "pressed"; type: "bool"; isReadonly: true } - Property { name: "handle"; type: "QQuickItem"; isPointer: true } - Property { name: "live"; revision: 2; type: "bool" } - Property { name: "inputMode"; revision: 5; type: "InputMode" } - Signal { name: "moved"; revision: 2 } - Signal { name: "liveChanged"; revision: 2 } - Signal { name: "inputModeChanged"; revision: 5 } - Method { name: "increase" } - Method { name: "decrease" } - } - Component { - name: "QQuickDialog" - defaultProperty: "contentData" - prototype: "QQuickPopup" - exports: [ - "QtQuick.Templates/Dialog 2.1", - "QtQuick.Templates/Dialog 2.3", - "QtQuick.Templates/Dialog 2.5" - ] - exportMetaObjectRevisions: [0, 3, 5] - Enum { - name: "StandardCode" - values: { - "Rejected": 0, - "Accepted": 1 - } - } - Property { name: "title"; type: "string" } - Property { name: "header"; type: "QQuickItem"; isPointer: true } - Property { name: "footer"; type: "QQuickItem"; isPointer: true } - Property { name: "standardButtons"; type: "QPlatformDialogHelper::StandardButtons" } - Property { name: "result"; revision: 3; type: "int" } - Property { name: "implicitHeaderWidth"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitHeaderHeight"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitFooterWidth"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitFooterHeight"; revision: 5; type: "double"; isReadonly: true } - Signal { name: "accepted" } - Signal { name: "rejected" } - Signal { name: "applied"; revision: 3 } - Signal { name: "reset"; revision: 3 } - Signal { name: "discarded"; revision: 3 } - Signal { name: "helpRequested"; revision: 3 } - Signal { name: "resultChanged"; revision: 3 } - Method { name: "accept" } - Method { name: "reject" } - Method { - name: "done" - Parameter { name: "result"; type: "int" } - } - Method { - name: "standardButton" - revision: 3 - type: "QQuickAbstractButton*" - Parameter { name: "button"; type: "QPlatformDialogHelper::StandardButton" } - } - } - Component { - name: "QQuickDialogButtonBox" - defaultProperty: "contentData" - prototype: "QQuickContainer" - exports: [ - "QtQuick.Templates/DialogButtonBox 2.1", - "QtQuick.Templates/DialogButtonBox 2.3", - "QtQuick.Templates/DialogButtonBox 2.5" - ] - exportMetaObjectRevisions: [0, 3, 5] - attachedType: "QQuickDialogButtonBoxAttached" - Enum { - name: "Position" - values: { - "Header": 0, - "Footer": 1 - } - } - Property { name: "position"; type: "Position" } - Property { name: "alignment"; type: "Qt::Alignment" } - Property { name: "standardButtons"; type: "QPlatformDialogHelper::StandardButtons" } - Property { name: "delegate"; type: "QQmlComponent"; isPointer: true } - Property { name: "buttonLayout"; revision: 5; type: "QPlatformDialogHelper::ButtonLayout" } - Signal { name: "accepted" } - Signal { name: "rejected" } - Signal { name: "helpRequested" } - Signal { - name: "clicked" - Parameter { name: "button"; type: "QQuickAbstractButton"; isPointer: true } - } - Signal { name: "applied"; revision: 3 } - Signal { name: "reset"; revision: 3 } - Signal { name: "discarded"; revision: 3 } - Signal { name: "buttonLayoutChanged"; revision: 5 } - Method { - name: "standardButton" - type: "QQuickAbstractButton*" - Parameter { name: "button"; type: "QPlatformDialogHelper::StandardButton" } - } - } - Component { - name: "QQuickDialogButtonBoxAttached" - prototype: "QObject" - Property { name: "buttonBox"; type: "QQuickDialogButtonBox"; isReadonly: true; isPointer: true } - Property { name: "buttonRole"; type: "QPlatformDialogHelper::ButtonRole" } - } - Component { - name: "QQuickDrawer" - defaultProperty: "contentData" - prototype: "QQuickPopup" - exports: [ - "QtQuick.Templates/Drawer 2.0", - "QtQuick.Templates/Drawer 2.2" - ] - exportMetaObjectRevisions: [0, 2] - Property { name: "edge"; type: "Qt::Edge" } - Property { name: "position"; type: "double" } - Property { name: "dragMargin"; type: "double" } - Property { name: "interactive"; revision: 2; type: "bool" } - Signal { name: "interactiveChanged"; revision: 2 } - } - Component { - name: "QQuickFrame" - defaultProperty: "contentData" - prototype: "QQuickPane" - exports: ["QtQuick.Templates/Frame 2.0"] - exportMetaObjectRevisions: [0] - } - Component { - name: "QQuickGroupBox" - defaultProperty: "contentData" - prototype: "QQuickFrame" - exports: [ - "QtQuick.Templates/GroupBox 2.0", - "QtQuick.Templates/GroupBox 2.5" - ] - exportMetaObjectRevisions: [0, 5] - Property { name: "title"; type: "string" } - Property { name: "label"; type: "QQuickItem"; isPointer: true } - Property { name: "implicitLabelWidth"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitLabelHeight"; revision: 5; type: "double"; isReadonly: true } - Signal { name: "implicitLabelWidthChanged"; revision: 5 } - Signal { name: "implicitLabelHeightChanged"; revision: 5 } - } - Component { - name: "QQuickIcon" - Property { name: "name"; type: "string" } - Property { name: "source"; type: "QUrl" } - Property { name: "width"; type: "int" } - Property { name: "height"; type: "int" } - Property { name: "color"; type: "QColor" } - Property { name: "cache"; type: "bool" } - } - Component { - name: "QQuickImplicitSizeItem" - defaultProperty: "data" - prototype: "QQuickItem" - Property { name: "implicitWidth"; type: "double"; isReadonly: true } - Property { name: "implicitHeight"; type: "double"; isReadonly: true } - } - Component { - name: "QQuickItem" - defaultProperty: "data" - prototype: "QObject" - Enum { - name: "Flags" - values: { - "ItemClipsChildrenToShape": 1, - "ItemAcceptsInputMethod": 2, - "ItemIsFocusScope": 4, - "ItemHasContents": 8, - "ItemAcceptsDrops": 16 - } - } - Enum { - name: "TransformOrigin" - values: { - "TopLeft": 0, - "Top": 1, - "TopRight": 2, - "Left": 3, - "Center": 4, - "Right": 5, - "BottomLeft": 6, - "Bottom": 7, - "BottomRight": 8 - } - } - Property { name: "parent"; type: "QQuickItem"; isPointer: true } - Property { name: "data"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "resources"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "children"; type: "QQuickItem"; isList: true; isReadonly: true } - Property { name: "x"; type: "double" } - Property { name: "y"; type: "double" } - Property { name: "z"; type: "double" } - Property { name: "width"; type: "double" } - Property { name: "height"; type: "double" } - Property { name: "opacity"; type: "double" } - Property { name: "enabled"; type: "bool" } - Property { name: "visible"; type: "bool" } - Property { name: "visibleChildren"; type: "QQuickItem"; isList: true; isReadonly: true } - Property { name: "states"; type: "QQuickState"; isList: true; isReadonly: true } - Property { name: "transitions"; type: "QQuickTransition"; isList: true; isReadonly: true } - Property { name: "state"; type: "string" } - Property { name: "childrenRect"; type: "QRectF"; isReadonly: true } - Property { name: "anchors"; type: "QQuickAnchors"; isReadonly: true; isPointer: true } - Property { name: "left"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "right"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "horizontalCenter"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "top"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "bottom"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "verticalCenter"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "baseline"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "baselineOffset"; type: "double" } - Property { name: "clip"; type: "bool" } - Property { name: "focus"; type: "bool" } - Property { name: "activeFocus"; type: "bool"; isReadonly: true } - Property { name: "activeFocusOnTab"; revision: 1; type: "bool" } - Property { name: "rotation"; type: "double" } - Property { name: "scale"; type: "double" } - Property { name: "transformOrigin"; type: "TransformOrigin" } - Property { name: "transformOriginPoint"; type: "QPointF"; isReadonly: true } - Property { name: "transform"; type: "QQuickTransform"; isList: true; isReadonly: true } - Property { name: "smooth"; type: "bool" } - Property { name: "antialiasing"; type: "bool" } - Property { name: "implicitWidth"; type: "double" } - Property { name: "implicitHeight"; type: "double" } - Property { name: "containmentMask"; revision: 11; type: "QObject"; isPointer: true } - Property { name: "layer"; type: "QQuickItemLayer"; isReadonly: true; isPointer: true } - Signal { - name: "childrenRectChanged" - Parameter { type: "QRectF" } - } - Signal { - name: "baselineOffsetChanged" - Parameter { type: "double" } - } - Signal { - name: "stateChanged" - Parameter { type: "string" } - } - Signal { - name: "focusChanged" - Parameter { type: "bool" } - } - Signal { - name: "activeFocusChanged" - Parameter { type: "bool" } - } - Signal { - name: "activeFocusOnTabChanged" - revision: 1 - Parameter { type: "bool" } - } - Signal { - name: "parentChanged" - Parameter { type: "QQuickItem"; isPointer: true } - } - Signal { - name: "transformOriginChanged" - Parameter { type: "TransformOrigin" } - } - Signal { - name: "smoothChanged" - Parameter { type: "bool" } - } - Signal { - name: "antialiasingChanged" - Parameter { type: "bool" } - } - Signal { - name: "clipChanged" - Parameter { type: "bool" } - } - Signal { - name: "windowChanged" - revision: 1 - Parameter { name: "window"; type: "QQuickWindow"; isPointer: true } - } - Signal { name: "containmentMaskChanged"; revision: 11 } - Method { name: "update" } - Method { - name: "grabToImage" - revision: 4 - type: "bool" - Parameter { name: "callback"; type: "QJSValue" } - Parameter { name: "targetSize"; type: "QSize" } - } - Method { - name: "grabToImage" - revision: 4 - type: "bool" - Parameter { name: "callback"; type: "QJSValue" } - } - Method { - name: "contains" - type: "bool" - Parameter { name: "point"; type: "QPointF" } - } - Method { - name: "mapFromItem" - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "mapToItem" - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "mapFromGlobal" - revision: 7 - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "mapToGlobal" - revision: 7 - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { name: "forceActiveFocus" } - Method { - name: "forceActiveFocus" - Parameter { name: "reason"; type: "Qt::FocusReason" } - } - Method { - name: "nextItemInFocusChain" - revision: 1 - type: "QQuickItem*" - Parameter { name: "forward"; type: "bool" } - } - Method { name: "nextItemInFocusChain"; revision: 1; type: "QQuickItem*" } - Method { - name: "childAt" - type: "QQuickItem*" - Parameter { name: "x"; type: "double" } - Parameter { name: "y"; type: "double" } - } - } - Component { - name: "QQuickItemDelegate" - defaultProperty: "data" - prototype: "QQuickAbstractButton" - exports: ["QtQuick.Templates/ItemDelegate 2.0"] - exportMetaObjectRevisions: [0] - Property { name: "highlighted"; type: "bool" } - } - Component { - name: "QQuickLabel" - defaultProperty: "data" - prototype: "QQuickText" - exports: [ - "QtQuick.Templates/Label 2.0", - "QtQuick.Templates/Label 2.3", - "QtQuick.Templates/Label 2.5" - ] - exportMetaObjectRevisions: [0, 3, 5] - Property { name: "font"; type: "QFont" } - Property { name: "background"; type: "QQuickItem"; isPointer: true } - Property { name: "palette"; revision: 3; type: "QPalette" } - Property { name: "implicitBackgroundWidth"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitBackgroundHeight"; revision: 5; type: "double"; isReadonly: true } - Property { name: "topInset"; revision: 5; type: "double" } - Property { name: "leftInset"; revision: 5; type: "double" } - Property { name: "rightInset"; revision: 5; type: "double" } - Property { name: "bottomInset"; revision: 5; type: "double" } - Signal { name: "paletteChanged"; revision: 3 } - Signal { name: "implicitBackgroundWidthChanged"; revision: 5 } - Signal { name: "implicitBackgroundHeightChanged"; revision: 5 } - Signal { name: "topInsetChanged"; revision: 5 } - Signal { name: "leftInsetChanged"; revision: 5 } - Signal { name: "rightInsetChanged"; revision: 5 } - Signal { name: "bottomInsetChanged"; revision: 5 } - } - Component { - name: "QQuickMenu" - defaultProperty: "contentData" - prototype: "QQuickPopup" - exports: ["QtQuick.Templates/Menu 2.0", "QtQuick.Templates/Menu 2.3"] - exportMetaObjectRevisions: [0, 3] - Property { name: "contentModel"; type: "QVariant"; isReadonly: true } - Property { name: "contentData"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "title"; type: "string" } - Property { name: "count"; revision: 3; type: "int"; isReadonly: true } - Property { name: "cascade"; revision: 3; type: "bool" } - Property { name: "overlap"; revision: 3; type: "double" } - Property { name: "delegate"; revision: 3; type: "QQmlComponent"; isPointer: true } - Property { name: "currentIndex"; revision: 3; type: "int" } - Signal { - name: "titleChanged" - Parameter { name: "title"; type: "string" } - } - Signal { name: "countChanged"; revision: 3 } - Signal { - name: "cascadeChanged" - revision: 3 - Parameter { name: "cascade"; type: "bool" } - } - Signal { name: "overlapChanged"; revision: 3 } - Signal { name: "delegateChanged"; revision: 3 } - Signal { name: "currentIndexChanged"; revision: 3 } - Method { - name: "itemAt" - type: "QQuickItem*" - Parameter { name: "index"; type: "int" } - } - Method { - name: "addItem" - Parameter { name: "item"; type: "QQuickItem"; isPointer: true } - } - Method { - name: "insertItem" - Parameter { name: "index"; type: "int" } - Parameter { name: "item"; type: "QQuickItem"; isPointer: true } - } - Method { - name: "moveItem" - Parameter { name: "from"; type: "int" } - Parameter { name: "to"; type: "int" } - } - Method { - name: "removeItem" - Parameter { name: "item"; type: "QVariant" } - } - Method { - name: "takeItem" - revision: 3 - type: "QQuickItem*" - Parameter { name: "index"; type: "int" } - } - Method { - name: "menuAt" - revision: 3 - type: "QQuickMenu*" - Parameter { name: "index"; type: "int" } - } - Method { - name: "addMenu" - revision: 3 - Parameter { name: "menu"; type: "QQuickMenu"; isPointer: true } - } - Method { - name: "insertMenu" - revision: 3 - Parameter { name: "index"; type: "int" } - Parameter { name: "menu"; type: "QQuickMenu"; isPointer: true } - } - Method { - name: "removeMenu" - revision: 3 - Parameter { name: "menu"; type: "QQuickMenu"; isPointer: true } - } - Method { - name: "takeMenu" - revision: 3 - type: "QQuickMenu*" - Parameter { name: "index"; type: "int" } - } - Method { - name: "actionAt" - revision: 3 - type: "QQuickAction*" - Parameter { name: "index"; type: "int" } - } - Method { - name: "addAction" - revision: 3 - Parameter { name: "action"; type: "QQuickAction"; isPointer: true } - } - Method { - name: "insertAction" - revision: 3 - Parameter { name: "index"; type: "int" } - Parameter { name: "action"; type: "QQuickAction"; isPointer: true } - } - Method { - name: "removeAction" - revision: 3 - Parameter { name: "action"; type: "QQuickAction"; isPointer: true } - } - Method { - name: "takeAction" - revision: 3 - type: "QQuickAction*" - Parameter { name: "index"; type: "int" } - } - Method { - name: "popup" - revision: 3 - Parameter { name: "args"; type: "QQmlV4Function"; isPointer: true } - } - Method { name: "dismiss"; revision: 3 } - } - Component { - name: "QQuickMenuBar" - defaultProperty: "contentData" - prototype: "QQuickContainer" - exports: ["QtQuick.Templates/MenuBar 2.3"] - exportMetaObjectRevisions: [0] - Property { name: "delegate"; type: "QQmlComponent"; isPointer: true } - Property { name: "contentWidth"; type: "double" } - Property { name: "contentHeight"; type: "double" } - Property { name: "menus"; type: "QQuickMenu"; isList: true; isReadonly: true } - Property { name: "contentData"; type: "QObject"; isList: true; isReadonly: true } - Method { - name: "menuAt" - type: "QQuickMenu*" - Parameter { name: "index"; type: "int" } - } - Method { - name: "addMenu" - Parameter { name: "menu"; type: "QQuickMenu"; isPointer: true } - } - Method { - name: "insertMenu" - Parameter { name: "index"; type: "int" } - Parameter { name: "menu"; type: "QQuickMenu"; isPointer: true } - } - Method { - name: "removeMenu" - Parameter { name: "menu"; type: "QQuickMenu"; isPointer: true } - } - Method { - name: "takeMenu" - type: "QQuickMenu*" - Parameter { name: "index"; type: "int" } - } - } - Component { - name: "QQuickMenuBarItem" - defaultProperty: "data" - prototype: "QQuickAbstractButton" - exports: ["QtQuick.Templates/MenuBarItem 2.3"] - exportMetaObjectRevisions: [0] - Property { name: "menuBar"; type: "QQuickMenuBar"; isReadonly: true; isPointer: true } - Property { name: "menu"; type: "QQuickMenu"; isPointer: true } - Property { name: "highlighted"; type: "bool" } - Signal { name: "triggered" } - } - Component { - name: "QQuickMenuItem" - defaultProperty: "data" - prototype: "QQuickAbstractButton" - exports: [ - "QtQuick.Templates/MenuItem 2.0", - "QtQuick.Templates/MenuItem 2.3" - ] - exportMetaObjectRevisions: [0, 3] - Property { name: "highlighted"; type: "bool" } - Property { name: "arrow"; revision: 3; type: "QQuickItem"; isPointer: true } - Property { name: "menu"; revision: 3; type: "QQuickMenu"; isReadonly: true; isPointer: true } - Property { name: "subMenu"; revision: 3; type: "QQuickMenu"; isReadonly: true; isPointer: true } - Signal { name: "triggered" } - Signal { name: "arrowChanged"; revision: 3 } - Signal { name: "menuChanged"; revision: 3 } - Signal { name: "subMenuChanged"; revision: 3 } - } - Component { - name: "QQuickMenuSeparator" - defaultProperty: "data" - prototype: "QQuickControl" - exports: ["QtQuick.Templates/MenuSeparator 2.1"] - exportMetaObjectRevisions: [0] - } - Component { - name: "QQuickOverlay" - defaultProperty: "data" - prototype: "QQuickItem" - exports: ["QtQuick.Templates/Overlay 2.3"] - isCreatable: false - exportMetaObjectRevisions: [0] - attachedType: "QQuickOverlayAttached" - Property { name: "modal"; type: "QQmlComponent"; isPointer: true } - Property { name: "modeless"; type: "QQmlComponent"; isPointer: true } - Signal { name: "pressed" } - Signal { name: "released" } - } - Component { - name: "QQuickOverlayAttached" - prototype: "QObject" - Property { name: "overlay"; type: "QQuickOverlay"; isReadonly: true; isPointer: true } - Property { name: "modal"; type: "QQmlComponent"; isPointer: true } - Property { name: "modeless"; type: "QQmlComponent"; isPointer: true } - Signal { name: "pressed" } - Signal { name: "released" } - } - Component { - name: "QQuickPage" - defaultProperty: "contentData" - prototype: "QQuickPane" - exports: [ - "QtQuick.Templates/Page 2.0", - "QtQuick.Templates/Page 2.1", - "QtQuick.Templates/Page 2.5" - ] - exportMetaObjectRevisions: [0, 1, 5] - Property { name: "title"; type: "string" } - Property { name: "header"; type: "QQuickItem"; isPointer: true } - Property { name: "footer"; type: "QQuickItem"; isPointer: true } - Property { name: "contentWidth"; revision: 1; type: "double" } - Property { name: "contentHeight"; revision: 1; type: "double" } - Property { name: "implicitHeaderWidth"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitHeaderHeight"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitFooterWidth"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitFooterHeight"; revision: 5; type: "double"; isReadonly: true } - } - Component { - name: "QQuickPageIndicator" - defaultProperty: "data" - prototype: "QQuickControl" - exports: ["QtQuick.Templates/PageIndicator 2.0"] - exportMetaObjectRevisions: [0] - Property { name: "count"; type: "int" } - Property { name: "currentIndex"; type: "int" } - Property { name: "interactive"; type: "bool" } - Property { name: "delegate"; type: "QQmlComponent"; isPointer: true } - } - Component { - name: "QQuickPane" - defaultProperty: "contentData" - prototype: "QQuickControl" - exports: ["QtQuick.Templates/Pane 2.0"] - exportMetaObjectRevisions: [0] - Property { name: "contentWidth"; type: "double" } - Property { name: "contentHeight"; type: "double" } - Property { name: "contentData"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "contentChildren"; type: "QQuickItem"; isList: true; isReadonly: true } - } - Component { - name: "QQuickPopup" - defaultProperty: "contentData" - prototype: "QObject" - exports: [ - "QtQuick.Templates/Popup 2.0", - "QtQuick.Templates/Popup 2.1", - "QtQuick.Templates/Popup 2.3", - "QtQuick.Templates/Popup 2.5" - ] - exportMetaObjectRevisions: [0, 1, 3, 5] - Enum { - name: "ClosePolicy" - values: { - "NoAutoClose": 0, - "CloseOnPressOutside": 1, - "CloseOnPressOutsideParent": 2, - "CloseOnReleaseOutside": 4, - "CloseOnReleaseOutsideParent": 8, - "CloseOnEscape": 16 - } - } - Enum { - name: "TransformOrigin" - values: { - "TopLeft": 0, - "Top": 1, - "TopRight": 2, - "Left": 3, - "Center": 4, - "Right": 5, - "BottomLeft": 6, - "Bottom": 7, - "BottomRight": 8 - } - } - Property { name: "x"; type: "double" } - Property { name: "y"; type: "double" } - Property { name: "z"; type: "double" } - Property { name: "width"; type: "double" } - Property { name: "height"; type: "double" } - Property { name: "implicitWidth"; type: "double" } - Property { name: "implicitHeight"; type: "double" } - Property { name: "contentWidth"; type: "double" } - Property { name: "contentHeight"; type: "double" } - Property { name: "availableWidth"; type: "double"; isReadonly: true } - Property { name: "availableHeight"; type: "double"; isReadonly: true } - Property { name: "margins"; type: "double" } - Property { name: "topMargin"; type: "double" } - Property { name: "leftMargin"; type: "double" } - Property { name: "rightMargin"; type: "double" } - Property { name: "bottomMargin"; type: "double" } - Property { name: "padding"; type: "double" } - Property { name: "topPadding"; type: "double" } - Property { name: "leftPadding"; type: "double" } - Property { name: "rightPadding"; type: "double" } - Property { name: "bottomPadding"; type: "double" } - Property { name: "locale"; type: "QLocale" } - Property { name: "font"; type: "QFont" } - Property { name: "parent"; type: "QQuickItem"; isPointer: true } - Property { name: "background"; type: "QQuickItem"; isPointer: true } - Property { name: "contentItem"; type: "QQuickItem"; isPointer: true } - Property { name: "contentData"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "contentChildren"; type: "QQuickItem"; isList: true; isReadonly: true } - Property { name: "clip"; type: "bool" } - Property { name: "focus"; type: "bool" } - Property { name: "activeFocus"; type: "bool"; isReadonly: true } - Property { name: "modal"; type: "bool" } - Property { name: "dim"; type: "bool" } - Property { name: "visible"; type: "bool" } - Property { name: "opacity"; type: "double" } - Property { name: "scale"; type: "double" } - Property { name: "closePolicy"; type: "ClosePolicy" } - Property { name: "transformOrigin"; type: "TransformOrigin" } - Property { name: "enter"; type: "QQuickTransition"; isPointer: true } - Property { name: "exit"; type: "QQuickTransition"; isPointer: true } - Property { name: "spacing"; revision: 1; type: "double" } - Property { name: "opened"; revision: 3; type: "bool"; isReadonly: true } - Property { name: "mirrored"; revision: 3; type: "bool"; isReadonly: true } - Property { name: "enabled"; revision: 3; type: "bool" } - Property { name: "palette"; revision: 3; type: "QPalette" } - Property { name: "horizontalPadding"; type: "double" } - Property { name: "verticalPadding"; type: "double" } - Property { - name: "anchors" - revision: 5 - type: "QQuickPopupAnchors" - isReadonly: true - isPointer: true - } - Property { name: "implicitContentWidth"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitContentHeight"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitBackgroundWidth"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitBackgroundHeight"; revision: 5; type: "double"; isReadonly: true } - Property { name: "topInset"; revision: 5; type: "double" } - Property { name: "leftInset"; revision: 5; type: "double" } - Property { name: "rightInset"; revision: 5; type: "double" } - Property { name: "bottomInset"; revision: 5; type: "double" } - Signal { name: "opened" } - Signal { name: "closed" } - Signal { name: "aboutToShow" } - Signal { name: "aboutToHide" } - Signal { - name: "windowChanged" - Parameter { name: "window"; type: "QQuickWindow"; isPointer: true } - } - Signal { name: "spacingChanged"; revision: 1 } - Signal { name: "openedChanged"; revision: 3 } - Signal { name: "mirroredChanged"; revision: 3 } - Signal { name: "enabledChanged"; revision: 3 } - Signal { name: "paletteChanged"; revision: 3 } - Signal { name: "horizontalPaddingChanged"; revision: 5 } - Signal { name: "verticalPaddingChanged"; revision: 5 } - Signal { name: "implicitContentWidthChanged"; revision: 5 } - Signal { name: "implicitContentHeightChanged"; revision: 5 } - Signal { name: "implicitBackgroundWidthChanged"; revision: 5 } - Signal { name: "implicitBackgroundHeightChanged"; revision: 5 } - Signal { name: "topInsetChanged"; revision: 5 } - Signal { name: "leftInsetChanged"; revision: 5 } - Signal { name: "rightInsetChanged"; revision: 5 } - Signal { name: "bottomInsetChanged"; revision: 5 } - Method { name: "open" } - Method { name: "close" } - Method { - name: "forceActiveFocus" - Parameter { name: "reason"; type: "Qt::FocusReason" } - } - Method { name: "forceActiveFocus" } - } - Component { - name: "QQuickPopupAnchors" - prototype: "QObject" - Property { name: "centerIn"; type: "QQuickItem"; isPointer: true } - } - Component { name: "QQuickPopupItem"; defaultProperty: "contentData"; prototype: "QQuickPage" } - Component { - name: "QQuickProgressBar" - defaultProperty: "data" - prototype: "QQuickControl" - exports: ["QtQuick.Templates/ProgressBar 2.0"] - exportMetaObjectRevisions: [0] - Property { name: "from"; type: "double" } - Property { name: "to"; type: "double" } - Property { name: "value"; type: "double" } - Property { name: "position"; type: "double"; isReadonly: true } - Property { name: "visualPosition"; type: "double"; isReadonly: true } - Property { name: "indeterminate"; type: "bool" } - } - Component { - name: "QQuickRadioButton" - defaultProperty: "data" - prototype: "QQuickAbstractButton" - exports: ["QtQuick.Templates/RadioButton 2.0"] - exportMetaObjectRevisions: [0] - } - Component { - name: "QQuickRadioDelegate" - defaultProperty: "data" - prototype: "QQuickItemDelegate" - exports: ["QtQuick.Templates/RadioDelegate 2.0"] - exportMetaObjectRevisions: [0] - } - Component { - name: "QQuickRangeSlider" - defaultProperty: "data" - prototype: "QQuickControl" - exports: [ - "QtQuick.Templates/RangeSlider 2.0", - "QtQuick.Templates/RangeSlider 2.1", - "QtQuick.Templates/RangeSlider 2.2", - "QtQuick.Templates/RangeSlider 2.3", - "QtQuick.Templates/RangeSlider 2.5" - ] - exportMetaObjectRevisions: [0, 1, 2, 3, 5] - Enum { - name: "SnapMode" - values: { - "NoSnap": 0, - "SnapAlways": 1, - "SnapOnRelease": 2 - } - } - Property { name: "from"; type: "double" } - Property { name: "to"; type: "double" } - Property { name: "first"; type: "QQuickRangeSliderNode"; isReadonly: true; isPointer: true } - Property { name: "second"; type: "QQuickRangeSliderNode"; isReadonly: true; isPointer: true } - Property { name: "stepSize"; type: "double" } - Property { name: "snapMode"; type: "SnapMode" } - Property { name: "orientation"; type: "Qt::Orientation" } - Property { name: "live"; revision: 2; type: "bool" } - Property { name: "horizontal"; revision: 3; type: "bool"; isReadonly: true } - Property { name: "vertical"; revision: 3; type: "bool"; isReadonly: true } - Property { name: "touchDragThreshold"; revision: 5; type: "double" } - Signal { name: "liveChanged"; revision: 2 } - Signal { name: "touchDragThresholdChanged"; revision: 5 } - Method { - name: "setValues" - Parameter { name: "firstValue"; type: "double" } - Parameter { name: "secondValue"; type: "double" } - } - Method { - name: "valueAt" - revision: 5 - type: "double" - Parameter { name: "position"; type: "double" } - } - } - Component { - name: "QQuickRangeSliderNode" - prototype: "QObject" - Property { name: "value"; type: "double" } - Property { name: "position"; type: "double"; isReadonly: true } - Property { name: "visualPosition"; type: "double"; isReadonly: true } - Property { name: "handle"; type: "QQuickItem"; isPointer: true } - Property { name: "pressed"; type: "bool" } - Property { name: "hovered"; revision: 1; type: "bool" } - Property { name: "implicitHandleWidth"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitHandleHeight"; revision: 5; type: "double"; isReadonly: true } - Signal { name: "hoveredChanged"; revision: 1 } - Signal { name: "moved" } - Method { name: "increase" } - Method { name: "decrease" } - } - Component { - name: "QQuickRootItem" - defaultProperty: "data" - prototype: "QQuickItem" - Method { - name: "setWidth" - Parameter { name: "w"; type: "int" } - } - Method { - name: "setHeight" - Parameter { name: "h"; type: "int" } - } - } - Component { - name: "QQuickRoundButton" - defaultProperty: "data" - prototype: "QQuickButton" - exports: ["QtQuick.Templates/RoundButton 2.1"] - exportMetaObjectRevisions: [0] - Property { name: "radius"; type: "double" } - } - Component { - name: "QQuickScrollBar" - defaultProperty: "data" - prototype: "QQuickControl" - exports: [ - "QtQuick.Templates/ScrollBar 2.0", - "QtQuick.Templates/ScrollBar 2.2", - "QtQuick.Templates/ScrollBar 2.3", - "QtQuick.Templates/ScrollBar 2.4" - ] - exportMetaObjectRevisions: [0, 2, 3, 4] - attachedType: "QQuickScrollBarAttached" - Enum { - name: "SnapMode" - values: { - "NoSnap": 0, - "SnapAlways": 1, - "SnapOnRelease": 2 - } - } - Enum { - name: "Policy" - values: { - "AsNeeded": 0, - "AlwaysOff": 1, - "AlwaysOn": 2 - } - } - Property { name: "size"; type: "double" } - Property { name: "position"; type: "double" } - Property { name: "stepSize"; type: "double" } - Property { name: "active"; type: "bool" } - Property { name: "pressed"; type: "bool" } - Property { name: "orientation"; type: "Qt::Orientation" } - Property { name: "snapMode"; revision: 2; type: "SnapMode" } - Property { name: "interactive"; revision: 2; type: "bool" } - Property { name: "policy"; revision: 2; type: "Policy" } - Property { name: "horizontal"; revision: 3; type: "bool"; isReadonly: true } - Property { name: "vertical"; revision: 3; type: "bool"; isReadonly: true } - Property { name: "minimumSize"; revision: 4; type: "double" } - Property { name: "visualSize"; revision: 4; type: "double"; isReadonly: true } - Property { name: "visualPosition"; revision: 4; type: "double"; isReadonly: true } - Signal { name: "snapModeChanged"; revision: 2 } - Signal { name: "interactiveChanged"; revision: 2 } - Signal { name: "policyChanged"; revision: 2 } - Signal { name: "minimumSizeChanged"; revision: 4 } - Signal { name: "visualSizeChanged"; revision: 4 } - Signal { name: "visualPositionChanged"; revision: 4 } - Method { name: "increase" } - Method { name: "decrease" } - Method { - name: "setSize" - Parameter { name: "size"; type: "double" } - } - Method { - name: "setPosition" - Parameter { name: "position"; type: "double" } - } - } - Component { - name: "QQuickScrollBarAttached" - prototype: "QObject" - Property { name: "horizontal"; type: "QQuickScrollBar"; isPointer: true } - Property { name: "vertical"; type: "QQuickScrollBar"; isPointer: true } - } - Component { - name: "QQuickScrollIndicator" - defaultProperty: "data" - prototype: "QQuickControl" - exports: [ - "QtQuick.Templates/ScrollIndicator 2.0", - "QtQuick.Templates/ScrollIndicator 2.3", - "QtQuick.Templates/ScrollIndicator 2.4" - ] - exportMetaObjectRevisions: [0, 3, 4] - attachedType: "QQuickScrollIndicatorAttached" - Property { name: "size"; type: "double" } - Property { name: "position"; type: "double" } - Property { name: "active"; type: "bool" } - Property { name: "orientation"; type: "Qt::Orientation" } - Property { name: "horizontal"; revision: 3; type: "bool"; isReadonly: true } - Property { name: "vertical"; revision: 3; type: "bool"; isReadonly: true } - Property { name: "minimumSize"; revision: 4; type: "double" } - Property { name: "visualSize"; revision: 4; type: "double"; isReadonly: true } - Property { name: "visualPosition"; revision: 4; type: "double"; isReadonly: true } - Signal { name: "minimumSizeChanged"; revision: 4 } - Signal { name: "visualSizeChanged"; revision: 4 } - Signal { name: "visualPositionChanged"; revision: 4 } - Method { - name: "setSize" - Parameter { name: "size"; type: "double" } - } - Method { - name: "setPosition" - Parameter { name: "position"; type: "double" } - } - } - Component { - name: "QQuickScrollIndicatorAttached" - prototype: "QObject" - Property { name: "horizontal"; type: "QQuickScrollIndicator"; isPointer: true } - Property { name: "vertical"; type: "QQuickScrollIndicator"; isPointer: true } - } - Component { - name: "QQuickScrollView" - defaultProperty: "contentData" - prototype: "QQuickPane" - exports: ["QtQuick.Templates/ScrollView 2.2"] - exportMetaObjectRevisions: [0] - } - Component { - name: "QQuickSlider" - defaultProperty: "data" - prototype: "QQuickControl" - exports: [ - "QtQuick.Templates/Slider 2.0", - "QtQuick.Templates/Slider 2.1", - "QtQuick.Templates/Slider 2.2", - "QtQuick.Templates/Slider 2.3", - "QtQuick.Templates/Slider 2.5" - ] - exportMetaObjectRevisions: [0, 1, 2, 3, 5] - Enum { - name: "SnapMode" - values: { - "NoSnap": 0, - "SnapAlways": 1, - "SnapOnRelease": 2 - } - } - Property { name: "from"; type: "double" } - Property { name: "to"; type: "double" } - Property { name: "value"; type: "double" } - Property { name: "position"; type: "double"; isReadonly: true } - Property { name: "visualPosition"; type: "double"; isReadonly: true } - Property { name: "stepSize"; type: "double" } - Property { name: "snapMode"; type: "SnapMode" } - Property { name: "pressed"; type: "bool" } - Property { name: "orientation"; type: "Qt::Orientation" } - Property { name: "handle"; type: "QQuickItem"; isPointer: true } - Property { name: "live"; revision: 2; type: "bool" } - Property { name: "horizontal"; revision: 3; type: "bool"; isReadonly: true } - Property { name: "vertical"; revision: 3; type: "bool"; isReadonly: true } - Property { name: "touchDragThreshold"; revision: 5; type: "double" } - Property { name: "implicitHandleWidth"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitHandleHeight"; revision: 5; type: "double"; isReadonly: true } - Signal { name: "moved"; revision: 2 } - Signal { name: "liveChanged"; revision: 2 } - Signal { name: "touchDragThresholdChanged"; revision: 5 } - Signal { name: "implicitHandleWidthChanged"; revision: 5 } - Signal { name: "implicitHandleHeightChanged"; revision: 5 } - Method { name: "increase" } - Method { name: "decrease" } - Method { - name: "valueAt" - revision: 1 - type: "double" - Parameter { name: "position"; type: "double" } - } - } - Component { - name: "QQuickSpinBox" - defaultProperty: "data" - prototype: "QQuickControl" - exports: [ - "QtQuick.Templates/SpinBox 2.0", - "QtQuick.Templates/SpinBox 2.1", - "QtQuick.Templates/SpinBox 2.2", - "QtQuick.Templates/SpinBox 2.3", - "QtQuick.Templates/SpinBox 2.4", - "QtQuick.Templates/SpinBox 2.5" - ] - exportMetaObjectRevisions: [0, 1, 2, 3, 4, 5] - Property { name: "from"; type: "int" } - Property { name: "to"; type: "int" } - Property { name: "value"; type: "int" } - Property { name: "stepSize"; type: "int" } - Property { name: "editable"; type: "bool" } - Property { name: "validator"; type: "QValidator"; isPointer: true } - Property { name: "textFromValue"; type: "QJSValue" } - Property { name: "valueFromText"; type: "QJSValue" } - Property { name: "up"; type: "QQuickSpinButton"; isReadonly: true; isPointer: true } - Property { name: "down"; type: "QQuickSpinButton"; isReadonly: true; isPointer: true } - Property { name: "inputMethodHints"; revision: 2; type: "Qt::InputMethodHints" } - Property { name: "inputMethodComposing"; revision: 2; type: "bool"; isReadonly: true } - Property { name: "wrap"; revision: 3; type: "bool" } - Property { name: "displayText"; revision: 4; type: "string"; isReadonly: true } - Signal { name: "valueModified"; revision: 2 } - Signal { name: "inputMethodHintsChanged"; revision: 2 } - Signal { name: "inputMethodComposingChanged"; revision: 2 } - Signal { name: "wrapChanged"; revision: 3 } - Signal { name: "displayTextChanged"; revision: 4 } - Method { name: "increase" } - Method { name: "decrease" } - } - Component { - name: "QQuickSpinButton" - prototype: "QObject" - Property { name: "pressed"; type: "bool" } - Property { name: "indicator"; type: "QQuickItem"; isPointer: true } - Property { name: "hovered"; revision: 1; type: "bool" } - Property { name: "implicitIndicatorWidth"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitIndicatorHeight"; revision: 5; type: "double"; isReadonly: true } - Signal { name: "hoveredChanged"; revision: 1 } - Signal { name: "implicitIndicatorWidthChanged"; revision: 5 } - Signal { name: "implicitIndicatorHeightChanged"; revision: 5 } - } - Component { - name: "QQuickSplitHandleAttached" - prototype: "QObject" - exports: ["QtQuick.Templates/SplitHandle 2.13"] - isCreatable: false - exportMetaObjectRevisions: [0] - Property { name: "hovered"; type: "bool"; isReadonly: true } - Property { name: "pressed"; type: "bool"; isReadonly: true } - } - Component { - name: "QQuickSplitView" - defaultProperty: "contentData" - prototype: "QQuickContainer" - exports: ["QtQuick.Templates/SplitView 2.13"] - exportMetaObjectRevisions: [0] - attachedType: "QQuickSplitViewAttached" - Property { name: "orientation"; type: "Qt::Orientation" } - Property { name: "resizing"; type: "bool"; isReadonly: true } - Property { name: "handle"; type: "QQmlComponent"; isPointer: true } - Method { name: "saveState"; type: "QVariant" } - Method { - name: "restoreState" - type: "bool" - Parameter { name: "state"; type: "QVariant" } - } - } - Component { - name: "QQuickSplitViewAttached" - prototype: "QObject" - Property { name: "view"; type: "QQuickSplitView"; isReadonly: true; isPointer: true } - Property { name: "minimumWidth"; type: "double" } - Property { name: "minimumHeight"; type: "double" } - Property { name: "preferredWidth"; type: "double" } - Property { name: "preferredHeight"; type: "double" } - Property { name: "maximumWidth"; type: "double" } - Property { name: "maximumHeight"; type: "double" } - Property { name: "fillHeight"; type: "bool" } - Property { name: "fillWidth"; type: "bool" } - } - Component { - name: "QQuickStackView" - defaultProperty: "data" - prototype: "QQuickControl" - exports: [ - "QtQuick.Templates/StackView 2.0", - "QtQuick.Templates/StackView 2.1" - ] - exportMetaObjectRevisions: [0, 1] - attachedType: "QQuickStackViewAttached" - Enum { - name: "Status" - values: { - "Inactive": 0, - "Deactivating": 1, - "Activating": 2, - "Active": 3 - } - } - Enum { - name: "LoadBehavior" - values: { - "DontLoad": 0, - "ForceLoad": 1 - } - } - Enum { - name: "Operation" - values: { - "Transition": -1, - "Immediate": 0, - "PushTransition": 1, - "ReplaceTransition": 2, - "PopTransition": 3 - } - } - Property { name: "busy"; type: "bool"; isReadonly: true } - Property { name: "depth"; type: "int"; isReadonly: true } - Property { name: "currentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } - Property { name: "initialItem"; type: "QJSValue" } - Property { name: "popEnter"; type: "QQuickTransition"; isPointer: true } - Property { name: "popExit"; type: "QQuickTransition"; isPointer: true } - Property { name: "pushEnter"; type: "QQuickTransition"; isPointer: true } - Property { name: "pushExit"; type: "QQuickTransition"; isPointer: true } - Property { name: "replaceEnter"; type: "QQuickTransition"; isPointer: true } - Property { name: "replaceExit"; type: "QQuickTransition"; isPointer: true } - Property { name: "empty"; revision: 3; type: "bool"; isReadonly: true } - Signal { name: "emptyChanged"; revision: 3 } - Method { - name: "clear" - Parameter { name: "operation"; type: "Operation" } - } - Method { name: "clear" } - Method { - name: "get" - type: "QQuickItem*" - Parameter { name: "index"; type: "int" } - Parameter { name: "behavior"; type: "LoadBehavior" } - } - Method { - name: "get" - type: "QQuickItem*" - Parameter { name: "index"; type: "int" } - } - Method { - name: "find" - type: "QQuickItem*" - Parameter { name: "callback"; type: "QJSValue" } - Parameter { name: "behavior"; type: "LoadBehavior" } - } - Method { - name: "find" - type: "QQuickItem*" - Parameter { name: "callback"; type: "QJSValue" } - } - Method { - name: "push" - Parameter { name: "args"; type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "pop" - Parameter { name: "args"; type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "replace" - Parameter { name: "args"; type: "QQmlV4Function"; isPointer: true } - } - } - Component { - name: "QQuickStackViewAttached" - prototype: "QObject" - Property { name: "index"; type: "int"; isReadonly: true } - Property { name: "view"; type: "QQuickStackView"; isReadonly: true; isPointer: true } - Property { name: "status"; type: "QQuickStackView::Status"; isReadonly: true } - Property { name: "visible"; type: "bool" } - Signal { name: "activated" } - Signal { name: "activating" } - Signal { name: "deactivated" } - Signal { name: "deactivating" } - Signal { name: "removed" } - } - Component { - name: "QQuickSwipe" - prototype: "QObject" - Property { name: "position"; type: "double" } - Property { name: "complete"; type: "bool"; isReadonly: true } - Property { name: "left"; type: "QQmlComponent"; isPointer: true } - Property { name: "behind"; type: "QQmlComponent"; isPointer: true } - Property { name: "right"; type: "QQmlComponent"; isPointer: true } - Property { name: "leftItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } - Property { name: "behindItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } - Property { name: "rightItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } - Property { name: "enabled"; type: "bool" } - Property { name: "transition"; type: "QQuickTransition"; isPointer: true } - Signal { name: "completed" } - Signal { name: "opened" } - Signal { name: "closed" } - Method { name: "close"; revision: 1 } - Method { - name: "open" - revision: 2 - Parameter { name: "side"; type: "QQuickSwipeDelegate::Side" } - } - } - Component { - name: "QQuickSwipeDelegate" - defaultProperty: "data" - prototype: "QQuickItemDelegate" - exports: [ - "QtQuick.Templates/SwipeDelegate 2.0", - "QtQuick.Templates/SwipeDelegate 2.1", - "QtQuick.Templates/SwipeDelegate 2.2" - ] - exportMetaObjectRevisions: [0, 1, 2] - attachedType: "QQuickSwipeDelegateAttached" - Enum { - name: "Side" - values: { - "Left": 1, - "Right": -1 - } - } - Property { name: "swipe"; type: "QQuickSwipe"; isReadonly: true; isPointer: true } - } - Component { - name: "QQuickSwipeDelegateAttached" - prototype: "QObject" - Property { name: "pressed"; type: "bool"; isReadonly: true } - Signal { name: "clicked" } - } - Component { - name: "QQuickSwipeView" - defaultProperty: "contentData" - prototype: "QQuickContainer" - exports: [ - "QtQuick.Templates/SwipeView 2.0", - "QtQuick.Templates/SwipeView 2.1", - "QtQuick.Templates/SwipeView 2.2" - ] - exportMetaObjectRevisions: [0, 1, 2] - attachedType: "QQuickSwipeViewAttached" - Property { name: "interactive"; revision: 1; type: "bool" } - Property { name: "orientation"; revision: 2; type: "Qt::Orientation" } - Property { name: "horizontal"; revision: 3; type: "bool"; isReadonly: true } - Property { name: "vertical"; revision: 3; type: "bool"; isReadonly: true } - Signal { name: "interactiveChanged"; revision: 1 } - Signal { name: "orientationChanged"; revision: 2 } - } - Component { - name: "QQuickSwipeViewAttached" - prototype: "QObject" - Property { name: "index"; type: "int"; isReadonly: true } - Property { name: "isCurrentItem"; type: "bool"; isReadonly: true } - Property { name: "view"; type: "QQuickSwipeView"; isReadonly: true; isPointer: true } - Property { name: "isNextItem"; revision: 1; type: "bool"; isReadonly: true } - Property { name: "isPreviousItem"; revision: 1; type: "bool"; isReadonly: true } - } - Component { - name: "QQuickSwitch" - defaultProperty: "data" - prototype: "QQuickAbstractButton" - exports: ["QtQuick.Templates/Switch 2.0"] - exportMetaObjectRevisions: [0] - Property { name: "position"; type: "double" } - Property { name: "visualPosition"; type: "double"; isReadonly: true } - } - Component { - name: "QQuickSwitchDelegate" - defaultProperty: "data" - prototype: "QQuickItemDelegate" - exports: ["QtQuick.Templates/SwitchDelegate 2.0"] - exportMetaObjectRevisions: [0] - Property { name: "position"; type: "double" } - Property { name: "visualPosition"; type: "double"; isReadonly: true } - } - Component { - name: "QQuickTabBar" - defaultProperty: "contentData" - prototype: "QQuickContainer" - exports: [ - "QtQuick.Templates/TabBar 2.0", - "QtQuick.Templates/TabBar 2.2" - ] - exportMetaObjectRevisions: [0, 2] - attachedType: "QQuickTabBarAttached" - Enum { - name: "Position" - values: { - "Header": 0, - "Footer": 1 - } - } - Property { name: "position"; type: "Position" } - Property { name: "contentWidth"; revision: 2; type: "double" } - Property { name: "contentHeight"; revision: 2; type: "double" } - } - Component { - name: "QQuickTabBarAttached" - prototype: "QObject" - Property { name: "index"; type: "int"; isReadonly: true } - Property { name: "tabBar"; type: "QQuickTabBar"; isReadonly: true; isPointer: true } - Property { name: "position"; type: "QQuickTabBar::Position"; isReadonly: true } - } - Component { - name: "QQuickTabButton" - defaultProperty: "data" - prototype: "QQuickAbstractButton" - exports: ["QtQuick.Templates/TabButton 2.0"] - exportMetaObjectRevisions: [0] - } - Component { - name: "QQuickText" - defaultProperty: "data" - prototype: "QQuickImplicitSizeItem" - Enum { - name: "HAlignment" - values: { - "AlignLeft": 1, - "AlignRight": 2, - "AlignHCenter": 4, - "AlignJustify": 8 - } - } - Enum { - name: "VAlignment" - values: { - "AlignTop": 32, - "AlignBottom": 64, - "AlignVCenter": 128 - } - } - Enum { - name: "TextStyle" - values: { - "Normal": 0, - "Outline": 1, - "Raised": 2, - "Sunken": 3 - } - } - Enum { - name: "TextFormat" - values: { - "PlainText": 0, - "RichText": 1, - "MarkdownText": 3, - "AutoText": 2, - "StyledText": 4 - } - } - Enum { - name: "TextElideMode" - values: { - "ElideLeft": 0, - "ElideRight": 1, - "ElideMiddle": 2, - "ElideNone": 3 - } - } - Enum { - name: "WrapMode" - values: { - "NoWrap": 0, - "WordWrap": 1, - "WrapAnywhere": 3, - "WrapAtWordBoundaryOrAnywhere": 4, - "Wrap": 4 - } - } - Enum { - name: "RenderType" - values: { - "QtRendering": 0, - "NativeRendering": 1 - } - } - Enum { - name: "LineHeightMode" - values: { - "ProportionalHeight": 0, - "FixedHeight": 1 - } - } - Enum { - name: "FontSizeMode" - values: { - "FixedSize": 0, - "HorizontalFit": 1, - "VerticalFit": 2, - "Fit": 3 - } - } - Property { name: "text"; type: "string" } - Property { name: "font"; type: "QFont" } - Property { name: "color"; type: "QColor" } - Property { name: "linkColor"; type: "QColor" } - Property { name: "style"; type: "TextStyle" } - Property { name: "styleColor"; type: "QColor" } - Property { name: "horizontalAlignment"; type: "HAlignment" } - Property { name: "effectiveHorizontalAlignment"; type: "HAlignment"; isReadonly: true } - Property { name: "verticalAlignment"; type: "VAlignment" } - Property { name: "wrapMode"; type: "WrapMode" } - Property { name: "lineCount"; type: "int"; isReadonly: true } - Property { name: "truncated"; type: "bool"; isReadonly: true } - Property { name: "maximumLineCount"; type: "int" } - Property { name: "textFormat"; type: "TextFormat" } - Property { name: "elide"; type: "TextElideMode" } - Property { name: "contentWidth"; type: "double"; isReadonly: true } - Property { name: "contentHeight"; type: "double"; isReadonly: true } - Property { name: "paintedWidth"; type: "double"; isReadonly: true } - Property { name: "paintedHeight"; type: "double"; isReadonly: true } - Property { name: "lineHeight"; type: "double" } - Property { name: "lineHeightMode"; type: "LineHeightMode" } - Property { name: "baseUrl"; type: "QUrl" } - Property { name: "minimumPixelSize"; type: "int" } - Property { name: "minimumPointSize"; type: "int" } - Property { name: "fontSizeMode"; type: "FontSizeMode" } - Property { name: "renderType"; type: "RenderType" } - Property { name: "hoveredLink"; revision: 2; type: "string"; isReadonly: true } - Property { name: "padding"; revision: 6; type: "double" } - Property { name: "topPadding"; revision: 6; type: "double" } - Property { name: "leftPadding"; revision: 6; type: "double" } - Property { name: "rightPadding"; revision: 6; type: "double" } - Property { name: "bottomPadding"; revision: 6; type: "double" } - Property { name: "fontInfo"; revision: 9; type: "QJSValue"; isReadonly: true } - Property { name: "advance"; revision: 10; type: "QSizeF"; isReadonly: true } - Signal { - name: "textChanged" - Parameter { name: "text"; type: "string" } - } - Signal { - name: "linkActivated" - Parameter { name: "link"; type: "string" } - } - Signal { - name: "linkHovered" - revision: 2 - Parameter { name: "link"; type: "string" } - } - Signal { - name: "fontChanged" - Parameter { name: "font"; type: "QFont" } - } - Signal { - name: "styleChanged" - Parameter { name: "style"; type: "QQuickText::TextStyle" } - } - Signal { - name: "horizontalAlignmentChanged" - Parameter { name: "alignment"; type: "QQuickText::HAlignment" } - } - Signal { - name: "verticalAlignmentChanged" - Parameter { name: "alignment"; type: "QQuickText::VAlignment" } - } - Signal { - name: "textFormatChanged" - Parameter { name: "textFormat"; type: "QQuickText::TextFormat" } - } - Signal { - name: "elideModeChanged" - Parameter { name: "mode"; type: "QQuickText::TextElideMode" } - } - Signal { name: "contentSizeChanged" } - Signal { - name: "contentWidthChanged" - Parameter { name: "contentWidth"; type: "double" } - } - Signal { - name: "contentHeightChanged" - Parameter { name: "contentHeight"; type: "double" } - } - Signal { - name: "lineHeightChanged" - Parameter { name: "lineHeight"; type: "double" } - } - Signal { - name: "lineHeightModeChanged" - Parameter { name: "mode"; type: "LineHeightMode" } - } - Signal { - name: "lineLaidOut" - Parameter { name: "line"; type: "QQuickTextLine"; isPointer: true } - } - Signal { name: "paddingChanged"; revision: 6 } - Signal { name: "topPaddingChanged"; revision: 6 } - Signal { name: "leftPaddingChanged"; revision: 6 } - Signal { name: "rightPaddingChanged"; revision: 6 } - Signal { name: "bottomPaddingChanged"; revision: 6 } - Signal { name: "fontInfoChanged"; revision: 9 } - Method { name: "doLayout" } - Method { name: "forceLayout"; revision: 9 } - Method { - name: "linkAt" - revision: 3 - type: "string" - Parameter { name: "x"; type: "double" } - Parameter { name: "y"; type: "double" } - } - } - Component { - name: "QQuickTextArea" - defaultProperty: "data" - prototype: "QQuickTextEdit" - exports: [ - "QtQuick.Templates/TextArea 2.0", - "QtQuick.Templates/TextArea 2.1", - "QtQuick.Templates/TextArea 2.3", - "QtQuick.Templates/TextArea 2.5" - ] - exportMetaObjectRevisions: [0, 1, 3, 5] - attachedType: "QQuickTextAreaAttached" - Property { name: "font"; type: "QFont" } - Property { name: "implicitWidth"; type: "double" } - Property { name: "implicitHeight"; type: "double" } - Property { name: "background"; type: "QQuickItem"; isPointer: true } - Property { name: "placeholderText"; type: "string" } - Property { name: "focusReason"; type: "Qt::FocusReason" } - Property { name: "hovered"; revision: 1; type: "bool"; isReadonly: true } - Property { name: "hoverEnabled"; revision: 1; type: "bool" } - Property { name: "palette"; revision: 3; type: "QPalette" } - Property { name: "placeholderTextColor"; revision: 5; type: "QColor" } - Property { name: "implicitBackgroundWidth"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitBackgroundHeight"; revision: 5; type: "double"; isReadonly: true } - Property { name: "topInset"; revision: 5; type: "double" } - Property { name: "leftInset"; revision: 5; type: "double" } - Property { name: "rightInset"; revision: 5; type: "double" } - Property { name: "bottomInset"; revision: 5; type: "double" } - Signal { name: "implicitWidthChanged3" } - Signal { name: "implicitHeightChanged3" } - Signal { - name: "pressAndHold" - Parameter { name: "event"; type: "QQuickMouseEvent"; isPointer: true } - } - Signal { - name: "pressed" - revision: 1 - Parameter { name: "event"; type: "QQuickMouseEvent"; isPointer: true } - } - Signal { - name: "released" - revision: 1 - Parameter { name: "event"; type: "QQuickMouseEvent"; isPointer: true } - } - Signal { name: "hoveredChanged"; revision: 1 } - Signal { name: "hoverEnabledChanged"; revision: 1 } - Signal { name: "paletteChanged"; revision: 3 } - Signal { name: "placeholderTextColorChanged"; revision: 5 } - Signal { name: "implicitBackgroundWidthChanged"; revision: 5 } - Signal { name: "implicitBackgroundHeightChanged"; revision: 5 } - Signal { name: "topInsetChanged"; revision: 5 } - Signal { name: "leftInsetChanged"; revision: 5 } - Signal { name: "rightInsetChanged"; revision: 5 } - Signal { name: "bottomInsetChanged"; revision: 5 } - } - Component { - name: "QQuickTextAreaAttached" - prototype: "QObject" - Property { name: "flickable"; type: "QQuickTextArea"; isPointer: true } - } - Component { - name: "QQuickTextEdit" - defaultProperty: "data" - prototype: "QQuickImplicitSizeItem" - Enum { - name: "HAlignment" - values: { - "AlignLeft": 1, - "AlignRight": 2, - "AlignHCenter": 4, - "AlignJustify": 8 - } - } - Enum { - name: "VAlignment" - values: { - "AlignTop": 32, - "AlignBottom": 64, - "AlignVCenter": 128 - } - } - Enum { - name: "TextFormat" - values: { - "PlainText": 0, - "RichText": 1, - "AutoText": 2, - "MarkdownText": 3 - } - } - Enum { - name: "WrapMode" - values: { - "NoWrap": 0, - "WordWrap": 1, - "WrapAnywhere": 3, - "WrapAtWordBoundaryOrAnywhere": 4, - "Wrap": 4 - } - } - Enum { - name: "SelectionMode" - values: { - "SelectCharacters": 0, - "SelectWords": 1 - } - } - Enum { - name: "RenderType" - values: { - "QtRendering": 0, - "NativeRendering": 1 - } - } - Property { name: "text"; type: "string" } - Property { name: "color"; type: "QColor" } - Property { name: "selectionColor"; type: "QColor" } - Property { name: "selectedTextColor"; type: "QColor" } - Property { name: "font"; type: "QFont" } - Property { name: "horizontalAlignment"; type: "HAlignment" } - Property { name: "effectiveHorizontalAlignment"; type: "HAlignment"; isReadonly: true } - Property { name: "verticalAlignment"; type: "VAlignment" } - Property { name: "wrapMode"; type: "WrapMode" } - Property { name: "lineCount"; type: "int"; isReadonly: true } - Property { name: "length"; type: "int"; isReadonly: true } - Property { name: "contentWidth"; type: "double"; isReadonly: true } - Property { name: "contentHeight"; type: "double"; isReadonly: true } - Property { name: "paintedWidth"; type: "double"; isReadonly: true } - Property { name: "paintedHeight"; type: "double"; isReadonly: true } - Property { name: "textFormat"; type: "TextFormat" } - Property { name: "readOnly"; type: "bool" } - Property { name: "cursorVisible"; type: "bool" } - Property { name: "cursorPosition"; type: "int" } - Property { name: "cursorRectangle"; type: "QRectF"; isReadonly: true } - Property { name: "cursorDelegate"; type: "QQmlComponent"; isPointer: true } - Property { name: "overwriteMode"; type: "bool" } - Property { name: "selectionStart"; type: "int"; isReadonly: true } - Property { name: "selectionEnd"; type: "int"; isReadonly: true } - Property { name: "selectedText"; type: "string"; isReadonly: true } - Property { name: "activeFocusOnPress"; type: "bool" } - Property { name: "persistentSelection"; type: "bool" } - Property { name: "textMargin"; type: "double" } - Property { name: "inputMethodHints"; type: "Qt::InputMethodHints" } - Property { name: "selectByKeyboard"; revision: 1; type: "bool" } - Property { name: "selectByMouse"; type: "bool" } - Property { name: "mouseSelectionMode"; type: "SelectionMode" } - Property { name: "canPaste"; type: "bool"; isReadonly: true } - Property { name: "canUndo"; type: "bool"; isReadonly: true } - Property { name: "canRedo"; type: "bool"; isReadonly: true } - Property { name: "inputMethodComposing"; type: "bool"; isReadonly: true } - Property { name: "baseUrl"; type: "QUrl" } - Property { name: "renderType"; type: "RenderType" } - Property { - name: "textDocument" - revision: 1 - type: "QQuickTextDocument" - isReadonly: true - isPointer: true - } - Property { name: "hoveredLink"; revision: 2; type: "string"; isReadonly: true } - Property { name: "padding"; revision: 6; type: "double" } - Property { name: "topPadding"; revision: 6; type: "double" } - Property { name: "leftPadding"; revision: 6; type: "double" } - Property { name: "rightPadding"; revision: 6; type: "double" } - Property { name: "bottomPadding"; revision: 6; type: "double" } - Property { name: "preeditText"; revision: 7; type: "string"; isReadonly: true } - Property { name: "tabStopDistance"; revision: 10; type: "double" } - Signal { name: "preeditTextChanged"; revision: 7 } - Signal { name: "contentSizeChanged" } - Signal { - name: "colorChanged" - Parameter { name: "color"; type: "QColor" } - } - Signal { - name: "selectionColorChanged" - Parameter { name: "color"; type: "QColor" } - } - Signal { - name: "selectedTextColorChanged" - Parameter { name: "color"; type: "QColor" } - } - Signal { - name: "fontChanged" - Parameter { name: "font"; type: "QFont" } - } - Signal { - name: "horizontalAlignmentChanged" - Parameter { name: "alignment"; type: "QQuickTextEdit::HAlignment" } - } - Signal { - name: "verticalAlignmentChanged" - Parameter { name: "alignment"; type: "QQuickTextEdit::VAlignment" } - } - Signal { - name: "textFormatChanged" - Parameter { name: "textFormat"; type: "QQuickTextEdit::TextFormat" } - } - Signal { - name: "readOnlyChanged" - Parameter { name: "isReadOnly"; type: "bool" } - } - Signal { - name: "cursorVisibleChanged" - Parameter { name: "isCursorVisible"; type: "bool" } - } - Signal { - name: "overwriteModeChanged" - Parameter { name: "overwriteMode"; type: "bool" } - } - Signal { - name: "activeFocusOnPressChanged" - Parameter { name: "activeFocusOnPressed"; type: "bool" } - } - Signal { - name: "persistentSelectionChanged" - Parameter { name: "isPersistentSelection"; type: "bool" } - } - Signal { - name: "textMarginChanged" - Parameter { name: "textMargin"; type: "double" } - } - Signal { - name: "selectByKeyboardChanged" - revision: 1 - Parameter { name: "selectByKeyboard"; type: "bool" } - } - Signal { - name: "selectByMouseChanged" - Parameter { name: "selectByMouse"; type: "bool" } - } - Signal { - name: "mouseSelectionModeChanged" - Parameter { name: "mode"; type: "QQuickTextEdit::SelectionMode" } - } - Signal { - name: "linkActivated" - Parameter { name: "link"; type: "string" } - } - Signal { - name: "linkHovered" - revision: 2 - Parameter { name: "link"; type: "string" } - } - Signal { name: "editingFinished"; revision: 6 } - Signal { name: "paddingChanged"; revision: 6 } - Signal { name: "topPaddingChanged"; revision: 6 } - Signal { name: "leftPaddingChanged"; revision: 6 } - Signal { name: "rightPaddingChanged"; revision: 6 } - Signal { name: "bottomPaddingChanged"; revision: 6 } - Signal { - name: "tabStopDistanceChanged" - revision: 10 - Parameter { name: "distance"; type: "double" } - } - Method { name: "selectAll" } - Method { name: "selectWord" } - Method { - name: "select" - Parameter { name: "start"; type: "int" } - Parameter { name: "end"; type: "int" } - } - Method { name: "deselect" } - Method { - name: "isRightToLeft" - type: "bool" - Parameter { name: "start"; type: "int" } - Parameter { name: "end"; type: "int" } - } - Method { name: "cut" } - Method { name: "copy" } - Method { name: "paste" } - Method { name: "undo" } - Method { name: "redo" } - Method { - name: "insert" - Parameter { name: "position"; type: "int" } - Parameter { name: "text"; type: "string" } - } - Method { - name: "remove" - Parameter { name: "start"; type: "int" } - Parameter { name: "end"; type: "int" } - } - Method { - name: "append" - revision: 2 - Parameter { name: "text"; type: "string" } - } - Method { name: "clear"; revision: 7 } - Method { - name: "inputMethodQuery" - revision: 4 - type: "QVariant" - Parameter { name: "query"; type: "Qt::InputMethodQuery" } - Parameter { name: "argument"; type: "QVariant" } - } - Method { - name: "positionToRectangle" - type: "QRectF" - Parameter { type: "int" } - } - Method { - name: "positionAt" - type: "int" - Parameter { name: "x"; type: "double" } - Parameter { name: "y"; type: "double" } - } - Method { - name: "moveCursorSelection" - Parameter { name: "pos"; type: "int" } - } - Method { - name: "moveCursorSelection" - Parameter { name: "pos"; type: "int" } - Parameter { name: "mode"; type: "SelectionMode" } - } - Method { - name: "getText" - type: "string" - Parameter { name: "start"; type: "int" } - Parameter { name: "end"; type: "int" } - } - Method { - name: "getFormattedText" - type: "string" - Parameter { name: "start"; type: "int" } - Parameter { name: "end"; type: "int" } - } - Method { - name: "linkAt" - revision: 3 - type: "string" - Parameter { name: "x"; type: "double" } - Parameter { name: "y"; type: "double" } - } - } - Component { - name: "QQuickTextField" - defaultProperty: "data" - prototype: "QQuickTextInput" - exports: [ - "QtQuick.Templates/TextField 2.0", - "QtQuick.Templates/TextField 2.1", - "QtQuick.Templates/TextField 2.3", - "QtQuick.Templates/TextField 2.5" - ] - exportMetaObjectRevisions: [0, 1, 3, 5] - Property { name: "font"; type: "QFont" } - Property { name: "implicitWidth"; type: "double" } - Property { name: "implicitHeight"; type: "double" } - Property { name: "background"; type: "QQuickItem"; isPointer: true } - Property { name: "placeholderText"; type: "string" } - Property { name: "focusReason"; type: "Qt::FocusReason" } - Property { name: "hovered"; revision: 1; type: "bool"; isReadonly: true } - Property { name: "hoverEnabled"; revision: 1; type: "bool" } - Property { name: "palette"; revision: 3; type: "QPalette" } - Property { name: "placeholderTextColor"; revision: 5; type: "QColor" } - Property { name: "implicitBackgroundWidth"; revision: 5; type: "double"; isReadonly: true } - Property { name: "implicitBackgroundHeight"; revision: 5; type: "double"; isReadonly: true } - Property { name: "topInset"; revision: 5; type: "double" } - Property { name: "leftInset"; revision: 5; type: "double" } - Property { name: "rightInset"; revision: 5; type: "double" } - Property { name: "bottomInset"; revision: 5; type: "double" } - Signal { name: "implicitWidthChanged3" } - Signal { name: "implicitHeightChanged3" } - Signal { - name: "pressAndHold" - Parameter { name: "event"; type: "QQuickMouseEvent"; isPointer: true } - } - Signal { - name: "pressed" - revision: 1 - Parameter { name: "event"; type: "QQuickMouseEvent"; isPointer: true } - } - Signal { - name: "released" - revision: 1 - Parameter { name: "event"; type: "QQuickMouseEvent"; isPointer: true } - } - Signal { name: "hoveredChanged"; revision: 1 } - Signal { name: "hoverEnabledChanged"; revision: 1 } - Signal { name: "paletteChanged"; revision: 3 } - Signal { name: "placeholderTextColorChanged"; revision: 5 } - Signal { name: "implicitBackgroundWidthChanged"; revision: 5 } - Signal { name: "implicitBackgroundHeightChanged"; revision: 5 } - Signal { name: "topInsetChanged"; revision: 5 } - Signal { name: "leftInsetChanged"; revision: 5 } - Signal { name: "rightInsetChanged"; revision: 5 } - Signal { name: "bottomInsetChanged"; revision: 5 } - } - Component { - name: "QQuickTextInput" - defaultProperty: "data" - prototype: "QQuickImplicitSizeItem" - Enum { - name: "EchoMode" - values: { - "Normal": 0, - "NoEcho": 1, - "Password": 2, - "PasswordEchoOnEdit": 3 - } - } - Enum { - name: "HAlignment" - values: { - "AlignLeft": 1, - "AlignRight": 2, - "AlignHCenter": 4 - } - } - Enum { - name: "VAlignment" - values: { - "AlignTop": 32, - "AlignBottom": 64, - "AlignVCenter": 128 - } - } - Enum { - name: "WrapMode" - values: { - "NoWrap": 0, - "WordWrap": 1, - "WrapAnywhere": 3, - "WrapAtWordBoundaryOrAnywhere": 4, - "Wrap": 4 - } - } - Enum { - name: "SelectionMode" - values: { - "SelectCharacters": 0, - "SelectWords": 1 - } - } - Enum { - name: "CursorPosition" - values: { - "CursorBetweenCharacters": 0, - "CursorOnCharacter": 1 - } - } - Enum { - name: "RenderType" - values: { - "QtRendering": 0, - "NativeRendering": 1 - } - } - Property { name: "text"; type: "string" } - Property { name: "length"; type: "int"; isReadonly: true } - Property { name: "color"; type: "QColor" } - Property { name: "selectionColor"; type: "QColor" } - Property { name: "selectedTextColor"; type: "QColor" } - Property { name: "font"; type: "QFont" } - Property { name: "horizontalAlignment"; type: "HAlignment" } - Property { name: "effectiveHorizontalAlignment"; type: "HAlignment"; isReadonly: true } - Property { name: "verticalAlignment"; type: "VAlignment" } - Property { name: "wrapMode"; type: "WrapMode" } - Property { name: "readOnly"; type: "bool" } - Property { name: "cursorVisible"; type: "bool" } - Property { name: "cursorPosition"; type: "int" } - Property { name: "cursorRectangle"; type: "QRectF"; isReadonly: true } - Property { name: "cursorDelegate"; type: "QQmlComponent"; isPointer: true } - Property { name: "overwriteMode"; type: "bool" } - Property { name: "selectionStart"; type: "int"; isReadonly: true } - Property { name: "selectionEnd"; type: "int"; isReadonly: true } - Property { name: "selectedText"; type: "string"; isReadonly: true } - Property { name: "maximumLength"; type: "int" } - Property { name: "validator"; type: "QValidator"; isPointer: true } - Property { name: "inputMask"; type: "string" } - Property { name: "inputMethodHints"; type: "Qt::InputMethodHints" } - Property { name: "acceptableInput"; type: "bool"; isReadonly: true } - Property { name: "echoMode"; type: "EchoMode" } - Property { name: "activeFocusOnPress"; type: "bool" } - Property { name: "passwordCharacter"; type: "string" } - Property { name: "passwordMaskDelay"; revision: 4; type: "int" } - Property { name: "displayText"; type: "string"; isReadonly: true } - Property { name: "preeditText"; revision: 7; type: "string"; isReadonly: true } - Property { name: "autoScroll"; type: "bool" } - Property { name: "selectByMouse"; type: "bool" } - Property { name: "mouseSelectionMode"; type: "SelectionMode" } - Property { name: "persistentSelection"; type: "bool" } - Property { name: "canPaste"; type: "bool"; isReadonly: true } - Property { name: "canUndo"; type: "bool"; isReadonly: true } - Property { name: "canRedo"; type: "bool"; isReadonly: true } - Property { name: "inputMethodComposing"; type: "bool"; isReadonly: true } - Property { name: "contentWidth"; type: "double"; isReadonly: true } - Property { name: "contentHeight"; type: "double"; isReadonly: true } - Property { name: "renderType"; type: "RenderType" } - Property { name: "padding"; revision: 6; type: "double" } - Property { name: "topPadding"; revision: 6; type: "double" } - Property { name: "leftPadding"; revision: 6; type: "double" } - Property { name: "rightPadding"; revision: 6; type: "double" } - Property { name: "bottomPadding"; revision: 6; type: "double" } - Signal { name: "accepted" } - Signal { name: "editingFinished"; revision: 2 } - Signal { name: "textEdited"; revision: 9 } - Signal { - name: "fontChanged" - Parameter { name: "font"; type: "QFont" } - } - Signal { - name: "horizontalAlignmentChanged" - Parameter { name: "alignment"; type: "QQuickTextInput::HAlignment" } - } - Signal { - name: "verticalAlignmentChanged" - Parameter { name: "alignment"; type: "QQuickTextInput::VAlignment" } - } - Signal { - name: "readOnlyChanged" - Parameter { name: "isReadOnly"; type: "bool" } - } - Signal { - name: "cursorVisibleChanged" - Parameter { name: "isCursorVisible"; type: "bool" } - } - Signal { - name: "overwriteModeChanged" - Parameter { name: "overwriteMode"; type: "bool" } - } - Signal { - name: "maximumLengthChanged" - Parameter { name: "maximumLength"; type: "int" } - } - Signal { - name: "inputMaskChanged" - Parameter { name: "inputMask"; type: "string" } - } - Signal { - name: "echoModeChanged" - Parameter { name: "echoMode"; type: "QQuickTextInput::EchoMode" } - } - Signal { - name: "passwordMaskDelayChanged" - revision: 4 - Parameter { name: "delay"; type: "int" } - } - Signal { name: "preeditTextChanged"; revision: 7 } - Signal { - name: "activeFocusOnPressChanged" - Parameter { name: "activeFocusOnPress"; type: "bool" } - } - Signal { - name: "autoScrollChanged" - Parameter { name: "autoScroll"; type: "bool" } - } - Signal { - name: "selectByMouseChanged" - Parameter { name: "selectByMouse"; type: "bool" } - } - Signal { - name: "mouseSelectionModeChanged" - Parameter { name: "mode"; type: "QQuickTextInput::SelectionMode" } - } - Signal { name: "contentSizeChanged" } - Signal { name: "paddingChanged"; revision: 6 } - Signal { name: "topPaddingChanged"; revision: 6 } - Signal { name: "leftPaddingChanged"; revision: 6 } - Signal { name: "rightPaddingChanged"; revision: 6 } - Signal { name: "bottomPaddingChanged"; revision: 6 } - Method { name: "selectAll" } - Method { name: "selectWord" } - Method { - name: "select" - Parameter { name: "start"; type: "int" } - Parameter { name: "end"; type: "int" } - } - Method { name: "deselect" } - Method { - name: "isRightToLeft" - type: "bool" - Parameter { name: "start"; type: "int" } - Parameter { name: "end"; type: "int" } - } - Method { name: "cut" } - Method { name: "copy" } - Method { name: "paste" } - Method { name: "undo" } - Method { name: "redo" } - Method { - name: "insert" - Parameter { name: "position"; type: "int" } - Parameter { name: "text"; type: "string" } - } - Method { - name: "remove" - Parameter { name: "start"; type: "int" } - Parameter { name: "end"; type: "int" } - } - Method { - name: "ensureVisible" - revision: 4 - Parameter { name: "position"; type: "int" } - } - Method { name: "clear"; revision: 7 } - Method { - name: "positionAt" - Parameter { name: "args"; type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "positionToRectangle" - type: "QRectF" - Parameter { name: "pos"; type: "int" } - } - Method { - name: "moveCursorSelection" - Parameter { name: "pos"; type: "int" } - } - Method { - name: "moveCursorSelection" - Parameter { name: "pos"; type: "int" } - Parameter { name: "mode"; type: "SelectionMode" } - } - Method { - name: "inputMethodQuery" - revision: 4 - type: "QVariant" - Parameter { name: "query"; type: "Qt::InputMethodQuery" } - Parameter { name: "argument"; type: "QVariant" } - } - Method { - name: "getText" - type: "string" - Parameter { name: "start"; type: "int" } - Parameter { name: "end"; type: "int" } - } - } - Component { - name: "QQuickToolBar" - defaultProperty: "contentData" - prototype: "QQuickPane" - exports: ["QtQuick.Templates/ToolBar 2.0"] - exportMetaObjectRevisions: [0] - Enum { - name: "Position" - values: { - "Header": 0, - "Footer": 1 - } - } - Property { name: "position"; type: "Position" } - } - Component { - name: "QQuickToolButton" - defaultProperty: "data" - prototype: "QQuickButton" - exports: ["QtQuick.Templates/ToolButton 2.0"] - exportMetaObjectRevisions: [0] - } - Component { - name: "QQuickToolSeparator" - defaultProperty: "data" - prototype: "QQuickControl" - exports: ["QtQuick.Templates/ToolSeparator 2.1"] - exportMetaObjectRevisions: [0] - Property { name: "orientation"; type: "Qt::Orientation" } - Property { name: "horizontal"; type: "bool"; isReadonly: true } - Property { name: "vertical"; type: "bool"; isReadonly: true } - } - Component { - name: "QQuickToolTip" - defaultProperty: "contentData" - prototype: "QQuickPopup" - exports: [ - "QtQuick.Templates/ToolTip 2.0", - "QtQuick.Templates/ToolTip 2.5" - ] - exportMetaObjectRevisions: [0, 5] - attachedType: "QQuickToolTipAttached" - Property { name: "delay"; type: "int" } - Property { name: "timeout"; type: "int" } - Property { name: "text"; type: "string" } - Method { - name: "show" - revision: 5 - Parameter { name: "text"; type: "string" } - Parameter { name: "ms"; type: "int" } - } - Method { - name: "show" - revision: 5 - Parameter { name: "text"; type: "string" } - } - Method { name: "hide"; revision: 5 } - } - Component { - name: "QQuickToolTipAttached" - prototype: "QObject" - Property { name: "text"; type: "string" } - Property { name: "delay"; type: "int" } - Property { name: "timeout"; type: "int" } - Property { name: "visible"; type: "bool" } - Property { name: "toolTip"; type: "QQuickToolTip"; isReadonly: true; isPointer: true } - Method { - name: "show" - Parameter { name: "text"; type: "string" } - Parameter { name: "ms"; type: "int" } - } - Method { - name: "show" - Parameter { name: "text"; type: "string" } - } - Method { name: "hide" } - } - Component { - name: "QQuickTumbler" - defaultProperty: "data" - prototype: "QQuickControl" - exports: [ - "QtQuick.Templates/Tumbler 2.0", - "QtQuick.Templates/Tumbler 2.1", - "QtQuick.Templates/Tumbler 2.2" - ] - exportMetaObjectRevisions: [0, 1, 2] - attachedType: "QQuickTumblerAttached" - Enum { - name: "PositionMode" - values: { - "Beginning": 0, - "Center": 1, - "End": 2, - "Visible": 3, - "Contain": 4, - "SnapPosition": 5 - } - } - Property { name: "model"; type: "QVariant" } - Property { name: "count"; type: "int"; isReadonly: true } - Property { name: "currentIndex"; type: "int" } - Property { name: "currentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } - Property { name: "delegate"; type: "QQmlComponent"; isPointer: true } - Property { name: "visibleItemCount"; type: "int" } - Property { name: "wrap"; revision: 1; type: "bool" } - Property { name: "moving"; revision: 2; type: "bool"; isReadonly: true } - Signal { name: "wrapChanged"; revision: 1 } - Signal { name: "movingChanged"; revision: 2 } - Method { - name: "positionViewAtIndex" - revision: 5 - Parameter { name: "index"; type: "int" } - Parameter { name: "mode"; type: "PositionMode" } - } - } - Component { - name: "QQuickTumblerAttached" - prototype: "QObject" - Property { name: "tumbler"; type: "QQuickTumbler"; isReadonly: true; isPointer: true } - Property { name: "displacement"; type: "double"; isReadonly: true } - } - Component { - name: "QQuickWindow" - defaultProperty: "data" - prototype: "QWindow" - Enum { - name: "CreateTextureOptions" - values: { - "TextureHasAlphaChannel": 1, - "TextureHasMipmaps": 2, - "TextureOwnsGLTexture": 4, - "TextureCanUseAtlas": 8, - "TextureIsOpaque": 16 - } - } - Enum { - name: "SceneGraphError" - values: { - "ContextNotAvailable": 1 - } - } - Enum { - name: "TextRenderType" - values: { - "QtTextRendering": 0, - "NativeTextRendering": 1 - } - } - Enum { - name: "NativeObjectType" - values: { - "NativeObjectTexture": 0 - } - } - Property { name: "data"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "color"; type: "QColor" } - Property { name: "contentItem"; type: "QQuickItem"; isReadonly: true; isPointer: true } - Property { - name: "activeFocusItem" - revision: 1 - type: "QQuickItem" - isReadonly: true - isPointer: true - } - Signal { name: "frameSwapped" } - Signal { - name: "openglContextCreated" - revision: 2 - Parameter { name: "context"; type: "QOpenGLContext"; isPointer: true } - } - Signal { name: "sceneGraphInitialized" } - Signal { name: "sceneGraphInvalidated" } - Signal { name: "beforeSynchronizing" } - Signal { name: "afterSynchronizing"; revision: 2 } - Signal { name: "beforeRendering" } - Signal { name: "afterRendering" } - Signal { name: "afterAnimating"; revision: 2 } - Signal { name: "sceneGraphAboutToStop"; revision: 2 } - Signal { - name: "closing" - revision: 1 - Parameter { name: "close"; type: "QQuickCloseEvent"; isPointer: true } - } - Signal { - name: "colorChanged" - Parameter { type: "QColor" } - } - Signal { name: "activeFocusItemChanged"; revision: 1 } - Signal { - name: "sceneGraphError" - revision: 2 - Parameter { name: "error"; type: "QQuickWindow::SceneGraphError" } - Parameter { name: "message"; type: "string" } - } - Signal { name: "beforeRenderPassRecording"; revision: 14 } - Signal { name: "afterRenderPassRecording"; revision: 14 } - Method { name: "update" } - Method { name: "releaseResources" } - } - Component { - name: "QQuickWindowQmlImpl" - defaultProperty: "data" - prototype: "QQuickWindow" - Property { name: "visible"; type: "bool" } - Property { name: "visibility"; type: "Visibility" } - Property { name: "screen"; revision: 3; type: "QObject"; isPointer: true } - Signal { - name: "visibleChanged" - Parameter { name: "arg"; type: "bool" } - } - Signal { - name: "visibilityChanged" - Parameter { name: "visibility"; type: "QWindow::Visibility" } - } - Signal { name: "screenChanged"; revision: 3 } - } - Component { - name: "QWindow" - prototype: "QObject" - Enum { - name: "Visibility" - values: { - "Hidden": 0, - "AutomaticVisibility": 1, - "Windowed": 2, - "Minimized": 3, - "Maximized": 4, - "FullScreen": 5 - } - } - Enum { - name: "AncestorMode" - values: { - "ExcludeTransients": 0, - "IncludeTransients": 1 - } - } - Property { name: "title"; type: "string" } - Property { name: "modality"; type: "Qt::WindowModality" } - Property { name: "flags"; type: "Qt::WindowFlags" } - Property { name: "x"; type: "int" } - Property { name: "y"; type: "int" } - Property { name: "width"; type: "int" } - Property { name: "height"; type: "int" } - Property { name: "minimumWidth"; type: "int" } - Property { name: "minimumHeight"; type: "int" } - Property { name: "maximumWidth"; type: "int" } - Property { name: "maximumHeight"; type: "int" } - Property { name: "visible"; type: "bool" } - Property { name: "active"; revision: 1; type: "bool"; isReadonly: true } - Property { name: "visibility"; revision: 1; type: "Visibility" } - Property { name: "contentOrientation"; type: "Qt::ScreenOrientation" } - Property { name: "opacity"; revision: 1; type: "double" } - Property { name: "transientParent"; revision: 13; type: "QWindow"; isPointer: true } - Signal { - name: "screenChanged" - Parameter { name: "screen"; type: "QScreen"; isPointer: true } - } - Signal { - name: "modalityChanged" - Parameter { name: "modality"; type: "Qt::WindowModality" } - } - Signal { - name: "windowStateChanged" - Parameter { name: "windowState"; type: "Qt::WindowState" } - } - Signal { - name: "windowTitleChanged" - revision: 2 - Parameter { name: "title"; type: "string" } - } - Signal { - name: "xChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "yChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "widthChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "heightChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "minimumWidthChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "minimumHeightChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "maximumWidthChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "maximumHeightChanged" - Parameter { name: "arg"; type: "int" } - } - Signal { - name: "visibleChanged" - Parameter { name: "arg"; type: "bool" } - } - Signal { - name: "visibilityChanged" - revision: 1 - Parameter { name: "visibility"; type: "QWindow::Visibility" } - } - Signal { name: "activeChanged"; revision: 1 } - Signal { - name: "contentOrientationChanged" - Parameter { name: "orientation"; type: "Qt::ScreenOrientation" } - } - Signal { - name: "focusObjectChanged" - Parameter { name: "object"; type: "QObject"; isPointer: true } - } - Signal { - name: "opacityChanged" - revision: 1 - Parameter { name: "opacity"; type: "double" } - } - Signal { - name: "transientParentChanged" - revision: 13 - Parameter { name: "transientParent"; type: "QWindow"; isPointer: true } - } - Method { name: "requestActivate"; revision: 1 } - Method { - name: "setVisible" - Parameter { name: "visible"; type: "bool" } - } - Method { name: "show" } - Method { name: "hide" } - Method { name: "showMinimized" } - Method { name: "showMaximized" } - Method { name: "showFullScreen" } - Method { name: "showNormal" } - Method { name: "close"; type: "bool" } - Method { name: "raise" } - Method { name: "lower" } - Method { - name: "setTitle" - Parameter { type: "string" } - } - Method { - name: "setX" - Parameter { name: "arg"; type: "int" } - } - Method { - name: "setY" - Parameter { name: "arg"; type: "int" } - } - Method { - name: "setWidth" - Parameter { name: "arg"; type: "int" } - } - Method { - name: "setHeight" - Parameter { name: "arg"; type: "int" } - } - Method { - name: "setGeometry" - Parameter { name: "posx"; type: "int" } - Parameter { name: "posy"; type: "int" } - Parameter { name: "w"; type: "int" } - Parameter { name: "h"; type: "int" } - } - Method { - name: "setGeometry" - Parameter { name: "rect"; type: "QRect" } - } - Method { - name: "setMinimumWidth" - Parameter { name: "w"; type: "int" } - } - Method { - name: "setMinimumHeight" - Parameter { name: "h"; type: "int" } - } - Method { - name: "setMaximumWidth" - Parameter { name: "w"; type: "int" } - } - Method { - name: "setMaximumHeight" - Parameter { name: "h"; type: "int" } - } - Method { - name: "alert" - revision: 1 - Parameter { name: "msec"; type: "int" } - } - Method { name: "requestUpdate"; revision: 3 } - } -} diff --git a/src/imports/templates/qtquicktemplates2plugin.cpp b/src/imports/templates/qtquicktemplates2plugin.cpp index 28ce0bf0..e2a15213 100644 --- a/src/imports/templates/qtquicktemplates2plugin.cpp +++ b/src/imports/templates/qtquicktemplates2plugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2017 The Qt Company Ltd. +** Copyright (C) 2020 The Qt Company Ltd. ** Contact: http://www.qt.io/licensing/ ** ** This file is part of the Qt Quick Templates 2 module of the Qt Toolkit. @@ -37,73 +37,9 @@ #include <QtQml/qqmlextensionplugin.h> #include <QtQml/private/qqmlglobal_p.h> -#include <QtQuickTemplates2/private/qquickabstractbutton_p.h> -#include <QtQuickTemplates2/private/qquickaction_p.h> -#include <QtQuickTemplates2/private/qquickactiongroup_p.h> -#include <QtQuickTemplates2/private/qquickapplicationwindow_p.h> -#include <QtQuickTemplates2/private/qquickbusyindicator_p.h> -#include <QtQuickTemplates2/private/qquickbutton_p.h> -#include <QtQuickTemplates2/private/qquickbuttongroup_p.h> -#include <QtQuickTemplates2/private/qquickcheckbox_p.h> -#include <QtQuickTemplates2/private/qquickcheckdelegate_p.h> -#include <QtQuickTemplates2/private/qquickcombobox_p.h> -#include <QtQuickTemplates2/private/qquickcontrol_p.h> -#include <QtQuickTemplates2/private/qquickcontainer_p.h> -#include <QtQuickTemplates2/private/qquickdelaybutton_p.h> -#include <QtQuickTemplates2/private/qquickdial_p.h> -#include <QtQuickTemplates2/private/qquickdialog_p.h> -#include <QtQuickTemplates2/private/qquickdialogbuttonbox_p.h> -#include <QtQuickTemplates2/private/qquickdrawer_p.h> -#include <QtQuickTemplates2/private/qquickframe_p.h> -#include <QtQuickTemplates2/private/qquickgroupbox_p.h> -#include <QtQuickTemplates2/private/qquickheaderview_p.h> -#include <QtQuickTemplates2/private/qquickicon_p.h> -#include <QtQuickTemplates2/private/qquickitemdelegate_p.h> -#include <QtQuickTemplates2/private/qquicklabel_p.h> -#include <QtQuickTemplates2/private/qquickmenu_p.h> -#include <QtQuickTemplates2/private/qquickmenubar_p.h> -#include <QtQuickTemplates2/private/qquickmenubaritem_p.h> -#include <QtQuickTemplates2/private/qquickmenuitem_p.h> -#include <QtQuickTemplates2/private/qquickmenuseparator_p.h> -#include <QtQuickTemplates2/private/qquickoverlay_p.h> -#include <QtQuickTemplates2/private/qquickpage_p.h> -#include <QtQuickTemplates2/private/qquickpageindicator_p.h> -#include <QtQuickTemplates2/private/qquickpane_p.h> -#include <QtQuickTemplates2/private/qquickpopup_p.h> -#include <QtQuickTemplates2/private/qquickpopupanchors_p.h> -#include <QtQuickTemplates2/private/qquickprogressbar_p.h> -#include <QtQuickTemplates2/private/qquickradiobutton_p.h> -#include <QtQuickTemplates2/private/qquickradiodelegate_p.h> -#include <QtQuickTemplates2/private/qquickrangeslider_p.h> -#include <QtQuickTemplates2/private/qquickroundbutton_p.h> -#include <QtQuickTemplates2/private/qquickscrollbar_p.h> -#include <QtQuickTemplates2/private/qquickscrollindicator_p.h> -#include <QtQuickTemplates2/private/qquickscrollview_p.h> +#if QT_CONFIG(shortcut) #include <QtQuickTemplates2/private/qquickshortcutcontext_p_p.h> -#include <QtQuickTemplates2/private/qquickslider_p.h> -#include <QtQuickTemplates2/private/qquickspinbox_p.h> -#include <QtQuickTemplates2/private/qquicksplitview_p.h> -#include <QtQuickTemplates2/private/qquickstackview_p.h> -#include <QtQuickTemplates2/private/qquickswipe_p.h> -#include <QtQuickTemplates2/private/qquickswipedelegate_p.h> -#include <QtQuickTemplates2/private/qquickswipeview_p.h> -#include <QtQuickTemplates2/private/qquickswitch_p.h> -#include <QtQuickTemplates2/private/qquickswitchdelegate_p.h> -#include <QtQuickTemplates2/private/qquicktabbar_p.h> -#include <QtQuickTemplates2/private/qquicktabbutton_p.h> -#include <QtQuickTemplates2/private/qquicktextarea_p.h> -#include <QtQuickTemplates2/private/qquicktextfield_p.h> -#include <QtQuickTemplates2/private/qquicktoolbar_p.h> -#include <QtQuickTemplates2/private/qquicktoolbutton_p.h> -#include <QtQuickTemplates2/private/qquicktoolseparator_p.h> -#include <QtQuickTemplates2/private/qquicktooltip_p.h> -#if QT_CONFIG(quick_listview) && QT_CONFIG(quick_pathview) -#include <QtQuickTemplates2/private/qquicktumbler_p.h> -#endif - -#include <QtQuick/private/qquickpalette_p.h> -#if QT_CONFIG(shortcut) // qtdeclarative/src/quick/util/qquickshortcut.cpp typedef bool (*ShortcutContextMatcher)(QObject *, Qt::ShortcutContext); extern ShortcutContextMatcher qt_quick_shortcut_context_matcher(); @@ -112,7 +48,7 @@ extern void qt_quick_set_shortcut_context_matcher(ShortcutContextMatcher matcher QT_BEGIN_NAMESPACE -class QtQuickTemplates2Plugin: public QQmlExtensionPlugin +class QtQuickTemplates2Plugin : public QQmlExtensionPlugin { Q_OBJECT Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid) @@ -134,6 +70,8 @@ private: QtQuickTemplates2Plugin::QtQuickTemplates2Plugin(QObject *parent) : QQmlExtensionPlugin(parent), registered(false) { + volatile auto registration = &qml_register_types_QtQuick_Templates; + Q_UNUSED(registration) } QtQuickTemplates2Plugin::~QtQuickTemplates2Plugin() @@ -142,7 +80,7 @@ QtQuickTemplates2Plugin::~QtQuickTemplates2Plugin() // initialization and cleanup, as plugins are not unloaded on macOS. } -void QtQuickTemplates2Plugin::registerTypes(const char *uri) +void QtQuickTemplates2Plugin::registerTypes(const char */*uri*/) { #if QT_CONFIG(shortcut) originalContextMatcher = qt_quick_shortcut_context_matcher(); @@ -150,212 +88,6 @@ void QtQuickTemplates2Plugin::registerTypes(const char *uri) #endif registered = true; - - // The minor version used to be the current Qt 5 minor. For compatibility it is the last - // Qt 5 release. - qmlRegisterModule(uri, 2, 15); - - // QtQuick.Templates 2.0 (originally introduced in Qt 5.7) - qmlRegisterType<QQuickAbstractButton>(uri, 2, 0, "AbstractButton"); - qmlRegisterType<QQuickApplicationWindow>(uri, 2, 0, "ApplicationWindow"); - qmlRegisterAnonymousType<QQuickApplicationWindowAttached>(uri, 2); - qmlRegisterType<QQuickBusyIndicator>(uri, 2, 0, "BusyIndicator"); - qmlRegisterType<QQuickButton>(uri, 2, 0, "Button"); - qmlRegisterType<QQuickButtonGroup>(uri, 2, 0, "ButtonGroup"); - qmlRegisterAnonymousType<QQuickButtonGroupAttached>(uri, 2); - qmlRegisterType<QQuickCheckBox>(uri, 2, 0, "CheckBox"); - qmlRegisterType<QQuickCheckDelegate>(uri, 2, 0, "CheckDelegate"); - qmlRegisterType<QQuickComboBox>(uri, 2, 0, "ComboBox"); - qmlRegisterType<QQuickContainer>(uri, 2, 0, "Container"); - qmlRegisterType<QQuickControl>(uri, 2, 0, "Control"); - qmlRegisterType<QQuickDial>(uri, 2, 0, "Dial"); - qmlRegisterType<QQuickDrawer>(uri, 2, 0, "Drawer"); - qmlRegisterType<QQuickFrame>(uri, 2, 0, "Frame"); - qmlRegisterType<QQuickGroupBox>(uri, 2, 0, "GroupBox"); - qmlRegisterType<QQuickItemDelegate>(uri, 2, 0, "ItemDelegate"); - qmlRegisterType<QQuickLabel>(uri, 2, 0, "Label"); - qmlRegisterType<QQuickMenu>(uri, 2, 0, "Menu"); - qmlRegisterType<QQuickMenuItem>(uri, 2, 0, "MenuItem"); - qmlRegisterAnonymousType<QQuickOverlay>(uri, 2); - qmlRegisterType<QQuickPage>(uri, 2, 0, "Page"); - qmlRegisterType<QQuickPageIndicator>(uri, 2, 0, "PageIndicator"); - qmlRegisterType<QQuickPane>(uri, 2, 0, "Pane"); - qmlRegisterType<QQuickPopup>(uri, 2, 0, "Popup"); - qmlRegisterType<QQuickProgressBar>(uri, 2, 0, "ProgressBar"); - qmlRegisterType<QQuickRadioButton>(uri, 2, 0, "RadioButton"); - qmlRegisterType<QQuickRadioDelegate>(uri, 2, 0, "RadioDelegate"); - qmlRegisterType<QQuickRangeSlider>(uri, 2, 0, "RangeSlider"); - qmlRegisterAnonymousType<QQuickRangeSliderNode>(uri, 2); - qmlRegisterType<QQuickScrollBar>(uri, 2, 0, "ScrollBar"); - qmlRegisterAnonymousType<QQuickScrollBarAttached>(uri, 2); - qmlRegisterType<QQuickScrollIndicator>(uri, 2, 0, "ScrollIndicator"); - qmlRegisterAnonymousType<QQuickScrollIndicatorAttached>(uri, 2); - qmlRegisterType<QQuickSlider>(uri, 2, 0, "Slider"); - qmlRegisterType<QQuickSpinBox>(uri, 2, 0, "SpinBox"); - qmlRegisterAnonymousType<QQuickSpinButton>(uri, 2); - qmlRegisterType<QQuickStackView>(uri, 2, 0, "StackView"); - qmlRegisterAnonymousType<QQuickStackViewAttached>(uri, 2); - qmlRegisterAnonymousType<QQuickSwipe>(uri, 2); - qmlRegisterType<QQuickSwipeDelegate>(uri, 2, 0, "SwipeDelegate"); - qmlRegisterType<QQuickSwipeView>(uri, 2, 0, "SwipeView"); - qmlRegisterAnonymousType<QQuickSwipeViewAttached>(uri, 2); - qmlRegisterType<QQuickSwitch>(uri, 2, 0, "Switch"); - qmlRegisterType<QQuickSwitchDelegate>(uri, 2, 0, "SwitchDelegate"); - qmlRegisterType<QQuickTabBar>(uri, 2, 0, "TabBar"); - qmlRegisterType<QQuickTabButton>(uri, 2, 0, "TabButton"); - qmlRegisterType<QQuickTextArea>(uri, 2, 0, "TextArea"); - qmlRegisterAnonymousType<QQuickTextAreaAttached>(uri, 2); - qmlRegisterType<QQuickTextField>(uri, 2, 0, "TextField"); - qmlRegisterType<QQuickToolBar>(uri, 2, 0, "ToolBar"); - qmlRegisterType<QQuickToolButton>(uri, 2, 0, "ToolButton"); - qmlRegisterType<QQuickToolTip>(uri, 2, 0, "ToolTip"); - qmlRegisterAnonymousType<QQuickToolTipAttached>(uri, 2); -#if QT_CONFIG(quick_listview) && QT_CONFIG(quick_pathview) - qmlRegisterAnonymousType<QQuickTumblerAttached>(uri, 2); - qmlRegisterType<QQuickTumbler>(uri, 2, 0, "Tumbler"); -#endif - - // NOTE: register the latest revisions of all template/control base classes to - // make revisioned properties available to their subclasses (synced with Qt 5.7) - qmlRegisterRevision<QQuickItem, 7>(uri, 2, 0); - qmlRegisterRevision<QQuickText, 6>(uri, 2, 0); - qmlRegisterRevision<QQuickTextInput, 7>(uri, 2, 0); - qmlRegisterRevision<QQuickTextEdit, 7>(uri, 2, 0); - qmlRegisterRevision<QQuickWindow, 2>(uri, 2, 0); - qmlRegisterRevision<QWindow, 3>(uri, 2, 0); - - // QtQuick.Templates 2.1 (new types and revisions in Qt 5.8) - qmlRegisterType<QQuickButtonGroup, 1>(uri, 2, 1, "ButtonGroup"); - qmlRegisterType<QQuickComboBox, 1>(uri, 2, 1, "ComboBox"); - qmlRegisterType<QQuickContainer, 1>(uri, 2, 1, "Container"); - qmlRegisterType<QQuickDialog>(uri, 2, 1, "Dialog"); - qmlRegisterType<QQuickDialogButtonBox>(uri, 2, 1, "DialogButtonBox"); - qmlRegisterAnonymousType<QQuickDialogButtonBoxAttached>(uri, 2); - qmlRegisterType<QQuickMenuSeparator>(uri, 2, 1, "MenuSeparator"); - qmlRegisterType<QQuickPage, 1>(uri, 2, 1, "Page"); - qmlRegisterType<QQuickPopup, 1>(uri, 2, 1, "Popup"); - qmlRegisterType<QQuickRangeSlider, 1>(uri, 2, 1, "RangeSlider"); - qmlRegisterType<QQuickRoundButton>(uri, 2, 1, "RoundButton"); - qmlRegisterType<QQuickSlider, 1>(uri, 2, 1, "Slider"); - qmlRegisterType<QQuickSpinBox, 1>(uri, 2, 1, "SpinBox"); - qmlRegisterType<QQuickStackView, 1>(uri, 2, 1, "StackView"); - qmlRegisterType<QQuickSwipeDelegate, 1>(uri, 2, 1, "SwipeDelegate"); - qmlRegisterType<QQuickSwipeView, 1>(uri, 2, 1, "SwipeView"); - qmlRegisterType<QQuickTextArea, 1>(uri, 2, 1, "TextArea"); - qmlRegisterType<QQuickTextField, 1>(uri, 2, 1, "TextField"); - qmlRegisterType<QQuickToolSeparator>(uri, 2, 1, "ToolSeparator"); -#if QT_CONFIG(quick_listview) && QT_CONFIG(quick_pathview) - qmlRegisterType<QQuickTumbler, 1>(uri, 2, 1, "Tumbler"); -#endif - - // QtQuick.Templates 2.2 (new types and revisions in Qt 5.9) - qmlRegisterType<QQuickAbstractButton, 2>(uri, 2, 2, "AbstractButton"); - qmlRegisterType<QQuickComboBox, 2>(uri, 2, 2, "ComboBox"); - qmlRegisterType<QQuickDelayButton>(uri, 2, 2, "DelayButton"); - qmlRegisterType<QQuickDial, 2>(uri, 2, 2, "Dial"); - qmlRegisterType<QQuickDrawer, 2>(uri, 2, 2, "Drawer"); - qmlRegisterType<QQuickRangeSlider, 2>(uri, 2, 2, "RangeSlider"); - qmlRegisterType<QQuickScrollBar, 2>(uri, 2, 2, "ScrollBar"); - qmlRegisterType<QQuickScrollView>(uri, 2, 2, "ScrollView"); - qmlRegisterType<QQuickSlider, 2>(uri, 2, 2, "Slider"); - qmlRegisterType<QQuickSpinBox, 2>(uri, 2, 2, "SpinBox"); - qmlRegisterType<QQuickSwipeDelegate, 2>(uri, 2, 2, "SwipeDelegate"); - qmlRegisterType<QQuickSwipeView, 2>(uri, 2, 2, "SwipeView"); - qmlRegisterType<QQuickTabBar, 2>(uri, 2, 2, "TabBar"); -#if QT_CONFIG(quick_listview) && QT_CONFIG(quick_pathview) - qmlRegisterType<QQuickTumbler, 2>(uri, 2, 2, "Tumbler"); -#endif - - // NOTE: register the latest revisions of all template/control base classes to - // make revisioned properties available to their subclasses (synced with Qt 5.9) - qmlRegisterRevision<QQuickText, 9>(uri, 2, 2); - qmlRegisterRevision<QQuickTextInput, 9>(uri, 2, 2); - qmlRegisterRevision<QQuickWindowQmlImpl, 3>(uri, 2, 2); - qmlRegisterRevision<QQuickWindowQmlImpl, 3>(uri, 2, 3); - qmlRegisterRevision<QQuickWindow, 3>(uri, 2, 3); - qmlRegisterRevision<QQuickItem, 3>(uri, 2, 3); - - // QtQuick.Templates 2.3 (new types and revisions in Qt 5.10) - qmlRegisterType<QQuickAbstractButton, 3>(uri, 2, 3, "AbstractButton"); - qmlRegisterType<QQuickAction>(uri, 2, 3, "Action"); - qmlRegisterType<QQuickActionGroup>(uri, 2, 3, "ActionGroup"); - qmlRegisterType<QQuickApplicationWindow, 3>(uri, 2, 3, "ApplicationWindow"); - qmlRegisterType<QQuickButtonGroup, 3>(uri, 2, 3, "ButtonGroup"); - qmlRegisterType<QQuickControl, 3>(uri, 2, 3, "Control"); - qmlRegisterType<QQuickContainer, 3>(uri, 2, 3, "Container"); - qmlRegisterType<QQuickDialog, 3>(uri, 2, 3, "Dialog"); - qmlRegisterType<QQuickDialogButtonBox, 3>(uri, 2, 3, "DialogButtonBox"); - qmlRegisterAnonymousType<QQuickIcon>(uri, 2); - qRegisterMetaType<QQuickIcon>(); - qmlRegisterType<QQuickLabel, 3>(uri, 2, 3, "Label"); - qmlRegisterType<QQuickMenu, 3>(uri, 2, 3, "Menu"); - qmlRegisterType<QQuickMenuBar>(uri, 2, 3, "MenuBar"); - qmlRegisterType<QQuickMenuBarItem>(uri, 2, 3, "MenuBarItem"); - qmlRegisterType<QQuickMenuItem, 3>(uri, 2, 3, "MenuItem"); - qmlRegisterUncreatableType<QQuickOverlay>(uri, 2, 3, "Overlay", QStringLiteral("Overlay is only available as an attached property.")); - qmlRegisterAnonymousType<QQuickOverlayAttached>(uri, 2); - qmlRegisterType<QQuickPopup, 3>(uri, 2, 3, "Popup"); - qmlRegisterType<QQuickRangeSlider, 3>(uri, 2, 3, "RangeSlider"); - qmlRegisterType<QQuickScrollBar, 3>(uri, 2, 3, "ScrollBar"); - qmlRegisterType<QQuickScrollIndicator, 3>(uri, 2, 3, "ScrollIndicator"); - qmlRegisterType<QQuickSlider, 3>(uri, 2, 3, "Slider"); - qmlRegisterType<QQuickSpinBox, 3>(uri, 2, 3, "SpinBox"); - qmlRegisterType<QQuickTextArea, 3>(uri, 2, 3, "TextArea"); - qmlRegisterType<QQuickTextField, 3>(uri, 2, 3, "TextField"); - - // NOTE: register the latest revisions of all template/control base classes to - // make revisioned properties available to their subclasses (synced with Qt 5.10) - qmlRegisterRevision<QQuickText, 10>(uri, 2, 3); - qmlRegisterRevision<QQuickTextEdit, 10>(uri, 2, 3); - // For backward compatibility - qmlRegisterType<QQuickColorGroup, 13>(uri, 2, 13, "ColorGroup"); - qmlRegisterType<QQuickPalette, 13>(uri, 2, 13, "Palette"); - - // QtQuick.Templates 2.4 (new types and revisions in Qt 5.11) - qmlRegisterType<QQuickAbstractButton, 4>(uri, 2, 4, "AbstractButton"); - qmlRegisterType<QQuickButtonGroup, 4>(uri, 2, 4, "ButtonGroup"); - qmlRegisterType<QQuickCheckBox, 4>(uri, 2, 4, "CheckBox"); - qmlRegisterType<QQuickCheckDelegate, 4>(uri, 2, 4, "CheckDelegate"); - qmlRegisterType<QQuickScrollBar, 4>(uri, 2, 4, "ScrollBar"); - qmlRegisterType<QQuickScrollIndicator, 4>(uri, 2, 4, "ScrollIndicator"); - qmlRegisterType<QQuickSpinBox, 4>(uri, 2, 4, "SpinBox"); - - // QtQuick.Templates 2.5 (new types and revisions in Qt 5.12) - qmlRegisterType<QQuickAbstractButton, 5>(uri, 2, 5, "AbstractButton"); - qmlRegisterType<QQuickDialogButtonBox, 5>(uri, 2, 5, "DialogButtonBox"); - qmlRegisterType<QQuickComboBox, 5>(uri, 2, 5, "ComboBox"); - qmlRegisterType<QQuickControl, 5>(uri, 2, 5, "Control"); - qmlRegisterType<QQuickContainer, 5>(uri, 2, 5, "Container"); - qmlRegisterType<QQuickDial, 5>(uri, 2, 5, "Dial"); - qmlRegisterType<QQuickDialog, 5>(uri, 2, 5, "Dialog"); - qmlRegisterType<QQuickGroupBox, 5>(uri, 2, 5, "GroupBox"); - qmlRegisterType<QQuickLabel, 5>(uri, 2, 5, "Label"); - qmlRegisterType<QQuickPage, 5>(uri, 2, 5, "Page"); - qmlRegisterType<QQuickPopup, 5>(uri, 2, 5, "Popup"); - qmlRegisterAnonymousType<QQuickPopupAnchors>(uri, 2); - qmlRegisterType<QQuickRangeSlider, 5>(uri, 2, 5, "RangeSlider"); - qmlRegisterType<QQuickSlider, 5>(uri, 2, 5, "Slider"); - qmlRegisterType<QQuickSpinBox, 5>(uri, 2, 5, "SpinBox"); - qmlRegisterType<QQuickTextArea, 5>(uri, 2, 5, "TextArea"); - qmlRegisterType<QQuickTextField, 5>(uri, 2, 5, "TextField"); - qmlRegisterType<QQuickToolTip, 5>(uri, 2, 5, "ToolTip"); - - // QtQuick.Templates 2.13 (new types and revisions in Qt 5.13) - qmlRegisterType<QQuickSplitView>(uri, 2, 13, "SplitView"); - qmlRegisterAnonymousType<QQuickSplitViewAttached>(uri, 2); - qmlRegisterUncreatableType<QQuickSplitHandleAttached>(uri, 2, 13, "SplitHandle", - QStringLiteral("SplitHandle is only available as an attached property.")); - qmlRegisterAnonymousType<QQuickSplitHandleAttached>(uri, 2); - - // QtQuick.Templates 2.14 (new types and revisions in Qt 5.14) - qmlRegisterType<QQuickComboBox, 14>(uri, 2, 14, "ComboBox"); - - // QtQuick.Templates 2.15 (new types and revisions in Qt 5.15) - qmlRegisterType<QQuickComboBox, 15>(uri, 2, 15, "ComboBox"); - // Register QQuickTableView here to expose headerView's base, with a irregular type name to 'hide' it. - qmlRegisterType<QQuickTableView, 15>(uri, 2, 15, "__TableView__"); - qmlRegisterType<QQuickHorizontalHeaderView>(uri, 2, 15, "HorizontalHeaderView"); - qmlRegisterType<QQuickVerticalHeaderView>(uri, 2, 15, "VerticalHeaderView"); } void QtQuickTemplates2Plugin::unregisterTypes() diff --git a/src/imports/templates/templates.pro b/src/imports/templates/templates.pro index 3447ef90..52e4d03a 100644 --- a/src/imports/templates/templates.pro +++ b/src/imports/templates/templates.pro @@ -1,6 +1,6 @@ TARGET = qtquicktemplates2plugin -TARGETPATH = QtQuick/Templates.2 -IMPORT_VERSION = 2.$$QT_MINOR_VERSION +TARGETPATH = QtQuick/Templates +QML_IMPORT_VERSION = $$QT_VERSION QT += qml quick QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private diff --git a/src/quickcontrols2/CMakeLists.txt b/src/quickcontrols2/CMakeLists.txt index ec954c32..52e39cae 100644 --- a/src/quickcontrols2/CMakeLists.txt +++ b/src/quickcontrols2/CMakeLists.txt @@ -5,26 +5,12 @@ ##################################################################### qt_add_module(QuickControls2 + GENERATE_METATYPES SOURCES - qquickanimatednode.cpp qquickanimatednode_p.h - qquickattachedobject.cpp qquickattachedobject_p.h - qquickchecklabel.cpp qquickchecklabel_p.h - qquickclippedtext.cpp qquickclippedtext_p.h - qquickcolor.cpp qquickcolor_p.h - qquickcolorimage.cpp qquickcolorimage_p.h - qquickiconimage.cpp qquickiconimage_p.h - qquickiconimage_p_p.h - qquickiconlabel.cpp qquickiconlabel_p.h - qquickiconlabel_p_p.h - qquickitemgroup.cpp qquickitemgroup_p.h - qquickmnemoniclabel.cpp qquickmnemoniclabel_p.h - qquickpaddedrectangle.cpp qquickpaddedrectangle_p.h - qquickplaceholdertext.cpp qquickplaceholdertext_p.h + qquickdummyregistration_p.h qquickstyle.cpp qquickstyle.h qquickstyle_p.h qquickstyleplugin.cpp qquickstyleplugin_p.h - qquickstyleselector.cpp qquickstyleselector_p.h - qquickstyleselector_p_p.h - qtquickcontrols2global.h qtquickcontrols2global_p.h + qtquickcontrols2global.h DEFINES QT_NO_CAST_FROM_ASCII QT_NO_CAST_TO_ASCII @@ -42,11 +28,17 @@ qt_add_module(QuickControls2 #### Keys ignored in scope 1:.:.:quickcontrols2.pro:<TRUE>: # MODULE = "quickcontrols2" +# QMLTYPES_FILENAME = "plugins.qmltypes" +# QMLTYPES_INSTALL_DIR = "$$[QT_INSTALL_QML]/QtQuick/Controls" +# QML_IMPORT_NAME = "QtQuick.Controls" +# QML_IMPORT_VERSION = "$$QT_VERSION" -## Scopes: -##################################################################### - -qt_extend_target(QuickControls2 CONDITION QT_FEATURE_quick_listview AND QT_FEATURE_quick_pathview - SOURCES - qquicktumblerview.cpp qquicktumblerview_p.h +set_target_properties(QuickControls2 PROPERTIES + QT_QML_MODULE_INSTALL_QMLTYPES TRUE + QT_QML_MODULE_VERSION ${CMAKE_PROJECT_VERSION} + QT_QML_MODULE_URI QtQuick.Controls + QT_QMLTYPES_FILENAME plugins.qmltypes + QT_QML_MODULE_INSTALL_DIR "${INSTALL_QMLDIR}/QtQuick/Controls" ) + +qt6_qml_type_registration(QuickControls2) diff --git a/src/quickcontrols2/configure.cmake b/src/quickcontrols2/configure.cmake index 768a7c8c..c17574eb 100644 --- a/src/quickcontrols2/configure.cmake +++ b/src/quickcontrols2/configure.cmake @@ -14,30 +14,49 @@ #### Features -qt_feature("quickcontrols2_default" PRIVATE +qt_feature("quickcontrols2-default" PRIVATE LABEL "Default" ) -qt_feature("quickcontrols2_fusion" PRIVATE +qt_feature("quickcontrols2-fusion" PRIVATE SECTION "Quick Controls 2" LABEL "Fusion" PURPOSE "Provides the platform agnostic desktop-oriented Fusion style." CONDITION QT_FEATURE_quickcontrols2_default ) -qt_feature("quickcontrols2_imagine" PRIVATE +qt_feature("quickcontrols2-imagine" PRIVATE SECTION "Quick Controls 2" LABEL "Imagine" PURPOSE "Provides a style based on configurable image assets." CONDITION QT_FEATURE_quickcontrols2_default ) -qt_feature("quickcontrols2_material" PRIVATE +qt_feature("quickcontrols2-material" PRIVATE SECTION "Quick Controls 2" LABEL "Material" PURPOSE "Provides a style based on the Material Design guidelines." CONDITION QT_FEATURE_quickcontrols2_default ) -qt_feature("quickcontrols2_universal" PRIVATE +qt_feature("quickcontrols2-universal" PRIVATE SECTION "Quick Controls 2" LABEL "Universal" PURPOSE "Provides a style based on the Universal Design guidelines." CONDITION QT_FEATURE_quickcontrols2_default ) +qt_feature("quickcontrols2-macos" PRIVATE + SECTION "Quick Controls 2" + LABEL "macOS" + PURPOSE "Provides a native macOS desktop style." + CONDITION QT_FEATURE_quickcontrols2_default +) +qt_feature("quickcontrols2-windows" PRIVATE + SECTION "Quick Controls 2" + LABEL "Windows" + PURPOSE "Provides a native Windows desktop style." + CONDITION QT_FEATURE_quickcontrols2_default +) +qt_configure_add_summary_section(NAME "Qt Quick Controls 2") +qt_configure_add_summary_entry( + TYPE "featureList" + ARGS "quickcontrols2-default quickcontrols2-fusion quickcontrols2-imagine quickcontrols2-material quickcontrols2-universal quickcontrols2-macos quickcontrols2-windows" + MESSAGE "Styles" +) +qt_configure_end_summary_section() # end of "Qt Quick Controls 2" section diff --git a/src/quickcontrols2/configure.json b/src/quickcontrols2/configure.json index 22a602d3..490b9cdf 100644 --- a/src/quickcontrols2/configure.json +++ b/src/quickcontrols2/configure.json @@ -6,7 +6,9 @@ "style-fusion": { "type": "boolean", "name": "quickcontrols2-fusion" }, "style-imagine": { "type": "boolean", "name": "quickcontrols2-imagine" }, "style-material": { "type": "boolean", "name": "quickcontrols2-material" }, - "style-universal": { "type": "boolean", "name": "quickcontrols2-universal" } + "style-universal": { "type": "boolean", "name": "quickcontrols2-universal" }, + "style-macos": { "type": "boolean", "name": "quickcontrols2-macos" }, + "style-windows": { "type": "boolean", "name": "quickcontrols2-windows" } } }, @@ -42,6 +44,20 @@ "section": "Quick Controls 2", "condition": "features.quickcontrols2-default", "output": [ "privateFeature" ] + }, + "quickcontrols2-macos": { + "label": "macOS", + "purpose": "Provides a native macOS desktop style.", + "section": "Quick Controls 2", + "condition": "features.quickcontrols2-default", + "output": [ "privateFeature" ] + }, + "quickcontrols2-windows": { + "label": "Windows", + "purpose": "Provides a native Windows desktop style.", + "section": "Quick Controls 2", + "condition": "features.quickcontrols2-default", + "output": [ "privateFeature" ] } }, @@ -52,7 +68,7 @@ { "message": "Styles", "type": "featureList", - "args": "quickcontrols2-default quickcontrols2-fusion quickcontrols2-imagine quickcontrols2-material quickcontrols2-universal" + "args": "quickcontrols2-default quickcontrols2-fusion quickcontrols2-imagine quickcontrols2-material quickcontrols2-universal quickcontrols2-macos quickcontrols2-windows" } ] } diff --git a/src/quickcontrols2/qquickdummyregistration_p.h b/src/quickcontrols2/qquickdummyregistration_p.h new file mode 100644 index 00000000..4d7fe5e4 --- /dev/null +++ b/src/quickcontrols2/qquickdummyregistration_p.h @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QQUICKDUMMYREGISTRATION_H +#define QQUICKDUMMYREGISTRATION_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include <QtQml/qqml.h> + +QT_BEGIN_NAMESPACE + +// QtQuick.Controls has no types, so if we didn't have this dummy type, +// we'd have no way of specifying the version when the module was added, +// and 6.0 would be the only version that gets registered: QTBUG-85151 +struct QQuickDummyType +{ + Q_GADGET + QML_ANONYMOUS + QML_ADDED_IN_VERSION(2, 0) +}; + +QT_END_NAMESPACE + +#endif // QQUICKDUMMYREGISTRATION_H diff --git a/src/quickcontrols2/qquickstyle.cpp b/src/quickcontrols2/qquickstyle.cpp index e1cf4bfe..3aab8337 100644 --- a/src/quickcontrols2/qquickstyle.cpp +++ b/src/quickcontrols2/qquickstyle.cpp @@ -92,54 +92,23 @@ Q_LOGGING_CATEGORY(lcQtQuickControlsStyle, "qt.quick.controls.style") Qt Quick Controls. It is not possible to change the style after the QML types have been registered. - The style can also be specified as a path to a custom style, such as - \c ":/mystyle". See \l {Creating a Custom Style} for more details about - building custom styles. Custom styles do not need to implement all controls. - By default, the styling system uses the \l {Default style} as a fallback - for controls that a custom style does not provide. It is possible to - specify a different fallback style to customize or extend one of the - built-in styles. + To create your own custom style, see \l {Creating a Custom Style}. Custom + styles do not need to implement all controls. By default, the styling + system uses the \l {Default style} as a fallback for controls that a custom + style does not provide. It is possible to specify a different fallback + style to customize or extend one of the built-in styles. \code - QQuickStyle::setStyle(":/mystyle"); + QQuickStyle::setStyle("MyStyle"); QQuickStyle::setFallbackStyle("Material"); \endcode \sa {Styling Qt Quick Controls} */ -static QStringList envPathList(const QByteArray &var) -{ - QStringList paths; - if (Q_UNLIKELY(!qEnvironmentVariableIsEmpty(var))) { - const QByteArray value = qgetenv(var); - paths += QString::fromLocal8Bit(value).split(QDir::listSeparator(), Qt::SkipEmptyParts); - } - return paths; -} - -static QStringList defaultImportPathList() -{ - QStringList importPaths; - importPaths.reserve(3); -#ifdef Q_OS_ANDROID - // androiddeployqt puts the QML files inside a resource file and they are not - // showing up in the Qml2ImportsPath as a result - importPaths += QStringLiteral(":/android_rcc_bundle/qml"); -#else -# ifndef QT_STATIC - importPaths += QLibraryInfo::location(QLibraryInfo::Qml2ImportsPath); -# endif -#endif - importPaths += envPathList("QML2_IMPORT_PATH"); - importPaths += QStringLiteral(":/qt-project.org/imports"); - importPaths += QCoreApplication::applicationDirPath(); - return importPaths; -} - struct QQuickStyleSpec { - QQuickStyleSpec() : custom(false), resolved(false) { } + QQuickStyleSpec() { } QString name() { @@ -160,6 +129,13 @@ struct QQuickStyleSpec void setStyle(const QString &s) { + qCDebug(lcQtQuickControlsStyle) << "style" << s << "set on QQuickStyleSpec"; + if (s.contains(QLatin1Char('/'))) { + qWarning() << "Style names must not contain paths; see the \"Definition of a Style\" documentation for more information"; + return; + } + + qCDebug(lcQtQuickControlsStyle) << "clearing resolved flag and resolving"; style = s; resolved = false; resolve(); @@ -171,27 +147,9 @@ struct QQuickStyleSpec fallbackMethod = method; } - static QString findStyle(const QString &path, const QString &name) + void resolve() { - QDir dir(path); - if (!dir.exists()) - return QString(); - - if (name.isEmpty()) - return dir.absolutePath() + QLatin1Char('/'); - - const QStringList entries = dir.entryList(QStringList(), QDir::Dirs | QDir::NoDotAndDotDot); - for (const QString &entry : entries) { - if (entry.compare(name, Qt::CaseInsensitive) == 0) - return dir.absoluteFilePath(entry); - } - - return QString(); - } - - void resolve(const QUrl &baseUrl = QUrl()) - { - qCDebug(lcQtQuickControlsStyle) << "resolving style with baseUrl" << baseUrl; + qCDebug(lcQtQuickControlsStyle) << "resolving style"; if (style.isEmpty()) style = QGuiApplicationPrivate::styleOverride; @@ -211,53 +169,33 @@ struct QQuickStyleSpec } #endif - // resolve a path relative to the config - QString configPath = QFileInfo(resolveConfigFilePath()).path(); - QString stylePath = findStyle(configPath, style); - if (!stylePath.isEmpty()) { - style = stylePath; - resolved = true; + auto builtInStyleList = QQuickStylePrivate::builtInStyles(); + if (!fallbackStyle.isEmpty() && !builtInStyleList.contains(fallbackStyle)) { + qWarning().nospace().noquote() << fallbackMethod << ": the specified fallback style \"" << + fallbackStyle << "\" is not one of the built-in Qt Quick Controls 2 styles"; + fallbackStyle.clear(); } - custom = style.contains(QLatin1Char('/')); + // Find the config file. + resolveConfigFilePath(); - if (baseUrl.isValid()) { - QString path = QQmlFile::urlToLocalFileOrQrc(baseUrl); - QString stylePath = findStyle(path, style); - if (!stylePath.isEmpty()) { - style = stylePath; - resolved = true; - } - } + custom = !builtInStyleList.contains(QQuickStylePrivate::effectiveStyleName(style)); - if (QGuiApplication::instance()) { - if (!custom) { - const QStringList stylePaths = QQuickStylePrivate::stylePaths(); - for (const QString &path : stylePaths) { - QString stylePath = findStyle(path, style); - if (!stylePath.isEmpty()) { - custom = !stylePath.startsWith(QQmlFile::urlToLocalFileOrQrc(baseUrl)); - style = stylePath; - resolved = true; - break; - } - } - } - resolved = true; - } + resolved = true; qCDebug(lcQtQuickControlsStyle).nospace() << "done resolving:" + << "\n style=" << style << "\n custom=" << custom << "\n resolved=" << resolved - << "\n style=" << style << "\n fallbackStyle=" << fallbackStyle << "\n fallbackMethod=" << fallbackMethod - << "\n configFilePath=" << configFilePath - << "\n customStylePaths=" << customStylePaths; + << "\n configFilePath=" << configFilePath; } void reset() { + qCDebug(lcQtQuickControlsStyle) << "resetting values to their defaults"; + custom = false; resolved = false; style.clear(); @@ -281,10 +219,10 @@ struct QQuickStyleSpec } // Is this a custom style defined by the user and not "built-in" style? - bool custom; - // Did we manage to find a valid style path? - bool resolved; - // The full path to the style. + bool custom = false; + // Have we resolved the style yet? + bool resolved = false; + // The name of the style. QString style; // The built-in style to use if the requested style cannot be found. QString fallbackStyle; @@ -292,102 +230,13 @@ struct QQuickStyleSpec QByteArray fallbackMethod; // The path to the qtquickcontrols2.conf file. QString configFilePath; - // An extra list of directories where we search for available styles before any other directories. - QStringList customStylePaths; }; Q_GLOBAL_STATIC(QQuickStyleSpec, styleSpec) -static QStringList parseStylePathsWithColon(const QString &var) +QString QQuickStylePrivate::effectiveStyleName(const QString &styleName) { - QStringList paths; - const QChar colon = QLatin1Char(':'); - int currentIndex = 0; - - do { - int nextColonIndex = -1; - QString path; - - if (var.at(currentIndex) == colon) { - // This is either a list separator, or a qrc path. - if (var.at(currentIndex + 1) == colon) { - // It's a double colon (list separator followed by qrc path); - // find the end of the path. - nextColonIndex = var.indexOf(colon, currentIndex + 2); - path = var.mid(currentIndex + 1, - nextColonIndex == -1 ? -1 : nextColonIndex - currentIndex - 1); - } else { - // It's a single colon. - nextColonIndex = var.indexOf(colon, currentIndex + 1); - if (currentIndex == 0) { - // If we're at the start of the string, then it's a qrc path. - path = var.mid(currentIndex, - nextColonIndex == -1 ? -1 : nextColonIndex - currentIndex); - } else { - // Otherwise, it's a separator. - path = var.mid(currentIndex + 1, - nextColonIndex == -1 ? -1 : nextColonIndex - currentIndex - 1); - } - } - } else { - // It's a file path. - nextColonIndex = var.indexOf(colon, currentIndex); - path = var.mid(currentIndex, - nextColonIndex == -1 ? -1 : nextColonIndex - currentIndex); - } - - paths += path; - currentIndex = nextColonIndex; - - // Keep going until we can't find any more colons, - // or we're at the last character. - } while (currentIndex != -1 && currentIndex < var.size() - 1); - - return paths; -} - -QStringList QQuickStylePrivate::stylePaths(bool resolve) -{ - // user-requested style path - QStringList paths; - if (resolve) { - QString path = styleSpec()->path(); - if (path.endsWith(QLatin1Char('/'))) - path.chop(1); - if (!path.isEmpty()) - paths += path; - } - - if (Q_UNLIKELY(!qEnvironmentVariableIsEmpty("QT_QUICK_CONTROLS_STYLE_PATH"))) { - const QString value = QString::fromLocal8Bit(qgetenv("QT_QUICK_CONTROLS_STYLE_PATH")); - const QChar listSeparator = QDir::listSeparator(); - if (listSeparator == QLatin1Char(':')) { - // Split manually to avoid breaking paths on systems where : is the list separator, - // since it's also used for qrc paths. - paths += parseStylePathsWithColon(value); - } else { - // Fast/simpler path for systems where something other than : is used as - // the list separator (such as ';'). - const QStringList customPaths = value.split(listSeparator, Qt::SkipEmptyParts); - paths += customPaths; - } - } - - // system/custom style paths - paths += styleSpec()->customStylePaths; - paths += envPathList("QT_QUICK_CONTROLS_STYLE_PATH"); - - // built-in import paths - const QString targetPath = QStringLiteral("QtQuick/Controls.2"); - const QStringList importPaths = defaultImportPathList(); - for (const QString &importPath : importPaths) { - QDir dir(importPath); - if (dir.cd(targetPath)) - paths += dir.absolutePath(); - } - - paths.removeDuplicates(); - return paths; + return !styleName.isEmpty() ? styleName : QLatin1String("Default"); } QString QQuickStylePrivate::fallbackStyle() @@ -400,27 +249,15 @@ bool QQuickStylePrivate::isCustomStyle() return styleSpec()->custom; } -void QQuickStylePrivate::init(const QUrl &baseUrl) +bool QQuickStylePrivate::isResolved() +{ + return styleSpec()->resolved; +} + +void QQuickStylePrivate::init() { QQuickStyleSpec *spec = styleSpec(); - spec->resolve(baseUrl); - - if (!spec->fallbackStyle.isEmpty()) { - QString fallbackStyle; - const QStringList stylePaths = QQuickStylePrivate::stylePaths(); - for (const QString &path : stylePaths) { - fallbackStyle = spec->findStyle(path, spec->fallbackStyle); - if (!fallbackStyle.isEmpty()) - break; - } - if (fallbackStyle.isEmpty()) { - if (spec->fallbackStyle.compare(QStringLiteral("Default")) != 0) { - qWarning() << "ERROR: unable to locate fallback style" << spec->fallbackStyle; - qInfo().nospace().noquote() << spec->fallbackMethod << ": the fallback style must be the name of one of the built-in Qt Quick Controls 2 styles."; - } - spec->fallbackStyle.clear(); - } - } + spec->resolve(); } void QQuickStylePrivate::reset() @@ -541,6 +378,19 @@ bool QQuickStylePrivate::isDarkSystemTheme() return dark; } +QStringList QQuickStylePrivate::builtInStyles() +{ + return { + QLatin1String("Default"), + QLatin1String("Fusion"), + QLatin1String("Imagine"), + QLatin1String("macOS"), + QLatin1String("Material"), + QLatin1String("Universal"), + QLatin1String("Windows") + }; +} + /*! Returns the name of the application style. @@ -554,19 +404,6 @@ QString QQuickStyle::name() } /*! - Returns the path of an overridden application style, or an empty - string if the style is one of the built-in Qt Quick Controls 2 styles. - - \note The application style can be specified by passing a \c -style command - line argument. Therefore \c path() may not return a fully resolved - value if called before constructing a QGuiApplication. -*/ -QString QQuickStyle::path() -{ - return styleSpec()->path(); -} - -/*! Sets the application style to \a style. \note The style must be configured \b before loading QML that imports Qt Quick Controls. @@ -578,7 +415,8 @@ void QQuickStyle::setStyle(const QString &style) { qCDebug(lcQtQuickControlsStyle) << "setStyle called with" << style; - if (QQmlMetaType::isModule(QStringLiteral("QtQuick.Controls"), QTypeRevision::fromVersion(2, 0))) { + if (QQmlMetaType::matchingModuleVersion( + QStringLiteral("QtQuick.Controls"), QTypeRevision::fromVersion(2, 0)).isValid()) { qWarning() << "ERROR: QQuickStyle::setStyle() must be called before loading QML that imports Qt Quick Controls 2."; return; } @@ -602,7 +440,8 @@ void QQuickStyle::setStyle(const QString &style) */ void QQuickStyle::setFallbackStyle(const QString &style) { - if (QQmlMetaType::isModule(QStringLiteral("QtQuick.Controls"), QTypeRevision::fromVersion(2, 0))) { + if (QQmlMetaType::matchingModuleVersion( + QStringLiteral("QtQuick.Controls"), QTypeRevision::fromVersion(2, 0)).isValid()) { qWarning() << "ERROR: QQuickStyle::setFallbackStyle() must be called before loading QML that imports Qt Quick Controls 2."; return; } @@ -610,88 +449,4 @@ void QQuickStyle::setFallbackStyle(const QString &style) styleSpec()->setFallbackStyle(style, "QQuickStyle::setFallbackStyle()"); } -/*! - \since 5.9 - Returns the names of the available styles. - - \note The method must be called \b after creating an instance of QGuiApplication. - - \sa stylePathList(), addStylePath() -*/ -QStringList QQuickStyle::availableStyles() -{ - QStringList styles; - if (!QGuiApplication::instance()) { - qWarning() << "ERROR: QQuickStyle::availableStyles() must be called after creating an instance of QGuiApplication."; - return styles; - } - - const QStringList stylePaths = QQuickStylePrivate::stylePaths(); - for (const QString &path : stylePaths) { - const QList<QFileInfo> entries = QDir(path).entryInfoList(QDir::Dirs | QDir::NoDotAndDotDot); - for (const QFileInfo &entry : entries) { - const QString name = entry.fileName(); - if (!name.endsWith(QLatin1String(".dSYM")) && name != QLatin1String("designer")) - styles += name; - } - } - styles.prepend(QStringLiteral("Default")); - styles.removeDuplicates(); - return styles; -} - -/*! - \since 5.12 - - Returns the list of directories where Qt Quick Controls 2 searches for available styles. - - By default, the list contains paths specified in the \c QT_QUICK_CONTROLS_STYLE_PATH - environment variable, and any existing \c QtQuick/Controls.2 sub-directories in - \l QQmlEngine::importPathList(). - - \sa addStylePath(), availableStyles() -*/ -QStringList QQuickStyle::stylePathList() -{ - return QQuickStylePrivate::stylePaths(); -} - -/*! - \since 5.12 - - Adds \a path as a directory where Qt Quick Controls 2 searches for available styles. - - The \a path may be any local filesystem directory or \l {The Qt Resource System}{Qt Resource} directory. - For example, the following paths are all valid: - - \list - \li \c {/path/to/styles/} - \li \c {file:///path/to/styles/} - \li \c {:/path/to/styles/} - \li \c {qrc:/path/to/styles/}) - \endlist - - The \a path will be converted into \l {QDir::canonicalPath}{canonical form} before it is added to - the style path list. - - The newly added \a path will be first in the stylePathList(). - - \sa stylePathList(), availableStyles() -*/ -void QQuickStyle::addStylePath(const QString &path) -{ - if (path.isEmpty()) - return; - - const QUrl url = QUrl(path); - if (url.isRelative() || url.scheme() == QLatin1String("file") - || (url.scheme().length() == 1 && QFile::exists(path)) ) { // windows path - styleSpec()->customStylePaths.prepend(QDir(path).canonicalPath()); - } else if (url.scheme() == QLatin1String("qrc")) { - styleSpec()->customStylePaths.prepend(QLatin1Char(':') + url.path()); - } else { - styleSpec()->customStylePaths.prepend(path); - } -} - QT_END_NAMESPACE diff --git a/src/quickcontrols2/qquickstyle.h b/src/quickcontrols2/qquickstyle.h index ce55b76b..e26ec90b 100644 --- a/src/quickcontrols2/qquickstyle.h +++ b/src/quickcontrols2/qquickstyle.h @@ -47,12 +47,8 @@ class Q_QUICKCONTROLS2_EXPORT QQuickStyle { public: static QString name(); - static QString path(); static void setStyle(const QString &style); static void setFallbackStyle(const QString &style); - static QStringList availableStyles(); - static QStringList stylePathList(); - static void addStylePath(const QString &path); }; QT_END_NAMESPACE diff --git a/src/quickcontrols2/qquickstyle_p.h b/src/quickcontrols2/qquickstyle_p.h index 205a4a11..e2db35d7 100644 --- a/src/quickcontrols2/qquickstyle_p.h +++ b/src/quickcontrols2/qquickstyle_p.h @@ -48,27 +48,29 @@ // We mean it. // -#include <QtCore/qurl.h> #include <QtCore/qsharedpointer.h> -#include <QtQuickControls2/private/qtquickcontrols2global_p.h> +#include <QtQuickControls2/qtquickcontrols2global.h> QT_BEGIN_NAMESPACE class QSettings; -class Q_QUICKCONTROLS2_PRIVATE_EXPORT QQuickStylePrivate +class Q_QUICKCONTROLS2_EXPORT QQuickStylePrivate { public: - static QStringList stylePaths(bool resolve = false); + static QString effectiveStyleName(const QString &styleName); static QString fallbackStyle(); static bool isCustomStyle(); - static void init(const QUrl &baseUrl); + static bool isResolved(); + static bool exists(); + static void init(); static void reset(); static QString configFilePath(); static QSharedPointer<QSettings> settings(const QString &group = QString()); static const QFont *readFont(const QSharedPointer<QSettings> &settings); static const QPalette *readPalette(const QSharedPointer<QSettings> &settings); static bool isDarkSystemTheme(); + static QStringList builtInStyles(); }; QT_END_NAMESPACE diff --git a/src/quickcontrols2/qquickstyleplugin.cpp b/src/quickcontrols2/qquickstyleplugin.cpp index c35c8735..1f1c3875 100644 --- a/src/quickcontrols2/qquickstyleplugin.cpp +++ b/src/quickcontrols2/qquickstyleplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2017 The Qt Company Ltd. +** Copyright (C) 2020 The Qt Company Ltd. ** Contact: http://www.qt.io/licensing/ ** ** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit. @@ -34,21 +34,22 @@ ** ****************************************************************************/ -#include "qquickstyleplugin_p.h" #include "qquickstyle.h" #include "qquickstyle_p.h" -#include "qquickstyleselector_p.h" +#include "qquickstyleplugin_p.h" + +#include <QtCore/qloggingcategory.h> +#include <QtQml/qqmlengine.h> +#include <QtQml/qqmlfile.h> + +#include <QtQuickTemplates2/private/qquicktheme_p_p.h> QT_BEGIN_NAMESPACE -class QQuickStylePluginPrivate -{ -public: - mutable QScopedPointer<QQuickStyleSelector> selector; -}; +Q_LOGGING_CATEGORY(lcStylePlugin, "qt.quick.controls.styleplugin") QQuickStylePlugin::QQuickStylePlugin(QObject *parent) - : QQmlExtensionPlugin(parent), d_ptr(new QQuickStylePluginPrivate) + : QQmlExtensionPlugin(parent) { } @@ -61,39 +62,14 @@ QString QQuickStylePlugin::name() const return QString(); } -void QQuickStylePlugin::initializeTheme(QQuickTheme *theme) +void QQuickStylePlugin::registerTypes(const char *uri) { - Q_UNUSED(theme) + qCDebug(lcStylePlugin).nospace() << "registerTypes called with uri " << uri << "; plugin name is " << name(); } void QQuickStylePlugin::unregisterTypes() { - Q_D(QQuickStylePlugin); - // Destroy the selector so that it is recreated in resolvedUrl() and - // any new style that has been set at runtime will be accounted for when selecting QML files. - d->selector.reset(); -} - -QUrl QQuickStylePlugin::resolvedUrl(const QString &fileName) const -{ - Q_D(const QQuickStylePlugin); - if (!d->selector) { - d->selector.reset(new QQuickStyleSelector); - const QString style = QQuickStyle::name(); - if (!style.isEmpty()) - d->selector->addSelector(style); - - const QString fallback = QQuickStylePrivate::fallbackStyle(); - if (!fallback.isEmpty() && fallback != style) - d->selector->addSelector(fallback); - - const QString theme = name(); - if (!theme.isEmpty() && theme != style) - d->selector->addSelector(theme); - - d->selector->setPaths(QQuickStylePrivate::stylePaths(true)); - } - return d->selector->select(fileName); + qCDebug(lcStylePlugin) << "unregisterTypes called; plugin name is" << name(); } QT_END_NAMESPACE diff --git a/src/quickcontrols2/qquickstyleplugin_p.h b/src/quickcontrols2/qquickstyleplugin_p.h index 67103e12..37d070db 100644 --- a/src/quickcontrols2/qquickstyleplugin_p.h +++ b/src/quickcontrols2/qquickstyleplugin_p.h @@ -49,14 +49,13 @@ // #include <QtQml/qqmlextensionplugin.h> -#include <QtQuickControls2/private/qtquickcontrols2global_p.h> +#include <QtQuickControls2/qtquickcontrols2global.h> QT_BEGIN_NAMESPACE class QQuickTheme; -class QQuickStylePluginPrivate; -class Q_QUICKCONTROLS2_PRIVATE_EXPORT QQuickStylePlugin : public QQmlExtensionPlugin +class Q_QUICKCONTROLS2_EXPORT QQuickStylePlugin : public QQmlExtensionPlugin { Q_OBJECT @@ -65,15 +64,12 @@ public: ~QQuickStylePlugin(); virtual QString name() const; - virtual void initializeTheme(QQuickTheme *theme); - virtual void unregisterTypes() override; - QUrl resolvedUrl(const QString &fileName) const; + void registerTypes(const char *uri) override; + void unregisterTypes() override; private: Q_DISABLE_COPY(QQuickStylePlugin) - Q_DECLARE_PRIVATE(QQuickStylePlugin) - QScopedPointer<QQuickStylePluginPrivate> d_ptr; }; QT_END_NAMESPACE diff --git a/src/quickcontrols2/qquickstyleselector.cpp b/src/quickcontrols2/qquickstyleselector.cpp deleted file mode 100644 index 72e7af66..00000000 --- a/src/quickcontrols2/qquickstyleselector.cpp +++ /dev/null @@ -1,163 +0,0 @@ -/*************************************************************************** -** -** Copyright (C) 2017 The Qt Company Ltd. -** Copyright (C) 2013 BlackBerry Limited. All rights reserved. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPL3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or (at your option) the GNU General -** Public license version 3 or any later version approved by the KDE Free -** Qt Foundation. The licenses are as published by the Free Software -** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-2.0.html and -** https://www.gnu.org/licenses/gpl-3.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qquickstyleselector_p.h" -#include "qquickstyleselector_p_p.h" - -#include <QtCore/qfileinfo.h> -#include <QtCore/qlocale.h> -#include <QtCore/qloggingcategory.h> -#include <QtCore/private/qfileselector_p.h> - -QT_BEGIN_NAMESPACE - -Q_LOGGING_CATEGORY(lcStyleSelectorSelect, "qt.quick.controls.styleSelector.select") -Q_LOGGING_CATEGORY(lcStyleSelectorSetPaths, "qt.quick.controls.styleSelector.setPaths") -Q_LOGGING_CATEGORY(lcStyleSelectorAddSelector, "qt.quick.controls.styleSelector.addSelector") - -static QString ensureSlash(const QString &path) -{ - if (path.isEmpty() || path.endsWith(QLatin1Char('/'))) - return path; - return path + QLatin1Char('/'); -} - -static QStringList prefixedPlatformSelectors(const QChar &prefix) -{ - QStringList selectors = QFileSelectorPrivate::platformSelectors(); - for (int i = 0; i < selectors.count(); ++i) - selectors[i].prepend(prefix); - return selectors; -} - -static QStringList allSelectors() -{ - static const QStringList platformSelectors = prefixedPlatformSelectors(QLatin1Char('+')); - QStringList selectors = platformSelectors; - const QString locale = QLocale().name(); - if (!locale.isEmpty()) - selectors += QLatin1Char('+') + locale; - return selectors; -} - -QUrl QQuickStyleSelectorPrivate::select(const QString &filePath) const -{ - QFileInfo fi(filePath); - // If file doesn't exist, don't select - if (!fi.exists()) - return QUrl(); - - const QString selected = QFileSelectorPrivate::selectionHelper(ensureSlash(fi.canonicalPath()), - fi.fileName(), allSelectors(), QChar()); - - if (selected.startsWith(QLatin1Char(':'))) - return QUrl(QLatin1String("qrc") + selected); - - return QUrl::fromLocalFile(selected.isEmpty() ? filePath : selected); -} - -QQuickStyleSelector::QQuickStyleSelector() : d_ptr(new QQuickStyleSelectorPrivate) -{ -} - -QQuickStyleSelector::~QQuickStyleSelector() -{ -} - -QStringList QQuickStyleSelector::selectors() const -{ - Q_D(const QQuickStyleSelector); - return d->selectors; -} - -void QQuickStyleSelector::addSelector(const QString &selector) -{ - Q_D(QQuickStyleSelector); - if (d->selectors.contains(selector)) - return; - - d->selectors += selector; - - qCDebug(lcStyleSelectorSetPaths).nospace() << "added selector " << selector - << "; full list is now: " << d->selectors; -} - -QStringList QQuickStyleSelector::paths() const -{ - Q_D(const QQuickStyleSelector); - return d->paths; -} - -void QQuickStyleSelector::setPaths(const QStringList &paths) -{ - Q_D(QQuickStyleSelector); - qCDebug(lcStyleSelectorSetPaths) << "setting paths to" << paths; - d->paths = paths; -} - -QUrl QQuickStyleSelector::select(const QString &fileName) const -{ - Q_D(const QQuickStyleSelector); - // The lookup order is - // 1) requested style (e.g. "MyStyle", included in d->selectors) - // 2) fallback style (e.g. "Material", included in d->selectors) - // 3) default style (empty selector, not in d->selectors) - qCDebug(lcStyleSelectorSelect) << "selecting" << fileName << "from" << d->paths << "with selectors" << d->selectors; - - int to = d->selectors.count() - 1; - if (d->selectors.isEmpty() || !d->selectors.first().isEmpty()) - ++to; // lookup #3 unless #1 is also empty (redundant) - - // NOTE: last iteration intentionally out of bounds => empty selector - for (int i = 0; i <= to; ++i) { - const QString selector = d->selectors.value(i); - for (const QString &path : d->paths) { - const QUrl selectedUrl = d->select(ensureSlash(path) + selector + QLatin1Char('/') + fileName); - if (selectedUrl.isValid()) { - qCDebug(lcStyleSelectorSelect) << "==>" << selectedUrl << "from" << path << "with selector" << selector; - return selectedUrl; - } - } - } - - return fileName; -} - -QT_END_NAMESPACE diff --git a/src/quickcontrols2/qquickstyleselector_p.h b/src/quickcontrols2/qquickstyleselector_p.h deleted file mode 100644 index c4c0f540..00000000 --- a/src/quickcontrols2/qquickstyleselector_p.h +++ /dev/null @@ -1,86 +0,0 @@ -/*************************************************************************** -** -** Copyright (C) 2017 The Qt Company Ltd. -** Copyright (C) 2013 BlackBerry Limited. All rights reserved. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPL3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or (at your option) the GNU General -** Public license version 3 or any later version approved by the KDE Free -** Qt Foundation. The licenses are as published by the Free Software -** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-2.0.html and -** https://www.gnu.org/licenses/gpl-3.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QQUICKSTYLESELECTOR_P_H -#define QQUICKSTYLESELECTOR_P_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists purely as an -// implementation detail. This header file may change from version to -// version without notice, or even be removed. -// -// We mean it. -// - -#include <QtCore/qurl.h> -#include <QtCore/qstring.h> -#include <QtCore/qscopedpointer.h> -#include <QtQuickControls2/private/qtquickcontrols2global_p.h> - -QT_BEGIN_NAMESPACE - -class QQuickStyleSelectorPrivate; - -class Q_QUICKCONTROLS2_PRIVATE_EXPORT QQuickStyleSelector -{ -public: - QQuickStyleSelector(); - ~QQuickStyleSelector(); - - QStringList selectors() const; - void addSelector(const QString &selector); - - QStringList paths() const; - void setPaths(const QStringList &paths); - - QUrl select(const QString &fileName) const; - -private: - Q_DISABLE_COPY(QQuickStyleSelector) - Q_DECLARE_PRIVATE(QQuickStyleSelector) - QScopedPointer<QQuickStyleSelectorPrivate> d_ptr; -}; - -QT_END_NAMESPACE - -#endif // QQUICKSTYLESELECTOR_P_H diff --git a/src/quickcontrols2/qquickstyleselector_p_p.h b/src/quickcontrols2/qquickstyleselector_p_p.h deleted file mode 100644 index e69e7db2..00000000 --- a/src/quickcontrols2/qquickstyleselector_p_p.h +++ /dev/null @@ -1,70 +0,0 @@ -/*************************************************************************** -** -** Copyright (C) 2017 The Qt Company Ltd. -** Copyright (C) 2013 BlackBerry Limited. All rights reserved. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPL3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or (at your option) the GNU General -** Public license version 3 or any later version approved by the KDE Free -** Qt Foundation. The licenses are as published by the Free Software -** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-2.0.html and -** https://www.gnu.org/licenses/gpl-3.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QQUICKSTYLESELECTOR_P_P_H -#define QQUICKSTYLESELECTOR_P_P_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists purely as an -// implementation detail. This header file may change from version to -// version without notice, or even be removed. -// -// We mean it. -// - -#include <QtQuickControls2/private/qquickstyleselector_p.h> - -QT_BEGIN_NAMESPACE - -class QQuickStyleSelectorPrivate -{ -public: - QUrl select(const QString &filePath) const; - - QStringList paths; - QStringList selectors; -}; - -QT_END_NAMESPACE - -#endif // QQUICKSTYLESELECTOR_P_P_H diff --git a/src/quickcontrols2/qtquickcontrols2global_p.h b/src/quickcontrols2/qtquickcontrols2global_p.h deleted file mode 100644 index 7a54849e..00000000 --- a/src/quickcontrols2/qtquickcontrols2global_p.h +++ /dev/null @@ -1,56 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL3$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPLv3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or later as published by the Free -** Software Foundation and appearing in the file LICENSE.GPL included in -** the packaging of this file. Please review the following information to -** ensure the GNU General Public License version 2.0 requirements will be -** met: http://www.gnu.org/licenses/gpl-2.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QTQUICKCONTROLS2GLOBAL_P_H -#define QTQUICKCONTROLS2GLOBAL_P_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists purely as an -// implementation detail. This header file may change from version to -// version without notice, or even be removed. -// -// We mean it. -// - -#include <QtQuickControls2/qtquickcontrols2global.h> -#include <QtQuickControls2/private/qtquickcontrols2-config_p.h> - -#define Q_QUICKCONTROLS2_PRIVATE_EXPORT Q_QUICKCONTROLS2_EXPORT - -#endif // QTQUICKCONTROLS2GLOBAL_P_H diff --git a/src/quickcontrols2/quickcontrols2.pro b/src/quickcontrols2/quickcontrols2.pro index 8aec9953..5383f8d8 100644 --- a/src/quickcontrols2/quickcontrols2.pro +++ b/src/quickcontrols2/quickcontrols2.pro @@ -8,7 +8,19 @@ DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII HEADERS += \ $$PWD/qtquickcontrols2global.h \ - $$PWD/qtquickcontrols2global_p.h + $$PWD/qquickdummyregistration_p.h \ + $$PWD/qquickstyle.h \ + $$PWD/qquickstyle_p.h \ + $$PWD/qquickstyleplugin_p.h + +SOURCES += \ + $$PWD/qquickstyle.cpp \ + $$PWD/qquickstyleplugin.cpp + +QMLTYPES_FILENAME = plugins.qmltypes +QMLTYPES_INSTALL_DIR = $$[QT_INSTALL_QML]/QtQuick/Controls +QML_IMPORT_NAME = QtQuick.Controls +QML_IMPORT_VERSION = $$QT_VERSION +CONFIG += qmltypes install_qmltypes install_metatypes -include(quickcontrols2.pri) load(qt_module) diff --git a/src/quickcontrols2impl/CMakeLists.txt b/src/quickcontrols2impl/CMakeLists.txt new file mode 100644 index 00000000..48e3ab3d --- /dev/null +++ b/src/quickcontrols2impl/CMakeLists.txt @@ -0,0 +1,64 @@ +# Generated from quickcontrols2impl.pro. + +##################################################################### +## QuickControls2Impl Module: +##################################################################### + +qt_add_module(QuickControls2Impl + GENERATE_METATYPES + SOURCES + qquickanimatednode.cpp qquickanimatednode_p.h + qquickattachedobject.cpp qquickattachedobject_p.h + qquickchecklabel.cpp qquickchecklabel_p.h + qquickclippedtext.cpp qquickclippedtext_p.h + qquickcolor.cpp qquickcolor_p.h + qquickcolorimage.cpp qquickcolorimage_p.h + qquickiconimage.cpp qquickiconimage_p.h + qquickiconimage_p_p.h + qquickiconlabel.cpp qquickiconlabel_p.h + qquickiconlabel_p_p.h + qquickitemgroup.cpp qquickitemgroup_p.h + qquickmnemoniclabel.cpp qquickmnemoniclabel_p.h + qquickpaddedrectangle.cpp qquickpaddedrectangle_p.h + qquickplaceholdertext.cpp qquickplaceholdertext_p.h + qtquickcontrols2foreign_p.h + qtquickcontrols2implglobal_p.h + DEFINES + QT_NO_CAST_FROM_ASCII + QT_NO_CAST_TO_ASCII + LIBRARIES + Qt::CorePrivate + Qt::GuiPrivate + Qt::QmlPrivate + Qt::QuickPrivate + Qt::QuickTemplates2Private + PUBLIC_LIBRARIES + Qt::Core + Qt::Gui + Qt::Quick +) + +#### Keys ignored in scope 1:.:.:quickcontrols2impl.pro:<TRUE>: +# MODULE = "quickcontrols2impl" +# QMLTYPES_FILENAME = "plugins.qmltypes" +# QMLTYPES_INSTALL_DIR = "$$[QT_INSTALL_QML]/QtQuick/Controls/impl" +# QML_IMPORT_NAME = "QtQuick.Controls.impl" +# QML_IMPORT_VERSION = "$$QT_VERSION" + +## Scopes: +##################################################################### + +qt_extend_target(QuickControls2Impl CONDITION QT_FEATURE_quick_listview AND QT_FEATURE_quick_pathview + SOURCES + qquicktumblerview.cpp qquicktumblerview_p.h +) + +set_target_properties(QuickControls2Impl PROPERTIES + QT_QML_MODULE_INSTALL_QMLTYPES TRUE + QT_QML_MODULE_VERSION ${CMAKE_PROJECT_VERSION} + QT_QML_MODULE_URI QtQuick.Controls.impl + QT_QMLTYPES_FILENAME plugins.qmltypes + QT_QML_MODULE_INSTALL_DIR "${INSTALL_QMLDIR}/QtQuick/Controls/impl" +) + +qt6_qml_type_registration(QuickControls2Impl) diff --git a/src/quickcontrols2/qquickanimatednode.cpp b/src/quickcontrols2impl/qquickanimatednode.cpp index b4e665de..b4e665de 100644 --- a/src/quickcontrols2/qquickanimatednode.cpp +++ b/src/quickcontrols2impl/qquickanimatednode.cpp diff --git a/src/quickcontrols2/qquickanimatednode_p.h b/src/quickcontrols2impl/qquickanimatednode_p.h index d42d9319..e403f0bf 100644 --- a/src/quickcontrols2/qquickanimatednode_p.h +++ b/src/quickcontrols2impl/qquickanimatednode_p.h @@ -50,7 +50,7 @@ #include <QtQuick/qsgnode.h> #include <QtCore/qelapsedtimer.h> -#include <QtQuickControls2/private/qtquickcontrols2global_p.h> +#include <QtQuickControls2Impl/private/qtquickcontrols2implglobal_p.h> QT_BEGIN_NAMESPACE diff --git a/src/quickcontrols2/qquickattachedobject.cpp b/src/quickcontrols2impl/qquickattachedobject.cpp index 722f22f9..722f22f9 100644 --- a/src/quickcontrols2/qquickattachedobject.cpp +++ b/src/quickcontrols2impl/qquickattachedobject.cpp diff --git a/src/quickcontrols2/qquickattachedobject_p.h b/src/quickcontrols2impl/qquickattachedobject_p.h index 1e90c082..cd2404c2 100644 --- a/src/quickcontrols2/qquickattachedobject_p.h +++ b/src/quickcontrols2impl/qquickattachedobject_p.h @@ -50,7 +50,7 @@ #include <QtQml/qqml.h> #include <QtCore/qobject.h> -#include <QtQuickControls2/private/qtquickcontrols2global_p.h> +#include <QtQuickControls2Impl/private/qtquickcontrols2implglobal_p.h> QT_BEGIN_NAMESPACE diff --git a/src/quickcontrols2/qquickchecklabel.cpp b/src/quickcontrols2impl/qquickchecklabel.cpp index dccbf77f..dccbf77f 100644 --- a/src/quickcontrols2/qquickchecklabel.cpp +++ b/src/quickcontrols2impl/qquickchecklabel.cpp diff --git a/src/quickcontrols2/qquickchecklabel_p.h b/src/quickcontrols2impl/qquickchecklabel_p.h index 100ef48f..823ce9df 100644 --- a/src/quickcontrols2/qquickchecklabel_p.h +++ b/src/quickcontrols2impl/qquickchecklabel_p.h @@ -49,18 +49,28 @@ // #include <QtQuick/private/qquicktext_p.h> -#include <QtQuickControls2/private/qtquickcontrols2global_p.h> +#include <QtQuickControls2Impl/private/qtquickcontrols2implglobal_p.h> QT_BEGIN_NAMESPACE class Q_QUICKCONTROLS2_PRIVATE_EXPORT QQuickCheckLabel : public QQuickText { Q_OBJECT + QML_NAMED_ELEMENT(CheckLabel) + QML_ADDED_IN_VERSION(2, 3) public: explicit QQuickCheckLabel(QQuickItem *parent = nullptr); }; +struct QQuickTextForeign +{ + Q_GADGET + QML_ANONYMOUS + QML_FOREIGN(QQuickText) + QML_ADDED_IN_VERSION(2, 3) +}; + QT_END_NAMESPACE QML_DECLARE_TYPE(QQuickCheckLabel) diff --git a/src/quickcontrols2/qquickclippedtext.cpp b/src/quickcontrols2impl/qquickclippedtext.cpp index 862197f3..862197f3 100644 --- a/src/quickcontrols2/qquickclippedtext.cpp +++ b/src/quickcontrols2impl/qquickclippedtext.cpp diff --git a/src/quickcontrols2/qquickclippedtext_p.h b/src/quickcontrols2impl/qquickclippedtext_p.h index 486ac7c4..f3b011fd 100644 --- a/src/quickcontrols2/qquickclippedtext_p.h +++ b/src/quickcontrols2impl/qquickclippedtext_p.h @@ -49,7 +49,7 @@ // #include <QtQuick/private/qquicktext_p.h> -#include <QtQuickControls2/private/qtquickcontrols2global_p.h> +#include <QtQuickControls2Impl/private/qtquickcontrols2implglobal_p.h> QT_BEGIN_NAMESPACE @@ -60,6 +60,8 @@ class Q_QUICKCONTROLS2_PRIVATE_EXPORT QQuickClippedText : public QQuickText Q_PROPERTY(qreal clipY READ clipY WRITE setClipY FINAL) Q_PROPERTY(qreal clipWidth READ clipWidth WRITE setClipWidth FINAL) Q_PROPERTY(qreal clipHeight READ clipHeight WRITE setClipHeight FINAL) + QML_NAMED_ELEMENT(ClippedText) + QML_ADDED_IN_VERSION(2, 2) public: explicit QQuickClippedText(QQuickItem *parent = nullptr); diff --git a/src/quickcontrols2/qquickcolor.cpp b/src/quickcontrols2impl/qquickcolor.cpp index 8ae568fc..8ae568fc 100644 --- a/src/quickcontrols2/qquickcolor.cpp +++ b/src/quickcontrols2impl/qquickcolor.cpp diff --git a/src/quickcontrols2/qquickcolor_p.h b/src/quickcontrols2impl/qquickcolor_p.h index 657a9fa4..cd69d0d8 100644 --- a/src/quickcontrols2/qquickcolor_p.h +++ b/src/quickcontrols2impl/qquickcolor_p.h @@ -50,13 +50,17 @@ #include <QtCore/qobject.h> #include <QtGui/qcolor.h> -#include <QtQuickControls2/private/qtquickcontrols2global_p.h> +#include <QtQml/qqml.h> +#include <QtQuickControls2Impl/private/qtquickcontrols2implglobal_p.h> QT_BEGIN_NAMESPACE class Q_QUICKCONTROLS2_PRIVATE_EXPORT QQuickColor : public QObject { Q_OBJECT + QML_NAMED_ELEMENT(Color) + QML_SINGLETON + QML_ADDED_IN_VERSION(2, 3) public: explicit QQuickColor(QObject *parent = nullptr); diff --git a/src/quickcontrols2/qquickcolorimage.cpp b/src/quickcontrols2impl/qquickcolorimage.cpp index 3afcef7e..3afcef7e 100644 --- a/src/quickcontrols2/qquickcolorimage.cpp +++ b/src/quickcontrols2impl/qquickcolorimage.cpp diff --git a/src/quickcontrols2/qquickcolorimage_p.h b/src/quickcontrols2impl/qquickcolorimage_p.h index 8227d068..faa2e42c 100644 --- a/src/quickcontrols2/qquickcolorimage_p.h +++ b/src/quickcontrols2impl/qquickcolorimage_p.h @@ -50,7 +50,7 @@ #include <QtGui/qcolor.h> #include <QtQuick/private/qquickimage_p.h> -#include <QtQuickControls2/private/qtquickcontrols2global_p.h> +#include <QtQuickControls2Impl/private/qtquickcontrols2implglobal_p.h> QT_BEGIN_NAMESPACE @@ -59,6 +59,8 @@ class Q_QUICKCONTROLS2_PRIVATE_EXPORT QQuickColorImage : public QQuickImage Q_OBJECT Q_PROPERTY(QColor color READ color WRITE setColor RESET resetColor NOTIFY colorChanged FINAL) Q_PROPERTY(QColor defaultColor READ defaultColor WRITE setDefaultColor RESET resetDefaultColor NOTIFY defaultColorChanged FINAL) + QML_NAMED_ELEMENT(ColorImage) + QML_ADDED_IN_VERSION(2, 3) public: explicit QQuickColorImage(QQuickItem *parent = nullptr); diff --git a/src/quickcontrols2/qquickiconimage.cpp b/src/quickcontrols2impl/qquickiconimage.cpp index 1fc3abfc..1fc3abfc 100644 --- a/src/quickcontrols2/qquickiconimage.cpp +++ b/src/quickcontrols2impl/qquickiconimage.cpp diff --git a/src/quickcontrols2/qquickiconimage_p.h b/src/quickcontrols2impl/qquickiconimage_p.h index 0aac08e6..37891476 100644 --- a/src/quickcontrols2/qquickiconimage_p.h +++ b/src/quickcontrols2impl/qquickiconimage_p.h @@ -49,7 +49,7 @@ // #include <QtQuick/private/qquickimage_p.h> -#include <QtQuickControls2/private/qtquickcontrols2global_p.h> +#include <QtQuickControls2Impl/private/qtquickcontrols2implglobal_p.h> QT_BEGIN_NAMESPACE @@ -60,6 +60,8 @@ class Q_QUICKCONTROLS2_PRIVATE_EXPORT QQuickIconImage : public QQuickImage Q_OBJECT Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged FINAL) Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY colorChanged FINAL) + QML_NAMED_ELEMENT(IconImage) + QML_ADDED_IN_VERSION(2, 3) public: explicit QQuickIconImage(QQuickItem *parent = nullptr); diff --git a/src/quickcontrols2/qquickiconimage_p_p.h b/src/quickcontrols2impl/qquickiconimage_p_p.h index 0c755ff6..cec5956a 100644 --- a/src/quickcontrols2/qquickiconimage_p_p.h +++ b/src/quickcontrols2impl/qquickiconimage_p_p.h @@ -49,7 +49,7 @@ // #include <QtQuick/private/qquickimage_p_p.h> -#include <QtQuickControls2/private/qtquickcontrols2global_p.h> +#include <QtQuickControls2Impl/private/qtquickcontrols2implglobal_p.h> #include <QtGui/private/qiconloader_p.h> QT_BEGIN_NAMESPACE diff --git a/src/quickcontrols2/qquickiconlabel.cpp b/src/quickcontrols2impl/qquickiconlabel.cpp index d76da28f..d76da28f 100644 --- a/src/quickcontrols2/qquickiconlabel.cpp +++ b/src/quickcontrols2impl/qquickiconlabel.cpp diff --git a/src/quickcontrols2/qquickiconlabel_p.h b/src/quickcontrols2impl/qquickiconlabel_p.h index ecf2336e..1ea0affb 100644 --- a/src/quickcontrols2/qquickiconlabel_p.h +++ b/src/quickcontrols2impl/qquickiconlabel_p.h @@ -49,7 +49,7 @@ // #include <QtQuick/qquickitem.h> -#include <QtQuickControls2/private/qtquickcontrols2global_p.h> +#include <QtQuickControls2Impl/private/qtquickcontrols2implglobal_p.h> #include <QtQuickTemplates2/private/qquickicon_p.h> QT_BEGIN_NAMESPACE @@ -71,6 +71,8 @@ class Q_QUICKCONTROLS2_PRIVATE_EXPORT QQuickIconLabel : public QQuickItem Q_PROPERTY(qreal leftPadding READ leftPadding WRITE setLeftPadding RESET resetLeftPadding FINAL) Q_PROPERTY(qreal rightPadding READ rightPadding WRITE setRightPadding RESET resetRightPadding FINAL) Q_PROPERTY(qreal bottomPadding READ bottomPadding WRITE setBottomPadding RESET resetBottomPadding FINAL) + QML_NAMED_ELEMENT(IconLabel) + QML_ADDED_IN_VERSION(2, 3) public: enum Display { diff --git a/src/quickcontrols2/qquickiconlabel_p_p.h b/src/quickcontrols2impl/qquickiconlabel_p_p.h index 6a2a0f58..18cefe53 100644 --- a/src/quickcontrols2/qquickiconlabel_p_p.h +++ b/src/quickcontrols2impl/qquickiconlabel_p_p.h @@ -49,8 +49,8 @@ // #include <QtQuick/private/qquickitem_p.h> -#include <QtQuickControls2/private/qtquickcontrols2global_p.h> -#include <QtQuickControls2/private/qquickiconlabel_p.h> +#include <QtQuickControls2Impl/private/qtquickcontrols2implglobal_p.h> +#include <QtQuickControls2Impl/private/qquickiconlabel_p.h> QT_BEGIN_NAMESPACE diff --git a/src/quickcontrols2/qquickitemgroup.cpp b/src/quickcontrols2impl/qquickitemgroup.cpp index c4307001..c4307001 100644 --- a/src/quickcontrols2/qquickitemgroup.cpp +++ b/src/quickcontrols2impl/qquickitemgroup.cpp diff --git a/src/quickcontrols2/qquickitemgroup_p.h b/src/quickcontrols2impl/qquickitemgroup_p.h index ab6306b4..9c04a990 100644 --- a/src/quickcontrols2/qquickitemgroup_p.h +++ b/src/quickcontrols2impl/qquickitemgroup_p.h @@ -50,13 +50,15 @@ #include <QtQuick/private/qquickimplicitsizeitem_p.h> #include <QtQuick/private/qquickitemchangelistener_p.h> -#include <QtQuickControls2/private/qtquickcontrols2global_p.h> +#include <QtQuickControls2Impl/private/qtquickcontrols2implglobal_p.h> QT_BEGIN_NAMESPACE class Q_QUICKCONTROLS2_PRIVATE_EXPORT QQuickItemGroup : public QQuickImplicitSizeItem, protected QQuickItemChangeListener { Q_OBJECT + QML_NAMED_ELEMENT(ItemGroup) + QML_ADDED_IN_VERSION(2, 2) public: explicit QQuickItemGroup(QQuickItem *parent = nullptr); diff --git a/src/quickcontrols2/qquickmnemoniclabel.cpp b/src/quickcontrols2impl/qquickmnemoniclabel.cpp index 193365b5..309d076a 100644 --- a/src/quickcontrols2/qquickmnemoniclabel.cpp +++ b/src/quickcontrols2impl/qquickmnemoniclabel.cpp @@ -92,7 +92,7 @@ void QQuickMnemonicLabel::updateMnemonic() int idx = 0; int pos = 0; int len = m_fullText.length(); - QVector<QTextLayout::FormatRange> formats; + QList<QTextLayout::FormatRange> formats; while (len) { if (m_fullText.at(pos) == QLatin1Char('&') && (len == 1 || m_fullText.at(pos + 1) != QLatin1Char('&'))) { if (m_mnemonicVisible && (pos == 0 || m_fullText.at(pos - 1) != QLatin1Char('&'))) diff --git a/src/quickcontrols2/qquickmnemoniclabel_p.h b/src/quickcontrols2impl/qquickmnemoniclabel_p.h index da5a83db..69ddbfb1 100644 --- a/src/quickcontrols2/qquickmnemoniclabel_p.h +++ b/src/quickcontrols2impl/qquickmnemoniclabel_p.h @@ -49,7 +49,7 @@ // #include <QtQuick/private/qquicktext_p.h> -#include <QtQuickControls2/private/qtquickcontrols2global_p.h> +#include <QtQuickControls2Impl/private/qtquickcontrols2implglobal_p.h> QT_BEGIN_NAMESPACE @@ -58,6 +58,8 @@ class Q_QUICKCONTROLS2_PRIVATE_EXPORT QQuickMnemonicLabel : public QQuickText Q_OBJECT Q_PROPERTY(QString text READ text WRITE setText FINAL) Q_PROPERTY(bool mnemonicVisible READ isMnemonicVisible WRITE setMnemonicVisible FINAL) + QML_NAMED_ELEMENT(MnemonicLabel) + QML_ADDED_IN_VERSION(2, 3) public: explicit QQuickMnemonicLabel(QQuickItem *parent = nullptr); diff --git a/src/quickcontrols2/qquickpaddedrectangle.cpp b/src/quickcontrols2impl/qquickpaddedrectangle.cpp index fd9e9d90..fd9e9d90 100644 --- a/src/quickcontrols2/qquickpaddedrectangle.cpp +++ b/src/quickcontrols2impl/qquickpaddedrectangle.cpp diff --git a/src/quickcontrols2/qquickpaddedrectangle_p.h b/src/quickcontrols2impl/qquickpaddedrectangle_p.h index c2e0ddef..27743270 100644 --- a/src/quickcontrols2/qquickpaddedrectangle_p.h +++ b/src/quickcontrols2impl/qquickpaddedrectangle_p.h @@ -49,7 +49,7 @@ // #include <QtQuick/private/qquickrectangle_p.h> -#include <QtQuickControls2/private/qtquickcontrols2global_p.h> +#include <QtQuickControls2Impl/private/qtquickcontrols2implglobal_p.h> QT_BEGIN_NAMESPACE @@ -61,6 +61,8 @@ class Q_QUICKCONTROLS2_PRIVATE_EXPORT QQuickPaddedRectangle : public QQuickRecta Q_PROPERTY(qreal leftPadding READ leftPadding WRITE setLeftPadding RESET resetLeftPadding NOTIFY leftPaddingChanged FINAL) Q_PROPERTY(qreal rightPadding READ rightPadding WRITE setRightPadding RESET resetRightPadding NOTIFY rightPaddingChanged FINAL) Q_PROPERTY(qreal bottomPadding READ bottomPadding WRITE setBottomPadding RESET resetBottomPadding NOTIFY bottomPaddingChanged FINAL) + QML_NAMED_ELEMENT(PaddedRectangle) + QML_ADDED_IN_VERSION(2, 0) public: QQuickPaddedRectangle(QQuickItem *parent = nullptr); diff --git a/src/quickcontrols2/qquickplaceholdertext.cpp b/src/quickcontrols2impl/qquickplaceholdertext.cpp index 2fe6be07..2fe6be07 100644 --- a/src/quickcontrols2/qquickplaceholdertext.cpp +++ b/src/quickcontrols2impl/qquickplaceholdertext.cpp diff --git a/src/quickcontrols2/qquickplaceholdertext_p.h b/src/quickcontrols2impl/qquickplaceholdertext_p.h index 1e49286c..0beccd72 100644 --- a/src/quickcontrols2/qquickplaceholdertext_p.h +++ b/src/quickcontrols2impl/qquickplaceholdertext_p.h @@ -49,13 +49,15 @@ // #include <QtQuick/private/qquicktext_p.h> -#include <QtQuickControls2/private/qtquickcontrols2global_p.h> +#include <QtQuickControls2Impl/private/qtquickcontrols2implglobal_p.h> QT_BEGIN_NAMESPACE class Q_QUICKCONTROLS2_PRIVATE_EXPORT QQuickPlaceholderText : public QQuickText { Q_OBJECT + QML_NAMED_ELEMENT(PlaceholderText) + QML_ADDED_IN_VERSION(2, 2) public: explicit QQuickPlaceholderText(QQuickItem *parent = nullptr); diff --git a/src/quickcontrols2/qquicktumblerview.cpp b/src/quickcontrols2impl/qquicktumblerview.cpp index 911e2ae8..911e2ae8 100644 --- a/src/quickcontrols2/qquicktumblerview.cpp +++ b/src/quickcontrols2impl/qquicktumblerview.cpp diff --git a/src/quickcontrols2/qquicktumblerview_p.h b/src/quickcontrols2impl/qquicktumblerview_p.h index 4e67e69b..44ce5fa6 100644 --- a/src/quickcontrols2/qquicktumblerview_p.h +++ b/src/quickcontrols2impl/qquicktumblerview_p.h @@ -49,7 +49,7 @@ // #include <QQuickItem> -#include <QtQuickControls2/private/qtquickcontrols2global_p.h> +#include <QtQuickControls2Impl/private/qtquickcontrols2implglobal_p.h> QT_BEGIN_NAMESPACE @@ -65,6 +65,8 @@ class Q_QUICKCONTROLS2_PRIVATE_EXPORT QQuickTumblerView : public QQuickItem Q_PROPERTY(QVariant model READ model WRITE setModel NOTIFY modelChanged) Q_PROPERTY(QQmlComponent *delegate READ delegate WRITE setDelegate NOTIFY delegateChanged) Q_PROPERTY(QQuickPath *path READ path WRITE setPath NOTIFY pathChanged) + QML_NAMED_ELEMENT(TumblerView) + QML_ADDED_IN_VERSION(2, 1) public: QQuickTumblerView(QQuickItem *parent = nullptr); diff --git a/src/quickcontrols2impl/qtquickcontrols2foreign_p.h b/src/quickcontrols2impl/qtquickcontrols2foreign_p.h new file mode 100644 index 00000000..6285e43c --- /dev/null +++ b/src/quickcontrols2impl/qtquickcontrols2foreign_p.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include <QtQml/qqml.h> +#include <QtQuickTemplates2/private/qquickoverlay_p.h> +#include <QtQuickTemplates2/private/qquicksplitview_p.h> + +QT_BEGIN_NAMESPACE + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +// These are necessary in order to use C++ types in a file where only QtQuick.Controls has been imported. +// Control types like Button don't need this done for them, as each style module provides a Button type, +// and QtQuick.Controls is a sort of alias for the active style import. + +struct QQuickOverlayAttachedForeign +{ + Q_GADGET + QML_NAMED_ELEMENT(Overlay) + QML_FOREIGN(QQuickOverlay) + QML_UNCREATABLE("") + QML_ADDED_IN_VERSION(2, 3) +}; + +struct QQuickSplitHandleAttachedForeign +{ + Q_GADGET + QML_NAMED_ELEMENT(SplitHandle) + QML_FOREIGN(QQuickSplitHandleAttached) + QML_UNCREATABLE("") + QML_ADDED_IN_VERSION(2, 13) +}; + +QT_END_NAMESPACE diff --git a/src/quickcontrols2impl/qtquickcontrols2implglobal_p.h b/src/quickcontrols2impl/qtquickcontrols2implglobal_p.h new file mode 100644 index 00000000..9ff27a3b --- /dev/null +++ b/src/quickcontrols2impl/qtquickcontrols2implglobal_p.h @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QTQUICKCONTROLS2IMPLGLOBAL_H +#define QTQUICKCONTROLS2IMPLGLOBAL_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include <QtCore/qglobal.h> + +#ifndef QT_STATIC +# if defined(QT_BUILD_QUICKCONTROLS2IMPL_LIB) +# define Q_QUICKCONTROLS2IMPL_EXPORT Q_DECL_EXPORT +# else +# define Q_QUICKCONTROLS2IMPL_EXPORT Q_DECL_IMPORT +# endif +#else +# define Q_QUICKCONTROLS2IMPL_EXPORT +#endif + +#define Q_QUICKCONTROLS2_PRIVATE_EXPORT Q_QUICKCONTROLS2IMPL_EXPORT + +Q_QUICKCONTROLS2_PRIVATE_EXPORT void qml_register_types_QtQuick_Controls_impl(); + +#endif // QTQUICKCONTROLS2IMPLGLOBAL_H diff --git a/src/quickcontrols2/quickcontrols2.pri b/src/quickcontrols2impl/quickcontrols2impl.pro index 781658ef..da5e804f 100644 --- a/src/quickcontrols2/quickcontrols2.pri +++ b/src/quickcontrols2impl/quickcontrols2impl.pro @@ -1,4 +1,13 @@ +TARGET = QtQuickControls2Impl +MODULE = quickcontrols2impl + +QT += quick +QT_PRIVATE += core-private gui-private qml-private quick-private quicktemplates2-private + +DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII + HEADERS += \ + $$PWD/qtquickcontrols2implglobal_p.h \ $$PWD/qquickanimatednode_p.h \ $$PWD/qquickattachedobject_p.h \ $$PWD/qquickchecklabel_p.h \ @@ -13,11 +22,7 @@ HEADERS += \ $$PWD/qquickmnemoniclabel_p.h \ $$PWD/qquickpaddedrectangle_p.h \ $$PWD/qquickplaceholdertext_p.h \ - $$PWD/qquickstyle.h \ - $$PWD/qquickstyle_p.h \ - $$PWD/qquickstyleplugin_p.h \ - $$PWD/qquickstyleselector_p.h \ - $$PWD/qquickstyleselector_p_p.h + $$PWD/qtquickcontrols2foreign_p.h SOURCES += \ $$PWD/qquickanimatednode.cpp \ @@ -31,10 +36,7 @@ SOURCES += \ $$PWD/qquickitemgroup.cpp \ $$PWD/qquickmnemoniclabel.cpp \ $$PWD/qquickpaddedrectangle.cpp \ - $$PWD/qquickplaceholdertext.cpp \ - $$PWD/qquickstyle.cpp \ - $$PWD/qquickstyleplugin.cpp \ - $$PWD/qquickstyleselector.cpp + $$PWD/qquickplaceholdertext.cpp qtConfig(quick-listview):qtConfig(quick-pathview) { HEADERS += \ @@ -42,3 +44,11 @@ qtConfig(quick-listview):qtConfig(quick-pathview) { SOURCES += \ $$PWD/qquicktumblerview.cpp } + +QMLTYPES_FILENAME = plugins.qmltypes +QMLTYPES_INSTALL_DIR = $$[QT_INSTALL_QML]/QtQuick/Controls/impl +QML_IMPORT_NAME = QtQuick.Controls.impl +QML_IMPORT_VERSION = $$QT_VERSION +CONFIG += qmltypes install_qmltypes install_metatypes + +load(qt_module) diff --git a/src/quicktemplates2/CMakeLists.txt b/src/quicktemplates2/CMakeLists.txt index 4b7f2ff9..ba48dd6e 100644 --- a/src/quicktemplates2/CMakeLists.txt +++ b/src/quicktemplates2/CMakeLists.txt @@ -5,6 +5,7 @@ ##################################################################### qt_add_module(QuickTemplates2 + GENERATE_METATYPES SOURCES qquickabstractbutton.cpp qquickabstractbutton_p.h qquickabstractbutton_p_p.h @@ -129,6 +130,10 @@ qt_add_module(QuickTemplates2 #### Keys ignored in scope 1:.:.:quicktemplates2.pro:<TRUE>: # MODULE = "quicktemplates2" +# QMLTYPES_FILENAME = "plugins.qmltypes" +# QMLTYPES_INSTALL_DIR = "$$[QT_INSTALL_QML]/QtQuick/Templates" +# QML_IMPORT_NAME = "QtQuick.Templates" +# QML_IMPORT_VERSION = "$$QT_VERSION" ## Scopes: ##################################################################### @@ -147,3 +152,13 @@ qt_extend_target(QuickTemplates2 CONDITION QT_FEATURE_quick_listview AND QT_FEAT qquicktumbler.cpp qquicktumbler_p.h qquicktumbler_p_p.h ) + +set_target_properties(QuickTemplates2 PROPERTIES + QT_QML_MODULE_INSTALL_QMLTYPES TRUE + QT_QML_MODULE_VERSION ${CMAKE_PROJECT_VERSION} + QT_QML_MODULE_URI QtQuick.Templates + QT_QMLTYPES_FILENAME plugins.qmltypes + QT_QML_MODULE_INSTALL_DIR "${INSTALL_QMLDIR}/QtQuick/Templates" +) + +qt6_qml_type_registration(QuickTemplates2) diff --git a/src/quicktemplates2/configure.cmake b/src/quicktemplates2/configure.cmake index 6ccd920c..4e097569 100644 --- a/src/quicktemplates2/configure.cmake +++ b/src/quicktemplates2/configure.cmake @@ -14,13 +14,17 @@ #### Features -qt_feature("quicktemplates2_hover" PRIVATE +qt_feature("quicktemplates2-hover" PRIVATE SECTION "Quick Templates 2" LABEL "Hover support" PURPOSE "Provides support for hover effects." ) -qt_feature("quicktemplates2_multitouch" PRIVATE +qt_feature("quicktemplates2-multitouch" PRIVATE SECTION "Quick Templates 2" LABEL "Multi-touch support" PURPOSE "Provides support for multi-touch." ) +qt_configure_add_summary_section(NAME "Qt Quick Templates 2") +qt_configure_add_summary_entry(ARGS "quicktemplates2-hover") +qt_configure_add_summary_entry(ARGS "quicktemplates2-multitouch") +qt_configure_end_summary_section() # end of "Qt Quick Templates 2" section diff --git a/src/quicktemplates2/qquickabstractbutton.cpp b/src/quicktemplates2/qquickabstractbutton.cpp index 8a61e570..0c481d01 100644 --- a/src/quicktemplates2/qquickabstractbutton.cpp +++ b/src/quicktemplates2/qquickabstractbutton.cpp @@ -748,6 +748,7 @@ void QQuickAbstractButton::setIndicator(QQuickItem *indicator) \qmlproperty int QtQuick.Controls::AbstractButton::icon.width \qmlproperty int QtQuick.Controls::AbstractButton::icon.height \qmlproperty color QtQuick.Controls::AbstractButton::icon.color + \qmlproperty bool QtQuick.Controls::AbstractButton::icon.cache This property group was added in QtQuick.Controls 2.3. diff --git a/src/quicktemplates2/qquickabstractbutton_p.h b/src/quicktemplates2/qquickabstractbutton_p.h index 0fa48980..a5dbd733 100644 --- a/src/quicktemplates2/qquickabstractbutton_p.h +++ b/src/quicktemplates2/qquickabstractbutton_p.h @@ -68,18 +68,20 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickAbstractButton : public QQuickContr Q_PROPERTY(bool autoRepeat READ autoRepeat WRITE setAutoRepeat NOTIFY autoRepeatChanged FINAL) Q_PROPERTY(QQuickItem *indicator READ indicator WRITE setIndicator NOTIFY indicatorChanged FINAL) // 2.3 (Qt 5.10) - Q_PROPERTY(QQuickIcon icon READ icon WRITE setIcon NOTIFY iconChanged FINAL REVISION 3) - Q_PROPERTY(Display display READ display WRITE setDisplay NOTIFY displayChanged FINAL REVISION 3) - Q_PROPERTY(QQuickAction *action READ action WRITE setAction NOTIFY actionChanged FINAL REVISION 3) + Q_PROPERTY(QQuickIcon icon READ icon WRITE setIcon NOTIFY iconChanged FINAL REVISION(2, 3)) + Q_PROPERTY(Display display READ display WRITE setDisplay NOTIFY displayChanged FINAL REVISION(2, 3)) + Q_PROPERTY(QQuickAction *action READ action WRITE setAction NOTIFY actionChanged FINAL REVISION(2, 3)) // 2.4 (Qt 5.11) - Q_PROPERTY(int autoRepeatDelay READ autoRepeatDelay WRITE setAutoRepeatDelay NOTIFY autoRepeatDelayChanged FINAL REVISION 4) - Q_PROPERTY(int autoRepeatInterval READ autoRepeatInterval WRITE setAutoRepeatInterval NOTIFY autoRepeatIntervalChanged FINAL REVISION 4) - Q_PROPERTY(qreal pressX READ pressX NOTIFY pressXChanged FINAL REVISION 4) - Q_PROPERTY(qreal pressY READ pressY NOTIFY pressYChanged FINAL REVISION 4) + Q_PROPERTY(int autoRepeatDelay READ autoRepeatDelay WRITE setAutoRepeatDelay NOTIFY autoRepeatDelayChanged FINAL REVISION(2, 4)) + Q_PROPERTY(int autoRepeatInterval READ autoRepeatInterval WRITE setAutoRepeatInterval NOTIFY autoRepeatIntervalChanged FINAL REVISION(2, 4)) + Q_PROPERTY(qreal pressX READ pressX NOTIFY pressXChanged FINAL REVISION(2, 4)) + Q_PROPERTY(qreal pressY READ pressY NOTIFY pressYChanged FINAL REVISION(2, 4)) // 2.5 (Qt 5.12) - Q_PROPERTY(qreal implicitIndicatorWidth READ implicitIndicatorWidth NOTIFY implicitIndicatorWidthChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitIndicatorHeight READ implicitIndicatorHeight NOTIFY implicitIndicatorHeightChanged FINAL REVISION 5) + Q_PROPERTY(qreal implicitIndicatorWidth READ implicitIndicatorWidth NOTIFY implicitIndicatorWidthChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitIndicatorHeight READ implicitIndicatorHeight NOTIFY implicitIndicatorHeightChanged FINAL REVISION(2, 5)) Q_CLASSINFO("DeferredPropertyNames", "background,contentItem,indicator") + QML_NAMED_ELEMENT(AbstractButton) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickAbstractButton(QQuickItem *parent = nullptr); @@ -167,19 +169,19 @@ Q_SIGNALS: void autoRepeatChanged(); void indicatorChanged(); // 2.2 (Qt 5.9) - Q_REVISION(2) void toggled(); + Q_REVISION(2, 2) void toggled(); // 2.3 (Qt 5.10) - Q_REVISION(3) void iconChanged(); - Q_REVISION(3) void displayChanged(); - Q_REVISION(3) void actionChanged(); + Q_REVISION(2, 3) void iconChanged(); + Q_REVISION(2, 3) void displayChanged(); + Q_REVISION(2, 3) void actionChanged(); // 2.4 (Qt 5.11) - Q_REVISION(4) void autoRepeatDelayChanged(); - Q_REVISION(4) void autoRepeatIntervalChanged(); - Q_REVISION(4) void pressXChanged(); - Q_REVISION(4) void pressYChanged(); + Q_REVISION(2, 4) void autoRepeatDelayChanged(); + Q_REVISION(2, 4) void autoRepeatIntervalChanged(); + Q_REVISION(2, 4) void pressXChanged(); + Q_REVISION(2, 4) void pressYChanged(); // 2.5 (Qt 5.12) - Q_REVISION(5) void implicitIndicatorWidthChanged(); - Q_REVISION(5) void implicitIndicatorHeightChanged(); + Q_REVISION(2, 5) void implicitIndicatorWidthChanged(); + Q_REVISION(2, 5) void implicitIndicatorHeightChanged(); protected: QQuickAbstractButton(QQuickAbstractButtonPrivate &dd, QQuickItem *parent); diff --git a/src/quicktemplates2/qquickaction.cpp b/src/quicktemplates2/qquickaction.cpp index 0b083339..0dab3b97 100644 --- a/src/quicktemplates2/qquickaction.cpp +++ b/src/quicktemplates2/qquickaction.cpp @@ -387,6 +387,7 @@ void QQuickAction::setText(const QString &text) \qmlproperty int QtQuick.Controls::Action::icon.width \qmlproperty int QtQuick.Controls::Action::icon.height \qmlproperty color QtQuick.Controls::Action::icon.color + \qmlproperty bool QtQuick.Controls::Action::icon.cache \include qquickicon.qdocinc grouped-properties */ diff --git a/src/quicktemplates2/qquickaction_p.h b/src/quicktemplates2/qquickaction_p.h index cbe0d8fe..f600d89e 100644 --- a/src/quicktemplates2/qquickaction_p.h +++ b/src/quicktemplates2/qquickaction_p.h @@ -69,6 +69,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickAction : public QObject #if QT_CONFIG(shortcut) Q_PRIVATE_PROPERTY(QQuickAction::d_func(), QVariant shortcut READ shortcut WRITE setShortcut NOTIFY shortcutChanged FINAL) #endif + QML_NAMED_ELEMENT(Action) + QML_ADDED_IN_VERSION(2, 3) public: explicit QQuickAction(QObject *parent = nullptr); diff --git a/src/quicktemplates2/qquickaction_p_p.h b/src/quicktemplates2/qquickaction_p_p.h index 252b0075..d9b83548 100644 --- a/src/quicktemplates2/qquickaction_p_p.h +++ b/src/quicktemplates2/qquickaction_p_p.h @@ -125,7 +125,7 @@ public: QKeySequence keySequence; QVariant vshortcut; ShortcutEntry *defaultShortcutEntry = nullptr; - QVector<ShortcutEntry *> shortcutEntries; + QList<ShortcutEntry *> shortcutEntries; #endif QQuickActionGroup *group = nullptr; }; diff --git a/src/quicktemplates2/qquickactiongroup.cpp b/src/quicktemplates2/qquickactiongroup.cpp index a78489e2..301957b6 100644 --- a/src/quicktemplates2/qquickactiongroup.cpp +++ b/src/quicktemplates2/qquickactiongroup.cpp @@ -156,7 +156,7 @@ public: bool enabled = true; bool exclusive = true; QPointer<QQuickAction> checkedAction; - QVector<QQuickAction*> actions; + QList<QQuickAction*> actions; }; void QQuickActionGroupPrivate::clear() diff --git a/src/quicktemplates2/qquickactiongroup_p.h b/src/quicktemplates2/qquickactiongroup_p.h index aa04d32e..d905f595 100644 --- a/src/quicktemplates2/qquickactiongroup_p.h +++ b/src/quicktemplates2/qquickactiongroup_p.h @@ -67,6 +67,9 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickActionGroup : public QObject Q_PROPERTY(bool exclusive READ isExclusive WRITE setExclusive NOTIFY exclusiveChanged FINAL) Q_PROPERTY(bool enabled READ isEnabled WRITE setEnabled NOTIFY enabledChanged FINAL) Q_CLASSINFO("DefaultProperty", "actions") + QML_NAMED_ELEMENT(ActionGroup) + QML_ATTACHED(QQuickActionGroupAttached) + QML_ADDED_IN_VERSION(2, 3) public: explicit QQuickActionGroup(QObject *parent = nullptr); diff --git a/src/quicktemplates2/qquickapplicationwindow.cpp b/src/quicktemplates2/qquickapplicationwindow.cpp index d7ff9a26..3d39a04e 100644 --- a/src/quicktemplates2/qquickapplicationwindow.cpp +++ b/src/quicktemplates2/qquickapplicationwindow.cpp @@ -36,7 +36,6 @@ #include "qquickapplicationwindow_p.h" #include "qquickcontentitem_p.h" -#include "qquickoverlay_p.h" #include "qquickpopup_p_p.h" #include "qquickcontrol_p_p.h" #include "qquicktextarea_p.h" @@ -178,7 +177,6 @@ public: QQuickItem *menuBar = nullptr; QQuickItem *header = nullptr; QQuickItem *footer = nullptr; - QQuickOverlay *overlay = nullptr; QFont font; QLocale locale; QQuickItem *activeFocusControl = nullptr; @@ -231,9 +229,9 @@ void QQuickApplicationWindowPrivate::relayout() void QQuickApplicationWindowPrivate::itemGeometryChanged(QQuickItem *item, QQuickGeometryChange change, const QRectF &diff) { - Q_UNUSED(item) - Q_UNUSED(change) - Q_UNUSED(diff) + Q_UNUSED(item); + Q_UNUSED(change); + Q_UNUSED(diff); relayout(); } @@ -589,57 +587,6 @@ QQuickItem *QQuickApplicationWindow::activeFocusControl() const } /*! - \deprecated - \qmlpropertygroup QtQuick.Controls::ApplicationWindow::overlay - \qmlproperty Item QtQuick.Controls::ApplicationWindow::overlay - \qmlproperty Component QtQuick.Controls::ApplicationWindow::overlay.modal - \qmlproperty Component QtQuick.Controls::ApplicationWindow::overlay.modeless - - Use the \l Overlay attached properties and signals instead. - - This property holds the window overlay item. Popups are automatically - reparented to the overlay. - - \table - \header - \li Property - \li Description - \row - \li overlay.modal - \li This property holds a component to use as a visual item that implements - background dimming for modal popups. It is created for and stacked below - visible modal popups. - \row - \li overlay.modeless - \li This property holds a component to use as a visual item that implements - background dimming for modeless popups. It is created for and stacked below - visible dimming popups. - \row - \li overlay.pressed() - \li This signal is emitted when the overlay is pressed by the user while - a popup is visible. - \row - \li overlay.released() - \li This signal is emitted when the overlay is released by the user while - a modal popup is visible. - \endtable - - \sa Popup::modal, Popup::dim -*/ -QQuickOverlay *QQuickApplicationWindow::overlay() const -{ - QQuickApplicationWindowPrivate *d = const_cast<QQuickApplicationWindowPrivate *>(d_func()); - if (!d) // being deleted - return nullptr; - - if (!d->overlay) { - d->overlay = new QQuickOverlay(QQuickWindow::contentItem()); - d->overlay->stackAfter(QQuickApplicationWindow::contentItem()); - } - return d->overlay; -} - -/*! \qmlproperty font QtQuick.Controls::ApplicationWindow::font This property holds the font currently set for the window. @@ -852,7 +799,6 @@ void QQuickApplicationWindowAttachedPrivate::windowChange(QQuickWindow *wnd) window = wnd; emit q->windowChanged(); emit q->contentItemChanged(); - emit q->overlayChanged(); activeFocusChange(); if ((oldWindow && oldWindow->menuBar()) || (newWindow && newWindow->menuBar())) @@ -986,24 +932,6 @@ QQuickItem *QQuickApplicationWindowAttached::footer() const } /*! - \deprecated - \qmlattachedproperty Item QtQuick.Controls::ApplicationWindow::overlay - \readonly - - Use the \l Overlay::overlay attached property instead. - - This attached property holds the window overlay item. The property can be attached - to any item. The value is \c null if the item is not in an ApplicationWindow. - - \sa {Attached ApplicationWindow Properties} -*/ -QQuickOverlay *QQuickApplicationWindowAttached::overlay() const -{ - Q_D(const QQuickApplicationWindowAttached); - return QQuickOverlay::overlay(d->window); -} - -/*! \since QtQuick.Controls 2.3 (Qt 5.10) \qmlattachedproperty Item QtQuick.Controls::ApplicationWindow::menuBar \readonly diff --git a/src/quicktemplates2/qquickapplicationwindow_p.h b/src/quicktemplates2/qquickapplicationwindow_p.h index 14ef6c67..4e4f50ef 100644 --- a/src/quicktemplates2/qquickapplicationwindow_p.h +++ b/src/quicktemplates2/qquickapplicationwindow_p.h @@ -56,7 +56,6 @@ QT_BEGIN_NAMESPACE -class QQuickOverlay; class QQuickApplicationWindowPrivate; class QQuickApplicationWindowAttached; class QQuickApplicationWindowAttachedPrivate; @@ -70,15 +69,16 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickApplicationWindow : public QQuickWi Q_PROPERTY(QQuickItem *activeFocusControl READ activeFocusControl NOTIFY activeFocusControlChanged FINAL) Q_PROPERTY(QQuickItem *header READ header WRITE setHeader NOTIFY headerChanged FINAL) Q_PROPERTY(QQuickItem *footer READ footer WRITE setFooter NOTIFY footerChanged FINAL) - Q_PROPERTY(QQuickOverlay *overlay READ overlay CONSTANT FINAL) Q_PROPERTY(QFont font READ font WRITE setFont RESET resetFont NOTIFY fontChanged FINAL) Q_PROPERTY(QLocale locale READ locale WRITE setLocale RESET resetLocale NOTIFY localeChanged FINAL) // 2.3 (Qt 5.10) - Q_PROPERTY(QQuickItem *menuBar READ menuBar WRITE setMenuBar NOTIFY menuBarChanged FINAL REVISION 3) + Q_PROPERTY(QQuickItem *menuBar READ menuBar WRITE setMenuBar NOTIFY menuBarChanged FINAL REVISION(2, 3)) // 2.14 (Qt 6) - Q_PRIVATE_PROPERTY(QQuickApplicationWindow::d_func(), QQuickPalette *palette READ palette WRITE setPalette RESET resetPalette NOTIFY paletteChanged REVISION 3) + Q_PRIVATE_PROPERTY(QQuickApplicationWindow::d_func(), QQuickPalette *palette READ palette WRITE setPalette RESET resetPalette NOTIFY paletteChanged REVISION(2, 3)) Q_CLASSINFO("DeferredPropertyNames", "background") Q_CLASSINFO("DefaultProperty", "contentData") + QML_NAMED_ELEMENT(ApplicationWindow) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickApplicationWindow(QWindow *parent = nullptr); @@ -99,8 +99,6 @@ public: QQuickItem *footer() const; void setFooter(QQuickItem *footer); - QQuickOverlay *overlay() const; - QFont font() const; void setFont(const QFont &font); void resetFont(); @@ -119,7 +117,7 @@ Q_SIGNALS: void footerChanged(); void fontChanged(); void localeChanged(); - Q_REVISION(3) void menuBarChanged(); + Q_REVISION(2, 3) void menuBarChanged(); protected: bool isComponentComplete() const; @@ -141,8 +139,7 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickApplicationWindowAttached : public Q_PROPERTY(QQuickItem *activeFocusControl READ activeFocusControl NOTIFY activeFocusControlChanged FINAL) Q_PROPERTY(QQuickItem *header READ header NOTIFY headerChanged FINAL) Q_PROPERTY(QQuickItem *footer READ footer NOTIFY footerChanged FINAL) - Q_PROPERTY(QQuickOverlay *overlay READ overlay NOTIFY overlayChanged FINAL) - Q_PROPERTY(QQuickItem *menuBar READ menuBar NOTIFY menuBarChanged FINAL) // REVISION 3 + Q_PROPERTY(QQuickItem *menuBar READ menuBar NOTIFY menuBarChanged FINAL) // REVISION(2, 3) public: explicit QQuickApplicationWindowAttached(QObject *parent = nullptr); @@ -152,7 +149,6 @@ public: QQuickItem *activeFocusControl() const; QQuickItem *header() const; QQuickItem *footer() const; - QQuickOverlay *overlay() const; QQuickItem *menuBar() const; Q_SIGNALS: @@ -161,15 +157,38 @@ Q_SIGNALS: void activeFocusControlChanged(); void headerChanged(); void footerChanged(); - void overlayChanged(); // 2.3 (Qt 5.10) - /*Q_REVISION(3)*/ void menuBarChanged(); + /*Q_REVISION(2, 3)*/ void menuBarChanged(); private: Q_DISABLE_COPY(QQuickApplicationWindowAttached) Q_DECLARE_PRIVATE(QQuickApplicationWindowAttached) }; +struct QWindowForeign2 +{ + Q_GADGET + QML_ANONYMOUS + QML_FOREIGN(QWindow) + QML_ADDED_IN_VERSION(2, 0) +}; + +struct QQuickWindowForeign +{ + Q_GADGET + QML_ANONYMOUS + QML_FOREIGN(QQuickWindow) + QML_ADDED_IN_VERSION(2, 0) +}; + +struct QQuickWindowQmlImplForeign +{ + Q_GADGET + QML_ANONYMOUS + QML_FOREIGN(QQuickWindowQmlImpl) + QML_ADDED_IN_VERSION(2, 2) +}; + QT_END_NAMESPACE QML_DECLARE_TYPE(QQuickApplicationWindow) diff --git a/src/quicktemplates2/qquickbusyindicator_p.h b/src/quicktemplates2/qquickbusyindicator_p.h index f140764b..bdb2eb24 100644 --- a/src/quicktemplates2/qquickbusyindicator_p.h +++ b/src/quicktemplates2/qquickbusyindicator_p.h @@ -58,6 +58,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickBusyIndicator : public QQuickContro { Q_OBJECT Q_PROPERTY(bool running READ isRunning WRITE setRunning NOTIFY runningChanged FINAL) + QML_NAMED_ELEMENT(BusyIndicator) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickBusyIndicator(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquickbutton_p.h b/src/quicktemplates2/qquickbutton_p.h index 2a757952..bfac5663 100644 --- a/src/quicktemplates2/qquickbutton_p.h +++ b/src/quicktemplates2/qquickbutton_p.h @@ -59,6 +59,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickButton : public QQuickAbstractButto Q_OBJECT Q_PROPERTY(bool highlighted READ isHighlighted WRITE setHighlighted NOTIFY highlightedChanged FINAL) Q_PROPERTY(bool flat READ isFlat WRITE setFlat NOTIFY flatChanged FINAL) + QML_NAMED_ELEMENT(Button) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickButton(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquickbuttongroup.cpp b/src/quicktemplates2/qquickbuttongroup.cpp index 3886dce9..974cd029 100644 --- a/src/quicktemplates2/qquickbuttongroup.cpp +++ b/src/quicktemplates2/qquickbuttongroup.cpp @@ -170,7 +170,7 @@ public: bool settingCheckState = false; Qt::CheckState checkState = Qt::Unchecked; QPointer<QQuickAbstractButton> checkedButton; - QVector<QQuickAbstractButton*> buttons; + QList<QQuickAbstractButton*> buttons; }; void QQuickButtonGroupPrivate::clear() diff --git a/src/quicktemplates2/qquickbuttongroup_p.h b/src/quicktemplates2/qquickbuttongroup_p.h index 84ddd225..daff84f2 100644 --- a/src/quicktemplates2/qquickbuttongroup_p.h +++ b/src/quicktemplates2/qquickbuttongroup_p.h @@ -66,10 +66,13 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickButtonGroup : public QObject, publi Q_PROPERTY(QQuickAbstractButton *checkedButton READ checkedButton WRITE setCheckedButton NOTIFY checkedButtonChanged FINAL) Q_PROPERTY(QQmlListProperty<QQuickAbstractButton> buttons READ buttons NOTIFY buttonsChanged FINAL) // 2.3 (Qt 5.10) - Q_PROPERTY(bool exclusive READ isExclusive WRITE setExclusive NOTIFY exclusiveChanged FINAL REVISION 3) + Q_PROPERTY(bool exclusive READ isExclusive WRITE setExclusive NOTIFY exclusiveChanged FINAL REVISION(2, 3)) // 2.4 (Qt 5.11) - Q_PROPERTY(Qt::CheckState checkState READ checkState WRITE setCheckState NOTIFY checkStateChanged FINAL REVISION 4) + Q_PROPERTY(Qt::CheckState checkState READ checkState WRITE setCheckState NOTIFY checkStateChanged FINAL REVISION(2, 4)) Q_INTERFACES(QQmlParserStatus) + QML_NAMED_ELEMENT(ButtonGroup) + QML_ATTACHED(QQuickButtonGroupAttached) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickButtonGroup(QObject *parent = nullptr); @@ -97,11 +100,11 @@ Q_SIGNALS: void checkedButtonChanged(); void buttonsChanged(); // 2.1 (Qt 5.8) - Q_REVISION(1) void clicked(QQuickAbstractButton *button); + Q_REVISION(2, 1) void clicked(QQuickAbstractButton *button); // 2.3 (Qt 5.10) - Q_REVISION(3) void exclusiveChanged(); + Q_REVISION(2, 3) void exclusiveChanged(); // 2.4 (Qt 5.11) - Q_REVISION(4) void checkStateChanged(); + Q_REVISION(2, 4) void checkStateChanged(); protected: void classBegin() override; diff --git a/src/quicktemplates2/qquickcheckbox_p.h b/src/quicktemplates2/qquickcheckbox_p.h index 1e333d7c..8e53b41d 100644 --- a/src/quicktemplates2/qquickcheckbox_p.h +++ b/src/quicktemplates2/qquickcheckbox_p.h @@ -60,7 +60,9 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickCheckBox : public QQuickAbstractBut Q_PROPERTY(bool tristate READ isTristate WRITE setTristate NOTIFY tristateChanged FINAL) Q_PROPERTY(Qt::CheckState checkState READ checkState WRITE setCheckState NOTIFY checkStateChanged FINAL) // 2.4 (Qt 5.11) - Q_PRIVATE_PROPERTY(QQuickCheckBox::d_func(), QJSValue nextCheckState MEMBER nextCheckState WRITE setNextCheckState NOTIFY nextCheckStateChanged FINAL REVISION 4) + Q_PRIVATE_PROPERTY(QQuickCheckBox::d_func(), QJSValue nextCheckState MEMBER nextCheckState WRITE setNextCheckState NOTIFY nextCheckStateChanged FINAL REVISION(2, 4)) + QML_NAMED_ELEMENT(CheckBox) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickCheckBox(QQuickItem *parent = nullptr); @@ -75,7 +77,7 @@ Q_SIGNALS: void tristateChanged(); void checkStateChanged(); // 2.4 (Qt 5.11) - Q_REVISION(4) void nextCheckStateChanged(); + Q_REVISION(2, 4) void nextCheckStateChanged(); protected: QFont defaultFont() const override; diff --git a/src/quicktemplates2/qquickcheckdelegate_p.h b/src/quicktemplates2/qquickcheckdelegate_p.h index 67dcf706..9b69943f 100644 --- a/src/quicktemplates2/qquickcheckdelegate_p.h +++ b/src/quicktemplates2/qquickcheckdelegate_p.h @@ -60,7 +60,9 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickCheckDelegate : public QQuickItemDe Q_PROPERTY(bool tristate READ isTristate WRITE setTristate NOTIFY tristateChanged FINAL) Q_PROPERTY(Qt::CheckState checkState READ checkState WRITE setCheckState NOTIFY checkStateChanged FINAL) // 2.4 (Qt 5.11) - Q_PRIVATE_PROPERTY(QQuickCheckDelegate::d_func(), QJSValue nextCheckState MEMBER nextCheckState WRITE setNextCheckState NOTIFY nextCheckStateChanged FINAL REVISION 4) + Q_PRIVATE_PROPERTY(QQuickCheckDelegate::d_func(), QJSValue nextCheckState MEMBER nextCheckState WRITE setNextCheckState NOTIFY nextCheckStateChanged FINAL REVISION(2, 4)) + QML_NAMED_ELEMENT(CheckDelegate) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickCheckDelegate(QQuickItem *parent = nullptr); @@ -75,7 +77,7 @@ Q_SIGNALS: void tristateChanged(); void checkStateChanged(); // 2.4 (Qt 5.11) - Q_REVISION(4) void nextCheckStateChanged(); + Q_REVISION(2, 4) void nextCheckStateChanged(); protected: QFont defaultFont() const override; diff --git a/src/quicktemplates2/qquickcombobox.cpp b/src/quicktemplates2/qquickcombobox.cpp index 85f135c7..426adbd3 100644 --- a/src/quicktemplates2/qquickcombobox.cpp +++ b/src/quicktemplates2/qquickcombobox.cpp @@ -54,10 +54,13 @@ #include <QtQuick/private/qquickaccessibleattached_p.h> #include <QtQuick/private/qquickevents_p_p.h> #include <QtQuick/private/qquicktextinput_p.h> +#include <QtQuick/private/qquicktextinput_p_p.h> #include <QtQuick/private/qquickitemview_p.h> QT_BEGIN_NAMESPACE +Q_LOGGING_CATEGORY(lcCalculateWidestTextWidth, "qt.quick.controls.combobox.calculatewidesttextwidth") + /*! \qmltype ComboBox \inherits Control @@ -230,6 +233,7 @@ public: void modelUpdated(); void countChanged(); + QString effectiveTextRole() const; void updateEditText(); void updateCurrentText(); void updateCurrentValue(); @@ -265,6 +269,10 @@ public: void itemImplicitWidthChanged(QQuickItem *item) override; void itemImplicitHeightChanged(QQuickItem *item) override; + virtual qreal getContentWidth() const override; + qreal calculateWidestTextWidth() const; + void maybeUpdateImplicitContentWidth(); + static void hideOldPopup(QQuickPopup *popup); QPalette defaultPalette() const override { return QQuickTheme::palette(QQuickTheme::ComboBox); } @@ -277,8 +285,10 @@ public: bool keyNavigating = false; bool hasDisplayText = false; bool hasCurrentIndex = false; + bool hasCalculatedWidestText = false; int highlightedIndex = -1; int currentIndex = -1; + QQuickComboBox::ImplicitContentWidthPolicy implicitContentWidthPolicy = QQuickComboBox::ContentItemImplicitWidth; QVariant model; QString textRole; QString currentText; @@ -411,8 +421,12 @@ void QQuickComboBoxPrivate::createdItem(int index, QObject *object) void QQuickComboBoxPrivate::modelUpdated() { - if (!extra.isAllocated() || !extra->accepting) + if (componentComplete && (!extra.isAllocated() || !extra->accepting)) { updateCurrentTextAndValue(); + + if (implicitContentWidthPolicy == QQuickComboBox::WidestText) + updateImplicitContentSize(); + } } void QQuickComboBoxPrivate::countChanged() @@ -423,6 +437,11 @@ void QQuickComboBoxPrivate::countChanged() emit q->countChanged(); } +QString QQuickComboBoxPrivate::effectiveTextRole() const +{ + return textRole.isEmpty() ? QStringLiteral("modelData") : textRole; +} + void QQuickComboBoxPrivate::updateEditText() { Q_Q(QQuickComboBox); @@ -780,6 +799,72 @@ void QQuickComboBoxPrivate::itemImplicitHeightChanged(QQuickItem *item) emit q->implicitIndicatorHeightChanged(); } +qreal QQuickComboBoxPrivate::getContentWidth() const +{ + if (componentComplete) { + switch (implicitContentWidthPolicy) { + case QQuickComboBox::WidestText: + return calculateWidestTextWidth(); + case QQuickComboBox::WidestTextWhenCompleted: + if (!hasCalculatedWidestText) + return calculateWidestTextWidth(); + break; + default: + break; + } + } + + return QQuickControlPrivate::getContentWidth(); +} + +qreal QQuickComboBoxPrivate::calculateWidestTextWidth() const +{ + Q_Q(const QQuickComboBox); + if (!componentComplete) + return 0; + + const int count = q->count(); + if (count == 0) + return 0; + + auto textInput = qobject_cast<QQuickTextInput*>(contentItem); + if (!textInput) + return 0; + + qCDebug(lcCalculateWidestTextWidth) << "calculating widest text from" << count << "items..."; + + // Avoid the index check and repeated calls to effectiveTextRole() + // that would result from calling textAt() in a loop. + const QString textRole = effectiveTextRole(); + auto textInputPrivate = QQuickTextInputPrivate::get(textInput); + qreal widest = 0; + for (int i = 0; i < count; ++i) { + const QString text = delegateModel->stringValue(i, textRole); + const qreal textImplicitWidth = textInputPrivate->calculateImplicitWidthForText(text); + widest = qMax(widest, textImplicitWidth); + } + + qCDebug(lcCalculateWidestTextWidth) << "... widest text is" << widest; + return widest; +} + +/*! + If the user requested it (and we haven't already done it, depending on the policy), + update the implicit content width to the largest text in the model. +*/ +void QQuickComboBoxPrivate::maybeUpdateImplicitContentWidth() +{ + if (!componentComplete) + return; + + if (implicitContentWidthPolicy == QQuickComboBox::ContentItemImplicitWidth + || (implicitContentWidthPolicy == QQuickComboBox::WidestTextWhenCompleted && hasCalculatedWidestText)) + return; + + updateImplicitContentWidth(); + hasCalculatedWidestText = true; +} + void QQuickComboBoxPrivate::hideOldPopup(QQuickPopup *popup) { if (!popup) @@ -885,6 +970,8 @@ void QQuickComboBox::setModel(const QVariant& m) d->updateCurrentTextAndValue(); } emit modelChanged(); + + d->maybeUpdateImplicitContentWidth(); } /*! @@ -1597,6 +1684,80 @@ void QQuickComboBox::setSelectTextByMouse(bool canSelect) d->extra.value().selectTextByMouse = canSelect; emit selectTextByMouseChanged(); } + +/*! + \since QtQuick.Controls 6.0 (Qt 6.0) + \qmlproperty enumeration QtQuick.Controls::ComboBox::implicitContentWidthPolicy + + This property controls how the \l implicitContentWidth of the ComboBox is + calculated. + + When the width of a ComboBox is not large enough to display text, that text + is elided. Depending on which parts of the text are elided, this can make + selecting an item difficult for the end user. An efficient way of ensuring + that a ComboBox is wide enough to avoid text being elided is to set a width + that is known to be large enough: + + \code + width: 300 + implicitContentWidthPolicy: ComboBox.ContentItemImplicitWidth + \endcode + + However, it is often not possible to know whether or not a hard-coded value + will be large enough, as the size of text depends on many factors, such as + font family, font size, translations, and so on. + + implicitContentWidthPolicy provides an easy way to control how the + implicitContentWidth is calculated, which in turn affects the + \l implicitWidth of the ComboBox and ensures that text will not be elided. + + The available values are: + + \value ContentItemImplicitWidth + The implicitContentWidth will default to that of the \l contentItem. + + This is the most efficient option, as no extra text layout is done. + \value WidestText + The implicitContentWidth will be set to the implicit width of the + the largest text for the given \l textRole every time the model + changes. + + This option should be used with smaller models, as it can be expensive. + \value WidestTextWhenCompleted + The implicitContentWidth will be set to the implicit width of the + the largest text for the given \l textRole once after + \l {QQmlParserStatus::componentComplete()}{component completion}. + + This option should be used with smaller models, as it can be expensive. + + The default value is \c ContentItemImplicitWidth. + + As this property only affects the \l implicitWidth of the ComboBox, setting + an explicit \l width can still result in eliding. + + \note This feature requires the contentItem to be a type derived from + \l TextInput. + + \note This feature requires text to be laid out, and can therefore be + expensive for large models or models whose contents are updated + frequently. +*/ +QQuickComboBox::ImplicitContentWidthPolicy QQuickComboBox::implicitContentWidthPolicy() const +{ + Q_D(const QQuickComboBox); + return d->implicitContentWidthPolicy; +} + +void QQuickComboBox::setImplicitContentWidthPolicy(QQuickComboBox::ImplicitContentWidthPolicy policy) +{ + Q_D(QQuickComboBox); + if (policy == d->implicitContentWidthPolicy) + return; + + d->implicitContentWidthPolicy = policy; + d->maybeUpdateImplicitContentWidth(); + emit implicitContentWidthPolicyChanged(); +} /*! \qmlmethod string QtQuick.Controls::ComboBox::textAt(int index) @@ -1611,8 +1772,7 @@ QString QQuickComboBox::textAt(int index) const if (!d->isValidIndex(index)) return QString(); - const QString effectiveTextRole = d->textRole.isEmpty() ? QStringLiteral("modelData") : d->textRole; - return d->delegateModel->stringValue(index, effectiveTextRole); + return d->delegateModel->stringValue(index, d->effectiveTextRole()); } /*! @@ -1894,6 +2054,11 @@ void QQuickComboBox::componentComplete() setCurrentIndex(0); else d->updateCurrentTextAndValue(); + + // If the widest text was already calculated in the call to + // QQmlDelegateModel::componentComplete() above, then we shouldn't do it here too. + if (!d->hasCalculatedWidestText) + d->maybeUpdateImplicitContentWidth(); } } @@ -1907,6 +2072,13 @@ void QQuickComboBox::itemChange(QQuickItem::ItemChange change, const QQuickItem: } } +void QQuickComboBox::fontChange(const QFont &newFont, const QFont &oldFont) +{ + Q_D(QQuickComboBox); + QQuickControl::fontChange(newFont, oldFont); + d->maybeUpdateImplicitContentWidth(); +} + void QQuickComboBox::contentItemChange(QQuickItem *newItem, QQuickItem *oldItem) { Q_D(QQuickComboBox); diff --git a/src/quicktemplates2/qquickcombobox_p.h b/src/quicktemplates2/qquickcombobox_p.h index 4874eb5d..4ad8279e 100644 --- a/src/quicktemplates2/qquickcombobox_p.h +++ b/src/quicktemplates2/qquickcombobox_p.h @@ -76,24 +76,29 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickComboBox : public QQuickControl Q_PROPERTY(QQuickItem *indicator READ indicator WRITE setIndicator NOTIFY indicatorChanged FINAL) Q_PROPERTY(QQuickPopup *popup READ popup WRITE setPopup NOTIFY popupChanged FINAL) // 2.1 (Qt 5.8) - Q_PROPERTY(bool flat READ isFlat WRITE setFlat NOTIFY flatChanged FINAL REVISION 1) + Q_PROPERTY(bool flat READ isFlat WRITE setFlat NOTIFY flatChanged FINAL REVISION(2, 1)) // 2.2 (Qt 5.9) - Q_PROPERTY(bool down READ isDown WRITE setDown RESET resetDown NOTIFY downChanged FINAL REVISION 2) - Q_PROPERTY(bool editable READ isEditable WRITE setEditable NOTIFY editableChanged FINAL REVISION 2) - Q_PROPERTY(QString editText READ editText WRITE setEditText RESET resetEditText NOTIFY editTextChanged FINAL REVISION 2) - Q_PROPERTY(QValidator *validator READ validator WRITE setValidator NOTIFY validatorChanged FINAL REVISION 2) - Q_PROPERTY(Qt::InputMethodHints inputMethodHints READ inputMethodHints WRITE setInputMethodHints NOTIFY inputMethodHintsChanged FINAL REVISION 2) - Q_PROPERTY(bool inputMethodComposing READ isInputMethodComposing NOTIFY inputMethodComposingChanged FINAL REVISION 2) - Q_PROPERTY(bool acceptableInput READ hasAcceptableInput NOTIFY acceptableInputChanged FINAL REVISION 2) + Q_PROPERTY(bool down READ isDown WRITE setDown RESET resetDown NOTIFY downChanged FINAL REVISION(2, 2)) + Q_PROPERTY(bool editable READ isEditable WRITE setEditable NOTIFY editableChanged FINAL REVISION(2, 2)) + Q_PROPERTY(QString editText READ editText WRITE setEditText RESET resetEditText NOTIFY editTextChanged FINAL REVISION(2, 2)) + Q_PROPERTY(QValidator *validator READ validator WRITE setValidator NOTIFY validatorChanged FINAL REVISION(2, 2)) + Q_PROPERTY(Qt::InputMethodHints inputMethodHints READ inputMethodHints WRITE setInputMethodHints NOTIFY inputMethodHintsChanged FINAL REVISION(2, 2)) + Q_PROPERTY(bool inputMethodComposing READ isInputMethodComposing NOTIFY inputMethodComposingChanged FINAL REVISION(2, 2)) + Q_PROPERTY(bool acceptableInput READ hasAcceptableInput NOTIFY acceptableInputChanged FINAL REVISION(2, 2)) // 2.5 (Qt 5.12) - Q_PROPERTY(qreal implicitIndicatorWidth READ implicitIndicatorWidth NOTIFY implicitIndicatorWidthChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitIndicatorHeight READ implicitIndicatorHeight NOTIFY implicitIndicatorHeightChanged FINAL REVISION 5) + Q_PROPERTY(qreal implicitIndicatorWidth READ implicitIndicatorWidth NOTIFY implicitIndicatorWidthChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitIndicatorHeight READ implicitIndicatorHeight NOTIFY implicitIndicatorHeightChanged FINAL REVISION(2, 5)) Q_CLASSINFO("DeferredPropertyNames", "background,contentItem,indicator,popup") // 2.14 (Qt 5.14) - Q_PROPERTY(QVariant currentValue READ currentValue NOTIFY currentValueChanged FINAL REVISION 14) - Q_PROPERTY(QString valueRole READ valueRole WRITE setValueRole NOTIFY valueRoleChanged FINAL REVISION 14) + Q_PROPERTY(QVariant currentValue READ currentValue NOTIFY currentValueChanged FINAL REVISION(2, 14)) + Q_PROPERTY(QString valueRole READ valueRole WRITE setValueRole NOTIFY valueRoleChanged FINAL REVISION(2, 14)) // 2.15 (Qt 5.15) - Q_PROPERTY(bool selectTextByMouse READ selectTextByMouse WRITE setSelectTextByMouse NOTIFY selectTextByMouseChanged FINAL REVISION 15) + Q_PROPERTY(bool selectTextByMouse READ selectTextByMouse WRITE setSelectTextByMouse NOTIFY selectTextByMouseChanged FINAL REVISION(2, 15)) + // TODO: 6.0 (Qt 6.0) - QTBUG-84190 + Q_PROPERTY(ImplicitContentWidthPolicy implicitContentWidthPolicy READ implicitContentWidthPolicy + WRITE setImplicitContentWidthPolicy NOTIFY implicitContentWidthPolicyChanged FINAL REVISION 15) + QML_NAMED_ELEMENT(ComboBox) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickComboBox(QQuickItem *parent = nullptr); @@ -168,17 +173,28 @@ public: // 2.14 (Qt 5.14) QVariant currentValue() const; - Q_REVISION(14) Q_INVOKABLE QVariant valueAt(int index) const; - Q_REVISION(14) Q_INVOKABLE int indexOfValue(const QVariant &value) const; + Q_REVISION(2, 14) Q_INVOKABLE QVariant valueAt(int index) const; + Q_REVISION(2, 14) Q_INVOKABLE int indexOfValue(const QVariant &value) const; // 2.15 (Qt 5.15) bool selectTextByMouse() const; void setSelectTextByMouse(bool canSelect); + // 6.0 (Qt 6.0) + enum ImplicitContentWidthPolicy { + ContentItemImplicitWidth, + WidestText, + WidestTextWhenCompleted + }; + Q_ENUM(ImplicitContentWidthPolicy) + + ImplicitContentWidthPolicy implicitContentWidthPolicy() const; + void setImplicitContentWidthPolicy(ImplicitContentWidthPolicy policy); + public Q_SLOTS: void incrementCurrentIndex(); void decrementCurrentIndex(); - Q_REVISION(2) void selectAll(); + Q_REVISION(2, 2) void selectAll(); Q_SIGNALS: void activated(int index); @@ -196,24 +212,26 @@ Q_SIGNALS: void indicatorChanged(); void popupChanged(); // 2.1 (Qt 5.8) - Q_REVISION(1) void flatChanged(); + Q_REVISION(2, 1) void flatChanged(); // 2.2 (Qt 5.9) - Q_REVISION(2) void accepted(); - Q_REVISION(2) void downChanged(); - Q_REVISION(2) void editableChanged(); - Q_REVISION(2) void editTextChanged(); - Q_REVISION(2) void validatorChanged(); - Q_REVISION(2) void inputMethodHintsChanged(); - Q_REVISION(2) void inputMethodComposingChanged(); - Q_REVISION(2) void acceptableInputChanged(); + Q_REVISION(2, 2) void accepted(); + Q_REVISION(2, 2) void downChanged(); + Q_REVISION(2, 2) void editableChanged(); + Q_REVISION(2, 2) void editTextChanged(); + Q_REVISION(2, 2) void validatorChanged(); + Q_REVISION(2, 2) void inputMethodHintsChanged(); + Q_REVISION(2, 2) void inputMethodComposingChanged(); + Q_REVISION(2, 2) void acceptableInputChanged(); // 2.5 (Qt 5.12) - Q_REVISION(5) void implicitIndicatorWidthChanged(); - Q_REVISION(5) void implicitIndicatorHeightChanged(); + Q_REVISION(2, 5) void implicitIndicatorWidthChanged(); + Q_REVISION(2, 5) void implicitIndicatorHeightChanged(); // 2.14 (Qt 5.14) - Q_REVISION(14) void valueRoleChanged(); - Q_REVISION(14) void currentValueChanged(); + Q_REVISION(2, 14) void valueRoleChanged(); + Q_REVISION(2, 14) void currentValueChanged(); // 2.15 (Qt 5.15) - Q_REVISION(15) void selectTextByMouseChanged(); + Q_REVISION(2, 15) void selectTextByMouseChanged(); + // 6.0 (Qt 6.0) + Q_REVISION(6, 0) void implicitContentWidthPolicyChanged(); protected: bool eventFilter(QObject *object, QEvent *event) override; @@ -231,6 +249,7 @@ protected: void componentComplete() override; void itemChange(ItemChange change, const ItemChangeData &value) override; + void fontChange(const QFont &newFont, const QFont &oldFont) override; void contentItemChange(QQuickItem *newItem, QQuickItem *oldItem) override; void localeChange(const QLocale &newLocale, const QLocale &oldLocale) override; diff --git a/src/quicktemplates2/qquickcontainer_p.h b/src/quicktemplates2/qquickcontainer_p.h index 9deba199..666c9307 100644 --- a/src/quicktemplates2/qquickcontainer_p.h +++ b/src/quicktemplates2/qquickcontainer_p.h @@ -65,9 +65,11 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickContainer : public QQuickControl Q_PROPERTY(int currentIndex READ currentIndex WRITE setCurrentIndex NOTIFY currentIndexChanged FINAL) Q_PROPERTY(QQuickItem *currentItem READ currentItem NOTIFY currentItemChanged FINAL) // 2.5 (Qt 5.12) - Q_PROPERTY(qreal contentWidth READ contentWidth WRITE setContentWidth RESET resetContentWidth NOTIFY contentWidthChanged FINAL REVISION 5) - Q_PROPERTY(qreal contentHeight READ contentHeight WRITE setContentHeight RESET resetContentHeight NOTIFY contentHeightChanged FINAL REVISION 5) + Q_PROPERTY(qreal contentWidth READ contentWidth WRITE setContentWidth RESET resetContentWidth NOTIFY contentWidthChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal contentHeight READ contentHeight WRITE setContentHeight RESET resetContentHeight NOTIFY contentHeightChanged FINAL REVISION(2, 5)) Q_CLASSINFO("DefaultProperty", "contentData") + QML_NAMED_ELEMENT(Container) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickContainer(QQuickItem *parent = nullptr); @@ -80,7 +82,7 @@ public: Q_INVOKABLE void moveItem(int from, int to); Q_INVOKABLE void removeItem(QQuickItem *item); // 2.3 (Qt 5.10) - Q_REVISION(3) Q_INVOKABLE QQuickItem *takeItem(int index); + Q_REVISION(2, 3) Q_INVOKABLE QQuickItem *takeItem(int index); QVariant contentModel() const; QQmlListProperty<QObject> contentData(); @@ -101,8 +103,8 @@ public: public Q_SLOTS: void setCurrentIndex(int index); // 2.1 (Qt 5.8) - Q_REVISION(1) void incrementCurrentIndex(); - Q_REVISION(1) void decrementCurrentIndex(); + Q_REVISION(2, 1) void incrementCurrentIndex(); + Q_REVISION(2, 1) void decrementCurrentIndex(); Q_SIGNALS: void countChanged(); @@ -110,8 +112,8 @@ Q_SIGNALS: void currentIndexChanged(); void currentItemChanged(); // 2.5 (Qt 5.12) - Q_REVISION(5) void contentWidthChanged(); - Q_REVISION(5) void contentHeightChanged(); + Q_REVISION(2, 5) void contentWidthChanged(); + Q_REVISION(2, 5) void contentHeightChanged(); protected: QQuickContainer(QQuickContainerPrivate &dd, QQuickItem *parent); diff --git a/src/quicktemplates2/qquickcontrol.cpp b/src/quicktemplates2/qquickcontrol.cpp index c5a5fd7a..22b7f922 100644 --- a/src/quicktemplates2/qquickcontrol.cpp +++ b/src/quicktemplates2/qquickcontrol.cpp @@ -176,15 +176,15 @@ bool QQuickControlPrivate::acceptTouch(const QTouchEvent::TouchPoint &point) if (point.id() == touchId) return true; - if (touchId == -1 && point.state() == Qt::TouchPointPressed) { + if (touchId == -1 && point.state() == QEventPoint::Pressed) { touchId = point.id(); return true; } // If the control is on a Flickable that has a pressDelay, then the press is never // sent as a touch event, therefore we need to check for this case. - if (touchId == -1 && pressWasTouch && point.state() == Qt::TouchPointReleased && - point.pos() == previousPressPos) { + if (touchId == -1 && pressWasTouch && point.state() == QEventPoint::Released && + point.position() == previousPressPos) { return true; } return false; @@ -1442,7 +1442,7 @@ void QQuickControl::setHoverEnabled(bool enabled) d->updateHoverEnabled(enabled, true); // explicit=true #else - Q_UNUSED(enabled) + Q_UNUSED(enabled); #endif } @@ -1953,7 +1953,7 @@ void QQuickControl::hoverEnterEvent(QHoverEvent *event) void QQuickControl::hoverMoveEvent(QHoverEvent *event) { Q_D(QQuickControl); - setHovered(d->hoverEnabled && contains(event->pos())); + setHovered(d->hoverEnabled && contains(event->position())); event->setAccepted(d->hoverEnabled); } @@ -1968,10 +1968,10 @@ void QQuickControl::hoverLeaveEvent(QHoverEvent *event) void QQuickControl::mousePressEvent(QMouseEvent *event) { Q_D(QQuickControl); - d->handlePress(event->localPos()); + d->handlePress(event->position()); if (event->source() == Qt::MouseEventSynthesizedByQt) { d->pressWasTouch = true; - d->previousPressPos = event->localPos(); + d->previousPressPos = event->position(); } event->accept(); } @@ -1979,14 +1979,14 @@ void QQuickControl::mousePressEvent(QMouseEvent *event) void QQuickControl::mouseMoveEvent(QMouseEvent *event) { Q_D(QQuickControl); - d->handleMove(event->localPos()); + d->handleMove(event->position()); event->accept(); } void QQuickControl::mouseReleaseEvent(QMouseEvent *event) { Q_D(QQuickControl); - d->handleRelease(event->localPos()); + d->handleRelease(event->position()); event->accept(); } @@ -2009,14 +2009,14 @@ void QQuickControl::touchEvent(QTouchEvent *event) continue; switch (point.state()) { - case Qt::TouchPointPressed: - d->handlePress(point.pos()); + case QEventPoint::Pressed: + d->handlePress(point.position()); break; - case Qt::TouchPointMoved: - d->handleMove(point.pos()); + case QEventPoint::Updated: + d->handleMove(point.position()); break; - case Qt::TouchPointReleased: - d->handleRelease(point.pos()); + case QEventPoint::Released: + d->handleRelease(point.position()); break; default: break; @@ -2154,7 +2154,7 @@ void QQuickControl::maybeSetAccessibleName(const QString &name) accessibleAttached->setNameImplicitly(name); } #else - Q_UNUSED(name) + Q_UNUSED(name); #endif } @@ -2164,7 +2164,7 @@ QVariant QQuickControl::accessibleProperty(const char *propertyName) if (QAccessible::isActive()) return QQuickAccessibleAttached::property(this, propertyName); #endif - Q_UNUSED(propertyName) + Q_UNUSED(propertyName); return QVariant(); } @@ -2174,8 +2174,8 @@ bool QQuickControl::setAccessibleProperty(const char *propertyName, const QVaria if (QAccessible::isActive()) return QQuickAccessibleAttached::setProperty(this, propertyName, value); #endif - Q_UNUSED(propertyName) - Q_UNUSED(value) + Q_UNUSED(propertyName); + Q_UNUSED(value); return false; } diff --git a/src/quicktemplates2/qquickcontrol_p.h b/src/quicktemplates2/qquickcontrol_p.h index 6d88a8b2..5e4a7cd9 100644 --- a/src/quicktemplates2/qquickcontrol_p.h +++ b/src/quicktemplates2/qquickcontrol_p.h @@ -81,17 +81,19 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickControl : public QQuickItem Q_PROPERTY(QQuickItem *contentItem READ contentItem WRITE setContentItem NOTIFY contentItemChanged FINAL) Q_PROPERTY(qreal baselineOffset READ baselineOffset WRITE setBaselineOffset RESET resetBaselineOffset NOTIFY baselineOffsetChanged FINAL) // 2.5 (Qt 5.12) - Q_PROPERTY(qreal horizontalPadding READ horizontalPadding WRITE setHorizontalPadding RESET resetHorizontalPadding NOTIFY horizontalPaddingChanged FINAL REVISION 5) - Q_PROPERTY(qreal verticalPadding READ verticalPadding WRITE setVerticalPadding RESET resetVerticalPadding NOTIFY verticalPaddingChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitContentWidth READ implicitContentWidth NOTIFY implicitContentWidthChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitContentHeight READ implicitContentHeight NOTIFY implicitContentHeightChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitBackgroundWidth READ implicitBackgroundWidth NOTIFY implicitBackgroundWidthChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitBackgroundHeight READ implicitBackgroundHeight NOTIFY implicitBackgroundHeightChanged FINAL REVISION 5) - Q_PROPERTY(qreal topInset READ topInset WRITE setTopInset RESET resetTopInset NOTIFY topInsetChanged FINAL REVISION 5) - Q_PROPERTY(qreal leftInset READ leftInset WRITE setLeftInset RESET resetLeftInset NOTIFY leftInsetChanged FINAL REVISION 5) - Q_PROPERTY(qreal rightInset READ rightInset WRITE setRightInset RESET resetRightInset NOTIFY rightInsetChanged FINAL REVISION 5) - Q_PROPERTY(qreal bottomInset READ bottomInset WRITE setBottomInset RESET resetBottomInset NOTIFY bottomInsetChanged FINAL REVISION 5) + Q_PROPERTY(qreal horizontalPadding READ horizontalPadding WRITE setHorizontalPadding RESET resetHorizontalPadding NOTIFY horizontalPaddingChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal verticalPadding READ verticalPadding WRITE setVerticalPadding RESET resetVerticalPadding NOTIFY verticalPaddingChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitContentWidth READ implicitContentWidth NOTIFY implicitContentWidthChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitContentHeight READ implicitContentHeight NOTIFY implicitContentHeightChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitBackgroundWidth READ implicitBackgroundWidth NOTIFY implicitBackgroundWidthChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitBackgroundHeight READ implicitBackgroundHeight NOTIFY implicitBackgroundHeightChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal topInset READ topInset WRITE setTopInset RESET resetTopInset NOTIFY topInsetChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal leftInset READ leftInset WRITE setLeftInset RESET resetLeftInset NOTIFY leftInsetChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal rightInset READ rightInset WRITE setRightInset RESET resetRightInset NOTIFY rightInsetChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal bottomInset READ bottomInset WRITE setBottomInset RESET resetBottomInset NOTIFY bottomInsetChanged FINAL REVISION(2, 5)) Q_CLASSINFO("DeferredPropertyNames", "background,contentItem") + QML_NAMED_ELEMENT(Control) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickControl(QQuickItem *parent = nullptr); @@ -215,16 +217,16 @@ Q_SIGNALS: void contentItemChanged(); void baselineOffsetChanged(); // 2.5 (Qt 5.12) - Q_REVISION(5) void horizontalPaddingChanged(); - Q_REVISION(5) void verticalPaddingChanged(); - Q_REVISION(5) void implicitContentWidthChanged(); - Q_REVISION(5) void implicitContentHeightChanged(); - Q_REVISION(5) void implicitBackgroundWidthChanged(); - Q_REVISION(5) void implicitBackgroundHeightChanged(); - Q_REVISION(5) void topInsetChanged(); - Q_REVISION(5) void leftInsetChanged(); - Q_REVISION(5) void rightInsetChanged(); - Q_REVISION(5) void bottomInsetChanged(); + Q_REVISION(2, 5) void horizontalPaddingChanged(); + Q_REVISION(2, 5) void verticalPaddingChanged(); + Q_REVISION(2, 5) void implicitContentWidthChanged(); + Q_REVISION(2, 5) void implicitContentHeightChanged(); + Q_REVISION(2, 5) void implicitBackgroundWidthChanged(); + Q_REVISION(2, 5) void implicitBackgroundHeightChanged(); + Q_REVISION(2, 5) void topInsetChanged(); + Q_REVISION(2, 5) void leftInsetChanged(); + Q_REVISION(2, 5) void rightInsetChanged(); + Q_REVISION(2, 5) void bottomInsetChanged(); protected: virtual QFont defaultFont() const; @@ -286,6 +288,21 @@ private: Q_DECLARE_PRIVATE(QQuickControl) }; +struct QQuickItemForeign +{ + Q_GADGET + QML_ANONYMOUS + QML_FOREIGN(QQuickItem) + QML_ADDED_IN_VERSION(2, 3) +}; + +struct QQuickPaletteForeign +{ + Q_GADGET + QML_NAMED_ELEMENT(Palette) + QML_ADDED_IN_VERSION(6, 0) +}; + QT_END_NAMESPACE QML_DECLARE_TYPE(QQuickControl) diff --git a/src/quicktemplates2/qquickdelaybutton_p.h b/src/quicktemplates2/qquickdelaybutton_p.h index 5ac0885d..a697bca8 100644 --- a/src/quicktemplates2/qquickdelaybutton_p.h +++ b/src/quicktemplates2/qquickdelaybutton_p.h @@ -61,6 +61,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickDelayButton : public QQuickAbstract Q_PROPERTY(int delay READ delay WRITE setDelay NOTIFY delayChanged FINAL) Q_PROPERTY(qreal progress READ progress WRITE setProgress NOTIFY progressChanged FINAL) Q_PROPERTY(QQuickTransition *transition READ transition WRITE setTransition NOTIFY transitionChanged FINAL) + QML_NAMED_ELEMENT(DelayButton) + QML_ADDED_IN_VERSION(2, 2) public: explicit QQuickDelayButton(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquickdial.cpp b/src/quicktemplates2/qquickdial.cpp index 99bd0e98..e011891f 100644 --- a/src/quicktemplates2/qquickdial.cpp +++ b/src/quicktemplates2/qquickdial.cpp @@ -735,7 +735,7 @@ void QQuickDial::mousePressEvent(QMouseEvent *event) { Q_D(QQuickDial); QQuickControl::mousePressEvent(event); - d->handleMove(event->localPos()); + d->handleMove(event->position()); setKeepMouseGrab(true); } @@ -750,18 +750,18 @@ void QQuickDial::touchEvent(QTouchEvent *event) continue; switch (point.state()) { - case Qt::TouchPointMoved: + case QEventPoint::Updated: if (!keepTouchGrab()) { - bool overXDragThreshold = QQuickWindowPrivate::dragOverThreshold(point.pos().x() - d->pressPoint.x(), Qt::XAxis, &point); + bool overXDragThreshold = QQuickWindowPrivate::dragOverThreshold(point.position().x() - d->pressPoint.x(), Qt::XAxis, &point); setKeepTouchGrab(overXDragThreshold); if (!overXDragThreshold) { - bool overYDragThreshold = QQuickWindowPrivate::dragOverThreshold(point.pos().y() - d->pressPoint.y(), Qt::YAxis, &point); + bool overYDragThreshold = QQuickWindowPrivate::dragOverThreshold(point.position().y() - d->pressPoint.y(), Qt::YAxis, &point); setKeepTouchGrab(overYDragThreshold); } } if (keepTouchGrab()) - d->handleMove(point.pos()); + d->handleMove(point.position()); break; default: diff --git a/src/quicktemplates2/qquickdial_p.h b/src/quicktemplates2/qquickdial_p.h index cc641c78..67bbc183 100644 --- a/src/quicktemplates2/qquickdial_p.h +++ b/src/quicktemplates2/qquickdial_p.h @@ -71,10 +71,12 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickDial : public QQuickControl Q_PROPERTY(bool pressed READ isPressed NOTIFY pressedChanged FINAL) Q_PROPERTY(QQuickItem *handle READ handle WRITE setHandle NOTIFY handleChanged FINAL) // 2.2 (Qt 5.9) - Q_PROPERTY(bool live READ live WRITE setLive NOTIFY liveChanged FINAL REVISION 2) + Q_PROPERTY(bool live READ live WRITE setLive NOTIFY liveChanged FINAL REVISION(2, 2)) // 2.5 (Qt 5.12) - Q_PROPERTY(InputMode inputMode READ inputMode WRITE setInputMode NOTIFY inputModeChanged FINAL REVISION 5) + Q_PROPERTY(InputMode inputMode READ inputMode WRITE setInputMode NOTIFY inputModeChanged FINAL REVISION(2, 5)) Q_CLASSINFO("DeferredPropertyNames", "background,handle") + QML_NAMED_ELEMENT(Dial) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickDial(QQuickItem *parent = nullptr); @@ -145,10 +147,10 @@ Q_SIGNALS: void pressedChanged(); void handleChanged(); // 2.2 (Qt 5.9) - Q_REVISION(2) void moved(); - Q_REVISION(2) void liveChanged(); + Q_REVISION(2, 2) void moved(); + Q_REVISION(2, 2) void liveChanged(); // 2.5 (Qt 5.12) - Q_REVISION(5) void inputModeChanged(); + Q_REVISION(2, 5) void inputModeChanged(); protected: void keyPressEvent(QKeyEvent *event) override; diff --git a/src/quicktemplates2/qquickdialog_p.h b/src/quicktemplates2/qquickdialog_p.h index 38a1b396..20f56f6b 100644 --- a/src/quicktemplates2/qquickdialog_p.h +++ b/src/quicktemplates2/qquickdialog_p.h @@ -64,13 +64,15 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickDialog : public QQuickPopup Q_PROPERTY(QQuickItem *footer READ footer WRITE setFooter NOTIFY footerChanged FINAL) Q_PROPERTY(QPlatformDialogHelper::StandardButtons standardButtons READ standardButtons WRITE setStandardButtons NOTIFY standardButtonsChanged FINAL) // 2.3 (Qt 5.10) - Q_PROPERTY(int result READ result WRITE setResult NOTIFY resultChanged FINAL REVISION 3) + Q_PROPERTY(int result READ result WRITE setResult NOTIFY resultChanged FINAL REVISION(2, 3)) Q_FLAGS(QPlatformDialogHelper::StandardButtons) // 2.5 (Qt 5.12) - Q_PROPERTY(qreal implicitHeaderWidth READ implicitHeaderWidth NOTIFY implicitHeaderWidthChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitHeaderHeight READ implicitHeaderHeight NOTIFY implicitHeaderHeightChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitFooterWidth READ implicitFooterWidth NOTIFY implicitFooterWidthChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitFooterHeight READ implicitFooterHeight NOTIFY implicitFooterHeightChanged FINAL REVISION 5) + Q_PROPERTY(qreal implicitHeaderWidth READ implicitHeaderWidth NOTIFY implicitHeaderWidthChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitHeaderHeight READ implicitHeaderHeight NOTIFY implicitHeaderHeightChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitFooterWidth READ implicitFooterWidth NOTIFY implicitFooterWidthChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitFooterHeight READ implicitFooterHeight NOTIFY implicitFooterHeightChanged FINAL REVISION(2, 5)) + QML_NAMED_ELEMENT(Dialog) + QML_ADDED_IN_VERSION(2, 1) public: explicit QQuickDialog(QObject *parent = nullptr); @@ -86,7 +88,7 @@ public: QPlatformDialogHelper::StandardButtons standardButtons() const; void setStandardButtons(QPlatformDialogHelper::StandardButtons buttons); - Q_REVISION(3) Q_INVOKABLE QQuickAbstractButton *standardButton(QPlatformDialogHelper::StandardButton button) const; + Q_REVISION(2, 3) Q_INVOKABLE QQuickAbstractButton *standardButton(QPlatformDialogHelper::StandardButton button) const; // 2.3 (Qt 5.10) enum StandardCode { Rejected, Accepted }; @@ -115,11 +117,11 @@ Q_SIGNALS: void footerChanged(); void standardButtonsChanged(); // 2.3 (Qt 5.10) - Q_REVISION(3) void applied(); - Q_REVISION(3) void reset(); - Q_REVISION(3) void discarded(); - Q_REVISION(3) void helpRequested(); - Q_REVISION(3) void resultChanged(); + Q_REVISION(2, 3) void applied(); + Q_REVISION(2, 3) void reset(); + Q_REVISION(2, 3) void discarded(); + Q_REVISION(2, 3) void helpRequested(); + Q_REVISION(2, 3) void resultChanged(); // 2.5 (Qt 5.12) void implicitHeaderWidthChanged(); void implicitHeaderHeightChanged(); diff --git a/src/quicktemplates2/qquickdialogbuttonbox.cpp b/src/quicktemplates2/qquickdialogbuttonbox.cpp index b9e9674b..d6ed366f 100644 --- a/src/quicktemplates2/qquickdialogbuttonbox.cpp +++ b/src/quicktemplates2/qquickdialogbuttonbox.cpp @@ -258,7 +258,7 @@ void QQuickDialogButtonBoxPrivate::updateLayout() const int halign = alignment & Qt::AlignHorizontal_Mask; const int valign = alignment & Qt::AlignVertical_Mask; - QVector<QQuickAbstractButton *> buttons; + QList<QQuickAbstractButton *> buttons; const qreal cw = (alignment & Qt::AlignHorizontal_Mask) == 0 ? q->availableWidth() : contentWidth; const qreal itemWidth = (cw - qMax(0, count - 1) * spacing) / count; diff --git a/src/quicktemplates2/qquickdialogbuttonbox_p.h b/src/quicktemplates2/qquickdialogbuttonbox_p.h index 996f4ef7..b1687df7 100644 --- a/src/quicktemplates2/qquickdialogbuttonbox_p.h +++ b/src/quicktemplates2/qquickdialogbuttonbox_p.h @@ -67,8 +67,11 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickDialogButtonBox : public QQuickCont Q_PROPERTY(QPlatformDialogHelper::StandardButtons standardButtons READ standardButtons WRITE setStandardButtons NOTIFY standardButtonsChanged FINAL) Q_PROPERTY(QQmlComponent *delegate READ delegate WRITE setDelegate NOTIFY delegateChanged FINAL) // 2.5 (Qt 5.12) - Q_PROPERTY(QPlatformDialogHelper::ButtonLayout buttonLayout READ buttonLayout WRITE setButtonLayout RESET resetButtonLayout NOTIFY buttonLayoutChanged FINAL REVISION 5) + Q_PROPERTY(QPlatformDialogHelper::ButtonLayout buttonLayout READ buttonLayout WRITE setButtonLayout RESET resetButtonLayout NOTIFY buttonLayoutChanged FINAL REVISION(2, 5)) Q_FLAGS(QPlatformDialogHelper::StandardButtons) + QML_NAMED_ELEMENT(DialogButtonBox) + QML_ATTACHED(QQuickDialogButtonBoxAttached) + QML_ADDED_IN_VERSION(2, 1) public: explicit QQuickDialogButtonBox(QQuickItem *parent = nullptr); @@ -113,11 +116,11 @@ Q_SIGNALS: void standardButtonsChanged(); void delegateChanged(); // 2.3 (Qt 5.10) - Q_REVISION(3) void applied(); - Q_REVISION(3) void reset(); - Q_REVISION(3) void discarded(); + Q_REVISION(2, 3) void applied(); + Q_REVISION(2, 3) void reset(); + Q_REVISION(2, 3) void discarded(); // 2.5 (Qt 5.12) - Q_REVISION(5) void buttonLayoutChanged(); + Q_REVISION(2, 5) void buttonLayoutChanged(); protected: void updatePolish() override; diff --git a/src/quicktemplates2/qquickdrawer.cpp b/src/quicktemplates2/qquickdrawer.cpp index b6d70dd7..47b69161 100644 --- a/src/quicktemplates2/qquickdrawer.cpp +++ b/src/quicktemplates2/qquickdrawer.cpp @@ -305,7 +305,7 @@ bool QQuickDrawerPrivate::startDrag(QEvent *event) switch (event->type()) { case QEvent::MouseButtonPress: - if (isWithinDragMargin(q, static_cast<QMouseEvent *>(event)->windowPos())) { + if (isWithinDragMargin(q, static_cast<QMouseEvent *>(event)->scenePosition())) { prepareEnterTransition(); reposition(); return handleMouseEvent(window->contentItem(), static_cast<QMouseEvent *>(event)); @@ -316,7 +316,7 @@ bool QQuickDrawerPrivate::startDrag(QEvent *event) case QEvent::TouchBegin: case QEvent::TouchUpdate: for (const QTouchEvent::TouchPoint &point : static_cast<QTouchEvent *>(event)->touchPoints()) { - if (point.state() == Qt::TouchPointPressed && isWithinDragMargin(q, point.scenePos())) { + if (point.state() == QEventPoint::Pressed && isWithinDragMargin(q, point.scenePosition())) { prepareEnterTransition(); reposition(); return handleTouchEvent(window->contentItem(), static_cast<QTouchEvent *>(event)); @@ -345,7 +345,7 @@ bool QQuickDrawerPrivate::grabMouse(QQuickItem *item, QMouseEvent *event) if (!window || !interactive || keepGrab(popupItem) || keepGrab(item)) return false; - const QPointF movePoint = event->windowPos(); + const QPointF movePoint = event->scenePosition(); // Flickable uses a hard-coded threshold of 15 for flicking, and // QStyleHints::startDragDistance for dragging. Drawer uses a bit @@ -384,15 +384,15 @@ bool QQuickDrawerPrivate::grabTouch(QQuickItem *item, QTouchEvent *event) Q_Q(QQuickDrawer); bool handled = handleTouchEvent(item, event); - if (!window || !interactive || keepGrab(popupItem) || keepGrab(item) || !event->touchPointStates().testFlag(Qt::TouchPointMoved)) + if (!window || !interactive || keepGrab(popupItem) || keepGrab(item) || !event->touchPointStates().testFlag(QEventPoint::Updated)) return handled; bool overThreshold = false; for (const QTouchEvent::TouchPoint &point : event->touchPoints()) { - if (!acceptTouch(point) || point.state() != Qt::TouchPointMoved) + if (!acceptTouch(point) || point.state() != QEventPoint::Updated) continue; - const QPointF movePoint = point.scenePos(); + const QPointF movePoint = point.scenePosition(); // Flickable uses a hard-coded threshold of 15 for flicking, and // QStyleHints::startDragDistance for dragging. Drawer uses a bit @@ -416,7 +416,7 @@ bool QQuickDrawerPrivate::grabTouch(QQuickItem *item, QTouchEvent *event) } if (overThreshold) { - popupItem->grabTouchPoints(QVector<int>() << touchId); + popupItem->grabTouchPoints(QList<int>() << touchId); popupItem->setKeepTouchGrab(true); offset = offsetAt(movePoint); } diff --git a/src/quicktemplates2/qquickdrawer_p.h b/src/quicktemplates2/qquickdrawer_p.h index 8e246fcc..f16ae771 100644 --- a/src/quicktemplates2/qquickdrawer_p.h +++ b/src/quicktemplates2/qquickdrawer_p.h @@ -61,7 +61,9 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickDrawer : public QQuickPopup Q_PROPERTY(qreal position READ position WRITE setPosition NOTIFY positionChanged FINAL) Q_PROPERTY(qreal dragMargin READ dragMargin WRITE setDragMargin RESET resetDragMargin NOTIFY dragMarginChanged FINAL) // 2.2 (Qt 5.9) - Q_PROPERTY(bool interactive READ isInteractive WRITE setInteractive NOTIFY interactiveChanged FINAL REVISION 2) + Q_PROPERTY(bool interactive READ isInteractive WRITE setInteractive NOTIFY interactiveChanged FINAL REVISION(2, 2)) + QML_NAMED_ELEMENT(Drawer) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickDrawer(QObject *parent = nullptr); @@ -85,7 +87,7 @@ Q_SIGNALS: void positionChanged(); void dragMarginChanged(); // 2.2 (Qt 5.9) - Q_REVISION(2) void interactiveChanged(); + Q_REVISION(2, 2) void interactiveChanged(); protected: bool childMouseEventFilter(QQuickItem *child, QEvent *event) override; diff --git a/src/quicktemplates2/qquickframe_p.h b/src/quicktemplates2/qquickframe_p.h index 381088ec..f65e2814 100644 --- a/src/quicktemplates2/qquickframe_p.h +++ b/src/quicktemplates2/qquickframe_p.h @@ -57,6 +57,8 @@ class QQuickFramePrivate; class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickFrame : public QQuickPane { Q_OBJECT + QML_NAMED_ELEMENT(Frame) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickFrame(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquickgroupbox_p.h b/src/quicktemplates2/qquickgroupbox_p.h index f5159630..39e20494 100644 --- a/src/quicktemplates2/qquickgroupbox_p.h +++ b/src/quicktemplates2/qquickgroupbox_p.h @@ -60,9 +60,11 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickGroupBox : public QQuickFrame Q_PROPERTY(QString title READ title WRITE setTitle NOTIFY titleChanged FINAL) Q_PROPERTY(QQuickItem *label READ label WRITE setLabel NOTIFY labelChanged FINAL) // 2.5 (Qt 5.12) - Q_PROPERTY(qreal implicitLabelWidth READ implicitLabelWidth NOTIFY implicitLabelWidthChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitLabelHeight READ implicitLabelHeight NOTIFY implicitLabelHeightChanged FINAL REVISION 5) + Q_PROPERTY(qreal implicitLabelWidth READ implicitLabelWidth NOTIFY implicitLabelWidthChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitLabelHeight READ implicitLabelHeight NOTIFY implicitLabelHeightChanged FINAL REVISION(2, 5)) Q_CLASSINFO("DeferredPropertyNames", "background,contentItem,label") + QML_NAMED_ELEMENT(GroupBox) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickGroupBox(QQuickItem *parent = nullptr); @@ -82,8 +84,8 @@ Q_SIGNALS: void titleChanged(); void labelChanged(); // 2.5 (Qt 5.12) - Q_REVISION(5) void implicitLabelWidthChanged(); - Q_REVISION(5) void implicitLabelHeightChanged(); + Q_REVISION(2, 5) void implicitLabelWidthChanged(); + Q_REVISION(2, 5) void implicitLabelHeightChanged(); protected: void componentComplete() override; diff --git a/src/quicktemplates2/qquickheaderview.cpp b/src/quicktemplates2/qquickheaderview.cpp index 85291bcb..8593fa0f 100644 --- a/src/quicktemplates2/qquickheaderview.cpp +++ b/src/quicktemplates2/qquickheaderview.cpp @@ -360,7 +360,7 @@ QModelIndex QHeaderDataProxyModel::index(int row, int column, const QModelIndex QModelIndex QHeaderDataProxyModel::parent(const QModelIndex &child) const { - Q_UNUSED(child) + Q_UNUSED(child); return QModelIndex(); } @@ -401,7 +401,7 @@ bool QHeaderDataProxyModel::setData(const QModelIndex &index, const QVariant &va bool QHeaderDataProxyModel::hasChildren(const QModelIndex &parent) const { - Q_UNUSED(parent) + Q_UNUSED(parent); return false; } diff --git a/src/quicktemplates2/qquickheaderview_p.h b/src/quicktemplates2/qquickheaderview_p.h index 10c55c6e..b8e8b77a 100644 --- a/src/quicktemplates2/qquickheaderview_p.h +++ b/src/quicktemplates2/qquickheaderview_p.h @@ -88,6 +88,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickHorizontalHeaderView : public QQuic { Q_OBJECT Q_DECLARE_PRIVATE(QQuickHorizontalHeaderView) + QML_NAMED_ELEMENT(HorizontalHeaderView) + QML_ADDED_IN_VERSION(2, 15) public: QQuickHorizontalHeaderView(QQuickItem *parent = nullptr); @@ -105,6 +107,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickVerticalHeaderView : public QQuickH { Q_OBJECT Q_DECLARE_PRIVATE(QQuickVerticalHeaderView) + QML_NAMED_ELEMENT(VerticalHeaderView) + QML_ADDED_IN_VERSION(2, 15) public: QQuickVerticalHeaderView(QQuickItem *parent = nullptr); @@ -117,6 +121,14 @@ private: Q_DISABLE_COPY(QQuickVerticalHeaderView) }; +struct QQuickTableViewForeign +{ + Q_GADGET + QML_ANONYMOUS + QML_FOREIGN(QQuickTableView) + QML_ADDED_IN_VERSION(2, 14) +}; + QT_END_NAMESPACE QML_DECLARE_TYPE(QQuickHorizontalHeaderView) diff --git a/src/quicktemplates2/qquickicon_p.h b/src/quicktemplates2/qquickicon_p.h index 1835585d..0c0fe101 100644 --- a/src/quicktemplates2/qquickicon_p.h +++ b/src/quicktemplates2/qquickicon_p.h @@ -54,6 +54,7 @@ #include <QtCore/qshareddata.h> #include <QtQuickTemplates2/private/qtquicktemplates2global_p.h> #include <QtGui/qcolor.h> +#include <QtQml/qqml.h> QT_BEGIN_NAMESPACE @@ -68,6 +69,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickIcon Q_PROPERTY(int height READ height WRITE setHeight RESET resetHeight FINAL) Q_PROPERTY(QColor color READ color WRITE setColor RESET resetColor FINAL) Q_PROPERTY(bool cache READ cache WRITE setCache RESET resetCache FINAL) + QML_ANONYMOUS + QML_ADDED_IN_VERSION(2, 3) public: QQuickIcon(); diff --git a/src/quicktemplates2/qquickitemdelegate_p.h b/src/quicktemplates2/qquickitemdelegate_p.h index a162ddee..2568a0bf 100644 --- a/src/quicktemplates2/qquickitemdelegate_p.h +++ b/src/quicktemplates2/qquickitemdelegate_p.h @@ -58,6 +58,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickItemDelegate : public QQuickAbstrac { Q_OBJECT Q_PROPERTY(bool highlighted READ isHighlighted WRITE setHighlighted NOTIFY highlightedChanged FINAL) + QML_NAMED_ELEMENT(ItemDelegate) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickItemDelegate(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquicklabel.cpp b/src/quicktemplates2/qquicklabel.cpp index f8c1c489..144d2fe7 100644 --- a/src/quicktemplates2/qquicklabel.cpp +++ b/src/quicktemplates2/qquicklabel.cpp @@ -213,7 +213,7 @@ void QQuickLabelPrivate::textChanged(const QString &text) #if QT_CONFIG(accessibility) maybeSetAccessibleName(text); #else - Q_UNUSED(text) + Q_UNUSED(text); #endif } diff --git a/src/quicktemplates2/qquicklabel_p.h b/src/quicktemplates2/qquicklabel_p.h index c3e4fb45..02acddca 100644 --- a/src/quicktemplates2/qquicklabel_p.h +++ b/src/quicktemplates2/qquicklabel_p.h @@ -62,13 +62,15 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickLabel : public QQuickText Q_PROPERTY(QFont font READ font WRITE setFont NOTIFY fontChanged) // override Q_PROPERTY(QQuickItem *background READ background WRITE setBackground NOTIFY backgroundChanged FINAL) // 2.5 (Qt 5.12) - Q_PROPERTY(qreal implicitBackgroundWidth READ implicitBackgroundWidth NOTIFY implicitBackgroundWidthChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitBackgroundHeight READ implicitBackgroundHeight NOTIFY implicitBackgroundHeightChanged FINAL REVISION 5) - Q_PROPERTY(qreal topInset READ topInset WRITE setTopInset RESET resetTopInset NOTIFY topInsetChanged FINAL REVISION 5) - Q_PROPERTY(qreal leftInset READ leftInset WRITE setLeftInset RESET resetLeftInset NOTIFY leftInsetChanged FINAL REVISION 5) - Q_PROPERTY(qreal rightInset READ rightInset WRITE setRightInset RESET resetRightInset NOTIFY rightInsetChanged FINAL REVISION 5) - Q_PROPERTY(qreal bottomInset READ bottomInset WRITE setBottomInset RESET resetBottomInset NOTIFY bottomInsetChanged FINAL REVISION 5) + Q_PROPERTY(qreal implicitBackgroundWidth READ implicitBackgroundWidth NOTIFY implicitBackgroundWidthChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitBackgroundHeight READ implicitBackgroundHeight NOTIFY implicitBackgroundHeightChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal topInset READ topInset WRITE setTopInset RESET resetTopInset NOTIFY topInsetChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal leftInset READ leftInset WRITE setLeftInset RESET resetLeftInset NOTIFY leftInsetChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal rightInset READ rightInset WRITE setRightInset RESET resetRightInset NOTIFY rightInsetChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal bottomInset READ bottomInset WRITE setBottomInset RESET resetBottomInset NOTIFY bottomInsetChanged FINAL REVISION(2, 5)) Q_CLASSINFO("DeferredPropertyNames", "background") + QML_NAMED_ELEMENT(Label) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickLabel(QQuickItem *parent = nullptr); @@ -104,12 +106,12 @@ Q_SIGNALS: void fontChanged(); void backgroundChanged(); // 2.5 (Qt 5.12) - Q_REVISION(5) void implicitBackgroundWidthChanged(); - Q_REVISION(5) void implicitBackgroundHeightChanged(); - Q_REVISION(5) void topInsetChanged(); - Q_REVISION(5) void leftInsetChanged(); - Q_REVISION(5) void rightInsetChanged(); - Q_REVISION(5) void bottomInsetChanged(); + Q_REVISION(2, 5) void implicitBackgroundWidthChanged(); + Q_REVISION(2, 5) void implicitBackgroundHeightChanged(); + Q_REVISION(2, 5) void topInsetChanged(); + Q_REVISION(2, 5) void leftInsetChanged(); + Q_REVISION(2, 5) void rightInsetChanged(); + Q_REVISION(2, 5) void bottomInsetChanged(); protected: void classBegin() override; @@ -124,6 +126,14 @@ private: Q_DECLARE_PRIVATE(QQuickLabel) }; +struct QQuickTextForeign +{ + Q_GADGET + QML_ANONYMOUS + QML_FOREIGN(QQuickText) + QML_ADDED_IN_VERSION(2, 3) +}; + QT_END_NAMESPACE QML_DECLARE_TYPE(QQuickLabel) diff --git a/src/quicktemplates2/qquickmenu_p.h b/src/quicktemplates2/qquickmenu_p.h index de252bf8..2646cffa 100644 --- a/src/quicktemplates2/qquickmenu_p.h +++ b/src/quicktemplates2/qquickmenu_p.h @@ -67,12 +67,14 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickMenu : public QQuickPopup Q_PROPERTY(QQmlListProperty<QObject> contentData READ contentData FINAL) Q_PROPERTY(QString title READ title WRITE setTitle NOTIFY titleChanged FINAL) // 2.3 (Qt 5.10) - Q_PROPERTY(int count READ count NOTIFY countChanged FINAL REVISION 3) - Q_PROPERTY(bool cascade READ cascade WRITE setCascade RESET resetCascade NOTIFY cascadeChanged FINAL REVISION 3) - Q_PROPERTY(qreal overlap READ overlap WRITE setOverlap NOTIFY overlapChanged FINAL REVISION 3) - Q_PROPERTY(QQmlComponent *delegate READ delegate WRITE setDelegate NOTIFY delegateChanged FINAL REVISION 3) - Q_PROPERTY(int currentIndex READ currentIndex WRITE setCurrentIndex NOTIFY currentIndexChanged FINAL REVISION 3) + Q_PROPERTY(int count READ count NOTIFY countChanged FINAL REVISION(2, 3)) + Q_PROPERTY(bool cascade READ cascade WRITE setCascade RESET resetCascade NOTIFY cascadeChanged FINAL REVISION(2, 3)) + Q_PROPERTY(qreal overlap READ overlap WRITE setOverlap NOTIFY overlapChanged FINAL REVISION(2, 3)) + Q_PROPERTY(QQmlComponent *delegate READ delegate WRITE setDelegate NOTIFY delegateChanged FINAL REVISION(2, 3)) + Q_PROPERTY(int currentIndex READ currentIndex WRITE setCurrentIndex NOTIFY currentIndexChanged FINAL REVISION(2, 3)) Q_CLASSINFO("DefaultProperty", "contentData") + QML_NAMED_ELEMENT(Menu) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickMenu(QObject *parent = nullptr); @@ -104,25 +106,25 @@ public: // 2.3 (Qt 5.10) int count() const; - Q_REVISION(3) Q_INVOKABLE QQuickItem *takeItem(int index); + Q_REVISION(2, 3) Q_INVOKABLE QQuickItem *takeItem(int index); - Q_REVISION(3) Q_INVOKABLE QQuickMenu *menuAt(int index) const; - Q_REVISION(3) Q_INVOKABLE void addMenu(QQuickMenu *menu); - Q_REVISION(3) Q_INVOKABLE void insertMenu(int index, QQuickMenu *menu); - Q_REVISION(3) Q_INVOKABLE void removeMenu(QQuickMenu *menu); - Q_REVISION(3) Q_INVOKABLE QQuickMenu *takeMenu(int index); + Q_REVISION(2, 3) Q_INVOKABLE QQuickMenu *menuAt(int index) const; + Q_REVISION(2, 3) Q_INVOKABLE void addMenu(QQuickMenu *menu); + Q_REVISION(2, 3) Q_INVOKABLE void insertMenu(int index, QQuickMenu *menu); + Q_REVISION(2, 3) Q_INVOKABLE void removeMenu(QQuickMenu *menu); + Q_REVISION(2, 3) Q_INVOKABLE QQuickMenu *takeMenu(int index); - Q_REVISION(3) Q_INVOKABLE QQuickAction *actionAt(int index) const; - Q_REVISION(3) Q_INVOKABLE void addAction(QQuickAction *action); - Q_REVISION(3) Q_INVOKABLE void insertAction(int index, QQuickAction *action); - Q_REVISION(3) Q_INVOKABLE void removeAction(QQuickAction *action); - Q_REVISION(3) Q_INVOKABLE QQuickAction *takeAction(int index); + Q_REVISION(2, 3) Q_INVOKABLE QQuickAction *actionAt(int index) const; + Q_REVISION(2, 3) Q_INVOKABLE void addAction(QQuickAction *action); + Q_REVISION(2, 3) Q_INVOKABLE void insertAction(int index, QQuickAction *action); + Q_REVISION(2, 3) Q_INVOKABLE void removeAction(QQuickAction *action); + Q_REVISION(2, 3) Q_INVOKABLE QQuickAction *takeAction(int index); void popup(QQuickItem *menuItem = nullptr); void popup(const QPointF &pos, QQuickItem *menuItem = nullptr); - Q_REVISION(3) Q_INVOKABLE void popup(QQmlV4Function *args); - Q_REVISION(3) Q_INVOKABLE void dismiss(); + Q_REVISION(2, 3) Q_INVOKABLE void popup(QQmlV4Function *args); + Q_REVISION(2, 3) Q_INVOKABLE void dismiss(); protected: void componentComplete() override; @@ -133,11 +135,11 @@ protected: Q_SIGNALS: void titleChanged(const QString &title); // 2.3 (Qt 5.10) - Q_REVISION(3) void countChanged(); - Q_REVISION(3) void cascadeChanged(bool cascade); - Q_REVISION(3) void overlapChanged(); - Q_REVISION(3) void delegateChanged(); - Q_REVISION(3) void currentIndexChanged(); + Q_REVISION(2, 3) void countChanged(); + Q_REVISION(2, 3) void cascadeChanged(bool cascade); + Q_REVISION(2, 3) void overlapChanged(); + Q_REVISION(2, 3) void delegateChanged(); + Q_REVISION(2, 3) void currentIndexChanged(); protected: void timerEvent(QTimerEvent *event) override; diff --git a/src/quicktemplates2/qquickmenu_p_p.h b/src/quicktemplates2/qquickmenu_p_p.h index 41837a15..f1a5b3f9 100644 --- a/src/quicktemplates2/qquickmenu_p_p.h +++ b/src/quicktemplates2/qquickmenu_p_p.h @@ -48,7 +48,7 @@ // We mean it. // -#include <QtCore/qvector.h> +#include <QtCore/qlist.h> #include <QtCore/qpointer.h> #include <QtQuickTemplates2/private/qquickmenu_p.h> @@ -131,7 +131,7 @@ public: QPointer<QQuickMenu> parentMenu; QPointer<QQuickMenuItem> currentItem; QQuickItem *contentItem = nullptr; // TODO: cleanup - QVector<QObject *> contentData; + QList<QObject *> contentData; QQmlObjectModel *contentModel; QQmlComponent *delegate = nullptr; QString title; diff --git a/src/quicktemplates2/qquickmenubar_p.h b/src/quicktemplates2/qquickmenubar_p.h index 8fcaa870..8092cf9b 100644 --- a/src/quicktemplates2/qquickmenubar_p.h +++ b/src/quicktemplates2/qquickmenubar_p.h @@ -63,6 +63,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickMenuBar : public QQuickContainer Q_PROPERTY(qreal contentHeight READ contentHeight WRITE setContentHeight RESET resetContentHeight NOTIFY contentHeightChanged FINAL) // re-declare QQuickContainer::contentHeight (REV 5) Q_PRIVATE_PROPERTY(QQuickMenuBar::d_func(), QQmlListProperty<QQuickMenu> menus READ menus NOTIFY menusChanged FINAL) Q_PRIVATE_PROPERTY(QQuickMenuBar::d_func(), QQmlListProperty<QObject> contentData READ contentData FINAL) + QML_NAMED_ELEMENT(MenuBar) + QML_ADDED_IN_VERSION(2, 3) public: explicit QQuickMenuBar(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquickmenubaritem_p.h b/src/quicktemplates2/qquickmenubaritem_p.h index b58ef1c4..a913f242 100644 --- a/src/quicktemplates2/qquickmenubaritem_p.h +++ b/src/quicktemplates2/qquickmenubaritem_p.h @@ -62,6 +62,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickMenuBarItem : public QQuickAbstract Q_PROPERTY(QQuickMenuBar *menuBar READ menuBar NOTIFY menuBarChanged FINAL) Q_PROPERTY(QQuickMenu *menu READ menu WRITE setMenu NOTIFY menuChanged FINAL) Q_PROPERTY(bool highlighted READ isHighlighted WRITE setHighlighted NOTIFY highlightedChanged FINAL) + QML_NAMED_ELEMENT(MenuBarItem) + QML_ADDED_IN_VERSION(2, 3) public: explicit QQuickMenuBarItem(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquickmenuitem_p.h b/src/quicktemplates2/qquickmenuitem_p.h index e519132e..817da76b 100644 --- a/src/quicktemplates2/qquickmenuitem_p.h +++ b/src/quicktemplates2/qquickmenuitem_p.h @@ -60,10 +60,12 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickMenuItem : public QQuickAbstractBut Q_OBJECT Q_PROPERTY(bool highlighted READ isHighlighted WRITE setHighlighted NOTIFY highlightedChanged FINAL) // 2.3 (Qt 5.10) - Q_PROPERTY(QQuickItem *arrow READ arrow WRITE setArrow NOTIFY arrowChanged FINAL REVISION 3) - Q_PROPERTY(QQuickMenu *menu READ menu NOTIFY menuChanged FINAL REVISION 3) - Q_PROPERTY(QQuickMenu *subMenu READ subMenu NOTIFY subMenuChanged FINAL REVISION 3) + Q_PROPERTY(QQuickItem *arrow READ arrow WRITE setArrow NOTIFY arrowChanged FINAL REVISION(2, 3)) + Q_PROPERTY(QQuickMenu *menu READ menu NOTIFY menuChanged FINAL REVISION(2, 3)) + Q_PROPERTY(QQuickMenu *subMenu READ subMenu NOTIFY subMenuChanged FINAL REVISION(2, 3)) Q_CLASSINFO("DeferredPropertyNames", "arrow,background,contentItem,indicator") + QML_NAMED_ELEMENT(MenuItem) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickMenuItem(QQuickItem *parent = nullptr); @@ -82,9 +84,9 @@ Q_SIGNALS: void triggered(); void highlightedChanged(); // 2.3 (Qt 5.10) - Q_REVISION(3) void arrowChanged(); - Q_REVISION(3) void menuChanged(); - Q_REVISION(3) void subMenuChanged(); + Q_REVISION(2, 3) void arrowChanged(); + Q_REVISION(2, 3) void menuChanged(); + Q_REVISION(2, 3) void subMenuChanged(); protected: void componentComplete() override; diff --git a/src/quicktemplates2/qquickmenuseparator_p.h b/src/quicktemplates2/qquickmenuseparator_p.h index 15d96739..330aaac4 100644 --- a/src/quicktemplates2/qquickmenuseparator_p.h +++ b/src/quicktemplates2/qquickmenuseparator_p.h @@ -58,6 +58,8 @@ class QQuickMenuSeparator; class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickMenuSeparator : public QQuickControl { Q_OBJECT + QML_NAMED_ELEMENT(MenuSeparator) + QML_ADDED_IN_VERSION(2, 1) public: explicit QQuickMenuSeparator(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquickoverlay.cpp b/src/quicktemplates2/qquickoverlay.cpp index 6eb0d0e8..4d272bff 100644 --- a/src/quicktemplates2/qquickoverlay.cpp +++ b/src/quicktemplates2/qquickoverlay.cpp @@ -69,11 +69,11 @@ QT_BEGIN_NAMESPACE \sa ApplicationWindow */ -QVector<QQuickPopup *> QQuickOverlayPrivate::stackingOrderPopups() const +QList<QQuickPopup *> QQuickOverlayPrivate::stackingOrderPopups() const { const QList<QQuickItem *> children = paintOrderChildItems(); - QVector<QQuickPopup *> popups; + QList<QQuickPopup *> popups; popups.reserve(children.count()); for (auto it = children.crbegin(), end = children.crend(); it != end; ++it) { @@ -85,9 +85,9 @@ QVector<QQuickPopup *> QQuickOverlayPrivate::stackingOrderPopups() const return popups; } -QVector<QQuickDrawer *> QQuickOverlayPrivate::stackingOrderDrawers() const +QList<QQuickDrawer *> QQuickOverlayPrivate::stackingOrderDrawers() const { - QVector<QQuickDrawer *> sorted(allDrawers); + QList<QQuickDrawer *> sorted(allDrawers); std::sort(sorted.begin(), sorted.end(), [](const QQuickDrawer *one, const QQuickDrawer *another) { return one->z() > another->z(); }); @@ -116,7 +116,7 @@ bool QQuickOverlayPrivate::startDrag(QEvent *event, const QPointF &pos) } } - const QVector<QQuickDrawer *> drawers = stackingOrderDrawers(); + const QList<QQuickDrawer *> drawers = stackingOrderDrawers(); for (QQuickDrawer *drawer : drawers) { QQuickDrawerPrivate *p = QQuickDrawerPrivate::get(drawer); if (p->startDrag(event)) { @@ -194,7 +194,7 @@ bool QQuickOverlayPrivate::handleMouseEvent(QQuickItem *source, QMouseEvent *eve { switch (event->type()) { case QEvent::MouseButtonPress: - if (!target && startDrag(event, event->windowPos())) + if (!target && startDrag(event, event->scenePosition())) return true; return handlePress(source, event, target); case QEvent::MouseMove: @@ -217,16 +217,16 @@ bool QQuickOverlayPrivate::handleTouchEvent(QQuickItem *source, QTouchEvent *eve case QEvent::TouchEnd: for (const QTouchEvent::TouchPoint &point : event->touchPoints()) { switch (point.state()) { - case Qt::TouchPointPressed: - if (!target && startDrag(event, point.scenePos())) + case QEventPoint::Pressed: + if (!target && startDrag(event, point.scenePosition())) handled = true; else handled |= handlePress(source, event, target); break; - case Qt::TouchPointMoved: + case QEventPoint::Updated: handled |= handleMove(source, event, target ? target : mouseGrabberPopup.data()); break; - case Qt::TouchPointReleased: + case QEventPoint::Released: handled |= handleRelease(source, event, target ? target : mouseGrabberPopup.data()); break; default: @@ -368,10 +368,6 @@ QQuickOverlay *QQuickOverlay::overlay(QQuickWindow *window) if (!window) return nullptr; - QQuickApplicationWindow *applicationWindow = qobject_cast<QQuickApplicationWindow *>(window); - if (applicationWindow) - return applicationWindow->overlay(); - const char *name = "_q_QQuickOverlay"; QQuickOverlay *overlay = window->property(name).value<QQuickOverlay *>(); if (!overlay) { @@ -500,15 +496,15 @@ bool QQuickOverlay::eventFilter(QObject *object, QEvent *event) case QEvent::TouchBegin: case QEvent::TouchUpdate: case QEvent::TouchEnd: - if (static_cast<QTouchEvent *>(event)->touchPointStates() & Qt::TouchPointPressed) + if (static_cast<QTouchEvent *>(event)->touchPointStates() & QEventPoint::Pressed) emit pressed(); - if (static_cast<QTouchEvent *>(event)->touchPointStates() & Qt::TouchPointReleased) + if (static_cast<QTouchEvent *>(event)->touchPointStates() & QEventPoint::Released) emit released(); // allow non-modal popups to close on touch release outside if (!d->mouseGrabberPopup) { for (const QTouchEvent::TouchPoint &point : static_cast<QTouchEvent *>(event)->touchPoints()) { - if (point.state() == Qt::TouchPointReleased) { + if (point.state() == QEventPoint::Released) { if (d->handleRelease(d->window->contentItem(), event, nullptr)) break; } diff --git a/src/quicktemplates2/qquickoverlay_p.h b/src/quicktemplates2/qquickoverlay_p.h index 20ec21a1..c6e530e2 100644 --- a/src/quicktemplates2/qquickoverlay_p.h +++ b/src/quicktemplates2/qquickoverlay_p.h @@ -63,6 +63,10 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickOverlay : public QQuickItem Q_OBJECT Q_PROPERTY(QQmlComponent *modal READ modal WRITE setModal NOTIFY modalChanged FINAL) Q_PROPERTY(QQmlComponent *modeless READ modeless WRITE setModeless NOTIFY modelessChanged FINAL) + QML_NAMED_ELEMENT(Overlay) + QML_ATTACHED(QQuickOverlayAttached) + QML_UNCREATABLE("") + QML_ADDED_IN_VERSION(2, 3) public: explicit QQuickOverlay(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquickoverlay_p_p.h b/src/quicktemplates2/qquickoverlay_p_p.h index b445f87a..ef3d9ee2 100644 --- a/src/quicktemplates2/qquickoverlay_p_p.h +++ b/src/quicktemplates2/qquickoverlay_p_p.h @@ -82,8 +82,8 @@ public: void removePopup(QQuickPopup *popup); void setMouseGrabberPopup(QQuickPopup *popup); - QVector<QQuickPopup *> stackingOrderPopups() const; - QVector<QQuickDrawer *> stackingOrderDrawers() const; + QList<QQuickPopup *> stackingOrderPopups() const; + QList<QQuickDrawer *> stackingOrderDrawers() const; void itemGeometryChanged(QQuickItem *item, QQuickGeometryChange change, const QRectF &diff) override; @@ -91,8 +91,8 @@ public: QQmlComponent *modal = nullptr; QQmlComponent *modeless = nullptr; - QVector<QQuickPopup *> allPopups; - QVector<QQuickDrawer *> allDrawers; + QList<QQuickPopup *> allPopups; + QList<QQuickDrawer *> allDrawers; QPointer<QQuickPopup> mouseGrabberPopup; }; diff --git a/src/quicktemplates2/qquickpage_p.h b/src/quicktemplates2/qquickpage_p.h index b7888ad6..3278900d 100644 --- a/src/quicktemplates2/qquickpage_p.h +++ b/src/quicktemplates2/qquickpage_p.h @@ -62,13 +62,15 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickPage : public QQuickPane Q_PROPERTY(QQuickItem *header READ header WRITE setHeader NOTIFY headerChanged FINAL) Q_PROPERTY(QQuickItem *footer READ footer WRITE setFooter NOTIFY footerChanged FINAL) // 2.1 (Qt 5.8) - Q_PROPERTY(qreal contentWidth READ contentWidth WRITE setContentWidth NOTIFY contentWidthChanged FINAL REVISION 1) - Q_PROPERTY(qreal contentHeight READ contentHeight WRITE setContentHeight NOTIFY contentHeightChanged FINAL REVISION 1) + Q_PROPERTY(qreal contentWidth READ contentWidth WRITE setContentWidth NOTIFY contentWidthChanged FINAL REVISION(2, 1)) + Q_PROPERTY(qreal contentHeight READ contentHeight WRITE setContentHeight NOTIFY contentHeightChanged FINAL REVISION(2, 1)) // 2.5 (Qt 5.12) - Q_PROPERTY(qreal implicitHeaderWidth READ implicitHeaderWidth NOTIFY implicitHeaderWidthChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitHeaderHeight READ implicitHeaderHeight NOTIFY implicitHeaderHeightChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitFooterWidth READ implicitFooterWidth NOTIFY implicitFooterWidthChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitFooterHeight READ implicitFooterHeight NOTIFY implicitFooterHeightChanged FINAL REVISION 5) + Q_PROPERTY(qreal implicitHeaderWidth READ implicitHeaderWidth NOTIFY implicitHeaderWidthChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitHeaderHeight READ implicitHeaderHeight NOTIFY implicitHeaderHeightChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitFooterWidth READ implicitFooterWidth NOTIFY implicitFooterWidthChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitFooterHeight READ implicitFooterHeight NOTIFY implicitFooterHeightChanged FINAL REVISION(2, 5)) + QML_NAMED_ELEMENT(Page) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickPage(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquickpageindicator_p.h b/src/quicktemplates2/qquickpageindicator_p.h index 01352016..a21e88fe 100644 --- a/src/quicktemplates2/qquickpageindicator_p.h +++ b/src/quicktemplates2/qquickpageindicator_p.h @@ -62,6 +62,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickPageIndicator : public QQuickContro Q_PROPERTY(int currentIndex READ currentIndex WRITE setCurrentIndex NOTIFY currentIndexChanged FINAL) Q_PROPERTY(bool interactive READ isInteractive WRITE setInteractive NOTIFY interactiveChanged FINAL) Q_PROPERTY(QQmlComponent *delegate READ delegate WRITE setDelegate NOTIFY delegateChanged FINAL) + QML_NAMED_ELEMENT(PageIndicator) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickPageIndicator(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquickpane.cpp b/src/quicktemplates2/qquickpane.cpp index bf902b6b..ecdc27db 100644 --- a/src/quicktemplates2/qquickpane.cpp +++ b/src/quicktemplates2/qquickpane.cpp @@ -410,8 +410,8 @@ void QQuickPane::contentItemChange(QQuickItem *newItem, QQuickItem *oldItem) void QQuickPane::contentSizeChange(const QSizeF &newSize, const QSizeF &oldSize) { - Q_UNUSED(newSize) - Q_UNUSED(oldSize) + Q_UNUSED(newSize); + Q_UNUSED(oldSize); } #if QT_CONFIG(accessibility) diff --git a/src/quicktemplates2/qquickpane_p.h b/src/quicktemplates2/qquickpane_p.h index 86b2c9f2..2aeb94cd 100644 --- a/src/quicktemplates2/qquickpane_p.h +++ b/src/quicktemplates2/qquickpane_p.h @@ -63,6 +63,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickPane : public QQuickControl Q_PRIVATE_PROPERTY(QQuickPane::d_func(), QQmlListProperty<QObject> contentData READ contentData FINAL) Q_PRIVATE_PROPERTY(QQuickPane::d_func(), QQmlListProperty<QQuickItem> contentChildren READ contentChildren NOTIFY contentChildrenChanged FINAL) Q_CLASSINFO("DefaultProperty", "contentData") + QML_NAMED_ELEMENT(Pane) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickPane(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquickpopup.cpp b/src/quicktemplates2/qquickpopup.cpp index bafa3110..d5a0ccf4 100644 --- a/src/quicktemplates2/qquickpopup.cpp +++ b/src/quicktemplates2/qquickpopup.cpp @@ -313,7 +313,7 @@ bool QQuickPopupPrivate::acceptTouch(const QTouchEvent::TouchPoint &point) if (point.id() == touchId) return true; - if (touchId == -1 && point.state() != Qt::TouchPointReleased) { + if (touchId == -1 && point.state() != QEventPoint::Released) { touchId = point.id(); return true; } @@ -372,11 +372,11 @@ bool QQuickPopupPrivate::handleMouseEvent(QQuickItem *item, QMouseEvent *event) { switch (event->type()) { case QEvent::MouseButtonPress: - return handlePress(item, event->windowPos(), event->timestamp()); + return handlePress(item, event->scenePosition(), event->timestamp()); case QEvent::MouseMove: - return handleMove(item, event->windowPos(), event->timestamp()); + return handleMove(item, event->scenePosition(), event->timestamp()); case QEvent::MouseButtonRelease: - return handleRelease(item, event->windowPos(), event->timestamp()); + return handleRelease(item, event->scenePosition(), event->timestamp()); default: Q_UNREACHABLE(); return false; @@ -392,15 +392,15 @@ bool QQuickPopupPrivate::handleTouchEvent(QQuickItem *item, QTouchEvent *event) case QEvent::TouchEnd: for (const QTouchEvent::TouchPoint &point : event->touchPoints()) { if (!acceptTouch(point)) - return blockInput(item, point.pos()); + return blockInput(item, point.position()); switch (point.state()) { - case Qt::TouchPointPressed: - return handlePress(item, item->mapToScene(point.pos()), event->timestamp()); - case Qt::TouchPointMoved: - return handleMove(item, item->mapToScene(point.pos()), event->timestamp()); - case Qt::TouchPointReleased: - return handleRelease(item, item->mapToScene(point.pos()), event->timestamp()); + case QEventPoint::Pressed: + return handlePress(item, item->mapToScene(point.position()), event->timestamp()); + case QEventPoint::Updated: + return handleMove(item, item->mapToScene(point.position()), event->timestamp()); + case QEventPoint::Released: + return handleRelease(item, item->mapToScene(point.position()), event->timestamp()); default: break; } @@ -451,7 +451,7 @@ bool QQuickPopupPrivate::prepareExitTransition() if (transitionState == ExitTransition && transitionManager.isRunning()) return false; - if (transitionState != ExitTransition) { + if (transitionState != ExitTransition && !hadActiveFocusBeforeExitTransition) { // The setFocus(false) call below removes any active focus before we're // able to check it in finalizeExitTransition. hadActiveFocusBeforeExitTransition = popupItem->hasActiveFocus(); diff --git a/src/quicktemplates2/qquickpopup_p.h b/src/quicktemplates2/qquickpopup_p.h index d5e2f1e9..76ccc7a9 100644 --- a/src/quicktemplates2/qquickpopup_p.h +++ b/src/quicktemplates2/qquickpopup_p.h @@ -116,26 +116,28 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickPopup : public QObject, public QQml Q_PROPERTY(QQuickTransition *enter READ enter WRITE setEnter NOTIFY enterChanged FINAL) Q_PROPERTY(QQuickTransition *exit READ exit WRITE setExit NOTIFY exitChanged FINAL) // 2.1 (Qt 5.8) - Q_PROPERTY(qreal spacing READ spacing WRITE setSpacing RESET resetSpacing NOTIFY spacingChanged FINAL REVISION 1) + Q_PROPERTY(qreal spacing READ spacing WRITE setSpacing RESET resetSpacing NOTIFY spacingChanged FINAL REVISION(2, 1)) // 2.3 (Qt 5.10) - Q_PROPERTY(bool opened READ isOpened NOTIFY openedChanged FINAL REVISION 3) - Q_PROPERTY(bool mirrored READ isMirrored NOTIFY mirroredChanged FINAL REVISION 3) - Q_PROPERTY(bool enabled READ isEnabled WRITE setEnabled NOTIFY enabledChanged FINAL REVISION 3) - Q_PRIVATE_PROPERTY(QQuickPopup::d_func(), QQuickPalette *palette READ palette WRITE setPalette RESET resetPalette NOTIFY paletteChanged REVISION 3) + Q_PROPERTY(bool opened READ isOpened NOTIFY openedChanged FINAL REVISION(2, 3)) + Q_PROPERTY(bool mirrored READ isMirrored NOTIFY mirroredChanged FINAL REVISION(2, 3)) + Q_PROPERTY(bool enabled READ isEnabled WRITE setEnabled NOTIFY enabledChanged FINAL REVISION(2, 3)) + Q_PRIVATE_PROPERTY(QQuickPopup::d_func(), QQuickPalette *palette READ palette WRITE setPalette RESET resetPalette NOTIFY paletteChanged REVISION(2, 3)) // 2.5 (Qt 5.12) Q_PROPERTY(qreal horizontalPadding READ horizontalPadding WRITE setHorizontalPadding RESET resetHorizontalPadding NOTIFY horizontalPaddingChanged FINAL) Q_PROPERTY(qreal verticalPadding READ verticalPadding WRITE setVerticalPadding RESET resetVerticalPadding NOTIFY verticalPaddingChanged FINAL) - Q_PRIVATE_PROPERTY(QQuickPopup::d_func(), QQuickPopupAnchors *anchors READ getAnchors DESIGNABLE false CONSTANT FINAL REVISION 5) - Q_PROPERTY(qreal implicitContentWidth READ implicitContentWidth NOTIFY implicitContentWidthChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitContentHeight READ implicitContentHeight NOTIFY implicitContentHeightChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitBackgroundWidth READ implicitBackgroundWidth NOTIFY implicitBackgroundWidthChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitBackgroundHeight READ implicitBackgroundHeight NOTIFY implicitBackgroundHeightChanged FINAL REVISION 5) - Q_PROPERTY(qreal topInset READ topInset WRITE setTopInset RESET resetTopInset NOTIFY topInsetChanged FINAL REVISION 5) - Q_PROPERTY(qreal leftInset READ leftInset WRITE setLeftInset RESET resetLeftInset NOTIFY leftInsetChanged FINAL REVISION 5) - Q_PROPERTY(qreal rightInset READ rightInset WRITE setRightInset RESET resetRightInset NOTIFY rightInsetChanged FINAL REVISION 5) - Q_PROPERTY(qreal bottomInset READ bottomInset WRITE setBottomInset RESET resetBottomInset NOTIFY bottomInsetChanged FINAL REVISION 5) + Q_PRIVATE_PROPERTY(QQuickPopup::d_func(), QQuickPopupAnchors *anchors READ getAnchors DESIGNABLE false CONSTANT FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitContentWidth READ implicitContentWidth NOTIFY implicitContentWidthChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitContentHeight READ implicitContentHeight NOTIFY implicitContentHeightChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitBackgroundWidth READ implicitBackgroundWidth NOTIFY implicitBackgroundWidthChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitBackgroundHeight READ implicitBackgroundHeight NOTIFY implicitBackgroundHeightChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal topInset READ topInset WRITE setTopInset RESET resetTopInset NOTIFY topInsetChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal leftInset READ leftInset WRITE setLeftInset RESET resetLeftInset NOTIFY leftInsetChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal rightInset READ rightInset WRITE setRightInset RESET resetRightInset NOTIFY rightInsetChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal bottomInset READ bottomInset WRITE setBottomInset RESET resetBottomInset NOTIFY bottomInsetChanged FINAL REVISION(2, 5)) Q_CLASSINFO("DeferredPropertyNames", "background,contentItem") Q_CLASSINFO("DefaultProperty", "contentData") + QML_NAMED_ELEMENT(Popup) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickPopup(QObject *parent = nullptr); @@ -390,24 +392,24 @@ Q_SIGNALS: void exitChanged(); void windowChanged(QQuickWindow *window); // 2.1 (Qt 5.8) - Q_REVISION(1) void spacingChanged(); + Q_REVISION(2, 1) void spacingChanged(); // 2.3 (Qt 5.10) - Q_REVISION(3) void openedChanged(); - Q_REVISION(3) void mirroredChanged(); - Q_REVISION(3) void enabledChanged(); - Q_REVISION(3) void paletteChanged(); - Q_REVISION(3) void paletteCreated(); + Q_REVISION(2, 3) void openedChanged(); + Q_REVISION(2, 3) void mirroredChanged(); + Q_REVISION(2, 3) void enabledChanged(); + Q_REVISION(2, 3) void paletteChanged(); + Q_REVISION(2, 3) void paletteCreated(); // 2.5 (Qt 5.12) - Q_REVISION(5) void horizontalPaddingChanged(); - Q_REVISION(5) void verticalPaddingChanged(); - Q_REVISION(5) void implicitContentWidthChanged(); - Q_REVISION(5) void implicitContentHeightChanged(); - Q_REVISION(5) void implicitBackgroundWidthChanged(); - Q_REVISION(5) void implicitBackgroundHeightChanged(); - Q_REVISION(5) void topInsetChanged(); - Q_REVISION(5) void leftInsetChanged(); - Q_REVISION(5) void rightInsetChanged(); - Q_REVISION(5) void bottomInsetChanged(); + Q_REVISION(2, 5) void horizontalPaddingChanged(); + Q_REVISION(2, 5) void verticalPaddingChanged(); + Q_REVISION(2, 5) void implicitContentWidthChanged(); + Q_REVISION(2, 5) void implicitContentHeightChanged(); + Q_REVISION(2, 5) void implicitBackgroundWidthChanged(); + Q_REVISION(2, 5) void implicitBackgroundHeightChanged(); + Q_REVISION(2, 5) void topInsetChanged(); + Q_REVISION(2, 5) void leftInsetChanged(); + Q_REVISION(2, 5) void rightInsetChanged(); + Q_REVISION(2, 5) void bottomInsetChanged(); protected: QQuickPopup(QQuickPopupPrivate &dd, QObject *parent); diff --git a/src/quicktemplates2/qquickpopupanchors.cpp b/src/quicktemplates2/qquickpopupanchors.cpp index c48ca5ff..0d286cc0 100644 --- a/src/quicktemplates2/qquickpopupanchors.cpp +++ b/src/quicktemplates2/qquickpopupanchors.cpp @@ -47,6 +47,15 @@ QQuickPopupAnchors::QQuickPopupAnchors(QQuickPopup *popup) d->popup = popup; } +QQuickPopupAnchors::~QQuickPopupAnchors() +{ + Q_D(const QQuickPopupAnchors); + if (d->centerIn) { + auto centerInPrivate = QQuickItemPrivate::get(d->centerIn); + centerInPrivate->removeItemChangeListener(this, QQuickItemPrivate::Destroyed); + } +} + QQuickItem *QQuickPopupAnchors::centerIn() const { Q_D(const QQuickPopupAnchors); @@ -59,8 +68,20 @@ void QQuickPopupAnchors::setCenterIn(QQuickItem *item) if (item == d->centerIn) return; + if (d->centerIn) { + auto centerInPrivate = QQuickItemPrivate::get(d->centerIn); + centerInPrivate->removeItemChangeListener(this, QQuickItemPrivate::Destroyed); + } + d->centerIn = item; + + if (d->centerIn) { + auto centerInPrivate = QQuickItemPrivate::get(d->centerIn); + centerInPrivate->addItemChangeListener(this, QQuickItemPrivate::Destroyed); + } + QQuickPopupPrivate::get(d->popup)->reposition(); + emit centerInChanged(); } @@ -69,6 +90,11 @@ void QQuickPopupAnchors::resetCenterIn() setCenterIn(nullptr); } +void QQuickPopupAnchors::itemDestroyed(QQuickItem *) +{ + resetCenterIn(); +} + QT_END_NAMESPACE #include "moc_qquickpopupanchors_p.cpp" diff --git a/src/quicktemplates2/qquickpopupanchors_p.h b/src/quicktemplates2/qquickpopupanchors_p.h index 531c494e..dce1c5b2 100644 --- a/src/quicktemplates2/qquickpopupanchors_p.h +++ b/src/quicktemplates2/qquickpopupanchors_p.h @@ -50,6 +50,7 @@ #include <QtCore/qobject.h> #include <QtQml/qqml.h> +#include <QtQuick/private/qquickitem_p.h> #include <QtQuickTemplates2/private/qtquicktemplates2global_p.h> QT_BEGIN_NAMESPACE @@ -58,13 +59,16 @@ class QQuickItem; class QQuickPopupAnchorsPrivate; class QQuickPopup; -class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickPopupAnchors : public QObject +class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickPopupAnchors : public QObject, public QQuickItemChangeListener { Q_OBJECT Q_PROPERTY(QQuickItem *centerIn READ centerIn WRITE setCenterIn RESET resetCenterIn NOTIFY centerInChanged) + QML_ANONYMOUS + QML_ADDED_IN_VERSION(2, 5) public: explicit QQuickPopupAnchors(QQuickPopup *popup); + ~QQuickPopupAnchors(); QQuickItem *centerIn() const; void setCenterIn(QQuickItem *item); @@ -74,6 +78,8 @@ Q_SIGNALS: void centerInChanged(); private: + void itemDestroyed(QQuickItem *item) override; + Q_DISABLE_COPY(QQuickPopupAnchors) Q_DECLARE_PRIVATE(QQuickPopupAnchors) }; diff --git a/src/quicktemplates2/qquickpopuppositioner.cpp b/src/quicktemplates2/qquickpopuppositioner.cpp index dbe8ac1d..1bfaafbe 100644 --- a/src/quicktemplates2/qquickpopuppositioner.cpp +++ b/src/quicktemplates2/qquickpopuppositioner.cpp @@ -92,7 +92,10 @@ void QQuickPopupPositioner::setParentItem(QQuickItem *parent) QQuickItemPrivate::get(parent)->addItemChangeListener(this, ItemChangeTypes); addAncestorListeners(parent->parentItem()); - + // Store the scale property so the end result of any transition that could effect the scale + // does not influence the top left of the final popup, so it doesn't appear to flip from one + // position to another as a result + m_popupScale = m_popup->popupItem()->scale(); if (m_popup->popupItem()->isVisible()) QQuickPopupPrivate::get(m_popup)->reposition(); } @@ -108,11 +111,10 @@ void QQuickPopupPositioner::reposition() return; } - const qreal scale = popupItem->scale(); - const qreal w = popupItem->width() * scale; - const qreal h = popupItem->height() * scale; - const qreal iw = popupItem->implicitWidth() * scale; - const qreal ih = popupItem->implicitHeight() * scale; + const qreal w = popupItem->width() * m_popupScale; + const qreal h = popupItem->height() * m_popupScale; + const qreal iw = popupItem->implicitWidth() * m_popupScale; + const qreal ih = popupItem->implicitHeight() * m_popupScale; bool widthAdjusted = false; bool heightAdjusted = false; @@ -258,9 +260,9 @@ void QQuickPopupPositioner::reposition() } if (!p->hasWidth && widthAdjusted && rect.width() > 0) - popupItem->setWidth(rect.width() / scale); + popupItem->setWidth(rect.width() / m_popupScale); if (!p->hasHeight && heightAdjusted && rect.height() > 0) - popupItem->setHeight(rect.height() / scale); + popupItem->setHeight(rect.height() / m_popupScale); m_positioning = false; } diff --git a/src/quicktemplates2/qquickpopuppositioner_p_p.h b/src/quicktemplates2/qquickpopuppositioner_p_p.h index 64f57a3f..03a2e2fe 100644 --- a/src/quicktemplates2/qquickpopuppositioner_p_p.h +++ b/src/quicktemplates2/qquickpopuppositioner_p_p.h @@ -79,6 +79,7 @@ protected: bool m_positioning = false; QQuickItem *m_parentItem = nullptr; QQuickPopup *m_popup = nullptr; + qreal m_popupScale = 1.0; }; QT_END_NAMESPACE diff --git a/src/quicktemplates2/qquickpresshandler.cpp b/src/quicktemplates2/qquickpresshandler.cpp index b9018573..d9ed484b 100644 --- a/src/quicktemplates2/qquickpresshandler.cpp +++ b/src/quicktemplates2/qquickpresshandler.cpp @@ -49,10 +49,10 @@ QT_BEGIN_NAMESPACE void QQuickPressHandler::mousePressEvent(QMouseEvent *event) { longPress = false; - pressPos = event->localPos(); + pressPos = event->position(); if (Qt::LeftButton == (event->buttons() & Qt::LeftButton)) { timer.start(QGuiApplication::styleHints()->mousePressAndHoldInterval(), control); - delayedMousePressEvent = new QMouseEvent(event->type(), event->pos(), event->button(), event->buttons(), event->modifiers()); + delayedMousePressEvent = new QMouseEvent(event->type(), event->position().toPoint(), event->button(), event->buttons(), event->modifiers()); } else { timer.stop(); } @@ -60,7 +60,7 @@ void QQuickPressHandler::mousePressEvent(QMouseEvent *event) if (isSignalConnected(control, "pressed(QQuickMouseEvent*)", pressedSignalIndex)) { QQuickMouseEvent mev; mev.reset(pressPos.x(), pressPos.y(), event->button(), event->buttons(), - QGuiApplication::keyboardModifiers(), false/*isClick*/, false/*wasHeld*/); + event->modifiers(), false/*isClick*/, false/*wasHeld*/); mev.setAccepted(true); QQuickMouseEvent *mevPtr = &mev; void *args[] = { nullptr, &mevPtr }; @@ -71,7 +71,7 @@ void QQuickPressHandler::mousePressEvent(QMouseEvent *event) void QQuickPressHandler::mouseMoveEvent(QMouseEvent *event) { - if (qAbs(int(event->localPos().x() - pressPos.x())) > QGuiApplication::styleHints()->startDragDistance()) + if (qAbs(int(event->position().x() - pressPos.x())) > QGuiApplication::styleHints()->startDragDistance()) timer.stop(); } @@ -83,7 +83,7 @@ void QQuickPressHandler::mouseReleaseEvent(QMouseEvent *event) if (isSignalConnected(control, "released(QQuickMouseEvent*)", releasedSignalIndex)) { QQuickMouseEvent mev; mev.reset(pressPos.x(), pressPos.y(), event->button(), event->buttons(), - QGuiApplication::keyboardModifiers(), false/*isClick*/, false/*wasHeld*/); + event->modifiers(), false/*isClick*/, false/*wasHeld*/); mev.setAccepted(true); QQuickMouseEvent *mevPtr = &mev; void *args[] = { nullptr, &mevPtr }; @@ -101,8 +101,11 @@ void QQuickPressHandler::timerEvent(QTimerEvent *) longPress = isSignalConnected(control, "pressAndHold(QQuickMouseEvent*)", pressAndHoldSignalIndex); if (longPress) { QQuickMouseEvent mev; +QT_WARNING_PUSH +QT_WARNING_DISABLE_DEPRECATED mev.reset(pressPos.x(), pressPos.y(), Qt::LeftButton, Qt::LeftButton, QGuiApplication::keyboardModifiers(), false/*isClick*/, true/*wasHeld*/); +QT_WARNING_POP mev.setAccepted(true); // Use fast signal invocation since we already got its index QQuickMouseEvent *mevPtr = &mev; diff --git a/src/quicktemplates2/qquickprogressbar_p.h b/src/quicktemplates2/qquickprogressbar_p.h index f2284c65..8322670f 100644 --- a/src/quicktemplates2/qquickprogressbar_p.h +++ b/src/quicktemplates2/qquickprogressbar_p.h @@ -63,6 +63,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickProgressBar : public QQuickControl Q_PROPERTY(qreal position READ position NOTIFY positionChanged FINAL) Q_PROPERTY(qreal visualPosition READ visualPosition NOTIFY visualPositionChanged FINAL) Q_PROPERTY(bool indeterminate READ isIndeterminate WRITE setIndeterminate NOTIFY indeterminateChanged FINAL) + QML_NAMED_ELEMENT(ProgressBar) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickProgressBar(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquickradiobutton_p.h b/src/quicktemplates2/qquickradiobutton_p.h index f937081f..29e18922 100644 --- a/src/quicktemplates2/qquickradiobutton_p.h +++ b/src/quicktemplates2/qquickradiobutton_p.h @@ -58,6 +58,8 @@ class QQuickRadioButtonPrivate; class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickRadioButton : public QQuickAbstractButton { Q_OBJECT + QML_NAMED_ELEMENT(RadioButton) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickRadioButton(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquickradiodelegate_p.h b/src/quicktemplates2/qquickradiodelegate_p.h index 1a4761a3..0ddff985 100644 --- a/src/quicktemplates2/qquickradiodelegate_p.h +++ b/src/quicktemplates2/qquickradiodelegate_p.h @@ -57,6 +57,8 @@ class QQuickRadioDelegatePrivate; class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickRadioDelegate : public QQuickItemDelegate { Q_OBJECT + QML_NAMED_ELEMENT(RadioDelegate) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickRadioDelegate(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquickrangeslider.cpp b/src/quicktemplates2/qquickrangeslider.cpp index 9ad12102..af95d463 100644 --- a/src/quicktemplates2/qquickrangeslider.cpp +++ b/src/quicktemplates2/qquickrangeslider.cpp @@ -458,7 +458,7 @@ bool QQuickRangeSliderPrivate::acceptTouch(const QTouchEvent::TouchPoint &point) int firstId = QQuickRangeSliderNodePrivate::get(first)->touchId; int secondId = QQuickRangeSliderNodePrivate::get(second)->touchId; - if (((firstId == -1 || secondId == -1) && point.state() == Qt::TouchPointPressed) || point.id() == firstId || point.id() == secondId) { + if (((firstId == -1 || secondId == -1) && point.state() == QEventPoint::Pressed) || point.id() == firstId || point.id() == secondId) { touchId = point.id(); return true; } @@ -1151,14 +1151,14 @@ void QQuickRangeSlider::hoverEnterEvent(QHoverEvent *event) { Q_D(QQuickRangeSlider); QQuickControl::hoverEnterEvent(event); - d->updateHover(event->posF()); + d->updateHover(event->position()); } void QQuickRangeSlider::hoverMoveEvent(QHoverEvent *event) { Q_D(QQuickRangeSlider); QQuickControl::hoverMoveEvent(event); - d->updateHover(event->posF()); + d->updateHover(event->position()); } void QQuickRangeSlider::hoverLeaveEvent(QHoverEvent *event) @@ -1181,7 +1181,7 @@ void QQuickRangeSlider::mousePressEvent(QMouseEvent *event) { Q_D(QQuickRangeSlider); QQuickControl::mousePressEvent(event); - d->handleMove(event->localPos()); + d->handleMove(event->position()); setKeepMouseGrab(true); } @@ -1196,21 +1196,21 @@ void QQuickRangeSlider::touchEvent(QTouchEvent *event) continue; switch (point.state()) { - case Qt::TouchPointPressed: - d->handlePress(point.pos()); + case QEventPoint::Pressed: + d->handlePress(point.position()); break; - case Qt::TouchPointMoved: + case QEventPoint::Updated: if (!keepTouchGrab()) { if (d->orientation == Qt::Horizontal) - setKeepTouchGrab(QQuickWindowPrivate::dragOverThreshold(point.pos().x() - point.startPos().x(), Qt::XAxis, &point, qRound(d->touchDragThreshold))); + setKeepTouchGrab(QQuickWindowPrivate::dragOverThreshold(point.position().x() - point.pressPosition().x(), Qt::XAxis, &point, qRound(d->touchDragThreshold))); else - setKeepTouchGrab(QQuickWindowPrivate::dragOverThreshold(point.pos().y() - point.startPos().y(), Qt::YAxis, &point, qRound(d->touchDragThreshold))); + setKeepTouchGrab(QQuickWindowPrivate::dragOverThreshold(point.position().y() - point.pressPosition().y(), Qt::YAxis, &point, qRound(d->touchDragThreshold))); } if (keepTouchGrab()) - d->handleMove(point.pos()); + d->handleMove(point.position()); break; - case Qt::TouchPointReleased: - d->handleRelease(point.pos()); + case QEventPoint::Released: + d->handleRelease(point.position()); break; default: break; diff --git a/src/quicktemplates2/qquickrangeslider_p.h b/src/quicktemplates2/qquickrangeslider_p.h index a42245a1..d767228e 100644 --- a/src/quicktemplates2/qquickrangeslider_p.h +++ b/src/quicktemplates2/qquickrangeslider_p.h @@ -66,12 +66,14 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickRangeSlider : public QQuickControl Q_PROPERTY(SnapMode snapMode READ snapMode WRITE setSnapMode NOTIFY snapModeChanged FINAL) Q_PROPERTY(Qt::Orientation orientation READ orientation WRITE setOrientation NOTIFY orientationChanged FINAL) // 2.2 (Qt 5.9) - Q_PROPERTY(bool live READ live WRITE setLive NOTIFY liveChanged FINAL REVISION 2) - Q_PROPERTY(bool horizontal READ isHorizontal NOTIFY orientationChanged FINAL REVISION 3) + Q_PROPERTY(bool live READ live WRITE setLive NOTIFY liveChanged FINAL REVISION(2, 2)) + Q_PROPERTY(bool horizontal READ isHorizontal NOTIFY orientationChanged FINAL REVISION(2, 3)) // 2.3 (Qt 5.10) - Q_PROPERTY(bool vertical READ isVertical NOTIFY orientationChanged FINAL REVISION 3) + Q_PROPERTY(bool vertical READ isVertical NOTIFY orientationChanged FINAL REVISION(2, 3)) // 2.5 (Qt 5.12) - Q_PROPERTY(qreal touchDragThreshold READ touchDragThreshold WRITE setTouchDragThreshold RESET resetTouchDragThreshold NOTIFY touchDragThresholdChanged FINAL REVISION 5) + Q_PROPERTY(qreal touchDragThreshold READ touchDragThreshold WRITE setTouchDragThreshold RESET resetTouchDragThreshold NOTIFY touchDragThresholdChanged FINAL REVISION(2, 5)) + QML_NAMED_ELEMENT(RangeSlider) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickRangeSlider(QQuickItem *parent = nullptr); @@ -116,7 +118,7 @@ public: qreal touchDragThreshold() const; void setTouchDragThreshold(qreal touchDragThreshold); void resetTouchDragThreshold(); - Q_REVISION(5) Q_INVOKABLE qreal valueAt(qreal position) const; + Q_REVISION(2, 5) Q_INVOKABLE qreal valueAt(qreal position) const; Q_SIGNALS: void fromChanged(); @@ -125,9 +127,9 @@ Q_SIGNALS: void snapModeChanged(); void orientationChanged(); // 2.2 (Qt 5.9) - Q_REVISION(2) void liveChanged(); + Q_REVISION(2, 2) void liveChanged(); // 2.5 (Qt 5.12) - Q_REVISION(5) void touchDragThresholdChanged(); + Q_REVISION(2, 5) void touchDragThresholdChanged(); protected: void focusInEvent(QFocusEvent *event) override; @@ -166,11 +168,13 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickRangeSliderNode : public QObject Q_PROPERTY(QQuickItem *handle READ handle WRITE setHandle NOTIFY handleChanged FINAL) Q_PROPERTY(bool pressed READ isPressed WRITE setPressed NOTIFY pressedChanged FINAL) // 2.1 (Qt 5.8) - Q_PROPERTY(bool hovered READ isHovered WRITE setHovered NOTIFY hoveredChanged FINAL REVISION 1) + Q_PROPERTY(bool hovered READ isHovered WRITE setHovered NOTIFY hoveredChanged FINAL REVISION(2, 1)) // 2.5 (Qt 5.12) - Q_PROPERTY(qreal implicitHandleWidth READ implicitHandleWidth NOTIFY implicitHandleWidthChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitHandleHeight READ implicitHandleHeight NOTIFY implicitHandleHeightChanged FINAL REVISION 5) + Q_PROPERTY(qreal implicitHandleWidth READ implicitHandleWidth NOTIFY implicitHandleWidthChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitHandleHeight READ implicitHandleHeight NOTIFY implicitHandleHeightChanged FINAL REVISION(2, 5)) Q_CLASSINFO("DeferredPropertyNames", "handle") + QML_ANONYMOUS + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickRangeSliderNode(qreal value, QQuickRangeSlider *slider); @@ -207,11 +211,11 @@ Q_SIGNALS: void handleChanged(); void pressedChanged(); // 2.1 (Qt 5.8) - Q_REVISION(1) void hoveredChanged(); + Q_REVISION(2, 1) void hoveredChanged(); // 2.5 (Qt 5.12) - /*Q_REVISION(5)*/ void moved(); - /*Q_REVISION(5)*/ void implicitHandleWidthChanged(); - /*Q_REVISION(5)*/ void implicitHandleHeightChanged(); + /*Q_REVISION(2, 5)*/ void moved(); + /*Q_REVISION(2, 5)*/ void implicitHandleWidthChanged(); + /*Q_REVISION(2, 5)*/ void implicitHandleHeightChanged(); private: Q_DISABLE_COPY(QQuickRangeSliderNode) diff --git a/src/quicktemplates2/qquickroundbutton_p.h b/src/quicktemplates2/qquickroundbutton_p.h index dc5e432a..fdd46cf8 100644 --- a/src/quicktemplates2/qquickroundbutton_p.h +++ b/src/quicktemplates2/qquickroundbutton_p.h @@ -58,6 +58,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickRoundButton : public QQuickButton { Q_OBJECT Q_PROPERTY(qreal radius READ radius WRITE setRadius RESET resetRadius NOTIFY radiusChanged FINAL) + QML_NAMED_ELEMENT(RoundButton) + QML_ADDED_IN_VERSION(2, 1) public: explicit QQuickRoundButton(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquickscrollbar.cpp b/src/quicktemplates2/qquickscrollbar.cpp index 678b7942..b352224c 100644 --- a/src/quicktemplates2/qquickscrollbar.cpp +++ b/src/quicktemplates2/qquickscrollbar.cpp @@ -710,7 +710,7 @@ void QQuickScrollBar::mousePressEvent(QMouseEvent *event) { Q_D(QQuickScrollBar); QQuickControl::mousePressEvent(event); - d->handleMove(event->localPos()); + d->handleMove(event->position()); } #if QT_CONFIG(quicktemplates2_hover) diff --git a/src/quicktemplates2/qquickscrollbar_p.h b/src/quicktemplates2/qquickscrollbar_p.h index 5fad8240..dee0b749 100644 --- a/src/quicktemplates2/qquickscrollbar_p.h +++ b/src/quicktemplates2/qquickscrollbar_p.h @@ -65,16 +65,19 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickScrollBar : public QQuickControl Q_PROPERTY(bool pressed READ isPressed WRITE setPressed NOTIFY pressedChanged FINAL) Q_PROPERTY(Qt::Orientation orientation READ orientation WRITE setOrientation NOTIFY orientationChanged FINAL) // 2.2 (Qt 5.9) - Q_PROPERTY(SnapMode snapMode READ snapMode WRITE setSnapMode NOTIFY snapModeChanged FINAL REVISION 2) - Q_PROPERTY(bool interactive READ isInteractive WRITE setInteractive RESET resetInteractive NOTIFY interactiveChanged FINAL REVISION 2) - Q_PROPERTY(Policy policy READ policy WRITE setPolicy NOTIFY policyChanged FINAL REVISION 2) + Q_PROPERTY(SnapMode snapMode READ snapMode WRITE setSnapMode NOTIFY snapModeChanged FINAL REVISION(2, 2)) + Q_PROPERTY(bool interactive READ isInteractive WRITE setInteractive RESET resetInteractive NOTIFY interactiveChanged FINAL REVISION(2, 2)) + Q_PROPERTY(Policy policy READ policy WRITE setPolicy NOTIFY policyChanged FINAL REVISION(2, 2)) // 2.3 (Qt 5.10) - Q_PROPERTY(bool horizontal READ isHorizontal NOTIFY orientationChanged FINAL REVISION 3) - Q_PROPERTY(bool vertical READ isVertical NOTIFY orientationChanged FINAL REVISION 3) + Q_PROPERTY(bool horizontal READ isHorizontal NOTIFY orientationChanged FINAL REVISION(2, 3)) + Q_PROPERTY(bool vertical READ isVertical NOTIFY orientationChanged FINAL REVISION(2, 3)) // 2.4 (Qt 5.11) - Q_PROPERTY(qreal minimumSize READ minimumSize WRITE setMinimumSize NOTIFY minimumSizeChanged FINAL REVISION 4) - Q_PROPERTY(qreal visualSize READ visualSize NOTIFY visualSizeChanged FINAL REVISION 4) - Q_PROPERTY(qreal visualPosition READ visualPosition NOTIFY visualPositionChanged FINAL REVISION 4) + Q_PROPERTY(qreal minimumSize READ minimumSize WRITE setMinimumSize NOTIFY minimumSizeChanged FINAL REVISION(2, 4)) + Q_PROPERTY(qreal visualSize READ visualSize NOTIFY visualSizeChanged FINAL REVISION(2, 4)) + Q_PROPERTY(qreal visualPosition READ visualPosition NOTIFY visualPositionChanged FINAL REVISION(2, 4)) + QML_NAMED_ELEMENT(ScrollBar) + QML_ATTACHED(QQuickScrollBarAttached) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickScrollBar(QQuickItem *parent = nullptr); @@ -146,13 +149,13 @@ Q_SIGNALS: void pressedChanged(); void orientationChanged(); // 2.2 (Qt 5.9) - Q_REVISION(2) void snapModeChanged(); - Q_REVISION(2) void interactiveChanged(); - Q_REVISION(2) void policyChanged(); + Q_REVISION(2, 2) void snapModeChanged(); + Q_REVISION(2, 2) void interactiveChanged(); + Q_REVISION(2, 2) void policyChanged(); // 2.4 (Qt 5.11) - Q_REVISION(4) void minimumSizeChanged(); - Q_REVISION(4) void visualSizeChanged(); - Q_REVISION(4) void visualPositionChanged(); + Q_REVISION(2, 4) void minimumSizeChanged(); + Q_REVISION(2, 4) void visualSizeChanged(); + Q_REVISION(2, 4) void visualPositionChanged(); protected: void mousePressEvent(QMouseEvent *event) override; diff --git a/src/quicktemplates2/qquickscrollindicator_p.h b/src/quicktemplates2/qquickscrollindicator_p.h index 4fa06a33..dbad6ffe 100644 --- a/src/quicktemplates2/qquickscrollindicator_p.h +++ b/src/quicktemplates2/qquickscrollindicator_p.h @@ -64,12 +64,15 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickScrollIndicator : public QQuickCont Q_PROPERTY(bool active READ isActive WRITE setActive NOTIFY activeChanged FINAL) Q_PROPERTY(Qt::Orientation orientation READ orientation WRITE setOrientation NOTIFY orientationChanged FINAL) // 2.3 (Qt 5.10) - Q_PROPERTY(bool horizontal READ isHorizontal NOTIFY orientationChanged FINAL REVISION 3) - Q_PROPERTY(bool vertical READ isVertical NOTIFY orientationChanged FINAL REVISION 3) + Q_PROPERTY(bool horizontal READ isHorizontal NOTIFY orientationChanged FINAL REVISION(2, 3)) + Q_PROPERTY(bool vertical READ isVertical NOTIFY orientationChanged FINAL REVISION(2, 3)) // 2.4 (Qt 5.11) - Q_PROPERTY(qreal minimumSize READ minimumSize WRITE setMinimumSize NOTIFY minimumSizeChanged FINAL REVISION 4) - Q_PROPERTY(qreal visualSize READ visualSize NOTIFY visualSizeChanged FINAL REVISION 4) - Q_PROPERTY(qreal visualPosition READ visualPosition NOTIFY visualPositionChanged FINAL REVISION 4) + Q_PROPERTY(qreal minimumSize READ minimumSize WRITE setMinimumSize NOTIFY minimumSizeChanged FINAL REVISION(2, 4)) + Q_PROPERTY(qreal visualSize READ visualSize NOTIFY visualSizeChanged FINAL REVISION(2, 4)) + Q_PROPERTY(qreal visualPosition READ visualPosition NOTIFY visualPositionChanged FINAL REVISION(2, 4)) + QML_NAMED_ELEMENT(ScrollIndicator) + QML_ATTACHED(QQuickScrollIndicatorAttached) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickScrollIndicator(QQuickItem *parent = nullptr); @@ -106,9 +109,9 @@ Q_SIGNALS: void activeChanged(); void orientationChanged(); // 2.4 (Qt 5.11) - Q_REVISION(4) void minimumSizeChanged(); - Q_REVISION(4) void visualSizeChanged(); - Q_REVISION(4) void visualPositionChanged(); + Q_REVISION(2, 4) void minimumSizeChanged(); + Q_REVISION(2, 4) void visualSizeChanged(); + Q_REVISION(2, 4) void visualPositionChanged(); protected: #if QT_CONFIG(quicktemplates2_multitouch) diff --git a/src/quicktemplates2/qquickscrollview_p.h b/src/quicktemplates2/qquickscrollview_p.h index 2b8d260e..7eea46dd 100644 --- a/src/quicktemplates2/qquickscrollview_p.h +++ b/src/quicktemplates2/qquickscrollview_p.h @@ -58,6 +58,8 @@ class QQuickScrollViewPrivate; class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickScrollView : public QQuickPane { Q_OBJECT + QML_NAMED_ELEMENT(ScrollView) + QML_ADDED_IN_VERSION(2, 2) public: explicit QQuickScrollView(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquickslider.cpp b/src/quicktemplates2/qquickslider.cpp index f4a459fa..dcff5420 100644 --- a/src/quicktemplates2/qquickslider.cpp +++ b/src/quicktemplates2/qquickslider.cpp @@ -790,7 +790,7 @@ void QQuickSlider::mousePressEvent(QMouseEvent *event) { Q_D(QQuickSlider); QQuickControl::mousePressEvent(event); - d->handleMove(event->localPos()); + d->handleMove(event->position()); setKeepMouseGrab(true); } @@ -805,21 +805,21 @@ void QQuickSlider::touchEvent(QTouchEvent *event) continue; switch (point.state()) { - case Qt::TouchPointPressed: - d->handlePress(point.pos()); + case QEventPoint::Pressed: + d->handlePress(point.position()); break; - case Qt::TouchPointMoved: + case QEventPoint::Updated: if (!keepTouchGrab()) { if (d->orientation == Qt::Horizontal) - setKeepTouchGrab(QQuickWindowPrivate::dragOverThreshold(point.pos().x() - d->pressPoint.x(), Qt::XAxis, &point, qRound(d->touchDragThreshold))); + setKeepTouchGrab(QQuickWindowPrivate::dragOverThreshold(point.position().x() - d->pressPoint.x(), Qt::XAxis, &point, qRound(d->touchDragThreshold))); else - setKeepTouchGrab(QQuickWindowPrivate::dragOverThreshold(point.pos().y() - d->pressPoint.y(), Qt::YAxis, &point, qRound(d->touchDragThreshold))); + setKeepTouchGrab(QQuickWindowPrivate::dragOverThreshold(point.position().y() - d->pressPoint.y(), Qt::YAxis, &point, qRound(d->touchDragThreshold))); } if (keepTouchGrab()) - d->handleMove(point.pos()); + d->handleMove(point.position()); break; - case Qt::TouchPointReleased: - d->handleRelease(point.pos()); + case QEventPoint::Released: + d->handleRelease(point.position()); break; default: break; diff --git a/src/quicktemplates2/qquickslider_p.h b/src/quicktemplates2/qquickslider_p.h index c65733dc..ac03f7f9 100644 --- a/src/quicktemplates2/qquickslider_p.h +++ b/src/quicktemplates2/qquickslider_p.h @@ -67,15 +67,17 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickSlider : public QQuickControl Q_PROPERTY(bool pressed READ isPressed WRITE setPressed NOTIFY pressedChanged FINAL) Q_PROPERTY(Qt::Orientation orientation READ orientation WRITE setOrientation NOTIFY orientationChanged FINAL) Q_PROPERTY(QQuickItem *handle READ handle WRITE setHandle NOTIFY handleChanged FINAL) - Q_PROPERTY(bool live READ live WRITE setLive NOTIFY liveChanged FINAL REVISION 2) + Q_PROPERTY(bool live READ live WRITE setLive NOTIFY liveChanged FINAL REVISION(2, 2)) // 2.3 (Qt 5.10) - Q_PROPERTY(bool horizontal READ isHorizontal NOTIFY orientationChanged FINAL REVISION 3) - Q_PROPERTY(bool vertical READ isVertical NOTIFY orientationChanged FINAL REVISION 3) + Q_PROPERTY(bool horizontal READ isHorizontal NOTIFY orientationChanged FINAL REVISION(2, 3)) + Q_PROPERTY(bool vertical READ isVertical NOTIFY orientationChanged FINAL REVISION(2, 3)) // 2.5 (Qt 5.12) - Q_PROPERTY(qreal touchDragThreshold READ touchDragThreshold WRITE setTouchDragThreshold RESET resetTouchDragThreshold NOTIFY touchDragThresholdChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitHandleWidth READ implicitHandleWidth NOTIFY implicitHandleWidthChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitHandleHeight READ implicitHandleHeight NOTIFY implicitHandleHeightChanged FINAL REVISION 5) + Q_PROPERTY(qreal touchDragThreshold READ touchDragThreshold WRITE setTouchDragThreshold RESET resetTouchDragThreshold NOTIFY touchDragThresholdChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitHandleWidth READ implicitHandleWidth NOTIFY implicitHandleWidthChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitHandleHeight READ implicitHandleHeight NOTIFY implicitHandleHeightChanged FINAL REVISION(2, 5)) Q_CLASSINFO("DeferredPropertyNames", "background,handle") + QML_NAMED_ELEMENT(Slider) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickSlider(QQuickItem *parent = nullptr); @@ -116,7 +118,7 @@ public: void setHandle(QQuickItem *handle); // 2.1 (Qt 5.8) - Q_REVISION(1) Q_INVOKABLE qreal valueAt(qreal position) const; + Q_REVISION(2, 1) Q_INVOKABLE qreal valueAt(qreal position) const; // 2.2 (Qt 5.9) bool live() const; @@ -150,12 +152,12 @@ Q_SIGNALS: void orientationChanged(); void handleChanged(); // 2.2 (Qt 5.9) - Q_REVISION(2) void moved(); - Q_REVISION(2) void liveChanged(); + Q_REVISION(2, 2) void moved(); + Q_REVISION(2, 2) void liveChanged(); // 2.5 (Qt 5.12) - Q_REVISION(5) void touchDragThresholdChanged(); - Q_REVISION(5) void implicitHandleWidthChanged(); - Q_REVISION(5) void implicitHandleHeightChanged(); + Q_REVISION(2, 5) void touchDragThresholdChanged(); + Q_REVISION(2, 5) void implicitHandleWidthChanged(); + Q_REVISION(2, 5) void implicitHandleHeightChanged(); protected: void keyPressEvent(QKeyEvent *event) override; diff --git a/src/quicktemplates2/qquickspinbox.cpp b/src/quicktemplates2/qquickspinbox.cpp index 687ccafd..d53916e1 100644 --- a/src/quicktemplates2/qquickspinbox.cpp +++ b/src/quicktemplates2/qquickspinbox.cpp @@ -700,7 +700,7 @@ QJSValue QQuickSpinBox::valueFromText() const if (!d->valueFromText.isCallable()) { QQmlEngine *engine = qmlEngine(this); if (engine) - d->valueFromText = engine->evaluate(QStringLiteral("function(text, locale) { return Number.fromLocaleString(locale, text); }")); + d->valueFromText = engine->evaluate(QStringLiteral("(function(text, locale) { return Number.fromLocaleString(locale, text); })")); } return d->valueFromText; } @@ -891,14 +891,14 @@ void QQuickSpinBox::hoverEnterEvent(QHoverEvent *event) { Q_D(QQuickSpinBox); QQuickControl::hoverEnterEvent(event); - d->updateHover(event->posF()); + d->updateHover(event->position()); } void QQuickSpinBox::hoverMoveEvent(QHoverEvent *event) { Q_D(QQuickSpinBox); QQuickControl::hoverMoveEvent(event); - d->updateHover(event->posF()); + d->updateHover(event->position()); } void QQuickSpinBox::hoverLeaveEvent(QHoverEvent *event) diff --git a/src/quicktemplates2/qquickspinbox_p.h b/src/quicktemplates2/qquickspinbox_p.h index 6b787674..d90aa531 100644 --- a/src/quicktemplates2/qquickspinbox_p.h +++ b/src/quicktemplates2/qquickspinbox_p.h @@ -72,12 +72,14 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickSpinBox : public QQuickControl Q_PROPERTY(QQuickSpinButton *up READ up CONSTANT FINAL) Q_PROPERTY(QQuickSpinButton *down READ down CONSTANT FINAL) // 2.2 (Qt 5.9) - Q_PROPERTY(Qt::InputMethodHints inputMethodHints READ inputMethodHints WRITE setInputMethodHints NOTIFY inputMethodHintsChanged FINAL REVISION 2) - Q_PROPERTY(bool inputMethodComposing READ isInputMethodComposing NOTIFY inputMethodComposingChanged FINAL REVISION 2) + Q_PROPERTY(Qt::InputMethodHints inputMethodHints READ inputMethodHints WRITE setInputMethodHints NOTIFY inputMethodHintsChanged FINAL REVISION(2, 2)) + Q_PROPERTY(bool inputMethodComposing READ isInputMethodComposing NOTIFY inputMethodComposingChanged FINAL REVISION(2, 2)) // 2.3 (Qt 5.10) - Q_PROPERTY(bool wrap READ wrap WRITE setWrap NOTIFY wrapChanged FINAL REVISION 3) + Q_PROPERTY(bool wrap READ wrap WRITE setWrap NOTIFY wrapChanged FINAL REVISION(2, 3)) // 2.4 (Qt 5.11) - Q_PROPERTY(QString displayText READ displayText NOTIFY displayTextChanged FINAL REVISION 4) + Q_PROPERTY(QString displayText READ displayText NOTIFY displayTextChanged FINAL REVISION(2, 4)) + QML_NAMED_ELEMENT(SpinBox) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickSpinBox(QQuickItem *parent = nullptr); @@ -137,13 +139,13 @@ Q_SIGNALS: void textFromValueChanged(); void valueFromTextChanged(); // 2.2 (Qt 5.9) - Q_REVISION(2) void valueModified(); - Q_REVISION(2) void inputMethodHintsChanged(); - Q_REVISION(2) void inputMethodComposingChanged(); + Q_REVISION(2, 2) void valueModified(); + Q_REVISION(2, 2) void inputMethodHintsChanged(); + Q_REVISION(2, 2) void inputMethodComposingChanged(); // 2.3 (Qt 5.10) - Q_REVISION(3) void wrapChanged(); + Q_REVISION(2, 3) void wrapChanged(); // 2.4 (Qt 5.11) - Q_REVISION(4) void displayTextChanged(); + Q_REVISION(2, 4) void displayTextChanged(); protected: void focusInEvent(QFocusEvent *event) override; @@ -181,11 +183,13 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickSpinButton : public QObject Q_PROPERTY(bool pressed READ isPressed WRITE setPressed NOTIFY pressedChanged FINAL) Q_PROPERTY(QQuickItem *indicator READ indicator WRITE setIndicator NOTIFY indicatorChanged FINAL) // 2.1 (Qt 5.8) - Q_PROPERTY(bool hovered READ isHovered WRITE setHovered NOTIFY hoveredChanged FINAL REVISION 1) + Q_PROPERTY(bool hovered READ isHovered WRITE setHovered NOTIFY hoveredChanged FINAL REVISION(2, 1)) // 2.5 (Qt 5.12) - Q_PROPERTY(qreal implicitIndicatorWidth READ implicitIndicatorWidth NOTIFY implicitIndicatorWidthChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitIndicatorHeight READ implicitIndicatorHeight NOTIFY implicitIndicatorHeightChanged FINAL REVISION 5) + Q_PROPERTY(qreal implicitIndicatorWidth READ implicitIndicatorWidth NOTIFY implicitIndicatorWidthChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitIndicatorHeight READ implicitIndicatorHeight NOTIFY implicitIndicatorHeightChanged FINAL REVISION(2, 5)) Q_CLASSINFO("DeferredPropertyNames", "indicator") + QML_ANONYMOUS + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickSpinButton(QQuickSpinBox *parent); @@ -208,10 +212,10 @@ Q_SIGNALS: void pressedChanged(); void indicatorChanged(); // 2.1 (Qt 5.8) - Q_REVISION(1) void hoveredChanged(); + Q_REVISION(2, 1) void hoveredChanged(); // 2.5 (Qt 5.12) - Q_REVISION(5) void implicitIndicatorWidthChanged(); - Q_REVISION(5) void implicitIndicatorHeightChanged(); + Q_REVISION(2, 5) void implicitIndicatorWidthChanged(); + Q_REVISION(2, 5) void implicitIndicatorHeightChanged(); private: Q_DISABLE_COPY(QQuickSpinButton) diff --git a/src/quicktemplates2/qquicksplitview.cpp b/src/quicktemplates2/qquicksplitview.cpp index a1016792..df00f522 100644 --- a/src/quicktemplates2/qquicksplitview.cpp +++ b/src/quicktemplates2/qquicksplitview.cpp @@ -1389,7 +1389,7 @@ void QQuickSplitView::hoverMoveEvent(QHoverEvent *event) Q_D(QQuickSplitView); QQuickContainer::hoverMoveEvent(event); - QQuickItem *hoveredItem = childAt(event->pos().x(), event->pos().y()); + QQuickItem *hoveredItem = childAt(event->position().toPoint().x(), event->position().toPoint().y()); d->updateHoveredHandle(hoveredItem); } @@ -2029,7 +2029,7 @@ const QQuickSplitHandleAttachedPrivate *QQuickSplitHandleAttachedPrivate::get(co } QQuickSplitHandleAttached::QQuickSplitHandleAttached(QObject *parent) - : QObject(*(new QQuickSplitViewAttachedPrivate), parent) + : QObject(*(new QQuickSplitHandleAttachedPrivate), parent) { } diff --git a/src/quicktemplates2/qquicksplitview_p.h b/src/quicktemplates2/qquicksplitview_p.h index 06dc1a55..55b45ed8 100644 --- a/src/quicktemplates2/qquicksplitview_p.h +++ b/src/quicktemplates2/qquicksplitview_p.h @@ -65,6 +65,9 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickSplitView : public QQuickContainer Q_PROPERTY(Qt::Orientation orientation READ orientation WRITE setOrientation NOTIFY orientationChanged FINAL) Q_PROPERTY(bool resizing READ isResizing NOTIFY resizingChanged) Q_PROPERTY(QQmlComponent *handle READ handle WRITE setHandle NOTIFY handleChanged FINAL) + QML_NAMED_ELEMENT(SplitView) + QML_ATTACHED(QQuickSplitViewAttached) + QML_ADDED_IN_VERSION(2, 13) public: explicit QQuickSplitView(QQuickItem *parent = nullptr); @@ -190,6 +193,10 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickSplitHandleAttached : public QObjec Q_OBJECT Q_PROPERTY(bool hovered READ isHovered NOTIFY hoveredChanged FINAL) Q_PROPERTY(bool pressed READ isPressed NOTIFY pressedChanged FINAL) + QML_NAMED_ELEMENT(SplitHandle) + QML_ATTACHED(QQuickSplitHandleAttached) + QML_UNCREATABLE("") + QML_ADDED_IN_VERSION(2, 13) public: explicit QQuickSplitHandleAttached(QObject *parent = nullptr); diff --git a/src/quicktemplates2/qquicksplitview_p_p.h b/src/quicktemplates2/qquicksplitview_p_p.h index 2430eac1..6123f83d 100644 --- a/src/quicktemplates2/qquicksplitview_p_p.h +++ b/src/quicktemplates2/qquicksplitview_p_p.h @@ -109,7 +109,7 @@ public: Qt::Orientation m_orientation = Qt::Horizontal; QQmlComponent *m_handle = nullptr; - QVector<QQuickItem*> m_handleItems; + QList<QQuickItem*> m_handleItems; int m_hoveredHandleIndex = -1; int m_pressedHandleIndex = -1; int m_nextVisibleIndexAfterPressedHandle = -1; diff --git a/src/quicktemplates2/qquickstackview.cpp b/src/quicktemplates2/qquickstackview.cpp index e5e2c39b..7bf4c3d3 100644 --- a/src/quicktemplates2/qquickstackview.cpp +++ b/src/quicktemplates2/qquickstackview.cpp @@ -498,7 +498,7 @@ QQuickItem *QQuickStackView::find(const QJSValue &callback, LoadBehavior behavio /*! \qmlmethod Item QtQuick.Controls::StackView::push(item, properties, operation) - Pushes an \a item onto the stack using the specified \a operation, and + Pushes an \a item onto the stack using an optional \a operation, and optionally applies a set of \a properties on the item. The item can be an \l Item, \l Component, or a \l [QML] url. Returns the item that became current. @@ -545,12 +545,13 @@ QQuickItem *QQuickStackView::find(const QJSValue &callback, LoadBehavior behavio An \a operation can be optionally specified as the last argument. Supported operations: - \value StackView.Transition An operation with default transitions (default). \value StackView.Immediate An immediate operation without transitions. \value StackView.PushTransition An operation with push transitions (since QtQuick.Controls 2.1). \value StackView.ReplaceTransition An operation with replace transitions (since QtQuick.Controls 2.1). \value StackView.PopTransition An operation with pop transitions (since QtQuick.Controls 2.1). + If no operation is provided, \c PushTransition will be used. + \note Items that already exist in the stack are not pushed. \sa initialItem, {Pushing Items} @@ -634,17 +635,21 @@ void QQuickStackView::push(QQmlV4Function *args) items down to (but not including) the first item is popped. If not specified, only the current item is popped. + \note A pop() operation on a stack with depth 1 or 0 does nothing. In such + cases, the stack can be emptied using the \l clear() method. + \include qquickstackview.qdocinc pop-ownership An \a operation can be optionally specified as the last argument. Supported operations: - \value StackView.Transition An operation with default transitions (default). \value StackView.Immediate An immediate operation without transitions. \value StackView.PushTransition An operation with push transitions (since QtQuick.Controls 2.1). \value StackView.ReplaceTransition An operation with replace transitions (since QtQuick.Controls 2.1). \value StackView.PopTransition An operation with pop transitions (since QtQuick.Controls 2.1). + If no operation is provided, \c PopTransition will be used. + Examples: \code stackView.pop() @@ -733,7 +738,7 @@ void QQuickStackView::pop(QQmlV4Function *args) \qmlmethod Item QtQuick.Controls::StackView::replace(target, item, properties, operation) Replaces one or more items on the stack with the specified \a item and - \a operation, and optionally applies a set of \a properties on the + optional \a operation, and optionally applies a set of \a properties on the item. The item can be an \l Item, \l Component, or a \l [QML] url. Returns the item that became current. @@ -782,12 +787,13 @@ void QQuickStackView::pop(QQmlV4Function *args) An \a operation can be optionally specified as the last argument. Supported operations: - \value StackView.Transition An operation with default transitions (default). \value StackView.Immediate An immediate operation without transitions. \value StackView.PushTransition An operation with push transitions (since QtQuick.Controls 2.1). \value StackView.ReplaceTransition An operation with replace transitions (since QtQuick.Controls 2.1). \value StackView.PopTransition An operation with pop transitions (since QtQuick.Controls 2.1). + If no operation is provided, \c ReplaceTransition will be used. + The following example illustrates the use of push and pop transitions with replace(). \code diff --git a/src/quicktemplates2/qquickstackview_p.h b/src/quicktemplates2/qquickstackview_p.h index 9bb9c8f4..f4cb5458 100644 --- a/src/quicktemplates2/qquickstackview_p.h +++ b/src/quicktemplates2/qquickstackview_p.h @@ -73,7 +73,10 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickStackView : public QQuickControl Q_PROPERTY(QQuickTransition *replaceEnter READ replaceEnter WRITE setReplaceEnter NOTIFY replaceEnterChanged FINAL) Q_PROPERTY(QQuickTransition *replaceExit READ replaceExit WRITE setReplaceExit NOTIFY replaceExitChanged FINAL) // 2.3 (Qt 5.10) - Q_PROPERTY(bool empty READ isEmpty NOTIFY emptyChanged FINAL REVISION 3) + Q_PROPERTY(bool empty READ isEmpty NOTIFY emptyChanged FINAL REVISION(2, 3)) + QML_NAMED_ELEMENT(StackView) + QML_ATTACHED(QQuickStackViewAttached) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickStackView(QQuickItem *parent = nullptr); @@ -124,7 +127,7 @@ public: Q_INVOKABLE QQuickItem *find(const QJSValue &callback, LoadBehavior behavior = DontLoad); enum Operation { - Transition = -1, // deprecated + Transition = -1, // ### Deprecated in Qt 6; remove in Qt 7. Immediate = 0, PushTransition = 1, ReplaceTransition = 2, @@ -153,7 +156,7 @@ Q_SIGNALS: void replaceEnterChanged(); void replaceExitChanged(); // 2.3 (Qt 5.10) - Q_REVISION(3) void emptyChanged(); + Q_REVISION(2, 3) void emptyChanged(); protected: void componentComplete() override; @@ -180,7 +183,7 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickStackViewAttached : public QObject Q_PROPERTY(QQuickStackView *view READ view NOTIFY viewChanged FINAL) Q_PROPERTY(QQuickStackView::Status status READ status NOTIFY statusChanged FINAL) // 2.2 (Qt 5.9) - Q_PROPERTY(bool visible READ isVisible WRITE setVisible RESET resetVisible NOTIFY visibleChanged FINAL) // REVISION 2 + Q_PROPERTY(bool visible READ isVisible WRITE setVisible RESET resetVisible NOTIFY visibleChanged FINAL) // REVISION(2, 2) public: explicit QQuickStackViewAttached(QObject *parent = nullptr); @@ -200,13 +203,13 @@ Q_SIGNALS: void viewChanged(); void statusChanged(); // 2.1 (Qt 5.8) - /*Q_REVISION(1)*/ void activated(); - /*Q_REVISION(1)*/ void activating(); - /*Q_REVISION(1)*/ void deactivated(); - /*Q_REVISION(1)*/ void deactivating(); - /*Q_REVISION(1)*/ void removed(); + /*Q_REVISION(2, 1)*/ void activated(); + /*Q_REVISION(2, 1)*/ void activating(); + /*Q_REVISION(2, 1)*/ void deactivated(); + /*Q_REVISION(2, 1)*/ void deactivating(); + /*Q_REVISION(2, 1)*/ void removed(); // 2.2 (Qt 5.9) - /*Q_REVISION(2)*/ void visibleChanged(); + /*Q_REVISION(2, 2)*/ void visibleChanged(); private: Q_DISABLE_COPY(QQuickStackViewAttached) diff --git a/src/quicktemplates2/qquickswipe_p.h b/src/quicktemplates2/qquickswipe_p.h index 20e38e90..768d5638 100644 --- a/src/quicktemplates2/qquickswipe_p.h +++ b/src/quicktemplates2/qquickswipe_p.h @@ -71,8 +71,10 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickSwipe : public QObject Q_PROPERTY(QQuickItem *behindItem READ behindItem NOTIFY behindItemChanged FINAL) Q_PROPERTY(QQuickItem *rightItem READ rightItem NOTIFY rightItemChanged FINAL) // 2.2 (Qt 5.9) - Q_PROPERTY(bool enabled READ isEnabled WRITE setEnabled NOTIFY enabledChanged FINAL) // REVISION 2 - Q_PROPERTY(QQuickTransition *transition READ transition WRITE setTransition NOTIFY transitionChanged FINAL) // REVISION 2 + Q_PROPERTY(bool enabled READ isEnabled WRITE setEnabled NOTIFY enabledChanged FINAL) // REVISION(2, 2) + Q_PROPERTY(QQuickTransition *transition READ transition WRITE setTransition NOTIFY transitionChanged FINAL) // REVISION(2, 2) + QML_ANONYMOUS + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickSwipe(QQuickSwipeDelegate *control); @@ -102,7 +104,7 @@ public: void setRightItem(QQuickItem *item); // 2.1 (Qt 5.8) - Q_REVISION(1) Q_INVOKABLE void close(); + Q_REVISION(2, 1) Q_INVOKABLE void close(); // 2.2 (Qt 5.9) bool isEnabled() const; @@ -111,7 +113,7 @@ public: QQuickTransition *transition() const; void setTransition(QQuickTransition *transition); - Q_REVISION(2) Q_INVOKABLE void open(QQuickSwipeDelegate::Side side); + Q_REVISION(2, 2) Q_INVOKABLE void open(QQuickSwipeDelegate::Side side); Q_SIGNALS: void positionChanged(); @@ -123,12 +125,12 @@ Q_SIGNALS: void behindItemChanged(); void rightItemChanged(); // 2.1 (Qt 5.8) - /*Q_REVISION(1)*/ void completed(); + /*Q_REVISION(2, 1)*/ void completed(); // 2.2 (Qt 5.9) - /*Q_REVISION(2)*/ void opened(); - /*Q_REVISION(2)*/ void closed(); - /*Q_REVISION(2)*/ void enabledChanged(); - /*Q_REVISION(2)*/ void transitionChanged(); + /*Q_REVISION(2, 2)*/ void opened(); + /*Q_REVISION(2, 2)*/ void closed(); + /*Q_REVISION(2, 2)*/ void enabledChanged(); + /*Q_REVISION(2, 2)*/ void transitionChanged(); private: Q_DISABLE_COPY(QQuickSwipe) diff --git a/src/quicktemplates2/qquickswipedelegate.cpp b/src/quicktemplates2/qquickswipedelegate.cpp index 8c8d8c6e..4b16609d 100644 --- a/src/quicktemplates2/qquickswipedelegate.cpp +++ b/src/quicktemplates2/qquickswipedelegate.cpp @@ -697,6 +697,11 @@ void QQuickSwipe::close() if (qFuzzyIsNull(d->position)) return; + if (d->control->isPressed()) { + // We don't support closing when we're pressed; release() or clicked() should be used instead. + return; + } + d->beginTransition(0.0); d->wasComplete = false; d->positionBeforePress = 0.0; @@ -720,7 +725,7 @@ bool QQuickSwipeDelegatePrivate::handleMousePressEvent(QQuickItem *item, QMouseE // The press point could be incorrect if the press happened over a child item, // so we correct it after calling the base class' mousePressEvent(), rather // than having to duplicate its code just so we can set the pressPoint. - setPressPoint(item->mapToItem(q, event->pos())); + setPressPoint(item->mapToItem(q, event->position().toPoint())); return true; } @@ -728,8 +733,8 @@ bool QQuickSwipeDelegatePrivate::handleMousePressEvent(QQuickItem *item, QMouseE // (the control can be clicked to e.g. close the swipe). Either way, we must begin measuring // mouse movement in case it turns into a swipe, in which case we grab the mouse. swipePrivate->positionBeforePress = swipePrivate->position; - swipePrivate->velocityCalculator.startMeasuring(event->pos(), event->timestamp()); - setPressPoint(item->mapToItem(q, event->pos())); + swipePrivate->velocityCalculator.startMeasuring(event->position().toPoint(), event->timestamp()); + setPressPoint(item->mapToItem(q, event->position().toPoint())); // When a delegate uses the attached properties and signals, it declares that it wants mouse events. Attached *attached = attachedObject(item); @@ -748,7 +753,7 @@ bool QQuickSwipeDelegatePrivate::handleMouseMoveEvent(QQuickItem *item, QMouseEv Q_Q(QQuickSwipeDelegate); if (holdTimer > 0) { - if (QLineF(pressPoint, event->localPos()).length() > QGuiApplication::styleHints()->startDragDistance()) + if (QLineF(pressPoint, event->position()).length() > QGuiApplication::styleHints()->startDragDistance()) stopPressAndHold(); } @@ -770,7 +775,7 @@ bool QQuickSwipeDelegatePrivate::handleMouseMoveEvent(QQuickItem *item, QMouseEv if (item == q && !pressed) return false; - const QPointF mappedEventPos = item->mapToItem(q, event->pos()); + const QPointF mappedEventPos = item->mapToItem(q, event->position().toPoint()); const qreal distance = (mappedEventPos - pressPoint).x(); if (!q->keepMouseGrab()) { // Taken from QQuickDrawerPrivate::grabMouse; see comments there. @@ -840,7 +845,7 @@ bool QQuickSwipeDelegatePrivate::handleMouseMoveEvent(QQuickItem *item, QMouseEv } } else { // The swipe wasn't initiated. - if (event->pos().y() < 0 || event->pos().y() > height) { + if (event->position().toPoint().y() < 0 || event->position().toPoint().y() > height) { // The mouse went outside the vertical bounds of the control, so // we should no longer consider it pressed. q->setPressed(false); @@ -858,7 +863,7 @@ bool QQuickSwipeDelegatePrivate::handleMouseReleaseEvent(QQuickItem *item, QMous { Q_Q(QQuickSwipeDelegate); QQuickSwipePrivate *swipePrivate = QQuickSwipePrivate::get(&swipe); - swipePrivate->velocityCalculator.stopMeasuring(event->pos(), event->timestamp()); + swipePrivate->velocityCalculator.stopMeasuring(event->position().toPoint(), event->timestamp()); const bool hadGrabbedMouse = q->keepMouseGrab(); q->setKeepMouseGrab(false); @@ -889,7 +894,11 @@ bool QQuickSwipeDelegatePrivate::handleMouseReleaseEvent(QQuickItem *item, QMous swipePrivate->beginTransition(-1.0); swipePrivate->wasComplete = true; } else if (!swipePrivate->isTransitioning()) { - swipePrivate->beginTransition(0.0); + // The position is either <= 0.5 or >= -0.5, so the position should go to 0. + // However, if the position was already 0 or close to it, we were just clicked, + // and we don't need to start a transition. + if (!qFuzzyIsNull(swipePrivate->position)) + swipePrivate->beginTransition(0.0); swipePrivate->wasComplete = false; } @@ -1180,7 +1189,7 @@ void QQuickSwipeDelegate::mousePressEvent(QMouseEvent *event) return; swipePrivate->positionBeforePress = swipePrivate->position; - swipePrivate->velocityCalculator.startMeasuring(event->pos(), event->timestamp()); + swipePrivate->velocityCalculator.startMeasuring(event->position().toPoint(), event->timestamp()); } void QQuickSwipeDelegate::mouseMoveEvent(QMouseEvent *event) diff --git a/src/quicktemplates2/qquickswipedelegate_p.h b/src/quicktemplates2/qquickswipedelegate_p.h index 76f9df5b..228f1085 100644 --- a/src/quicktemplates2/qquickswipedelegate_p.h +++ b/src/quicktemplates2/qquickswipedelegate_p.h @@ -61,6 +61,9 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickSwipeDelegate : public QQuickItemDe { Q_OBJECT Q_PROPERTY(QQuickSwipe *swipe READ swipe CONSTANT FINAL) + QML_NAMED_ELEMENT(SwipeDelegate) + QML_ATTACHED(QQuickSwipeDelegateAttached) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickSwipeDelegate(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquickswipeview_p.h b/src/quicktemplates2/qquickswipeview_p.h index 72d7d543..8a09a37e 100644 --- a/src/quicktemplates2/qquickswipeview_p.h +++ b/src/quicktemplates2/qquickswipeview_p.h @@ -59,12 +59,15 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickSwipeView : public QQuickContainer { Q_OBJECT // 2.1 (Qt 5.8) - Q_PROPERTY(bool interactive READ isInteractive WRITE setInteractive NOTIFY interactiveChanged FINAL REVISION 1) + Q_PROPERTY(bool interactive READ isInteractive WRITE setInteractive NOTIFY interactiveChanged FINAL REVISION(2, 1)) // 2.2 (Qt 5.9) - Q_PROPERTY(Qt::Orientation orientation READ orientation WRITE setOrientation NOTIFY orientationChanged FINAL REVISION 2) + Q_PROPERTY(Qt::Orientation orientation READ orientation WRITE setOrientation NOTIFY orientationChanged FINAL REVISION(2, 2)) // 2.3 (Qt 5.10) - Q_PROPERTY(bool horizontal READ isHorizontal NOTIFY orientationChanged FINAL REVISION 3) - Q_PROPERTY(bool vertical READ isVertical NOTIFY orientationChanged FINAL REVISION 3) + Q_PROPERTY(bool horizontal READ isHorizontal NOTIFY orientationChanged FINAL REVISION(2, 3)) + Q_PROPERTY(bool vertical READ isVertical NOTIFY orientationChanged FINAL REVISION(2, 3)) + QML_NAMED_ELEMENT(SwipeView) + QML_ATTACHED(QQuickSwipeViewAttached) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickSwipeView(QQuickItem *parent = nullptr); @@ -85,9 +88,9 @@ public: Q_SIGNALS: // 2.1 (Qt 5.8) - Q_REVISION(1) void interactiveChanged(); + Q_REVISION(2, 1) void interactiveChanged(); // 2.2 (Qt 5.9) - Q_REVISION(2) void orientationChanged(); + Q_REVISION(2, 2) void orientationChanged(); protected: void geometryChange(const QRectF &newGeometry, const QRectF &oldGeometry) override; @@ -113,8 +116,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickSwipeViewAttached : public QObject Q_PROPERTY(bool isCurrentItem READ isCurrentItem NOTIFY isCurrentItemChanged FINAL) Q_PROPERTY(QQuickSwipeView *view READ view NOTIFY viewChanged FINAL) // 2.1 (Qt 5.8) - Q_PROPERTY(bool isNextItem READ isNextItem NOTIFY isNextItemChanged FINAL REVISION 1) - Q_PROPERTY(bool isPreviousItem READ isPreviousItem NOTIFY isPreviousItemChanged FINAL REVISION 1) + Q_PROPERTY(bool isNextItem READ isNextItem NOTIFY isNextItemChanged FINAL REVISION(2, 1)) + Q_PROPERTY(bool isPreviousItem READ isPreviousItem NOTIFY isPreviousItemChanged FINAL REVISION(2, 1)) public: explicit QQuickSwipeViewAttached(QObject *parent = nullptr); @@ -132,8 +135,8 @@ Q_SIGNALS: void isCurrentItemChanged(); void viewChanged(); // 2.1 (Qt 5.8) - /*Q_REVISION(1)*/ void isNextItemChanged(); - /*Q_REVISION(1)*/ void isPreviousItemChanged(); + /*Q_REVISION(2, 1)*/ void isNextItemChanged(); + /*Q_REVISION(2, 1)*/ void isPreviousItemChanged(); private: Q_DISABLE_COPY(QQuickSwipeViewAttached) diff --git a/src/quicktemplates2/qquickswitch.cpp b/src/quicktemplates2/qquickswitch.cpp index 08ea44da..143210ae 100644 --- a/src/quicktemplates2/qquickswitch.cpp +++ b/src/quicktemplates2/qquickswitch.cpp @@ -180,7 +180,7 @@ void QQuickSwitch::mouseMoveEvent(QMouseEvent *event) { Q_D(QQuickSwitch); if (!keepMouseGrab()) { - const QPointF movePoint = event->localPos(); + const QPointF movePoint = event->position(); if (d->canDrag(movePoint)) setKeepMouseGrab(QQuickWindowPrivate::dragOverThreshold(movePoint.x() - d->pressPoint.x(), Qt::XAxis, event)); } @@ -193,10 +193,10 @@ void QQuickSwitch::touchEvent(QTouchEvent *event) Q_D(QQuickSwitch); if (!keepTouchGrab() && event->type() == QEvent::TouchUpdate) { for (const QTouchEvent::TouchPoint &point : event->touchPoints()) { - if (point.id() != d->touchId || point.state() != Qt::TouchPointMoved) + if (point.id() != d->touchId || point.state() != QEventPoint::Updated) continue; - if (d->canDrag(point.pos())) - setKeepTouchGrab(QQuickWindowPrivate::dragOverThreshold(point.pos().x() - d->pressPoint.x(), Qt::XAxis, &point)); + if (d->canDrag(point.position())) + setKeepTouchGrab(QQuickWindowPrivate::dragOverThreshold(point.position().x() - d->pressPoint.x(), Qt::XAxis, &point)); } } QQuickAbstractButton::touchEvent(event); diff --git a/src/quicktemplates2/qquickswitch_p.h b/src/quicktemplates2/qquickswitch_p.h index e4c55c2b..b3df0299 100644 --- a/src/quicktemplates2/qquickswitch_p.h +++ b/src/quicktemplates2/qquickswitch_p.h @@ -59,6 +59,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickSwitch : public QQuickAbstractButto Q_OBJECT Q_PROPERTY(qreal position READ position WRITE setPosition NOTIFY positionChanged FINAL) Q_PROPERTY(qreal visualPosition READ visualPosition NOTIFY visualPositionChanged FINAL) + QML_NAMED_ELEMENT(Switch) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickSwitch(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquickswitchdelegate.cpp b/src/quicktemplates2/qquickswitchdelegate.cpp index d0e3afc8..2e196412 100644 --- a/src/quicktemplates2/qquickswitchdelegate.cpp +++ b/src/quicktemplates2/qquickswitchdelegate.cpp @@ -177,7 +177,7 @@ void QQuickSwitchDelegate::mouseMoveEvent(QMouseEvent *event) { Q_D(QQuickSwitchDelegate); if (!keepMouseGrab()) { - const QPointF movePoint = event->localPos(); + const QPointF movePoint = event->position(); if (d->canDrag(movePoint)) setKeepMouseGrab(QQuickWindowPrivate::dragOverThreshold(movePoint.x() - d->pressPoint.x(), Qt::XAxis, event)); } @@ -190,10 +190,10 @@ void QQuickSwitchDelegate::touchEvent(QTouchEvent *event) Q_D(QQuickSwitchDelegate); if (!keepTouchGrab() && event->type() == QEvent::TouchUpdate) { for (const QTouchEvent::TouchPoint &point : event->touchPoints()) { - if (point.id() != d->touchId || point.state() != Qt::TouchPointMoved) + if (point.id() != d->touchId || point.state() != QEventPoint::Updated) continue; - if (d->canDrag(point.pos())) - setKeepTouchGrab(QQuickWindowPrivate::dragOverThreshold(point.pos().x() - d->pressPoint.x(), Qt::XAxis, &point)); + if (d->canDrag(point.position())) + setKeepTouchGrab(QQuickWindowPrivate::dragOverThreshold(point.position().x() - d->pressPoint.x(), Qt::XAxis, &point)); } } QQuickItemDelegate::touchEvent(event); diff --git a/src/quicktemplates2/qquickswitchdelegate_p.h b/src/quicktemplates2/qquickswitchdelegate_p.h index 383a662d..a2eb6f62 100644 --- a/src/quicktemplates2/qquickswitchdelegate_p.h +++ b/src/quicktemplates2/qquickswitchdelegate_p.h @@ -59,6 +59,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickSwitchDelegate : public QQuickItemD Q_OBJECT Q_PROPERTY(qreal position READ position WRITE setPosition NOTIFY positionChanged FINAL) Q_PROPERTY(qreal visualPosition READ visualPosition NOTIFY visualPositionChanged FINAL) + QML_NAMED_ELEMENT(SwitchDelegate) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickSwitchDelegate(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquicktabbar.cpp b/src/quicktemplates2/qquicktabbar.cpp index c90ff674..b38699df 100644 --- a/src/quicktemplates2/qquicktabbar.cpp +++ b/src/quicktemplates2/qquicktabbar.cpp @@ -158,7 +158,7 @@ void QQuickTabBarPrivate::updateLayout() qreal reservedWidth = 0; int resizableCount = 0; - QVector<QQuickItem *> allItems; + QList<QQuickItem *> allItems; allItems.reserve(count); for (int i = 0; i < count; ++i) { diff --git a/src/quicktemplates2/qquicktabbar_p.h b/src/quicktemplates2/qquicktabbar_p.h index 42d39767..1025d3c6 100644 --- a/src/quicktemplates2/qquicktabbar_p.h +++ b/src/quicktemplates2/qquicktabbar_p.h @@ -61,8 +61,11 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickTabBar : public QQuickContainer Q_OBJECT Q_PROPERTY(Position position READ position WRITE setPosition NOTIFY positionChanged FINAL) // 2.2 (Qt 5.9) - Q_PROPERTY(qreal contentWidth READ contentWidth WRITE setContentWidth RESET resetContentWidth NOTIFY contentWidthChanged FINAL REVISION 2) // re-declare QQuickContainer::contentWidth (REV 5) - Q_PROPERTY(qreal contentHeight READ contentHeight WRITE setContentHeight RESET resetContentHeight NOTIFY contentHeightChanged FINAL REVISION 2) // re-declare QQuickContainer::contentHeight (REV 5) + Q_PROPERTY(qreal contentWidth READ contentWidth WRITE setContentWidth RESET resetContentWidth NOTIFY contentWidthChanged FINAL REVISION(2, 2)) // re-declare QQuickContainer::contentWidth (REV 5) + Q_PROPERTY(qreal contentHeight READ contentHeight WRITE setContentHeight RESET resetContentHeight NOTIFY contentHeightChanged FINAL REVISION(2, 2)) // re-declare QQuickContainer::contentHeight (REV 5) + QML_NAMED_ELEMENT(TabBar) + QML_ATTACHED(QQuickTabBarAttached) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickTabBar(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquicktabbutton_p.h b/src/quicktemplates2/qquicktabbutton_p.h index bcaf7c29..302180c4 100644 --- a/src/quicktemplates2/qquicktabbutton_p.h +++ b/src/quicktemplates2/qquicktabbutton_p.h @@ -57,6 +57,8 @@ class QQuickTabButtonPrivate; class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickTabButton : public QQuickAbstractButton { Q_OBJECT + QML_NAMED_ELEMENT(TabButton) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickTabButton(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquicktextarea_p.h b/src/quicktemplates2/qquicktextarea_p.h index 74247703..fed0eb59 100644 --- a/src/quicktemplates2/qquicktextarea_p.h +++ b/src/quicktemplates2/qquicktextarea_p.h @@ -69,17 +69,19 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickTextArea : public QQuickTextEdit Q_PROPERTY(QString placeholderText READ placeholderText WRITE setPlaceholderText NOTIFY placeholderTextChanged FINAL) Q_PROPERTY(Qt::FocusReason focusReason READ focusReason WRITE setFocusReason NOTIFY focusReasonChanged FINAL) // 2.1 (Qt 5.8) - Q_PROPERTY(bool hovered READ isHovered NOTIFY hoveredChanged FINAL REVISION 1) - Q_PROPERTY(bool hoverEnabled READ isHoverEnabled WRITE setHoverEnabled RESET resetHoverEnabled NOTIFY hoverEnabledChanged FINAL REVISION 1) + Q_PROPERTY(bool hovered READ isHovered NOTIFY hoveredChanged FINAL REVISION(2, 1)) + Q_PROPERTY(bool hoverEnabled READ isHoverEnabled WRITE setHoverEnabled RESET resetHoverEnabled NOTIFY hoverEnabledChanged FINAL REVISION(2, 1)) // 2.5 (Qt 5.12) - Q_PROPERTY(QColor placeholderTextColor READ placeholderTextColor WRITE setPlaceholderTextColor NOTIFY placeholderTextColorChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitBackgroundWidth READ implicitBackgroundWidth NOTIFY implicitBackgroundWidthChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitBackgroundHeight READ implicitBackgroundHeight NOTIFY implicitBackgroundHeightChanged FINAL REVISION 5) - Q_PROPERTY(qreal topInset READ topInset WRITE setTopInset RESET resetTopInset NOTIFY topInsetChanged FINAL REVISION 5) - Q_PROPERTY(qreal leftInset READ leftInset WRITE setLeftInset RESET resetLeftInset NOTIFY leftInsetChanged FINAL REVISION 5) - Q_PROPERTY(qreal rightInset READ rightInset WRITE setRightInset RESET resetRightInset NOTIFY rightInsetChanged FINAL REVISION 5) - Q_PROPERTY(qreal bottomInset READ bottomInset WRITE setBottomInset RESET resetBottomInset NOTIFY bottomInsetChanged FINAL REVISION 5) + Q_PROPERTY(QColor placeholderTextColor READ placeholderTextColor WRITE setPlaceholderTextColor NOTIFY placeholderTextColorChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitBackgroundWidth READ implicitBackgroundWidth NOTIFY implicitBackgroundWidthChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitBackgroundHeight READ implicitBackgroundHeight NOTIFY implicitBackgroundHeightChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal topInset READ topInset WRITE setTopInset RESET resetTopInset NOTIFY topInsetChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal leftInset READ leftInset WRITE setLeftInset RESET resetLeftInset NOTIFY leftInsetChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal rightInset READ rightInset WRITE setRightInset RESET resetRightInset NOTIFY rightInsetChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal bottomInset READ bottomInset WRITE setBottomInset RESET resetBottomInset NOTIFY bottomInsetChanged FINAL REVISION(2, 5)) Q_CLASSINFO("DeferredPropertyNames", "background") + QML_NAMED_ELEMENT(TextArea) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickTextArea(QQuickItem *parent = nullptr); @@ -141,18 +143,18 @@ Q_SIGNALS: void focusReasonChanged(); void pressAndHold(QQuickMouseEvent *event); // 2.1 (Qt 5.8) - Q_REVISION(1) void pressed(QQuickMouseEvent *event); - Q_REVISION(1) void released(QQuickMouseEvent *event); - Q_REVISION(1) void hoveredChanged(); - Q_REVISION(1) void hoverEnabledChanged(); + Q_REVISION(2, 1) void pressed(QQuickMouseEvent *event); + Q_REVISION(2, 1) void released(QQuickMouseEvent *event); + Q_REVISION(2, 1) void hoveredChanged(); + Q_REVISION(2, 1) void hoverEnabledChanged(); // 2.5 (Qt 5.12) - Q_REVISION(5) void placeholderTextColorChanged(); - Q_REVISION(5) void implicitBackgroundWidthChanged(); - Q_REVISION(5) void implicitBackgroundHeightChanged(); - Q_REVISION(5) void topInsetChanged(); - Q_REVISION(5) void leftInsetChanged(); - Q_REVISION(5) void rightInsetChanged(); - Q_REVISION(5) void bottomInsetChanged(); + Q_REVISION(2, 5) void placeholderTextColorChanged(); + Q_REVISION(2, 5) void implicitBackgroundWidthChanged(); + Q_REVISION(2, 5) void implicitBackgroundHeightChanged(); + Q_REVISION(2, 5) void topInsetChanged(); + Q_REVISION(2, 5) void leftInsetChanged(); + Q_REVISION(2, 5) void rightInsetChanged(); + Q_REVISION(2, 5) void bottomInsetChanged(); protected: friend struct QQuickPressHandler; @@ -204,6 +206,14 @@ private: Q_DECLARE_PRIVATE(QQuickTextAreaAttached) }; +struct QQuickTextEditForeign +{ + Q_GADGET + QML_ANONYMOUS + QML_FOREIGN(QQuickTextEdit) + QML_ADDED_IN_VERSION(2, 3) +}; + QT_END_NAMESPACE QML_DECLARE_TYPE(QQuickTextArea) diff --git a/src/quicktemplates2/qquicktextfield.cpp b/src/quicktemplates2/qquicktextfield.cpp index 0dcebb40..c8e61094 100644 --- a/src/quicktemplates2/qquicktextfield.cpp +++ b/src/quicktemplates2/qquicktextfield.cpp @@ -309,7 +309,7 @@ void QQuickTextFieldPrivate::echoModeChanged(QQuickTextField::EchoMode echoMode) if (QQuickAccessibleAttached *accessibleAttached = QQuickControlPrivate::accessibleAttached(q_func())) accessibleAttached->set_passwordEdit((echoMode == QQuickTextField::Password || echoMode == QQuickTextField::PasswordEchoOnEdit) ? true : false); #else - Q_UNUSED(echoMode) + Q_UNUSED(echoMode); #endif } diff --git a/src/quicktemplates2/qquicktextfield_p.h b/src/quicktemplates2/qquicktextfield_p.h index f24330c7..b1b9715c 100644 --- a/src/quicktemplates2/qquicktextfield_p.h +++ b/src/quicktemplates2/qquicktextfield_p.h @@ -68,17 +68,19 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickTextField : public QQuickTextInput Q_PROPERTY(QString placeholderText READ placeholderText WRITE setPlaceholderText NOTIFY placeholderTextChanged FINAL) Q_PROPERTY(Qt::FocusReason focusReason READ focusReason WRITE setFocusReason NOTIFY focusReasonChanged FINAL) // 2.1 (Qt 5.8) - Q_PROPERTY(bool hovered READ isHovered NOTIFY hoveredChanged FINAL REVISION 1) - Q_PROPERTY(bool hoverEnabled READ isHoverEnabled WRITE setHoverEnabled RESET resetHoverEnabled NOTIFY hoverEnabledChanged FINAL REVISION 1) + Q_PROPERTY(bool hovered READ isHovered NOTIFY hoveredChanged FINAL REVISION(2, 1)) + Q_PROPERTY(bool hoverEnabled READ isHoverEnabled WRITE setHoverEnabled RESET resetHoverEnabled NOTIFY hoverEnabledChanged FINAL REVISION(2, 1)) // 2.5 (Qt 5.12) - Q_PROPERTY(QColor placeholderTextColor READ placeholderTextColor WRITE setPlaceholderTextColor NOTIFY placeholderTextColorChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitBackgroundWidth READ implicitBackgroundWidth NOTIFY implicitBackgroundWidthChanged FINAL REVISION 5) - Q_PROPERTY(qreal implicitBackgroundHeight READ implicitBackgroundHeight NOTIFY implicitBackgroundHeightChanged FINAL REVISION 5) - Q_PROPERTY(qreal topInset READ topInset WRITE setTopInset RESET resetTopInset NOTIFY topInsetChanged FINAL REVISION 5) - Q_PROPERTY(qreal leftInset READ leftInset WRITE setLeftInset RESET resetLeftInset NOTIFY leftInsetChanged FINAL REVISION 5) - Q_PROPERTY(qreal rightInset READ rightInset WRITE setRightInset RESET resetRightInset NOTIFY rightInsetChanged FINAL REVISION 5) - Q_PROPERTY(qreal bottomInset READ bottomInset WRITE setBottomInset RESET resetBottomInset NOTIFY bottomInsetChanged FINAL REVISION 5) + Q_PROPERTY(QColor placeholderTextColor READ placeholderTextColor WRITE setPlaceholderTextColor NOTIFY placeholderTextColorChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitBackgroundWidth READ implicitBackgroundWidth NOTIFY implicitBackgroundWidthChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal implicitBackgroundHeight READ implicitBackgroundHeight NOTIFY implicitBackgroundHeightChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal topInset READ topInset WRITE setTopInset RESET resetTopInset NOTIFY topInsetChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal leftInset READ leftInset WRITE setLeftInset RESET resetLeftInset NOTIFY leftInsetChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal rightInset READ rightInset WRITE setRightInset RESET resetRightInset NOTIFY rightInsetChanged FINAL REVISION(2, 5)) + Q_PROPERTY(qreal bottomInset READ bottomInset WRITE setBottomInset RESET resetBottomInset NOTIFY bottomInsetChanged FINAL REVISION(2, 5)) Q_CLASSINFO("DeferredPropertyNames", "background") + QML_NAMED_ELEMENT(TextField) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickTextField(QQuickItem *parent = nullptr); @@ -136,18 +138,18 @@ Q_SIGNALS: void focusReasonChanged(); void pressAndHold(QQuickMouseEvent *event); // 2.1 (Qt 5.8) - Q_REVISION(1) void pressed(QQuickMouseEvent *event); - Q_REVISION(1) void released(QQuickMouseEvent *event); - Q_REVISION(1) void hoveredChanged(); - Q_REVISION(1) void hoverEnabledChanged(); + Q_REVISION(2, 1) void pressed(QQuickMouseEvent *event); + Q_REVISION(2, 1) void released(QQuickMouseEvent *event); + Q_REVISION(2, 1) void hoveredChanged(); + Q_REVISION(2, 1) void hoverEnabledChanged(); // 2.5 (Qt 5.12) - Q_REVISION(5) void placeholderTextColorChanged(); - Q_REVISION(5) void implicitBackgroundWidthChanged(); - Q_REVISION(5) void implicitBackgroundHeightChanged(); - Q_REVISION(5) void topInsetChanged(); - Q_REVISION(5) void leftInsetChanged(); - Q_REVISION(5) void rightInsetChanged(); - Q_REVISION(5) void bottomInsetChanged(); + Q_REVISION(2, 5) void placeholderTextColorChanged(); + Q_REVISION(2, 5) void implicitBackgroundWidthChanged(); + Q_REVISION(2, 5) void implicitBackgroundHeightChanged(); + Q_REVISION(2, 5) void topInsetChanged(); + Q_REVISION(2, 5) void leftInsetChanged(); + Q_REVISION(2, 5) void rightInsetChanged(); + Q_REVISION(2, 5) void bottomInsetChanged(); protected: friend struct QQuickPressHandler; @@ -178,6 +180,14 @@ private: Q_DECLARE_PRIVATE(QQuickTextField) }; +struct QQuickTextFieldForeign +{ + Q_GADGET + QML_ANONYMOUS + QML_FOREIGN(QQuickTextInput) + QML_ADDED_IN_VERSION(2, 2) +}; + QT_END_NAMESPACE QML_DECLARE_TYPE(QQuickTextField) diff --git a/src/quicktemplates2/qquicktoolbar_p.h b/src/quicktemplates2/qquicktoolbar_p.h index 631f553e..cefdeaa1 100644 --- a/src/quicktemplates2/qquicktoolbar_p.h +++ b/src/quicktemplates2/qquicktoolbar_p.h @@ -58,6 +58,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickToolBar : public QQuickPane { Q_OBJECT Q_PROPERTY(Position position READ position WRITE setPosition NOTIFY positionChanged FINAL) + QML_NAMED_ELEMENT(ToolBar) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickToolBar(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquicktoolbutton_p.h b/src/quicktemplates2/qquicktoolbutton_p.h index c8d70aef..2db052f6 100644 --- a/src/quicktemplates2/qquicktoolbutton_p.h +++ b/src/quicktemplates2/qquicktoolbutton_p.h @@ -57,6 +57,8 @@ class QQuickToolButtonPrivate; class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickToolButton : public QQuickButton { Q_OBJECT + QML_NAMED_ELEMENT(ToolButton) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickToolButton(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquicktoolseparator_p.h b/src/quicktemplates2/qquicktoolseparator_p.h index 30bcf7df..e4692154 100644 --- a/src/quicktemplates2/qquicktoolseparator_p.h +++ b/src/quicktemplates2/qquicktoolseparator_p.h @@ -60,6 +60,8 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickToolSeparator : public QQuickContro Q_PROPERTY(Qt::Orientation orientation READ orientation WRITE setOrientation NOTIFY orientationChanged FINAL) Q_PROPERTY(bool horizontal READ isHorizontal NOTIFY orientationChanged FINAL) Q_PROPERTY(bool vertical READ isVertical NOTIFY orientationChanged FINAL) + QML_NAMED_ELEMENT(ToolSeparator) + QML_ADDED_IN_VERSION(2, 1) public: explicit QQuickToolSeparator(QQuickItem *parent = nullptr); diff --git a/src/quicktemplates2/qquicktooltip_p.h b/src/quicktemplates2/qquicktooltip_p.h index a143452d..5be22fd8 100644 --- a/src/quicktemplates2/qquicktooltip_p.h +++ b/src/quicktemplates2/qquicktooltip_p.h @@ -62,6 +62,9 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickToolTip : public QQuickPopup Q_PROPERTY(int delay READ delay WRITE setDelay NOTIFY delayChanged FINAL) Q_PROPERTY(int timeout READ timeout WRITE setTimeout NOTIFY timeoutChanged FINAL) Q_PROPERTY(QString text READ text WRITE setText NOTIFY textChanged FINAL) + QML_NAMED_ELEMENT(ToolTip) + QML_ATTACHED(QQuickToolTipAttached) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickToolTip(QQuickItem *parent = nullptr); @@ -85,8 +88,8 @@ Q_SIGNALS: void timeoutChanged(); public Q_SLOTS: - Q_REVISION(5) void show(const QString &text, int ms = -1); - Q_REVISION(5) void hide(); + Q_REVISION(2, 5) void show(const QString &text, int ms = -1); + Q_REVISION(2, 5) void hide(); protected: QFont defaultFont() const override; diff --git a/src/quicktemplates2/qquicktumbler_p.h b/src/quicktemplates2/qquicktumbler_p.h index 046e8b8c..f9d5a13b 100644 --- a/src/quicktemplates2/qquicktumbler_p.h +++ b/src/quicktemplates2/qquicktumbler_p.h @@ -67,9 +67,12 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickTumbler : public QQuickControl Q_PROPERTY(QQmlComponent *delegate READ delegate WRITE setDelegate NOTIFY delegateChanged FINAL) Q_PROPERTY(int visibleItemCount READ visibleItemCount WRITE setVisibleItemCount NOTIFY visibleItemCountChanged FINAL) // 2.1 (Qt 5.8) - Q_PROPERTY(bool wrap READ wrap WRITE setWrap RESET resetWrap NOTIFY wrapChanged FINAL REVISION 1) + Q_PROPERTY(bool wrap READ wrap WRITE setWrap RESET resetWrap NOTIFY wrapChanged FINAL REVISION(2, 1)) // 2.2 (Qt 5.9) - Q_PROPERTY(bool moving READ isMoving NOTIFY movingChanged FINAL REVISION 2) + Q_PROPERTY(bool moving READ isMoving NOTIFY movingChanged FINAL REVISION(2, 2)) + QML_NAMED_ELEMENT(Tumbler) + QML_ATTACHED(QQuickTumblerAttached) + QML_ADDED_IN_VERSION(2, 0) public: explicit QQuickTumbler(QQuickItem *parent = nullptr); @@ -111,7 +114,7 @@ public: Q_ENUM(PositionMode) // 2.5 (Qt 5.12) - Q_REVISION(5) Q_INVOKABLE void positionViewAtIndex(int index, PositionMode mode); + Q_REVISION(2, 5) Q_INVOKABLE void positionViewAtIndex(int index, PositionMode mode); Q_SIGNALS: void modelChanged(); @@ -121,9 +124,9 @@ Q_SIGNALS: void delegateChanged(); void visibleItemCountChanged(); // 2.1 (Qt 5.8) - Q_REVISION(1) void wrapChanged(); + Q_REVISION(2, 1) void wrapChanged(); // 2.2 (Qt 5.9) - Q_REVISION(2) void movingChanged(); + Q_REVISION(2, 2) void movingChanged(); protected: void geometryChange(const QRectF &newGeometry, const QRectF &oldGeometry) override; diff --git a/src/quicktemplates2/qtquicktemplates2global_p.h b/src/quicktemplates2/qtquicktemplates2global_p.h index e5ee3f2e..37d81888 100644 --- a/src/quicktemplates2/qtquicktemplates2global_p.h +++ b/src/quicktemplates2/qtquicktemplates2global_p.h @@ -66,4 +66,6 @@ QT_BEGIN_NAMESPACE QT_END_NAMESPACE +Q_QUICKTEMPLATES2_PRIVATE_EXPORT void qml_register_types_QtQuick_Templates(); + #endif // QTQUICKTEMPLATES2GLOBAL_P_H diff --git a/src/quicktemplates2/quicktemplates2.pro b/src/quicktemplates2/quicktemplates2.pro index 8ed0151a..06fa0ee7 100644 --- a/src/quicktemplates2/quicktemplates2.pro +++ b/src/quicktemplates2/quicktemplates2.pro @@ -12,3 +12,9 @@ HEADERS += \ include(quicktemplates2.pri) load(qt_module) + +QMLTYPES_FILENAME = plugins.qmltypes +QMLTYPES_INSTALL_DIR = $$[QT_INSTALL_QML]/QtQuick/Templates +QML_IMPORT_NAME = QtQuick.Templates +QML_IMPORT_VERSION = $$QT_VERSION +CONFIG += qmltypes install_qmltypes install_metatypes diff --git a/src/src.pro b/src/src.pro index 7f945ffb..b6d3b850 100644 --- a/src/src.pro +++ b/src/src.pro @@ -2,7 +2,9 @@ TEMPLATE = subdirs SUBDIRS += \ quicktemplates2 \ quickcontrols2 \ + quickcontrols2impl \ imports quickcontrols2.depends = quicktemplates2 -imports.depends = quickcontrols2 quicktemplates2 +quickcontrols2impl.depends = quicktemplates2 +imports.depends = quicktemplates2 quickcontrols2 quickcontrols2impl diff --git a/sync.profile b/sync.profile index 41eae2b2..dc6ea940 100644 --- a/sync.profile +++ b/sync.profile @@ -1,5 +1,6 @@ %modules = ( # path to module name map "QtQuickControls2" => "$basedir/src/quickcontrols2", + "QtQuickControls2Impl" => "$basedir/src/quickcontrols2impl", "QtQuickTemplates2" => "$basedir/src/quicktemplates2", ); %moduleheaders = ( # restrict the module headers to those found in relative path diff --git a/tests/auto/CMakeLists.txt b/tests/auto/CMakeLists.txt index 31d13ca7..68aba613 100644 --- a/tests/auto/CMakeLists.txt +++ b/tests/auto/CMakeLists.txt @@ -24,10 +24,10 @@ add_subdirectory(qquickmenubar) add_subdirectory(qquickninepatchimage) add_subdirectory(qquickpopup) add_subdirectory(qquickstyle) -add_subdirectory(qquickstyleselector) add_subdirectory(qquickuniversalstyle) add_subdirectory(qquickuniversalstyleconf) add_subdirectory(revisions) add_subdirectory(sanity) add_subdirectory(snippets) +add_subdirectory(styleimports) add_subdirectory(translation) diff --git a/tests/auto/accessibility/CMakeLists.txt b/tests/auto/accessibility/CMakeLists.txt index 9a8fa784..4ba2c566 100644 --- a/tests/auto/accessibility/CMakeLists.txt +++ b/tests/auto/accessibility/CMakeLists.txt @@ -28,6 +28,7 @@ qt_add_test(tst_accessibility Qt::GuiPrivate Qt::QmlPrivate Qt::QuickControls2 + Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private Qt::TestPrivate diff --git a/tests/auto/accessibility/data/defaults/abstractbutton.qml b/tests/auto/accessibility/data/defaults/abstractbutton.qml index b0922176..29d6b3c0 100644 --- a/tests/auto/accessibility/data/defaults/abstractbutton.qml +++ b/tests/auto/accessibility/data/defaults/abstractbutton.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls AbstractButton { text: "AbstractButton" diff --git a/tests/auto/accessibility/data/defaults/busyindicator.qml b/tests/auto/accessibility/data/defaults/busyindicator.qml index e1c33765..baaa9ba8 100644 --- a/tests/auto/accessibility/data/defaults/busyindicator.qml +++ b/tests/auto/accessibility/data/defaults/busyindicator.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls BusyIndicator { } diff --git a/tests/auto/accessibility/data/defaults/button.qml b/tests/auto/accessibility/data/defaults/button.qml index 600c05da..0359b3ac 100644 --- a/tests/auto/accessibility/data/defaults/button.qml +++ b/tests/auto/accessibility/data/defaults/button.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Button { text: "Button" diff --git a/tests/auto/accessibility/data/defaults/checkbox.qml b/tests/auto/accessibility/data/defaults/checkbox.qml index f86a9a27..c912be57 100644 --- a/tests/auto/accessibility/data/defaults/checkbox.qml +++ b/tests/auto/accessibility/data/defaults/checkbox.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls CheckBox { text: "CheckBox" diff --git a/tests/auto/accessibility/data/defaults/checkdelegate.qml b/tests/auto/accessibility/data/defaults/checkdelegate.qml index 2750052f..df62bc89 100644 --- a/tests/auto/accessibility/data/defaults/checkdelegate.qml +++ b/tests/auto/accessibility/data/defaults/checkdelegate.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls CheckDelegate { text: "CheckDelegate" diff --git a/tests/auto/accessibility/data/defaults/combobox.qml b/tests/auto/accessibility/data/defaults/combobox.qml index ec4e87ef..bfeac723 100644 --- a/tests/auto/accessibility/data/defaults/combobox.qml +++ b/tests/auto/accessibility/data/defaults/combobox.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ComboBox { model: ["ComboBox"] diff --git a/tests/auto/accessibility/data/defaults/container.qml b/tests/auto/accessibility/data/defaults/container.qml index b8d57eea..7d29fec4 100644 --- a/tests/auto/accessibility/data/defaults/container.qml +++ b/tests/auto/accessibility/data/defaults/container.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Container { } diff --git a/tests/auto/accessibility/data/defaults/control.qml b/tests/auto/accessibility/data/defaults/control.qml index dac5f935..280cfd29 100644 --- a/tests/auto/accessibility/data/defaults/control.qml +++ b/tests/auto/accessibility/data/defaults/control.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Control { } diff --git a/tests/auto/accessibility/data/defaults/dial.qml b/tests/auto/accessibility/data/defaults/dial.qml index 9a471548..d7e700b5 100644 --- a/tests/auto/accessibility/data/defaults/dial.qml +++ b/tests/auto/accessibility/data/defaults/dial.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Dial { } diff --git a/tests/auto/accessibility/data/defaults/dialog.qml b/tests/auto/accessibility/data/defaults/dialog.qml index 20317a31..d88fd36d 100644 --- a/tests/auto/accessibility/data/defaults/dialog.qml +++ b/tests/auto/accessibility/data/defaults/dialog.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Dialog { title: "Dialog" diff --git a/tests/auto/accessibility/data/defaults/drawer.qml b/tests/auto/accessibility/data/defaults/drawer.qml index 9b0db5fa..60a35171 100644 --- a/tests/auto/accessibility/data/defaults/drawer.qml +++ b/tests/auto/accessibility/data/defaults/drawer.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Drawer { } diff --git a/tests/auto/accessibility/data/defaults/frame.qml b/tests/auto/accessibility/data/defaults/frame.qml index 02e45a78..b70ccb55 100644 --- a/tests/auto/accessibility/data/defaults/frame.qml +++ b/tests/auto/accessibility/data/defaults/frame.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Frame { } diff --git a/tests/auto/accessibility/data/defaults/groupbox.qml b/tests/auto/accessibility/data/defaults/groupbox.qml index 0fa8cff5..24f3a294 100644 --- a/tests/auto/accessibility/data/defaults/groupbox.qml +++ b/tests/auto/accessibility/data/defaults/groupbox.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls GroupBox { title: "GroupBox" diff --git a/tests/auto/accessibility/data/defaults/itemdelegate.qml b/tests/auto/accessibility/data/defaults/itemdelegate.qml index 52831648..5ec95fe0 100644 --- a/tests/auto/accessibility/data/defaults/itemdelegate.qml +++ b/tests/auto/accessibility/data/defaults/itemdelegate.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ItemDelegate { text: "ItemDelegate" diff --git a/tests/auto/accessibility/data/defaults/label.qml b/tests/auto/accessibility/data/defaults/label.qml index 6d7466bc..5f6a98cd 100644 --- a/tests/auto/accessibility/data/defaults/label.qml +++ b/tests/auto/accessibility/data/defaults/label.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Label { text: "Label" diff --git a/tests/auto/accessibility/data/defaults/menu.qml b/tests/auto/accessibility/data/defaults/menu.qml index 126914d1..07fef728 100644 --- a/tests/auto/accessibility/data/defaults/menu.qml +++ b/tests/auto/accessibility/data/defaults/menu.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Menu { } diff --git a/tests/auto/accessibility/data/defaults/menuitem.qml b/tests/auto/accessibility/data/defaults/menuitem.qml index 97fd478f..194fa988 100644 --- a/tests/auto/accessibility/data/defaults/menuitem.qml +++ b/tests/auto/accessibility/data/defaults/menuitem.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls MenuItem { text: "MenuItem" diff --git a/tests/auto/accessibility/data/defaults/page.qml b/tests/auto/accessibility/data/defaults/page.qml index 84036878..cd1f78e1 100644 --- a/tests/auto/accessibility/data/defaults/page.qml +++ b/tests/auto/accessibility/data/defaults/page.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Page { title: "Page" diff --git a/tests/auto/accessibility/data/defaults/pageindicator.qml b/tests/auto/accessibility/data/defaults/pageindicator.qml index 30184167..d64d5657 100644 --- a/tests/auto/accessibility/data/defaults/pageindicator.qml +++ b/tests/auto/accessibility/data/defaults/pageindicator.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls PageIndicator { } diff --git a/tests/auto/accessibility/data/defaults/pane.qml b/tests/auto/accessibility/data/defaults/pane.qml index bde4fad5..765c98a3 100644 --- a/tests/auto/accessibility/data/defaults/pane.qml +++ b/tests/auto/accessibility/data/defaults/pane.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Pane { } diff --git a/tests/auto/accessibility/data/defaults/popup.qml b/tests/auto/accessibility/data/defaults/popup.qml index 907d0c55..c599bd4c 100644 --- a/tests/auto/accessibility/data/defaults/popup.qml +++ b/tests/auto/accessibility/data/defaults/popup.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Popup { } diff --git a/tests/auto/accessibility/data/defaults/progressbar.qml b/tests/auto/accessibility/data/defaults/progressbar.qml index 74b2cb84..b3e287c3 100644 --- a/tests/auto/accessibility/data/defaults/progressbar.qml +++ b/tests/auto/accessibility/data/defaults/progressbar.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ProgressBar { from: 0 diff --git a/tests/auto/accessibility/data/defaults/radiobutton.qml b/tests/auto/accessibility/data/defaults/radiobutton.qml index 1b046d3e..d796b37e 100644 --- a/tests/auto/accessibility/data/defaults/radiobutton.qml +++ b/tests/auto/accessibility/data/defaults/radiobutton.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls RadioButton { text: "RadioButton" diff --git a/tests/auto/accessibility/data/defaults/radiodelegate.qml b/tests/auto/accessibility/data/defaults/radiodelegate.qml index f2bec8bc..d002b985 100644 --- a/tests/auto/accessibility/data/defaults/radiodelegate.qml +++ b/tests/auto/accessibility/data/defaults/radiodelegate.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls RadioDelegate { text: "RadioDelegate" diff --git a/tests/auto/accessibility/data/defaults/rangeslider.qml b/tests/auto/accessibility/data/defaults/rangeslider.qml index 95bff377..7bd364c4 100644 --- a/tests/auto/accessibility/data/defaults/rangeslider.qml +++ b/tests/auto/accessibility/data/defaults/rangeslider.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls RangeSlider { from: 0 diff --git a/tests/auto/accessibility/data/defaults/roundbutton.qml b/tests/auto/accessibility/data/defaults/roundbutton.qml index 20f0ed9a..6c78c0a4 100644 --- a/tests/auto/accessibility/data/defaults/roundbutton.qml +++ b/tests/auto/accessibility/data/defaults/roundbutton.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls RoundButton { text: "RoundButton" diff --git a/tests/auto/accessibility/data/defaults/scrollbar.qml b/tests/auto/accessibility/data/defaults/scrollbar.qml index 1e7cf155..c36b1534 100644 --- a/tests/auto/accessibility/data/defaults/scrollbar.qml +++ b/tests/auto/accessibility/data/defaults/scrollbar.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollBar { } diff --git a/tests/auto/accessibility/data/defaults/scrollindicator.qml b/tests/auto/accessibility/data/defaults/scrollindicator.qml index 24ef9271..5b2f44b6 100644 --- a/tests/auto/accessibility/data/defaults/scrollindicator.qml +++ b/tests/auto/accessibility/data/defaults/scrollindicator.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollIndicator { } diff --git a/tests/auto/accessibility/data/defaults/slider.qml b/tests/auto/accessibility/data/defaults/slider.qml index 0d1db79c..fd60a198 100644 --- a/tests/auto/accessibility/data/defaults/slider.qml +++ b/tests/auto/accessibility/data/defaults/slider.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Slider { from: 0 diff --git a/tests/auto/accessibility/data/defaults/spinbox.qml b/tests/auto/accessibility/data/defaults/spinbox.qml index 3da1f868..159e1f46 100644 --- a/tests/auto/accessibility/data/defaults/spinbox.qml +++ b/tests/auto/accessibility/data/defaults/spinbox.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls SpinBox { from: 0 diff --git a/tests/auto/accessibility/data/defaults/stackview.qml b/tests/auto/accessibility/data/defaults/stackview.qml index 48cb384e..bd540b91 100644 --- a/tests/auto/accessibility/data/defaults/stackview.qml +++ b/tests/auto/accessibility/data/defaults/stackview.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls StackView { } diff --git a/tests/auto/accessibility/data/defaults/swipedelegate.qml b/tests/auto/accessibility/data/defaults/swipedelegate.qml index d6f503c4..d3724d4d 100644 --- a/tests/auto/accessibility/data/defaults/swipedelegate.qml +++ b/tests/auto/accessibility/data/defaults/swipedelegate.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls SwipeDelegate { text: "SwipeDelegate" diff --git a/tests/auto/accessibility/data/defaults/swipeview.qml b/tests/auto/accessibility/data/defaults/swipeview.qml index efb185e6..9eb82216 100644 --- a/tests/auto/accessibility/data/defaults/swipeview.qml +++ b/tests/auto/accessibility/data/defaults/swipeview.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls SwipeView { } diff --git a/tests/auto/accessibility/data/defaults/switch.qml b/tests/auto/accessibility/data/defaults/switch.qml index b9c8a572..00213086 100644 --- a/tests/auto/accessibility/data/defaults/switch.qml +++ b/tests/auto/accessibility/data/defaults/switch.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Switch { text: "Switch" diff --git a/tests/auto/accessibility/data/defaults/switchdelegate.qml b/tests/auto/accessibility/data/defaults/switchdelegate.qml index d0d9599c..9f71ed68 100644 --- a/tests/auto/accessibility/data/defaults/switchdelegate.qml +++ b/tests/auto/accessibility/data/defaults/switchdelegate.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls SwitchDelegate { text: "SwitchDelegate" diff --git a/tests/auto/accessibility/data/defaults/tabbar.qml b/tests/auto/accessibility/data/defaults/tabbar.qml index d65b1305..423bfea9 100644 --- a/tests/auto/accessibility/data/defaults/tabbar.qml +++ b/tests/auto/accessibility/data/defaults/tabbar.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls TabBar { } diff --git a/tests/auto/accessibility/data/defaults/tabbutton.qml b/tests/auto/accessibility/data/defaults/tabbutton.qml index 72277a9f..ab9ea8ae 100644 --- a/tests/auto/accessibility/data/defaults/tabbutton.qml +++ b/tests/auto/accessibility/data/defaults/tabbutton.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls TabButton { text: "TabButton" diff --git a/tests/auto/accessibility/data/defaults/textarea.qml b/tests/auto/accessibility/data/defaults/textarea.qml index c861cda4..9a1f31d0 100644 --- a/tests/auto/accessibility/data/defaults/textarea.qml +++ b/tests/auto/accessibility/data/defaults/textarea.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls TextArea { text: "TextArea" diff --git a/tests/auto/accessibility/data/defaults/textfield.qml b/tests/auto/accessibility/data/defaults/textfield.qml index 222a1223..42a16bae 100644 --- a/tests/auto/accessibility/data/defaults/textfield.qml +++ b/tests/auto/accessibility/data/defaults/textfield.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls TextField { text: "TextField" diff --git a/tests/auto/accessibility/data/defaults/toolbar.qml b/tests/auto/accessibility/data/defaults/toolbar.qml index f8cbe311..01b93d7d 100644 --- a/tests/auto/accessibility/data/defaults/toolbar.qml +++ b/tests/auto/accessibility/data/defaults/toolbar.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ToolBar { } diff --git a/tests/auto/accessibility/data/defaults/toolbutton.qml b/tests/auto/accessibility/data/defaults/toolbutton.qml index 84d67cfa..40e1152e 100644 --- a/tests/auto/accessibility/data/defaults/toolbutton.qml +++ b/tests/auto/accessibility/data/defaults/toolbutton.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ToolButton { text: "ToolButton" diff --git a/tests/auto/accessibility/data/defaults/tooltip.qml b/tests/auto/accessibility/data/defaults/tooltip.qml index a6f7718d..f1c3cebe 100644 --- a/tests/auto/accessibility/data/defaults/tooltip.qml +++ b/tests/auto/accessibility/data/defaults/tooltip.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ToolTip { text: "ToolTip" diff --git a/tests/auto/accessibility/data/defaults/tumbler.qml b/tests/auto/accessibility/data/defaults/tumbler.qml index fda5c2bd..e3db175b 100644 --- a/tests/auto/accessibility/data/defaults/tumbler.qml +++ b/tests/auto/accessibility/data/defaults/tumbler.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Tumbler { } diff --git a/tests/auto/accessibility/data/override/abstractbutton.qml b/tests/auto/accessibility/data/override/abstractbutton.qml index 67344329..ac8efe26 100644 --- a/tests/auto/accessibility/data/override/abstractbutton.qml +++ b/tests/auto/accessibility/data/override/abstractbutton.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls AbstractButton { text: "AbstractButton" diff --git a/tests/auto/accessibility/data/override/busyindicator.qml b/tests/auto/accessibility/data/override/busyindicator.qml index cc2afbc5..439788d1 100644 --- a/tests/auto/accessibility/data/override/busyindicator.qml +++ b/tests/auto/accessibility/data/override/busyindicator.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls BusyIndicator { Accessible.name: "BusyIndicatorOverride" diff --git a/tests/auto/accessibility/data/override/button.qml b/tests/auto/accessibility/data/override/button.qml index 8e1bdb5f..578af86c 100644 --- a/tests/auto/accessibility/data/override/button.qml +++ b/tests/auto/accessibility/data/override/button.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Button { text: "Button" diff --git a/tests/auto/accessibility/data/override/checkbox.qml b/tests/auto/accessibility/data/override/checkbox.qml index ec532d65..5df73509 100644 --- a/tests/auto/accessibility/data/override/checkbox.qml +++ b/tests/auto/accessibility/data/override/checkbox.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls CheckBox { text: "CheckBox" diff --git a/tests/auto/accessibility/data/override/checkdelegate.qml b/tests/auto/accessibility/data/override/checkdelegate.qml index 94bb0ee0..43f65d50 100644 --- a/tests/auto/accessibility/data/override/checkdelegate.qml +++ b/tests/auto/accessibility/data/override/checkdelegate.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls CheckDelegate { text: "CheckDelegate" diff --git a/tests/auto/accessibility/data/override/combobox.qml b/tests/auto/accessibility/data/override/combobox.qml index dc087212..fa6ed3b4 100644 --- a/tests/auto/accessibility/data/override/combobox.qml +++ b/tests/auto/accessibility/data/override/combobox.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ComboBox { model: ["ComboBox"] diff --git a/tests/auto/accessibility/data/override/container.qml b/tests/auto/accessibility/data/override/container.qml index 987b8336..4e73f341 100644 --- a/tests/auto/accessibility/data/override/container.qml +++ b/tests/auto/accessibility/data/override/container.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Container { Accessible.name: "ContainerOverride" diff --git a/tests/auto/accessibility/data/override/control.qml b/tests/auto/accessibility/data/override/control.qml index 72f92c3d..9c2be461 100644 --- a/tests/auto/accessibility/data/override/control.qml +++ b/tests/auto/accessibility/data/override/control.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Control { Accessible.name: "ControlOverride" diff --git a/tests/auto/accessibility/data/override/dial.qml b/tests/auto/accessibility/data/override/dial.qml index 558b31ea..8dbf0e37 100644 --- a/tests/auto/accessibility/data/override/dial.qml +++ b/tests/auto/accessibility/data/override/dial.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Dial { Accessible.name: "DialOverride" diff --git a/tests/auto/accessibility/data/override/dialog.qml b/tests/auto/accessibility/data/override/dialog.qml index 30843ffd..d1f31971 100644 --- a/tests/auto/accessibility/data/override/dialog.qml +++ b/tests/auto/accessibility/data/override/dialog.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Dialog { title: "Dialog" diff --git a/tests/auto/accessibility/data/override/drawer.qml b/tests/auto/accessibility/data/override/drawer.qml index 9867d27d..02e973e2 100644 --- a/tests/auto/accessibility/data/override/drawer.qml +++ b/tests/auto/accessibility/data/override/drawer.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Drawer { Accessible.name: "DrawerOverride" diff --git a/tests/auto/accessibility/data/override/frame.qml b/tests/auto/accessibility/data/override/frame.qml index 0e99e8c3..55086b35 100644 --- a/tests/auto/accessibility/data/override/frame.qml +++ b/tests/auto/accessibility/data/override/frame.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Frame { Accessible.name: "FrameOverride" diff --git a/tests/auto/accessibility/data/override/groupbox.qml b/tests/auto/accessibility/data/override/groupbox.qml index ab58d30b..d09d0845 100644 --- a/tests/auto/accessibility/data/override/groupbox.qml +++ b/tests/auto/accessibility/data/override/groupbox.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls GroupBox { title: "GroupBox" diff --git a/tests/auto/accessibility/data/override/itemdelegate.qml b/tests/auto/accessibility/data/override/itemdelegate.qml index 4f25efd3..2f32cb75 100644 --- a/tests/auto/accessibility/data/override/itemdelegate.qml +++ b/tests/auto/accessibility/data/override/itemdelegate.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ItemDelegate { text: "ItemDelegate" diff --git a/tests/auto/accessibility/data/override/label.qml b/tests/auto/accessibility/data/override/label.qml index 235c0661..5c1310f8 100644 --- a/tests/auto/accessibility/data/override/label.qml +++ b/tests/auto/accessibility/data/override/label.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Label { text: "Label" diff --git a/tests/auto/accessibility/data/override/menu.qml b/tests/auto/accessibility/data/override/menu.qml index 15628ea5..57a1b3d6 100644 --- a/tests/auto/accessibility/data/override/menu.qml +++ b/tests/auto/accessibility/data/override/menu.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Menu { Accessible.name: "MenuOverride" diff --git a/tests/auto/accessibility/data/override/menuitem.qml b/tests/auto/accessibility/data/override/menuitem.qml index 89bdaf9a..e1c064f3 100644 --- a/tests/auto/accessibility/data/override/menuitem.qml +++ b/tests/auto/accessibility/data/override/menuitem.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls MenuItem { text: "MenuItem" diff --git a/tests/auto/accessibility/data/override/page.qml b/tests/auto/accessibility/data/override/page.qml index 0d275d84..b3b87e8a 100644 --- a/tests/auto/accessibility/data/override/page.qml +++ b/tests/auto/accessibility/data/override/page.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Page { title: "Page" diff --git a/tests/auto/accessibility/data/override/pageindicator.qml b/tests/auto/accessibility/data/override/pageindicator.qml index 4af84eda..f366464d 100644 --- a/tests/auto/accessibility/data/override/pageindicator.qml +++ b/tests/auto/accessibility/data/override/pageindicator.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls PageIndicator { Accessible.name: "PageIndicatorOverride" diff --git a/tests/auto/accessibility/data/override/pane.qml b/tests/auto/accessibility/data/override/pane.qml index b2f27db2..7b57e9a9 100644 --- a/tests/auto/accessibility/data/override/pane.qml +++ b/tests/auto/accessibility/data/override/pane.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Pane { Accessible.name: "PaneOverride" diff --git a/tests/auto/accessibility/data/override/popup.qml b/tests/auto/accessibility/data/override/popup.qml index e1126e2f..9d8d5855 100644 --- a/tests/auto/accessibility/data/override/popup.qml +++ b/tests/auto/accessibility/data/override/popup.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Popup { Accessible.name: "PopupOverride" diff --git a/tests/auto/accessibility/data/override/progressbar.qml b/tests/auto/accessibility/data/override/progressbar.qml index bba0998a..58bd2ae1 100644 --- a/tests/auto/accessibility/data/override/progressbar.qml +++ b/tests/auto/accessibility/data/override/progressbar.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ProgressBar { from: 0 diff --git a/tests/auto/accessibility/data/override/radiobutton.qml b/tests/auto/accessibility/data/override/radiobutton.qml index 89ad797d..3c555256 100644 --- a/tests/auto/accessibility/data/override/radiobutton.qml +++ b/tests/auto/accessibility/data/override/radiobutton.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls RadioButton { text: "RadioButton" diff --git a/tests/auto/accessibility/data/override/radiodelegate.qml b/tests/auto/accessibility/data/override/radiodelegate.qml index 1e6bee91..883f963c 100644 --- a/tests/auto/accessibility/data/override/radiodelegate.qml +++ b/tests/auto/accessibility/data/override/radiodelegate.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls RadioDelegate { text: "RadioDelegate" diff --git a/tests/auto/accessibility/data/override/rangeslider.qml b/tests/auto/accessibility/data/override/rangeslider.qml index 8758a19f..675c34aa 100644 --- a/tests/auto/accessibility/data/override/rangeslider.qml +++ b/tests/auto/accessibility/data/override/rangeslider.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls RangeSlider { from: 0 diff --git a/tests/auto/accessibility/data/override/roundbutton.qml b/tests/auto/accessibility/data/override/roundbutton.qml index c338afd1..a793ee28 100644 --- a/tests/auto/accessibility/data/override/roundbutton.qml +++ b/tests/auto/accessibility/data/override/roundbutton.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls RoundButton { text: "RoundButton" diff --git a/tests/auto/accessibility/data/override/scrollbar.qml b/tests/auto/accessibility/data/override/scrollbar.qml index 4849994f..6b3e613c 100644 --- a/tests/auto/accessibility/data/override/scrollbar.qml +++ b/tests/auto/accessibility/data/override/scrollbar.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollBar { Accessible.name: "ScrollBarOverride" diff --git a/tests/auto/accessibility/data/override/scrollindicator.qml b/tests/auto/accessibility/data/override/scrollindicator.qml index 2e85d8db..5cc1e5d4 100644 --- a/tests/auto/accessibility/data/override/scrollindicator.qml +++ b/tests/auto/accessibility/data/override/scrollindicator.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ScrollIndicator { Accessible.name: "ScrollIndicatorOverride" diff --git a/tests/auto/accessibility/data/override/slider.qml b/tests/auto/accessibility/data/override/slider.qml index 1fde4977..9239f8db 100644 --- a/tests/auto/accessibility/data/override/slider.qml +++ b/tests/auto/accessibility/data/override/slider.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Slider { from: 0 diff --git a/tests/auto/accessibility/data/override/spinbox.qml b/tests/auto/accessibility/data/override/spinbox.qml index 51c883b1..327f2a6d 100644 --- a/tests/auto/accessibility/data/override/spinbox.qml +++ b/tests/auto/accessibility/data/override/spinbox.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls SpinBox { from: 0 diff --git a/tests/auto/accessibility/data/override/stackview.qml b/tests/auto/accessibility/data/override/stackview.qml index dfc3e925..dd3b8342 100644 --- a/tests/auto/accessibility/data/override/stackview.qml +++ b/tests/auto/accessibility/data/override/stackview.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls StackView { Accessible.name: "StackViewOverride" diff --git a/tests/auto/accessibility/data/override/swipedelegate.qml b/tests/auto/accessibility/data/override/swipedelegate.qml index 9e3f00a9..bc97fc93 100644 --- a/tests/auto/accessibility/data/override/swipedelegate.qml +++ b/tests/auto/accessibility/data/override/swipedelegate.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls SwipeDelegate { text: "SwipeDelegate" diff --git a/tests/auto/accessibility/data/override/swipeview.qml b/tests/auto/accessibility/data/override/swipeview.qml index 9b3734b2..809b5362 100644 --- a/tests/auto/accessibility/data/override/swipeview.qml +++ b/tests/auto/accessibility/data/override/swipeview.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls SwipeView { Accessible.name: "SwipeViewOverride" diff --git a/tests/auto/accessibility/data/override/switch.qml b/tests/auto/accessibility/data/override/switch.qml index 9162a374..18e3eb70 100644 --- a/tests/auto/accessibility/data/override/switch.qml +++ b/tests/auto/accessibility/data/override/switch.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Switch { text: "Switch" diff --git a/tests/auto/accessibility/data/override/switchdelegate.qml b/tests/auto/accessibility/data/override/switchdelegate.qml index f1a99c69..0c66f9e9 100644 --- a/tests/auto/accessibility/data/override/switchdelegate.qml +++ b/tests/auto/accessibility/data/override/switchdelegate.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls SwitchDelegate { text: "SwitchDelegate" diff --git a/tests/auto/accessibility/data/override/tabbar.qml b/tests/auto/accessibility/data/override/tabbar.qml index 9e00d017..a959f68c 100644 --- a/tests/auto/accessibility/data/override/tabbar.qml +++ b/tests/auto/accessibility/data/override/tabbar.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls TabBar { Accessible.name: "TabBarOverride" diff --git a/tests/auto/accessibility/data/override/tabbutton.qml b/tests/auto/accessibility/data/override/tabbutton.qml index 2b9f83d1..1530a2d1 100644 --- a/tests/auto/accessibility/data/override/tabbutton.qml +++ b/tests/auto/accessibility/data/override/tabbutton.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls TabButton { text: "TabButton" diff --git a/tests/auto/accessibility/data/override/textarea.qml b/tests/auto/accessibility/data/override/textarea.qml index 00ebdb59..2b142225 100644 --- a/tests/auto/accessibility/data/override/textarea.qml +++ b/tests/auto/accessibility/data/override/textarea.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls TextArea { text: "TextArea" diff --git a/tests/auto/accessibility/data/override/textfield.qml b/tests/auto/accessibility/data/override/textfield.qml index 6f5bb469..42098b66 100644 --- a/tests/auto/accessibility/data/override/textfield.qml +++ b/tests/auto/accessibility/data/override/textfield.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls TextField { text: "TextField" diff --git a/tests/auto/accessibility/data/override/toolbar.qml b/tests/auto/accessibility/data/override/toolbar.qml index 170c8ce5..97406f8c 100644 --- a/tests/auto/accessibility/data/override/toolbar.qml +++ b/tests/auto/accessibility/data/override/toolbar.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ToolBar { Accessible.name: "ToolBarOverride" diff --git a/tests/auto/accessibility/data/override/toolbutton.qml b/tests/auto/accessibility/data/override/toolbutton.qml index 12b634e7..5ecb427b 100644 --- a/tests/auto/accessibility/data/override/toolbutton.qml +++ b/tests/auto/accessibility/data/override/toolbutton.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ToolButton { text: "ToolButton" diff --git a/tests/auto/accessibility/data/override/tooltip.qml b/tests/auto/accessibility/data/override/tooltip.qml index 92ff8396..1a4c3a99 100644 --- a/tests/auto/accessibility/data/override/tooltip.qml +++ b/tests/auto/accessibility/data/override/tooltip.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ToolTip { text: "ToolTip" diff --git a/tests/auto/accessibility/data/override/tumbler.qml b/tests/auto/accessibility/data/override/tumbler.qml index ac1221d7..947f66cd 100644 --- a/tests/auto/accessibility/data/override/tumbler.qml +++ b/tests/auto/accessibility/data/override/tumbler.qml @@ -1,5 +1,5 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Tumbler { Accessible.name: "TumblerOverride" diff --git a/tests/auto/accessibility/tst_accessibility.cpp b/tests/auto/accessibility/tst_accessibility.cpp index 220facb3..3d9a318d 100644 --- a/tests/auto/accessibility/tst_accessibility.cpp +++ b/tests/auto/accessibility/tst_accessibility.cpp @@ -177,8 +177,8 @@ void tst_accessibility::a11y() QCOMPARE(attached->role(), role); QCOMPARE(attached->name(), text); #else - Q_UNUSED(role) - Q_UNUSED(text) + Q_UNUSED(role); + Q_UNUSED(text); #endif } @@ -264,8 +264,8 @@ void tst_accessibility::override() QCOMPARE(attached->role(), role); QCOMPARE(attached->name(), name + "Override"); #else - Q_UNUSED(role) - Q_UNUSED(text) + Q_UNUSED(role); + Q_UNUSED(text); #endif } diff --git a/tests/auto/auto.pro b/tests/auto/auto.pro index 03b6369d..28d00c2a 100644 --- a/tests/auto/auto.pro +++ b/tests/auto/auto.pro @@ -24,10 +24,10 @@ SUBDIRS += \ qquickninepatchimage \ qquickpopup \ qquickstyle \ - qquickstyleselector \ qquickuniversalstyle \ qquickuniversalstyleconf \ revisions \ sanity \ snippets \ + styleimports \ translation diff --git a/tests/auto/controls/data/SignalSequenceSpy.qml b/tests/auto/controls/data/SignalSequenceSpy.qml index 531a7f68..40718c09 100644 --- a/tests/auto/controls/data/SignalSequenceSpy.qml +++ b/tests/auto/controls/data/SignalSequenceSpy.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick QtObject { property QtObject target: null diff --git a/tests/auto/controls/data/TestItem.qml b/tests/auto/controls/data/TestItem.qml index 6bd42bac..df81269c 100644 --- a/tests/auto/controls/data/TestItem.qml +++ b/tests/auto/controls/data/TestItem.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick Item { id: item diff --git a/tests/auto/controls/data/TumblerDatePicker.qml b/tests/auto/controls/data/TumblerDatePicker.qml index 01ff2c03..c11b504b 100644 --- a/tests/auto/controls/data/TumblerDatePicker.qml +++ b/tests/auto/controls/data/TumblerDatePicker.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Row { id: datePicker diff --git a/tests/auto/controls/data/TumblerListView.qml b/tests/auto/controls/data/TumblerListView.qml index 33504f33..a581c432 100644 --- a/tests/auto/controls/data/TumblerListView.qml +++ b/tests/auto/controls/data/TumblerListView.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ListView { implicitWidth: 60 diff --git a/tests/auto/controls/data/TumblerPathView.qml b/tests/auto/controls/data/TumblerPathView.qml index ec0d73ef..0f9be0e9 100644 --- a/tests/auto/controls/data/TumblerPathView.qml +++ b/tests/auto/controls/data/TumblerPathView.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls PathView { id: pathView diff --git a/tests/auto/controls/data/splitview/fillItemInMiddle.qml b/tests/auto/controls/data/splitview/fillItemInMiddle.qml index 174b6a2a..0acac9eb 100644 --- a/tests/auto/controls/data/splitview/fillItemInMiddle.qml +++ b/tests/auto/controls/data/splitview/fillItemInMiddle.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.13 -import QtQuick.Controls 2.13 +import QtQuick +import QtQuick.Controls SplitView { anchors.fill: parent diff --git a/tests/auto/controls/data/splitview/fillItemOnLeft.qml b/tests/auto/controls/data/splitview/fillItemOnLeft.qml index dee68eac..6f9c6e0b 100644 --- a/tests/auto/controls/data/splitview/fillItemOnLeft.qml +++ b/tests/auto/controls/data/splitview/fillItemOnLeft.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.13 -import QtQuick.Controls 2.13 +import QtQuick +import QtQuick.Controls SplitView { anchors.fill: parent diff --git a/tests/auto/controls/data/splitview/fillItemOnTop.qml b/tests/auto/controls/data/splitview/fillItemOnTop.qml index 2fc6f4d0..2955aa61 100644 --- a/tests/auto/controls/data/splitview/fillItemOnTop.qml +++ b/tests/auto/controls/data/splitview/fillItemOnTop.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.13 -import QtQuick.Controls 2.13 +import QtQuick +import QtQuick.Controls SplitView { anchors.fill: parent diff --git a/tests/auto/controls/data/tst_abstractbutton.qml b/tests/auto/controls/data/tst_abstractbutton.qml index da5642cc..bb1dfac2 100644 --- a/tests/auto/controls/data/tst_abstractbutton.qml +++ b/tests/auto/controls/data/tst_abstractbutton.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_action.qml b/tests/auto/controls/data/tst_action.qml index 0e41b7f3..946382ee 100644 --- a/tests/auto/controls/data/tst_action.qml +++ b/tests/auto/controls/data/tst_action.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtTest +import QtQuick.Controls +import QtQuick.Templates as T TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_actiongroup.qml b/tests/auto/controls/data/tst_actiongroup.qml index 6c8ea5c4..e4ea5679 100644 --- a/tests/auto/controls/data/tst_actiongroup.qml +++ b/tests/auto/controls/data/tst_actiongroup.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_busyindicator.qml b/tests/auto/controls/data/tst_busyindicator.qml index 7801cdab..9353c338 100644 --- a/tests/auto/controls/data/tst_busyindicator.qml +++ b/tests/auto/controls/data/tst_busyindicator.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_button.qml b/tests/auto/controls/data/tst_button.qml index 83a6ea61..f27e5bcb 100644 --- a/tests/auto/controls/data/tst_button.qml +++ b/tests/auto/controls/data/tst_button.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase @@ -467,11 +467,11 @@ TestCase { var control = createTemporaryObject(button, testCase, { text: "Button", display: data.display, - "icon.source": "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png", + "icon.source": "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png", "LayoutMirroring.enabled": !!data.mirrored }) verify(control) - compare(control.icon.source, "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png") + compare(control.icon.source, "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png") var iconImage = findChild(control.contentItem, "image") var textLabel = findChild(control.contentItem, "label") diff --git a/tests/auto/controls/data/tst_buttongroup.qml b/tests/auto/controls/data/tst_buttongroup.qml index 1abb9795..138c0e24 100644 --- a/tests/auto/controls/data/tst_buttongroup.qml +++ b/tests/auto/controls/data/tst_buttongroup.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_checkbox.qml b/tests/auto/controls/data/tst_checkbox.qml index 1f00294f..81c3d6ca 100644 --- a/tests/auto/controls/data/tst_checkbox.qml +++ b/tests/auto/controls/data/tst_checkbox.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_checkdelegate.qml b/tests/auto/controls/data/tst_checkdelegate.qml index 0c0565f1..e5137787 100644 --- a/tests/auto/controls/data/tst_checkdelegate.qml +++ b/tests/auto/controls/data/tst_checkdelegate.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase @@ -126,11 +126,11 @@ TestCase { text: "CheckDelegate", display: data.display, width: 400, - "icon.source": "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png", + "icon.source": "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png", "LayoutMirroring.enabled": !!data.mirrored }) verify(control) - compare(control.icon.source, "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png") + compare(control.icon.source, "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png") var iconImage = findChild(control.contentItem, "image") var textLabel = findChild(control.contentItem, "label") diff --git a/tests/auto/controls/data/tst_combobox.qml b/tests/auto/controls/data/tst_combobox.qml index 64a525bf..4755c92b 100644 --- a/tests/auto/controls/data/tst_combobox.qml +++ b/tests/auto/controls/data/tst_combobox.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.14 -import QtQuick.Window 2.2 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtTest +import QtQuick.Controls TestCase { id: testCase @@ -215,9 +215,9 @@ TestCase { var control = createTemporaryObject(emptyBox, testCase, {textRole: "text"}) verify(control) - var obj1 = Qt.createQmlObject("import QtQml 2.0; QtObject { property string text: 'one' }", control) - var obj2 = Qt.createQmlObject("import QtQml 2.0; QtObject { property string text: 'two' }", control) - var obj3 = Qt.createQmlObject("import QtQml 2.0; QtObject { property string text: 'three' }", control) + var obj1 = Qt.createQmlObject("import QtQml; QtObject { property string text: 'one' }", control) + var obj2 = Qt.createQmlObject("import QtQml; QtObject { property string text: 'two' }", control) + var obj3 = Qt.createQmlObject("import QtQml; QtObject { property string text: 'three' }", control) control.model = [obj1, obj2, obj3] @@ -911,6 +911,28 @@ TestCase { compare(control.popup.visible, true) verify(control.popup.contentItem.y < control.y) + + // Account for when a transition of a scale from 0.9-1.0 that it is placed above right away and not below + // first just because there is room at the 0.9 scale + if (control.popup.enter !== null) { + // hide + mouseClick(control) + compare(control.pressed, false) + tryCompare(control.popup, "visible", false) + control.y = control.Window.height - (control.popup.contentItem.height * 0.99) + var popupYSpy = createTemporaryObject(signalSpy, testCase, {target: control.popup, signalName: "yChanged"}) + verify(popupYSpy.valid) + mousePress(control) + compare(control.pressed, true) + compare(control.popup.visible, false) + mouseRelease(control) + compare(control.pressed, false) + compare(control.popup.visible, true) + tryCompare(control.popup.enter, "running", false) + verify(control.popup.contentItem.y < control.y) + verify(popupYSpy.count === 1) + } + // follow the control outside the horizontal window bounds control.x = -control.width / 2 compare(control.x, -control.width / 2) @@ -1970,4 +1992,182 @@ TestCase { compare(comboBox1.currentIndex, 9) compare(currentIndexSpy.count, 1) } + + Component { + id: appFontTextFieldComponent + TextField { + objectName: "appFontTextField" + font: Qt.application.font + // We don't want the background's implicit width to interfere with our tests, + // which are about implicit width of the contentItem of ComboBox, which is by default TextField. + background: null + } + } + + Component { + id: appFontContentItemComboBoxComponent + ComboBox { + // Override the contentItem so that the font doesn't vary between styles. + contentItem: TextField { + objectName: "appFontContentItemTextField" + // We do this just to be extra sure that the font never comes from the control, + // as we want it to match that of the TextField in the appFontTextFieldComponent. + font: Qt.application.font + background: null + } + } + } + + Component { + id: twoItemListModelComponent + + ListModel { + ListElement { display: "Short" } + ListElement { display: "Kinda long" } + } + } + + function appendedToModel(model, item) { + if (Array.isArray(model)) { + let newModel = model + newModel.push(item) + return newModel + } + + if (model.hasOwnProperty("append")) { + model.append({ display: item }) + // To account for the fact that changes to a JS array are not seen by the QML engine, + // we need to reassign the entire model and hence return it. For simplicity in the + // calling code, we do it for the ListModel code path too. It should be a no-op. + return model + } + + console.warn("appendedToModel: unrecognised model") + return undefined + } + + function removedFromModel(model, index, count) { + if (Array.isArray(model)) { + let newModel = model + newModel.splice(index, count) + return newModel + } + + if (model.hasOwnProperty("remove")) { + model.remove(index, count) + return model + } + + console.warn("removedFromModel: unrecognised model") + return undefined + } + + // We don't use a data-driven test for the policy because the checks vary a lot based on which enum we're testing. + function test_implicitContentWidthPolicy_ContentItemImplicitWidth() { + // Set ContentItemImplicitWidth and ensure that implicitContentWidth is as wide as the current item + // by comparing it against the implicitWidth of an identical TextField + let control = createTemporaryObject(appFontContentItemComboBoxComponent, testCase, { + model: ["Short", "Kinda long"], + implicitContentWidthPolicy: ComboBox.ContentItemImplicitWidth + }) + verify(control) + compare(control.implicitContentWidthPolicy, ComboBox.ContentItemImplicitWidth) + + let textField = createTemporaryObject(appFontTextFieldComponent, testCase) + verify(textField) + // Don't set any text on textField because we're not accounting for the widest + // text here, so we want to compare it against an empty TextField. + compare(control.implicitContentWidth, textField.implicitWidth) + + textField.font.pixelSize *= 2 + control.font.pixelSize *= 2 + compare(control.implicitContentWidth, textField.implicitWidth) + } + + function test_implicitContentWidthPolicy_WidestText_data() { + return [ + { tag: "Array", model: ["Short", "Kinda long"] }, + { tag: "ListModel", model: twoItemListModelComponent.createObject(testCase) }, + ] + } + + function test_implicitContentWidthPolicy_WidestText(data) { + let control = createTemporaryObject(appFontContentItemComboBoxComponent, testCase, { + model: data.model, + implicitContentWidthPolicy: ComboBox.WidestText + }) + verify(control) + compare(control.implicitContentWidthPolicy, ComboBox.WidestText) + + let textField = createTemporaryObject(appFontTextFieldComponent, testCase) + verify(textField) + textField.text = "Kinda long" + // Note that we don't need to change the current index here, as the implicitContentWidth + // is set to the implicitWidth of the TextField within the ComboBox as if it had the largest + // text from the model set on it. + // We use Math.ceil because TextInput uses qCeil internally, whereas the implicitWidth + // binding for TextField does not. + compare(Math.ceil(control.implicitContentWidth), Math.ceil(textField.implicitWidth)) + + // Add a longer item; it should affect the implicit content width. + let modifiedModel = appendedToModel(data.model, "Moderately long") + control.model = modifiedModel + textField.text = "Moderately long" + compare(Math.ceil(control.implicitContentWidth), Math.ceil(textField.implicitWidth)) + + // Remove the last two items; it should use the only remaining item's width. + modifiedModel = removedFromModel(data.model, 1, 2) + control.model = modifiedModel + compare(control.count, 1) + compare(control.currentText, "Short") + textField.text = "Short" + compare(Math.ceil(control.implicitContentWidth), Math.ceil(textField.implicitWidth)) + + // Changes in font should result in the implicitContentWidth being updated. + textField.font.pixelSize *= 2 + // We have to change the contentItem's font size manually since we break the + // style's binding to the control's font when we set Qt.application.font to it. + control.contentItem.font.pixelSize *= 2 + control.font.pixelSize *= 2 + compare(Math.ceil(control.implicitContentWidth), Math.ceil(textField.implicitWidth)) + } + + function test_implicitContentWidthPolicy_WidestTextWhenCompleted_data() { + return test_implicitContentWidthPolicy_WidestText_data() + } + + function test_implicitContentWidthPolicy_WidestTextWhenCompleted(data) { + let control = createTemporaryObject(appFontContentItemComboBoxComponent, testCase, { + model: data.model, + implicitContentWidthPolicy: ComboBox.WidestTextWhenCompleted + }) + verify(control) + compare(control.implicitContentWidthPolicy, ComboBox.WidestTextWhenCompleted) + + let textField = createTemporaryObject(appFontTextFieldComponent, testCase) + verify(textField) + textField.text = "Kinda long" + compare(Math.ceil(control.implicitContentWidth), Math.ceil(textField.implicitWidth)) + + // Add a longer item; it should not affect the implicit content width + // since we've already accounted for it once. + let modifiedModel = appendedToModel(data.model, "Moderately long") + control.model = modifiedModel + compare(Math.ceil(control.implicitContentWidth), Math.ceil(textField.implicitWidth)) + + // Remove the last two items; it should still not affect the implicit content width. + modifiedModel = removedFromModel(data.model, 1, 2) + control.model = modifiedModel + compare(control.count, 1) + compare(control.currentText, "Short") + compare(Math.ceil(control.implicitContentWidth), Math.ceil(textField.implicitWidth)) + + // Changes in font should not result in the implicitContentWidth being updated. + let oldTextFieldImplicitWidth = textField.implicitWidth + // Changes in font should result in the implicitContentWidth being updated. + textField.font.pixelSize *= 2 + control.contentItem.font.pixelSize *= 2 + control.font.pixelSize *= 2 + compare(Math.ceil(control.implicitContentWidth), Math.ceil(oldTextFieldImplicitWidth)) + } } diff --git a/tests/auto/controls/data/tst_container.qml b/tests/auto/controls/data/tst_container.qml index c04a3402..be2b9a12 100644 --- a/tests/auto/controls/data/tst_container.qml +++ b/tests/auto/controls/data/tst_container.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtTest +import QtQuick.Controls +import QtQuick.Templates as T TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_control.qml b/tests/auto/controls/data/tst_control.qml index 3c416546..1bbbe42a 100644 --- a/tests/auto/controls/data/tst_control.qml +++ b/tests/auto/controls/data/tst_control.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtTest +import QtQuick.Controls +import QtQuick.Templates as T TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_delaybutton.qml b/tests/auto/controls/data/tst_delaybutton.qml index e965b5ef..731caf86 100644 --- a/tests/auto/controls/data/tst_delaybutton.qml +++ b/tests/auto/controls/data/tst_delaybutton.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_dial.qml b/tests/auto/controls/data/tst_dial.qml index 26f30c33..70645f8d 100644 --- a/tests/auto/controls/data/tst_dial.qml +++ b/tests/auto/controls/data/tst_dial.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_dialog.qml b/tests/auto/controls/data/tst_dialog.qml index 1bfffc1d..53d27fd3 100644 --- a/tests/auto/controls/data/tst_dialog.qml +++ b/tests/auto/controls/data/tst_dialog.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtTest +import QtQuick.Controls +import QtQuick.Templates as T TestCase { id: testCase @@ -411,4 +411,40 @@ TestCase { button.clicked() compare(buttonSpy.count, 1) } + + Component { + id: qtbug85884 + ApplicationWindow { + property alias focusItemActiveFocus: item.activeFocus + property alias focusDialogVisible: dialog.visible + visible: true + Item { + id: item + focus: true + } + Dialog { + id: dialog + focus: true + visible: false + onActiveFocusChanged: { + if (!activeFocus) + visible = false + } + } + } + } + + function test_focusLeavingDialog(data) { + var window = createTemporaryObject(qtbug85884, testCase) + verify(window) + tryCompare(window, "focusItemActiveFocus", true) + + window.focusDialogVisible = true + tryCompare(window, "focusDialogVisible", true) + tryCompare(window, "focusItemActiveFocus", false) + + window.focusDialogVisible = false + tryCompare(window, "focusDialogVisible", false) + tryCompare(window, "focusItemActiveFocus", true) + } } diff --git a/tests/auto/controls/data/tst_dialogbuttonbox.qml b/tests/auto/controls/data/tst_dialogbuttonbox.qml index a651713a..16a5fe5e 100644 --- a/tests/auto/controls/data/tst_dialogbuttonbox.qml +++ b/tests/auto/controls/data/tst_dialogbuttonbox.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_frame.qml b/tests/auto/controls/data/tst_frame.qml index a5236b71..95c69144 100644 --- a/tests/auto/controls/data/tst_frame.qml +++ b/tests/auto/controls/data/tst_frame.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_groupbox.qml b/tests/auto/controls/data/tst_groupbox.qml index a4f1b5f3..ed714897 100644 --- a/tests/auto/controls/data/tst_groupbox.qml +++ b/tests/auto/controls/data/tst_groupbox.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_itemdelegate.qml b/tests/auto/controls/data/tst_itemdelegate.qml index 1c236361..6a4b29b4 100644 --- a/tests/auto/controls/data/tst_itemdelegate.qml +++ b/tests/auto/controls/data/tst_itemdelegate.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase @@ -118,11 +118,11 @@ TestCase { text: "ItemDelegate", display: data.display, width: 400, - "icon.source": "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png", + "icon.source": "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png", "LayoutMirroring.enabled": !!data.mirrored }) verify(control) - compare(control.icon.source, "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png") + compare(control.icon.source, "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png") var iconImage = findChild(control.contentItem, "image") var textLabel = findChild(control.contentItem, "label") diff --git a/tests/auto/controls/data/tst_label.qml b/tests/auto/controls/data/tst_label.qml index 8384e932..d6efb137 100644 --- a/tests/auto/controls/data/tst_label.qml +++ b/tests/auto/controls/data/tst_label.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_menuitem.qml b/tests/auto/controls/data/tst_menuitem.qml index ef074d1d..be84ae90 100644 --- a/tests/auto/controls/data/tst_menuitem.qml +++ b/tests/auto/controls/data/tst_menuitem.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase @@ -119,11 +119,11 @@ TestCase { var control = createTemporaryObject(menuItem, testCase, { text: "MenuItem", display: data.display, - "icon.source": "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png", + "icon.source": "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png", "LayoutMirroring.enabled": !!data.mirrored }) verify(control) - compare(control.icon.source, "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png") + compare(control.icon.source, "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png") var padding = data.mirrored ? control.contentItem.rightPadding : control.contentItem.leftPadding var iconImage = findChild(control.contentItem, "image") diff --git a/tests/auto/controls/data/tst_page.qml b/tests/auto/controls/data/tst_page.qml index 252c6ebf..ae78a125 100644 --- a/tests/auto/controls/data/tst_page.qml +++ b/tests/auto/controls/data/tst_page.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_pageindicator.qml b/tests/auto/controls/data/tst_pageindicator.qml index 0f68b5d8..765c52a7 100644 --- a/tests/auto/controls/data/tst_pageindicator.qml +++ b/tests/auto/controls/data/tst_pageindicator.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_pane.qml b/tests/auto/controls/data/tst_pane.qml index 4006474b..d44d7424 100644 --- a/tests/auto/controls/data/tst_pane.qml +++ b/tests/auto/controls/data/tst_pane.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_popup.qml b/tests/auto/controls/data/tst_popup.qml index 71d6f2d7..2c94e87b 100644 --- a/tests/auto/controls/data/tst_popup.qml +++ b/tests/auto/controls/data/tst_popup.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtTest +import QtQuick.Controls +import QtQuick.Templates as T TestCase { id: testCase @@ -1062,8 +1062,8 @@ TestCase { function findOverlay(window, popup) { var item = popup.contentItem.parent - var idx = indexOf(window.overlay.children, item) - return window.overlay.children[idx - 1] + var idx = indexOf(window.Overlay.overlay.children, item) + return window.Overlay.overlay.children[idx - 1] } function test_overlay() { @@ -1073,42 +1073,41 @@ TestCase { window.requestActivate() tryCompare(window, "active", true) - compare(window.overlay.children.length, 0) - compare(window.overlay, window.Overlay.overlay) + compare(window.Overlay.overlay.children.length, 0) var firstOverlay = findOverlay(window, window.firstDrawer) verify(!firstOverlay) window.firstDrawer.open() - compare(window.overlay.children.length, 2) // 1 drawer + 1 overlay + compare(window.Overlay.overlay.children.length, 2) // 1 drawer + 1 overlay firstOverlay = findOverlay(window, window.firstDrawer) verify(firstOverlay) compare(firstOverlay.z, window.firstDrawer.z) - compare(indexOf(window.overlay.children, firstOverlay), - indexOf(window.overlay.children, window.firstDrawer.contentItem.parent) - 1) + compare(indexOf(window.Overlay.overlay.children, firstOverlay), + indexOf(window.Overlay.overlay.children, window.firstDrawer.contentItem.parent) - 1) tryCompare(firstOverlay, "opacity", 1.0) var secondOverlay = findOverlay(window, window.secondDrawer) verify(!secondOverlay) window.secondDrawer.open() - compare(window.overlay.children.length, 4) // 2 drawers + 2 overlays + compare(window.Overlay.overlay.children.length, 4) // 2 drawers + 2 overlays secondOverlay = findOverlay(window, window.secondDrawer) verify(secondOverlay) compare(secondOverlay.z, window.secondDrawer.z) - compare(indexOf(window.overlay.children, secondOverlay), - indexOf(window.overlay.children, window.secondDrawer.contentItem.parent) - 1) + compare(indexOf(window.Overlay.overlay.children, secondOverlay), + indexOf(window.Overlay.overlay.children, window.secondDrawer.contentItem.parent) - 1) tryCompare(secondOverlay, "opacity", 1.0) window.firstDrawer.close() tryCompare(window.firstDrawer, "visible", false) firstOverlay = findOverlay(window, window.firstDrawer) verify(!firstOverlay) - compare(window.overlay.children.length, 2) // 1 drawer + 1 overlay + compare(window.Overlay.overlay.children.length, 2) // 1 drawer + 1 overlay window.secondDrawer.close() tryCompare(window.secondDrawer, "visible", false) secondOverlay = findOverlay(window, window.secondDrawer) verify(!secondOverlay) - compare(window.overlay.children.length, 0) + compare(window.Overlay.overlay.children.length, 0) var modalOverlay = findOverlay(window, window.modalPopup) verify(!modalOverlay) @@ -1118,7 +1117,7 @@ TestCase { compare(modalOverlay.z, window.modalPopup.z) compare(window.modalPopup.visible, true) tryCompare(modalOverlay, "opacity", 1.0) - compare(window.overlay.children.length, 2) // 1 popup + 1 overlay + compare(window.Overlay.overlay.children.length, 2) // 1 popup + 1 overlay var modelessOverlay = findOverlay(window, window.modelessPopup) verify(!modelessOverlay) @@ -1128,13 +1127,13 @@ TestCase { compare(modelessOverlay.z, window.modelessPopup.z) compare(window.modelessPopup.visible, true) tryCompare(modelessOverlay, "opacity", 1.0) - compare(window.overlay.children.length, 4) // 2 popups + 2 overlays + compare(window.Overlay.overlay.children.length, 4) // 2 popups + 2 overlays window.modelessPopup.close() tryCompare(window.modelessPopup, "visible", false) modelessOverlay = findOverlay(window, window.modelessPopup) verify(!modelessOverlay) - compare(window.overlay.children.length, 2) // 1 popup + 1 overlay + compare(window.Overlay.overlay.children.length, 2) // 1 popup + 1 overlay compare(window.modalPopup.visible, true) compare(modalOverlay.opacity, 1.0) @@ -1143,29 +1142,29 @@ TestCase { tryCompare(window.modalPopup, "visible", false) modalOverlay = findOverlay(window, window.modalPopup) verify(!modalOverlay) - compare(window.overlay.children.length, 0) + compare(window.Overlay.overlay.children.length, 0) window.plainPopup.open() tryCompare(window.plainPopup, "visible", true) - compare(window.overlay.children.length, 1) // only popup added, no overlays involved + compare(window.Overlay.overlay.children.length, 1) // only popup added, no overlays involved window.plainPopup.modal = true - compare(window.overlay.children.length, 2) // overlay added + compare(window.Overlay.overlay.children.length, 2) // overlay added window.plainPopup.close() tryCompare(window.plainPopup, "visible", false) - compare(window.overlay.children.length, 0) // popup + overlay removed + compare(window.Overlay.overlay.children.length, 0) // popup + overlay removed window.modalPopupWithoutDim.open() tryCompare(window.modalPopupWithoutDim, "visible", true) - compare(window.overlay.children.length, 1) // only popup added, no overlays involved + compare(window.Overlay.overlay.children.length, 1) // only popup added, no overlays involved window.modalPopupWithoutDim.dim = true - compare(window.overlay.children.length, 2) // overlay added + compare(window.Overlay.overlay.children.length, 2) // overlay added window.modalPopupWithoutDim.close() tryCompare(window.modalPopupWithoutDim, "visible", false) - compare(window.overlay.children.length, 0) // popup + overlay removed + compare(window.Overlay.overlay.children.length, 0) // popup + overlay removed } function test_attached_applicationwindow() { @@ -1276,6 +1275,9 @@ TestCase { { visible: true, width: 100, height: 100 }) verify(control) verify(control.visible) + // If there is a transition then make sure it is finished + if (control.enter !== null) + tryCompare(control.enter, "running", false) compare(control.parent, control.Overlay.overlay) compare(control.x, 0) compare(control.y, 0) diff --git a/tests/auto/controls/data/tst_progressbar.qml b/tests/auto/controls/data/tst_progressbar.qml index 74840551..1bb66bb7 100644 --- a/tests/auto/controls/data/tst_progressbar.qml +++ b/tests/auto/controls/data/tst_progressbar.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_radiobutton.qml b/tests/auto/controls/data/tst_radiobutton.qml index c16f615c..42ef9a15 100644 --- a/tests/auto/controls/data/tst_radiobutton.qml +++ b/tests/auto/controls/data/tst_radiobutton.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_radiodelegate.qml b/tests/auto/controls/data/tst_radiodelegate.qml index ff11fffb..9a4e2812 100644 --- a/tests/auto/controls/data/tst_radiodelegate.qml +++ b/tests/auto/controls/data/tst_radiodelegate.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase @@ -126,11 +126,11 @@ TestCase { text: "RadioDelegate", display: data.display, width: 400, - "icon.source": "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png", + "icon.source": "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png", "LayoutMirroring.enabled": !!data.mirrored }) verify(control) - compare(control.icon.source, "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png") + compare(control.icon.source, "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png") var iconImage = findChild(control.contentItem, "image") var textLabel = findChild(control.contentItem, "label") diff --git a/tests/auto/controls/data/tst_rangeslider.qml b/tests/auto/controls/data/tst_rangeslider.qml index 24f8a207..55fedd1c 100644 --- a/tests/auto/controls/data/tst_rangeslider.qml +++ b/tests/auto/controls/data/tst_rangeslider.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_roundbutton.qml b/tests/auto/controls/data/tst_roundbutton.qml index 5f4cc5fa..c683d457 100644 --- a/tests/auto/controls/data/tst_roundbutton.qml +++ b/tests/auto/controls/data/tst_roundbutton.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase @@ -122,11 +122,11 @@ TestCase { var control = createTemporaryObject(roundButton, testCase, { text: "RoundButton", display: data.display, - "icon.source": "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png", + "icon.source": "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png", "LayoutMirroring.enabled": !!data.mirrored }) verify(control) - compare(control.icon.source, "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png") + compare(control.icon.source, "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png") var iconImage = findChild(control.contentItem, "image") var textLabel = findChild(control.contentItem, "label") diff --git a/tests/auto/controls/data/tst_scrollbar.qml b/tests/auto/controls/data/tst_scrollbar.qml index 9d21fa8b..29b04c53 100644 --- a/tests/auto/controls/data/tst_scrollbar.qml +++ b/tests/auto/controls/data/tst_scrollbar.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_scrollindicator.qml b/tests/auto/controls/data/tst_scrollindicator.qml index c23bf3e5..5f6006d4 100644 --- a/tests/auto/controls/data/tst_scrollindicator.qml +++ b/tests/auto/controls/data/tst_scrollindicator.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_scrollview.qml b/tests/auto/controls/data/tst_scrollview.qml index 87c39509..d8c210a4 100644 --- a/tests/auto/controls/data/tst_scrollview.qml +++ b/tests/auto/controls/data/tst_scrollview.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_slider.qml b/tests/auto/controls/data/tst_slider.qml index 280138c5..9f123476 100644 --- a/tests/auto/controls/data/tst_slider.qml +++ b/tests/auto/controls/data/tst_slider.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_spinbox.qml b/tests/auto/controls/data/tst_spinbox.qml index a5c40cd3..5898ff52 100644 --- a/tests/auto/controls/data/tst_spinbox.qml +++ b/tests/auto/controls/data/tst_spinbox.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.14 -import QtTest 1.0 -import QtQuick.Controls 2.12 -import QtQuick.Window 2.12 +import QtQuick +import QtTest +import QtQuick.Controls +import QtQuick.Window TestCase { id: testCase @@ -549,6 +549,12 @@ TestCase { compare(valueFromTextCalls, data.editable ? 3 : 0) } + function test_callDefaultValueFromText() { + var control = createTemporaryObject(spinBox, testCase) + verify(control) + compare(control.valueFromText("123", control.locale), 123) + } + function test_autoRepeat() { var control = createTemporaryObject(spinBox, testCase) verify(control) @@ -659,6 +665,12 @@ TestCase { } } + function test_callDefaultTextFromValue() { + var control = createTemporaryObject(spinBox, testCase) + verify(control) + compare(control.textFromValue(123, control.locale), "123") + } + Component { id: overriddenSpinBox SpinBox { diff --git a/tests/auto/controls/data/tst_splitview.qml b/tests/auto/controls/data/tst_splitview.qml index d78ef95a..ac6d1a4d 100644 --- a/tests/auto/controls/data/tst_splitview.qml +++ b/tests/auto/controls/data/tst_splitview.qml @@ -48,11 +48,11 @@ ** ****************************************************************************/ -import QtQuick 2.13 -import QtQuick.Controls 2.13 -import QtQuick.Window 2.13 -import QtTest 1.13 -import Qt.labs.settings 1.0 +import QtQuick +import QtQuick.Controls +import QtQuick.Window +import QtTest +import Qt.labs.settings TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_stackview.qml b/tests/auto/controls/data/tst_stackview.qml index 767ec818..a3df827a 100644 --- a/tests/auto/controls/data/tst_stackview.qml +++ b/tests/auto/controls/data/tst_stackview.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase @@ -406,7 +406,7 @@ TestCase { // unsupported type ignoreWarning(Qt.resolvedUrl("tst_stackview.qml") + ":69:9: QML StackView: push: QtObject is not supported. Must be Item or Component.") - control.push(Qt.createQmlObject('import QtQml 2.0; QtObject { }', control)) + control.push(Qt.createQmlObject('import QtQml; QtObject { }', control)) // push(item) var item1 = component.createObject(control, {objectName:"1"}) @@ -506,7 +506,7 @@ TestCase { // unsupported type ignoreWarning(Qt.resolvedUrl("tst_stackview.qml") + ":69:9: QML StackView: replace: QtObject is not supported. Must be Item or Component.") - compare(control.replace(Qt.createQmlObject('import QtQml 2.0; QtObject { }', control)), null) + compare(control.replace(Qt.createQmlObject('import QtQml; QtObject { }', control)), null) // replace(item) var item1 = component.createObject(control, {objectName:"1"}) diff --git a/tests/auto/controls/data/tst_swipedelegate.qml b/tests/auto/controls/data/tst_swipedelegate.qml index 71eb0b99..98273066 100644 --- a/tests/auto/controls/data/tst_swipedelegate.qml +++ b/tests/auto/controls/data/tst_swipedelegate.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { @@ -196,7 +196,8 @@ TestCase { mousePress(control, control.width / 2, control.height / 2, Qt.LeftButton); mouseMove(control, control.width / 2 + distance, control.height / 2); mouseRelease(control, control.width / 2 + distance, control.height / 2, Qt.LeftButton); - compare(control.swipe.position, to); + compare(control.swipe.position, to, "Expected swipe.position to be " + to + + " after swiping from " + from + ", but it's " + control.swipe.position); if (control.swipe.position === -1.0) { if (control.swipe.right) @@ -1110,6 +1111,70 @@ TestCase { swipe(control, 0.0, -1.0); } + function test_callCloseWhenAlreadyClosed() { + let control = createTemporaryObject(swipeDelegateComponent, testCase) + verify(control) + + let closedSpy = signalSpyComponent.createObject(control, { target: control.swipe, signalName: "closed" }) + verify(closedSpy) + verify(closedSpy.valid) + + // Calling close() when it's already closed should have no effect. + control.swipe.close() + compare(closedSpy.count, 0) + + // The game goes for calling close() in response to a click. + control.clicked.connect(function() { control.swipe.close() }) + mouseClick(control) + compare(closedSpy.count, 0) + } + + // Can't just connect to pressed in QML, because there is a pressed property + // that conflicts with the signal. + Component { + id: swipeDelegateCloseOnPressedComponent + + SwipeDelegate { + text: "SwipeDelegate" + width: 150 + swipe.right: Rectangle { + objectName: "rightItem" + width: parent.width / 2 + height: parent.height + color: "tomato" + } + + onPressed: swipe.close() + } + } + + /* + We don't want to support closing on pressed(); released() or clicked() + should be used instead. However, calling swipe.close() in response to + a press should still not cause closed() to be emitted. + */ + function test_closeOnPressed() { + let control = createTemporaryObject(swipeDelegateCloseOnPressedComponent, testCase) + verify(control) + + swipe(control, 0.0, -1.0) + + let closedSpy = signalSpyComponent.createObject(control, { target: control.swipe, signalName: "closed" }) + verify(closedSpy) + verify(closedSpy.valid) + + mousePress(control, control.width * 0.1) + compare(closedSpy.count, 0) + compare(control.swipe.position, -1.0) + + // Simulate a somewhat realistic delay between press and release + // to ensure that the bug is triggered. + wait(100) + mouseRelease(control, control.width * 0.1) + compare(closedSpy.count, 0) + compare(control.swipe.position, -1.0) + } + Component { id: multiActionSwipeDelegateComponent @@ -1607,11 +1672,11 @@ TestCase { text: "SwipeDelegate", display: data.display, width: 400, - "icon.source": "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png", + "icon.source": "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png", "LayoutMirroring.enabled": !!data.mirrored }) verify(control) - compare(control.icon.source, "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png") + compare(control.icon.source, "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png") var iconImage = findChild(control.contentItem, "image") var textLabel = findChild(control.contentItem, "label") diff --git a/tests/auto/controls/data/tst_swipeview.qml b/tests/auto/controls/data/tst_swipeview.qml index 41826117..68b91c35 100644 --- a/tests/auto/controls/data/tst_swipeview.qml +++ b/tests/auto/controls/data/tst_swipeview.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_switch.qml b/tests/auto/controls/data/tst_switch.qml index 8ec8ffb4..9050964f 100644 --- a/tests/auto/controls/data/tst_switch.qml +++ b/tests/auto/controls/data/tst_switch.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_switchdelegate.qml b/tests/auto/controls/data/tst_switchdelegate.qml index 1c96023f..4cf90bb6 100644 --- a/tests/auto/controls/data/tst_switchdelegate.qml +++ b/tests/auto/controls/data/tst_switchdelegate.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase @@ -560,11 +560,11 @@ TestCase { text: "SwitchDelegate", display: data.display, width: 400, - "icon.source": "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png", + "icon.source": "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png", "LayoutMirroring.enabled": !!data.mirrored }) verify(control) - compare(control.icon.source, "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png") + compare(control.icon.source, "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png") var iconImage = findChild(control.contentItem, "image") var textLabel = findChild(control.contentItem, "label") diff --git a/tests/auto/controls/data/tst_tabbar.qml b/tests/auto/controls/data/tst_tabbar.qml index ce42632f..3659a0ab 100644 --- a/tests/auto/controls/data/tst_tabbar.qml +++ b/tests/auto/controls/data/tst_tabbar.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_tabbutton.qml b/tests/auto/controls/data/tst_tabbutton.qml index 96384769..c399c014 100644 --- a/tests/auto/controls/data/tst_tabbutton.qml +++ b/tests/auto/controls/data/tst_tabbutton.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase @@ -134,11 +134,11 @@ TestCase { var control = createTemporaryObject(tabButton, testCase, { text: "TabButton", display: data.display, - "icon.source": "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png", + "icon.source": "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png", "LayoutMirroring.enabled": !!data.mirrored }) verify(control) - compare(control.icon.source, "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png") + compare(control.icon.source, "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png") var iconImage = findChild(control.contentItem, "image") var textLabel = findChild(control.contentItem, "label") diff --git a/tests/auto/controls/data/tst_textarea.qml b/tests/auto/controls/data/tst_textarea.qml index e9e1e2e2..653e7ad5 100644 --- a/tests/auto/controls/data/tst_textarea.qml +++ b/tests/auto/controls/data/tst_textarea.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_textfield.qml b/tests/auto/controls/data/tst_textfield.qml index 2ee1db41..f1ac17c9 100644 --- a/tests/auto/controls/data/tst_textfield.qml +++ b/tests/auto/controls/data/tst_textfield.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 -import QtQuick.Layouts 1.12 +import QtQuick +import QtTest +import QtQuick.Controls +import QtQuick.Layouts TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_toolbar.qml b/tests/auto/controls/data/tst_toolbar.qml index 09c3a830..b35a927d 100644 --- a/tests/auto/controls/data/tst_toolbar.qml +++ b/tests/auto/controls/data/tst_toolbar.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_toolbutton.qml b/tests/auto/controls/data/tst_toolbutton.qml index 622554c7..ca044a89 100644 --- a/tests/auto/controls/data/tst_toolbutton.qml +++ b/tests/auto/controls/data/tst_toolbutton.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase @@ -199,11 +199,11 @@ TestCase { var control = createTemporaryObject(toolButton, testCase, { text: "ToolButton", display: data.display, - "icon.source": "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png", + "icon.source": "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png", "LayoutMirroring.enabled": !!data.mirrored }) verify(control) - compare(control.icon.source, "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png") + compare(control.icon.source, "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png") var iconImage = findChild(control.contentItem, "image") var textLabel = findChild(control.contentItem, "label") diff --git a/tests/auto/controls/data/tst_toolseparator.qml b/tests/auto/controls/data/tst_toolseparator.qml index d3581b96..41c161dd 100644 --- a/tests/auto/controls/data/tst_toolseparator.qml +++ b/tests/auto/controls/data/tst_toolseparator.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_tooltip.qml b/tests/auto/controls/data/tst_tooltip.qml index 4b4bf4fa..6ca17263 100644 --- a/tests/auto/controls/data/tst_tooltip.qml +++ b/tests/auto/controls/data/tst_tooltip.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase diff --git a/tests/auto/controls/data/tst_tumbler.qml b/tests/auto/controls/data/tst_tumbler.qml index 5b3ef6e3..c103aefc 100644 --- a/tests/auto/controls/data/tst_tumbler.qml +++ b/tests/auto/controls/data/tst_tumbler.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtTest +import QtQuick.Controls TestCase { id: testCase @@ -383,7 +383,7 @@ TestCase { verify(tumbler); var mouseArea = createTemporaryQmlObject( - "import QtQuick 2.2; TextInput { activeFocusOnTab: true; width: 50; height: 50 }", testCase, ""); + "import QtQuick; TextInput { activeFocusOnTab: true; width: 50; height: 50 }", testCase, ""); tumbler.forceActiveFocus(); verify(tumbler.activeFocus); diff --git a/tests/auto/controls/default/dependencies.qml b/tests/auto/controls/default/dependencies.qml index 7ffafb84..f7d87422 100644 --- a/tests/auto/controls/default/dependencies.qml +++ b/tests/auto/controls/default/dependencies.qml @@ -1,5 +1,5 @@ -import QtTest 1.0 -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtTest +import QtQuick +import QtQuick.Controls TestCase { } diff --git a/tests/auto/controls/fusion/dependencies.qml b/tests/auto/controls/fusion/dependencies.qml index 2da1b2bb..f2e40e60 100644 --- a/tests/auto/controls/fusion/dependencies.qml +++ b/tests/auto/controls/fusion/dependencies.qml @@ -1,6 +1,6 @@ -import QtTest 1.0 -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Fusion 2.12 +import QtTest +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Fusion TestCase { } diff --git a/tests/auto/controls/imagine/dependencies.qml b/tests/auto/controls/imagine/dependencies.qml index e681aa4f..9a31141b 100644 --- a/tests/auto/controls/imagine/dependencies.qml +++ b/tests/auto/controls/imagine/dependencies.qml @@ -1,6 +1,6 @@ -import QtTest 1.0 -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Imagine 2.12 +import QtTest +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Imagine TestCase { } diff --git a/tests/auto/controls/material/dependencies.qml b/tests/auto/controls/material/dependencies.qml index f926944e..8bcf0301 100644 --- a/tests/auto/controls/material/dependencies.qml +++ b/tests/auto/controls/material/dependencies.qml @@ -1,6 +1,6 @@ -import QtTest 1.0 -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Material 2.12 +import QtTest +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Material TestCase { } diff --git a/tests/auto/controls/universal/dependencies.qml b/tests/auto/controls/universal/dependencies.qml index a4a0d0a0..8ba71c83 100644 --- a/tests/auto/controls/universal/dependencies.qml +++ b/tests/auto/controls/universal/dependencies.qml @@ -1,6 +1,6 @@ -import QtTest 1.0 -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Universal 2.12 +import QtTest +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Universal TestCase { } diff --git a/tests/auto/cursor/CMakeLists.txt b/tests/auto/cursor/CMakeLists.txt index 8034a11a..07d8a5f3 100644 --- a/tests/auto/cursor/CMakeLists.txt +++ b/tests/auto/cursor/CMakeLists.txt @@ -24,6 +24,7 @@ qt_add_test(tst_cursor Qt::GuiPrivate Qt::QmlPrivate Qt::QuickControls2 + Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private Qt::TestPrivate diff --git a/tests/auto/cursor/data/buttons.qml b/tests/auto/cursor/data/buttons.qml index 2107a8f3..eb7e27cf 100644 --- a/tests/auto/cursor/data/buttons.qml +++ b/tests/auto/cursor/data/buttons.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls MouseArea { width: column.width diff --git a/tests/auto/cursor/data/containers.qml b/tests/auto/cursor/data/containers.qml index c9dc09d9..0e722971 100644 --- a/tests/auto/cursor/data/containers.qml +++ b/tests/auto/cursor/data/containers.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls MouseArea { width: column.width diff --git a/tests/auto/cursor/data/editable.qml b/tests/auto/cursor/data/editable.qml index 305d7d46..04bf4b7c 100644 --- a/tests/auto/cursor/data/editable.qml +++ b/tests/auto/cursor/data/editable.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls MouseArea { width: column.width diff --git a/tests/auto/cursor/data/pageindicator.qml b/tests/auto/cursor/data/pageindicator.qml index 228f010d..f71fbf75 100644 --- a/tests/auto/cursor/data/pageindicator.qml +++ b/tests/auto/cursor/data/pageindicator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls MouseArea { width: 200 diff --git a/tests/auto/cursor/data/scrollbar.qml b/tests/auto/cursor/data/scrollbar.qml index 50b785c6..997abd4b 100644 --- a/tests/auto/cursor/data/scrollbar.qml +++ b/tests/auto/cursor/data/scrollbar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/cursor/data/sliders.qml b/tests/auto/cursor/data/sliders.qml index e3ac2cb1..687450ec 100644 --- a/tests/auto/cursor/data/sliders.qml +++ b/tests/auto/cursor/data/sliders.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls MouseArea { width: column.width diff --git a/tests/auto/cursor/tst_cursor.cpp b/tests/auto/cursor/tst_cursor.cpp index 2491a972..ed5db5b1 100644 --- a/tests/auto/cursor/tst_cursor.cpp +++ b/tests/auto/cursor/tst_cursor.cpp @@ -182,6 +182,7 @@ void tst_cursor::scrollBar() // Ensure that the mouse cursor has the correct shape when over a scrollbar // which is itself over a text area with IBeamCursor. QQuickApplicationHelper helper(this, QStringLiteral("scrollbar.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; window->show(); QVERIFY(QTest::qWaitForWindowActive(window)); diff --git a/tests/auto/customization/CMakeLists.txt b/tests/auto/customization/CMakeLists.txt index 40e916a8..0ec56d9d 100644 --- a/tests/auto/customization/CMakeLists.txt +++ b/tests/auto/customization/CMakeLists.txt @@ -24,6 +24,7 @@ qt_add_test(tst_customization Qt::GuiPrivate Qt::QmlPrivate Qt::QuickControls2 + Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private Qt::TestPrivate diff --git a/tests/auto/customization/customization.pro b/tests/auto/customization/customization.pro index 472367a3..e40e4d05 100644 --- a/tests/auto/customization/customization.pro +++ b/tests/auto/customization/customization.pro @@ -4,7 +4,7 @@ SOURCES += tst_customization.cpp macos:CONFIG -= app_bundle -QT += core-private gui-private qml-private quick-private testlib quicktemplates2-private quickcontrols2 +QT += core-private gui-private qml-private quick-private testlib quicktemplates2-private quickcontrols2 quickcontrols2-private include (../shared/util.pri) diff --git a/tests/auto/customization/data/styles/empty/AbstractButton.qml b/tests/auto/customization/data/styles/empty/AbstractButton.qml index 56aaaa04..b30d4a56 100644 --- a/tests/auto/customization/data/styles/empty/AbstractButton.qml +++ b/tests/auto/customization/data/styles/empty/AbstractButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.AbstractButton { id: control diff --git a/tests/auto/customization/data/styles/empty/ApplicationWindow.qml b/tests/auto/customization/data/styles/empty/ApplicationWindow.qml index 820b67ae..6a1f1b09 100644 --- a/tests/auto/customization/data/styles/empty/ApplicationWindow.qml +++ b/tests/auto/customization/data/styles/empty/ApplicationWindow.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ApplicationWindow { id: control diff --git a/tests/auto/customization/data/styles/empty/BusyIndicator.qml b/tests/auto/customization/data/styles/empty/BusyIndicator.qml index 2d212ed2..388de3af 100644 --- a/tests/auto/customization/data/styles/empty/BusyIndicator.qml +++ b/tests/auto/customization/data/styles/empty/BusyIndicator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.BusyIndicator { id: control diff --git a/tests/auto/customization/data/styles/empty/Button.qml b/tests/auto/customization/data/styles/empty/Button.qml index 54daa586..20426d2e 100644 --- a/tests/auto/customization/data/styles/empty/Button.qml +++ b/tests/auto/customization/data/styles/empty/Button.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Button { id: control diff --git a/tests/auto/customization/data/styles/empty/CheckBox.qml b/tests/auto/customization/data/styles/empty/CheckBox.qml index 64799ca5..3d8b5a8e 100644 --- a/tests/auto/customization/data/styles/empty/CheckBox.qml +++ b/tests/auto/customization/data/styles/empty/CheckBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.CheckBox { id: control diff --git a/tests/auto/customization/data/styles/empty/CheckDelegate.qml b/tests/auto/customization/data/styles/empty/CheckDelegate.qml index b7ea827d..a0547ec4 100644 --- a/tests/auto/customization/data/styles/empty/CheckDelegate.qml +++ b/tests/auto/customization/data/styles/empty/CheckDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.CheckDelegate { id: control diff --git a/tests/auto/customization/data/styles/empty/ComboBox.qml b/tests/auto/customization/data/styles/empty/ComboBox.qml index 2c5cb266..84cf6e35 100644 --- a/tests/auto/customization/data/styles/empty/ComboBox.qml +++ b/tests/auto/customization/data/styles/empty/ComboBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ComboBox { id: control diff --git a/tests/auto/customization/data/styles/empty/Container.qml b/tests/auto/customization/data/styles/empty/Container.qml index 1d376cce..7519d7bd 100644 --- a/tests/auto/customization/data/styles/empty/Container.qml +++ b/tests/auto/customization/data/styles/empty/Container.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Container { id: control diff --git a/tests/auto/customization/data/styles/empty/Control.qml b/tests/auto/customization/data/styles/empty/Control.qml index c7db674a..55a456c7 100644 --- a/tests/auto/customization/data/styles/empty/Control.qml +++ b/tests/auto/customization/data/styles/empty/Control.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Control { id: control diff --git a/tests/auto/customization/data/styles/empty/DelayButton.qml b/tests/auto/customization/data/styles/empty/DelayButton.qml index e1cd7dde..ce34f25f 100644 --- a/tests/auto/customization/data/styles/empty/DelayButton.qml +++ b/tests/auto/customization/data/styles/empty/DelayButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.DelayButton { id: control diff --git a/tests/auto/customization/data/styles/empty/Dial.qml b/tests/auto/customization/data/styles/empty/Dial.qml index 94af0a3e..de83e564 100644 --- a/tests/auto/customization/data/styles/empty/Dial.qml +++ b/tests/auto/customization/data/styles/empty/Dial.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Dial { id: control diff --git a/tests/auto/customization/data/styles/empty/Dialog.qml b/tests/auto/customization/data/styles/empty/Dialog.qml index 72f95f0a..8b056a88 100644 --- a/tests/auto/customization/data/styles/empty/Dialog.qml +++ b/tests/auto/customization/data/styles/empty/Dialog.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Dialog { id: control diff --git a/tests/auto/customization/data/styles/empty/DialogButtonBox.qml b/tests/auto/customization/data/styles/empty/DialogButtonBox.qml index 1f47e83f..5ce5f504 100644 --- a/tests/auto/customization/data/styles/empty/DialogButtonBox.qml +++ b/tests/auto/customization/data/styles/empty/DialogButtonBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.DialogButtonBox { id: control diff --git a/tests/auto/customization/data/styles/empty/Drawer.qml b/tests/auto/customization/data/styles/empty/Drawer.qml index a550d5b7..b4da57c0 100644 --- a/tests/auto/customization/data/styles/empty/Drawer.qml +++ b/tests/auto/customization/data/styles/empty/Drawer.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Drawer { id: control diff --git a/tests/auto/customization/data/styles/empty/Frame.qml b/tests/auto/customization/data/styles/empty/Frame.qml index 9047035c..00f4d79c 100644 --- a/tests/auto/customization/data/styles/empty/Frame.qml +++ b/tests/auto/customization/data/styles/empty/Frame.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Frame { id: control diff --git a/tests/auto/customization/data/styles/empty/GroupBox.qml b/tests/auto/customization/data/styles/empty/GroupBox.qml index 8628cb0d..900770cd 100644 --- a/tests/auto/customization/data/styles/empty/GroupBox.qml +++ b/tests/auto/customization/data/styles/empty/GroupBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.GroupBox { id: control diff --git a/tests/auto/customization/data/styles/empty/ItemDelegate.qml b/tests/auto/customization/data/styles/empty/ItemDelegate.qml index 721e4b37..19de468d 100644 --- a/tests/auto/customization/data/styles/empty/ItemDelegate.qml +++ b/tests/auto/customization/data/styles/empty/ItemDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ItemDelegate { id: control diff --git a/tests/auto/customization/data/styles/empty/Label.qml b/tests/auto/customization/data/styles/empty/Label.qml index a0be5acf..bfc4a839 100644 --- a/tests/auto/customization/data/styles/empty/Label.qml +++ b/tests/auto/customization/data/styles/empty/Label.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Label { id: control diff --git a/tests/auto/customization/data/styles/empty/Menu.qml b/tests/auto/customization/data/styles/empty/Menu.qml index ec7cd9fd..27b8a014 100644 --- a/tests/auto/customization/data/styles/empty/Menu.qml +++ b/tests/auto/customization/data/styles/empty/Menu.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Menu { id: control diff --git a/tests/auto/customization/data/styles/empty/MenuBar.qml b/tests/auto/customization/data/styles/empty/MenuBar.qml index 6ee7350d..24f7c6ed 100644 --- a/tests/auto/customization/data/styles/empty/MenuBar.qml +++ b/tests/auto/customization/data/styles/empty/MenuBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.MenuBar { id: control diff --git a/tests/auto/customization/data/styles/empty/MenuBarItem.qml b/tests/auto/customization/data/styles/empty/MenuBarItem.qml index 710c1208..d66e899a 100644 --- a/tests/auto/customization/data/styles/empty/MenuBarItem.qml +++ b/tests/auto/customization/data/styles/empty/MenuBarItem.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.MenuBarItem { id: control diff --git a/tests/auto/customization/data/styles/empty/MenuItem.qml b/tests/auto/customization/data/styles/empty/MenuItem.qml index 206c2e89..11f38a1b 100644 --- a/tests/auto/customization/data/styles/empty/MenuItem.qml +++ b/tests/auto/customization/data/styles/empty/MenuItem.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.MenuItem { id: control diff --git a/tests/auto/customization/data/styles/empty/MenuSeparator.qml b/tests/auto/customization/data/styles/empty/MenuSeparator.qml index 73b3ec41..effd32c0 100644 --- a/tests/auto/customization/data/styles/empty/MenuSeparator.qml +++ b/tests/auto/customization/data/styles/empty/MenuSeparator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.MenuSeparator { id: control diff --git a/tests/auto/customization/data/styles/empty/Page.qml b/tests/auto/customization/data/styles/empty/Page.qml index ce77d17f..353fb9cc 100644 --- a/tests/auto/customization/data/styles/empty/Page.qml +++ b/tests/auto/customization/data/styles/empty/Page.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Page { id: control diff --git a/tests/auto/customization/data/styles/empty/PageIndicator.qml b/tests/auto/customization/data/styles/empty/PageIndicator.qml index c71e6908..98976ae2 100644 --- a/tests/auto/customization/data/styles/empty/PageIndicator.qml +++ b/tests/auto/customization/data/styles/empty/PageIndicator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.PageIndicator { id: control diff --git a/tests/auto/customization/data/styles/empty/Pane.qml b/tests/auto/customization/data/styles/empty/Pane.qml index a710e9a2..2429e2c6 100644 --- a/tests/auto/customization/data/styles/empty/Pane.qml +++ b/tests/auto/customization/data/styles/empty/Pane.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Pane { id: control diff --git a/tests/auto/customization/data/styles/empty/Popup.qml b/tests/auto/customization/data/styles/empty/Popup.qml index f2c19ed3..fdcb49ac 100644 --- a/tests/auto/customization/data/styles/empty/Popup.qml +++ b/tests/auto/customization/data/styles/empty/Popup.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Popup { id: control diff --git a/tests/auto/customization/data/styles/empty/ProgressBar.qml b/tests/auto/customization/data/styles/empty/ProgressBar.qml index 0ffdb015..a2afa03b 100644 --- a/tests/auto/customization/data/styles/empty/ProgressBar.qml +++ b/tests/auto/customization/data/styles/empty/ProgressBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ProgressBar { id: control diff --git a/tests/auto/customization/data/styles/empty/RadioButton.qml b/tests/auto/customization/data/styles/empty/RadioButton.qml index 1221e667..87766292 100644 --- a/tests/auto/customization/data/styles/empty/RadioButton.qml +++ b/tests/auto/customization/data/styles/empty/RadioButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.RadioButton { id: control diff --git a/tests/auto/customization/data/styles/empty/RadioDelegate.qml b/tests/auto/customization/data/styles/empty/RadioDelegate.qml index b7889e34..bbb711c7 100644 --- a/tests/auto/customization/data/styles/empty/RadioDelegate.qml +++ b/tests/auto/customization/data/styles/empty/RadioDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.RadioDelegate { id: control diff --git a/tests/auto/customization/data/styles/empty/RangeSlider.qml b/tests/auto/customization/data/styles/empty/RangeSlider.qml index d737e4bf..0043b407 100644 --- a/tests/auto/customization/data/styles/empty/RangeSlider.qml +++ b/tests/auto/customization/data/styles/empty/RangeSlider.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.RangeSlider { id: control diff --git a/tests/auto/customization/data/styles/empty/RoundButton.qml b/tests/auto/customization/data/styles/empty/RoundButton.qml index 01063900..5b06801d 100644 --- a/tests/auto/customization/data/styles/empty/RoundButton.qml +++ b/tests/auto/customization/data/styles/empty/RoundButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.RoundButton { id: control diff --git a/tests/auto/customization/data/styles/empty/ScrollBar.qml b/tests/auto/customization/data/styles/empty/ScrollBar.qml index bc727d7b..80a6782e 100644 --- a/tests/auto/customization/data/styles/empty/ScrollBar.qml +++ b/tests/auto/customization/data/styles/empty/ScrollBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ScrollBar { id: control diff --git a/tests/auto/customization/data/styles/empty/ScrollIndicator.qml b/tests/auto/customization/data/styles/empty/ScrollIndicator.qml index 3e11e721..56c73cb8 100644 --- a/tests/auto/customization/data/styles/empty/ScrollIndicator.qml +++ b/tests/auto/customization/data/styles/empty/ScrollIndicator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ScrollIndicator { id: control diff --git a/tests/auto/customization/data/styles/empty/ScrollView.qml b/tests/auto/customization/data/styles/empty/ScrollView.qml index 74a9fec2..198936c2 100644 --- a/tests/auto/customization/data/styles/empty/ScrollView.qml +++ b/tests/auto/customization/data/styles/empty/ScrollView.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ScrollView { id: control diff --git a/tests/auto/customization/data/styles/empty/Slider.qml b/tests/auto/customization/data/styles/empty/Slider.qml index d8fe7aee..6cfa3e91 100644 --- a/tests/auto/customization/data/styles/empty/Slider.qml +++ b/tests/auto/customization/data/styles/empty/Slider.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Slider { id: control diff --git a/tests/auto/customization/data/styles/empty/SpinBox.qml b/tests/auto/customization/data/styles/empty/SpinBox.qml index 4e84e55a..9e334ecf 100644 --- a/tests/auto/customization/data/styles/empty/SpinBox.qml +++ b/tests/auto/customization/data/styles/empty/SpinBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.SpinBox { id: control diff --git a/tests/auto/customization/data/styles/empty/StackView.qml b/tests/auto/customization/data/styles/empty/StackView.qml index 7722f8a7..0a55abf8 100644 --- a/tests/auto/customization/data/styles/empty/StackView.qml +++ b/tests/auto/customization/data/styles/empty/StackView.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.StackView { id: control diff --git a/tests/auto/customization/data/styles/empty/SwipeDelegate.qml b/tests/auto/customization/data/styles/empty/SwipeDelegate.qml index f27802f4..d05f1e9c 100644 --- a/tests/auto/customization/data/styles/empty/SwipeDelegate.qml +++ b/tests/auto/customization/data/styles/empty/SwipeDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.SwipeDelegate { id: control diff --git a/tests/auto/customization/data/styles/empty/SwipeView.qml b/tests/auto/customization/data/styles/empty/SwipeView.qml index 61de72b3..51b411aa 100644 --- a/tests/auto/customization/data/styles/empty/SwipeView.qml +++ b/tests/auto/customization/data/styles/empty/SwipeView.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.SwipeView { id: control diff --git a/tests/auto/customization/data/styles/empty/Switch.qml b/tests/auto/customization/data/styles/empty/Switch.qml index 3908d3f3..da00b0e8 100644 --- a/tests/auto/customization/data/styles/empty/Switch.qml +++ b/tests/auto/customization/data/styles/empty/Switch.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Switch { id: control diff --git a/tests/auto/customization/data/styles/empty/SwitchDelegate.qml b/tests/auto/customization/data/styles/empty/SwitchDelegate.qml index e581baa0..fe0a9f52 100644 --- a/tests/auto/customization/data/styles/empty/SwitchDelegate.qml +++ b/tests/auto/customization/data/styles/empty/SwitchDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.SwitchDelegate { id: control diff --git a/tests/auto/customization/data/styles/empty/TabBar.qml b/tests/auto/customization/data/styles/empty/TabBar.qml index caedefe9..0f38b660 100644 --- a/tests/auto/customization/data/styles/empty/TabBar.qml +++ b/tests/auto/customization/data/styles/empty/TabBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.TabBar { id: control diff --git a/tests/auto/customization/data/styles/empty/TabButton.qml b/tests/auto/customization/data/styles/empty/TabButton.qml index e6777411..6ee89636 100644 --- a/tests/auto/customization/data/styles/empty/TabButton.qml +++ b/tests/auto/customization/data/styles/empty/TabButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.TabButton { id: control diff --git a/tests/auto/customization/data/styles/empty/TextArea.qml b/tests/auto/customization/data/styles/empty/TextArea.qml index 7d49af20..e2ee7866 100644 --- a/tests/auto/customization/data/styles/empty/TextArea.qml +++ b/tests/auto/customization/data/styles/empty/TextArea.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.TextArea { id: control diff --git a/tests/auto/customization/data/styles/empty/TextField.qml b/tests/auto/customization/data/styles/empty/TextField.qml index 0a593cbe..3fcf63d5 100644 --- a/tests/auto/customization/data/styles/empty/TextField.qml +++ b/tests/auto/customization/data/styles/empty/TextField.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.TextField { id: control diff --git a/tests/auto/customization/data/styles/empty/ToolBar.qml b/tests/auto/customization/data/styles/empty/ToolBar.qml index 5f923267..6696336d 100644 --- a/tests/auto/customization/data/styles/empty/ToolBar.qml +++ b/tests/auto/customization/data/styles/empty/ToolBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ToolBar { id: control diff --git a/tests/auto/customization/data/styles/empty/ToolButton.qml b/tests/auto/customization/data/styles/empty/ToolButton.qml index 9f209c55..8d4ef1b5 100644 --- a/tests/auto/customization/data/styles/empty/ToolButton.qml +++ b/tests/auto/customization/data/styles/empty/ToolButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ToolButton { id: control diff --git a/tests/auto/customization/data/styles/empty/ToolSeparator.qml b/tests/auto/customization/data/styles/empty/ToolSeparator.qml index bc81e3e7..63985f7f 100644 --- a/tests/auto/customization/data/styles/empty/ToolSeparator.qml +++ b/tests/auto/customization/data/styles/empty/ToolSeparator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ToolSeparator { id: control diff --git a/tests/auto/customization/data/styles/empty/ToolTip.qml b/tests/auto/customization/data/styles/empty/ToolTip.qml index 0bc8e3c6..a1aff941 100644 --- a/tests/auto/customization/data/styles/empty/ToolTip.qml +++ b/tests/auto/customization/data/styles/empty/ToolTip.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ToolTip { id: control diff --git a/tests/auto/customization/data/styles/empty/Tumbler.qml b/tests/auto/customization/data/styles/empty/Tumbler.qml index 984362f4..c8b3bfeb 100644 --- a/tests/auto/customization/data/styles/empty/Tumbler.qml +++ b/tests/auto/customization/data/styles/empty/Tumbler.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Tumbler { id: control diff --git a/tests/auto/customization/data/styles/empty/qmldir b/tests/auto/customization/data/styles/empty/qmldir new file mode 100644 index 00000000..a5fcc4c7 --- /dev/null +++ b/tests/auto/customization/data/styles/empty/qmldir @@ -0,0 +1,59 @@ +module empty + +AbstractButton 6.0 AbstractButton.qml +Action 6.0 Action.qml +ActionGroup 6.0 ActionGroup.qml +ApplicationWindow 6.0 ApplicationWindow.qml +BusyIndicator 6.0 BusyIndicator.qml +Button 6.0 Button.qml +ButtonGroup 6.0 ButtonGroup.qml +CheckBox 6.0 CheckBox.qml +CheckDelegate 6.0 CheckDelegate.qml +ComboBox 6.0 ComboBox.qml +Container 6.0 Container.qml +Control 6.0 Control.qml +DelayButton 6.0 DelayButton.qml +Dial 6.0 Dial.qml +Dialog 6.0 Dialog.qml +DialogButtonBox 6.0 DialogButtonBox.qml +Drawer 6.0 Drawer.qml +Frame 6.0 Frame.qml +GroupBox 6.0 GroupBox.qml +HorizontalHeaderView 6.0 HorizontalHeaderView.qml +ItemDelegate 6.0 ItemDelegate.qml +Label 6.0 Label.qml +Menu 6.0 Menu.qml +MenuBar 6.0 MenuBar.qml +MenuBarItem 6.0 MenuBarItem.qml +MenuItem 6.0 MenuItem.qml +MenuSeparator 6.0 MenuSeparator.qml +Page 6.0 Page.qml +PageIndicator 6.0 PageIndicator.qml +Pane 6.0 Pane.qml +Popup 6.0 Popup.qml +ProgressBar 6.0 ProgressBar.qml +RadioButton 6.0 RadioButton.qml +RadioDelegate 6.0 RadioDelegate.qml +RangeSlider 6.0 RangeSlider.qml +RoundButton 6.0 RoundButton.qml +ScrollBar 6.0 ScrollBar.qml +ScrollIndicator 6.0 ScrollIndicator.qml +ScrollView 6.0 ScrollView.qml +Slider 6.0 Slider.qml +SpinBox 6.0 SpinBox.qml +SplitView 6.0 SplitView.qml +StackView 6.0 StackView.qml +SwipeDelegate 6.0 SwipeDelegate.qml +SwipeView 6.0 SwipeView.qml +Switch 6.0 Switch.qml +SwitchDelegate 6.0 SwitchDelegate.qml +TabBar 6.0 TabBar.qml +TabButton 6.0 TabButton.qml +TextArea 6.0 TextArea.qml +TextField 6.0 TextField.qml +ToolBar 6.0 ToolBar.qml +ToolButton 6.0 ToolButton.qml +ToolSeparator 6.0 ToolSeparator.qml +ToolTip 6.0 ToolTip.qml +Tumbler 6.0 Tumbler.qml +VerticalHeaderView 6.0 VerticalHeaderView.qml diff --git a/tests/auto/customization/data/styles/identified/AbstractButton.qml b/tests/auto/customization/data/styles/identified/AbstractButton.qml index cd2b5bdc..1c5bd318 100644 --- a/tests/auto/customization/data/styles/identified/AbstractButton.qml +++ b/tests/auto/customization/data/styles/identified/AbstractButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.AbstractButton { id: control diff --git a/tests/auto/customization/data/styles/identified/ApplicationWindow.qml b/tests/auto/customization/data/styles/identified/ApplicationWindow.qml index b77eebfc..dc3f0db1 100644 --- a/tests/auto/customization/data/styles/identified/ApplicationWindow.qml +++ b/tests/auto/customization/data/styles/identified/ApplicationWindow.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ApplicationWindow { id: control diff --git a/tests/auto/customization/data/styles/identified/BusyIndicator.qml b/tests/auto/customization/data/styles/identified/BusyIndicator.qml index dc4c14b7..2deab679 100644 --- a/tests/auto/customization/data/styles/identified/BusyIndicator.qml +++ b/tests/auto/customization/data/styles/identified/BusyIndicator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.BusyIndicator { id: control diff --git a/tests/auto/customization/data/styles/identified/Button.qml b/tests/auto/customization/data/styles/identified/Button.qml index dca3b9d0..dc805080 100644 --- a/tests/auto/customization/data/styles/identified/Button.qml +++ b/tests/auto/customization/data/styles/identified/Button.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Button { id: control diff --git a/tests/auto/customization/data/styles/identified/CheckBox.qml b/tests/auto/customization/data/styles/identified/CheckBox.qml index 8f1f9b25..13f98af9 100644 --- a/tests/auto/customization/data/styles/identified/CheckBox.qml +++ b/tests/auto/customization/data/styles/identified/CheckBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.CheckBox { id: control diff --git a/tests/auto/customization/data/styles/identified/CheckDelegate.qml b/tests/auto/customization/data/styles/identified/CheckDelegate.qml index cfba67d3..b0d8a8d2 100644 --- a/tests/auto/customization/data/styles/identified/CheckDelegate.qml +++ b/tests/auto/customization/data/styles/identified/CheckDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.CheckDelegate { id: control diff --git a/tests/auto/customization/data/styles/identified/ComboBox.qml b/tests/auto/customization/data/styles/identified/ComboBox.qml index 873d1c2a..ff117ce8 100644 --- a/tests/auto/customization/data/styles/identified/ComboBox.qml +++ b/tests/auto/customization/data/styles/identified/ComboBox.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T +import QtQuick.Templates as T T.ComboBox { id: control diff --git a/tests/auto/customization/data/styles/identified/Container.qml b/tests/auto/customization/data/styles/identified/Container.qml index 8170e937..a282528d 100644 --- a/tests/auto/customization/data/styles/identified/Container.qml +++ b/tests/auto/customization/data/styles/identified/Container.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Container { id: control diff --git a/tests/auto/customization/data/styles/identified/Control.qml b/tests/auto/customization/data/styles/identified/Control.qml index 0eb28c21..90229e47 100644 --- a/tests/auto/customization/data/styles/identified/Control.qml +++ b/tests/auto/customization/data/styles/identified/Control.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Control { id: control diff --git a/tests/auto/customization/data/styles/identified/DelayButton.qml b/tests/auto/customization/data/styles/identified/DelayButton.qml index fc7f67c9..90f980ea 100644 --- a/tests/auto/customization/data/styles/identified/DelayButton.qml +++ b/tests/auto/customization/data/styles/identified/DelayButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.DelayButton { id: control diff --git a/tests/auto/customization/data/styles/identified/Dial.qml b/tests/auto/customization/data/styles/identified/Dial.qml index 423c64e2..9260972c 100644 --- a/tests/auto/customization/data/styles/identified/Dial.qml +++ b/tests/auto/customization/data/styles/identified/Dial.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Dial { id: control diff --git a/tests/auto/customization/data/styles/identified/Dialog.qml b/tests/auto/customization/data/styles/identified/Dialog.qml index 58d0120e..6392be7d 100644 --- a/tests/auto/customization/data/styles/identified/Dialog.qml +++ b/tests/auto/customization/data/styles/identified/Dialog.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Dialog { id: control diff --git a/tests/auto/customization/data/styles/identified/DialogButtonBox.qml b/tests/auto/customization/data/styles/identified/DialogButtonBox.qml index 0bf56268..11c596a1 100644 --- a/tests/auto/customization/data/styles/identified/DialogButtonBox.qml +++ b/tests/auto/customization/data/styles/identified/DialogButtonBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.DialogButtonBox { id: control diff --git a/tests/auto/customization/data/styles/identified/Drawer.qml b/tests/auto/customization/data/styles/identified/Drawer.qml index 82d09bd4..6b340f2a 100644 --- a/tests/auto/customization/data/styles/identified/Drawer.qml +++ b/tests/auto/customization/data/styles/identified/Drawer.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Drawer { id: control diff --git a/tests/auto/customization/data/styles/identified/Frame.qml b/tests/auto/customization/data/styles/identified/Frame.qml index e84e18b1..830ac584 100644 --- a/tests/auto/customization/data/styles/identified/Frame.qml +++ b/tests/auto/customization/data/styles/identified/Frame.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Frame { id: control diff --git a/tests/auto/customization/data/styles/identified/GroupBox.qml b/tests/auto/customization/data/styles/identified/GroupBox.qml index ed56f89b..fffd44e8 100644 --- a/tests/auto/customization/data/styles/identified/GroupBox.qml +++ b/tests/auto/customization/data/styles/identified/GroupBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.GroupBox { id: control diff --git a/tests/auto/customization/data/styles/identified/ItemDelegate.qml b/tests/auto/customization/data/styles/identified/ItemDelegate.qml index 92801c53..b04d2f59 100644 --- a/tests/auto/customization/data/styles/identified/ItemDelegate.qml +++ b/tests/auto/customization/data/styles/identified/ItemDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ItemDelegate { id: control diff --git a/tests/auto/customization/data/styles/identified/Label.qml b/tests/auto/customization/data/styles/identified/Label.qml index d19da135..95d1f191 100644 --- a/tests/auto/customization/data/styles/identified/Label.qml +++ b/tests/auto/customization/data/styles/identified/Label.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Label { id: control diff --git a/tests/auto/customization/data/styles/identified/Menu.qml b/tests/auto/customization/data/styles/identified/Menu.qml index 5a9ac617..66239254 100644 --- a/tests/auto/customization/data/styles/identified/Menu.qml +++ b/tests/auto/customization/data/styles/identified/Menu.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Menu { id: control diff --git a/tests/auto/customization/data/styles/identified/MenuBar.qml b/tests/auto/customization/data/styles/identified/MenuBar.qml index d846e3c9..f815b73f 100644 --- a/tests/auto/customization/data/styles/identified/MenuBar.qml +++ b/tests/auto/customization/data/styles/identified/MenuBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.MenuBar { id: control diff --git a/tests/auto/customization/data/styles/identified/MenuBarItem.qml b/tests/auto/customization/data/styles/identified/MenuBarItem.qml index 94fdef89..abf3be5d 100644 --- a/tests/auto/customization/data/styles/identified/MenuBarItem.qml +++ b/tests/auto/customization/data/styles/identified/MenuBarItem.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.MenuBarItem { id: control diff --git a/tests/auto/customization/data/styles/identified/MenuItem.qml b/tests/auto/customization/data/styles/identified/MenuItem.qml index 34f12cca..3a174ecf 100644 --- a/tests/auto/customization/data/styles/identified/MenuItem.qml +++ b/tests/auto/customization/data/styles/identified/MenuItem.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.MenuItem { id: control diff --git a/tests/auto/customization/data/styles/identified/MenuSeparator.qml b/tests/auto/customization/data/styles/identified/MenuSeparator.qml index 14154e2f..7ecb176b 100644 --- a/tests/auto/customization/data/styles/identified/MenuSeparator.qml +++ b/tests/auto/customization/data/styles/identified/MenuSeparator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.MenuSeparator { id: control diff --git a/tests/auto/customization/data/styles/identified/Page.qml b/tests/auto/customization/data/styles/identified/Page.qml index 945f2ac7..b2416247 100644 --- a/tests/auto/customization/data/styles/identified/Page.qml +++ b/tests/auto/customization/data/styles/identified/Page.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Page { id: control diff --git a/tests/auto/customization/data/styles/identified/PageIndicator.qml b/tests/auto/customization/data/styles/identified/PageIndicator.qml index ef0ab44f..2370a334 100644 --- a/tests/auto/customization/data/styles/identified/PageIndicator.qml +++ b/tests/auto/customization/data/styles/identified/PageIndicator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.PageIndicator { id: control diff --git a/tests/auto/customization/data/styles/identified/Pane.qml b/tests/auto/customization/data/styles/identified/Pane.qml index 849c7907..0dbf4b1c 100644 --- a/tests/auto/customization/data/styles/identified/Pane.qml +++ b/tests/auto/customization/data/styles/identified/Pane.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Pane { id: control diff --git a/tests/auto/customization/data/styles/identified/Popup.qml b/tests/auto/customization/data/styles/identified/Popup.qml index 65de416c..b6381170 100644 --- a/tests/auto/customization/data/styles/identified/Popup.qml +++ b/tests/auto/customization/data/styles/identified/Popup.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Popup { id: control diff --git a/tests/auto/customization/data/styles/identified/ProgressBar.qml b/tests/auto/customization/data/styles/identified/ProgressBar.qml index 24888624..dc7d7658 100644 --- a/tests/auto/customization/data/styles/identified/ProgressBar.qml +++ b/tests/auto/customization/data/styles/identified/ProgressBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ProgressBar { id: control diff --git a/tests/auto/customization/data/styles/identified/RadioButton.qml b/tests/auto/customization/data/styles/identified/RadioButton.qml index 3a0c4e44..2b4a0b62 100644 --- a/tests/auto/customization/data/styles/identified/RadioButton.qml +++ b/tests/auto/customization/data/styles/identified/RadioButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.RadioButton { id: control diff --git a/tests/auto/customization/data/styles/identified/RadioDelegate.qml b/tests/auto/customization/data/styles/identified/RadioDelegate.qml index 3eda2408..75cda63d 100644 --- a/tests/auto/customization/data/styles/identified/RadioDelegate.qml +++ b/tests/auto/customization/data/styles/identified/RadioDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.RadioDelegate { id: control diff --git a/tests/auto/customization/data/styles/identified/RangeSlider.qml b/tests/auto/customization/data/styles/identified/RangeSlider.qml index 18118dbe..fab56fcd 100644 --- a/tests/auto/customization/data/styles/identified/RangeSlider.qml +++ b/tests/auto/customization/data/styles/identified/RangeSlider.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.RangeSlider { id: control diff --git a/tests/auto/customization/data/styles/identified/RoundButton.qml b/tests/auto/customization/data/styles/identified/RoundButton.qml index fc6bc95a..ec075db3 100644 --- a/tests/auto/customization/data/styles/identified/RoundButton.qml +++ b/tests/auto/customization/data/styles/identified/RoundButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.RoundButton { id: control diff --git a/tests/auto/customization/data/styles/identified/ScrollBar.qml b/tests/auto/customization/data/styles/identified/ScrollBar.qml index f9a4445d..418f2908 100644 --- a/tests/auto/customization/data/styles/identified/ScrollBar.qml +++ b/tests/auto/customization/data/styles/identified/ScrollBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ScrollBar { id: control diff --git a/tests/auto/customization/data/styles/identified/ScrollIndicator.qml b/tests/auto/customization/data/styles/identified/ScrollIndicator.qml index 0f15aa2d..b427b757 100644 --- a/tests/auto/customization/data/styles/identified/ScrollIndicator.qml +++ b/tests/auto/customization/data/styles/identified/ScrollIndicator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ScrollIndicator { id: control diff --git a/tests/auto/customization/data/styles/identified/ScrollView.qml b/tests/auto/customization/data/styles/identified/ScrollView.qml index 0855a5af..7f4e2c40 100644 --- a/tests/auto/customization/data/styles/identified/ScrollView.qml +++ b/tests/auto/customization/data/styles/identified/ScrollView.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ScrollView { id: control diff --git a/tests/auto/customization/data/styles/identified/Slider.qml b/tests/auto/customization/data/styles/identified/Slider.qml index 23afb67e..88c5b22f 100644 --- a/tests/auto/customization/data/styles/identified/Slider.qml +++ b/tests/auto/customization/data/styles/identified/Slider.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Slider { id: control diff --git a/tests/auto/customization/data/styles/identified/SpinBox.qml b/tests/auto/customization/data/styles/identified/SpinBox.qml index 7871c975..0c058269 100644 --- a/tests/auto/customization/data/styles/identified/SpinBox.qml +++ b/tests/auto/customization/data/styles/identified/SpinBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.SpinBox { id: control diff --git a/tests/auto/customization/data/styles/identified/StackView.qml b/tests/auto/customization/data/styles/identified/StackView.qml index 20459d99..1bc5bf50 100644 --- a/tests/auto/customization/data/styles/identified/StackView.qml +++ b/tests/auto/customization/data/styles/identified/StackView.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.StackView { id: control diff --git a/tests/auto/customization/data/styles/identified/SwipeDelegate.qml b/tests/auto/customization/data/styles/identified/SwipeDelegate.qml index e60780f5..dadb54a5 100644 --- a/tests/auto/customization/data/styles/identified/SwipeDelegate.qml +++ b/tests/auto/customization/data/styles/identified/SwipeDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.SwipeDelegate { id: control diff --git a/tests/auto/customization/data/styles/identified/SwipeView.qml b/tests/auto/customization/data/styles/identified/SwipeView.qml index 0e5a19f6..aa256d99 100644 --- a/tests/auto/customization/data/styles/identified/SwipeView.qml +++ b/tests/auto/customization/data/styles/identified/SwipeView.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.SwipeView { id: control diff --git a/tests/auto/customization/data/styles/identified/Switch.qml b/tests/auto/customization/data/styles/identified/Switch.qml index f7e22f1f..be10b520 100644 --- a/tests/auto/customization/data/styles/identified/Switch.qml +++ b/tests/auto/customization/data/styles/identified/Switch.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Switch { id: control diff --git a/tests/auto/customization/data/styles/identified/SwitchDelegate.qml b/tests/auto/customization/data/styles/identified/SwitchDelegate.qml index bda30715..7205c973 100644 --- a/tests/auto/customization/data/styles/identified/SwitchDelegate.qml +++ b/tests/auto/customization/data/styles/identified/SwitchDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.SwitchDelegate { id: control diff --git a/tests/auto/customization/data/styles/identified/TabBar.qml b/tests/auto/customization/data/styles/identified/TabBar.qml index 3589f505..5d360cb1 100644 --- a/tests/auto/customization/data/styles/identified/TabBar.qml +++ b/tests/auto/customization/data/styles/identified/TabBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.TabBar { id: control diff --git a/tests/auto/customization/data/styles/identified/TabButton.qml b/tests/auto/customization/data/styles/identified/TabButton.qml index cc24fdfe..bc065b22 100644 --- a/tests/auto/customization/data/styles/identified/TabButton.qml +++ b/tests/auto/customization/data/styles/identified/TabButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.TabButton { id: control diff --git a/tests/auto/customization/data/styles/identified/TextArea.qml b/tests/auto/customization/data/styles/identified/TextArea.qml index c7ef2545..56671240 100644 --- a/tests/auto/customization/data/styles/identified/TextArea.qml +++ b/tests/auto/customization/data/styles/identified/TextArea.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.TextArea { id: control diff --git a/tests/auto/customization/data/styles/identified/TextField.qml b/tests/auto/customization/data/styles/identified/TextField.qml index 670fa9f7..1fef7ab5 100644 --- a/tests/auto/customization/data/styles/identified/TextField.qml +++ b/tests/auto/customization/data/styles/identified/TextField.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.TextField { id: control diff --git a/tests/auto/customization/data/styles/identified/ToolBar.qml b/tests/auto/customization/data/styles/identified/ToolBar.qml index 950f0c53..2061949c 100644 --- a/tests/auto/customization/data/styles/identified/ToolBar.qml +++ b/tests/auto/customization/data/styles/identified/ToolBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ToolBar { id: control diff --git a/tests/auto/customization/data/styles/identified/ToolButton.qml b/tests/auto/customization/data/styles/identified/ToolButton.qml index 792de9e5..253391a8 100644 --- a/tests/auto/customization/data/styles/identified/ToolButton.qml +++ b/tests/auto/customization/data/styles/identified/ToolButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ToolButton { id: control diff --git a/tests/auto/customization/data/styles/identified/ToolSeparator.qml b/tests/auto/customization/data/styles/identified/ToolSeparator.qml index a44fb331..b8cf9daa 100644 --- a/tests/auto/customization/data/styles/identified/ToolSeparator.qml +++ b/tests/auto/customization/data/styles/identified/ToolSeparator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ToolSeparator { id: control diff --git a/tests/auto/customization/data/styles/identified/ToolTip.qml b/tests/auto/customization/data/styles/identified/ToolTip.qml index 5ddf8920..1ef95c99 100644 --- a/tests/auto/customization/data/styles/identified/ToolTip.qml +++ b/tests/auto/customization/data/styles/identified/ToolTip.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ToolTip { id: control diff --git a/tests/auto/customization/data/styles/identified/Tumbler.qml b/tests/auto/customization/data/styles/identified/Tumbler.qml index ae123f08..3bfdafc4 100644 --- a/tests/auto/customization/data/styles/identified/Tumbler.qml +++ b/tests/auto/customization/data/styles/identified/Tumbler.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Tumbler { id: control diff --git a/tests/auto/customization/data/styles/identified/qmldir b/tests/auto/customization/data/styles/identified/qmldir new file mode 100644 index 00000000..1ee2a92e --- /dev/null +++ b/tests/auto/customization/data/styles/identified/qmldir @@ -0,0 +1,59 @@ +module identified + +AbstractButton 6.0 AbstractButton.qml +Action 6.0 Action.qml +ActionGroup 6.0 ActionGroup.qml +ApplicationWindow 6.0 ApplicationWindow.qml +BusyIndicator 6.0 BusyIndicator.qml +Button 6.0 Button.qml +ButtonGroup 6.0 ButtonGroup.qml +CheckBox 6.0 CheckBox.qml +CheckDelegate 6.0 CheckDelegate.qml +ComboBox 6.0 ComboBox.qml +Container 6.0 Container.qml +Control 6.0 Control.qml +DelayButton 6.0 DelayButton.qml +Dial 6.0 Dial.qml +Dialog 6.0 Dialog.qml +DialogButtonBox 6.0 DialogButtonBox.qml +Drawer 6.0 Drawer.qml +Frame 6.0 Frame.qml +GroupBox 6.0 GroupBox.qml +HorizontalHeaderView 6.0 HorizontalHeaderView.qml +ItemDelegate 6.0 ItemDelegate.qml +Label 6.0 Label.qml +Menu 6.0 Menu.qml +MenuBar 6.0 MenuBar.qml +MenuBarItem 6.0 MenuBarItem.qml +MenuItem 6.0 MenuItem.qml +MenuSeparator 6.0 MenuSeparator.qml +Page 6.0 Page.qml +PageIndicator 6.0 PageIndicator.qml +Pane 6.0 Pane.qml +Popup 6.0 Popup.qml +ProgressBar 6.0 ProgressBar.qml +RadioButton 6.0 RadioButton.qml +RadioDelegate 6.0 RadioDelegate.qml +RangeSlider 6.0 RangeSlider.qml +RoundButton 6.0 RoundButton.qml +ScrollBar 6.0 ScrollBar.qml +ScrollIndicator 6.0 ScrollIndicator.qml +ScrollView 6.0 ScrollView.qml +Slider 6.0 Slider.qml +SpinBox 6.0 SpinBox.qml +SplitView 6.0 SplitView.qml +StackView 6.0 StackView.qml +SwipeDelegate 6.0 SwipeDelegate.qml +SwipeView 6.0 SwipeView.qml +Switch 6.0 Switch.qml +SwitchDelegate 6.0 SwitchDelegate.qml +TabBar 6.0 TabBar.qml +TabButton 6.0 TabButton.qml +TextArea 6.0 TextArea.qml +TextField 6.0 TextField.qml +ToolBar 6.0 ToolBar.qml +ToolButton 6.0 ToolButton.qml +ToolSeparator 6.0 ToolSeparator.qml +ToolTip 6.0 ToolTip.qml +Tumbler 6.0 Tumbler.qml +VerticalHeaderView 6.0 VerticalHeaderView.qml diff --git a/tests/auto/customization/data/styles/incomplete/AbstractButton.qml b/tests/auto/customization/data/styles/incomplete/AbstractButton.qml index ee78f032..7e371050 100644 --- a/tests/auto/customization/data/styles/incomplete/AbstractButton.qml +++ b/tests/auto/customization/data/styles/incomplete/AbstractButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.AbstractButton { id: control diff --git a/tests/auto/customization/data/styles/incomplete/ApplicationWindow.qml b/tests/auto/customization/data/styles/incomplete/ApplicationWindow.qml index 45abc542..8fbdd1a4 100644 --- a/tests/auto/customization/data/styles/incomplete/ApplicationWindow.qml +++ b/tests/auto/customization/data/styles/incomplete/ApplicationWindow.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ApplicationWindow { id: control diff --git a/tests/auto/customization/data/styles/incomplete/BusyIndicator.qml b/tests/auto/customization/data/styles/incomplete/BusyIndicator.qml index e9a78add..b046163e 100644 --- a/tests/auto/customization/data/styles/incomplete/BusyIndicator.qml +++ b/tests/auto/customization/data/styles/incomplete/BusyIndicator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.BusyIndicator { id: control diff --git a/tests/auto/customization/data/styles/incomplete/Button.qml b/tests/auto/customization/data/styles/incomplete/Button.qml index 52f1e2f2..7daa248c 100644 --- a/tests/auto/customization/data/styles/incomplete/Button.qml +++ b/tests/auto/customization/data/styles/incomplete/Button.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Button { id: control diff --git a/tests/auto/customization/data/styles/incomplete/CheckBox.qml b/tests/auto/customization/data/styles/incomplete/CheckBox.qml index c599ca93..50bfa058 100644 --- a/tests/auto/customization/data/styles/incomplete/CheckBox.qml +++ b/tests/auto/customization/data/styles/incomplete/CheckBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.CheckBox { id: control diff --git a/tests/auto/customization/data/styles/incomplete/CheckDelegate.qml b/tests/auto/customization/data/styles/incomplete/CheckDelegate.qml index 673dbbd9..13c0e472 100644 --- a/tests/auto/customization/data/styles/incomplete/CheckDelegate.qml +++ b/tests/auto/customization/data/styles/incomplete/CheckDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.CheckDelegate { id: control diff --git a/tests/auto/customization/data/styles/incomplete/ComboBox.qml b/tests/auto/customization/data/styles/incomplete/ComboBox.qml index ef595e4f..b0ff6257 100644 --- a/tests/auto/customization/data/styles/incomplete/ComboBox.qml +++ b/tests/auto/customization/data/styles/incomplete/ComboBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ComboBox { id: control diff --git a/tests/auto/customization/data/styles/incomplete/Container.qml b/tests/auto/customization/data/styles/incomplete/Container.qml index 9b18ae49..0ad81bea 100644 --- a/tests/auto/customization/data/styles/incomplete/Container.qml +++ b/tests/auto/customization/data/styles/incomplete/Container.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Container { id: control diff --git a/tests/auto/customization/data/styles/incomplete/Control.qml b/tests/auto/customization/data/styles/incomplete/Control.qml index ccec0bf0..6f07f5da 100644 --- a/tests/auto/customization/data/styles/incomplete/Control.qml +++ b/tests/auto/customization/data/styles/incomplete/Control.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Control { id: control diff --git a/tests/auto/customization/data/styles/incomplete/DelayButton.qml b/tests/auto/customization/data/styles/incomplete/DelayButton.qml index bb21db26..b6ab635b 100644 --- a/tests/auto/customization/data/styles/incomplete/DelayButton.qml +++ b/tests/auto/customization/data/styles/incomplete/DelayButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.DelayButton { id: control diff --git a/tests/auto/customization/data/styles/incomplete/Dial.qml b/tests/auto/customization/data/styles/incomplete/Dial.qml index e9de0974..66600c63 100644 --- a/tests/auto/customization/data/styles/incomplete/Dial.qml +++ b/tests/auto/customization/data/styles/incomplete/Dial.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Dial { id: control diff --git a/tests/auto/customization/data/styles/incomplete/Dialog.qml b/tests/auto/customization/data/styles/incomplete/Dialog.qml index 9f8ad1fa..d8ab999e 100644 --- a/tests/auto/customization/data/styles/incomplete/Dialog.qml +++ b/tests/auto/customization/data/styles/incomplete/Dialog.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Dialog { id: control diff --git a/tests/auto/customization/data/styles/incomplete/DialogButtonBox.qml b/tests/auto/customization/data/styles/incomplete/DialogButtonBox.qml index 7dfaadf5..d7f954be 100644 --- a/tests/auto/customization/data/styles/incomplete/DialogButtonBox.qml +++ b/tests/auto/customization/data/styles/incomplete/DialogButtonBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.DialogButtonBox { id: control diff --git a/tests/auto/customization/data/styles/incomplete/Drawer.qml b/tests/auto/customization/data/styles/incomplete/Drawer.qml index 684221e5..5dadbd77 100644 --- a/tests/auto/customization/data/styles/incomplete/Drawer.qml +++ b/tests/auto/customization/data/styles/incomplete/Drawer.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Drawer { id: control diff --git a/tests/auto/customization/data/styles/incomplete/Frame.qml b/tests/auto/customization/data/styles/incomplete/Frame.qml index 9f409cfd..e447b5c2 100644 --- a/tests/auto/customization/data/styles/incomplete/Frame.qml +++ b/tests/auto/customization/data/styles/incomplete/Frame.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Frame { id: control diff --git a/tests/auto/customization/data/styles/incomplete/GroupBox.qml b/tests/auto/customization/data/styles/incomplete/GroupBox.qml index 4c5b258e..3597f158 100644 --- a/tests/auto/customization/data/styles/incomplete/GroupBox.qml +++ b/tests/auto/customization/data/styles/incomplete/GroupBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.GroupBox { id: control diff --git a/tests/auto/customization/data/styles/incomplete/ItemDelegate.qml b/tests/auto/customization/data/styles/incomplete/ItemDelegate.qml index 39063eb3..79334dcb 100644 --- a/tests/auto/customization/data/styles/incomplete/ItemDelegate.qml +++ b/tests/auto/customization/data/styles/incomplete/ItemDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ItemDelegate { id: control diff --git a/tests/auto/customization/data/styles/incomplete/Label.qml b/tests/auto/customization/data/styles/incomplete/Label.qml index 3a953004..e60ea00c 100644 --- a/tests/auto/customization/data/styles/incomplete/Label.qml +++ b/tests/auto/customization/data/styles/incomplete/Label.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Label { id: control diff --git a/tests/auto/customization/data/styles/incomplete/Menu.qml b/tests/auto/customization/data/styles/incomplete/Menu.qml index ca03cfe4..220d0038 100644 --- a/tests/auto/customization/data/styles/incomplete/Menu.qml +++ b/tests/auto/customization/data/styles/incomplete/Menu.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Menu { id: control diff --git a/tests/auto/customization/data/styles/incomplete/MenuBar.qml b/tests/auto/customization/data/styles/incomplete/MenuBar.qml index bc98d4c8..b782eb4d 100644 --- a/tests/auto/customization/data/styles/incomplete/MenuBar.qml +++ b/tests/auto/customization/data/styles/incomplete/MenuBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.MenuBar { id: control diff --git a/tests/auto/customization/data/styles/incomplete/MenuBarItem.qml b/tests/auto/customization/data/styles/incomplete/MenuBarItem.qml index 6b1dbc2e..a979ecb7 100644 --- a/tests/auto/customization/data/styles/incomplete/MenuBarItem.qml +++ b/tests/auto/customization/data/styles/incomplete/MenuBarItem.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.MenuBarItem { id: control diff --git a/tests/auto/customization/data/styles/incomplete/MenuItem.qml b/tests/auto/customization/data/styles/incomplete/MenuItem.qml index 40539eaf..b14f9089 100644 --- a/tests/auto/customization/data/styles/incomplete/MenuItem.qml +++ b/tests/auto/customization/data/styles/incomplete/MenuItem.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.MenuItem { id: control diff --git a/tests/auto/customization/data/styles/incomplete/MenuSeparator.qml b/tests/auto/customization/data/styles/incomplete/MenuSeparator.qml index eb799f31..ba6d27ec 100644 --- a/tests/auto/customization/data/styles/incomplete/MenuSeparator.qml +++ b/tests/auto/customization/data/styles/incomplete/MenuSeparator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.MenuSeparator { id: control diff --git a/tests/auto/customization/data/styles/incomplete/Page.qml b/tests/auto/customization/data/styles/incomplete/Page.qml index 22964846..dbd29521 100644 --- a/tests/auto/customization/data/styles/incomplete/Page.qml +++ b/tests/auto/customization/data/styles/incomplete/Page.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Page { id: control diff --git a/tests/auto/customization/data/styles/incomplete/PageIndicator.qml b/tests/auto/customization/data/styles/incomplete/PageIndicator.qml index 87cd3637..b1836340 100644 --- a/tests/auto/customization/data/styles/incomplete/PageIndicator.qml +++ b/tests/auto/customization/data/styles/incomplete/PageIndicator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.PageIndicator { id: control diff --git a/tests/auto/customization/data/styles/incomplete/Pane.qml b/tests/auto/customization/data/styles/incomplete/Pane.qml index f4c96887..ecd7cbdf 100644 --- a/tests/auto/customization/data/styles/incomplete/Pane.qml +++ b/tests/auto/customization/data/styles/incomplete/Pane.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Pane { id: control diff --git a/tests/auto/customization/data/styles/incomplete/Popup.qml b/tests/auto/customization/data/styles/incomplete/Popup.qml index fbba7f50..a3d7d8d5 100644 --- a/tests/auto/customization/data/styles/incomplete/Popup.qml +++ b/tests/auto/customization/data/styles/incomplete/Popup.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Popup { id: control diff --git a/tests/auto/customization/data/styles/incomplete/ProgressBar.qml b/tests/auto/customization/data/styles/incomplete/ProgressBar.qml index 0186fa4e..293fe254 100644 --- a/tests/auto/customization/data/styles/incomplete/ProgressBar.qml +++ b/tests/auto/customization/data/styles/incomplete/ProgressBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ProgressBar { id: control diff --git a/tests/auto/customization/data/styles/incomplete/RadioButton.qml b/tests/auto/customization/data/styles/incomplete/RadioButton.qml index fcd31ca6..f17729f7 100644 --- a/tests/auto/customization/data/styles/incomplete/RadioButton.qml +++ b/tests/auto/customization/data/styles/incomplete/RadioButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.RadioButton { id: control diff --git a/tests/auto/customization/data/styles/incomplete/RadioDelegate.qml b/tests/auto/customization/data/styles/incomplete/RadioDelegate.qml index b64c0cab..8dd08aea 100644 --- a/tests/auto/customization/data/styles/incomplete/RadioDelegate.qml +++ b/tests/auto/customization/data/styles/incomplete/RadioDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.RadioDelegate { id: control diff --git a/tests/auto/customization/data/styles/incomplete/RangeSlider.qml b/tests/auto/customization/data/styles/incomplete/RangeSlider.qml index c0faec20..3a6ba580 100644 --- a/tests/auto/customization/data/styles/incomplete/RangeSlider.qml +++ b/tests/auto/customization/data/styles/incomplete/RangeSlider.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.RangeSlider { id: control diff --git a/tests/auto/customization/data/styles/incomplete/RoundButton.qml b/tests/auto/customization/data/styles/incomplete/RoundButton.qml index ddb24e3d..d51ef732 100644 --- a/tests/auto/customization/data/styles/incomplete/RoundButton.qml +++ b/tests/auto/customization/data/styles/incomplete/RoundButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.RoundButton { id: control diff --git a/tests/auto/customization/data/styles/incomplete/ScrollBar.qml b/tests/auto/customization/data/styles/incomplete/ScrollBar.qml index a79c4daa..906a9847 100644 --- a/tests/auto/customization/data/styles/incomplete/ScrollBar.qml +++ b/tests/auto/customization/data/styles/incomplete/ScrollBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ScrollBar { id: control diff --git a/tests/auto/customization/data/styles/incomplete/ScrollIndicator.qml b/tests/auto/customization/data/styles/incomplete/ScrollIndicator.qml index 2401fbe5..b34d4097 100644 --- a/tests/auto/customization/data/styles/incomplete/ScrollIndicator.qml +++ b/tests/auto/customization/data/styles/incomplete/ScrollIndicator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ScrollIndicator { id: control diff --git a/tests/auto/customization/data/styles/incomplete/ScrollView.qml b/tests/auto/customization/data/styles/incomplete/ScrollView.qml index 736ea7b1..a120e05f 100644 --- a/tests/auto/customization/data/styles/incomplete/ScrollView.qml +++ b/tests/auto/customization/data/styles/incomplete/ScrollView.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ScrollView { id: control diff --git a/tests/auto/customization/data/styles/incomplete/Slider.qml b/tests/auto/customization/data/styles/incomplete/Slider.qml index b4ede96f..02b06d92 100644 --- a/tests/auto/customization/data/styles/incomplete/Slider.qml +++ b/tests/auto/customization/data/styles/incomplete/Slider.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Slider { id: control diff --git a/tests/auto/customization/data/styles/incomplete/SpinBox.qml b/tests/auto/customization/data/styles/incomplete/SpinBox.qml index 6303ab06..9ec62e01 100644 --- a/tests/auto/customization/data/styles/incomplete/SpinBox.qml +++ b/tests/auto/customization/data/styles/incomplete/SpinBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.SpinBox { id: control diff --git a/tests/auto/customization/data/styles/incomplete/StackView.qml b/tests/auto/customization/data/styles/incomplete/StackView.qml index b163a594..4108e166 100644 --- a/tests/auto/customization/data/styles/incomplete/StackView.qml +++ b/tests/auto/customization/data/styles/incomplete/StackView.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.StackView { id: control diff --git a/tests/auto/customization/data/styles/incomplete/SwipeDelegate.qml b/tests/auto/customization/data/styles/incomplete/SwipeDelegate.qml index a64b0fae..0da62d0f 100644 --- a/tests/auto/customization/data/styles/incomplete/SwipeDelegate.qml +++ b/tests/auto/customization/data/styles/incomplete/SwipeDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.SwipeDelegate { id: control diff --git a/tests/auto/customization/data/styles/incomplete/SwipeView.qml b/tests/auto/customization/data/styles/incomplete/SwipeView.qml index 07891063..434f9003 100644 --- a/tests/auto/customization/data/styles/incomplete/SwipeView.qml +++ b/tests/auto/customization/data/styles/incomplete/SwipeView.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.SwipeView { id: control diff --git a/tests/auto/customization/data/styles/incomplete/Switch.qml b/tests/auto/customization/data/styles/incomplete/Switch.qml index 53e41149..9f24763f 100644 --- a/tests/auto/customization/data/styles/incomplete/Switch.qml +++ b/tests/auto/customization/data/styles/incomplete/Switch.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Switch { id: control diff --git a/tests/auto/customization/data/styles/incomplete/SwitchDelegate.qml b/tests/auto/customization/data/styles/incomplete/SwitchDelegate.qml index c9be903f..a33809c7 100644 --- a/tests/auto/customization/data/styles/incomplete/SwitchDelegate.qml +++ b/tests/auto/customization/data/styles/incomplete/SwitchDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.SwitchDelegate { id: control diff --git a/tests/auto/customization/data/styles/incomplete/TabBar.qml b/tests/auto/customization/data/styles/incomplete/TabBar.qml index 1a55af4d..68e4f627 100644 --- a/tests/auto/customization/data/styles/incomplete/TabBar.qml +++ b/tests/auto/customization/data/styles/incomplete/TabBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.TabBar { id: control diff --git a/tests/auto/customization/data/styles/incomplete/TabButton.qml b/tests/auto/customization/data/styles/incomplete/TabButton.qml index e2e88a99..9ab619a9 100644 --- a/tests/auto/customization/data/styles/incomplete/TabButton.qml +++ b/tests/auto/customization/data/styles/incomplete/TabButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.TabButton { id: control diff --git a/tests/auto/customization/data/styles/incomplete/TextArea.qml b/tests/auto/customization/data/styles/incomplete/TextArea.qml index cf56e5a0..42f3d2fd 100644 --- a/tests/auto/customization/data/styles/incomplete/TextArea.qml +++ b/tests/auto/customization/data/styles/incomplete/TextArea.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.TextArea { id: control diff --git a/tests/auto/customization/data/styles/incomplete/TextField.qml b/tests/auto/customization/data/styles/incomplete/TextField.qml index 66f8372b..001d86b1 100644 --- a/tests/auto/customization/data/styles/incomplete/TextField.qml +++ b/tests/auto/customization/data/styles/incomplete/TextField.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.TextField { id: control diff --git a/tests/auto/customization/data/styles/incomplete/ToolBar.qml b/tests/auto/customization/data/styles/incomplete/ToolBar.qml index a665bd25..de0bdb39 100644 --- a/tests/auto/customization/data/styles/incomplete/ToolBar.qml +++ b/tests/auto/customization/data/styles/incomplete/ToolBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ToolBar { id: control diff --git a/tests/auto/customization/data/styles/incomplete/ToolButton.qml b/tests/auto/customization/data/styles/incomplete/ToolButton.qml index 3fa51246..12b55b15 100644 --- a/tests/auto/customization/data/styles/incomplete/ToolButton.qml +++ b/tests/auto/customization/data/styles/incomplete/ToolButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ToolButton { id: control diff --git a/tests/auto/customization/data/styles/incomplete/ToolSeparator.qml b/tests/auto/customization/data/styles/incomplete/ToolSeparator.qml index 17b26d7c..aa413dd0 100644 --- a/tests/auto/customization/data/styles/incomplete/ToolSeparator.qml +++ b/tests/auto/customization/data/styles/incomplete/ToolSeparator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ToolSeparator { id: control diff --git a/tests/auto/customization/data/styles/incomplete/ToolTip.qml b/tests/auto/customization/data/styles/incomplete/ToolTip.qml index 7aee3648..d2104f9e 100644 --- a/tests/auto/customization/data/styles/incomplete/ToolTip.qml +++ b/tests/auto/customization/data/styles/incomplete/ToolTip.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ToolTip { id: control diff --git a/tests/auto/customization/data/styles/incomplete/Tumbler.qml b/tests/auto/customization/data/styles/incomplete/Tumbler.qml index cda24bc2..996af0d2 100644 --- a/tests/auto/customization/data/styles/incomplete/Tumbler.qml +++ b/tests/auto/customization/data/styles/incomplete/Tumbler.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Tumbler { id: control diff --git a/tests/auto/customization/data/styles/incomplete/qmldir b/tests/auto/customization/data/styles/incomplete/qmldir new file mode 100644 index 00000000..e8813bd5 --- /dev/null +++ b/tests/auto/customization/data/styles/incomplete/qmldir @@ -0,0 +1,59 @@ +module incomplete + +AbstractButton 6.0 AbstractButton.qml +Action 6.0 Action.qml +ActionGroup 6.0 ActionGroup.qml +ApplicationWindow 6.0 ApplicationWindow.qml +BusyIndicator 6.0 BusyIndicator.qml +Button 6.0 Button.qml +ButtonGroup 6.0 ButtonGroup.qml +CheckBox 6.0 CheckBox.qml +CheckDelegate 6.0 CheckDelegate.qml +ComboBox 6.0 ComboBox.qml +Container 6.0 Container.qml +Control 6.0 Control.qml +DelayButton 6.0 DelayButton.qml +Dial 6.0 Dial.qml +Dialog 6.0 Dialog.qml +DialogButtonBox 6.0 DialogButtonBox.qml +Drawer 6.0 Drawer.qml +Frame 6.0 Frame.qml +GroupBox 6.0 GroupBox.qml +HorizontalHeaderView 6.0 HorizontalHeaderView.qml +ItemDelegate 6.0 ItemDelegate.qml +Label 6.0 Label.qml +Menu 6.0 Menu.qml +MenuBar 6.0 MenuBar.qml +MenuBarItem 6.0 MenuBarItem.qml +MenuItem 6.0 MenuItem.qml +MenuSeparator 6.0 MenuSeparator.qml +Page 6.0 Page.qml +PageIndicator 6.0 PageIndicator.qml +Pane 6.0 Pane.qml +Popup 6.0 Popup.qml +ProgressBar 6.0 ProgressBar.qml +RadioButton 6.0 RadioButton.qml +RadioDelegate 6.0 RadioDelegate.qml +RangeSlider 6.0 RangeSlider.qml +RoundButton 6.0 RoundButton.qml +ScrollBar 6.0 ScrollBar.qml +ScrollIndicator 6.0 ScrollIndicator.qml +ScrollView 6.0 ScrollView.qml +Slider 6.0 Slider.qml +SpinBox 6.0 SpinBox.qml +SplitView 6.0 SplitView.qml +StackView 6.0 StackView.qml +SwipeDelegate 6.0 SwipeDelegate.qml +SwipeView 6.0 SwipeView.qml +Switch 6.0 Switch.qml +SwitchDelegate 6.0 SwitchDelegate.qml +TabBar 6.0 TabBar.qml +TabButton 6.0 TabButton.qml +TextArea 6.0 TextArea.qml +TextField 6.0 TextField.qml +ToolBar 6.0 ToolBar.qml +ToolButton 6.0 ToolButton.qml +ToolSeparator 6.0 ToolSeparator.qml +ToolTip 6.0 ToolTip.qml +Tumbler 6.0 Tumbler.qml +VerticalHeaderView 6.0 VerticalHeaderView.qml diff --git a/tests/auto/customization/data/styles/override/AbstractButton.qml b/tests/auto/customization/data/styles/override/AbstractButton.qml index 398b51b7..e8bf0b90 100644 --- a/tests/auto/customization/data/styles/override/AbstractButton.qml +++ b/tests/auto/customization/data/styles/override/AbstractButton.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.AbstractButton { diff --git a/tests/auto/customization/data/styles/override/ApplicationWindow.qml b/tests/auto/customization/data/styles/override/ApplicationWindow.qml index 7a760574..43b94010 100644 --- a/tests/auto/customization/data/styles/override/ApplicationWindow.qml +++ b/tests/auto/customization/data/styles/override/ApplicationWindow.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.ApplicationWindow { diff --git a/tests/auto/customization/data/styles/override/BusyIndicator.qml b/tests/auto/customization/data/styles/override/BusyIndicator.qml index 2b70548f..12418ff7 100644 --- a/tests/auto/customization/data/styles/override/BusyIndicator.qml +++ b/tests/auto/customization/data/styles/override/BusyIndicator.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.BusyIndicator { diff --git a/tests/auto/customization/data/styles/override/Button.qml b/tests/auto/customization/data/styles/override/Button.qml index 35f260c3..692c2fda 100644 --- a/tests/auto/customization/data/styles/override/Button.qml +++ b/tests/auto/customization/data/styles/override/Button.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.Button { diff --git a/tests/auto/customization/data/styles/override/CheckBox.qml b/tests/auto/customization/data/styles/override/CheckBox.qml index 857b86ea..9830931b 100644 --- a/tests/auto/customization/data/styles/override/CheckBox.qml +++ b/tests/auto/customization/data/styles/override/CheckBox.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.CheckBox { diff --git a/tests/auto/customization/data/styles/override/CheckDelegate.qml b/tests/auto/customization/data/styles/override/CheckDelegate.qml index 17e0ed48..77cdf23d 100644 --- a/tests/auto/customization/data/styles/override/CheckDelegate.qml +++ b/tests/auto/customization/data/styles/override/CheckDelegate.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.CheckDelegate { diff --git a/tests/auto/customization/data/styles/override/ComboBox.qml b/tests/auto/customization/data/styles/override/ComboBox.qml index a41e4674..c3276dcc 100644 --- a/tests/auto/customization/data/styles/override/ComboBox.qml +++ b/tests/auto/customization/data/styles/override/ComboBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T import "../simple" as Simple Simple.ComboBox { diff --git a/tests/auto/customization/data/styles/override/Container.qml b/tests/auto/customization/data/styles/override/Container.qml index d4d6c189..b732aefa 100644 --- a/tests/auto/customization/data/styles/override/Container.qml +++ b/tests/auto/customization/data/styles/override/Container.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.Container { diff --git a/tests/auto/customization/data/styles/override/Control.qml b/tests/auto/customization/data/styles/override/Control.qml index fc6acb8f..b4fefcf5 100644 --- a/tests/auto/customization/data/styles/override/Control.qml +++ b/tests/auto/customization/data/styles/override/Control.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.Control { diff --git a/tests/auto/customization/data/styles/override/DelayButton.qml b/tests/auto/customization/data/styles/override/DelayButton.qml index 69fcf49d..5ee03d57 100644 --- a/tests/auto/customization/data/styles/override/DelayButton.qml +++ b/tests/auto/customization/data/styles/override/DelayButton.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.DelayButton { diff --git a/tests/auto/customization/data/styles/override/Dial.qml b/tests/auto/customization/data/styles/override/Dial.qml index 484f8c3f..d452a58f 100644 --- a/tests/auto/customization/data/styles/override/Dial.qml +++ b/tests/auto/customization/data/styles/override/Dial.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.Dial { diff --git a/tests/auto/customization/data/styles/override/Dialog.qml b/tests/auto/customization/data/styles/override/Dialog.qml index 81798a39..29e3d26d 100644 --- a/tests/auto/customization/data/styles/override/Dialog.qml +++ b/tests/auto/customization/data/styles/override/Dialog.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.Dialog { diff --git a/tests/auto/customization/data/styles/override/DialogButtonBox.qml b/tests/auto/customization/data/styles/override/DialogButtonBox.qml index 5ab315d4..c79b9f81 100644 --- a/tests/auto/customization/data/styles/override/DialogButtonBox.qml +++ b/tests/auto/customization/data/styles/override/DialogButtonBox.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.DialogButtonBox { diff --git a/tests/auto/customization/data/styles/override/Drawer.qml b/tests/auto/customization/data/styles/override/Drawer.qml index 943522e7..65aa625c 100644 --- a/tests/auto/customization/data/styles/override/Drawer.qml +++ b/tests/auto/customization/data/styles/override/Drawer.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.Drawer { diff --git a/tests/auto/customization/data/styles/override/Frame.qml b/tests/auto/customization/data/styles/override/Frame.qml index b3b589b5..b31b70aa 100644 --- a/tests/auto/customization/data/styles/override/Frame.qml +++ b/tests/auto/customization/data/styles/override/Frame.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.Frame { diff --git a/tests/auto/customization/data/styles/override/GroupBox.qml b/tests/auto/customization/data/styles/override/GroupBox.qml index 570bc63e..0d0bfbd9 100644 --- a/tests/auto/customization/data/styles/override/GroupBox.qml +++ b/tests/auto/customization/data/styles/override/GroupBox.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.GroupBox { diff --git a/tests/auto/customization/data/styles/override/ItemDelegate.qml b/tests/auto/customization/data/styles/override/ItemDelegate.qml index 6b2fd928..4a087c75 100644 --- a/tests/auto/customization/data/styles/override/ItemDelegate.qml +++ b/tests/auto/customization/data/styles/override/ItemDelegate.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.ItemDelegate { diff --git a/tests/auto/customization/data/styles/override/Label.qml b/tests/auto/customization/data/styles/override/Label.qml index 249a9e99..883cff74 100644 --- a/tests/auto/customization/data/styles/override/Label.qml +++ b/tests/auto/customization/data/styles/override/Label.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.Label { diff --git a/tests/auto/customization/data/styles/override/Menu.qml b/tests/auto/customization/data/styles/override/Menu.qml index 4e10c480..f551fae8 100644 --- a/tests/auto/customization/data/styles/override/Menu.qml +++ b/tests/auto/customization/data/styles/override/Menu.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.Menu { diff --git a/tests/auto/customization/data/styles/override/MenuBar.qml b/tests/auto/customization/data/styles/override/MenuBar.qml index baeef209..b7f54cfb 100644 --- a/tests/auto/customization/data/styles/override/MenuBar.qml +++ b/tests/auto/customization/data/styles/override/MenuBar.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.MenuBar { diff --git a/tests/auto/customization/data/styles/override/MenuBarItem.qml b/tests/auto/customization/data/styles/override/MenuBarItem.qml index a76ca190..513b59ce 100644 --- a/tests/auto/customization/data/styles/override/MenuBarItem.qml +++ b/tests/auto/customization/data/styles/override/MenuBarItem.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.MenuBarItem { diff --git a/tests/auto/customization/data/styles/override/MenuItem.qml b/tests/auto/customization/data/styles/override/MenuItem.qml index ee10e1ba..7f7f569a 100644 --- a/tests/auto/customization/data/styles/override/MenuItem.qml +++ b/tests/auto/customization/data/styles/override/MenuItem.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.MenuItem { diff --git a/tests/auto/customization/data/styles/override/MenuSeparator.qml b/tests/auto/customization/data/styles/override/MenuSeparator.qml index c60cedea..57a2db15 100644 --- a/tests/auto/customization/data/styles/override/MenuSeparator.qml +++ b/tests/auto/customization/data/styles/override/MenuSeparator.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.MenuSeparator { diff --git a/tests/auto/customization/data/styles/override/Page.qml b/tests/auto/customization/data/styles/override/Page.qml index 9f85d9e9..c51d1e73 100644 --- a/tests/auto/customization/data/styles/override/Page.qml +++ b/tests/auto/customization/data/styles/override/Page.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.Page { diff --git a/tests/auto/customization/data/styles/override/PageIndicator.qml b/tests/auto/customization/data/styles/override/PageIndicator.qml index 1d1e20ed..3d58299e 100644 --- a/tests/auto/customization/data/styles/override/PageIndicator.qml +++ b/tests/auto/customization/data/styles/override/PageIndicator.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.PageIndicator { diff --git a/tests/auto/customization/data/styles/override/Pane.qml b/tests/auto/customization/data/styles/override/Pane.qml index fb56cc07..70a29441 100644 --- a/tests/auto/customization/data/styles/override/Pane.qml +++ b/tests/auto/customization/data/styles/override/Pane.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.Pane { diff --git a/tests/auto/customization/data/styles/override/Popup.qml b/tests/auto/customization/data/styles/override/Popup.qml index 54e8a4f7..a63879bd 100644 --- a/tests/auto/customization/data/styles/override/Popup.qml +++ b/tests/auto/customization/data/styles/override/Popup.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.Popup { diff --git a/tests/auto/customization/data/styles/override/ProgressBar.qml b/tests/auto/customization/data/styles/override/ProgressBar.qml index ce0623f2..2a9e636a 100644 --- a/tests/auto/customization/data/styles/override/ProgressBar.qml +++ b/tests/auto/customization/data/styles/override/ProgressBar.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.ProgressBar { diff --git a/tests/auto/customization/data/styles/override/RadioButton.qml b/tests/auto/customization/data/styles/override/RadioButton.qml index c435b3d9..5bd5c721 100644 --- a/tests/auto/customization/data/styles/override/RadioButton.qml +++ b/tests/auto/customization/data/styles/override/RadioButton.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.RadioButton { diff --git a/tests/auto/customization/data/styles/override/RadioDelegate.qml b/tests/auto/customization/data/styles/override/RadioDelegate.qml index 2659800e..7fbe3833 100644 --- a/tests/auto/customization/data/styles/override/RadioDelegate.qml +++ b/tests/auto/customization/data/styles/override/RadioDelegate.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.RadioDelegate { diff --git a/tests/auto/customization/data/styles/override/RangeSlider.qml b/tests/auto/customization/data/styles/override/RangeSlider.qml index 7c8cdbbc..0f4cda99 100644 --- a/tests/auto/customization/data/styles/override/RangeSlider.qml +++ b/tests/auto/customization/data/styles/override/RangeSlider.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.RangeSlider { diff --git a/tests/auto/customization/data/styles/override/RoundButton.qml b/tests/auto/customization/data/styles/override/RoundButton.qml index 233d0c30..1a0b0e05 100644 --- a/tests/auto/customization/data/styles/override/RoundButton.qml +++ b/tests/auto/customization/data/styles/override/RoundButton.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.RoundButton { diff --git a/tests/auto/customization/data/styles/override/ScrollBar.qml b/tests/auto/customization/data/styles/override/ScrollBar.qml index 69fc08f6..fc551710 100644 --- a/tests/auto/customization/data/styles/override/ScrollBar.qml +++ b/tests/auto/customization/data/styles/override/ScrollBar.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.ScrollBar { diff --git a/tests/auto/customization/data/styles/override/ScrollIndicator.qml b/tests/auto/customization/data/styles/override/ScrollIndicator.qml index 15a44e7a..06497abb 100644 --- a/tests/auto/customization/data/styles/override/ScrollIndicator.qml +++ b/tests/auto/customization/data/styles/override/ScrollIndicator.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.ScrollIndicator { diff --git a/tests/auto/customization/data/styles/override/ScrollView.qml b/tests/auto/customization/data/styles/override/ScrollView.qml index a8041961..bc02c265 100644 --- a/tests/auto/customization/data/styles/override/ScrollView.qml +++ b/tests/auto/customization/data/styles/override/ScrollView.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.ScrollView { diff --git a/tests/auto/customization/data/styles/override/Slider.qml b/tests/auto/customization/data/styles/override/Slider.qml index 252752fd..052c523b 100644 --- a/tests/auto/customization/data/styles/override/Slider.qml +++ b/tests/auto/customization/data/styles/override/Slider.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.Slider { diff --git a/tests/auto/customization/data/styles/override/SpinBox.qml b/tests/auto/customization/data/styles/override/SpinBox.qml index 041ba6a0..d074ec63 100644 --- a/tests/auto/customization/data/styles/override/SpinBox.qml +++ b/tests/auto/customization/data/styles/override/SpinBox.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.SpinBox { diff --git a/tests/auto/customization/data/styles/override/StackView.qml b/tests/auto/customization/data/styles/override/StackView.qml index aa35fd62..bc33d64b 100644 --- a/tests/auto/customization/data/styles/override/StackView.qml +++ b/tests/auto/customization/data/styles/override/StackView.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.StackView { diff --git a/tests/auto/customization/data/styles/override/SwipeDelegate.qml b/tests/auto/customization/data/styles/override/SwipeDelegate.qml index 634f1e69..bb387370 100644 --- a/tests/auto/customization/data/styles/override/SwipeDelegate.qml +++ b/tests/auto/customization/data/styles/override/SwipeDelegate.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.SwipeDelegate { diff --git a/tests/auto/customization/data/styles/override/SwipeView.qml b/tests/auto/customization/data/styles/override/SwipeView.qml index ffea0df8..63646a0b 100644 --- a/tests/auto/customization/data/styles/override/SwipeView.qml +++ b/tests/auto/customization/data/styles/override/SwipeView.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.SwipeView { diff --git a/tests/auto/customization/data/styles/override/Switch.qml b/tests/auto/customization/data/styles/override/Switch.qml index 0006b00d..57a3f804 100644 --- a/tests/auto/customization/data/styles/override/Switch.qml +++ b/tests/auto/customization/data/styles/override/Switch.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.Switch { diff --git a/tests/auto/customization/data/styles/override/SwitchDelegate.qml b/tests/auto/customization/data/styles/override/SwitchDelegate.qml index 6a9e318c..6b9986d8 100644 --- a/tests/auto/customization/data/styles/override/SwitchDelegate.qml +++ b/tests/auto/customization/data/styles/override/SwitchDelegate.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.SwitchDelegate { diff --git a/tests/auto/customization/data/styles/override/TabBar.qml b/tests/auto/customization/data/styles/override/TabBar.qml index 11c009e6..b3e03bdd 100644 --- a/tests/auto/customization/data/styles/override/TabBar.qml +++ b/tests/auto/customization/data/styles/override/TabBar.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.TabBar { diff --git a/tests/auto/customization/data/styles/override/TabButton.qml b/tests/auto/customization/data/styles/override/TabButton.qml index 967e6ab5..f2852f68 100644 --- a/tests/auto/customization/data/styles/override/TabButton.qml +++ b/tests/auto/customization/data/styles/override/TabButton.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.TabButton { diff --git a/tests/auto/customization/data/styles/override/TextArea.qml b/tests/auto/customization/data/styles/override/TextArea.qml index 5a1b1fe9..ad4a3c7b 100644 --- a/tests/auto/customization/data/styles/override/TextArea.qml +++ b/tests/auto/customization/data/styles/override/TextArea.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.TextArea { diff --git a/tests/auto/customization/data/styles/override/TextField.qml b/tests/auto/customization/data/styles/override/TextField.qml index 2c37d9ae..39bb695e 100644 --- a/tests/auto/customization/data/styles/override/TextField.qml +++ b/tests/auto/customization/data/styles/override/TextField.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.TextField { diff --git a/tests/auto/customization/data/styles/override/ToolBar.qml b/tests/auto/customization/data/styles/override/ToolBar.qml index 51346893..8af7238e 100644 --- a/tests/auto/customization/data/styles/override/ToolBar.qml +++ b/tests/auto/customization/data/styles/override/ToolBar.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.ToolBar { diff --git a/tests/auto/customization/data/styles/override/ToolButton.qml b/tests/auto/customization/data/styles/override/ToolButton.qml index 67bbcf64..a9e285fb 100644 --- a/tests/auto/customization/data/styles/override/ToolButton.qml +++ b/tests/auto/customization/data/styles/override/ToolButton.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.ToolButton { diff --git a/tests/auto/customization/data/styles/override/ToolSeparator.qml b/tests/auto/customization/data/styles/override/ToolSeparator.qml index 70704e6b..5c6b408d 100644 --- a/tests/auto/customization/data/styles/override/ToolSeparator.qml +++ b/tests/auto/customization/data/styles/override/ToolSeparator.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.ToolSeparator { diff --git a/tests/auto/customization/data/styles/override/ToolTip.qml b/tests/auto/customization/data/styles/override/ToolTip.qml index 4be4dc43..642d6184 100644 --- a/tests/auto/customization/data/styles/override/ToolTip.qml +++ b/tests/auto/customization/data/styles/override/ToolTip.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.ToolTip { diff --git a/tests/auto/customization/data/styles/override/Tumbler.qml b/tests/auto/customization/data/styles/override/Tumbler.qml index f3d56273..72d68f8a 100644 --- a/tests/auto/customization/data/styles/override/Tumbler.qml +++ b/tests/auto/customization/data/styles/override/Tumbler.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "../simple" as Simple Simple.Tumbler { diff --git a/tests/auto/customization/data/styles/override/qmldir b/tests/auto/customization/data/styles/override/qmldir new file mode 100644 index 00000000..f15ba96a --- /dev/null +++ b/tests/auto/customization/data/styles/override/qmldir @@ -0,0 +1,59 @@ +module override + +AbstractButton 6.0 AbstractButton.qml +Action 6.0 Action.qml +ActionGroup 6.0 ActionGroup.qml +ApplicationWindow 6.0 ApplicationWindow.qml +BusyIndicator 6.0 BusyIndicator.qml +Button 6.0 Button.qml +ButtonGroup 6.0 ButtonGroup.qml +CheckBox 6.0 CheckBox.qml +CheckDelegate 6.0 CheckDelegate.qml +ComboBox 6.0 ComboBox.qml +Container 6.0 Container.qml +Control 6.0 Control.qml +DelayButton 6.0 DelayButton.qml +Dial 6.0 Dial.qml +Dialog 6.0 Dialog.qml +DialogButtonBox 6.0 DialogButtonBox.qml +Drawer 6.0 Drawer.qml +Frame 6.0 Frame.qml +GroupBox 6.0 GroupBox.qml +HorizontalHeaderView 6.0 HorizontalHeaderView.qml +ItemDelegate 6.0 ItemDelegate.qml +Label 6.0 Label.qml +Menu 6.0 Menu.qml +MenuBar 6.0 MenuBar.qml +MenuBarItem 6.0 MenuBarItem.qml +MenuItem 6.0 MenuItem.qml +MenuSeparator 6.0 MenuSeparator.qml +Page 6.0 Page.qml +PageIndicator 6.0 PageIndicator.qml +Pane 6.0 Pane.qml +Popup 6.0 Popup.qml +ProgressBar 6.0 ProgressBar.qml +RadioButton 6.0 RadioButton.qml +RadioDelegate 6.0 RadioDelegate.qml +RangeSlider 6.0 RangeSlider.qml +RoundButton 6.0 RoundButton.qml +ScrollBar 6.0 ScrollBar.qml +ScrollIndicator 6.0 ScrollIndicator.qml +ScrollView 6.0 ScrollView.qml +Slider 6.0 Slider.qml +SpinBox 6.0 SpinBox.qml +SplitView 6.0 SplitView.qml +StackView 6.0 StackView.qml +SwipeDelegate 6.0 SwipeDelegate.qml +SwipeView 6.0 SwipeView.qml +Switch 6.0 Switch.qml +SwitchDelegate 6.0 SwitchDelegate.qml +TabBar 6.0 TabBar.qml +TabButton 6.0 TabButton.qml +TextArea 6.0 TextArea.qml +TextField 6.0 TextField.qml +ToolBar 6.0 ToolBar.qml +ToolButton 6.0 ToolButton.qml +ToolSeparator 6.0 ToolSeparator.qml +ToolTip 6.0 ToolTip.qml +Tumbler 6.0 Tumbler.qml +VerticalHeaderView 6.0 VerticalHeaderView.qml diff --git a/tests/auto/customization/data/styles/simple/AbstractButton.qml b/tests/auto/customization/data/styles/simple/AbstractButton.qml index 2daaea48..f8eaef0c 100644 --- a/tests/auto/customization/data/styles/simple/AbstractButton.qml +++ b/tests/auto/customization/data/styles/simple/AbstractButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.AbstractButton { id: control diff --git a/tests/auto/customization/data/styles/simple/ApplicationWindow.qml b/tests/auto/customization/data/styles/simple/ApplicationWindow.qml index 6cf6440d..ec39193b 100644 --- a/tests/auto/customization/data/styles/simple/ApplicationWindow.qml +++ b/tests/auto/customization/data/styles/simple/ApplicationWindow.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ApplicationWindow { id: control diff --git a/tests/auto/customization/data/styles/simple/BusyIndicator.qml b/tests/auto/customization/data/styles/simple/BusyIndicator.qml index f859a09b..1dcebb9b 100644 --- a/tests/auto/customization/data/styles/simple/BusyIndicator.qml +++ b/tests/auto/customization/data/styles/simple/BusyIndicator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.BusyIndicator { id: control diff --git a/tests/auto/customization/data/styles/simple/Button.qml b/tests/auto/customization/data/styles/simple/Button.qml index 66240ba2..993c585b 100644 --- a/tests/auto/customization/data/styles/simple/Button.qml +++ b/tests/auto/customization/data/styles/simple/Button.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Button { id: control diff --git a/tests/auto/customization/data/styles/simple/CheckBox.qml b/tests/auto/customization/data/styles/simple/CheckBox.qml index 931228b0..f4a95f0f 100644 --- a/tests/auto/customization/data/styles/simple/CheckBox.qml +++ b/tests/auto/customization/data/styles/simple/CheckBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.CheckBox { id: control diff --git a/tests/auto/customization/data/styles/simple/CheckDelegate.qml b/tests/auto/customization/data/styles/simple/CheckDelegate.qml index cc1cdd7a..563db329 100644 --- a/tests/auto/customization/data/styles/simple/CheckDelegate.qml +++ b/tests/auto/customization/data/styles/simple/CheckDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.CheckDelegate { id: control diff --git a/tests/auto/customization/data/styles/simple/ComboBox.qml b/tests/auto/customization/data/styles/simple/ComboBox.qml index 658f5d77..ed861389 100644 --- a/tests/auto/customization/data/styles/simple/ComboBox.qml +++ b/tests/auto/customization/data/styles/simple/ComboBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ComboBox { id: control diff --git a/tests/auto/customization/data/styles/simple/Container.qml b/tests/auto/customization/data/styles/simple/Container.qml index cfa32324..4a150096 100644 --- a/tests/auto/customization/data/styles/simple/Container.qml +++ b/tests/auto/customization/data/styles/simple/Container.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Container { id: control diff --git a/tests/auto/customization/data/styles/simple/Control.qml b/tests/auto/customization/data/styles/simple/Control.qml index d8ba3c81..e083f8ac 100644 --- a/tests/auto/customization/data/styles/simple/Control.qml +++ b/tests/auto/customization/data/styles/simple/Control.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Control { id: control diff --git a/tests/auto/customization/data/styles/simple/DelayButton.qml b/tests/auto/customization/data/styles/simple/DelayButton.qml index d48abf9c..8f33c401 100644 --- a/tests/auto/customization/data/styles/simple/DelayButton.qml +++ b/tests/auto/customization/data/styles/simple/DelayButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.DelayButton { id: control diff --git a/tests/auto/customization/data/styles/simple/Dial.qml b/tests/auto/customization/data/styles/simple/Dial.qml index 26f1f86a..c1a9b50b 100644 --- a/tests/auto/customization/data/styles/simple/Dial.qml +++ b/tests/auto/customization/data/styles/simple/Dial.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Dial { id: control diff --git a/tests/auto/customization/data/styles/simple/Dialog.qml b/tests/auto/customization/data/styles/simple/Dialog.qml index 020ff66b..787acca9 100644 --- a/tests/auto/customization/data/styles/simple/Dialog.qml +++ b/tests/auto/customization/data/styles/simple/Dialog.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Dialog { id: control diff --git a/tests/auto/customization/data/styles/simple/DialogButtonBox.qml b/tests/auto/customization/data/styles/simple/DialogButtonBox.qml index 6514647e..d7da32e0 100644 --- a/tests/auto/customization/data/styles/simple/DialogButtonBox.qml +++ b/tests/auto/customization/data/styles/simple/DialogButtonBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.DialogButtonBox { id: control diff --git a/tests/auto/customization/data/styles/simple/Drawer.qml b/tests/auto/customization/data/styles/simple/Drawer.qml index ac75cbdf..8239b1af 100644 --- a/tests/auto/customization/data/styles/simple/Drawer.qml +++ b/tests/auto/customization/data/styles/simple/Drawer.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Drawer { id: control diff --git a/tests/auto/customization/data/styles/simple/Frame.qml b/tests/auto/customization/data/styles/simple/Frame.qml index 11a8e0fc..cbeb3c5d 100644 --- a/tests/auto/customization/data/styles/simple/Frame.qml +++ b/tests/auto/customization/data/styles/simple/Frame.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Frame { id: control diff --git a/tests/auto/customization/data/styles/simple/GroupBox.qml b/tests/auto/customization/data/styles/simple/GroupBox.qml index 309950ea..14dc3341 100644 --- a/tests/auto/customization/data/styles/simple/GroupBox.qml +++ b/tests/auto/customization/data/styles/simple/GroupBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.GroupBox { id: control diff --git a/tests/auto/customization/data/styles/simple/ItemDelegate.qml b/tests/auto/customization/data/styles/simple/ItemDelegate.qml index 9eb3c9c8..a22ec3aa 100644 --- a/tests/auto/customization/data/styles/simple/ItemDelegate.qml +++ b/tests/auto/customization/data/styles/simple/ItemDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ItemDelegate { id: control diff --git a/tests/auto/customization/data/styles/simple/Label.qml b/tests/auto/customization/data/styles/simple/Label.qml index d7afddbb..80b34723 100644 --- a/tests/auto/customization/data/styles/simple/Label.qml +++ b/tests/auto/customization/data/styles/simple/Label.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Label { id: control diff --git a/tests/auto/customization/data/styles/simple/Menu.qml b/tests/auto/customization/data/styles/simple/Menu.qml index 3c2d487c..7538bd5b 100644 --- a/tests/auto/customization/data/styles/simple/Menu.qml +++ b/tests/auto/customization/data/styles/simple/Menu.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Menu { id: control diff --git a/tests/auto/customization/data/styles/simple/MenuBar.qml b/tests/auto/customization/data/styles/simple/MenuBar.qml index 1e64a3ac..a38c876e 100644 --- a/tests/auto/customization/data/styles/simple/MenuBar.qml +++ b/tests/auto/customization/data/styles/simple/MenuBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.MenuBar { id: control diff --git a/tests/auto/customization/data/styles/simple/MenuBarItem.qml b/tests/auto/customization/data/styles/simple/MenuBarItem.qml index 1454ceaa..de9dc929 100644 --- a/tests/auto/customization/data/styles/simple/MenuBarItem.qml +++ b/tests/auto/customization/data/styles/simple/MenuBarItem.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.MenuBarItem { id: control diff --git a/tests/auto/customization/data/styles/simple/MenuItem.qml b/tests/auto/customization/data/styles/simple/MenuItem.qml index 59ac3471..28d5998b 100644 --- a/tests/auto/customization/data/styles/simple/MenuItem.qml +++ b/tests/auto/customization/data/styles/simple/MenuItem.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.MenuItem { id: control diff --git a/tests/auto/customization/data/styles/simple/MenuSeparator.qml b/tests/auto/customization/data/styles/simple/MenuSeparator.qml index 413b412f..3df17b58 100644 --- a/tests/auto/customization/data/styles/simple/MenuSeparator.qml +++ b/tests/auto/customization/data/styles/simple/MenuSeparator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.MenuSeparator { id: control diff --git a/tests/auto/customization/data/styles/simple/Page.qml b/tests/auto/customization/data/styles/simple/Page.qml index 950bbdc0..51ec6063 100644 --- a/tests/auto/customization/data/styles/simple/Page.qml +++ b/tests/auto/customization/data/styles/simple/Page.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Page { id: control diff --git a/tests/auto/customization/data/styles/simple/PageIndicator.qml b/tests/auto/customization/data/styles/simple/PageIndicator.qml index 7ec5c57a..d508687f 100644 --- a/tests/auto/customization/data/styles/simple/PageIndicator.qml +++ b/tests/auto/customization/data/styles/simple/PageIndicator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.PageIndicator { id: control diff --git a/tests/auto/customization/data/styles/simple/Pane.qml b/tests/auto/customization/data/styles/simple/Pane.qml index 86fb079f..3b9e12b8 100644 --- a/tests/auto/customization/data/styles/simple/Pane.qml +++ b/tests/auto/customization/data/styles/simple/Pane.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Pane { id: control diff --git a/tests/auto/customization/data/styles/simple/Popup.qml b/tests/auto/customization/data/styles/simple/Popup.qml index 41b90be0..8b62fcad 100644 --- a/tests/auto/customization/data/styles/simple/Popup.qml +++ b/tests/auto/customization/data/styles/simple/Popup.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Popup { id: control diff --git a/tests/auto/customization/data/styles/simple/ProgressBar.qml b/tests/auto/customization/data/styles/simple/ProgressBar.qml index 81c0f146..3f04e6b2 100644 --- a/tests/auto/customization/data/styles/simple/ProgressBar.qml +++ b/tests/auto/customization/data/styles/simple/ProgressBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ProgressBar { id: control diff --git a/tests/auto/customization/data/styles/simple/RadioButton.qml b/tests/auto/customization/data/styles/simple/RadioButton.qml index c9910756..7ca5973b 100644 --- a/tests/auto/customization/data/styles/simple/RadioButton.qml +++ b/tests/auto/customization/data/styles/simple/RadioButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.RadioButton { id: control diff --git a/tests/auto/customization/data/styles/simple/RadioDelegate.qml b/tests/auto/customization/data/styles/simple/RadioDelegate.qml index c59fa336..bc96ad47 100644 --- a/tests/auto/customization/data/styles/simple/RadioDelegate.qml +++ b/tests/auto/customization/data/styles/simple/RadioDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.RadioDelegate { id: control diff --git a/tests/auto/customization/data/styles/simple/RangeSlider.qml b/tests/auto/customization/data/styles/simple/RangeSlider.qml index d16c4bcf..202688c4 100644 --- a/tests/auto/customization/data/styles/simple/RangeSlider.qml +++ b/tests/auto/customization/data/styles/simple/RangeSlider.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.RangeSlider { id: control diff --git a/tests/auto/customization/data/styles/simple/RoundButton.qml b/tests/auto/customization/data/styles/simple/RoundButton.qml index c5609e34..3547239f 100644 --- a/tests/auto/customization/data/styles/simple/RoundButton.qml +++ b/tests/auto/customization/data/styles/simple/RoundButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.RoundButton { id: control diff --git a/tests/auto/customization/data/styles/simple/ScrollBar.qml b/tests/auto/customization/data/styles/simple/ScrollBar.qml index 01f3f78e..25bc3e09 100644 --- a/tests/auto/customization/data/styles/simple/ScrollBar.qml +++ b/tests/auto/customization/data/styles/simple/ScrollBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ScrollBar { id: control diff --git a/tests/auto/customization/data/styles/simple/ScrollIndicator.qml b/tests/auto/customization/data/styles/simple/ScrollIndicator.qml index 4b802ed7..a901671b 100644 --- a/tests/auto/customization/data/styles/simple/ScrollIndicator.qml +++ b/tests/auto/customization/data/styles/simple/ScrollIndicator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ScrollIndicator { id: control diff --git a/tests/auto/customization/data/styles/simple/ScrollView.qml b/tests/auto/customization/data/styles/simple/ScrollView.qml index fe782285..56334d84 100644 --- a/tests/auto/customization/data/styles/simple/ScrollView.qml +++ b/tests/auto/customization/data/styles/simple/ScrollView.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ScrollView { id: control diff --git a/tests/auto/customization/data/styles/simple/Slider.qml b/tests/auto/customization/data/styles/simple/Slider.qml index 109709b2..d5417404 100644 --- a/tests/auto/customization/data/styles/simple/Slider.qml +++ b/tests/auto/customization/data/styles/simple/Slider.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Slider { id: control diff --git a/tests/auto/customization/data/styles/simple/SpinBox.qml b/tests/auto/customization/data/styles/simple/SpinBox.qml index 9db98875..0facffad 100644 --- a/tests/auto/customization/data/styles/simple/SpinBox.qml +++ b/tests/auto/customization/data/styles/simple/SpinBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.SpinBox { id: control diff --git a/tests/auto/customization/data/styles/simple/StackView.qml b/tests/auto/customization/data/styles/simple/StackView.qml index f1439275..e16b9938 100644 --- a/tests/auto/customization/data/styles/simple/StackView.qml +++ b/tests/auto/customization/data/styles/simple/StackView.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.StackView { id: control diff --git a/tests/auto/customization/data/styles/simple/SwipeDelegate.qml b/tests/auto/customization/data/styles/simple/SwipeDelegate.qml index 27701a92..fec9f120 100644 --- a/tests/auto/customization/data/styles/simple/SwipeDelegate.qml +++ b/tests/auto/customization/data/styles/simple/SwipeDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.SwipeDelegate { id: control diff --git a/tests/auto/customization/data/styles/simple/SwipeView.qml b/tests/auto/customization/data/styles/simple/SwipeView.qml index abdde942..cf154b6b 100644 --- a/tests/auto/customization/data/styles/simple/SwipeView.qml +++ b/tests/auto/customization/data/styles/simple/SwipeView.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.SwipeView { id: control diff --git a/tests/auto/customization/data/styles/simple/Switch.qml b/tests/auto/customization/data/styles/simple/Switch.qml index 8d008ffb..9e961308 100644 --- a/tests/auto/customization/data/styles/simple/Switch.qml +++ b/tests/auto/customization/data/styles/simple/Switch.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Switch { id: control diff --git a/tests/auto/customization/data/styles/simple/SwitchDelegate.qml b/tests/auto/customization/data/styles/simple/SwitchDelegate.qml index cdc91314..f7eb1d5c 100644 --- a/tests/auto/customization/data/styles/simple/SwitchDelegate.qml +++ b/tests/auto/customization/data/styles/simple/SwitchDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.SwitchDelegate { id: control diff --git a/tests/auto/customization/data/styles/simple/TabBar.qml b/tests/auto/customization/data/styles/simple/TabBar.qml index 5055346e..6b0f2b63 100644 --- a/tests/auto/customization/data/styles/simple/TabBar.qml +++ b/tests/auto/customization/data/styles/simple/TabBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.TabBar { id: control diff --git a/tests/auto/customization/data/styles/simple/TabButton.qml b/tests/auto/customization/data/styles/simple/TabButton.qml index d6b67647..4c8a30ba 100644 --- a/tests/auto/customization/data/styles/simple/TabButton.qml +++ b/tests/auto/customization/data/styles/simple/TabButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.TabButton { id: control diff --git a/tests/auto/customization/data/styles/simple/TextArea.qml b/tests/auto/customization/data/styles/simple/TextArea.qml index 10c326a6..7e906433 100644 --- a/tests/auto/customization/data/styles/simple/TextArea.qml +++ b/tests/auto/customization/data/styles/simple/TextArea.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.TextArea { id: control diff --git a/tests/auto/customization/data/styles/simple/TextField.qml b/tests/auto/customization/data/styles/simple/TextField.qml index 09c12a60..71a68534 100644 --- a/tests/auto/customization/data/styles/simple/TextField.qml +++ b/tests/auto/customization/data/styles/simple/TextField.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.TextField { id: control diff --git a/tests/auto/customization/data/styles/simple/ToolBar.qml b/tests/auto/customization/data/styles/simple/ToolBar.qml index 9b23b67c..30bba195 100644 --- a/tests/auto/customization/data/styles/simple/ToolBar.qml +++ b/tests/auto/customization/data/styles/simple/ToolBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ToolBar { id: control diff --git a/tests/auto/customization/data/styles/simple/ToolButton.qml b/tests/auto/customization/data/styles/simple/ToolButton.qml index 13ccb576..229b7536 100644 --- a/tests/auto/customization/data/styles/simple/ToolButton.qml +++ b/tests/auto/customization/data/styles/simple/ToolButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ToolButton { id: control diff --git a/tests/auto/customization/data/styles/simple/ToolSeparator.qml b/tests/auto/customization/data/styles/simple/ToolSeparator.qml index ef172f74..8ee00bc3 100644 --- a/tests/auto/customization/data/styles/simple/ToolSeparator.qml +++ b/tests/auto/customization/data/styles/simple/ToolSeparator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ToolSeparator { id: control diff --git a/tests/auto/customization/data/styles/simple/ToolTip.qml b/tests/auto/customization/data/styles/simple/ToolTip.qml index 27a61c17..0299adf1 100644 --- a/tests/auto/customization/data/styles/simple/ToolTip.qml +++ b/tests/auto/customization/data/styles/simple/ToolTip.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.ToolTip { id: control diff --git a/tests/auto/customization/data/styles/simple/Tumbler.qml b/tests/auto/customization/data/styles/simple/Tumbler.qml index 58c85541..34f423c7 100644 --- a/tests/auto/customization/data/styles/simple/Tumbler.qml +++ b/tests/auto/customization/data/styles/simple/Tumbler.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Templates as T T.Tumbler { id: control diff --git a/tests/auto/customization/data/styles/simple/qmldir b/tests/auto/customization/data/styles/simple/qmldir new file mode 100644 index 00000000..e5159885 --- /dev/null +++ b/tests/auto/customization/data/styles/simple/qmldir @@ -0,0 +1,59 @@ +module simple + +AbstractButton 6.0 AbstractButton.qml +Action 6.0 Action.qml +ActionGroup 6.0 ActionGroup.qml +ApplicationWindow 6.0 ApplicationWindow.qml +BusyIndicator 6.0 BusyIndicator.qml +Button 6.0 Button.qml +ButtonGroup 6.0 ButtonGroup.qml +CheckBox 6.0 CheckBox.qml +CheckDelegate 6.0 CheckDelegate.qml +ComboBox 6.0 ComboBox.qml +Container 6.0 Container.qml +Control 6.0 Control.qml +DelayButton 6.0 DelayButton.qml +Dial 6.0 Dial.qml +Dialog 6.0 Dialog.qml +DialogButtonBox 6.0 DialogButtonBox.qml +Drawer 6.0 Drawer.qml +Frame 6.0 Frame.qml +GroupBox 6.0 GroupBox.qml +HorizontalHeaderView 6.0 HorizontalHeaderView.qml +ItemDelegate 6.0 ItemDelegate.qml +Label 6.0 Label.qml +Menu 6.0 Menu.qml +MenuBar 6.0 MenuBar.qml +MenuBarItem 6.0 MenuBarItem.qml +MenuItem 6.0 MenuItem.qml +MenuSeparator 6.0 MenuSeparator.qml +Page 6.0 Page.qml +PageIndicator 6.0 PageIndicator.qml +Pane 6.0 Pane.qml +Popup 6.0 Popup.qml +ProgressBar 6.0 ProgressBar.qml +RadioButton 6.0 RadioButton.qml +RadioDelegate 6.0 RadioDelegate.qml +RangeSlider 6.0 RangeSlider.qml +RoundButton 6.0 RoundButton.qml +ScrollBar 6.0 ScrollBar.qml +ScrollIndicator 6.0 ScrollIndicator.qml +ScrollView 6.0 ScrollView.qml +Slider 6.0 Slider.qml +SpinBox 6.0 SpinBox.qml +SplitView 6.0 SplitView.qml +StackView 6.0 StackView.qml +SwipeDelegate 6.0 SwipeDelegate.qml +SwipeView 6.0 SwipeView.qml +Switch 6.0 Switch.qml +SwitchDelegate 6.0 SwitchDelegate.qml +TabBar 6.0 TabBar.qml +TabButton 6.0 TabButton.qml +TextArea 6.0 TextArea.qml +TextField 6.0 TextField.qml +ToolBar 6.0 ToolBar.qml +ToolButton 6.0 ToolButton.qml +ToolSeparator 6.0 ToolSeparator.qml +ToolTip 6.0 ToolTip.qml +Tumbler 6.0 Tumbler.qml +VerticalHeaderView 6.0 VerticalHeaderView.qml diff --git a/tests/auto/customization/tst_customization.cpp b/tests/auto/customization/tst_customization.cpp index 498a9e60..add48cc7 100644 --- a/tests/auto/customization/tst_customization.cpp +++ b/tests/auto/customization/tst_customization.cpp @@ -42,6 +42,7 @@ #include <QtQuick/qquickitem.h> #include <QtQuick/qquickwindow.h> #include <QtQuickControls2/qquickstyle.h> +#include <QtQuickControls2/private/qquickstyle_p.h> #include <QtQuickTemplates2/private/qquickcontrol_p_p.h> #include "../shared/visualtestutil.h" @@ -227,6 +228,7 @@ void tst_customization::cleanupTestCase() void tst_customization::init() { engine = new QQmlEngine(this); + engine->addImportPath(testFile("styles")); qtHookData[QHooks::AddQObject] = reinterpret_cast<quintptr>(&qt_addQObject); qtHookData[QHooks::RemoveQObject] = reinterpret_cast<quintptr>(&qt_removeQObject); @@ -256,7 +258,7 @@ void tst_customization::reset() QObject* tst_customization::createControl(const QString &name, const QString &qml, QString *error) { QQmlComponent component(engine); - component.setData("import QtQuick 2.10; import QtQuick.Window 2.2; import QtQuick.Controls 2.3; " + name.toUtf8() + " { " + qml.toUtf8() + " }", QUrl()); + component.setData("import QtQuick; import QtQuick.Window; import QtQuick.Controls; " + name.toUtf8() + " { " + qml.toUtf8() + " }", QUrl()); QObject *obj = component.create(); if (!obj) *error = component.errorString(); @@ -296,7 +298,7 @@ void tst_customization::creation() QFETCH(QString, type); QFETCH(QStringList, delegates); - QQuickStyle::setStyle(testFile("styles/" + style)); + QQuickStyle::setStyle(style); QString error; QScopedPointer<QObject> control(createControl(type, "", &error)); @@ -363,7 +365,7 @@ void tst_customization::override_data() #ifndef Q_OS_MACOS // QTBUG-65671 // test that the built-in styles don't have undesired IDs in their delegates - const QStringList styles = QStringList() << "Default" << "Fusion" << "Material" << "Universal"; // ### TODO: QQuickStyle::availableStyles(); + const QStringList styles = QQuickStylePrivate::builtInStyles(); for (const QString &style : styles) { for (const ControlInfo &control : ControlInfos) QTest::newRow(qPrintable(style + ":" + control.type)) << style << control.type << control.delegates << "" << false; @@ -380,11 +382,7 @@ void tst_customization::override() QFETCH(QString, nonDeferred); QFETCH(bool, identify); - const QString testStyle = testFile("styles/" + style); - if (QDir(testStyle).exists()) - QQuickStyle::setStyle(testStyle); - else - QQuickStyle::setStyle(style); + QQuickStyle::setStyle(style); QString qml; qml += QString("objectName: '%1-%2-override'; ").arg(type.toLower()).arg(style); @@ -478,12 +476,12 @@ void tst_customization::override() void tst_customization::comboPopup() { - QQuickStyle::setStyle(testFile("styles/simple")); + QQuickStyle::setStyle("simple"); { // test that ComboBox::popup is created when accessed QQmlComponent component(engine); - component.setData("import QtQuick.Controls 2.2; ComboBox { }", QUrl()); + component.setData("import QtQuick.Controls; ComboBox { }", QUrl()); QScopedPointer<QQuickItem> comboBox(qobject_cast<QQuickItem *>(component.create())); QVERIFY(comboBox); @@ -505,7 +503,7 @@ void tst_customization::comboPopup() QVERIFY(QTest::qWaitForWindowActive(&window)); QQmlComponent component(engine); - component.setData("import QtQuick.Controls 2.2; ComboBox { }", QUrl()); + component.setData("import QtQuick.Controls; ComboBox { }", QUrl()); QScopedPointer<QQuickItem> comboBox(qobject_cast<QQuickItem *>(component.create())); QVERIFY(comboBox); @@ -521,7 +519,7 @@ void tst_customization::comboPopup() { // test that ComboBox::popup is completed upon component completion (if appropriate) QQmlComponent component(engine); - component.setData("import QtQuick 2.9; import QtQuick.Controls 2.2; ComboBox { id: control; contentItem: Item { visible: !control.popup.visible } popup: Popup { property bool wasCompleted: false; Component.onCompleted: wasCompleted = true } }", QUrl()); + component.setData("import QtQuick; import QtQuick.Controls; ComboBox { id: control; contentItem: Item { visible: !control.popup.visible } popup: Popup { property bool wasCompleted: false; Component.onCompleted: wasCompleted = true } }", QUrl()); QScopedPointer<QQuickItem> comboBox(qobject_cast<QQuickItem *>(component.create())); QVERIFY(comboBox); diff --git a/tests/auto/designer/tst_designer.cpp b/tests/auto/designer/tst_designer.cpp index 2c67c2c6..0d8bc73b 100644 --- a/tests/auto/designer/tst_designer.cpp +++ b/tests/auto/designer/tst_designer.cpp @@ -101,7 +101,7 @@ void tst_Designer::test_controls() "Item {\n"); QByteArray source = before; - source.append(type); + source.append(type.toUtf8()); const QByteArray after(" {" "}\n" diff --git a/tests/auto/focus/CMakeLists.txt b/tests/auto/focus/CMakeLists.txt index 1cc44de4..3e8234e9 100644 --- a/tests/auto/focus/CMakeLists.txt +++ b/tests/auto/focus/CMakeLists.txt @@ -24,6 +24,7 @@ qt_add_test(tst_focus Qt::GuiPrivate Qt::QmlPrivate Qt::QuickControls2 + Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private Qt::TestPrivate diff --git a/tests/auto/focus/data/activeFocusOnTab.qml b/tests/auto/focus/data/activeFocusOnTab.qml index 21bea5e8..6b57f39b 100644 --- a/tests/auto/focus/data/activeFocusOnTab.qml +++ b/tests/auto/focus/data/activeFocusOnTab.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { id: main diff --git a/tests/auto/focus/data/keyNavigation.qml b/tests/auto/focus/data/keyNavigation.qml index 6e949d1d..7ac8e014 100644 --- a/tests/auto/focus/data/keyNavigation.qml +++ b/tests/auto/focus/data/keyNavigation.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { id: main diff --git a/tests/auto/focus/data/visualFocus.qml b/tests/auto/focus/data/visualFocus.qml index 3f3e8fb6..2f516be7 100644 --- a/tests/auto/focus/data/visualFocus.qml +++ b/tests/auto/focus/data/visualFocus.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Column { width: 400 diff --git a/tests/auto/focus/tst_focus.cpp b/tests/auto/focus/tst_focus.cpp index 8a1b36ad..b1b23244 100644 --- a/tests/auto/focus/tst_focus.cpp +++ b/tests/auto/focus/tst_focus.cpp @@ -43,8 +43,8 @@ #include <QtQuick/private/qquickitem_p.h> #include <QtQuickTemplates2/private/qquickcontrol_p.h> #include <QtGui/private/qguiapplication_p.h> +#include <QtGui/qpointingdevice.h> #include <QtGui/qstylehints.h> -#include <QtGui/qtouchdevice.h> #include "../shared/util.h" #include "../shared/visualtestutil.h" @@ -159,18 +159,7 @@ void tst_focus::policy() window->requestActivate(); QVERIFY(QTest::qWaitForWindowActive(window.data())); - struct TouchDeviceDeleter - { - static inline void cleanup(QTouchDevice *device) - { - QWindowSystemInterface::unregisterTouchDevice(device); - delete device; - } - }; - - QScopedPointer<QTouchDevice, TouchDeviceDeleter> device(new QTouchDevice); - device->setType(QTouchDevice::TouchScreen); - QWindowSystemInterface::registerTouchDevice(device.data()); + QScopedPointer<QPointingDevice> device(QTest::createTouchDevice()); control->setFocusPolicy(Qt::NoFocus); QCOMPARE(control->focusPolicy(), Qt::NoFocus); @@ -366,18 +355,7 @@ void tst_focus::scope() window->requestActivate(); QVERIFY(QTest::qWaitForWindowActive(window.data())); - struct TouchDeviceDeleter - { - static inline void cleanup(QTouchDevice *device) - { - QWindowSystemInterface::unregisterTouchDevice(device); - delete device; - } - }; - - QScopedPointer<QTouchDevice, TouchDeviceDeleter> device(new QTouchDevice); - device->setType(QTouchDevice::TouchScreen); - QWindowSystemInterface::registerTouchDevice(device.data()); + QScopedPointer<QPointingDevice> device(QTest::createTouchDevice()); child->forceActiveFocus(); QVERIFY(child->hasActiveFocus()); diff --git a/tests/auto/font/data/font-appwindow-custom.qml b/tests/auto/font/data/font-appwindow-custom.qml index 20101bfa..9f82079e 100644 --- a/tests/auto/font/data/font-appwindow-custom.qml +++ b/tests/auto/font/data/font-appwindow-custom.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { font.capitalization: Font.AllUppercase diff --git a/tests/auto/font/data/font-appwindow-default.qml b/tests/auto/font/data/font-appwindow-default.qml index bc75cbb2..9f2c34fe 100644 --- a/tests/auto/font/data/font-appwindow-default.qml +++ b/tests/auto/font/data/font-appwindow-default.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { } diff --git a/tests/auto/font/data/font-control-custom.qml b/tests/auto/font/data/font-control-custom.qml index 3f198746..8fcfc686 100644 --- a/tests/auto/font/data/font-control-custom.qml +++ b/tests/auto/font/data/font-control-custom.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Control { font.capitalization: Font.AllUppercase diff --git a/tests/auto/font/data/font-control-default.qml b/tests/auto/font/data/font-control-default.qml index e7e78036..48afa021 100644 --- a/tests/auto/font/data/font-control-default.qml +++ b/tests/auto/font/data/font-control-default.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Control { } diff --git a/tests/auto/font/data/font-popup-custom.qml b/tests/auto/font/data/font-popup-custom.qml index 3d9eb4a2..e3983bf5 100644 --- a/tests/auto/font/data/font-popup-custom.qml +++ b/tests/auto/font/data/font-popup-custom.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Popup { font.capitalization: Font.AllUppercase diff --git a/tests/auto/font/data/font-popup-default.qml b/tests/auto/font/data/font-popup-default.qml index a9bde413..77676bac 100644 --- a/tests/auto/font/data/font-popup-default.qml +++ b/tests/auto/font/data/font-popup-default.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Popup { } diff --git a/tests/auto/font/data/inheritance-childcontrol.qml b/tests/auto/font/data/inheritance-childcontrol.qml index 4ddab64c..896354df 100644 --- a/tests/auto/font/data/inheritance-childcontrol.qml +++ b/tests/auto/font/data/inheritance-childcontrol.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/font/data/inheritance-childpopup.qml b/tests/auto/font/data/inheritance-childpopup.qml index 6868949b..7896a558 100644 --- a/tests/auto/font/data/inheritance-childpopup.qml +++ b/tests/auto/font/data/inheritance-childpopup.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/font/data/inheritance-control.qml b/tests/auto/font/data/inheritance-control.qml index 68f7371c..eb534180 100644 --- a/tests/auto/font/data/inheritance-control.qml +++ b/tests/auto/font/data/inheritance-control.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/font/data/inheritance-dynamicchildcontrol.qml b/tests/auto/font/data/inheritance-dynamicchildcontrol.qml index 1f7c56d1..0a4e5bc6 100644 --- a/tests/auto/font/data/inheritance-dynamicchildcontrol.qml +++ b/tests/auto/font/data/inheritance-dynamicchildcontrol.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/font/data/inheritance-dynamicchildpopup.qml b/tests/auto/font/data/inheritance-dynamicchildpopup.qml index a32d34ec..0e799d47 100644 --- a/tests/auto/font/data/inheritance-dynamicchildpopup.qml +++ b/tests/auto/font/data/inheritance-dynamicchildpopup.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/font/data/inheritance-dynamiccontrol.qml b/tests/auto/font/data/inheritance-dynamiccontrol.qml index d200e397..058d5b8b 100644 --- a/tests/auto/font/data/inheritance-dynamiccontrol.qml +++ b/tests/auto/font/data/inheritance-dynamiccontrol.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/font/data/inheritance-dynamicpopup.qml b/tests/auto/font/data/inheritance-dynamicpopup.qml index a084cc1b..429669c7 100644 --- a/tests/auto/font/data/inheritance-dynamicpopup.qml +++ b/tests/auto/font/data/inheritance-dynamicpopup.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/font/data/inheritance-popup.qml b/tests/auto/font/data/inheritance-popup.qml index e114287f..cd2aebb5 100644 --- a/tests/auto/font/data/inheritance-popup.qml +++ b/tests/auto/font/data/inheritance-popup.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/font/data/listview.qml b/tests/auto/font/data/listview.qml index 048567e5..7c372585 100644 --- a/tests/auto/font/data/listview.qml +++ b/tests/auto/font/data/listview.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/palette/data/bindings.qml b/tests/auto/palette/data/bindings.qml index f87b6572..5f156c96 100644 --- a/tests/auto/palette/data/bindings.qml +++ b/tests/auto/palette/data/bindings.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 6.0 -import QtQuick.Window 2.14 -import QtQuick.Controls 2.14 -import QtQuick.Layouts 1.13 +import QtQuick +import QtQuick.Window +import QtQuick.Controls +import QtQuick.Layouts ApplicationWindow { id: window diff --git a/tests/auto/palette/data/inheritance-childcontrol.qml b/tests/auto/palette/data/inheritance-childcontrol.qml index 4ddab64c..896354df 100644 --- a/tests/auto/palette/data/inheritance-childcontrol.qml +++ b/tests/auto/palette/data/inheritance-childcontrol.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/palette/data/inheritance-childpopup.qml b/tests/auto/palette/data/inheritance-childpopup.qml index 6868949b..7896a558 100644 --- a/tests/auto/palette/data/inheritance-childpopup.qml +++ b/tests/auto/palette/data/inheritance-childpopup.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/palette/data/inheritance-control.qml b/tests/auto/palette/data/inheritance-control.qml index 68f7371c..eb534180 100644 --- a/tests/auto/palette/data/inheritance-control.qml +++ b/tests/auto/palette/data/inheritance-control.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/palette/data/inheritance-dynamicchildcontrol.qml b/tests/auto/palette/data/inheritance-dynamicchildcontrol.qml index 1f7c56d1..0a4e5bc6 100644 --- a/tests/auto/palette/data/inheritance-dynamicchildcontrol.qml +++ b/tests/auto/palette/data/inheritance-dynamicchildcontrol.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/palette/data/inheritance-dynamicchildpopup.qml b/tests/auto/palette/data/inheritance-dynamicchildpopup.qml index a32d34ec..0e799d47 100644 --- a/tests/auto/palette/data/inheritance-dynamicchildpopup.qml +++ b/tests/auto/palette/data/inheritance-dynamicchildpopup.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/palette/data/inheritance-dynamiccontrol.qml b/tests/auto/palette/data/inheritance-dynamiccontrol.qml index d200e397..058d5b8b 100644 --- a/tests/auto/palette/data/inheritance-dynamiccontrol.qml +++ b/tests/auto/palette/data/inheritance-dynamiccontrol.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/palette/data/inheritance-dynamicpopup.qml b/tests/auto/palette/data/inheritance-dynamicpopup.qml index a084cc1b..429669c7 100644 --- a/tests/auto/palette/data/inheritance-dynamicpopup.qml +++ b/tests/auto/palette/data/inheritance-dynamicpopup.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/palette/data/inheritance-popup.qml b/tests/auto/palette/data/inheritance-popup.qml index e114287f..cd2aebb5 100644 --- a/tests/auto/palette/data/inheritance-popup.qml +++ b/tests/auto/palette/data/inheritance-popup.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/palette/data/listview.qml b/tests/auto/palette/data/listview.qml index a19f6d26..eee6531f 100644 --- a/tests/auto/palette/data/listview.qml +++ b/tests/auto/palette/data/listview.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/palette/data/palette-appwindow-custom.qml b/tests/auto/palette/data/palette-appwindow-custom.qml index a59fb42c..f5f75ae7 100644 --- a/tests/auto/palette/data/palette-appwindow-custom.qml +++ b/tests/auto/palette/data/palette-appwindow-custom.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { palette.alternateBase: "aqua" diff --git a/tests/auto/palette/data/palette-appwindow-default.qml b/tests/auto/palette/data/palette-appwindow-default.qml index bc75cbb2..9f2c34fe 100644 --- a/tests/auto/palette/data/palette-appwindow-default.qml +++ b/tests/auto/palette/data/palette-appwindow-default.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { } diff --git a/tests/auto/palette/data/palette-control-custom.qml b/tests/auto/palette/data/palette-control-custom.qml index fb4b9282..6915404d 100644 --- a/tests/auto/palette/data/palette-control-custom.qml +++ b/tests/auto/palette/data/palette-control-custom.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Control { palette.alternateBase: "aqua" diff --git a/tests/auto/palette/data/palette-control-default.qml b/tests/auto/palette/data/palette-control-default.qml index e7e78036..48afa021 100644 --- a/tests/auto/palette/data/palette-control-default.qml +++ b/tests/auto/palette/data/palette-control-default.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Control { } diff --git a/tests/auto/palette/data/palette-popup-custom.qml b/tests/auto/palette/data/palette-popup-custom.qml index ffecfea2..47f52d17 100644 --- a/tests/auto/palette/data/palette-popup-custom.qml +++ b/tests/auto/palette/data/palette-popup-custom.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Popup { palette.alternateBase: "aqua" diff --git a/tests/auto/palette/data/palette-popup-default.qml b/tests/auto/palette/data/palette-popup-default.qml index a9bde413..77676bac 100644 --- a/tests/auto/palette/data/palette-popup-default.qml +++ b/tests/auto/palette/data/palette-popup-default.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Popup { } diff --git a/tests/auto/palette/data/set-palette.qml b/tests/auto/palette/data/set-palette.qml index f9f067e0..2d0fe194 100644 --- a/tests/auto/palette/data/set-palette.qml +++ b/tests/auto/palette/data/set-palette.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 6.0 -import QtQuick.Controls 2.14 +import QtQuick +import QtQuick.Controls Control { palette { diff --git a/tests/auto/platform/data/tst_colordialog.qml b/tests/auto/platform/data/tst_colordialog.qml index 98122c25..12055a5a 100644 --- a/tests/auto/platform/data/tst_colordialog.qml +++ b/tests/auto/platform/data/tst_colordialog.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import Qt.labs.platform 1.0 +import QtQuick +import QtTest +import Qt.labs.platform TestCase { id: testCase diff --git a/tests/auto/platform/data/tst_filedialog.qml b/tests/auto/platform/data/tst_filedialog.qml index 775e24d3..5a63dd23 100644 --- a/tests/auto/platform/data/tst_filedialog.qml +++ b/tests/auto/platform/data/tst_filedialog.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import Qt.labs.platform 1.0 +import QtQuick +import QtTest +import Qt.labs.platform TestCase { id: testCase diff --git a/tests/auto/platform/data/tst_folderdialog.qml b/tests/auto/platform/data/tst_folderdialog.qml index 5f44b995..37881c1a 100644 --- a/tests/auto/platform/data/tst_folderdialog.qml +++ b/tests/auto/platform/data/tst_folderdialog.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import Qt.labs.platform 1.0 +import QtQuick +import QtTest +import Qt.labs.platform TestCase { id: testCase diff --git a/tests/auto/platform/data/tst_fontdialog.qml b/tests/auto/platform/data/tst_fontdialog.qml index 8166964f..edb62e52 100644 --- a/tests/auto/platform/data/tst_fontdialog.qml +++ b/tests/auto/platform/data/tst_fontdialog.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import Qt.labs.platform 1.0 +import QtQuick +import QtTest +import Qt.labs.platform TestCase { id: testCase diff --git a/tests/auto/platform/data/tst_menu.qml b/tests/auto/platform/data/tst_menu.qml index bb37c17b..7e389222 100644 --- a/tests/auto/platform/data/tst_menu.qml +++ b/tests/auto/platform/data/tst_menu.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import Qt.labs.platform 1.0 +import QtQuick +import QtTest +import Qt.labs.platform TestCase { id: testCase diff --git a/tests/auto/platform/data/tst_menubar.qml b/tests/auto/platform/data/tst_menubar.qml index 199c5010..0dd9eb91 100644 --- a/tests/auto/platform/data/tst_menubar.qml +++ b/tests/auto/platform/data/tst_menubar.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import Qt.labs.platform 1.0 +import QtQuick +import QtTest +import Qt.labs.platform TestCase { id: testCase diff --git a/tests/auto/platform/data/tst_menuitem.qml b/tests/auto/platform/data/tst_menuitem.qml index 29d369bc..0120832d 100644 --- a/tests/auto/platform/data/tst_menuitem.qml +++ b/tests/auto/platform/data/tst_menuitem.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import Qt.labs.platform 1.1 +import QtQuick +import QtTest +import Qt.labs.platform TestCase { id: testCase @@ -68,8 +68,9 @@ TestCase { } } - SignalSpy { - id: spy + Component { + id: signalSpyComponent + SignalSpy {} } function test_properties_data() { @@ -81,30 +82,32 @@ TestCase { {tag: "checked", signal: "checkedChanged", init: false, value: true}, {tag: "role", signal: "roleChanged", init: MenuItem.TextHeuristicRole, value: MenuItem.AboutRole}, {tag: "text", signal: "textChanged", init: "", value: "text"}, - {tag: "iconSource", signal: "iconSourceChanged", init: "", value: "qrc:/undo.png"}, - {tag: "iconName", signal: "iconNameChanged", init: "", value: "edit-undo"}, + {tag: "icon.source", signal: "iconChanged", init: "", value: "qrc:/undo.png"}, + {tag: "icon.name", signal: "iconChanged", init: "", value: "edit-undo"}, {tag: "shortcut", signal: "shortcutChanged", init: undefined, value: StandardKey.Undo} ] } function test_properties(data) { - var item = menuItem.createObject(testCase) + let item = createTemporaryObject(menuItem, testCase) verify(item) - spy.target = item - spy.signalName = data.signal + let groupedProperty = data.tag.indexOf(".") !== -1 + let spy = createTemporaryObject(signalSpyComponent, testCase, { + target: item, signalName: data.signal + }) + verify(spy) verify(spy.valid) - compare(item[data.tag], data.init) - item[data.tag] = data.value + let propertyName = groupedProperty ? data.tag.split('.')[1] : data.tag + let object = !groupedProperty ? item : item.icon + compare(object[propertyName], data.init) + object[propertyName] = data.value compare(spy.count, 1) - compare(item[data.tag], data.value) + compare(object[propertyName], data.value) - item[data.tag] = data.value + object[propertyName] = data.value compare(spy.count, 1) - - spy.clear() - item.destroy() } function test_role() { diff --git a/tests/auto/platform/data/tst_menuitemgroup.qml b/tests/auto/platform/data/tst_menuitemgroup.qml index c65150ca..117f79ce 100644 --- a/tests/auto/platform/data/tst_menuitemgroup.qml +++ b/tests/auto/platform/data/tst_menuitemgroup.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import Qt.labs.platform 1.0 +import QtQuick +import QtTest +import Qt.labs.platform TestCase { id: testCase diff --git a/tests/auto/platform/data/tst_menuseparator.qml b/tests/auto/platform/data/tst_menuseparator.qml index 29c48f6b..52bb349f 100644 --- a/tests/auto/platform/data/tst_menuseparator.qml +++ b/tests/auto/platform/data/tst_menuseparator.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import Qt.labs.platform 1.0 +import QtQuick +import QtTest +import Qt.labs.platform TestCase { id: testCase diff --git a/tests/auto/platform/data/tst_messagedialog.qml b/tests/auto/platform/data/tst_messagedialog.qml index d5f2e21f..23a5c821 100644 --- a/tests/auto/platform/data/tst_messagedialog.qml +++ b/tests/auto/platform/data/tst_messagedialog.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import Qt.labs.platform 1.0 +import QtQuick +import QtTest +import Qt.labs.platform TestCase { id: testCase diff --git a/tests/auto/platform/data/tst_standardpaths.qml b/tests/auto/platform/data/tst_standardpaths.qml index 35f0d23b..841731be 100644 --- a/tests/auto/platform/data/tst_standardpaths.qml +++ b/tests/auto/platform/data/tst_standardpaths.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import Qt.labs.platform 1.0 +import QtQuick +import QtTest +import Qt.labs.platform TestCase { id: testCase diff --git a/tests/auto/platform/data/tst_systemtrayicon.qml b/tests/auto/platform/data/tst_systemtrayicon.qml index ce7d8b8d..09f10261 100644 --- a/tests/auto/platform/data/tst_systemtrayicon.qml +++ b/tests/auto/platform/data/tst_systemtrayicon.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import Qt.labs.platform 1.1 +import QtQuick +import QtTest +import Qt.labs.platform TestCase { id: testCase @@ -61,44 +61,48 @@ TestCase { name: "SystemTrayIcon" Component { - id: systemTrayIcon + id: systemTrayIconComponent // Check that icon.name can be used in this Qt.labs.platform version SystemTrayIcon { icon.name: "" } } - SignalSpy { - id: spy + Component { + id: signalSpyComponent + SignalSpy {} } function test_properties_data() { return [ {tag: "visible", signal: "visibleChanged", init: false, value: true}, - {tag: "iconSource", signal: "iconSourceChanged", init: "", value: "qrc:/tray.png"}, - {tag: "iconName", signal: "iconNameChanged", init: "", value: "icon-name"}, + {tag: "icon.source", signal: "iconChanged", init: "", value: "qrc:/tray.png"}, + {tag: "icon.name", signal: "iconChanged", init: "", value: "icon-name"}, {tag: "tooltip", signal: "tooltipChanged", init: "", value: "tooltip"}, ] } function test_properties(data) { - var icon = systemTrayIcon.createObject(testCase) + let icon = createTemporaryObject(systemTrayIconComponent, testCase) verify(icon) - spy.target = icon - spy.signalName = data.signal + let groupedProperty = data.tag.indexOf(".") !== -1 + let spy = createTemporaryObject(signalSpyComponent, testCase, { + target: icon, signalName: data.signal + }) + verify(spy) verify(spy.valid) - compare(icon[data.tag], data.init) - icon[data.tag] = data.value - compare(spy.count, 1) - compare(icon[data.tag], data.value) + let propertyName = groupedProperty ? data.tag.split('.')[1] : data.tag + let object = !groupedProperty ? icon : icon.icon + compare(object[propertyName], data.init) - icon[data.tag] = data.value + object[propertyName] = data.value compare(spy.count, 1) + compare(object[propertyName], data.value) - spy.clear() - icon.destroy() + object[propertyName] = data.value + compare(spy.count, 1) } function test_messageIcon() { @@ -119,17 +123,17 @@ TestCase { } function test_activated() { - var icon = systemTrayIcon.createObject(testCase) + let icon = createTemporaryObject(systemTrayIconComponent, testCase) verify(icon) - spy.target = icon - spy.signalName = "activated" + let spy = createTemporaryObject(signalSpyComponent, testCase, { + target: icon, signalName: "activated" + }) + verify(spy) + verify(spy.valid) icon.activated(SystemTrayIcon.Trigger) compare(spy.count, 1) compare(spy.signalArguments[0][0], SystemTrayIcon.Trigger) - - spy.clear() - icon.destroy() } } diff --git a/tests/auto/pressandhold/data/dependencies.qml b/tests/auto/pressandhold/data/dependencies.qml index dac5f935..280cfd29 100644 --- a/tests/auto/pressandhold/data/dependencies.qml +++ b/tests/auto/pressandhold/data/dependencies.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Control { } diff --git a/tests/auto/qquickapplicationwindow/data/activeFocusControl.qml b/tests/auto/qquickapplicationwindow/data/activeFocusControl.qml index 743ae16d..ef694990 100644 --- a/tests/auto/qquickapplicationwindow/data/activeFocusControl.qml +++ b/tests/auto/qquickapplicationwindow/data/activeFocusControl.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickapplicationwindow/data/activefocusontab.qml b/tests/auto/qquickapplicationwindow/data/activefocusontab.qml index 45b3d1e3..07d783ac 100644 --- a/tests/auto/qquickapplicationwindow/data/activefocusontab.qml +++ b/tests/auto/qquickapplicationwindow/data/activefocusontab.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { title: "Test Application Window" diff --git a/tests/auto/qquickapplicationwindow/data/attachedProperties.qml b/tests/auto/qquickapplicationwindow/data/attachedProperties.qml index 53a139c1..d241d995 100644 --- a/tests/auto/qquickapplicationwindow/data/attachedProperties.qml +++ b/tests/auto/qquickapplicationwindow/data/attachedProperties.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.2 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls ApplicationWindow { property alias childControl: childControl @@ -65,7 +65,6 @@ ApplicationWindow { property Item attached_activeFocusControl: ApplicationWindow.activeFocusControl property Item attached_header: ApplicationWindow.header property Item attached_footer: ApplicationWindow.footer - property Item attached_overlay: ApplicationWindow.overlay } Item { @@ -76,7 +75,6 @@ ApplicationWindow { property Item attached_activeFocusControl: ApplicationWindow.activeFocusControl property Item attached_header: ApplicationWindow.header property Item attached_footer: ApplicationWindow.footer - property Item attached_overlay: ApplicationWindow.overlay } QtObject { @@ -87,7 +85,6 @@ ApplicationWindow { property Item attached_activeFocusControl: ApplicationWindow.activeFocusControl property Item attached_header: ApplicationWindow.header property Item attached_footer: ApplicationWindow.footer - property Item attached_overlay: ApplicationWindow.overlay } property alias childWindow: childWindow @@ -103,7 +100,6 @@ ApplicationWindow { property Item attached_activeFocusControl: ApplicationWindow.activeFocusControl property Item attached_header: ApplicationWindow.header property Item attached_footer: ApplicationWindow.footer - property Item attached_overlay: ApplicationWindow.overlay Control { id: childWindowControl @@ -113,7 +109,6 @@ ApplicationWindow { property Item attached_activeFocusControl: ApplicationWindow.activeFocusControl property Item attached_header: ApplicationWindow.header property Item attached_footer: ApplicationWindow.footer - property Item attached_overlay: ApplicationWindow.overlay } Item { @@ -124,7 +119,6 @@ ApplicationWindow { property Item attached_activeFocusControl: ApplicationWindow.activeFocusControl property Item attached_header: ApplicationWindow.header property Item attached_footer: ApplicationWindow.footer - property Item attached_overlay: ApplicationWindow.overlay } QtObject { @@ -135,7 +129,6 @@ ApplicationWindow { property Item attached_activeFocusControl: ApplicationWindow.activeFocusControl property Item attached_header: ApplicationWindow.header property Item attached_footer: ApplicationWindow.footer - property Item attached_overlay: ApplicationWindow.overlay } } @@ -152,7 +145,6 @@ ApplicationWindow { property Item attached_activeFocusControl: ApplicationWindow.activeFocusControl property Item attached_header: ApplicationWindow.header property Item attached_footer: ApplicationWindow.footer - property Item attached_overlay: ApplicationWindow.overlay Control { id: childAppWindowControl @@ -162,7 +154,6 @@ ApplicationWindow { property Item attached_activeFocusControl: ApplicationWindow.activeFocusControl property Item attached_header: ApplicationWindow.header property Item attached_footer: ApplicationWindow.footer - property Item attached_overlay: ApplicationWindow.overlay } Item { @@ -173,7 +164,6 @@ ApplicationWindow { property Item attached_activeFocusControl: ApplicationWindow.activeFocusControl property Item attached_header: ApplicationWindow.header property Item attached_footer: ApplicationWindow.footer - property Item attached_overlay: ApplicationWindow.overlay } QtObject { @@ -184,7 +174,6 @@ ApplicationWindow { property Item attached_activeFocusControl: ApplicationWindow.activeFocusControl property Item attached_header: ApplicationWindow.header property Item attached_footer: ApplicationWindow.footer - property Item attached_overlay: ApplicationWindow.overlay } } } diff --git a/tests/auto/qquickapplicationwindow/data/basicapplicationwindow.qml b/tests/auto/qquickapplicationwindow/data/basicapplicationwindow.qml index a9412fd6..738022e9 100644 --- a/tests/auto/qquickapplicationwindow/data/basicapplicationwindow.qml +++ b/tests/auto/qquickapplicationwindow/data/basicapplicationwindow.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { title: "Test Application Window" diff --git a/tests/auto/qquickapplicationwindow/data/clearfocusondestruction.qml b/tests/auto/qquickapplicationwindow/data/clearfocusondestruction.qml index d3218998..bf8f61b7 100644 --- a/tests/auto/qquickapplicationwindow/data/clearfocusondestruction.qml +++ b/tests/auto/qquickapplicationwindow/data/clearfocusondestruction.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Layouts 1.12 -import QtGraphicalEffects 1.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts +import QtGraphicalEffects ApplicationWindow { width: 200 diff --git a/tests/auto/qquickapplicationwindow/data/defaultFocus.qml b/tests/auto/qquickapplicationwindow/data/defaultFocus.qml index 5dff2b6c..4651c2fc 100644 --- a/tests/auto/qquickapplicationwindow/data/defaultFocus.qml +++ b/tests/auto/qquickapplicationwindow/data/defaultFocus.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { visible: true diff --git a/tests/auto/qquickapplicationwindow/data/fill.qml b/tests/auto/qquickapplicationwindow/data/fill.qml index d29ed0f9..082e2409 100644 --- a/tests/auto/qquickapplicationwindow/data/fill.qml +++ b/tests/auto/qquickapplicationwindow/data/fill.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickapplicationwindow/data/focusAfterPopupClosed.qml b/tests/auto/qquickapplicationwindow/data/focusAfterPopupClosed.qml index 313bbb5f..ca8da3c2 100644 --- a/tests/auto/qquickapplicationwindow/data/focusAfterPopupClosed.qml +++ b/tests/auto/qquickapplicationwindow/data/focusAfterPopupClosed.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 200 diff --git a/tests/auto/qquickapplicationwindow/data/font.qml b/tests/auto/qquickapplicationwindow/data/font.qml index 8bde4bf1..f0abbb9a 100644 --- a/tests/auto/qquickapplicationwindow/data/font.qml +++ b/tests/auto/qquickapplicationwindow/data/font.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T ApplicationWindow { objectName: "appWin" diff --git a/tests/auto/qquickapplicationwindow/data/layout.qml b/tests/auto/qquickapplicationwindow/data/layout.qml index dc840443..6d4f3794 100644 --- a/tests/auto/qquickapplicationwindow/data/layout.qml +++ b/tests/auto/qquickapplicationwindow/data/layout.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 200 diff --git a/tests/auto/qquickapplicationwindow/data/locale.qml b/tests/auto/qquickapplicationwindow/data/locale.qml index 5efb948f..243ce440 100644 --- a/tests/auto/qquickapplicationwindow/data/locale.qml +++ b/tests/auto/qquickapplicationwindow/data/locale.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T ApplicationWindow { objectName: "appWin" diff --git a/tests/auto/qquickapplicationwindow/data/opacity.qml b/tests/auto/qquickapplicationwindow/data/opacity.qml new file mode 100644 index 00000000..d3272522 --- /dev/null +++ b/tests/auto/qquickapplicationwindow/data/opacity.qml @@ -0,0 +1,61 @@ +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** BSD License Usage +** Alternatively, you may use this file under the terms of the BSD license +** as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of The Qt Company Ltd nor the names of its +** contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import QtQuick +import QtQuick.Controls + +ApplicationWindow { + title: "Test Application Window" + width: 300 + height: 300 + opacity: 0.5 + + property bool testActive: active +} diff --git a/tests/auto/qquickapplicationwindow/tst_qquickapplicationwindow.cpp b/tests/auto/qquickapplicationwindow/tst_qquickapplicationwindow.cpp index b907f5c3..347c955e 100644 --- a/tests/auto/qquickapplicationwindow/tst_qquickapplicationwindow.cpp +++ b/tests/auto/qquickapplicationwindow/tst_qquickapplicationwindow.cpp @@ -78,6 +78,7 @@ private slots: void clearFocusOnDestruction(); void layout(); void componentComplete(); + void opacity(); }; void tst_QQuickApplicationWindow::qmlCreation() @@ -287,7 +288,6 @@ void tst_QQuickApplicationWindow::attachedProperties() QCOMPARE(childControl->property("attached_activeFocusControl").value<QQuickItem *>(), window->activeFocusControl()); QCOMPARE(childControl->property("attached_header").value<QQuickItem *>(), window->header()); QCOMPARE(childControl->property("attached_footer").value<QQuickItem *>(), window->footer()); - QCOMPARE(childControl->property("attached_overlay").value<QQuickItem *>(), window->overlay()); QQuickItem *childItem = object->property("childItem").value<QQuickItem *>(); QVERIFY(childItem); @@ -296,7 +296,6 @@ void tst_QQuickApplicationWindow::attachedProperties() QCOMPARE(childItem->property("attached_activeFocusControl").value<QQuickItem *>(), window->activeFocusControl()); QCOMPARE(childItem->property("attached_header").value<QQuickItem *>(), window->header()); QCOMPARE(childItem->property("attached_footer").value<QQuickItem *>(), window->footer()); - QCOMPARE(childItem->property("attached_overlay").value<QQuickItem *>(), window->overlay()); QObject *childObject = object->property("childObject").value<QObject *>(); QVERIFY(childObject); @@ -305,7 +304,6 @@ void tst_QQuickApplicationWindow::attachedProperties() QVERIFY(!childObject->property("attached_activeFocusControl").value<QQuickItem *>()); QVERIFY(!childObject->property("attached_header").value<QQuickItem *>()); QVERIFY(!childObject->property("attached_footer").value<QQuickItem *>()); - QVERIFY(!childObject->property("attached_overlay").value<QQuickItem *>()); QQuickWindow *childWindow = object->property("childWindow").value<QQuickWindow *>(); QVERIFY(childWindow); @@ -314,7 +312,6 @@ void tst_QQuickApplicationWindow::attachedProperties() QVERIFY(!childWindow->property("attached_activeFocusControl").value<QQuickItem *>()); QVERIFY(!childWindow->property("attached_header").value<QQuickItem *>()); QVERIFY(!childWindow->property("attached_footer").value<QQuickItem *>()); - QVERIFY(!childWindow->property("attached_overlay").value<QQuickItem *>()); QQuickItem *childWindowControl = object->property("childWindowControl").value<QQuickItem *>(); QVERIFY(childWindowControl); @@ -323,7 +320,6 @@ void tst_QQuickApplicationWindow::attachedProperties() QVERIFY(!childWindowControl->property("attached_activeFocusControl").value<QQuickItem *>()); QVERIFY(!childWindowControl->property("attached_header").value<QQuickItem *>()); QVERIFY(!childWindowControl->property("attached_footer").value<QQuickItem *>()); - QCOMPARE(childWindowControl->property("attached_overlay").value<QQuickItem *>(), QQuickOverlay::overlay(childWindow)); QQuickItem *childWindowItem = object->property("childWindowItem").value<QQuickItem *>(); QVERIFY(childWindowItem); @@ -332,7 +328,6 @@ void tst_QQuickApplicationWindow::attachedProperties() QVERIFY(!childWindowItem->property("attached_activeFocusControl").value<QQuickItem *>()); QVERIFY(!childWindowItem->property("attached_header").value<QQuickItem *>()); QVERIFY(!childWindowItem->property("attached_footer").value<QQuickItem *>()); - QCOMPARE(childWindowItem->property("attached_overlay").value<QQuickItem *>(), QQuickOverlay::overlay(childWindow)); QObject *childWindowObject = object->property("childWindowObject").value<QObject *>(); QVERIFY(childWindowObject); @@ -341,7 +336,6 @@ void tst_QQuickApplicationWindow::attachedProperties() QVERIFY(!childWindowObject->property("attached_activeFocusControl").value<QQuickItem *>()); QVERIFY(!childWindowObject->property("attached_header").value<QQuickItem *>()); QVERIFY(!childWindowObject->property("attached_footer").value<QQuickItem *>()); - QVERIFY(!childWindowObject->property("attached_overlay").value<QQuickItem *>()); QQuickApplicationWindow *childAppWindow = object->property("childAppWindow").value<QQuickApplicationWindow *>(); QVERIFY(childAppWindow); @@ -350,7 +344,6 @@ void tst_QQuickApplicationWindow::attachedProperties() QVERIFY(!childAppWindow->property("attached_activeFocusControl").value<QQuickItem *>()); QVERIFY(!childAppWindow->property("attached_header").value<QQuickItem *>()); QVERIFY(!childAppWindow->property("attached_footer").value<QQuickItem *>()); - QVERIFY(!childAppWindow->property("attached_overlay").value<QQuickItem *>()); QQuickItem *childAppWindowControl = object->property("childAppWindowControl").value<QQuickItem *>(); QVERIFY(childAppWindowControl); @@ -359,7 +352,6 @@ void tst_QQuickApplicationWindow::attachedProperties() QCOMPARE(childAppWindowControl->property("attached_activeFocusControl").value<QQuickItem *>(), childAppWindow->activeFocusControl()); QCOMPARE(childAppWindowControl->property("attached_header").value<QQuickItem *>(), childAppWindow->header()); QCOMPARE(childAppWindowControl->property("attached_footer").value<QQuickItem *>(), childAppWindow->footer()); - QCOMPARE(childAppWindowControl->property("attached_overlay").value<QQuickItem *>(), childAppWindow->overlay()); QQuickItem *childAppWindowItem = object->property("childAppWindowItem").value<QQuickItem *>(); QVERIFY(childAppWindowItem); @@ -368,7 +360,6 @@ void tst_QQuickApplicationWindow::attachedProperties() QCOMPARE(childAppWindowItem->property("attached_activeFocusControl").value<QQuickItem *>(), childAppWindow->activeFocusControl()); QCOMPARE(childAppWindowItem->property("attached_header").value<QQuickItem *>(), childAppWindow->header()); QCOMPARE(childAppWindowItem->property("attached_footer").value<QQuickItem *>(), childAppWindow->footer()); - QCOMPARE(childAppWindowItem->property("attached_overlay").value<QQuickItem *>(), childAppWindow->overlay()); QObject *childAppWindowObject = object->property("childAppWindowObject").value<QObject *>(); QVERIFY(childAppWindowObject); @@ -377,7 +368,6 @@ void tst_QQuickApplicationWindow::attachedProperties() QVERIFY(!childAppWindowObject->property("attached_activeFocusControl").value<QQuickItem *>()); QVERIFY(!childAppWindowObject->property("attached_header").value<QQuickItem *>()); QVERIFY(!childAppWindowObject->property("attached_footer").value<QQuickItem *>()); - QVERIFY(!childAppWindowObject->property("attached_overlay").value<QQuickItem *>()); window->show(); window->requestActivate(); @@ -416,7 +406,6 @@ void tst_QQuickApplicationWindow::attachedProperties() QCOMPARE(childControl->property("attached_activeFocusControl").value<QQuickItem *>(), childAppWindowControl); QCOMPARE(childControl->property("attached_header").value<QQuickItem *>(), childAppWindow->header()); QCOMPARE(childControl->property("attached_footer").value<QQuickItem *>(), childAppWindow->footer()); - QCOMPARE(childControl->property("attached_overlay").value<QQuickItem *>(), childAppWindow->overlay()); childItem->setParentItem(childAppWindow->contentItem()); QCOMPARE(childItem->window(), childAppWindow); @@ -425,7 +414,6 @@ void tst_QQuickApplicationWindow::attachedProperties() QCOMPARE(childItem->property("attached_activeFocusControl").value<QQuickItem *>(), childAppWindowControl); QCOMPARE(childItem->property("attached_header").value<QQuickItem *>(), childAppWindow->header()); QCOMPARE(childItem->property("attached_footer").value<QQuickItem *>(), childAppWindow->footer()); - QCOMPARE(childItem->property("attached_overlay").value<QQuickItem *>(), childAppWindow->overlay()); childControl->setParentItem(nullptr); QVERIFY(!childControl->window()); @@ -434,7 +422,6 @@ void tst_QQuickApplicationWindow::attachedProperties() QVERIFY(!childControl->property("attached_activeFocusControl").value<QQuickItem *>()); QVERIFY(!childControl->property("attached_header").value<QQuickItem *>()); QVERIFY(!childControl->property("attached_footer").value<QQuickItem *>()); - QVERIFY(!childControl->property("attached_overlay").value<QQuickItem *>()); childItem->setParentItem(nullptr); QVERIFY(!childItem->window()); @@ -443,7 +430,6 @@ void tst_QQuickApplicationWindow::attachedProperties() QVERIFY(!childItem->property("attached_activeFocusControl").value<QQuickItem *>()); QVERIFY(!childItem->property("attached_header").value<QQuickItem *>()); QVERIFY(!childItem->property("attached_footer").value<QQuickItem *>()); - QVERIFY(!childItem->property("attached_overlay").value<QQuickItem *>()); childAppWindow->close(); qApp->processEvents(); @@ -464,7 +450,6 @@ void tst_QQuickApplicationWindow::attachedProperties() QVERIFY(!childControl->property("attached_contentItem").value<QQuickItem *>()); QVERIFY(!childControl->property("attached_header").value<QQuickItem *>()); QVERIFY(!childControl->property("attached_footer").value<QQuickItem *>()); - QCOMPARE(childControl->property("attached_overlay").value<QQuickItem *>(), QQuickOverlay::overlay(childWindow)); childItem->setParentItem(childWindow->contentItem()); QCOMPARE(childItem->window(), childWindow); @@ -473,7 +458,6 @@ void tst_QQuickApplicationWindow::attachedProperties() QVERIFY(!childControl->property("attached_contentItem").value<QQuickItem *>()); QVERIFY(!childControl->property("attached_header").value<QQuickItem *>()); QVERIFY(!childControl->property("attached_footer").value<QQuickItem *>()); - QCOMPARE(childControl->property("attached_overlay").value<QQuickItem *>(), QQuickOverlay::overlay(childWindow)); childControl->setParentItem(nullptr); QVERIFY(!childControl->window()); @@ -482,7 +466,6 @@ void tst_QQuickApplicationWindow::attachedProperties() QVERIFY(!childControl->property("attached_activeFocusControl").value<QQuickItem *>()); QVERIFY(!childControl->property("attached_header").value<QQuickItem *>()); QVERIFY(!childControl->property("attached_footer").value<QQuickItem *>()); - QVERIFY(!childControl->property("attached_overlay").value<QQuickItem *>()); childItem->setParentItem(nullptr); QVERIFY(!childItem->window()); @@ -491,7 +474,6 @@ void tst_QQuickApplicationWindow::attachedProperties() QVERIFY(!childItem->property("attached_activeFocusControl").value<QQuickItem *>()); QVERIFY(!childItem->property("attached_header").value<QQuickItem *>()); QVERIFY(!childItem->property("attached_footer").value<QQuickItem *>()); - QVERIFY(!childItem->property("attached_overlay").value<QQuickItem *>()); childWindow->close(); } @@ -890,6 +872,19 @@ void tst_QQuickApplicationWindow::componentComplete() QVERIFY(qmlWindow->isComponentComplete()); } +void tst_QQuickApplicationWindow::opacity() +{ + QQmlEngine engine; + QQmlComponent component(&engine); + component.loadUrl(testFileUrl("opacity.qml")); + + QScopedPointer<QObject> object(component.create()); + QVERIFY2(!object.isNull(), qPrintable(component.errorString())); + + QQuickApplicationWindow *window = qobject_cast<QQuickApplicationWindow *>(object.data()); + QVERIFY(window); +} + QTEST_MAIN(tst_QQuickApplicationWindow) #include "tst_qquickapplicationwindow.moc" diff --git a/tests/auto/qquickcolor/data/tst_color.qml b/tests/auto/qquickcolor/data/tst_color.qml index e3083514..cdd07e14 100644 --- a/tests/auto/qquickcolor/data/tst_color.qml +++ b/tests/auto/qquickcolor/data/tst_color.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtTest 1.0 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtTest +import QtQuick.Controls +import QtQuick.Controls.impl TestCase { id: testCase diff --git a/tests/auto/qquickcontrol/CMakeLists.txt b/tests/auto/qquickcontrol/CMakeLists.txt index 59e1ccb6..0599ce32 100644 --- a/tests/auto/qquickcontrol/CMakeLists.txt +++ b/tests/auto/qquickcontrol/CMakeLists.txt @@ -24,6 +24,7 @@ qt_add_test(tst_qquickcontrol Qt::GuiPrivate Qt::QmlPrivate Qt::QuickControls2 + Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private Qt::TestPrivate diff --git a/tests/auto/qquickcontrol/data/flickable.qml b/tests/auto/qquickcontrol/data/flickable.qml index f3a1c381..0ac72320 100644 --- a/tests/auto/qquickcontrol/data/flickable.qml +++ b/tests/auto/qquickcontrol/data/flickable.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.14 -import QtQuick.Controls 2.14 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickcontrol/tst_qquickcontrol.cpp b/tests/auto/qquickcontrol/tst_qquickcontrol.cpp index c8d34756..6acb192f 100644 --- a/tests/auto/qquickcontrol/tst_qquickcontrol.cpp +++ b/tests/auto/qquickcontrol/tst_qquickcontrol.cpp @@ -53,16 +53,7 @@ private slots: void flickable(); private: - struct TouchDeviceDeleter - { - static inline void cleanup(QTouchDevice *device) - { - QWindowSystemInterface::unregisterTouchDevice(device); - delete device; - } - }; - - QScopedPointer<QTouchDevice, TouchDeviceDeleter> touchDevice; + QScopedPointer<QPointingDevice> touchDevice; }; @@ -71,9 +62,7 @@ void tst_QQuickControl::initTestCase() QQmlDataTest::initTestCase(); qputenv("QML_NO_TOUCH_COMPRESSION", "1"); - touchDevice.reset(new QTouchDevice); - touchDevice->setType(QTouchDevice::TouchScreen); - QWindowSystemInterface::registerTouchDevice(touchDevice.data()); + touchDevice.reset(QTest::createTouchDevice()); } void tst_QQuickControl::flickable() diff --git a/tests/auto/qquickdrawer/CMakeLists.txt b/tests/auto/qquickdrawer/CMakeLists.txt index 3679471a..e428a86c 100644 --- a/tests/auto/qquickdrawer/CMakeLists.txt +++ b/tests/auto/qquickdrawer/CMakeLists.txt @@ -24,6 +24,7 @@ qt_add_test(tst_qquickdrawer Qt::GuiPrivate Qt::QmlPrivate Qt::QuickControls2 + Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private Qt::TestPrivate diff --git a/tests/auto/qquickdrawer/data/applicationwindow-button.qml b/tests/auto/qquickdrawer/data/applicationwindow-button.qml index 8e1047b5..a7c70e04 100644 --- a/tests/auto/qquickdrawer/data/applicationwindow-button.qml +++ b/tests/auto/qquickdrawer/data/applicationwindow-button.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickdrawer/data/applicationwindow-hover.qml b/tests/auto/qquickdrawer/data/applicationwindow-hover.qml index 3de06805..8b8efb48 100644 --- a/tests/auto/qquickdrawer/data/applicationwindow-hover.qml +++ b/tests/auto/qquickdrawer/data/applicationwindow-hover.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickdrawer/data/applicationwindow-wheel.qml b/tests/auto/qquickdrawer/data/applicationwindow-wheel.qml index 5042f44f..449fbadb 100644 --- a/tests/auto/qquickdrawer/data/applicationwindow-wheel.qml +++ b/tests/auto/qquickdrawer/data/applicationwindow-wheel.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/qquickdrawer/data/applicationwindow.qml b/tests/auto/qquickdrawer/data/applicationwindow.qml index 01b8ff77..3f2ed118 100644 --- a/tests/auto/qquickdrawer/data/applicationwindow.qml +++ b/tests/auto/qquickdrawer/data/applicationwindow.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickdrawer/data/dragOverModalShadow.qml b/tests/auto/qquickdrawer/data/dragOverModalShadow.qml index 7354b6b9..6d2951f7 100644 --- a/tests/auto/qquickdrawer/data/dragOverModalShadow.qml +++ b/tests/auto/qquickdrawer/data/dragOverModalShadow.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickdrawer/data/flickable.qml b/tests/auto/qquickdrawer/data/flickable.qml index 09d43029..b3f98d9e 100644 --- a/tests/auto/qquickdrawer/data/flickable.qml +++ b/tests/auto/qquickdrawer/data/flickable.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickdrawer/data/grabber.qml b/tests/auto/qquickdrawer/data/grabber.qml index 1f9bbcbb..bd1b84aa 100644 --- a/tests/auto/qquickdrawer/data/grabber.qml +++ b/tests/auto/qquickdrawer/data/grabber.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickdrawer/data/header.qml b/tests/auto/qquickdrawer/data/header.qml index af84cf9b..dfd64ab1 100644 --- a/tests/auto/qquickdrawer/data/header.qml +++ b/tests/auto/qquickdrawer/data/header.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickdrawer/data/multiTouch.qml b/tests/auto/qquickdrawer/data/multiTouch.qml index 57135e5f..03b69c4e 100644 --- a/tests/auto/qquickdrawer/data/multiTouch.qml +++ b/tests/auto/qquickdrawer/data/multiTouch.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/qquickdrawer/data/multiple.qml b/tests/auto/qquickdrawer/data/multiple.qml index d629e3d0..d4d5fbd6 100644 --- a/tests/auto/qquickdrawer/data/multiple.qml +++ b/tests/auto/qquickdrawer/data/multiple.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickdrawer/data/reposition.qml b/tests/auto/qquickdrawer/data/reposition.qml index 841e0b77..e3211fab 100644 --- a/tests/auto/qquickdrawer/data/reposition.qml +++ b/tests/auto/qquickdrawer/data/reposition.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/qquickdrawer/data/slider.qml b/tests/auto/qquickdrawer/data/slider.qml index 391a79f0..b3db5a7b 100644 --- a/tests/auto/qquickdrawer/data/slider.qml +++ b/tests/auto/qquickdrawer/data/slider.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickdrawer/data/topEdgeScreenEdge.qml b/tests/auto/qquickdrawer/data/topEdgeScreenEdge.qml index 02b5a10f..d2aaf486 100644 --- a/tests/auto/qquickdrawer/data/topEdgeScreenEdge.qml +++ b/tests/auto/qquickdrawer/data/topEdgeScreenEdge.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.5 +import QtQuick +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/qquickdrawer/data/window-button.qml b/tests/auto/qquickdrawer/data/window-button.qml index 975d50db..02247dd0 100644 --- a/tests/auto/qquickdrawer/data/window-button.qml +++ b/tests/auto/qquickdrawer/data/window-button.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.2 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: 400 diff --git a/tests/auto/qquickdrawer/data/window-hover.qml b/tests/auto/qquickdrawer/data/window-hover.qml index 8360d7ce..e0b016cc 100644 --- a/tests/auto/qquickdrawer/data/window-hover.qml +++ b/tests/auto/qquickdrawer/data/window-hover.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.2 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: 400 diff --git a/tests/auto/qquickdrawer/data/window-wheel.qml b/tests/auto/qquickdrawer/data/window-wheel.qml index f313f368..e9c2eb42 100644 --- a/tests/auto/qquickdrawer/data/window-wheel.qml +++ b/tests/auto/qquickdrawer/data/window-wheel.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.2 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { id: window diff --git a/tests/auto/qquickdrawer/data/window.qml b/tests/auto/qquickdrawer/data/window.qml index 578d3e9f..4bd9c9d2 100644 --- a/tests/auto/qquickdrawer/data/window.qml +++ b/tests/auto/qquickdrawer/data/window.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.2 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: 400 diff --git a/tests/auto/qquickdrawer/tst_qquickdrawer.cpp b/tests/auto/qquickdrawer/tst_qquickdrawer.cpp index 7644cacf..c96b156c 100644 --- a/tests/auto/qquickdrawer/tst_qquickdrawer.cpp +++ b/tests/auto/qquickdrawer/tst_qquickdrawer.cpp @@ -40,8 +40,8 @@ #include "../shared/visualtestutil.h" #include "../shared/qtest_quickcontrols.h" +#include <QtGui/qpointingdevice.h> #include <QtGui/qstylehints.h> -#include <QtGui/qtouchdevice.h> #include <QtGui/qguiapplication.h> #include <QtGui/qpa/qwindowsysteminterface.h> #include <QtQuick/private/qquickwindow_p.h> @@ -112,16 +112,7 @@ private slots: void topEdgeScreenEdge(); private: - struct TouchDeviceDeleter - { - static inline void cleanup(QTouchDevice *device) - { - QWindowSystemInterface::unregisterTouchDevice(device); - delete device; - } - }; - - QScopedPointer<QTouchDevice, TouchDeviceDeleter> touchDevice; + QScopedPointer<QPointingDevice> touchDevice; }; @@ -130,9 +121,7 @@ void tst_QQuickDrawer::initTestCase() QQmlDataTest::initTestCase(); qputenv("QML_NO_TOUCH_COMPRESSION", "1"); - touchDevice.reset(new QTouchDevice); - touchDevice->setType(QTouchDevice::TouchScreen); - QWindowSystemInterface::registerTouchDevice(touchDevice.data()); + touchDevice.reset(QTest::createTouchDevice()); } void tst_QQuickDrawer::defaults() @@ -180,6 +169,7 @@ void tst_QQuickDrawer::visible() { QFETCH(QString, source); QQuickApplicationHelper helper(this, source); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); @@ -220,6 +210,7 @@ void tst_QQuickDrawer::visible() void tst_QQuickDrawer::state() { QQuickApplicationHelper helper(this, "applicationwindow.qml"); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); @@ -340,6 +331,7 @@ void tst_QQuickDrawer::position() QFETCH(qreal, position); QQuickApplicationHelper helper(this, QStringLiteral("applicationwindow.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; window->show(); @@ -387,6 +379,7 @@ void tst_QQuickDrawer::dragMargin() QFETCH(qreal, dragFromRight); QQuickApplicationHelper helper(this, QStringLiteral("applicationwindow.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; window->show(); @@ -433,6 +426,7 @@ static QRectF geometry(const QQuickItem *item) void tst_QQuickDrawer::reposition() { QQuickApplicationHelper helper(this, QStringLiteral("reposition.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; window->show(); @@ -491,6 +485,7 @@ void tst_QQuickDrawer::reposition() void tst_QQuickDrawer::header() { QQuickApplicationHelper helper(this, QStringLiteral("header.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; window->show(); @@ -545,6 +540,7 @@ void tst_QQuickDrawer::hover() QFETCH(bool, modal); QQuickApplicationHelper helper(this, source); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); window->requestActivate(); @@ -628,6 +624,7 @@ void tst_QQuickDrawer::wheel() QFETCH(bool, modal); QQuickApplicationHelper helper(this, source); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); QVERIFY(QTest::qWaitForWindowExposed(window)); @@ -690,6 +687,7 @@ void tst_QQuickDrawer::wheel() void tst_QQuickDrawer::multiple() { QQuickApplicationHelper helper(this, QStringLiteral("multiple.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); QVERIFY(QTest::qWaitForWindowExposed(window)); @@ -834,6 +832,7 @@ void tst_QQuickDrawer::touch() QFETCH(QPoint, to); QQuickApplicationHelper helper(this, source); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); @@ -868,6 +867,7 @@ void tst_QQuickDrawer::touch() void tst_QQuickDrawer::multiTouch() { QQuickApplicationHelper helper(this, QStringLiteral("multiTouch.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); QVERIFY(QTest::qWaitForWindowActive(window)); @@ -981,6 +981,7 @@ void tst_QQuickDrawer::multiTouch() void tst_QQuickDrawer::grabber() { QQuickApplicationHelper helper(this, QStringLiteral("grabber.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); QVERIFY(QTest::qWaitForWindowExposed(window)); @@ -1025,6 +1026,7 @@ void tst_QQuickDrawer::interactive() { QFETCH(QString, source); QQuickApplicationHelper helper(this, source); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); @@ -1087,6 +1089,7 @@ void tst_QQuickDrawer::flickable() QFETCH(QPoint, to); QQuickApplicationHelper helper(this, QStringLiteral("flickable.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); QVERIFY(QTest::qWaitForWindowExposed(window)); @@ -1143,6 +1146,7 @@ void tst_QQuickDrawer::dragOverModalShadow() QFETCH(bool, mouse); QQuickApplicationHelper helper(this, QStringLiteral("dragOverModalShadow.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); QVERIFY(QTest::qWaitForWindowActive(window)); @@ -1199,6 +1203,7 @@ void tst_QQuickDrawer::nonModal() QFETCH(bool, mouse); QQuickApplicationHelper helper(this, QStringLiteral("window.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); QVERIFY(QTest::qWaitForWindowActive(window)); @@ -1282,6 +1287,7 @@ void tst_QQuickDrawer::slider() QFETCH(int, delta); QQuickApplicationHelper helper(this, QStringLiteral("slider.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); QVERIFY(QTest::qWaitForWindowActive(window)); @@ -1325,6 +1331,7 @@ void tst_QQuickDrawer::slider() void tst_QQuickDrawer::topEdgeScreenEdge() { QQuickApplicationHelper helper(this, QStringLiteral("topEdgeScreenEdge.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); QVERIFY(QTest::qWaitForWindowActive(window)); diff --git a/tests/auto/qquickheaderview/data/ListModel.qml b/tests/auto/qquickheaderview/data/ListModel.qml index 59021458..b8160a46 100644 --- a/tests/auto/qquickheaderview/data/ListModel.qml +++ b/tests/auto/qquickheaderview/data/ListModel.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Window 2.15 -import QtQuick.Controls 2.15 -import TestTableModel 0.1 +import QtQuick +import QtQuick.Window +import QtQuick.Controls +import TestTableModel Window { objectName: "window" diff --git a/tests/auto/qquickheaderview/data/Window.qml b/tests/auto/qquickheaderview/data/Window.qml index 3811904e..9bf9963c 100644 --- a/tests/auto/qquickheaderview/data/Window.qml +++ b/tests/auto/qquickheaderview/data/Window.qml @@ -48,12 +48,12 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Window 2.15 -import QtQuick.Controls 2.15 -import TestTableModel 0.1 -import TestTableModelWithHeader 0.1 -import HeaderDataProxyModel 0.1 +import QtQuick +import QtQuick.Window +import QtQuick.Controls +import TestTableModel +import TestTableModelWithHeader +import HeaderDataProxyModel Window { objectName: "window" diff --git a/tests/auto/qquickheaderview/tst_qquickheaderview.cpp b/tests/auto/qquickheaderview/tst_qquickheaderview.cpp index 611e39cb..d8d71183 100644 --- a/tests/auto/qquickheaderview/tst_qquickheaderview.cpp +++ b/tests/auto/qquickheaderview/tst_qquickheaderview.cpp @@ -203,7 +203,7 @@ public: } private: - QVector<QVariant> hData, vData; + QList<QVariant> hData, vData; }; class tst_QQuickHeaderView : public QQmlDataTest { diff --git a/tests/auto/qquickiconimage/CMakeLists.txt b/tests/auto/qquickiconimage/CMakeLists.txt index 9f6d0494..2ee0d295 100644 --- a/tests/auto/qquickiconimage/CMakeLists.txt +++ b/tests/auto/qquickiconimage/CMakeLists.txt @@ -23,7 +23,7 @@ qt_add_test(tst_qquickiconimage DEFINES QQC2_IMPORT_PATH=\\\"${CMAKE_CURRENT_SOURCE_DIR}/../../../src/imports\\\" LIBRARIES - Qt::QuickControls2Private + Qt::QuickControls2ImplPrivate Qt::QuickPrivate PUBLIC_LIBRARIES Qt::CorePrivate @@ -33,6 +33,7 @@ qt_add_test(tst_qquickiconimage Qt::QmlPrivate Qt::Quick Qt::QuickControls2 + Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private Qt::TestPrivate diff --git a/tests/auto/qquickiconimage/data/alignment.qml b/tests/auto/qquickiconimage/data/alignment.qml index 4e5ac6e7..e6861520 100644 --- a/tests/auto/qquickiconimage/data/alignment.qml +++ b/tests/auto/qquickiconimage/data/alignment.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl Row { width: 200 diff --git a/tests/auto/qquickiconimage/data/color.qml b/tests/auto/qquickiconimage/data/color.qml index b5d40d70..b44b4388 100644 --- a/tests/auto/qquickiconimage/data/color.qml +++ b/tests/auto/qquickiconimage/data/color.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl Row { width: 200 diff --git a/tests/auto/qquickiconimage/data/fileSelectors.qml b/tests/auto/qquickiconimage/data/fileSelectors.qml index 4e5ac6e7..e6861520 100644 --- a/tests/auto/qquickiconimage/data/fileSelectors.qml +++ b/tests/auto/qquickiconimage/data/fileSelectors.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl Row { width: 200 diff --git a/tests/auto/qquickiconimage/data/imageProvider.qml b/tests/auto/qquickiconimage/data/imageProvider.qml index cf03ac7e..9b18a99e 100644 --- a/tests/auto/qquickiconimage/data/imageProvider.qml +++ b/tests/auto/qquickiconimage/data/imageProvider.qml @@ -1,7 +1,7 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Templates 2.12 as T +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T IconLabel { icon.color: "transparent" diff --git a/tests/auto/qquickiconimage/data/nameBindingNoSizes.qml b/tests/auto/qquickiconimage/data/nameBindingNoSizes.qml index d0ea13c2..d457d205 100644 --- a/tests/auto/qquickiconimage/data/nameBindingNoSizes.qml +++ b/tests/auto/qquickiconimage/data/nameBindingNoSizes.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl IconImage { name: "appointment-new" diff --git a/tests/auto/qquickiconimage/data/nameBindingSourceSize.qml b/tests/auto/qquickiconimage/data/nameBindingSourceSize.qml index 4e5ac6e7..e6861520 100644 --- a/tests/auto/qquickiconimage/data/nameBindingSourceSize.qml +++ b/tests/auto/qquickiconimage/data/nameBindingSourceSize.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl Row { width: 200 diff --git a/tests/auto/qquickiconimage/data/nameBindingSourceSizeWidthHeight.qml b/tests/auto/qquickiconimage/data/nameBindingSourceSizeWidthHeight.qml index db6697d0..5e7ebefc 100644 --- a/tests/auto/qquickiconimage/data/nameBindingSourceSizeWidthHeight.qml +++ b/tests/auto/qquickiconimage/data/nameBindingSourceSizeWidthHeight.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl IconImage { name: "appointment-new" diff --git a/tests/auto/qquickiconimage/data/root.qml b/tests/auto/qquickiconimage/data/root.qml index 31ad7265..ed02d2df 100644 --- a/tests/auto/qquickiconimage/data/root.qml +++ b/tests/auto/qquickiconimage/data/root.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 +import QtQuick Item { width: 200 diff --git a/tests/auto/qquickiconimage/data/sourceBindingNoSizes.qml b/tests/auto/qquickiconimage/data/sourceBindingNoSizes.qml index 08dcd55e..34fc6b33 100644 --- a/tests/auto/qquickiconimage/data/sourceBindingNoSizes.qml +++ b/tests/auto/qquickiconimage/data/sourceBindingNoSizes.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl Row { width: 200 diff --git a/tests/auto/qquickiconimage/data/sourceBindingSourceSize.qml b/tests/auto/qquickiconimage/data/sourceBindingSourceSize.qml index 24678f8c..9f1b6290 100644 --- a/tests/auto/qquickiconimage/data/sourceBindingSourceSize.qml +++ b/tests/auto/qquickiconimage/data/sourceBindingSourceSize.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl Row { width: 200 diff --git a/tests/auto/qquickiconimage/data/sourceBindingSourceSizeWidthHeight.qml b/tests/auto/qquickiconimage/data/sourceBindingSourceSizeWidthHeight.qml index 9ac26e22..4dc3ac75 100644 --- a/tests/auto/qquickiconimage/data/sourceBindingSourceSizeWidthHeight.qml +++ b/tests/auto/qquickiconimage/data/sourceBindingSourceSizeWidthHeight.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl IconImage { source: "qrc:/icons/testtheme/22x22/actions/appointment-new.png" diff --git a/tests/auto/qquickiconimage/data/sourceBindingSourceTooLarge.qml b/tests/auto/qquickiconimage/data/sourceBindingSourceTooLarge.qml index 655add7b..a54d998a 100644 --- a/tests/auto/qquickiconimage/data/sourceBindingSourceTooLarge.qml +++ b/tests/auto/qquickiconimage/data/sourceBindingSourceTooLarge.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl IconImage { source: "qrc:/icons/testtheme/22x22/actions/appointment-new.png" diff --git a/tests/auto/qquickiconimage/data/svgNoSizes.qml b/tests/auto/qquickiconimage/data/svgNoSizes.qml index d2652827..e29c23c5 100644 --- a/tests/auto/qquickiconimage/data/svgNoSizes.qml +++ b/tests/auto/qquickiconimage/data/svgNoSizes.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl Row { width: 200 diff --git a/tests/auto/qquickiconimage/data/svgSourceBindingSourceSize.qml b/tests/auto/qquickiconimage/data/svgSourceBindingSourceSize.qml index c9157700..4674e8f1 100644 --- a/tests/auto/qquickiconimage/data/svgSourceBindingSourceSize.qml +++ b/tests/auto/qquickiconimage/data/svgSourceBindingSourceSize.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl Row { width: 200 diff --git a/tests/auto/qquickiconimage/data/translucentColors.qml b/tests/auto/qquickiconimage/data/translucentColors.qml index fd208235..ad67bfe5 100644 --- a/tests/auto/qquickiconimage/data/translucentColors.qml +++ b/tests/auto/qquickiconimage/data/translucentColors.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl ApplicationWindow { width: 500 diff --git a/tests/auto/qquickiconimage/qquickiconimage.pro b/tests/auto/qquickiconimage/qquickiconimage.pro index 1a37d4ba..91b6985a 100644 --- a/tests/auto/qquickiconimage/qquickiconimage.pro +++ b/tests/auto/qquickiconimage/qquickiconimage.pro @@ -3,7 +3,7 @@ macos:CONFIG -= app_bundle TARGET = tst_qquickiconimage QT += core gui qml quick testlib -QT_PRIVATE += quick-private quickcontrols2-private +QT_PRIVATE += quick-private quickcontrols2impl-private qtHaveModule(svg): QT += svg include (../shared/util.pri) diff --git a/tests/auto/qquickiconimage/tst_qquickiconimage.cpp b/tests/auto/qquickiconimage/tst_qquickiconimage.cpp index bc24c4fb..bcf1231f 100644 --- a/tests/auto/qquickiconimage/tst_qquickiconimage.cpp +++ b/tests/auto/qquickiconimage/tst_qquickiconimage.cpp @@ -39,7 +39,7 @@ #include <QtQuick/qquickimageprovider.h> #include <QtQuick/qquickitemgrabresult.h> #include <QtQuick/private/qquickimage_p.h> -#include <QtQuickControls2/private/qquickiconimage_p.h> +#include <QtQuickControls2Impl/private/qquickiconimage_p.h> #include "../shared/util.h" #include "../shared/visualtestutil.h" diff --git a/tests/auto/qquickiconlabel/CMakeLists.txt b/tests/auto/qquickiconlabel/CMakeLists.txt index bdbefd9d..97e115a5 100644 --- a/tests/auto/qquickiconlabel/CMakeLists.txt +++ b/tests/auto/qquickiconlabel/CMakeLists.txt @@ -19,7 +19,7 @@ qt_add_test(tst_qquickiconlabel DEFINES QQC2_IMPORT_PATH=\\\"${CMAKE_CURRENT_SOURCE_DIR}/../../../src/imports\\\" LIBRARIES - Qt::QuickControls2Private + Qt::QuickControls2ImplPrivate Qt::QuickPrivate PUBLIC_LIBRARIES Qt::CorePrivate @@ -29,6 +29,7 @@ qt_add_test(tst_qquickiconlabel Qt::QmlPrivate Qt::Quick Qt::QuickControls2 + Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private Qt::TestPrivate diff --git a/tests/auto/qquickiconlabel/data/colorChanges.qml b/tests/auto/qquickiconlabel/data/colorChanges.qml index 954c1ef4..5771e1ed 100644 --- a/tests/auto/qquickiconlabel/data/colorChanges.qml +++ b/tests/auto/qquickiconlabel/data/colorChanges.qml @@ -48,15 +48,15 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl AbstractButton { id: button width: 200 height: 200 - icon.source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png" + icon.source: "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png" icon.color: enabled ? "transparent" : "red" IconLabel { diff --git a/tests/auto/qquickiconlabel/data/iconlabel.qml b/tests/auto/qquickiconlabel/data/iconlabel.qml index b82f9faf..772b89bd 100644 --- a/tests/auto/qquickiconlabel/data/iconlabel.qml +++ b/tests/auto/qquickiconlabel/data/iconlabel.qml @@ -48,16 +48,16 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl AbstractButton { id: button width: 200 height: 200 text: "Some text" - icon.source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png" + icon.source: "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png" IconLabel { icon: button.icon diff --git a/tests/auto/qquickiconlabel/data/spacingWithOnlyIcon.qml b/tests/auto/qquickiconlabel/data/spacingWithOnlyIcon.qml index 61c9f74c..7921babb 100644 --- a/tests/auto/qquickiconlabel/data/spacingWithOnlyIcon.qml +++ b/tests/auto/qquickiconlabel/data/spacingWithOnlyIcon.qml @@ -48,15 +48,15 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl AbstractButton { id: button width: 200 height: 200 - icon.source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png" + icon.source: "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png" IconLabel { spacing: 10 diff --git a/tests/auto/qquickiconlabel/data/spacingWithOnlyText.qml b/tests/auto/qquickiconlabel/data/spacingWithOnlyText.qml index 7c2ecb0f..20c61706 100644 --- a/tests/auto/qquickiconlabel/data/spacingWithOnlyText.qml +++ b/tests/auto/qquickiconlabel/data/spacingWithOnlyText.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl Item { width: 200 diff --git a/tests/auto/qquickiconlabel/qquickiconlabel.pro b/tests/auto/qquickiconlabel/qquickiconlabel.pro index 6b0f73b3..af0a76cd 100644 --- a/tests/auto/qquickiconlabel/qquickiconlabel.pro +++ b/tests/auto/qquickiconlabel/qquickiconlabel.pro @@ -3,7 +3,7 @@ macos:CONFIG -= app_bundle TARGET = tst_qquickiconlabel QT += core gui qml quick testlib -QT_PRIVATE += quick-private quickcontrols2-private +QT_PRIVATE += quick-private quickcontrols2impl-private include (../shared/util.pri) diff --git a/tests/auto/qquickiconlabel/tst_qquickiconlabel.cpp b/tests/auto/qquickiconlabel/tst_qquickiconlabel.cpp index 0ecc95c5..526ecf05 100644 --- a/tests/auto/qquickiconlabel/tst_qquickiconlabel.cpp +++ b/tests/auto/qquickiconlabel/tst_qquickiconlabel.cpp @@ -26,7 +26,7 @@ ** ****************************************************************************/ -#include <QtCore/qvector.h> +#include <QtCore/qlist.h> #include <qtest.h> @@ -35,8 +35,8 @@ #include <QtQuick/qquickitemgrabresult.h> #include <QtQuick/private/qquicktext_p.h> #include <QtQuickTemplates2/private/qquickicon_p.h> -#include <QtQuickControls2/private/qquickiconimage_p.h> -#include <QtQuickControls2/private/qquickiconlabel_p.h> +#include <QtQuickControls2Impl/private/qquickiconimage_p.h> +#include <QtQuickControls2Impl/private/qquickiconlabel_p.h> #include "../shared/util.h" #include "../shared/visualtestutil.h" @@ -64,13 +64,13 @@ tst_qquickiconlabel::tst_qquickiconlabel() void tst_qquickiconlabel::display_data() { - QTest::addColumn<QVector<QQuickIconLabel::Display> >("displayTypes"); + QTest::addColumn<QList<QQuickIconLabel::Display> >("displayTypes"); QTest::addColumn<bool>("mirrored"); QTest::addColumn<qreal>("labelWidth"); QTest::addColumn<qreal>("labelHeight"); QTest::addColumn<qreal>("spacing"); - typedef QVector<QQuickIconLabel::Display> DisplayVector; + typedef QList<QQuickIconLabel::Display> DisplayVector; QQuickIconLabel::Display IconOnly = QQuickIconLabel::IconOnly; QQuickIconLabel::Display TextOnly = QQuickIconLabel::TextOnly; QQuickIconLabel::Display TextUnderIcon = QQuickIconLabel::TextUnderIcon; @@ -108,7 +108,7 @@ void tst_qquickiconlabel::display_data() void tst_qquickiconlabel::display() { - QFETCH(QVector<QQuickIconLabel::Display>, displayTypes); + QFETCH(QList<QQuickIconLabel::Display>, displayTypes); QFETCH(bool, mirrored); QFETCH(qreal, labelWidth); QFETCH(qreal, labelHeight); diff --git a/tests/auto/qquickimaginestyle/data/tst_imagine.qml b/tests/auto/qquickimaginestyle/data/tst_imagine.qml index b9078d78..493ff766 100644 --- a/tests/auto/qquickimaginestyle/data/tst_imagine.qml +++ b/tests/auto/qquickimaginestyle/data/tst_imagine.qml @@ -48,13 +48,13 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.2 -import QtTest 1.1 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick +import QtQuick.Window +import QtTest +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl TestCase { id: testCase diff --git a/tests/auto/qquickmaterialstyle/data/tst_material.qml b/tests/auto/qquickmaterialstyle/data/tst_material.qml index 9f2456b8..dfb0e770 100644 --- a/tests/auto/qquickmaterialstyle/data/tst_material.qml +++ b/tests/auto/qquickmaterialstyle/data/tst_material.qml @@ -48,12 +48,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.2 -import QtTest 1.0 -import QtQuick.Templates 2.12 as T -import QtQuick.Controls 2.12 -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Window +import QtTest +import QtQuick.Templates as T +import QtQuick.Controls +import QtQuick.Controls.Material TestCase { id: testCase @@ -606,7 +606,7 @@ TestCase { verify(window) verify(window.pane) - var control = Qt.createQmlObject("import QtQuick.Controls 2.1; " + data.type + " { }", window.pane) + var control = Qt.createQmlObject("import QtQuick.Controls; " + data.type + " { }", window.pane) verify(control) compare(control.font[data.attribute], data.value) diff --git a/tests/auto/qquickmaterialstyleconf/data/applicationwindow.qml b/tests/auto/qquickmaterialstyleconf/data/applicationwindow.qml index 8e3be027..1ce4598d 100644 --- a/tests/auto/qquickmaterialstyleconf/data/applicationwindow.qml +++ b/tests/auto/qquickmaterialstyleconf/data/applicationwindow.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Material 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Material ApplicationWindow { width: 400 diff --git a/tests/auto/qquickmaterialstyleconf/tst_qquickmaterialstyleconf.cpp b/tests/auto/qquickmaterialstyleconf/tst_qquickmaterialstyleconf.cpp index 72136445..7612b99b 100644 --- a/tests/auto/qquickmaterialstyleconf/tst_qquickmaterialstyleconf.cpp +++ b/tests/auto/qquickmaterialstyleconf/tst_qquickmaterialstyleconf.cpp @@ -57,6 +57,7 @@ private slots: void tst_qquickmaterialstyleconf::conf() { QQuickApplicationHelper helper(this, QLatin1String("applicationwindow.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QFont customFont; customFont.setFamily("Courier"); @@ -101,6 +102,7 @@ void tst_qquickmaterialstyleconf::variants() qputenv("QT_QUICK_CONTROLS_CONF", confPath); QQuickApplicationHelper helper(this, QLatin1String("applicationwindow.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; window->show(); diff --git a/tests/auto/qquickmenu/CMakeLists.txt b/tests/auto/qquickmenu/CMakeLists.txt index 478aaa82..5d6b9ffa 100644 --- a/tests/auto/qquickmenu/CMakeLists.txt +++ b/tests/auto/qquickmenu/CMakeLists.txt @@ -24,6 +24,7 @@ qt_add_test(tst_qquickmenu Qt::GuiPrivate Qt::QmlPrivate Qt::QuickControls2 + Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private Qt::TestPrivate diff --git a/tests/auto/qquickmenu/data/actions.qml b/tests/auto/qquickmenu/data/actions.qml index 6998c722..226c9450 100644 --- a/tests/auto/qquickmenu/data/actions.qml +++ b/tests/auto/qquickmenu/data/actions.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickmenu/data/addItem.qml b/tests/auto/qquickmenu/data/addItem.qml index ae592432..b9d38afd 100644 --- a/tests/auto/qquickmenu/data/addItem.qml +++ b/tests/auto/qquickmenu/data/addItem.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 200 diff --git a/tests/auto/qquickmenu/data/applicationWindowScrollable.qml b/tests/auto/qquickmenu/data/applicationWindowScrollable.qml index b9894aed..22ab278e 100644 --- a/tests/auto/qquickmenu/data/applicationWindowScrollable.qml +++ b/tests/auto/qquickmenu/data/applicationWindowScrollable.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { title: "Test Application Window" diff --git a/tests/auto/qquickmenu/data/applicationwindow.qml b/tests/auto/qquickmenu/data/applicationwindow.qml index 986853e4..d15c0a88 100644 --- a/tests/auto/qquickmenu/data/applicationwindow.qml +++ b/tests/auto/qquickmenu/data/applicationwindow.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { title: "Test Application Window" @@ -59,6 +59,7 @@ ApplicationWindow { property alias emptyMenu: emptyMenu property alias menu: menu property alias menuButton: menuButton + property Overlay overlay: menu.Overlay.overlay Menu { id: emptyMenu diff --git a/tests/auto/qquickmenu/data/delegateFromSeparateComponent.qml b/tests/auto/qquickmenu/data/delegateFromSeparateComponent.qml index 303e9155..b2af27e9 100644 --- a/tests/auto/qquickmenu/data/delegateFromSeparateComponent.qml +++ b/tests/auto/qquickmenu/data/delegateFromSeparateComponent.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 800 diff --git a/tests/auto/qquickmenu/data/disableWhenTriggered.qml b/tests/auto/qquickmenu/data/disableWhenTriggered.qml index c64916ae..9de8868f 100644 --- a/tests/auto/qquickmenu/data/disableWhenTriggered.qml +++ b/tests/auto/qquickmenu/data/disableWhenTriggered.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.10 -import QtQuick.Controls 2.3 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickmenu/data/disabledMenuItemKeyNavigation.qml b/tests/auto/qquickmenu/data/disabledMenuItemKeyNavigation.qml index a39c5f44..496544e9 100644 --- a/tests/auto/qquickmenu/data/disabledMenuItemKeyNavigation.qml +++ b/tests/auto/qquickmenu/data/disabledMenuItemKeyNavigation.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 200 diff --git a/tests/auto/qquickmenu/data/menuItemWidths.qml b/tests/auto/qquickmenu/data/menuItemWidths.qml index 6d2baa32..e956a29f 100644 --- a/tests/auto/qquickmenu/data/menuItemWidths.qml +++ b/tests/auto/qquickmenu/data/menuItemWidths.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 600 diff --git a/tests/auto/qquickmenu/data/menuSeparator.qml b/tests/auto/qquickmenu/data/menuSeparator.qml index ce6bd307..d71d99c5 100644 --- a/tests/auto/qquickmenu/data/menuSeparator.qml +++ b/tests/auto/qquickmenu/data/menuSeparator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 200 diff --git a/tests/auto/qquickmenu/data/mnemonics.qml b/tests/auto/qquickmenu/data/mnemonics.qml index 510d2401..6525e59e 100644 --- a/tests/auto/qquickmenu/data/mnemonics.qml +++ b/tests/auto/qquickmenu/data/mnemonics.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickmenu/data/order.qml b/tests/auto/qquickmenu/data/order.qml index e03c86d3..f2f18168 100644 --- a/tests/auto/qquickmenu/data/order.qml +++ b/tests/auto/qquickmenu/data/order.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 200 diff --git a/tests/auto/qquickmenu/data/popup.qml b/tests/auto/qquickmenu/data/popup.qml index 3272cd6f..88c08b46 100644 --- a/tests/auto/qquickmenu/data/popup.qml +++ b/tests/auto/qquickmenu/data/popup.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickmenu/data/pressAndHold.qml b/tests/auto/qquickmenu/data/pressAndHold.qml index bcc46c08..a16a15da 100644 --- a/tests/auto/qquickmenu/data/pressAndHold.qml +++ b/tests/auto/qquickmenu/data/pressAndHold.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickmenu/data/removeTakeItem.qml b/tests/auto/qquickmenu/data/removeTakeItem.qml index 7e930812..cfe7585e 100644 --- a/tests/auto/qquickmenu/data/removeTakeItem.qml +++ b/tests/auto/qquickmenu/data/removeTakeItem.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 200 diff --git a/tests/auto/qquickmenu/data/repeater.qml b/tests/auto/qquickmenu/data/repeater.qml index 40f44281..50c8adcb 100644 --- a/tests/auto/qquickmenu/data/repeater.qml +++ b/tests/auto/qquickmenu/data/repeater.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 200 diff --git a/tests/auto/qquickmenu/data/scrollableWithPadding.qml b/tests/auto/qquickmenu/data/scrollableWithPadding.qml index 86405ccb..c8e73858 100644 --- a/tests/auto/qquickmenu/data/scrollableWithPadding.qml +++ b/tests/auto/qquickmenu/data/scrollableWithPadding.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Window 2.11 +import QtQuick +import QtQuick.Controls +import QtQuick.Window Window { title: "Test Window" diff --git a/tests/auto/qquickmenu/data/subMenuDisabled.qml b/tests/auto/qquickmenu/data/subMenuDisabled.qml index 36ca1103..e50ab7ab 100644 --- a/tests/auto/qquickmenu/data/subMenuDisabled.qml +++ b/tests/auto/qquickmenu/data/subMenuDisabled.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 600 diff --git a/tests/auto/qquickmenu/data/subMenus.qml b/tests/auto/qquickmenu/data/subMenus.qml index 4952e7a1..fad59ee6 100644 --- a/tests/auto/qquickmenu/data/subMenus.qml +++ b/tests/auto/qquickmenu/data/subMenus.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 600 diff --git a/tests/auto/qquickmenu/data/windowScrollable.qml b/tests/auto/qquickmenu/data/windowScrollable.qml index 0d495242..7c3a5234 100644 --- a/tests/auto/qquickmenu/data/windowScrollable.qml +++ b/tests/auto/qquickmenu/data/windowScrollable.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Window 2.11 +import QtQuick +import QtQuick.Controls +import QtQuick.Window Window { title: "Test Window" diff --git a/tests/auto/qquickmenu/tst_qquickmenu.cpp b/tests/auto/qquickmenu/tst_qquickmenu.cpp index 54a5d9f4..a06b715f 100644 --- a/tests/auto/qquickmenu/tst_qquickmenu.cpp +++ b/tests/auto/qquickmenu/tst_qquickmenu.cpp @@ -106,6 +106,7 @@ private slots: void tst_QQuickMenu::defaults() { QQuickApplicationHelper helper(this, QLatin1String("applicationwindow.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickMenu *emptyMenu = helper.appWindow->property("emptyMenu").value<QQuickMenu*>(); QCOMPARE(emptyMenu->isVisible(), false); @@ -117,6 +118,7 @@ void tst_QQuickMenu::defaults() void tst_QQuickMenu::count() { QQuickApplicationHelper helper(this, QLatin1String("applicationwindow.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickMenu *menu = helper.window->property("emptyMenu").value<QQuickMenu*>(); QVERIFY(menu); @@ -149,6 +151,7 @@ void tst_QQuickMenu::mouse() QSKIP("Mouse hovering not functional on offscreen/minimal platforms"); QQuickApplicationHelper helper(this, QLatin1String("applicationwindow.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; centerOnScreen(window); @@ -157,9 +160,12 @@ void tst_QQuickMenu::mouse() QVERIFY(QTest::qWaitForWindowActive(window)); QQuickMenu *menu = window->property("menu").value<QQuickMenu*>(); + QVERIFY(menu); menu->open(); QVERIFY(menu->isVisible()); - QVERIFY(window->overlay()->childItems().contains(menu->contentItem()->parentItem())); + QQuickOverlay *overlay = window->property("overlay").value<QQuickOverlay*>(); + QVERIFY(overlay); + QVERIFY(overlay->childItems().contains(menu->contentItem()->parentItem())); QTRY_VERIFY(menu->isOpened()); QQuickItem *firstItem = menu->itemAt(0); @@ -182,14 +188,14 @@ void tst_QQuickMenu::mouse() QCOMPARE(triggeredSpy.count(), 1); QTRY_COMPARE(visibleSpy.count(), 1); QVERIFY(!menu->isVisible()); - QVERIFY(!window->overlay()->childItems().contains(menu->contentItem())); + QVERIFY(!overlay->childItems().contains(menu->contentItem())); QCOMPARE(menu->currentIndex(), -1); QCOMPARE(menu->contentItem()->property("currentIndex"), QVariant(-1)); menu->open(); QCOMPARE(visibleSpy.count(), 2); QVERIFY(menu->isVisible()); - QVERIFY(window->overlay()->childItems().contains(menu->contentItem()->parentItem())); + QVERIFY(overlay->childItems().contains(menu->contentItem()->parentItem())); QTRY_VERIFY(menu->isOpened()); // Ensure that we have enough space to click outside of the menu. @@ -199,12 +205,12 @@ void tst_QQuickMenu::mouse() QPoint(menu->contentItem()->width() + 1, menu->contentItem()->height() + 1)); QTRY_COMPARE(visibleSpy.count(), 3); QVERIFY(!menu->isVisible()); - QVERIFY(!window->overlay()->childItems().contains(menu->contentItem()->parentItem())); + QVERIFY(!overlay->childItems().contains(menu->contentItem()->parentItem())); menu->open(); QCOMPARE(visibleSpy.count(), 4); QVERIFY(menu->isVisible()); - QVERIFY(window->overlay()->childItems().contains(menu->contentItem()->parentItem())); + QVERIFY(overlay->childItems().contains(menu->contentItem()->parentItem())); QTRY_VERIFY(menu->isOpened()); // Hover-highlight through the menu items one by one @@ -237,13 +243,14 @@ void tst_QQuickMenu::mouse() // QCOMPARE(triggeredSpy.count(), 1); // QCOMPARE(visibleSpy.count(), 5); // QVERIFY(!menu->isVisible()); -// QVERIFY(!window->overlay()->childItems().contains(menu->contentItem())); +// QVERIFY(!overlay->childItems().contains(menu->contentItem())); // QCOMPARE(menu->contentItem()->property("currentIndex"), QVariant(-1)); } void tst_QQuickMenu::pressAndHold() { QQuickApplicationHelper helper(this, QLatin1String("pressAndHold.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); @@ -268,6 +275,7 @@ void tst_QQuickMenu::contextMenuKeyboard() QSKIP("This platform only allows tab focus for text controls"); QQuickApplicationHelper helper(this, QLatin1String("applicationwindow.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; centerOnScreen(window); @@ -289,7 +297,9 @@ void tst_QQuickMenu::contextMenuKeyboard() menu->open(); QCOMPARE(visibleSpy.count(), 1); QVERIFY(menu->isVisible()); - QVERIFY(window->overlay()->childItems().contains(menu->contentItem()->parentItem())); + QQuickOverlay *overlay = window->property("overlay").value<QQuickOverlay*>(); + QVERIFY(overlay); + QVERIFY(overlay->childItems().contains(menu->contentItem()->parentItem())); QTRY_VERIFY(menu->isOpened()); QVERIFY(!firstItem->hasActiveFocus()); QVERIFY(!firstItem->property("highlighted").toBool()); @@ -322,7 +332,7 @@ void tst_QQuickMenu::contextMenuKeyboard() QCOMPARE(secondTriggeredSpy.count(), 1); QTRY_COMPARE(visibleSpy.count(), 2); QVERIFY(!menu->isVisible()); - QVERIFY(!window->overlay()->childItems().contains(menu->contentItem())); + QVERIFY(!overlay->childItems().contains(menu->contentItem())); QVERIFY(!firstItem->hasActiveFocus()); QVERIFY(!firstItem->hasVisualFocus()); QVERIFY(!firstItem->isHighlighted()); @@ -352,7 +362,7 @@ void tst_QQuickMenu::contextMenuKeyboard() QCOMPARE(firstTriggeredSpy.count(), 1); QTRY_COMPARE(visibleSpy.count(), 4); QVERIFY(!menu->isVisible()); - QVERIFY(!window->overlay()->childItems().contains(menu->contentItem())); + QVERIFY(!overlay->childItems().contains(menu->contentItem())); QVERIFY(!firstItem->hasActiveFocus()); QVERIFY(!firstItem->hasVisualFocus()); QVERIFY(!firstItem->isHighlighted()); @@ -365,7 +375,7 @@ void tst_QQuickMenu::contextMenuKeyboard() menu->open(); QCOMPARE(visibleSpy.count(), 5); QVERIFY(menu->isVisible()); - QVERIFY(window->overlay()->childItems().contains(menu->contentItem()->parentItem())); + QVERIFY(overlay->childItems().contains(menu->contentItem()->parentItem())); QTRY_VERIFY(menu->isOpened()); QVERIFY(!firstItem->hasActiveFocus()); QVERIFY(!firstItem->hasVisualFocus()); @@ -451,6 +461,7 @@ void tst_QQuickMenu::disabledMenuItemKeyNavigation() QSKIP("This platform only allows tab focus for text controls"); QQuickApplicationHelper helper(this, QLatin1String("disabledMenuItemKeyNavigation.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; centerOnScreen(window); @@ -515,6 +526,7 @@ void tst_QQuickMenu::mnemonics() #endif QQuickApplicationHelper helper(this, QLatin1String("mnemonics.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); @@ -562,6 +574,7 @@ void tst_QQuickMenu::menuButton() QSKIP("This platform only allows tab focus for text controls"); QQuickApplicationHelper helper(this, QLatin1String("applicationwindow.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; window->show(); @@ -588,6 +601,7 @@ void tst_QQuickMenu::menuButton() void tst_QQuickMenu::addItem() { QQuickApplicationHelper helper(this, QLatin1String("addItem.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; window->show(); QVERIFY(QTest::qWaitForWindowActive(window)); @@ -609,6 +623,7 @@ void tst_QQuickMenu::addItem() void tst_QQuickMenu::menuSeparator() { QQuickApplicationHelper helper(this, QLatin1String("menuSeparator.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; centerOnScreen(window); moveMouseAway(window); @@ -686,6 +701,7 @@ void tst_QQuickMenu::menuSeparator() void tst_QQuickMenu::repeater() { QQuickApplicationHelper helper(this, QLatin1String("repeater.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); QVERIFY(QTest::qWaitForWindowActive(window)); @@ -730,6 +746,7 @@ void tst_QQuickMenu::repeater() void tst_QQuickMenu::order() { QQuickApplicationHelper helper(this, QLatin1String("order.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); QVERIFY(QTest::qWaitForWindowActive(window)); @@ -751,6 +768,7 @@ void tst_QQuickMenu::order() void tst_QQuickMenu::popup() { QQuickApplicationHelper helper(this, QLatin1String("popup.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; centerOnScreen(window); moveMouseAway(window); @@ -907,6 +925,7 @@ void tst_QQuickMenu::popup() void tst_QQuickMenu::actions() { QQuickApplicationHelper helper(this, QLatin1String("actions.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); QVERIFY(QTest::qWaitForWindowActive(window)); @@ -975,6 +994,7 @@ void tst_QQuickMenu::actions() void tst_QQuickMenu::removeTakeItem() { QQuickApplicationHelper helper(this, QLatin1String("removeTakeItem.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); QVERIFY(QTest::qWaitForWindowActive(window)); @@ -1032,6 +1052,7 @@ void tst_QQuickMenu::subMenuMouse() QFETCH(bool, cascade); QQuickApplicationHelper helper(this, QLatin1String("subMenus.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; centerOnScreen(window); moveMouseAway(window); @@ -1138,6 +1159,7 @@ void tst_QQuickMenu::subMenuDisabledMouse() QFETCH(bool, cascade); QQuickApplicationHelper helper(this, QLatin1String("subMenuDisabled.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; centerOnScreen(window); moveMouseAway(window); @@ -1200,6 +1222,7 @@ void tst_QQuickMenu::subMenuKeyboard() QFETCH(bool, mirrored); QQuickApplicationHelper helper(this, QLatin1String("subMenus.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; centerOnScreen(window); moveMouseAway(window); @@ -1322,6 +1345,7 @@ void tst_QQuickMenu::subMenuDisabledKeyboard() QFETCH(bool, mirrored); QQuickApplicationHelper helper(this, QLatin1String("subMenuDisabled.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; centerOnScreen(window); moveMouseAway(window); @@ -1372,6 +1396,12 @@ void tst_QQuickMenu::subMenuDisabledKeyboard() QVERIFY(!subMenu->isVisible()); } +/* + QCOMPARE() compares doubles with 1-in-1e12 precision, which is too fine for these tests. + Casting to floats, compared with 1-in-1e5 precision, gives more robust results. +*/ +#define FLOAT_EQ(u, v) QCOMPARE(float(u), float(v)) + void tst_QQuickMenu::subMenuPosition_data() { QTest::addColumn<bool>("cascade"); @@ -1398,6 +1428,7 @@ void tst_QQuickMenu::subMenuPosition() QFETCH(qreal, overlap); QQuickApplicationHelper helper(this, QLatin1String("subMenus.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; // Ensure that the default size of the window fits three menus side by side. @@ -1471,19 +1502,20 @@ void tst_QQuickMenu::subMenuPosition() if (cascade) { QCOMPARE(subMenu1->parentItem(), subMenu1Item); // vertically aligned to the parent menu item - QCOMPARE(subMenu1->popupItem()->y(), mainMenu->popupItem()->y() + subMenu1Item->y()); + // We cast to float here because we want to use its larger tolerance for equality (because it has less precision than double). + FLOAT_EQ(subMenu1->popupItem()->y(), mainMenu->popupItem()->y() + subMenu1Item->y()); if (mirrored) { // on the left of the parent menu - QCOMPARE(subMenu1->popupItem()->x(), mainMenu->popupItem()->x() - subMenu1->width() + overlap); + FLOAT_EQ(subMenu1->popupItem()->x(), mainMenu->popupItem()->x() - subMenu1->width() + overlap); } else { // on the right of the parent menu - QCOMPARE(subMenu1->popupItem()->x(), mainMenu->popupItem()->x() + mainMenu->width() - overlap); + FLOAT_EQ(subMenu1->popupItem()->x(), mainMenu->popupItem()->x() + mainMenu->width() - overlap); } } else { QCOMPARE(subMenu1->parentItem(), mainMenu->parentItem()); // centered over the parent menu - QCOMPARE(subMenu1->popupItem()->x(), mainMenu->popupItem()->x() + (mainMenu->width() - subMenu1->width()) / 2); - QCOMPARE(subMenu1->popupItem()->y(), mainMenu->popupItem()->y() + (mainMenu->height() - subMenu1->height()) / 2); + FLOAT_EQ(subMenu1->popupItem()->x(), mainMenu->popupItem()->x() + (mainMenu->width() - subMenu1->width()) / 2); + FLOAT_EQ(subMenu1->popupItem()->y(), mainMenu->popupItem()->y() + (mainMenu->height() - subMenu1->height()) / 2); } // open the sub-sub-menu (can flip) @@ -1500,25 +1532,28 @@ void tst_QQuickMenu::subMenuPosition() if (cascade) { QCOMPARE(subSubMenu1->parentItem(), subSubMenu1Item); // vertically aligned to the parent menu item - QCOMPARE(subSubMenu1->popupItem()->y(), subMenu1->popupItem()->y() + subSubMenu1Item->y()); + FLOAT_EQ(subSubMenu1->popupItem()->y(), subMenu1->popupItem()->y() + subSubMenu1Item->y()); if (mirrored != flip) { // on the left of the parent menu - QCOMPARE(subSubMenu1->popupItem()->x(), subMenu1->popupItem()->x() - subSubMenu1->width() + overlap); + FLOAT_EQ(subSubMenu1->popupItem()->x(), subMenu1->popupItem()->x() - subSubMenu1->width() + overlap); } else { // on the right of the parent menu - QCOMPARE(subSubMenu1->popupItem()->x(), subMenu1->popupItem()->x() + subMenu1->width() - overlap); + FLOAT_EQ(subSubMenu1->popupItem()->x(), subMenu1->popupItem()->x() + subMenu1->width() - overlap); } } else { QCOMPARE(subSubMenu1->parentItem(), subMenu1->parentItem()); // centered over the parent menu - QCOMPARE(subSubMenu1->popupItem()->x(), subMenu1->popupItem()->x() + (subMenu1->width() - subSubMenu1->width()) / 2); - QCOMPARE(subSubMenu1->popupItem()->y(), subMenu1->popupItem()->y() + (subMenu1->height() - subSubMenu1->height()) / 2); + FLOAT_EQ(subSubMenu1->popupItem()->x(), subMenu1->popupItem()->x() + (subMenu1->width() - subSubMenu1->width()) / 2); + FLOAT_EQ(subSubMenu1->popupItem()->y(), subMenu1->popupItem()->y() + (subMenu1->height() - subSubMenu1->height()) / 2); } } +#undef FLOAT_EQ + void tst_QQuickMenu::addRemoveSubMenus() { QQuickApplicationHelper helper(this, QLatin1String("subMenus.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); QVERIFY(QTest::qWaitForWindowActive(window)); @@ -1590,6 +1625,7 @@ void tst_QQuickMenu::scrollable() QFETCH(QString, qmlFilePath); QQuickApplicationHelper helper(this, qmlFilePath); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); QVERIFY(QTest::qWaitForWindowActive(window)); @@ -1629,6 +1665,7 @@ void tst_QQuickMenu::disableWhenTriggered() QFETCH(int, subMenuItemIndex); QQuickApplicationHelper helper(this, QLatin1String("disableWhenTriggered.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); QVERIFY(QTest::qWaitForWindowActive(window)); @@ -1684,6 +1721,7 @@ void tst_QQuickMenu::menuItemWidth() QFETCH(bool, mirrored); QQuickApplicationHelper helper(this, QLatin1String("menuItemWidths.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; window->show(); QVERIFY(QTest::qWaitForWindowActive(window)); @@ -1712,6 +1750,7 @@ void tst_QQuickMenu::menuItemWidthAfterMenuWidthChanged() QFETCH(bool, mirrored); QQuickApplicationHelper helper(this, QLatin1String("menuItemWidths.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; window->show(); QVERIFY(QTest::qWaitForWindowActive(window)); @@ -1756,6 +1795,7 @@ void tst_QQuickMenu::menuItemWidthAfterImplicitWidthChanged() QFETCH(bool, mirrored); QQuickApplicationHelper helper(this, QLatin1String("menuItemWidths.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; window->show(); QVERIFY(QTest::qWaitForWindowActive(window)); @@ -1786,6 +1826,7 @@ void tst_QQuickMenu::menuItemWidthAfterImplicitWidthChanged() void tst_QQuickMenu::menuItemWidthAfterRetranslate() { QQuickApplicationHelper helper(this, QLatin1String("menuItemWidths.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; window->show(); QVERIFY(QTest::qWaitForWindowActive(window)); diff --git a/tests/auto/qquickmenubar/CMakeLists.txt b/tests/auto/qquickmenubar/CMakeLists.txt index 0803b4ec..72660ceb 100644 --- a/tests/auto/qquickmenubar/CMakeLists.txt +++ b/tests/auto/qquickmenubar/CMakeLists.txt @@ -24,6 +24,7 @@ qt_add_test(tst_qquickmenubar Qt::GuiPrivate Qt::QmlPrivate Qt::QuickControls2 + Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private Qt::TestPrivate diff --git a/tests/auto/qquickmenubar/data/checkHighlightWhenDismissed.qml b/tests/auto/qquickmenubar/data/checkHighlightWhenDismissed.qml index 072fa6b1..14ee692e 100644 --- a/tests/auto/qquickmenubar/data/checkHighlightWhenDismissed.qml +++ b/tests/auto/qquickmenubar/data/checkHighlightWhenDismissed.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.13 -import QtQuick.Controls 2.13 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 300 diff --git a/tests/auto/qquickmenubar/data/delegateFromSeparateComponent.qml b/tests/auto/qquickmenubar/data/delegateFromSeparateComponent.qml index 82321bca..76015190 100644 --- a/tests/auto/qquickmenubar/data/delegateFromSeparateComponent.qml +++ b/tests/auto/qquickmenubar/data/delegateFromSeparateComponent.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 800 diff --git a/tests/auto/qquickmenubar/data/empty.qml b/tests/auto/qquickmenubar/data/empty.qml index 87a3d73d..6cb3c922 100644 --- a/tests/auto/qquickmenubar/data/empty.qml +++ b/tests/auto/qquickmenubar/data/empty.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls MenuBar { } diff --git a/tests/auto/qquickmenubar/data/menubar.qml b/tests/auto/qquickmenubar/data/menubar.qml index 1ef83a6f..fcfe6c52 100644 --- a/tests/auto/qquickmenubar/data/menubar.qml +++ b/tests/auto/qquickmenubar/data/menubar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickninepatchimage/CMakeLists.txt b/tests/auto/qquickninepatchimage/CMakeLists.txt index 23c2adb2..4372cbce 100644 --- a/tests/auto/qquickninepatchimage/CMakeLists.txt +++ b/tests/auto/qquickninepatchimage/CMakeLists.txt @@ -34,6 +34,7 @@ qt_add_test(tst_qquickninepatchimage Qt::QmlPrivate Qt::Quick Qt::QuickControls2 + Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private Qt::TestPrivate diff --git a/tests/auto/qquickninepatchimage/data/ninepatchimage.qml b/tests/auto/qquickninepatchimage/data/ninepatchimage.qml index 4b9ac278..410a61f9 100644 --- a/tests/auto/qquickninepatchimage/data/ninepatchimage.qml +++ b/tests/auto/qquickninepatchimage/data/ninepatchimage.qml @@ -1,7 +1,7 @@ -import QtQuick.Controls 2.12 -import QtQuick.Controls.impl 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Imagine.impl 2.12 +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Controls.Imagine +import QtQuick.Controls.Imagine.impl NinePatchImage { } diff --git a/tests/auto/qquickpopup/CMakeLists.txt b/tests/auto/qquickpopup/CMakeLists.txt index beb744a7..43d6d778 100644 --- a/tests/auto/qquickpopup/CMakeLists.txt +++ b/tests/auto/qquickpopup/CMakeLists.txt @@ -24,6 +24,7 @@ qt_add_test(tst_qquickpopup Qt::GuiPrivate Qt::QmlPrivate Qt::QuickControls2 + Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private Qt::TestPrivate diff --git a/tests/auto/qquickpopup/data/activeFocusOnClose1.qml b/tests/auto/qquickpopup/data/activeFocusOnClose1.qml index ed9b65e1..9a76ebea 100644 --- a/tests/auto/qquickpopup/data/activeFocusOnClose1.qml +++ b/tests/auto/qquickpopup/data/activeFocusOnClose1.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickpopup/data/activeFocusOnClose2.qml b/tests/auto/qquickpopup/data/activeFocusOnClose2.qml index d089fbbb..6d004b17 100644 --- a/tests/auto/qquickpopup/data/activeFocusOnClose2.qml +++ b/tests/auto/qquickpopup/data/activeFocusOnClose2.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickpopup/data/activeFocusOnClose3.qml b/tests/auto/qquickpopup/data/activeFocusOnClose3.qml index 20bd7941..8a682468 100644 --- a/tests/auto/qquickpopup/data/activeFocusOnClose3.qml +++ b/tests/auto/qquickpopup/data/activeFocusOnClose3.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickpopup/data/activeFocusOnClosingSeveralPopups.qml b/tests/auto/qquickpopup/data/activeFocusOnClosingSeveralPopups.qml index 56cf85b6..adf23637 100644 --- a/tests/auto/qquickpopup/data/activeFocusOnClosingSeveralPopups.qml +++ b/tests/auto/qquickpopup/data/activeFocusOnClosingSeveralPopups.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.13 -import QtQuick.Controls 2.13 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickpopup/data/applicationwindow-hover.qml b/tests/auto/qquickpopup/data/applicationwindow-hover.qml index 7b688147..80b22e6d 100644 --- a/tests/auto/qquickpopup/data/applicationwindow-hover.qml +++ b/tests/auto/qquickpopup/data/applicationwindow-hover.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickpopup/data/applicationwindow-wheel.qml b/tests/auto/qquickpopup/data/applicationwindow-wheel.qml index de27d7ec..8d3f7f95 100644 --- a/tests/auto/qquickpopup/data/applicationwindow-wheel.qml +++ b/tests/auto/qquickpopup/data/applicationwindow-wheel.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.2 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/auto/qquickpopup/data/applicationwindow.qml b/tests/auto/qquickpopup/data/applicationwindow.qml index 3ce8a718..7a298d96 100644 --- a/tests/auto/qquickpopup/data/applicationwindow.qml +++ b/tests/auto/qquickpopup/data/applicationwindow.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickpopup/data/centerInOverlayWithinStackViewItem.qml b/tests/auto/qquickpopup/data/centerInOverlayWithinStackViewItem.qml new file mode 100644 index 00000000..aa25863a --- /dev/null +++ b/tests/auto/qquickpopup/data/centerInOverlayWithinStackViewItem.qml @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** BSD License Usage +** Alternatively, you may use this file under the terms of the BSD license +** as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of The Qt Company Ltd nor the names of its +** contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import QtQuick +import QtQuick.Controls + +ApplicationWindow { + width: 400 + height: 400 + + property Popup popup: stackView.currentItem.popup + + StackView { + id: stackView + objectName: "stackView" + anchors.fill: parent + + initialItem: Rectangle { + objectName: "rectangle" + + property alias popup: popup + + Popup { + id: popup + objectName: "popup" + width: 100 + height: 100 + visible: true + anchors.centerIn: Overlay.overlay + } + } + } +} diff --git a/tests/auto/qquickpopup/data/closeOnEscapeWithNestedPopups.qml b/tests/auto/qquickpopup/data/closeOnEscapeWithNestedPopups.qml index 4f18fc13..71ec4e2b 100644 --- a/tests/auto/qquickpopup/data/closeOnEscapeWithNestedPopups.qml +++ b/tests/auto/qquickpopup/data/closeOnEscapeWithNestedPopups.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickpopup/data/closeOnEscapeWithVisiblePopup.qml b/tests/auto/qquickpopup/data/closeOnEscapeWithVisiblePopup.qml index b9606eb2..b65e4ec0 100644 --- a/tests/auto/qquickpopup/data/closeOnEscapeWithVisiblePopup.qml +++ b/tests/auto/qquickpopup/data/closeOnEscapeWithVisiblePopup.qml @@ -1,6 +1,6 @@ -import QtQuick 2.13 -import QtQuick.Window 2.13 -import QtQuick.Controls 2.13 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: 400 diff --git a/tests/auto/qquickpopup/data/countChanged.qml b/tests/auto/qquickpopup/data/countChanged.qml index ee5876d7..fd594332 100644 --- a/tests/auto/qquickpopup/data/countChanged.qml +++ b/tests/auto/qquickpopup/data/countChanged.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: 640 diff --git a/tests/auto/qquickpopup/data/cursor.qml b/tests/auto/qquickpopup/data/cursor.qml index 4391f7a0..e2a6e38e 100644 --- a/tests/auto/qquickpopup/data/cursor.qml +++ b/tests/auto/qquickpopup/data/cursor.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickpopup/data/dialog.qml b/tests/auto/qquickpopup/data/dialog.qml index ee1b6bde..75c0e1c6 100644 --- a/tests/auto/qquickpopup/data/dialog.qml +++ b/tests/auto/qquickpopup/data/dialog.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.2 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Item { width: 400 diff --git a/tests/auto/qquickpopup/data/disabledPalette.qml b/tests/auto/qquickpopup/data/disabledPalette.qml index f080f5e8..f1608aae 100644 --- a/tests/auto/qquickpopup/data/disabledPalette.qml +++ b/tests/auto/qquickpopup/data/disabledPalette.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickpopup/data/grabber.qml b/tests/auto/qquickpopup/data/grabber.qml index 6a6d6d65..507cc3b5 100644 --- a/tests/auto/qquickpopup/data/grabber.qml +++ b/tests/auto/qquickpopup/data/grabber.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickpopup/data/invisibleToolTipOpen.qml b/tests/auto/qquickpopup/data/invisibleToolTipOpen.qml index 2e58bb97..aaed154b 100644 --- a/tests/auto/qquickpopup/data/invisibleToolTipOpen.qml +++ b/tests/auto/qquickpopup/data/invisibleToolTipOpen.qml @@ -1,6 +1,6 @@ -import QtQuick 2.13 -import QtQuick.Window 2.13 -import QtQuick.Controls 2.13 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: 400 diff --git a/tests/auto/qquickpopup/data/nested.qml b/tests/auto/qquickpopup/data/nested.qml index 4ebdfb0c..03269cd1 100644 --- a/tests/auto/qquickpopup/data/nested.qml +++ b/tests/auto/qquickpopup/data/nested.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickpopup/data/orientation.qml b/tests/auto/qquickpopup/data/orientation.qml index a1cc9c0e..9730a9e1 100644 --- a/tests/auto/qquickpopup/data/orientation.qml +++ b/tests/auto/qquickpopup/data/orientation.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.2 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: 600 diff --git a/tests/auto/qquickpopup/data/tabFence.qml b/tests/auto/qquickpopup/data/tabFence.qml index 2cf408e9..ce5b5417 100644 --- a/tests/auto/qquickpopup/data/tabFence.qml +++ b/tests/auto/qquickpopup/data/tabFence.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Layouts 1.15 -import QtQuick.Window 2.15 -import QtQuick.Controls 2.15 +import QtQuick +import QtQuick.Layouts +import QtQuick.Window +import QtQuick.Controls ApplicationWindow { width: 400 diff --git a/tests/auto/qquickpopup/data/toolTipCrashOnClose.qml b/tests/auto/qquickpopup/data/toolTipCrashOnClose.qml index 8de14f4c..33452182 100644 --- a/tests/auto/qquickpopup/data/toolTipCrashOnClose.qml +++ b/tests/auto/qquickpopup/data/toolTipCrashOnClose.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.13 -import QtQuick.Window 2.13 -import QtQuick.Controls 2.13 -import QtGraphicalEffects 1.13 +import QtQuick +import QtQuick.Window +import QtQuick.Controls +import QtGraphicalEffects Window { width: 640 diff --git a/tests/auto/qquickpopup/data/window-hover.qml b/tests/auto/qquickpopup/data/window-hover.qml index 0bf00660..e0eef302 100644 --- a/tests/auto/qquickpopup/data/window-hover.qml +++ b/tests/auto/qquickpopup/data/window-hover.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.2 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: 400 diff --git a/tests/auto/qquickpopup/data/window-wheel.qml b/tests/auto/qquickpopup/data/window-wheel.qml index 37edee95..e476a1eb 100644 --- a/tests/auto/qquickpopup/data/window-wheel.qml +++ b/tests/auto/qquickpopup/data/window-wheel.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.2 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { id: window diff --git a/tests/auto/qquickpopup/data/window.qml b/tests/auto/qquickpopup/data/window.qml index 0e15e838..f6b76b7e 100644 --- a/tests/auto/qquickpopup/data/window.qml +++ b/tests/auto/qquickpopup/data/window.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.2 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: 400 diff --git a/tests/auto/qquickpopup/tst_qquickpopup.cpp b/tests/auto/qquickpopup/tst_qquickpopup.cpp index 162a48ba..714dad78 100644 --- a/tests/auto/qquickpopup/tst_qquickpopup.cpp +++ b/tests/auto/qquickpopup/tst_qquickpopup.cpp @@ -99,6 +99,7 @@ private slots: void setOverlayParentToNull(); void tabFence(); void invisibleToolTipOpen(); + void centerInOverlayWithinStackViewItem(); }; void tst_QQuickPopup::initTestCase() @@ -118,6 +119,7 @@ void tst_QQuickPopup::visible() { QFETCH(QString, source); QQuickApplicationHelper helper(this, source); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); @@ -151,6 +153,7 @@ void tst_QQuickPopup::visible() void tst_QQuickPopup::state() { QQuickApplicationHelper helper(this, "applicationwindow.qml"); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); @@ -212,6 +215,7 @@ void tst_QQuickPopup::overlay() QFETCH(bool, dim); QQuickApplicationHelper helper(this, source); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); @@ -300,18 +304,7 @@ void tst_QQuickPopup::overlay() QVERIFY(popup->isVisible()); QVERIFY(overlay->isVisible()); - struct TouchDeviceDeleter - { - static inline void cleanup(QTouchDevice *device) - { - QWindowSystemInterface::unregisterTouchDevice(device); - delete device; - } - }; - - QScopedPointer<QTouchDevice, TouchDeviceDeleter> device(new QTouchDevice); - device->setType(QTouchDevice::TouchScreen); - QWindowSystemInterface::registerTouchDevice(device.data()); + QScopedPointer<QPointingDevice> device(QTest::createTouchDevice()); QTest::touchEvent(window, device.data()).press(0, QPoint(1, 1)); QCOMPARE(overlayPressedSignal.count(), ++overlayPressCount); @@ -374,6 +367,7 @@ void tst_QQuickPopup::zOrder() { QFETCH(QString, source); QQuickApplicationHelper helper(this, source); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); @@ -483,6 +477,7 @@ void tst_QQuickPopup::closePolicy() QFETCH(QQuickPopup::ClosePolicy, closePolicy); QQuickApplicationHelper helper(this, source); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); @@ -567,6 +562,7 @@ void tst_QQuickPopup::activeFocusOnClose1() // Test that a popup that never sets focus: true (e.g. ToolTip) doesn't affect // the active focus item when it closes. QQuickApplicationHelper helper(this, QStringLiteral("activeFocusOnClose1.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; window->show(); window->requestActivate(); @@ -610,6 +606,7 @@ void tst_QQuickPopup::activeFocusOnClose2() // calling forceActiveFocus() on another item) before it closes doesn't // affect the active focus item when it closes. QQuickApplicationHelper helper(this, QStringLiteral("activeFocusOnClose2.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; window->show(); window->requestActivate(); @@ -646,6 +643,7 @@ void tst_QQuickPopup::activeFocusOnClose3() // Test that a closing popup that had focus doesn't steal focus from // another popup that the focus was transferred to. QQuickApplicationHelper helper(this, QStringLiteral("activeFocusOnClose3.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; window->show(); window->requestActivate(); @@ -677,6 +675,7 @@ void tst_QQuickPopup::activeFocusOnClosingSeveralPopups() { // Test that active focus isn't lost when multiple popup closing simultaneously QQuickApplicationHelper helper(this, QStringLiteral("activeFocusOnClosingSeveralPopups.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; window->show(); window->requestActivate(); @@ -738,6 +737,7 @@ void tst_QQuickPopup::hover() QFETCH(bool, modal); QQuickApplicationHelper helper(this, source); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); window->requestActivate(); @@ -812,6 +812,7 @@ void tst_QQuickPopup::wheel() QFETCH(bool, modal); QQuickApplicationHelper helper(this, source); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); QVERIFY(QTest::qWaitForWindowExposed(window)); @@ -882,6 +883,7 @@ void tst_QQuickPopup::parentDestroyed() void tst_QQuickPopup::nested() { QQuickApplicationHelper helper(this, QStringLiteral("nested.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); QVERIFY(QTest::qWaitForWindowExposed(window)); @@ -909,6 +911,7 @@ void tst_QQuickPopup::nested() void tst_QQuickPopup::grabber() { QQuickApplicationHelper helper(this, QStringLiteral("grabber.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); QVERIFY(QTest::qWaitForWindowExposed(window)); @@ -961,6 +964,7 @@ void tst_QQuickPopup::cursorShape() // Ensure that the mouse cursor has the correct shape when over a popup // which is itself over an item with a different shape. QQuickApplicationHelper helper(this, QStringLiteral("cursor.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; centerOnScreen(window); moveMouseAway(window); @@ -1018,6 +1022,7 @@ void tst_QQuickPopup::closeOnEscapeWithNestedPopups() // Tests the scenario in the Gallery example, where there are nested popups that should // close in the correct order when the Escape key is pressed. QQuickApplicationHelper helper(this, QStringLiteral("closeOnEscapeWithNestedPopups.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickApplicationWindow *window = helper.appWindow; window->show(); QVERIFY(QTest::qWaitForWindowExposed(window)); @@ -1081,6 +1086,7 @@ void tst_QQuickPopup::closeOnEscapeWithNestedPopups() void tst_QQuickPopup::closeOnEscapeWithVisiblePopup() { QQuickApplicationHelper helper(this, QStringLiteral("closeOnEscapeWithVisiblePopup.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); QVERIFY(QTest::qWaitForWindowActive(window)); @@ -1131,6 +1137,7 @@ void tst_QQuickPopup::orientation() QFETCH(QPointF, position); QQuickApplicationHelper helper(this, "orientation.qml"); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->reportContentOrientationChange(orientation); @@ -1170,6 +1177,7 @@ void tst_QQuickPopup::qquickview() void tst_QQuickPopup::disabledPalette() { QQuickApplicationHelper helper(this, "disabledPalette.qml"); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); @@ -1206,6 +1214,7 @@ void tst_QQuickPopup::disabledPalette() void tst_QQuickPopup::disabledParentPalette() { QQuickApplicationHelper helper(this, "disabledPalette.qml"); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); @@ -1251,6 +1260,7 @@ void tst_QQuickPopup::disabledParentPalette() void tst_QQuickPopup::countChanged() { QQuickApplicationHelper helper(this, "countChanged.qml"); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); @@ -1273,6 +1283,7 @@ void tst_QQuickPopup::toolTipCrashOnClose() QSKIP("Test requires QtGraphicalEffects"); QQuickApplicationHelper helper(this, "toolTipCrashOnClose.qml"); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); @@ -1293,8 +1304,11 @@ void tst_QQuickPopup::setOverlayParentToNull() QSKIP("Test requires QtGraphicalEffects"); QQuickApplicationHelper helper(this, "toolTipCrashOnClose.qml"); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; + centerOnScreen(window); + moveMouseAway(window); window->show(); QVERIFY(QTest::qWaitForWindowActive(window)); @@ -1313,6 +1327,7 @@ void tst_QQuickPopup::tabFence() QSKIP("This platform only allows tab focus for text controls"); QQuickApplicationHelper helper(this, "tabFence.qml"); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; window->show(); @@ -1366,6 +1381,7 @@ void tst_QQuickPopup::tabFence() void tst_QQuickPopup::invisibleToolTipOpen() { QQuickApplicationHelper helper(this, "invisibleToolTipOpen.qml"); + QVERIFY2(helper.ready, helper.failureMessage()); QQuickWindow *window = helper.window; centerOnScreen(window); @@ -1390,6 +1406,22 @@ void tst_QQuickPopup::invisibleToolTipOpen() QTRY_VERIFY(mouseArea->property("isToolTipVisible").toBool()); } +void tst_QQuickPopup::centerInOverlayWithinStackViewItem() +{ + QQuickApplicationHelper helper(this, "centerInOverlayWithinStackViewItem.qml"); + QVERIFY2(helper.ready, helper.failureMessage()); + + QQuickWindow *window = helper.window; + window->show(); + QVERIFY(QTest::qWaitForWindowExposed(window)); + + QQuickPopup *popup = window->property("popup").value<QQuickPopup*>(); + QVERIFY(popup); + QTRY_COMPARE(popup->isVisible(), true); + + // Shouldn't crash on exit. +} + QTEST_QUICKCONTROLS_MAIN(tst_QQuickPopup) #include "tst_qquickpopup.moc" diff --git a/tests/auto/qquickstyle/CMakeLists.txt b/tests/auto/qquickstyle/CMakeLists.txt index 94aa7249..71e58cca 100644 --- a/tests/auto/qquickstyle/CMakeLists.txt +++ b/tests/auto/qquickstyle/CMakeLists.txt @@ -28,74 +28,29 @@ qt_add_test(tst_qquickstyle Qt::GuiPrivate Qt::QmlPrivate Qt::QuickControls2 + Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private Qt::TestPrivate TESTDATA ${test_data} ) -file(GLOB resource_glob_0 RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "qrcStyles1/QrcStyle1/*.qml") -foreach(file IN LISTS resource_glob_0) - set_source_files_properties("${CMAKE_CURRENT_SOURCE_DIR}/${file}" PROPERTIES QT_RESOURCE_ALIAS "${file}") -endforeach() - -file(GLOB resource_glob_1 RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "qrcStyles2/QrcStyle2/*.qml") -foreach(file IN LISTS resource_glob_1) - set_source_files_properties("${CMAKE_CURRENT_SOURCE_DIR}/${file}" PROPERTIES QT_RESOURCE_ALIAS "${file}") -endforeach() - -file(GLOB resource_glob_2 RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "qrcStyles3/QrcStyle3/*.qml") -foreach(file IN LISTS resource_glob_2) - set_source_files_properties("${CMAKE_CURRENT_SOURCE_DIR}/${file}" PROPERTIES QT_RESOURCE_ALIAS "${file}") -endforeach() - -file(GLOB resource_glob_3 RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "qrcStyles4/QrcStyle4/*.qml") -foreach(file IN LISTS resource_glob_3) - set_source_files_properties("${CMAKE_CURRENT_SOURCE_DIR}/${file}" PROPERTIES QT_RESOURCE_ALIAS "${file}") -endforeach() - # Resources: -set(qmake_qrcStyles1_resource_files - ${resource_glob_0} -) - -qt_add_resource(tst_qquickstyle "qmake_qrcStyles1" - PREFIX - "/" - FILES - ${qmake_qrcStyles1_resource_files} -) -set(qmake_qrcStyles2_resource_files - ${resource_glob_1} +set(qmake_custom_resource_files + "data/Custom/Label.qml" + "data/Custom/qmldir" ) -qt_add_resource(tst_qquickstyle "qmake_qrcStyles2" +qt_add_resource(tst_qquickstyle "qmake_custom" PREFIX "/" FILES - ${qmake_qrcStyles2_resource_files} -) -set(qmake_qrcStyles3_resource_files - ${resource_glob_2} + ${qmake_custom_resource_files} ) -qt_add_resource(tst_qquickstyle "qmake_qrcStyles3" - PREFIX - "/" - FILES - ${qmake_qrcStyles3_resource_files} -) -set(qmake_qrcStyles4_resource_files - ${resource_glob_3} -) - -qt_add_resource(tst_qquickstyle "qmake_qrcStyles4" - PREFIX - "/" - FILES - ${qmake_qrcStyles4_resource_files} -) +#### Keys ignored in scope 1:.:.:qquickstyle.pro:<TRUE>: +# OTHER_FILES = "data/CmdLineArgStyle/Control.qml" "data/CmdLineArgStyle/qmldir" "data/EnvVarStyle/Control.qml" "data/EnvVarStyle/qmldir" "data/EnvVarFallbackStyle/Control.qml" "data/EnvVarFallbackStyle/qmldir" ## Scopes: ##################################################################### diff --git a/tests/auto/qquickstyle/data/CmdLineArgStyle/Control.qml b/tests/auto/qquickstyle/data/CmdLineArgStyle/Control.qml new file mode 100644 index 00000000..744dcd8f --- /dev/null +++ b/tests/auto/qquickstyle/data/CmdLineArgStyle/Control.qml @@ -0,0 +1,2 @@ +import QtQuick.Templates as T +T.Label {} diff --git a/tests/auto/qquickstyle/data/CmdLineArgStyle/qmldir b/tests/auto/qquickstyle/data/CmdLineArgStyle/qmldir new file mode 100644 index 00000000..c2cc85c2 --- /dev/null +++ b/tests/auto/qquickstyle/data/CmdLineArgStyle/qmldir @@ -0,0 +1,2 @@ +module CmdLineArgStyle +Control 1.0 Control.qml diff --git a/tests/auto/qquickstyle/data/Custom/Label.qml b/tests/auto/qquickstyle/data/Custom/Label.qml new file mode 100644 index 00000000..744dcd8f --- /dev/null +++ b/tests/auto/qquickstyle/data/Custom/Label.qml @@ -0,0 +1,2 @@ +import QtQuick.Templates as T +T.Label {} diff --git a/tests/auto/qquickstyle/data/Custom/qmldir b/tests/auto/qquickstyle/data/Custom/qmldir new file mode 100644 index 00000000..08de6fa8 --- /dev/null +++ b/tests/auto/qquickstyle/data/Custom/qmldir @@ -0,0 +1,2 @@ +module Custom +Label 1.0 Label.qml diff --git a/tests/auto/qquickstyle/data/EnvVarFallbackStyle/Control.qml b/tests/auto/qquickstyle/data/EnvVarFallbackStyle/Control.qml new file mode 100644 index 00000000..744dcd8f --- /dev/null +++ b/tests/auto/qquickstyle/data/EnvVarFallbackStyle/Control.qml @@ -0,0 +1,2 @@ +import QtQuick.Templates as T +T.Label {} diff --git a/tests/auto/qquickstyle/data/EnvVarFallbackStyle/qmldir b/tests/auto/qquickstyle/data/EnvVarFallbackStyle/qmldir new file mode 100644 index 00000000..bebd8e07 --- /dev/null +++ b/tests/auto/qquickstyle/data/EnvVarFallbackStyle/qmldir @@ -0,0 +1,2 @@ +module EnvVarFallbackStyle +Control 1.0 Control.qml diff --git a/tests/auto/qquickstyle/data/EnvVarStyle/Control.qml b/tests/auto/qquickstyle/data/EnvVarStyle/Control.qml new file mode 100644 index 00000000..744dcd8f --- /dev/null +++ b/tests/auto/qquickstyle/data/EnvVarStyle/Control.qml @@ -0,0 +1,2 @@ +import QtQuick.Templates as T +T.Label {} diff --git a/tests/auto/qquickstyle/data/EnvVarStyle/qmldir b/tests/auto/qquickstyle/data/EnvVarStyle/qmldir new file mode 100644 index 00000000..42223a19 --- /dev/null +++ b/tests/auto/qquickstyle/data/EnvVarStyle/qmldir @@ -0,0 +1,2 @@ +module EnvVarStyle +Control 1.0 Control.qml diff --git a/tests/auto/qquickstyle/data/custom.conf b/tests/auto/qquickstyle/data/custom.conf index 2230b452..ac79338c 100644 --- a/tests/auto/qquickstyle/data/custom.conf +++ b/tests/auto/qquickstyle/data/custom.conf @@ -1,5 +1,5 @@ [Controls] -Style=:/Custom +Style=Custom [Custom] Font\PixelSize=3 diff --git a/tests/auto/qquickstyle/data/dependencies.qml b/tests/auto/qquickstyle/data/dependencies.qml index dac5f935..280cfd29 100644 --- a/tests/auto/qquickstyle/data/dependencies.qml +++ b/tests/auto/qquickstyle/data/dependencies.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Control { } diff --git a/tests/auto/qquickstyle/data/designer/ButtonSpecifics.qml b/tests/auto/qquickstyle/data/designer/ButtonSpecifics.qml index 9faaa8b7..21226ed2 100644 --- a/tests/auto/qquickstyle/data/designer/ButtonSpecifics.qml +++ b/tests/auto/qquickstyle/data/designer/ButtonSpecifics.qml @@ -1,3 +1,3 @@ -import HelperWidgets 2.0 +import HelperWidgets ButtonSection { } diff --git a/tests/auto/qquickstyle/data/dummyStyles/DummyStyle/Button.qml b/tests/auto/qquickstyle/data/dummyStyles/DummyStyle/Button.qml index eaeeadcd..dcacc011 100644 --- a/tests/auto/qquickstyle/data/dummyStyles/DummyStyle/Button.qml +++ b/tests/auto/qquickstyle/data/dummyStyles/DummyStyle/Button.qml @@ -1,2 +1,2 @@ -import QtQuick.Templates 2.12 as T +import QtQuick.Templates as T T.Button { } diff --git a/tests/auto/qquickstyle/qquickstyle.pro b/tests/auto/qquickstyle/qquickstyle.pro index ef1dd2e0..eed434b5 100644 --- a/tests/auto/qquickstyle/qquickstyle.pro +++ b/tests/auto/qquickstyle/qquickstyle.pro @@ -11,18 +11,16 @@ include (../shared/util.pri) TESTDATA = $$PWD/data/* -qrcStyles1.files = $$files(qrcStyles1/QrcStyle1/*.qml) -qrcStyles1.prefix = / -RESOURCES += qrcStyles1 - -qrcStyles2.files = $$files(qrcStyles2/QrcStyle2/*.qml) -qrcStyles2.prefix = / -RESOURCES += qrcStyles2 - -qrcStyles3.files = $$files(qrcStyles3/QrcStyle3/*.qml) -qrcStyles3.prefix = / -RESOURCES += qrcStyles3 - -qrcStyles4.files = $$files(qrcStyles4/QrcStyle4/*.qml) -qrcStyles4.prefix = / -RESOURCES += qrcStyles4 +OTHER_FILES += \ + data/CmdLineArgStyle/Control.qml \ + data/CmdLineArgStyle/qmldir \ + data/EnvVarStyle/Control.qml \ + data/EnvVarStyle/qmldir \ + data/EnvVarFallbackStyle/Control.qml \ + data/EnvVarFallbackStyle/qmldir + +custom.files = \ + data/Custom/Label.qml \ + data/Custom/qmldir +custom.prefix = / +RESOURCES += custom diff --git a/tests/auto/qquickstyle/qrcStyles1/QrcStyle1/Button.qml b/tests/auto/qquickstyle/qrcStyles1/QrcStyle1/Button.qml deleted file mode 100644 index eaeeadcd..00000000 --- a/tests/auto/qquickstyle/qrcStyles1/QrcStyle1/Button.qml +++ /dev/null @@ -1,2 +0,0 @@ -import QtQuick.Templates 2.12 as T -T.Button { } diff --git a/tests/auto/qquickstyle/qrcStyles2/QrcStyle2/Button.qml b/tests/auto/qquickstyle/qrcStyles2/QrcStyle2/Button.qml deleted file mode 100644 index eaeeadcd..00000000 --- a/tests/auto/qquickstyle/qrcStyles2/QrcStyle2/Button.qml +++ /dev/null @@ -1,2 +0,0 @@ -import QtQuick.Templates 2.12 as T -T.Button { } diff --git a/tests/auto/qquickstyle/qrcStyles3/QrcStyle3/Button.qml b/tests/auto/qquickstyle/qrcStyles3/QrcStyle3/Button.qml deleted file mode 100644 index eaeeadcd..00000000 --- a/tests/auto/qquickstyle/qrcStyles3/QrcStyle3/Button.qml +++ /dev/null @@ -1,2 +0,0 @@ -import QtQuick.Templates 2.12 as T -T.Button { } diff --git a/tests/auto/qquickstyle/qrcStyles4/QrcStyle4/Button.qml b/tests/auto/qquickstyle/qrcStyles4/QrcStyle4/Button.qml deleted file mode 100644 index eaeeadcd..00000000 --- a/tests/auto/qquickstyle/qrcStyles4/QrcStyle4/Button.qml +++ /dev/null @@ -1,2 +0,0 @@ -import QtQuick.Templates 2.12 as T -T.Button { } diff --git a/tests/auto/qquickstyle/tst_qquickstyle.cpp b/tests/auto/qquickstyle/tst_qquickstyle.cpp index 48cc88b7..e675d335 100644 --- a/tests/auto/qquickstyle/tst_qquickstyle.cpp +++ b/tests/auto/qquickstyle/tst_qquickstyle.cpp @@ -57,11 +57,6 @@ private slots: void configurationFile(); void commandLineArgument(); void environmentVariables(); - void availableStyles(); - void qrcStylePaths_data(); - void qrcStylePaths(); - void qrcInQtQuickControlsStylePathEnvVar_data(); - void qrcInQtQuickControlsStylePathEnvVar(); private: void loadControls(); @@ -74,7 +69,6 @@ void tst_QQuickStyle::cleanup() QGuiApplicationPrivate::styleOverride.clear(); qunsetenv("QT_QUICK_CONTROLS_STYLE"); - qunsetenv("QT_QUICK_CONTROLS_STYLE_PATH"); qunsetenv("QT_QUICK_CONTROLS_FALLBACK_STYLE"); qunsetenv("QT_QUICK_CONTROLS_CONF"); } @@ -82,6 +76,7 @@ void tst_QQuickStyle::cleanup() void tst_QQuickStyle::loadControls() { QQmlEngine engine; + engine.addImportPath(dataDirectory()); QQmlComponent component(&engine); component.setData("import QtQuick 2.0; import QtQuick.Controls 2.1; Control { }", QUrl()); @@ -97,11 +92,9 @@ void tst_QQuickStyle::unloadControls() void tst_QQuickStyle::lookup() { QVERIFY(QQuickStyle::name().isEmpty()); - QVERIFY(!QQuickStyle::path().isEmpty()); - QQuickStyle::setStyle("material"); + QQuickStyle::setStyle("Material"); QCOMPARE(QQuickStyle::name(), QString("Material")); - QVERIFY(!QQuickStyle::path().isEmpty()); loadControls(); @@ -110,7 +103,6 @@ void tst_QQuickStyle::lookup() QCOMPARE(QQuickTheme::instance()->font(QQuickTheme::TextArea).pixelSize(), 16); QCOMPARE(QQuickStyle::name(), QString("Material")); - QVERIFY(!QQuickStyle::path().isEmpty()); } void tst_QQuickStyle::configurationFile_data() @@ -137,6 +129,7 @@ void tst_QQuickStyle::configurationFile() // Load a control. The import causes the configuration file to be read. QQmlEngine engine; + engine.addImportPath(":/data"); QQmlComponent labelComponent(&engine); labelComponent.setData("import QtQuick 2.0; import QtQuick.Controls 2.12; Label {}", QUrl()); @@ -144,8 +137,6 @@ void tst_QQuickStyle::configurationFile() QVERIFY2(!object.isNull(), qPrintable(labelComponent.errorString())); QCOMPARE(QQuickStyle::name(), expectedStyle); - if (!expectedPath.isEmpty()) - QCOMPARE(QQuickStyle::path(), expectedPath); // Test that fonts and palettes specified in configuration files are respected. QQuickLabel *label = qobject_cast<QQuickLabel *>(object.data()); @@ -169,179 +160,10 @@ void tst_QQuickStyle::environmentVariables() { qputenv("QT_QUICK_CONTROLS_STYLE", "EnvVarStyle"); qputenv("QT_QUICK_CONTROLS_FALLBACK_STYLE", "EnvVarFallbackStyle"); + QTest::ignoreMessage(QtWarningMsg, "QT_QUICK_CONTROLS_FALLBACK_STYLE: the specified fallback style" \ + " \"EnvVarFallbackStyle\" is not one of the built-in Qt Quick Controls 2 styles"); QCOMPARE(QQuickStyle::name(), QString("EnvVarStyle")); - QCOMPARE(QQuickStylePrivate::fallbackStyle(), QString("EnvVarFallbackStyle")); -} - -void tst_QQuickStyle::availableStyles() -{ - QString path = QFINDTESTDATA("data"); - QVERIFY(!path.isEmpty()); - - QQuickStyle::addStylePath(path); - QStringList paths = QQuickStylePrivate::stylePaths(); -#ifndef Q_OS_WIN - QVERIFY(paths.contains(path)); -#else - QVERIFY(paths.contains(path, Qt::CaseInsensitive)); -#endif - - const QStringList styles = QQuickStyle::availableStyles(); - QVERIFY(!styles.isEmpty()); - QCOMPARE(styles.first(), QString("Default")); - QVERIFY(!styles.contains("designer")); - - // QTBUG-60973 - for (const QString &style : styles) { - QVERIFY2(!style.endsWith(".dSYM"), qPrintable(style)); - } -} - -void tst_QQuickStyle::qrcStylePaths_data() -{ - QTest::addColumn<QString>("stylePath"); - QTest::addColumn<QString>("expectedStyleName"); - - QTest::addRow("qrc:/qrcStyles1") << QString::fromLatin1("qrc:/qrcStyles1") << QString::fromLatin1("QrcStyle1"); - QTest::addRow(":/qrcStyles2") << QString::fromLatin1(":/qrcStyles2") << QString::fromLatin1("QrcStyle2"); -} - -void tst_QQuickStyle::qrcStylePaths() -{ - QFETCH(QString, stylePath); - QFETCH(QString, expectedStyleName); - - QQuickStyle::addStylePath(stylePath); - - const QStringList paths = QQuickStylePrivate::stylePaths(); - QString expectedStylePath = stylePath; - if (expectedStylePath.startsWith(QLatin1String("qrc"))) - expectedStylePath.remove(0, 3); - if (!paths.contains(expectedStylePath)) { - QString message; - QDebug stream(&message); - stream.nospace() << "QQuickStylePrivate::stylePaths() doesn't contain " << expectedStylePath << ":\n" << paths; - QFAIL(qPrintable(message)); - } - - const QStringList styles = QQuickStyle::availableStyles(); - QVERIFY(!styles.isEmpty()); - if (!styles.contains(expectedStyleName)) { - QString message; - QDebug stream(&message); - stream.nospace() << "QQuickStyle::availableStyles() doesn't contain " << expectedStyleName << ":\n" << styles; - QFAIL(qPrintable(message)); - } -} - -void tst_QQuickStyle::qrcInQtQuickControlsStylePathEnvVar_data() -{ - QTest::addColumn<QString>("environmentVariable"); - QTest::addColumn<QStringList>("expectedAvailableStyles"); - - const QChar listSeparator = QDir::listSeparator(); - const QStringList defaultAvailableStyles = QQuickStyle::availableStyles(); - - { - QString environmentVariable; - QDebug stream(&environmentVariable); - // We use qrcStyles3 and qrcStyles4 in order to not conflict with - // qrcStylePaths(), since we currently have no way of clearing customStylePaths. - stream.noquote().nospace() << "/some/bogus/path/" << listSeparator - << ":/qrcStyles3"; - - QStringList expectedAvailableStyles = defaultAvailableStyles; - // We need to keep the Default style at the start of the list, - // as that's what availableStyles() does. - expectedAvailableStyles.insert(1, QLatin1String("QrcStyle3")); - - QTest::addRow("%s", qPrintable(environmentVariable)) - << environmentVariable << expectedAvailableStyles; - } - - { - QString environmentVariable; - QDebug stream(&environmentVariable); - stream.noquote().nospace() << ":/qrcStyles4" << listSeparator - << "/some/bogus/path"; - - QStringList expectedAvailableStyles = defaultAvailableStyles; - expectedAvailableStyles.insert(1, QLatin1String("QrcStyle4")); - - QTest::addRow("%s", qPrintable(environmentVariable)) - << environmentVariable << expectedAvailableStyles; - } - - { - QString environmentVariable; - QDebug stream(&environmentVariable); - stream.noquote().nospace() << ":/qrcStyles3" << listSeparator - << ":/qrcStyles4" << listSeparator - << QFINDTESTDATA("data/dummyStyles"); - - QStringList expectedAvailableStyles = defaultAvailableStyles; - expectedAvailableStyles.insert(1, QLatin1String("DummyStyle")); - expectedAvailableStyles.insert(1, QLatin1String("QrcStyle4")); - expectedAvailableStyles.insert(1, QLatin1String("QrcStyle3")); - - QTest::addRow("%s", qPrintable(environmentVariable)) - << environmentVariable << expectedAvailableStyles; - } - - { - QString environmentVariable; - QDebug stream(&environmentVariable); - stream.noquote().nospace() << QFINDTESTDATA("data/dummyStyles") << listSeparator - << ":/qrcStyles3" << listSeparator - << ":/qrcStyles4"; - - QStringList expectedAvailableStyles = defaultAvailableStyles; - expectedAvailableStyles.insert(1, QLatin1String("QrcStyle4")); - expectedAvailableStyles.insert(1, QLatin1String("QrcStyle3")); - expectedAvailableStyles.insert(1, QLatin1String("DummyStyle")); - - QTest::addRow("%s", qPrintable(environmentVariable)) - << environmentVariable << expectedAvailableStyles; - } - - { - QString environmentVariable; - QDebug stream(&environmentVariable); - // Same as the last row, except it adds a superfluous separator - // to ensure that it handles it gracefully rather than failing an assertion. - stream.noquote().nospace() << QFINDTESTDATA("data/dummyStyles") << listSeparator - << ":/qrcStyles3" << listSeparator - << ":/qrcStyles4" << listSeparator; - - QStringList expectedAvailableStyles = defaultAvailableStyles; - expectedAvailableStyles.insert(1, QLatin1String("QrcStyle4")); - expectedAvailableStyles.insert(1, QLatin1String("QrcStyle3")); - expectedAvailableStyles.insert(1, QLatin1String("DummyStyle")); - - QTest::addRow("%s", qPrintable(environmentVariable)) - << environmentVariable << expectedAvailableStyles; - } -} - -/* - Tests that qrc paths work with QT_QUICK_CONTROLS_STYLE_PATH. -*/ -void tst_QQuickStyle::qrcInQtQuickControlsStylePathEnvVar() -{ - QFETCH(QString, environmentVariable); - QFETCH(QStringList, expectedAvailableStyles); - - qputenv("QT_QUICK_CONTROLS_STYLE_PATH", environmentVariable.toLocal8Bit()); - - const QStringList availableStyles = QQuickStyle::availableStyles(); - if (availableStyles != expectedAvailableStyles) { - QString failureMessage; - QDebug stream(&failureMessage); - stream << "Mismatch in actual vs expected available styles:" - << "\n Expected:" << expectedAvailableStyles - << "\n Actual:" << availableStyles; - QFAIL(qPrintable(failureMessage)); - } + QCOMPARE(QQuickStylePrivate::fallbackStyle(), QString()); } QTEST_MAIN(tst_QQuickStyle) diff --git a/tests/auto/qquickstyleselector/ResourceStyle/Button.qml b/tests/auto/qquickstyleselector/ResourceStyle/Button.qml deleted file mode 100644 index eaeeadcd..00000000 --- a/tests/auto/qquickstyleselector/ResourceStyle/Button.qml +++ /dev/null @@ -1,2 +0,0 @@ -import QtQuick.Templates 2.12 as T -T.Button { } diff --git a/tests/auto/qquickstyleselector/data/Button.qml b/tests/auto/qquickstyleselector/data/Button.qml deleted file mode 100644 index eaeeadcd..00000000 --- a/tests/auto/qquickstyleselector/data/Button.qml +++ /dev/null @@ -1,2 +0,0 @@ -import QtQuick.Templates 2.12 as T -T.Button { } diff --git a/tests/auto/qquickstyleselector/data/Control.qml b/tests/auto/qquickstyleselector/data/Control.qml deleted file mode 100644 index 6820b57d..00000000 --- a/tests/auto/qquickstyleselector/data/Control.qml +++ /dev/null @@ -1,2 +0,0 @@ -import QtQuick.Templates 2.12 as T -T.Control { } diff --git a/tests/auto/qquickstyleselector/data/FallbackStyle/Button.qml b/tests/auto/qquickstyleselector/data/FallbackStyle/Button.qml deleted file mode 100644 index eaeeadcd..00000000 --- a/tests/auto/qquickstyleselector/data/FallbackStyle/Button.qml +++ /dev/null @@ -1,2 +0,0 @@ -import QtQuick.Templates 2.12 as T -T.Button { } diff --git a/tests/auto/qquickstyleselector/data/FallbackStyle/Label.qml b/tests/auto/qquickstyleselector/data/FallbackStyle/Label.qml deleted file mode 100644 index 23699c1c..00000000 --- a/tests/auto/qquickstyleselector/data/FallbackStyle/Label.qml +++ /dev/null @@ -1,2 +0,0 @@ -import QtQuick.Templates 2.12 as T -T.Label { } diff --git a/tests/auto/qquickstyleselector/data/FileSystemStyle/Button.qml b/tests/auto/qquickstyleselector/data/FileSystemStyle/Button.qml deleted file mode 100644 index eaeeadcd..00000000 --- a/tests/auto/qquickstyleselector/data/FileSystemStyle/Button.qml +++ /dev/null @@ -1,2 +0,0 @@ -import QtQuick.Templates 2.12 as T -T.Button { } diff --git a/tests/auto/qquickstyleselector/data/Label.qml b/tests/auto/qquickstyleselector/data/Label.qml deleted file mode 100644 index 23699c1c..00000000 --- a/tests/auto/qquickstyleselector/data/Label.qml +++ /dev/null @@ -1,2 +0,0 @@ -import QtQuick.Templates 2.12 as T -T.Label { } diff --git a/tests/auto/qquickstyleselector/data/PlatformStyle/+linux/Button.qml b/tests/auto/qquickstyleselector/data/PlatformStyle/+linux/Button.qml deleted file mode 100644 index eaeeadcd..00000000 --- a/tests/auto/qquickstyleselector/data/PlatformStyle/+linux/Button.qml +++ /dev/null @@ -1,2 +0,0 @@ -import QtQuick.Templates 2.12 as T -T.Button { } diff --git a/tests/auto/qquickstyleselector/data/PlatformStyle/+macos/Button.qml b/tests/auto/qquickstyleselector/data/PlatformStyle/+macos/Button.qml deleted file mode 100644 index eaeeadcd..00000000 --- a/tests/auto/qquickstyleselector/data/PlatformStyle/+macos/Button.qml +++ /dev/null @@ -1,2 +0,0 @@ -import QtQuick.Templates 2.12 as T -T.Button { } diff --git a/tests/auto/qquickstyleselector/data/PlatformStyle/+windows/Button.qml b/tests/auto/qquickstyleselector/data/PlatformStyle/+windows/Button.qml deleted file mode 100644 index eaeeadcd..00000000 --- a/tests/auto/qquickstyleselector/data/PlatformStyle/+windows/Button.qml +++ /dev/null @@ -1,2 +0,0 @@ -import QtQuick.Templates 2.12 as T -T.Button { } diff --git a/tests/auto/qquickstyleselector/data/PlatformStyle/Button.qml b/tests/auto/qquickstyleselector/data/PlatformStyle/Button.qml deleted file mode 100644 index eaeeadcd..00000000 --- a/tests/auto/qquickstyleselector/data/PlatformStyle/Button.qml +++ /dev/null @@ -1,2 +0,0 @@ -import QtQuick.Templates 2.12 as T -T.Button { } diff --git a/tests/auto/qquickstyleselector/qquickstyleselector.pro b/tests/auto/qquickstyleselector/qquickstyleselector.pro deleted file mode 100644 index 6569b46d..00000000 --- a/tests/auto/qquickstyleselector/qquickstyleselector.pro +++ /dev/null @@ -1,19 +0,0 @@ -CONFIG += testcase -TARGET = tst_qquickstyleselector -SOURCES += tst_qquickstyleselector.cpp - -macos:CONFIG -= app_bundle - -QT += core-private gui-private qml-private quick-private quickcontrols2-private testlib - -include (../shared/util.pri) - -resourcestyle.prefix = / -resourcestyle.files += $$PWD/ResourceStyle/Button.qml -RESOURCES += resourcestyle - -TESTDATA = data/* - -OTHER_FILES += \ - data/*.qml - diff --git a/tests/auto/qquickstyleselector/tst_qquickstyleselector.cpp b/tests/auto/qquickstyleselector/tst_qquickstyleselector.cpp deleted file mode 100644 index ce2e2e99..00000000 --- a/tests/auto/qquickstyleselector/tst_qquickstyleselector.cpp +++ /dev/null @@ -1,167 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the test suite of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL3$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPLv3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or later as published by the Free -** Software Foundation and appearing in the file LICENSE.GPL included in -** the packaging of this file. Please review the following information to -** ensure the GNU General Public License version 2.0 requirements will be -** met: http://www.gnu.org/licenses/gpl-2.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include <QtTest/qtest.h> -#include <QtQuickControls2/qquickstyle.h> -#include <QtQuickControls2/private/qquickstyle_p.h> -#include <QtQuickControls2/private/qquickstyleselector_p.h> -#include "../shared/util.h" - -class tst_QQuickStyleSelector : public QQmlDataTest -{ - Q_OBJECT - -private slots: - void initTestCase(); - - void select_data(); - void select(); - - void platformSelectors(); -}; - -void tst_QQuickStyleSelector::initTestCase() -{ - QQmlDataTest::initTestCase(); - QQuickStylePrivate::init(dataDirectoryUrl()); -} - -void tst_QQuickStyleSelector::select_data() -{ - QTest::addColumn<QString>("file"); - QTest::addColumn<QString>("style"); - QTest::addColumn<QString>("path"); - QTest::addColumn<QString>("fallback"); - QTest::addColumn<QString>("expected"); - - // Control.qml exists only in the default style - QTest::newRow("control") << "Control.qml" << "" << "data" << "" << testFileUrl("Control.qml").toString(); - QTest::newRow("/control") << "Control.qml" << "" << dataDirectory() << "" << testFileUrl("Control.qml").toString(); - QTest::newRow("fs/control") << "Control.qml" << "FileSystemStyle" << "data" << "" << testFileUrl("Control.qml").toString(); - QTest::newRow("/fs/control") << "Control.qml" << "FileSystemStyle" << dataDirectory() << "" << testFileUrl("Control.qml").toString(); - QTest::newRow(":/control") << "Control.qml" << "ResourceStyle" << ":/" << "" << testFileUrl("Control.qml").toString(); - QTest::newRow("qrc:/control") << "Control.qml" << "ResourceStyle" << "qrc:/" << "" << testFileUrl("Control.qml").toString(); - QTest::newRow("nosuch/control") << "Control.qml" << "NoSuchStyle" << "data" << "" << testFileUrl("Control.qml").toString(); - QTest::newRow("/nosuch/control") << "Control.qml" << "NoSuchStyle" << dataDirectory() << "" << testFileUrl("Control.qml").toString(); - - QTest::newRow("control->base") << "Control.qml" << "" << "data" << "FallbackStyle" << testFileUrl("Control.qml").toString(); - QTest::newRow("/control->base") << "Control.qml" << "" << dataDirectory() << "FallbackStyle" << testFileUrl("Control.qml").toString(); - QTest::newRow("fs/control->base") << "Control.qml" << "FileSystemStyle" << "data" << "FallbackStyle" << testFileUrl("Control.qml").toString(); - QTest::newRow("/fs/control->base") << "Control.qml" << "FileSystemStyle" << dataDirectory() << "FallbackStyle" << testFileUrl("Control.qml").toString(); - QTest::newRow(":/control->base") << "Control.qml" << "ResourceStyle" << ":/" << "FallbackStyle" << testFileUrl("Control.qml").toString(); - QTest::newRow("qrc:/control->base") << "Control.qml" << "ResourceStyle" << "qrc:/" << "FallbackStyle" << testFileUrl("Control.qml").toString(); - QTest::newRow("nosuch/control->base") << "Control.qml" << "NoSuchStyle" << "data" << "FallbackStyle" << testFileUrl("Control.qml").toString(); - QTest::newRow("/nosuch/control->base") << "Control.qml" << "NoSuchStyle" << dataDirectory() << "FallbackStyle" << testFileUrl("Control.qml").toString(); - - // Label.qml exists in the default and fallback styles - QTest::newRow("label") << "Label.qml" << "" << "data" << "" << testFileUrl("Label.qml").toString(); - QTest::newRow("/label") << "Label.qml" << "" << dataDirectory() << "" << testFileUrl("Label.qml").toString(); - QTest::newRow("fs/label") << "Label.qml" << "FileSystemStyle" << "data" << "" << testFileUrl("Label.qml").toString(); - QTest::newRow("/fs/label") << "Label.qml" << "FileSystemStyle" << dataDirectory() << "" << testFileUrl("Label.qml").toString(); - QTest::newRow(":/label") << "Label.qml" << "ResourceStyle" << ":/" << "" << testFileUrl("Label.qml").toString(); - QTest::newRow("qrc:/label") << "Label.qml" << "ResourceStyle" << "qrc:/" << "" << testFileUrl("Label.qml").toString(); - QTest::newRow("nosuch/label") << "Label.qml" << "NoSuchStyle" << "data" << "" << testFileUrl("Label.qml").toString(); - QTest::newRow("/nosuch/label") << "Label.qml" << "NoSuchStyle" << dataDirectory() << "" << testFileUrl("Label.qml").toString(); - - QTest::newRow("label->base") << "Label.qml" << "" << "data" << "FallbackStyle" << testFileUrl("Label.qml").toString(); - QTest::newRow("/label->base") << "Label.qml" << "" << dataDirectory() << "FallbackStyle" << testFileUrl("Label.qml").toString(); - QTest::newRow("fs/label->base") << "Label.qml" << "FileSystemStyle" << "data" << "FallbackStyle" << testFileUrl("FallbackStyle/Label.qml").toString(); - QTest::newRow("/fs/label->base") << "Label.qml" << "FileSystemStyle" << dataDirectory() << "FallbackStyle" << testFileUrl("FallbackStyle/Label.qml").toString(); - QTest::newRow(":/label->base") << "Label.qml" << "ResourceStyle" << ":/" << "FallbackStyle" << testFileUrl("FallbackStyle/Label.qml").toString(); - QTest::newRow("qrc:/label->base") << "Label.qml" << "ResourceStyle" << "qrc:/" << "FallbackStyle" << testFileUrl("FallbackStyle/Label.qml").toString(); - QTest::newRow("nosuch/label->base") << "Label.qml" << "NoSuchStyle" << "data" << "FallbackStyle" << testFileUrl("FallbackStyle/Label.qml").toString(); - QTest::newRow("/nosuch/label->base") << "Label.qml" << "NoSuchStyle" << dataDirectory() << "FallbackStyle" << testFileUrl("FallbackStyle/Label.qml").toString(); - - // Button.qml exists in all styles including the fs and qrc styles - QTest::newRow("button") << "Button.qml" << "" << "data" << "" << testFileUrl("Button.qml").toString(); - QTest::newRow("/button") << "Button.qml" << "" << dataDirectory() << "" << testFileUrl("Button.qml").toString(); - QTest::newRow("fs/button") << "Button.qml" << "FileSystemStyle" << "data" << "" << testFileUrl("FileSystemStyle/Button.qml").toString(); - QTest::newRow("/fs/button") << "Button.qml" << "FileSystemStyle" << dataDirectory() << "" << testFileUrl("FileSystemStyle/Button.qml").toString(); - QTest::newRow(":/button") << "Button.qml" << "ResourceStyle" << ":/" << "" << "qrc:/ResourceStyle/Button.qml"; - QTest::newRow("qrc:/button") << "Button.qml" << "ResourceStyle" << "qrc:/" << "" << "qrc:/ResourceStyle/Button.qml"; - QTest::newRow("nosuch/button") << "Button.qml" << "NoSuchStyle" << "data" << "" << testFileUrl("Button.qml").toString(); - QTest::newRow("/nosuch/button") << "Button.qml" << "NoSuchStyle" << dataDirectory() << "" << testFileUrl("Button.qml").toString(); - - QTest::newRow("button->base") << "Button.qml" << "" << "data" << "FallbackStyle" << testFileUrl("Button.qml").toString(); - QTest::newRow("/button->base") << "Button.qml" << "" << dataDirectory() << "FallbackStyle" << testFileUrl("Button.qml").toString(); - QTest::newRow("fs/button->base") << "Button.qml" << "FileSystemStyle" << "data" << "FallbackStyle" << testFileUrl("FileSystemStyle/Button.qml").toString(); - QTest::newRow("/fs/button->base") << "Button.qml" << "FileSystemStyle" << dataDirectory() << "FallbackStyle" << testFileUrl("FileSystemStyle/Button.qml").toString(); - QTest::newRow(":/button->base") << "Button.qml" << "ResourceStyle" << ":/" << "FallbackStyle" << "qrc:/ResourceStyle/Button.qml"; - QTest::newRow("qrc:/button->base") << "Button.qml" << "ResourceStyle" << "qrc:/" << "FallbackStyle" << "qrc:/ResourceStyle/Button.qml"; - QTest::newRow("nosuch/button->base") << "Button.qml" << "NoSuchStyle" << "data" << "FallbackStyle" << testFileUrl("FallbackStyle/Button.qml").toString(); - QTest::newRow("/nosuch/button->base") << "Button.qml" << "NoSuchStyle" << dataDirectory() << "FallbackStyle" << testFileUrl("FallbackStyle/Button.qml").toString(); -} - -void tst_QQuickStyleSelector::select() -{ - QFETCH(QString, file); - QFETCH(QString, style); - QFETCH(QString, path); - QFETCH(QString, fallback); - QFETCH(QString, expected); - - QQuickStyle::setStyle(QDir(path).filePath(style)); - QQuickStyle::setFallbackStyle(fallback); - - QQuickStyleSelector selector; - selector.addSelector(style); - selector.addSelector(fallback); - selector.setPaths(QStringList() << dataDirectory() << ":/"); - QCOMPARE(selector.select(file), expected); -} - -void tst_QQuickStyleSelector::platformSelectors() -{ - QQuickStyle::setStyle(QDir(dataDirectory()).filePath("PlatformStyle")); - - QQuickStyleSelector selector; - selector.addSelector("PlatformStyle"); - selector.setPaths(QStringList() << dataDirectory()); - -#if defined(Q_OS_LINUX) - QCOMPARE(selector.select("Button.qml"), testFileUrl("PlatformStyle/+linux/Button.qml").toString()); -#elif defined(Q_OS_MACOS) - QCOMPARE(selector.select("Button.qml"), testFileUrl("PlatformStyle/+macos/Button.qml").toString()); -#elif defined(Q_OS_WIN) - QCOMPARE(selector.select("Button.qml"), testFileUrl("PlatformStyle/+windows/Button.qml").toString()); -#else - QCOMPARE(selector.select("Button.qml"), testFileUrl("PlatformStyle/Button.qml").toString()); -#endif -} - -QTEST_MAIN(tst_QQuickStyleSelector) - -#include "tst_qquickstyleselector.moc" diff --git a/tests/auto/qquickuniversalstyle/data/tst_universal.qml b/tests/auto/qquickuniversalstyle/data/tst_universal.qml index 0926cae3..356df731 100644 --- a/tests/auto/qquickuniversalstyle/data/tst_universal.qml +++ b/tests/auto/qquickuniversalstyle/data/tst_universal.qml @@ -48,11 +48,11 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.2 -import QtTest 1.0 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Window +import QtTest +import QtQuick.Controls +import QtQuick.Controls.Universal TestCase { id: testCase @@ -416,7 +416,7 @@ TestCase { verify(window) verify(window.pane) - var control = Qt.createQmlObject("import QtQuick.Controls 2.1; " + data.type + " { }", window.pane) + var control = Qt.createQmlObject("import QtQuick.Controls; " + data.type + " { }", window.pane) verify(control) compare(control.font[data.attribute], data.value) diff --git a/tests/auto/qquickuniversalstyleconf/data/applicationwindow.qml b/tests/auto/qquickuniversalstyleconf/data/applicationwindow.qml index 7abc8b13..bb16254a 100644 --- a/tests/auto/qquickuniversalstyleconf/data/applicationwindow.qml +++ b/tests/auto/qquickuniversalstyleconf/data/applicationwindow.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Universal ApplicationWindow { width: 400 diff --git a/tests/auto/qquickuniversalstyleconf/tst_qquickuniversalstyleconf.cpp b/tests/auto/qquickuniversalstyleconf/tst_qquickuniversalstyleconf.cpp index 51cc5883..08eae67c 100644 --- a/tests/auto/qquickuniversalstyleconf/tst_qquickuniversalstyleconf.cpp +++ b/tests/auto/qquickuniversalstyleconf/tst_qquickuniversalstyleconf.cpp @@ -54,6 +54,7 @@ private slots: void tst_qquickuniversalstyleconf::conf() { QQuickApplicationHelper helper(this, QLatin1String("applicationwindow.qml")); + QVERIFY2(helper.ready, helper.failureMessage()); QFont customFont; customFont.setFamily("Courier"); diff --git a/tests/auto/revisions/data/dependencies.qml b/tests/auto/revisions/data/dependencies.qml index e276ba59..bb954219 100644 --- a/tests/auto/revisions/data/dependencies.qml +++ b/tests/auto/revisions/data/dependencies.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Material +import QtQuick.Controls.Universal Control { } diff --git a/tests/auto/revisions/tst_revisions.cpp b/tests/auto/revisions/tst_revisions.cpp index 82b32827..67f890bb 100644 --- a/tests/auto/revisions/tst_revisions.cpp +++ b/tests/auto/revisions/tst_revisions.cpp @@ -86,12 +86,14 @@ void tst_revisions::window_data() QTest::addColumn<QString>("qml"); QTest::addColumn<QString>("error"); - // Qt 5.7: 2.0, Qt 5.8: 2.1 - for (int i = 0; i <= 1; ++i) + // Qt 5.7: 2.0, Qt 5.8: 2.1, Qt 5.9: 2.2 + // Note that we can no longer map the same Screen type to different versions + // in QtQuick and QtQuick.Controls anymore. + for (int i = 0; i <= 2; ++i) QTest::newRow(qPrintable(QString("screen:2.%1").arg(i))) << i << "screen: null" << QString(":1 \"ApplicationWindow.screen\" is not available in QtQuick.Templates 2.%1").arg(i); - // Qt 5.9: 2.2, Qt 5.10: 2.3... - for (int i = 2; i <= 15; ++i) + // Qt 5.10: 2.3... + for (int i = 3; i <= 15; ++i) QTest::newRow(qPrintable(QString("screen:2.%1").arg(i))) << i << "screen: null" << ""; } diff --git a/tests/auto/sanity/BLACKLIST b/tests/auto/sanity/BLACKLIST index 2a157b87..d6d4b0d9 100644 --- a/tests/auto/sanity/BLACKLIST +++ b/tests/auto/sanity/BLACKLIST @@ -2,9 +2,9 @@ * [attachedObjects:material/SwitchDelegate.qml] * -[ids:controls/HorizontalHeaderView.qml] +[ids:default/HorizontalHeaderView.qml] * -[ids:controls/VerticalHeaderView.qml] +[ids:default/VerticalHeaderView.qml] * [ids:fusion/HorizontalHeaderView.qml] * diff --git a/tests/auto/sanity/CMakeLists.txt b/tests/auto/sanity/CMakeLists.txt index f7539771..fb2f2014 100644 --- a/tests/auto/sanity/CMakeLists.txt +++ b/tests/auto/sanity/CMakeLists.txt @@ -19,6 +19,7 @@ qt_add_test(tst_sanity Qt::Qml Qt::QmlPrivate Qt::QuickControls2 + Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private Qt::TestPrivate diff --git a/tests/auto/sanity/data/dependencies.qml b/tests/auto/sanity/data/dependencies.qml index dac5f935..280cfd29 100644 --- a/tests/auto/sanity/data/dependencies.qml +++ b/tests/auto/sanity/data/dependencies.qml @@ -1,4 +1,4 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Control { } diff --git a/tests/auto/sanity/sanity.pro b/tests/auto/sanity/sanity.pro index c792c073..d7bf5d87 100644 --- a/tests/auto/sanity/sanity.pro +++ b/tests/auto/sanity/sanity.pro @@ -1,7 +1,7 @@ TEMPLATE = app TARGET = tst_sanity -QT += qml testlib core-private qml-private +QT += qml testlib core-private qml-private quickcontrols2 CONFIG += testcase macos:CONFIG -= app_bundle diff --git a/tests/auto/sanity/tst_sanity.cpp b/tests/auto/sanity/tst_sanity.cpp index b5d0054b..5dc0676c 100644 --- a/tests/auto/sanity/tst_sanity.cpp +++ b/tests/auto/sanity/tst_sanity.cpp @@ -37,6 +37,9 @@ #include <QtTest> #include <QtQml> #include <QtCore/private/qhooks_p.h> +#include <QtCore/qpair.h> +#include <QtCore/qscopedpointer.h> +#include <QtCore/qset.h> #include <QtQml/private/qqmljsengine_p.h> #include <QtQml/private/qqmljslexer_p.h> #include <QtQml/private/qqmljsparser_p.h> @@ -81,8 +84,9 @@ private slots: void ids_data(); private: - QQmlEngine engine; - QMap<QString, QString> files; + QMap<QString, QString> sourceQmlFiles; + QMap<QString, QString> installedQmlFiles; + QQuickStyleHelper styleHelper; }; void tst_Sanity::init() @@ -160,19 +164,34 @@ void tst_Sanity::initTestCase() const QStringList qmlTypeNames = QQmlMetaType::qmlTypeNames(); + // Collect the files from each style in the source tree. QDirIterator it(QQC2_IMPORT_PATH, QStringList() << "*.qml" << "*.js", QDir::Files, QDirIterator::Subdirectories); while (it.hasNext()) { it.next(); QFileInfo info = it.fileInfo(); if (qmlTypeNames.contains(QStringLiteral("QtQuick.Templates/") + info.baseName())) - files.insert(info.dir().dirName() + "/" + info.fileName(), info.filePath()); + sourceQmlFiles.insert(info.dir().dirName() + "/" + info.fileName(), info.filePath()); + } + + // Then, collect the files from each installed style directory. + const QVector<QPair<QString, QString>> styleRelativePaths = { + { "controls/default", "QtQuick/Controls/Default" }, + { "controls/fusion", "QtQuick/Controls/Fusion" }, + { "controls/material", "QtQuick/Controls/Material" }, + { "controls/universal", "QtQuick/Controls/Universal" }, + }; + for (const auto stylePathPair : styleRelativePaths) { + forEachControl(&engine, stylePathPair.first, stylePathPair.second, QStringList(), + [&](const QString &relativePath, const QUrl &absoluteUrl) { + installedQmlFiles.insert(relativePath, absoluteUrl.toLocalFile()); + }); } } void tst_Sanity::jsFiles() { QMap<QString, QString>::const_iterator it; - for (it = files.constBegin(); it != files.constEnd(); ++it) { + for (it = sourceQmlFiles.constBegin(); it != sourceQmlFiles.constEnd(); ++it) { if (QFileInfo(it.value()).suffix() == QStringLiteral("js")) QFAIL(qPrintable(it.value() + ": JS files are not allowed")); } @@ -204,16 +223,16 @@ void tst_Sanity::functions_data() QTest::addColumn<QString>("filePath"); QMap<QString, QString>::const_iterator it; - for (it = files.constBegin(); it != files.constEnd(); ++it) + for (it = sourceQmlFiles.constBegin(); it != sourceQmlFiles.constEnd(); ++it) QTest::newRow(qPrintable(it.key())) << it.key() << it.value(); } class SignalHandlerValidator : public BaseValidator { protected: - static bool isSignalHandler(const QStringRef &name) + static bool isSignalHandler(QStringView name) { - return name.length() > 2 && name.startsWith("on") && name.at(2).isUpper(); + return name.length() > 2 && name.startsWith(QLatin1String("on")) && name.at(2).isUpper(); } virtual bool visit(QQmlJS::AST::UiScriptBinding *node) @@ -241,7 +260,7 @@ void tst_Sanity::signalHandlers_data() QTest::addColumn<QString>("filePath"); QMap<QString, QString>::const_iterator it; - for (it = files.constBegin(); it != files.constEnd(); ++it) + for (it = sourceQmlFiles.constBegin(); it != sourceQmlFiles.constEnd(); ++it) QTest::newRow(qPrintable(it.key())) << it.key() << it.value(); } @@ -273,7 +292,7 @@ void tst_Sanity::anchors_data() QTest::addColumn<QString>("filePath"); QMap<QString, QString>::const_iterator it; - for (it = files.constBegin(); it != files.constEnd(); ++it) + for (it = sourceQmlFiles.constBegin(); it != sourceQmlFiles.constEnd(); ++it) QTest::newRow(qPrintable(it.key())) << it.key() << it.value(); } @@ -338,37 +357,339 @@ void tst_Sanity::ids_data() QTest::addColumn<QString>("filePath"); QMap<QString, QString>::const_iterator it; - for (it = files.constBegin(); it != files.constEnd(); ++it) + for (it = sourceQmlFiles.constBegin(); it != sourceQmlFiles.constEnd(); ++it) QTest::newRow(qPrintable(it.key())) << it.key() << it.value(); } +typedef QPair<QString, QString> StringPair; +typedef QSet<StringPair> StringPairSet; + void tst_Sanity::attachedObjects() { - QFETCH(QUrl, url); + QFETCH(QStringList, ignoredAttachedClassNames); + QFETCH(StringPairSet, expectedAttachedClassNames); - QQmlComponent component(&engine); - component.loadUrl(url); + const QString tagStr = QString::fromLatin1(QTest::currentDataTag()); + QStringList styleAndFileName = tagStr.split('/'); + QCOMPARE(styleAndFileName.size(), 2); + QString style = styleAndFileName.first(); + + if (styleHelper.updateStyle(style)) + qt_qobjects->clear(); + + // Turn e.g. "Default/Button.qml" into "default/Button.qml". + QString styleRelativePath = tagStr; + styleRelativePath[0] = styleRelativePath.at(0).toLower(); + // Get the absolute path to the installed file. + const QString controlFilePath = installedQmlFiles.value(styleRelativePath); + + QQmlComponent component(styleHelper.engine.data()); + component.loadUrl(QUrl::fromLocalFile(controlFilePath)); - QSet<QString> classNames; QScopedPointer<QObject> object(component.create()); QVERIFY2(object.data(), qPrintable(component.errorString())); - for (QObject *object : qAsConst(*qt_qobjects)) { - if (object->parent() == &engine) + + // The goal of this test is to check that every unique attached type is used only once + // within each QML file. To track this, we remove expected pairs of class names as we + // encounter them, so that we know when something unexpected shows up. + StringPairSet remainingAttachedClassNames = expectedAttachedClassNames; + + // Intentional copy, as QDebug creates a QObject-derived instance which would modify the list. + const auto qobjectsCopy = *qt_qobjects; + for (QObject *object : qobjectsCopy) { + const QString attachedClassName = object->metaObject()->className(); + if (object->parent() == styleHelper.engine.data()) continue; // allow "global" instances - QString className = object->metaObject()->className(); - if (className.endsWith("Attached") || className.endsWith("Style")) - QVERIFY2(!classNames.contains(className), qPrintable(QString("Multiple %1 instances").arg(className))); - classNames.insert(className); + + // objects without parents would be singletons such as QQuickFusionStyle, and we're not interested in them. + if ((attachedClassName.endsWith("Attached") || attachedClassName.endsWith("Style")) && object->parent()) { + QString attacheeClassName = QString::fromLatin1(object->parent()->metaObject()->className()); + const QString qmlTypeToken = QStringLiteral("QMLTYPE"); + if (attacheeClassName.contains(qmlTypeToken)) { + // Remove the numbers from the class name, as they can change between runs; e.g.: + // Menu_QMLTYPE_222 => Menu_QMLTYPE + const int qmlTypeTokenIndex = attacheeClassName.indexOf(qmlTypeToken); + QVERIFY(qmlTypeTokenIndex != -1); + attacheeClassName = attacheeClassName.mid(0, attacheeClassName.indexOf(qmlTypeToken) + qmlTypeToken.size()); + } + + const StringPair classNamePair = { attachedClassName, attacheeClassName }; + QVERIFY2(remainingAttachedClassNames.contains(classNamePair), qPrintable(QString::fromLatin1( + "Found an unexpected usage of an attached type: %1 is attached to %2. Either an incorrect usage was added, or the list of expected usages needs to be updated. Expected attached class names for %3 are:\n %4") + .arg(attachedClassName).arg(attacheeClassName).arg(tagStr).arg(QDebug::toString(expectedAttachedClassNames)))); + remainingAttachedClassNames.remove(classNamePair); + } } + + QVERIFY2(remainingAttachedClassNames.isEmpty(), qPrintable(QString::fromLatin1( + "Not all expected attached class name usages were found; the following usages are missing:\n %1") + .arg(QDebug::toString(remainingAttachedClassNames)))); } void tst_Sanity::attachedObjects_data() { - QTest::addColumn<QUrl>("url"); - addTestRowForEachControl(&engine, "controls", "QtQuick/Controls.2"); - addTestRowForEachControl(&engine, "controls/fusion", "QtQuick/Controls.2", QStringList() << "CheckIndicator" << "RadioIndicator" << "SliderGroove" << "SliderHandle" << "SwitchIndicator"); - addTestRowForEachControl(&engine, "controls/material", "QtQuick/Controls.2/Material", QStringList() << "Ripple" << "SliderHandle" << "CheckIndicator" << "RadioIndicator" << "SwitchIndicator" << "BoxShadow" << "ElevationEffect" << "CursorDelegate"); - addTestRowForEachControl(&engine, "controls/universal", "QtQuick/Controls.2/Universal", QStringList() << "CheckIndicator" << "RadioIndicator" << "SwitchIndicator"); + QTest::addColumn<QStringList>("ignoredAttachedClassNames"); + QTest::addColumn<StringPairSet>("expectedAttachedClassNames"); + + QStringList ignoredNames; + + // We used to just check that there were no duplicate QMetaObject class names, + // but that doesn't account for attached objects loaded by composite controls, + // such as DialogButtonBox, which is loaded by Dialog. + // So now we list all controls and the attached types we expect them to use. + + QTest::newRow("Default/AbstractButton.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/Action.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/ActionGroup.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/ApplicationWindow.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/BusyIndicator.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/Button.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/ButtonGroup.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/CheckBox.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/CheckDelegate.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/ComboBox.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/Container.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/Control.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/DelayButton.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/Dial.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/Dialog.qml") << ignoredNames << StringPairSet {{ "QQuickOverlayAttached", "Dialog_QMLTYPE" }}; + QTest::newRow("Default/DialogButtonBox.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/Drawer.qml") << ignoredNames << StringPairSet {{ "QQuickOverlayAttached", "Drawer_QMLTYPE" }}; + QTest::newRow("Default/Frame.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/GroupBox.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/HorizontalHeaderView.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/ItemDelegate.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/Label.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/Menu.qml") << ignoredNames << StringPairSet { + { "QQuickOverlayAttached", "Menu_QMLTYPE" }, + { "QQuickScrollIndicatorAttached", "QQuickListView" }, + { "QQuickWindowAttached", "QQuickListView" } + }; + QTest::newRow("Default/MenuBar.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/MenuBarItem.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/MenuItem.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/MenuSeparator.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/Page.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/PageIndicator.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/Pane.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/Popup.qml") << ignoredNames << StringPairSet {{ "QQuickOverlayAttached", "Popup_QMLTYPE" }}; + QTest::newRow("Default/ProgressBar.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/RadioButton.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/RadioDelegate.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/RangeSlider.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/RoundButton.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/ScrollBar.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/ScrollIndicator.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/ScrollView.qml") << ignoredNames << StringPairSet {{ "QQuickScrollBarAttached", "ScrollView_QMLTYPE" }}; + QTest::newRow("Default/Slider.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/SpinBox.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/SplitView.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/StackView.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/SwipeDelegate.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/SwipeView.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/Switch.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/SwitchDelegate.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/TabBar.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/TabButton.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/TextArea.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/TextField.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/ToolBar.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/ToolButton.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/ToolSeparator.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/ToolTip.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/Tumbler.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Default/VerticalHeaderView.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/ApplicationWindow.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/BusyIndicator.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/Button.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/CheckBox.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/CheckDelegate.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/ComboBox.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/DelayButton.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/Dial.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/Dialog.qml") << ignoredNames << StringPairSet {{ "QQuickOverlayAttached", "Dialog_QMLTYPE" }}; + QTest::newRow("Fusion/DialogButtonBox.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/Drawer.qml") << ignoredNames << StringPairSet {{ "QQuickOverlayAttached", "Drawer_QMLTYPE" }}; + QTest::newRow("Fusion/Frame.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/GroupBox.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/HorizontalHeaderView.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/ItemDelegate.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/Label.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/Menu.qml") << ignoredNames << StringPairSet { + { "QQuickOverlayAttached", "Menu_QMLTYPE" }, + { "QQuickScrollIndicatorAttached", "QQuickListView" }, + { "QQuickWindowAttached", "QQuickListView" } + }; + QTest::newRow("Fusion/MenuBar.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/MenuBarItem.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/MenuItem.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/MenuSeparator.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/Page.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/PageIndicator.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/Pane.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/Popup.qml") << ignoredNames << StringPairSet {{ "QQuickOverlayAttached", "Popup_QMLTYPE" }}; + QTest::newRow("Fusion/ProgressBar.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/RadioButton.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/RadioDelegate.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/RangeSlider.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/RoundButton.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/ScrollBar.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/ScrollIndicator.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/Slider.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/SpinBox.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/SplitView.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/SwipeDelegate.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/Switch.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/SwitchDelegate.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/TabBar.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/TabButton.qml") << ignoredNames << StringPairSet {{ "QQuickTabBarAttached", "TabButton_QMLTYPE" }}; + QTest::newRow("Fusion/TextArea.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/TextField.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/ToolBar.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/ToolButton.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/ToolSeparator.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/ToolTip.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/Tumbler.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Fusion/VerticalHeaderView.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Material/ApplicationWindow.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "ApplicationWindow_QMLTYPE" }}; + QTest::newRow("Material/BusyIndicator.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "BusyIndicator_QMLTYPE" }}; + QTest::newRow("Material/Button.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "Button_QMLTYPE" }}; + QTest::newRow("Material/CheckBox.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "CheckBox_QMLTYPE" }}; + QTest::newRow("Material/CheckDelegate.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "CheckDelegate_QMLTYPE" }}; + QTest::newRow("Material/ComboBox.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "ComboBox_QMLTYPE" }}; + QTest::newRow("Material/DelayButton.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "DelayButton_QMLTYPE" }}; + QTest::newRow("Material/Dial.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "Dial_QMLTYPE" }}; + QTest::newRow("Material/Dialog.qml") << ignoredNames << StringPairSet { + { "QQuickMaterialStyle", "DialogButtonBox_QMLTYPE" }, + { "QQuickOverlayAttached", "Dialog_QMLTYPE" }, + { "QQuickMaterialStyle", "Dialog_QMLTYPE" }, + { "QQuickMaterialStyle", "Label_QMLTYPE" } + }; + QTest::newRow("Material/DialogButtonBox.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "DialogButtonBox_QMLTYPE" }}; + QTest::newRow("Material/Drawer.qml") << ignoredNames << StringPairSet { + { "QQuickOverlayAttached", "Drawer_QMLTYPE" }, + { "QQuickMaterialStyle", "Drawer_QMLTYPE" } + }; + QTest::newRow("Material/Frame.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "Frame_QMLTYPE" }}; + QTest::newRow("Material/GroupBox.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "GroupBox_QMLTYPE" }}; + QTest::newRow("Material/HorizontalHeaderView.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Material/ItemDelegate.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "ItemDelegate_QMLTYPE" }}; + QTest::newRow("Material/Label.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "Label_QMLTYPE" }}; + QTest::newRow("Material/Menu.qml") << ignoredNames << StringPairSet { + { "QQuickOverlayAttached", "Menu_QMLTYPE" }, + { "QQuickMaterialStyle", "Menu_QMLTYPE" }, + { "QQuickScrollIndicatorAttached", "QQuickListView" }, + { "QQuickWindowAttached", "QQuickListView" }, + { "QQuickMaterialStyle", "ScrollIndicator_QMLTYPE" } + }; + QTest::newRow("Material/MenuBar.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "MenuBar_QMLTYPE" }}; + QTest::newRow("Material/MenuBarItem.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "MenuBarItem_QMLTYPE" }}; + QTest::newRow("Material/MenuItem.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "MenuItem_QMLTYPE" }}; + QTest::newRow("Material/MenuSeparator.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "MenuSeparator_QMLTYPE" }}; + QTest::newRow("Material/Page.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "Page_QMLTYPE" }}; + QTest::newRow("Material/PageIndicator.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Material/Pane.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "Pane_QMLTYPE" }}; + QTest::newRow("Material/Popup.qml") << ignoredNames << StringPairSet { + { "QQuickOverlayAttached", "Popup_QMLTYPE" }, + { "QQuickMaterialStyle", "Popup_QMLTYPE" } + }; + QTest::newRow("Material/ProgressBar.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "ProgressBar_QMLTYPE" }}; + QTest::newRow("Material/RadioButton.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "RadioButton_QMLTYPE" }}; + QTest::newRow("Material/RadioDelegate.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "RadioDelegate_QMLTYPE" }}; + QTest::newRow("Material/RangeSlider.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "RangeSlider_QMLTYPE" }}; + QTest::newRow("Material/RoundButton.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "RoundButton_QMLTYPE" }}; + QTest::newRow("Material/ScrollBar.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "ScrollBar_QMLTYPE" }}; + QTest::newRow("Material/ScrollIndicator.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "ScrollIndicator_QMLTYPE" }}; + QTest::newRow("Material/Slider.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "Slider_QMLTYPE" }}; + QTest::newRow("Material/SpinBox.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "SpinBox_QMLTYPE" }}; + QTest::newRow("Material/SplitView.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Material/StackView.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Material/SwipeDelegate.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "SwipeDelegate_QMLTYPE" }}; + QTest::newRow("Material/SwipeView.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Material/Switch.qml") << ignoredNames << StringPairSet { + { "QQuickMaterialStyle", "SwitchIndicator_QMLTYPE" }, + { "QQuickMaterialStyle", "Switch_QMLTYPE" } + }; + QTest::newRow("Material/SwitchDelegate.qml") << ignoredNames << StringPairSet { + { "QQuickMaterialStyle", "SwitchDelegate_QMLTYPE" }, + { "QQuickMaterialStyle", "SwitchIndicator_QMLTYPE" } + }; + QTest::newRow("Material/TabBar.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "TabBar_QMLTYPE" }}; + QTest::newRow("Material/TabButton.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "TabButton_QMLTYPE" }}; + QTest::newRow("Material/TextArea.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "TextArea_QMLTYPE" }}; + QTest::newRow("Material/TextField.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "TextField_QMLTYPE" }}; + QTest::newRow("Material/ToolBar.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "ToolBar_QMLTYPE" }}; + QTest::newRow("Material/ToolButton.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "ToolButton_QMLTYPE" }}; + QTest::newRow("Material/ToolSeparator.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "ToolSeparator_QMLTYPE" }}; + QTest::newRow("Material/ToolTip.qml") << ignoredNames << StringPairSet {{ "QQuickMaterialStyle", "ToolTip_QMLTYPE" }}; + QTest::newRow("Material/Tumbler.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Material/VerticalHeaderView.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Universal/ApplicationWindow.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "ApplicationWindow_QMLTYPE" }}; + QTest::newRow("Universal/BusyIndicator.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "BusyIndicator_QMLTYPE" }}; + QTest::newRow("Universal/Button.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "Button_QMLTYPE" }}; + QTest::newRow("Universal/CheckBox.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "CheckBox_QMLTYPE" }}; + QTest::newRow("Universal/CheckDelegate.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "CheckDelegate_QMLTYPE" }}; + QTest::newRow("Universal/ComboBox.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "ComboBox_QMLTYPE" }}; + QTest::newRow("Universal/DelayButton.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "DelayButton_QMLTYPE" }}; + QTest::newRow("Universal/Dial.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "Dial_QMLTYPE" }}; + QTest::newRow("Universal/Dialog.qml") << ignoredNames << StringPairSet { + { "QQuickOverlayAttached", "Dialog_QMLTYPE" }, + { "QQuickUniversalStyle", "Label_QMLTYPE" }, + { "QQuickUniversalStyle", "Dialog_QMLTYPE" }, + { "QQuickUniversalStyle", "DialogButtonBox_QMLTYPE" } + }; + QTest::newRow("Universal/DialogButtonBox.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "DialogButtonBox_QMLTYPE" }}; + QTest::newRow("Universal/Drawer.qml") << ignoredNames << StringPairSet { + { "QQuickOverlayAttached", "Drawer_QMLTYPE" }, + { "QQuickUniversalStyle", "Drawer_QMLTYPE" } + }; + QTest::newRow("Universal/Frame.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "Frame_QMLTYPE" }}; + QTest::newRow("Universal/GroupBox.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "GroupBox_QMLTYPE" }}; + QTest::newRow("Universal/HorizontalHeaderView.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Universal/ItemDelegate.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "ItemDelegate_QMLTYPE" }}; + QTest::newRow("Universal/Label.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "Label_QMLTYPE" }}; + QTest::newRow("Universal/Menu.qml") << ignoredNames << StringPairSet { + { "QQuickOverlayAttached", "Menu_QMLTYPE" }, + { "QQuickUniversalStyle", "Menu_QMLTYPE" }, + { "QQuickScrollIndicatorAttached", "QQuickListView" }, + { "QQuickWindowAttached", "QQuickListView" }, + { "QQuickUniversalStyle", "ScrollIndicator_QMLTYPE" } + }; + QTest::newRow("Universal/MenuBar.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "MenuBar_QMLTYPE" }}; + QTest::newRow("Universal/MenuBarItem.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "MenuBarItem_QMLTYPE" }}; + QTest::newRow("Universal/MenuItem.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "MenuItem_QMLTYPE" }}; + QTest::newRow("Universal/MenuSeparator.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "MenuSeparator_QMLTYPE" }}; + QTest::newRow("Universal/Page.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "Page_QMLTYPE" }}; + QTest::newRow("Universal/PageIndicator.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Universal/Pane.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "Pane_QMLTYPE" }}; + QTest::newRow("Universal/Popup.qml") << ignoredNames << StringPairSet { + { "QQuickOverlayAttached", "Popup_QMLTYPE" }, + { "QQuickUniversalStyle", "Popup_QMLTYPE" } + }; + QTest::newRow("Universal/ProgressBar.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "ProgressBar_QMLTYPE" }}; + QTest::newRow("Universal/RadioButton.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "RadioButton_QMLTYPE" }}; + QTest::newRow("Universal/RadioDelegate.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "RadioDelegate_QMLTYPE" }}; + QTest::newRow("Universal/RangeSlider.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "RangeSlider_QMLTYPE" }}; + QTest::newRow("Universal/RoundButton.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "RoundButton_QMLTYPE" }}; + QTest::newRow("Universal/ScrollBar.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "ScrollBar_QMLTYPE" }}; + QTest::newRow("Universal/ScrollIndicator.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "ScrollIndicator_QMLTYPE" }}; + QTest::newRow("Universal/Slider.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "Slider_QMLTYPE" }}; + QTest::newRow("Universal/SpinBox.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "SpinBox_QMLTYPE" }}; + QTest::newRow("Universal/SplitView.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Universal/StackView.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Universal/SwipeDelegate.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "SwipeDelegate_QMLTYPE" }}; + QTest::newRow("Universal/Switch.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "Switch_QMLTYPE" }}; + QTest::newRow("Universal/SwitchDelegate.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "SwitchDelegate_QMLTYPE" }}; + QTest::newRow("Universal/TabBar.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "TabBar_QMLTYPE" }}; + QTest::newRow("Universal/TabButton.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "TabButton_QMLTYPE" }}; + QTest::newRow("Universal/TextArea.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "TextArea_QMLTYPE" }}; + QTest::newRow("Universal/TextField.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "TextField_QMLTYPE" }}; + QTest::newRow("Universal/ToolBar.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "ToolBar_QMLTYPE" }}; + QTest::newRow("Universal/ToolButton.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "ToolButton_QMLTYPE" }}; + QTest::newRow("Universal/ToolSeparator.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "ToolSeparator_QMLTYPE" }}; + QTest::newRow("Universal/ToolTip.qml") << ignoredNames << StringPairSet {{ "QQuickUniversalStyle", "ToolTip_QMLTYPE" }}; + QTest::newRow("Universal/Tumbler.qml") << ignoredNames << StringPairSet {}; + QTest::newRow("Universal/VerticalHeaderView.qml") << ignoredNames << StringPairSet {}; } QTEST_MAIN(tst_Sanity) diff --git a/tests/auto/shared/qtest_quickcontrols.h b/tests/auto/shared/qtest_quickcontrols.h index 4a06c021..17e5a6d2 100644 --- a/tests/auto/shared/qtest_quickcontrols.h +++ b/tests/auto/shared/qtest_quickcontrols.h @@ -42,11 +42,12 @@ #include <QtGui/qguiapplication.h> #include <QtQml/qqml.h> #include <QtQuickControls2/qquickstyle.h> +#include <QtQuickControls2/private/qquickstyle_p.h> static QStringList testStyles() { if (QQuickStyle::name().isEmpty()) - return QQuickStyle::availableStyles(); + return QQuickStylePrivate::builtInStyles(); return QStringList(QQuickStyle::name()); } diff --git a/tests/auto/shared/util.pri b/tests/auto/shared/util.pri index 99607a66..c2eb9f0a 100644 --- a/tests/auto/shared/util.pri +++ b/tests/auto/shared/util.pri @@ -1,4 +1,4 @@ -QT += testlib-private core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2 +QT += testlib-private core-private gui-private qml-private quick-private quicktemplates2-private quickcontrols2 quickcontrols2-private HEADERS += $$PWD/visualtestutil.h \ $$PWD/util.h \ diff --git a/tests/auto/shared/visualtestutil.cpp b/tests/auto/shared/visualtestutil.cpp index 3eaaa588..bfbf0a17 100644 --- a/tests/auto/shared/visualtestutil.cpp +++ b/tests/auto/shared/visualtestutil.cpp @@ -95,7 +95,7 @@ void QQuickVisualTestUtil::centerOnScreen(QQuickWindow *window) window->setFramePosition(screenGeometry.center() - offset); } -void QQuickVisualTestUtil::addTestRowForEachControl(QQmlEngine *engine, const QString &sourcePath, const QString &targetPath, const QStringList &skiplist) +void QQuickVisualTestUtil::forEachControl(QQmlEngine *engine, const QString &sourcePath, const QString &targetPath, const QStringList &skipList, QQuickVisualTestUtil::ForEachCallback callback) { // We cannot use QQmlComponent to load QML files directly from the source tree. // For styles that use internal QML types (eg. material/Ripple.qml), the source @@ -111,7 +111,7 @@ void QQuickVisualTestUtil::addTestRowForEachControl(QQmlEngine *engine, const QS const QFileInfoList entries = QDir(QQC2_IMPORT_PATH "/" + sourcePath).entryInfoList(QStringList("*.qml"), QDir::Files); for (const QFileInfo &entry : entries) { QString name = entry.baseName(); - if (!skiplist.contains(name)) { + if (!skipList.contains(name)) { const auto importPathList = engine->importPathList(); for (const QString &importPath : importPathList) { QString name = entry.dir().dirName() + "/" + entry.fileName(); @@ -119,13 +119,13 @@ void QQuickVisualTestUtil::addTestRowForEachControl(QQmlEngine *engine, const QS if (filePath.startsWith(":")) filePath.prepend("qrc"); if (QFile::exists(filePath)) { - QTest::newRow(qPrintable(name)) << QUrl::fromLocalFile(filePath); + callback(name, QUrl::fromLocalFile(filePath)); break; } else { QUrl url(filePath); filePath = QQmlFile::urlToLocalFileOrQrc(filePath); if (!filePath.isEmpty() && QFile::exists(filePath)) { - QTest::newRow(qPrintable(name)) << url; + callback(name, url); break; } } @@ -133,3 +133,10 @@ void QQuickVisualTestUtil::addTestRowForEachControl(QQmlEngine *engine, const QS } } } + +void QQuickVisualTestUtil::addTestRowForEachControl(QQmlEngine *engine, const QString &sourcePath, const QString &targetPath, const QStringList &skipList) +{ + forEachControl(engine, sourcePath, targetPath, skipList, [&](const QString &relativePath, const QUrl &absoluteUrl) { + QTest::newRow(qPrintable(relativePath)) << absoluteUrl; + }); +} diff --git a/tests/auto/shared/visualtestutil.h b/tests/auto/shared/visualtestutil.h index d5e651c5..726daa27 100644 --- a/tests/auto/shared/visualtestutil.h +++ b/tests/auto/shared/visualtestutil.h @@ -37,11 +37,12 @@ #ifndef QQUICKVISUALTESTUTIL_H #define QQUICKVISUALTESTUTIL_H +#include <functional> + #include <QtQuick/QQuickItem> #include <QtQml/QQmlExpression> - #include <QtQuick/private/qquickitem_p.h> - +#include <QtQuickControls2/qquickstyle.h> #include <QtQuickTemplates2/private/qquickapplicationwindow_p.h> #include "util.h" @@ -122,22 +123,73 @@ namespace QQuickVisualTestUtil component.loadUrl(testCase->testFileUrl(testFilePath)); QObject *rootObject = component.create(); cleanup.reset(rootObject); - QVERIFY2(rootObject, qPrintable(QString::fromLatin1("Failed to create window: %1").arg(component.errorString()))); + if (!rootObject) { + errorMessage = QString::fromUtf8("Failed to create window: %1").arg(component.errorString()).toUtf8(); + return; + } window = qobject_cast<QQuickWindow*>(rootObject); appWindow = qobject_cast<QQuickApplicationWindow*>(rootObject); - QVERIFY(window); - QVERIFY(!window->isVisible()); + if (!window) { + errorMessage = QString::fromUtf8("Root object %1 must be a QQuickWindow subclass").arg(QDebug::toString(window)).toUtf8(); + return; + } + + if (window->isVisible()) { + errorMessage = QString::fromUtf8("Expected window not to be visible, but it is").toUtf8(); + return; + } + + ready = true; + } + + // Return a C-style string instead of QString because that's what QTest uses for error messages, + // so it saves code at the calling site. + inline const char *failureMessage() const + { + return errorMessage.constData(); } QQmlEngine engine; QQmlComponent component; QScopedPointer<QObject> cleanup; - QQuickApplicationWindow *appWindow; - QQuickWindow *window; + QQuickApplicationWindow *appWindow = nullptr; + QQuickWindow *window = nullptr; + + bool ready = false; + // Store as a byte array so that we can return its raw data safely; + // using qPrintable() in failureMessage() will construct a throwaway QByteArray + // that is destroyed before the function returns. + QByteArray errorMessage; }; - void addTestRowForEachControl(QQmlEngine *engine, const QString &sourcePath, const QString &targetPath, const QStringList &skiplist = QStringList()); + struct QQuickStyleHelper + { + bool updateStyle(const QString &style) + { + // If it's not the first time a style has been set and the new style is not different, do nothing. + if (!currentStyle.isEmpty() && style == currentStyle) + return false; + + engine.reset(new QQmlEngine); + currentStyle = style; + qmlClearTypeRegistrations(); + QQuickStyle::setStyle(style); + + QQmlComponent component(engine.data()); + component.setData(QString("import QtQuick\nimport QtQuick.Controls\n Control { }").toUtf8(), QUrl()); + + return true; + } + + QString currentStyle; + QScopedPointer<QQmlEngine> engine; + }; + + typedef std::function<void(const QString &/*relativePath*/, const QUrl &/*absoluteUrl*/)> ForEachCallback; + + void forEachControl(QQmlEngine *engine, const QString &sourcePath, const QString &targetPath, const QStringList &skipList, ForEachCallback callback); + void addTestRowForEachControl(QQmlEngine *engine, const QString &sourcePath, const QString &targetPath, const QStringList &skipList = QStringList()); } #define QQUICK_VERIFY_POLISH(item) \ diff --git a/tests/auto/snippets/CMakeLists.txt b/tests/auto/snippets/CMakeLists.txt index f5d60a40..71bec579 100644 --- a/tests/auto/snippets/CMakeLists.txt +++ b/tests/auto/snippets/CMakeLists.txt @@ -19,6 +19,7 @@ qt_add_test(tst_snippets Qt::Gui Qt::Quick Qt::QuickControls2 + Qt::QuickControls2Private TESTDATA ${test_data} ) diff --git a/tests/auto/snippets/data/dependencies.qml b/tests/auto/snippets/data/dependencies.qml index 0fe2dbf0..8785d0b0 100644 --- a/tests/auto/snippets/data/dependencies.qml +++ b/tests/auto/snippets/data/dependencies.qml @@ -1,7 +1,7 @@ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls +import QtQuick.Controls.Material +import QtQuick.Controls.Universal Control { } diff --git a/tests/auto/snippets/snippets.pro b/tests/auto/snippets/snippets.pro index 6f366f23..9fa65055 100644 --- a/tests/auto/snippets/snippets.pro +++ b/tests/auto/snippets/snippets.pro @@ -1,7 +1,7 @@ TEMPLATE = app TARGET = tst_snippets -QT += quick quickcontrols2 testlib +QT += quick quickcontrols2 quickcontrols2-private testlib CONFIG += testcase macos:CONFIG -= app_bundle diff --git a/tests/auto/snippets/tst_snippets.cpp b/tests/auto/snippets/tst_snippets.cpp index 107759ce..1c420edb 100644 --- a/tests/auto/snippets/tst_snippets.cpp +++ b/tests/auto/snippets/tst_snippets.cpp @@ -36,7 +36,8 @@ #include <QtTest> #include <QtQuick> -#include <QtQuickControls2> +#include <QtQuickControls2/qquickstyle.h> +#include <QtQuickControls2/private/qquickstyle_p.h> typedef QPair<QString, QString> QStringPair; @@ -114,14 +115,14 @@ void tst_Snippets::verify() if (takeScreenshots) { const QString currentDataTag = QLatin1String(QTest::currentDataTag()); static const QString applicationStyle = QQuickStyle::name().isEmpty() ? "Default" : QQuickStyle::name(); - static const QStringList availableStyles = QQuickStyle::availableStyles(); + static const QStringList builtInStyles = QQuickStylePrivate::builtInStyles(); bool isStyledSnippet = false; const QString snippetStyle = currentDataTag.section("-", 1, 1); - for (const QString &availableStyle : availableStyles) { - if (!snippetStyle.compare(availableStyle, Qt::CaseInsensitive)) { - if (applicationStyle != availableStyle) - QSKIP(qPrintable(QString("%1 style specific snippet. Running with the %2 style.").arg(availableStyle, applicationStyle))); + for (const QString &style : builtInStyles) { + if (!snippetStyle.compare(style, Qt::CaseInsensitive)) { + if (applicationStyle != style) + QSKIP(qPrintable(QString("%1 style specific snippet. Running with the %2 style.").arg(style, applicationStyle))); isStyledSnippet = true; } } diff --git a/tests/auto/qquickstyleselector/CMakeLists.txt b/tests/auto/styleimports/CMakeLists.txt index 3a489ccf..b5910e92 100644 --- a/tests/auto/qquickstyleselector/CMakeLists.txt +++ b/tests/auto/styleimports/CMakeLists.txt @@ -1,7 +1,7 @@ -# Generated from qquickstyleselector.pro. +# Generated from styleimports.pro. ##################################################################### -## tst_qquickstyleselector Test: +## tst_styleimports Test: ##################################################################### # Collect test data @@ -10,12 +10,12 @@ file(GLOB_RECURSE test_data_glob data/*) list(APPEND test_data ${test_data_glob}) -qt_add_test(tst_qquickstyleselector +qt_add_test(tst_styleimports SOURCES ../shared/qtest_quickcontrols.h ../shared/util.cpp ../shared/util.h ../shared/visualtestutil.cpp ../shared/visualtestutil.h - tst_qquickstyleselector.cpp + tst_styleimports.cpp DEFINES QQC2_IMPORT_PATH=\\\"${CMAKE_CURRENT_SOURCE_DIR}/../../../src/imports\\\" PUBLIC_LIBRARIES @@ -34,9 +34,10 @@ qt_add_test(tst_qquickstyleselector # Resources: set(qmake_resourcestyle_resource_files "ResourceStyle/Button.qml" + "ResourceStyle/qmldir" ) -qt_add_resource(tst_qquickstyleselector "qmake_resourcestyle" +qt_add_resource(tst_styleimports "qmake_resourcestyle" PREFIX "/" FILES @@ -44,18 +45,18 @@ qt_add_resource(tst_qquickstyleselector "qmake_resourcestyle" ) -#### Keys ignored in scope 1:.:.:qquickstyleselector.pro:<TRUE>: -# OTHER_FILES = "data/*.qml" +#### Keys ignored in scope 1:.:.:styleimports.pro:<TRUE>: +# OTHER_FILES = "data/*.qml" "data/qmldir" "data/FileSystemStyle/*.qml" "data/FileSystemStyle/qmldir" "data/PlatformStyle/*.qml" "data/PlatformStyle/+linux/*.qml" "data/PlatformStyle/+macos/*.qml" "data/PlatformStyle/+windows/*.qml" "data/PlatformStyle/qmldir" ## Scopes: ##################################################################### -qt_extend_target(tst_qquickstyleselector CONDITION ANDROID OR IOS +qt_extend_target(tst_styleimports CONDITION ANDROID OR IOS DEFINES QT_QMLTEST_DATADIR=\\\":/data\\\" ) -qt_extend_target(tst_qquickstyleselector CONDITION NOT ANDROID AND NOT IOS +qt_extend_target(tst_styleimports CONDITION NOT ANDROID AND NOT IOS DEFINES QT_QMLTEST_DATADIR=\\\"${CMAKE_CURRENT_SOURCE_DIR}/data\\\" ) diff --git a/tests/auto/styleimports/ResourceStyle/Button.qml b/tests/auto/styleimports/ResourceStyle/Button.qml new file mode 100644 index 00000000..2b9e5bb7 --- /dev/null +++ b/tests/auto/styleimports/ResourceStyle/Button.qml @@ -0,0 +1,4 @@ +import QtQuick.Templates 2.15 as T +T.Button { + objectName: "ResourceStyle" +} diff --git a/tests/auto/styleimports/ResourceStyle/qmldir b/tests/auto/styleimports/ResourceStyle/qmldir new file mode 100644 index 00000000..4cb1a835 --- /dev/null +++ b/tests/auto/styleimports/ResourceStyle/qmldir @@ -0,0 +1,2 @@ +module ResourceStyle +Button 2.15 Button.qml diff --git a/tests/auto/styleimports/data/Action.qml b/tests/auto/styleimports/data/Action.qml new file mode 100644 index 00000000..62501292 --- /dev/null +++ b/tests/auto/styleimports/data/Action.qml @@ -0,0 +1,4 @@ +import QtQuick.Templates 2.15 as T +T.Action { + objectName: "data" +} diff --git a/tests/auto/styleimports/data/Button.qml b/tests/auto/styleimports/data/Button.qml new file mode 100644 index 00000000..f67719e3 --- /dev/null +++ b/tests/auto/styleimports/data/Button.qml @@ -0,0 +1,4 @@ +import QtQuick.Templates 2.15 as T +T.Button { + objectName: "data" +} diff --git a/tests/auto/styleimports/data/FileSystemStyle/Button.qml b/tests/auto/styleimports/data/FileSystemStyle/Button.qml new file mode 100644 index 00000000..a5719dd8 --- /dev/null +++ b/tests/auto/styleimports/data/FileSystemStyle/Button.qml @@ -0,0 +1,4 @@ +import QtQuick.Templates 2.15 as T +T.Button { + objectName: "FileSystemStyle" +} diff --git a/tests/auto/styleimports/data/FileSystemStyle/qmldir b/tests/auto/styleimports/data/FileSystemStyle/qmldir new file mode 100644 index 00000000..3c401588 --- /dev/null +++ b/tests/auto/styleimports/data/FileSystemStyle/qmldir @@ -0,0 +1,2 @@ +module FileSystemStyle +Button 2.15 Button.qml diff --git a/tests/auto/styleimports/data/Label.qml b/tests/auto/styleimports/data/Label.qml new file mode 100644 index 00000000..b6d434ad --- /dev/null +++ b/tests/auto/styleimports/data/Label.qml @@ -0,0 +1,4 @@ +import QtQuick.Templates 2.15 as T +T.Label { + objectName: "data" +} diff --git a/tests/auto/styleimports/data/PlatformStyle/+linux/Button.qml b/tests/auto/styleimports/data/PlatformStyle/+linux/Button.qml new file mode 100644 index 00000000..74e2a6f4 --- /dev/null +++ b/tests/auto/styleimports/data/PlatformStyle/+linux/Button.qml @@ -0,0 +1,4 @@ +import QtQuick.Templates 2.15 as T +T.Button { + objectName: "PlatformStyle/+linux" +} diff --git a/tests/auto/styleimports/data/PlatformStyle/+macos/Button.qml b/tests/auto/styleimports/data/PlatformStyle/+macos/Button.qml new file mode 100644 index 00000000..47fd788b --- /dev/null +++ b/tests/auto/styleimports/data/PlatformStyle/+macos/Button.qml @@ -0,0 +1,4 @@ +import QtQuick.Templates 2.15 as T +T.Button { + objectName: "PlatformStyle/+macos" +} diff --git a/tests/auto/styleimports/data/PlatformStyle/+windows/Button.qml b/tests/auto/styleimports/data/PlatformStyle/+windows/Button.qml new file mode 100644 index 00000000..e5b56653 --- /dev/null +++ b/tests/auto/styleimports/data/PlatformStyle/+windows/Button.qml @@ -0,0 +1,4 @@ +import QtQuick.Templates 2.15 as T +T.Button { + objectName: "PlatformStyle/+windows" +} diff --git a/tests/auto/styleimports/data/PlatformStyle/Button.qml b/tests/auto/styleimports/data/PlatformStyle/Button.qml new file mode 100644 index 00000000..fd1dc83d --- /dev/null +++ b/tests/auto/styleimports/data/PlatformStyle/Button.qml @@ -0,0 +1,4 @@ +import QtQuick.Templates 2.15 as T +T.Button { + objectName: "PlatformStyle/Button.qml" +} diff --git a/tests/auto/styleimports/data/PlatformStyle/qmldir b/tests/auto/styleimports/data/PlatformStyle/qmldir new file mode 100644 index 00000000..ce254517 --- /dev/null +++ b/tests/auto/styleimports/data/PlatformStyle/qmldir @@ -0,0 +1,2 @@ +module PlatformStyle +Button 2.15 Button.qml diff --git a/tests/auto/styleimports/data/platformSelectors.qml b/tests/auto/styleimports/data/platformSelectors.qml new file mode 100644 index 00000000..ba6af22c --- /dev/null +++ b/tests/auto/styleimports/data/platformSelectors.qml @@ -0,0 +1,64 @@ +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** BSD License Usage +** Alternatively, you may use this file under the terms of the BSD license +** as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of The Qt Company Ltd nor the names of its +** contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import QtQuick +import QtQuick.Controls + +ApplicationWindow { + title: "Test Application Window" + width: 400 + height: 400 + + property alias button: button + + Button { + id: button + } +} diff --git a/tests/auto/styleimports/data/qmldir b/tests/auto/styleimports/data/qmldir new file mode 100644 index 00000000..9e9df940 --- /dev/null +++ b/tests/auto/styleimports/data/qmldir @@ -0,0 +1,4 @@ +module data +Action 2.15 Action.qml +Button 2.15 Button.qml +Label 2.15 Label.qml diff --git a/tests/auto/styleimports/styleimports.pro b/tests/auto/styleimports/styleimports.pro new file mode 100644 index 00000000..774d93e9 --- /dev/null +++ b/tests/auto/styleimports/styleimports.pro @@ -0,0 +1,29 @@ +CONFIG += testcase +TARGET = tst_styleimports +SOURCES += tst_styleimports.cpp + +macos:CONFIG -= app_bundle + +QT += core-private gui-private qml-private quick-private quickcontrols2-private testlib + +include (../shared/util.pri) + +resourcestyle.prefix = / +resourcestyle.files += \ + $$PWD/ResourceStyle/Button.qml \ + $$PWD/ResourceStyle/qmldir +RESOURCES += resourcestyle + +TESTDATA = data/* + +OTHER_FILES += \ + data/*.qml \ + data/qmldir \ + data/FileSystemStyle/*.qml \ + data/FileSystemStyle/qmldir \ + data/PlatformStyle/*.qml \ + data/PlatformStyle/+linux/*.qml \ + data/PlatformStyle/+macos/*.qml \ + data/PlatformStyle/+windows/*.qml \ + data/PlatformStyle/qmldir + diff --git a/tests/auto/styleimports/tst_styleimports.cpp b/tests/auto/styleimports/tst_styleimports.cpp new file mode 100644 index 00000000..04acbb21 --- /dev/null +++ b/tests/auto/styleimports/tst_styleimports.cpp @@ -0,0 +1,205 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include <QtCore/qregularexpression.h> +#include <QtTest/qtest.h> +#include <QtQml/qqmlcomponent.h> +#include <QtQml/qqmlcontext.h> +#include <QtQml/qqmlapplicationengine.h> +#include <QtQml/qqmlengine.h> +#include <QtQuick/qquickwindow.h> +#include <QtQuickControls2/qquickstyle.h> +#include <QtQuickControls2/private/qquickstyle_p.h> + +#include "../shared/util.h" + +class tst_StyleImports : public QQmlDataTest +{ + Q_OBJECT + +private slots: + void initTestCase(); + + void cleanup(); + + void select_data(); + void select(); + + void platformSelectors(); +}; + +void tst_StyleImports::initTestCase() +{ + QQmlDataTest::initTestCase(); +} + +void tst_StyleImports::cleanup() +{ + qmlClearTypeRegistrations(); +} + +void tst_StyleImports::select_data() +{ + QTest::addColumn<QString>("file"); + QTest::addColumn<QString>("style"); + QTest::addColumn<QString>("fallback"); + QTest::addColumn<QString>("expected"); + + // Action.qml exists in the "data" style and the Default style. + QTest::newRow("control=Action,style=empty,fallback=empty") << "Action.qml" << "" << "" << "Default"; + QTest::newRow("control=Action,style=fs,fallback=empty") << "Action.qml" << "FileSystemStyle" << "" << "Default"; + QTest::newRow("control=Action,style=qrc,fallback=empty") << "Action.qml" << "ResourceStyle" << "" << "Default"; + QTest::newRow("control=Action,style=nosuch,fallback=empty") << "Action.qml" << "NoSuchStyle" << "" << "Default"; + QTest::newRow("control=Action,style=data,fallback=empty") << "Action.qml" << "data" << "" << "data"; + + QTest::newRow("control=Action,style=empty,fallback=mat") << "Action.qml" << "" << "Material" << ""; + QTest::newRow("control=Action,style=fs,fallback=mat") << "Action.qml" << "FileSystemStyle" << "Material" << "Default"; + QTest::newRow("control=Action,style=qrc,fallback=mat") << "Action.qml" << "ResourceStyle" << "Material" << "Default"; + QTest::newRow("control=Action,style=nosuch,fallback=mat") << "Action.qml" << "NoSuchStyle" << "Material" << "Default"; + QTest::newRow("control=Action,style=data,fallback=mat") << "Action.qml" << "data" << "Material" << "data"; + + // ScrollView.qml only exists in the Default style. + QTest::newRow("control=ScrollView,style=empty,fallback=empty") << "ScrollView.qml" << "" << "" << "Default"; + QTest::newRow("control=ScrollView,style=fs,fallback=empty") << "ScrollView.qml" << "FileSystemStyle" << "" << "Default"; + QTest::newRow("control=ScrollView,style=qrc,fallback=empty") << "ScrollView.qml" << "ResourceStyle" << "" << "Default"; + QTest::newRow("control=ScrollView,style=nosuch,fallback=empty") << "ScrollView.qml" << "NoSuchStyle" << "" << "Default"; + QTest::newRow("control=ScrollView,style=data,fallback=empty") << "ScrollView.qml" << "data" << "" << "Default"; + + QTest::newRow("control=ScrollView,style=empty,fallback=mat") << "ScrollView.qml" << "" << "Material" << "Default"; + QTest::newRow("control=ScrollView,style=fs,fallback=mat") << "ScrollView.qml" << "FileSystemStyle" << "Material" << "Default"; + QTest::newRow("control=ScrollView,style=qrc,fallback=mat") << "ScrollView.qml" << "ResourceStyle" << "Material" << "Default"; + QTest::newRow("control=ScrollView,style=nosuch,fallback=mat") << "ScrollView.qml" << "NoSuchStyle" << "Material" << "Default"; + QTest::newRow("control=ScrollView,style=data,fallback=mat") << "ScrollView.qml" << "data" << "Material" << "Default"; + + // Label.qml exists in the "data", Default and Material styles. + QTest::newRow("control=Label,style=none,fallback=none") << "Label.qml" << "" << "" << "Default"; + QTest::newRow("control=Label,style=fs,fallback=none") << "Label.qml" << "FileSystemStyle" << "" << "Default"; + QTest::newRow("control=Label,style=qrc,fallback=none") << "Label.qml" << "ResourceStyle" << "" << "Default"; + QTest::newRow("control=Label,style=nosuch,fallback=none") << "Label.qml" << "NoSuchStyle" << "" << "Default"; + QTest::newRow("control=Label,style=data,fallback=none") << "Label.qml" << "data" << "" << "data"; + + QTest::newRow("control=Label,style=none,fallback=mat") << "Label.qml" << "" << "Material" << "Default"; + QTest::newRow("control=Label,style=fs,fallback=mat") << "Label.qml" << "FileSystemStyle" << "Material" << "Default"; + QTest::newRow("control=Label,style=qrc,fallback=mat") << "Label.qml" << "ResourceStyle" << "Material" << "Default"; + QTest::newRow("control=Label,style=nosuch,fallback=mat") << "Label.qml" << "NoSuchStyle" << "Material" << "Default"; + QTest::newRow("control=Label,style=data,fallback=mat") << "Label.qml" << "data" << "Material" << "data"; + + // Button.qml exists in all styles including the fs and qrc styles + QTest::newRow("control=Button,style=none,fallback=none") << "Button.qml" << "" << "" << "Default"; + QTest::newRow("control=Button,style=fs,fallback=none") << "Button.qml" << "FileSystemStyle" << "" << "FileSystemStyle"; + QTest::newRow("control=Button,style=qrc,fallback=none") << "Button.qml" << "ResourceStyle" << "" << "ResourceStyle"; + QTest::newRow("control=Button,style=nosuch,fallback=none") << "Button.qml" << "NoSuchStyle" << "" << "Default"; + QTest::newRow("control=Button,style=data,fallback=none") << "Button.qml" << "data" << "" << "data"; + + QTest::newRow("control=Button,style=none,fallback=mat") << "Button.qml" << "" << "Material" << "Default"; + QTest::newRow("control=Button,style=fs,fallback=mat") << "Button.qml" << "FileSystemStyle" << "Material" << "FileSystemStyle"; + QTest::newRow("control=Button,style=qrc,fallback=mat") << "Button.qml" << "ResourceStyle" << "Material" << "ResourceStyle"; + QTest::newRow("control=Button,style=nosuch,fallback=mat") << "Button.qml" << "NoSuchStyle" << "Material" << "Default"; + QTest::newRow("control=Button,style=data,fallback=mat") << "Button.qml" << "data" << "Material" << "data"; +} + +void tst_StyleImports::select() +{ + QFETCH(QString, file); + QFETCH(QString, style); + QFETCH(QString, fallback); + QFETCH(QString, expected); + + // In Qt 5, there were several accepted forms for style names. + // In Qt 6, the only accepted form is the base name of the style directory. + const bool invalidStyleName = style.contains(QLatin1Char('/')); + if (invalidStyleName) + QTest::ignoreMessage(QtWarningMsg, + "Style names must not contain paths; see the \"Definition of a Style\" documentation for more information"); + QQuickStyle::setStyle(style); + QQuickStyle::setFallbackStyle(fallback); + + QQmlEngine engine; + engine.addImportPath(directory()); + engine.addImportPath(dataDirectory()); + QQmlComponent component(&engine); + const QString controlName = file.mid(0, file.indexOf(QLatin1Char('.'))); + component.setData(QString::fromLatin1("import QtQuick 2.15; import QtQuick.Controls 2.15; %1 { }").arg(controlName).toUtf8(), QUrl()); + + const bool nonExistentStyle = style == QLatin1String("NoSuchStyle"); + if (nonExistentStyle) + QTest::ignoreMessage(QtWarningMsg, "QQmlComponent: Component is not ready"); + QScopedPointer<QObject> object(component.create()); + if (nonExistentStyle) { + QVERIFY(object.isNull()); + return; + } + + QVERIFY2(!object.isNull(), qPrintable(component.errorString())); + + // TODO: test built-in styles below too + // We can't check for the attached style object since that API is in a plugin, + // and it's not possible to use e.g. the baseUrl of the QQmlContext + // nor the metaObject to test it either. + + if (!QQuickStylePrivate::builtInStyles().contains(expected)) { + // We're expecting a custom style. + QCOMPARE(object->objectName(), expected); + } +} + +void tst_StyleImports::platformSelectors() +{ + QQuickStyle::setStyle(QLatin1String("PlatformStyle")); + + QQmlApplicationEngine engine; + engine.addImportPath(dataDirectory()); + engine.load(testFileUrl("platformSelectors.qml")); + QQuickWindow *window = qobject_cast<QQuickWindow*>(engine.rootObjects().first()); + QVERIFY(window); + + QObject *button = window->property("button").value<QObject*>(); + QVERIFY(button); + +#if defined(Q_OS_LINUX) + QCOMPARE(button->objectName(), "PlatformStyle/+linux"); +#elif defined(Q_OS_MACOS) + QCOMPARE(button->objectName(), "PlatformStyle/+macos"); +#elif defined(Q_OS_WIN) + QCOMPARE(button->objectName(), "PlatformStyle/+windows"); +#else + QCOMPARE(button->objectName(), "PlatformStyle/Button.qml"); +#endif +} + +QTEST_MAIN(tst_StyleImports) + +#include "tst_styleimports.moc" diff --git a/tests/auto/translation/CMakeLists.txt b/tests/auto/translation/CMakeLists.txt index 50e10171..5b9c576d 100644 --- a/tests/auto/translation/CMakeLists.txt +++ b/tests/auto/translation/CMakeLists.txt @@ -24,6 +24,7 @@ qt_add_test(tst_translation Qt::GuiPrivate Qt::QmlPrivate Qt::QuickControls2 + Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private Qt::TestPrivate diff --git a/tests/auto/translation/data/comboBox.qml b/tests/auto/translation/data/comboBox.qml index 8bb8ed6f..cba1cf0c 100644 --- a/tests/auto/translation/data/comboBox.qml +++ b/tests/auto/translation/data/comboBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.13 -import QtQuick.Controls 2.13 +import QtQuick +import QtQuick.Controls ComboBox { objectName: "comboBox" diff --git a/tests/auto/translation/data/dialogButtonBox.qml b/tests/auto/translation/data/dialogButtonBox.qml index 03a3ae0e..fd8f9548 100644 --- a/tests/auto/translation/data/dialogButtonBox.qml +++ b/tests/auto/translation/data/dialogButtonBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.13 -import QtQuick.Controls 2.13 +import QtQuick +import QtQuick.Controls Item { property Dialog dialog: Dialog { diff --git a/tests/auto/translation/data/dialogButtonBoxWithCustomButtons.qml b/tests/auto/translation/data/dialogButtonBoxWithCustomButtons.qml index 6f046cf1..bf0fb512 100644 --- a/tests/auto/translation/data/dialogButtonBoxWithCustomButtons.qml +++ b/tests/auto/translation/data/dialogButtonBoxWithCustomButtons.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.14 -import QtQuick.Controls 2.14 +import QtQuick +import QtQuick.Controls Item { property Dialog dialog: Dialog { diff --git a/tests/benchmarks/creationtime/CMakeLists.txt b/tests/benchmarks/creationtime/CMakeLists.txt index 1162bace..7979a42f 100644 --- a/tests/benchmarks/creationtime/CMakeLists.txt +++ b/tests/benchmarks/creationtime/CMakeLists.txt @@ -19,6 +19,7 @@ qt_add_test(tst_creationtime Qt::Qml Qt::QmlPrivate Qt::QuickControls2 + Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private Qt::TestPrivate diff --git a/tests/benchmarks/creationtime/creationtime.pro b/tests/benchmarks/creationtime/creationtime.pro index a594027e..613cf60d 100644 --- a/tests/benchmarks/creationtime/creationtime.pro +++ b/tests/benchmarks/creationtime/creationtime.pro @@ -1,7 +1,7 @@ TEMPLATE = app TARGET = tst_creationtime -QT += qml testlib +QT += qml testlib quickcontrols2 CONFIG += testcase macos:CONFIG -= app_bundle diff --git a/tests/benchmarks/creationtime/data/dependencies.qml b/tests/benchmarks/creationtime/data/dependencies.qml index 3ae7511b..3b847617 100644 --- a/tests/benchmarks/creationtime/data/dependencies.qml +++ b/tests/benchmarks/creationtime/data/dependencies.qml @@ -1,8 +1,8 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Fusion +import QtQuick.Controls.Imagine +import QtQuick.Controls.Material +import QtQuick.Controls.Universal Control { } diff --git a/tests/benchmarks/creationtime/tst_creationtime.cpp b/tests/benchmarks/creationtime/tst_creationtime.cpp index 3ebd9f2c..d186dc83 100644 --- a/tests/benchmarks/creationtime/tst_creationtime.cpp +++ b/tests/benchmarks/creationtime/tst_creationtime.cpp @@ -34,8 +34,10 @@ ** ****************************************************************************/ -#include <QtQml> +#include <QtCore/qscopedpointer.h> #include <QtTest> +#include <QtQml> +#include <QtQuickControls2/qquickstyle.h> #include "../../auto/shared/visualtestutil.h" @@ -46,10 +48,11 @@ class tst_CreationTime : public QObject Q_OBJECT private slots: + void initTestCase(); void init(); - void controls(); - void controls_data(); + void defaultStyle(); + void defaultStyle_data(); void fusion(); void fusion_data(); @@ -64,17 +67,29 @@ private slots: void universal_data(); private: - QQmlEngine engine; + QQuickStyleHelper styleHelper; }; +void tst_CreationTime::initTestCase() +{ + styleHelper.engine.reset(new QQmlEngine); +} + void tst_CreationTime::init() { - engine.clearComponentCache(); + styleHelper.engine->clearComponentCache(); } -static void doBenchmark(QQmlEngine *engine, const QUrl &url) +static void doBenchmark(QQuickStyleHelper &styleHelper, const QUrl &url) { - QQmlComponent component(engine); + const QString tagStr = QString::fromLatin1(QTest::currentDataTag()); + QStringList styleAndFileName = tagStr.split('/'); + QCOMPARE(styleAndFileName.size(), 2); + QString style = styleAndFileName.first(); + style[0] = style.at(0).toUpper(); + styleHelper.updateStyle(style); + + QQmlComponent component(styleHelper.engine.data()); component.loadUrl(url); QObjectList objects; @@ -87,64 +102,64 @@ static void doBenchmark(QQmlEngine *engine, const QUrl &url) qDeleteAll(objects); } -void tst_CreationTime::controls() +void tst_CreationTime::defaultStyle() { QFETCH(QUrl, url); - doBenchmark(&engine, url); + doBenchmark(styleHelper, url); } -void tst_CreationTime::controls_data() +void tst_CreationTime::defaultStyle_data() { QTest::addColumn<QUrl>("url"); - addTestRowForEachControl(&engine, "controls", "QtQuick/Controls.2", QStringList() << "ApplicationWindow"); + addTestRowForEachControl(styleHelper.engine.data(), "controls/default", "QtQuick/Controls/Default", QStringList() << "ApplicationWindow"); } void tst_CreationTime::fusion() { QFETCH(QUrl, url); - doBenchmark(&engine, url); + doBenchmark(styleHelper, url); } void tst_CreationTime::fusion_data() { QTest::addColumn<QUrl>("url"); - addTestRowForEachControl(&engine, "controls/fusion", "QtQuick/Controls.2/Fusion", QStringList() << "ApplicationWindow" << "ButtonPanel" << "CheckIndicator" << "RadioIndicator" << "SliderGroove" << "SliderHandle" << "SwitchIndicator"); + addTestRowForEachControl(styleHelper.engine.data(), "controls/fusion", "QtQuick/Controls/Fusion", QStringList() << "ApplicationWindow" << "ButtonPanel" << "CheckIndicator" << "RadioIndicator" << "SliderGroove" << "SliderHandle" << "SwitchIndicator"); } void tst_CreationTime::imagine() { QFETCH(QUrl, url); - doBenchmark(&engine, url); + doBenchmark(styleHelper, url); } void tst_CreationTime::imagine_data() { QTest::addColumn<QUrl>("url"); - addTestRowForEachControl(&engine, "controls/imagine", "QtQuick/Controls.2/Imagine", QStringList() << "ApplicationWindow"); + addTestRowForEachControl(styleHelper.engine.data(), "controls/imagine", "QtQuick/Controls/Imagine", QStringList() << "ApplicationWindow"); } void tst_CreationTime::material() { QFETCH(QUrl, url); - doBenchmark(&engine, url); + doBenchmark(styleHelper, url); } void tst_CreationTime::material_data() { QTest::addColumn<QUrl>("url"); - addTestRowForEachControl(&engine, "controls/material", "QtQuick/Controls.2/Material", QStringList() << "ApplicationWindow" << "Ripple" << "SliderHandle" << "CheckIndicator" << "RadioIndicator" << "SwitchIndicator" << "BoxShadow" << "ElevationEffect" << "CursorDelegate"); + addTestRowForEachControl(styleHelper.engine.data(), "controls/material", "QtQuick/Controls/Material", QStringList() << "ApplicationWindow" << "Ripple" << "SliderHandle" << "CheckIndicator" << "RadioIndicator" << "SwitchIndicator" << "BoxShadow" << "ElevationEffect" << "CursorDelegate"); } void tst_CreationTime::universal() { QFETCH(QUrl, url); - doBenchmark(&engine, url); + doBenchmark(styleHelper, url); } void tst_CreationTime::universal_data() { QTest::addColumn<QUrl>("url"); - addTestRowForEachControl(&engine, "controls/universal", "QtQuick/Controls.2/Universal", QStringList() << "ApplicationWindow" << "CheckIndicator" << "RadioIndicator" << "SwitchIndicator"); + addTestRowForEachControl(styleHelper.engine.data(), "controls/universal", "QtQuick/Controls/Universal", QStringList() << "ApplicationWindow" << "CheckIndicator" << "RadioIndicator" << "SwitchIndicator"); } QTEST_MAIN(tst_CreationTime) diff --git a/tests/benchmarks/objectcount/CMakeLists.txt b/tests/benchmarks/objectcount/CMakeLists.txt index 21ea537d..909fa988 100644 --- a/tests/benchmarks/objectcount/CMakeLists.txt +++ b/tests/benchmarks/objectcount/CMakeLists.txt @@ -19,6 +19,7 @@ qt_add_test(tst_objectcount Qt::QmlPrivate Qt::Quick Qt::QuickControls2 + Qt::QuickControls2Private Qt::QuickPrivate Qt::QuickTemplates2Private Qt::TestPrivate diff --git a/tests/benchmarks/objectcount/data/dependencies.qml b/tests/benchmarks/objectcount/data/dependencies.qml index 3ae7511b..3b847617 100644 --- a/tests/benchmarks/objectcount/data/dependencies.qml +++ b/tests/benchmarks/objectcount/data/dependencies.qml @@ -1,8 +1,8 @@ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Fusion 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Fusion +import QtQuick.Controls.Imagine +import QtQuick.Controls.Material +import QtQuick.Controls.Universal Control { } diff --git a/tests/benchmarks/objectcount/tst_objectcount.cpp b/tests/benchmarks/objectcount/tst_objectcount.cpp index c37469c3..cb5a0956 100644 --- a/tests/benchmarks/objectcount/tst_objectcount.cpp +++ b/tests/benchmarks/objectcount/tst_objectcount.cpp @@ -93,11 +93,11 @@ void tst_ObjectCount::cleanup() static void initTestRows(QQmlEngine *engine) { - addTestRowForEachControl(engine, "controls", "QtQuick/Controls.2"); - addTestRowForEachControl(engine, "controls/fusion", "QtQuick/Controls.2/Fusion", QStringList() << "ButtonPanel" << "CheckIndicator" << "RadioIndicator" << "SliderGroove" << "SliderHandle" << "SwitchIndicator"); - addTestRowForEachControl(engine, "controls/imagine", "QtQuick/Controls.2/Imagine"); - addTestRowForEachControl(engine, "controls/material", "QtQuick/Controls.2/Material", QStringList() << "Ripple" << "SliderHandle" << "CheckIndicator" << "RadioIndicator" << "SwitchIndicator" << "BoxShadow" << "ElevationEffect" << "CursorDelegate"); - addTestRowForEachControl(engine, "controls/universal", "QtQuick/Controls.2/Universal", QStringList() << "CheckIndicator" << "RadioIndicator" << "SwitchIndicator"); + addTestRowForEachControl(engine, "controls/default", "QtQuick/Controls/Default"); + addTestRowForEachControl(engine, "controls/fusion", "QtQuick/Controls/Fusion", QStringList() << "ButtonPanel" << "CheckIndicator" << "RadioIndicator" << "SliderGroove" << "SliderHandle" << "SwitchIndicator"); + addTestRowForEachControl(engine, "controls/imagine", "QtQuick/Controls/Imagine"); + addTestRowForEachControl(engine, "controls/material", "QtQuick/Controls/Material", QStringList() << "Ripple" << "SliderHandle" << "CheckIndicator" << "RadioIndicator" << "SwitchIndicator" << "BoxShadow" << "ElevationEffect" << "CursorDelegate"); + addTestRowForEachControl(engine, "controls/universal", "QtQuick/Controls/Universal", QStringList() << "CheckIndicator" << "RadioIndicator" << "SwitchIndicator"); } template <typename T> diff --git a/tests/benchmarks/qmlbench/creation/delegates_abstractbutton.qml b/tests/benchmarks/qmlbench/creation/delegates_abstractbutton.qml index 02074cb0..87b137fb 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_abstractbutton.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_abstractbutton.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_busyindicator.qml b/tests/benchmarks/qmlbench/creation/delegates_busyindicator.qml index c6e53bcf..bc0be402 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_busyindicator.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_busyindicator.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_button.qml b/tests/benchmarks/qmlbench/creation/delegates_button.qml index 5e6cc12f..9505ebf0 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_button.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_button.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_checkbox.qml b/tests/benchmarks/qmlbench/creation/delegates_checkbox.qml index 73b18865..67d9e382 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_checkbox.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_checkbox.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_checkdelegate.qml b/tests/benchmarks/qmlbench/creation/delegates_checkdelegate.qml index b4fde74a..bd7b64cc 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_checkdelegate.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_checkdelegate.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_combobox.qml b/tests/benchmarks/qmlbench/creation/delegates_combobox.qml index 6519fc77..f8552b74 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_combobox.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_combobox.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_container.qml b/tests/benchmarks/qmlbench/creation/delegates_container.qml index eb684a74..238e95e3 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_container.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_container.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_control.qml b/tests/benchmarks/qmlbench/creation/delegates_control.qml index da4263dc..20f09477 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_control.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_control.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_delaybutton.qml b/tests/benchmarks/qmlbench/creation/delegates_delaybutton.qml index ae8aa0b7..05ec8748 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_delaybutton.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_delaybutton.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_dial.qml b/tests/benchmarks/qmlbench/creation/delegates_dial.qml index 6fd33c70..de742c7b 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_dial.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_dial.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_dialog.qml b/tests/benchmarks/qmlbench/creation/delegates_dialog.qml index 36b1fbe1..686149f7 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_dialog.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_dialog.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_dialogbuttonbox.qml b/tests/benchmarks/qmlbench/creation/delegates_dialogbuttonbox.qml index e5fac0eb..f13d65c5 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_dialogbuttonbox.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_dialogbuttonbox.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_drawer.qml b/tests/benchmarks/qmlbench/creation/delegates_drawer.qml index 9c1e74b5..3f7290a4 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_drawer.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_drawer.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_frame.qml b/tests/benchmarks/qmlbench/creation/delegates_frame.qml index 27852898..2d3c9a66 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_frame.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_frame.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_groupbox.qml b/tests/benchmarks/qmlbench/creation/delegates_groupbox.qml index ccfe2927..3696f847 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_groupbox.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_groupbox.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_itemdelegate.qml b/tests/benchmarks/qmlbench/creation/delegates_itemdelegate.qml index 8c7f67dd..07128da1 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_itemdelegate.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_itemdelegate.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_label.qml b/tests/benchmarks/qmlbench/creation/delegates_label.qml index 3c3e76b1..788006a4 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_label.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_label.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_menu.qml b/tests/benchmarks/qmlbench/creation/delegates_menu.qml index 1566f40a..fd8e53b4 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_menu.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_menu.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_menuitem.qml b/tests/benchmarks/qmlbench/creation/delegates_menuitem.qml index 5c700707..6732bc18 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_menuitem.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_menuitem.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_menuseparator.qml b/tests/benchmarks/qmlbench/creation/delegates_menuseparator.qml index 59abe333..8effa173 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_menuseparator.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_menuseparator.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_page.qml b/tests/benchmarks/qmlbench/creation/delegates_page.qml index 9c9124dc..f9d06b38 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_page.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_page.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_pageindicator.qml b/tests/benchmarks/qmlbench/creation/delegates_pageindicator.qml index 37eee037..9b5a6918 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_pageindicator.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_pageindicator.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_pane.qml b/tests/benchmarks/qmlbench/creation/delegates_pane.qml index e811df93..a391f695 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_pane.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_pane.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_popup.qml b/tests/benchmarks/qmlbench/creation/delegates_popup.qml index 9effd917..c2cdaab5 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_popup.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_popup.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_progressbar.qml b/tests/benchmarks/qmlbench/creation/delegates_progressbar.qml index 4bb773f2..d50d9d26 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_progressbar.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_progressbar.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_radiobutton.qml b/tests/benchmarks/qmlbench/creation/delegates_radiobutton.qml index 3236835f..f596e852 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_radiobutton.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_radiobutton.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_radiodelegate.qml b/tests/benchmarks/qmlbench/creation/delegates_radiodelegate.qml index b6ffe174..7f573466 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_radiodelegate.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_radiodelegate.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_rangeslider.qml b/tests/benchmarks/qmlbench/creation/delegates_rangeslider.qml index a595bd7a..725cab29 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_rangeslider.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_rangeslider.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_roundbutton.qml b/tests/benchmarks/qmlbench/creation/delegates_roundbutton.qml index 572bf5e9..0337a66d 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_roundbutton.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_roundbutton.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_scrollbar.qml b/tests/benchmarks/qmlbench/creation/delegates_scrollbar.qml index 2e6fc1fd..2635240f 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_scrollbar.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_scrollbar.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_scrollindicator.qml b/tests/benchmarks/qmlbench/creation/delegates_scrollindicator.qml index fd9e52e6..4e2b90a3 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_scrollindicator.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_scrollindicator.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_scrollview.qml b/tests/benchmarks/qmlbench/creation/delegates_scrollview.qml index 0daa44dd..b5f155cb 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_scrollview.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_scrollview.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_slider.qml b/tests/benchmarks/qmlbench/creation/delegates_slider.qml index 44dac819..0ef3b3fa 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_slider.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_slider.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_spinbox.qml b/tests/benchmarks/qmlbench/creation/delegates_spinbox.qml index 90695102..9120a921 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_spinbox.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_spinbox.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_stackview.qml b/tests/benchmarks/qmlbench/creation/delegates_stackview.qml index e2644aef..cb6cee10 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_stackview.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_stackview.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_swipedelegate.qml b/tests/benchmarks/qmlbench/creation/delegates_swipedelegate.qml index 752dc37b..5147bbb6 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_swipedelegate.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_swipedelegate.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_swipeview.qml b/tests/benchmarks/qmlbench/creation/delegates_swipeview.qml index 0a922343..b263e620 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_swipeview.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_swipeview.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_switch.qml b/tests/benchmarks/qmlbench/creation/delegates_switch.qml index 9381342d..79cc48e3 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_switch.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_switch.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_switchdelegate.qml b/tests/benchmarks/qmlbench/creation/delegates_switchdelegate.qml index f41281fa..f6f8a7df 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_switchdelegate.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_switchdelegate.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_tabbar.qml b/tests/benchmarks/qmlbench/creation/delegates_tabbar.qml index 95bb7291..37f6a463 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_tabbar.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_tabbar.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_tabbutton.qml b/tests/benchmarks/qmlbench/creation/delegates_tabbutton.qml index dc549a3a..27442a7d 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_tabbutton.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_tabbutton.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_textarea.qml b/tests/benchmarks/qmlbench/creation/delegates_textarea.qml index ab383ad4..88454c0b 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_textarea.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_textarea.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_textfield.qml b/tests/benchmarks/qmlbench/creation/delegates_textfield.qml index 32f31fe8..eb279724 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_textfield.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_textfield.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_toolbutton.qml b/tests/benchmarks/qmlbench/creation/delegates_toolbutton.qml index 38e9a59f..7dcd85a3 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_toolbutton.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_toolbutton.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_toolseparator.qml b/tests/benchmarks/qmlbench/creation/delegates_toolseparator.qml index e3db91f8..48cdd352 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_toolseparator.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_toolseparator.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_tooltip.qml b/tests/benchmarks/qmlbench/creation/delegates_tooltip.qml index f8e7a283..85e86494 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_tooltip.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_tooltip.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/benchmarks/qmlbench/creation/delegates_tumbler.qml b/tests/benchmarks/qmlbench/creation/delegates_tumbler.qml index 4af07b7f..da747e23 100644 --- a/tests/benchmarks/qmlbench/creation/delegates_tumbler.qml +++ b/tests/benchmarks/qmlbench/creation/delegates_tumbler.qml @@ -1,6 +1,6 @@ -import QtQuick 2.12 -import QmlBench 1.0 -import QtQuick.Controls 2.12 +import QtQuick +import QmlBench +import QtQuick.Controls CreationBenchmark { id: root diff --git a/tests/manual/buttons/ButtonLoader.qml b/tests/manual/buttons/ButtonLoader.qml index 574997e1..ecbf637b 100644 --- a/tests/manual/buttons/ButtonLoader.qml +++ b/tests/manual/buttons/ButtonLoader.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { id: root diff --git a/tests/manual/buttons/buttons.qml b/tests/manual/buttons/buttons.qml index 0848038d..26969440 100644 --- a/tests/manual/buttons/buttons.qml +++ b/tests/manual/buttons/buttons.qml @@ -47,10 +47,10 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Material 2.12 -import QtQuick.Controls.Universal 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Material +import QtQuick.Controls.Universal ApplicationWindow { id: window diff --git a/tests/manual/dialogs/CustomDialog.qml b/tests/manual/dialogs/CustomDialog.qml index 0e86fbb8..fb191c9f 100644 --- a/tests/manual/dialogs/CustomDialog.qml +++ b/tests/manual/dialogs/CustomDialog.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick.Controls 2.12 +import QtQuick.Controls Dialog { id: root diff --git a/tests/manual/dialogs/DialogLabel.qml b/tests/manual/dialogs/DialogLabel.qml index c4775aea..3a1533eb 100644 --- a/tests/manual/dialogs/DialogLabel.qml +++ b/tests/manual/dialogs/DialogLabel.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick.Controls 2.12 +import QtQuick.Controls Label { x: dialog.x + (dialog.width - width) / 2 diff --git a/tests/manual/dialogs/Marker.qml b/tests/manual/dialogs/Marker.qml index 439b50f2..cd93d055 100644 --- a/tests/manual/dialogs/Marker.qml +++ b/tests/manual/dialogs/Marker.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick Rectangle { anchors.fill: parent diff --git a/tests/manual/dialogs/dialogs.qml b/tests/manual/dialogs/dialogs.qml index a3048c34..e7c8c2e1 100644 --- a/tests/manual/dialogs/dialogs.qml +++ b/tests/manual/dialogs/dialogs.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Layouts 1.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts ApplicationWindow { id: window diff --git a/tests/manual/fonts/main.qml b/tests/manual/fonts/main.qml index 4182a654..8d3464a0 100644 --- a/tests/manual/fonts/main.qml +++ b/tests/manual/fonts/main.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Templates 2.12 as T -import QtQuick.Layouts 1.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Templates as T +import QtQuick.Layouts ApplicationWindow { visible: true diff --git a/tests/manual/gifs/data/qtquickcontrols2-busyindicator.qml b/tests/manual/gifs/data/qtquickcontrols2-busyindicator.qml index b0504cd7..37dc5c7f 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-busyindicator.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-busyindicator.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: busyIndicator.implicitWidth diff --git a/tests/manual/gifs/data/qtquickcontrols2-button-flat.qml b/tests/manual/gifs/data/qtquickcontrols2-button-flat.qml index c52c0391..dd07926f 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-button-flat.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-button-flat.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: button.width diff --git a/tests/manual/gifs/data/qtquickcontrols2-button-highlighted.qml b/tests/manual/gifs/data/qtquickcontrols2-button-highlighted.qml index 6398df50..4af50d6b 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-button-highlighted.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-button-highlighted.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: button.width diff --git a/tests/manual/gifs/data/qtquickcontrols2-button.qml b/tests/manual/gifs/data/qtquickcontrols2-button.qml index 6361174f..8336855c 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-button.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-button.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: button.width diff --git a/tests/manual/gifs/data/qtquickcontrols2-checkbox-tristate.qml b/tests/manual/gifs/data/qtquickcontrols2-checkbox-tristate.qml index b6f31682..b0bee6cd 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-checkbox-tristate.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-checkbox-tristate.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Window 2.0 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts +import QtQuick.Window Window { width: column.implicitWidth diff --git a/tests/manual/gifs/data/qtquickcontrols2-checkbox.qml b/tests/manual/gifs/data/qtquickcontrols2-checkbox.qml index 1e1348f5..46cdc073 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-checkbox.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-checkbox.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Window 2.0 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts +import QtQuick.Window Window { width: column.implicitWidth diff --git a/tests/manual/gifs/data/qtquickcontrols2-checkdelegate-tristate.qml b/tests/manual/gifs/data/qtquickcontrols2-checkdelegate-tristate.qml index 767f80dc..585aea27 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-checkdelegate-tristate.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-checkdelegate-tristate.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Window 2.0 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts +import QtQuick.Window Window { id: window diff --git a/tests/manual/gifs/data/qtquickcontrols2-checkdelegate.qml b/tests/manual/gifs/data/qtquickcontrols2-checkdelegate.qml index d222b21f..704a0601 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-checkdelegate.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-checkdelegate.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: column.implicitWidth diff --git a/tests/manual/gifs/data/qtquickcontrols2-combobox.qml b/tests/manual/gifs/data/qtquickcontrols2-combobox.qml index bd46b54d..274f2efe 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-combobox.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-combobox.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Window 2.0 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts +import QtQuick.Window Window { width: 140 diff --git a/tests/manual/gifs/data/qtquickcontrols2-delaybutton.qml b/tests/manual/gifs/data/qtquickcontrols2-delaybutton.qml index b0feddcb..8eaa3df2 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-delaybutton.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-delaybutton.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: button.width diff --git a/tests/manual/gifs/data/qtquickcontrols2-dial-no-wrap.qml b/tests/manual/gifs/data/qtquickcontrols2-dial-no-wrap.qml index 04f167a2..3b9b1466 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-dial-no-wrap.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-dial-no-wrap.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: dial.implicitWidth + 20 diff --git a/tests/manual/gifs/data/qtquickcontrols2-dial-wrap.qml b/tests/manual/gifs/data/qtquickcontrols2-dial-wrap.qml index e00139f0..317d81d2 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-dial-wrap.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-dial-wrap.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: dial.implicitWidth + 20 diff --git a/tests/manual/gifs/data/qtquickcontrols2-drawer.qml b/tests/manual/gifs/data/qtquickcontrols2-drawer.qml index 690dfdc4..32efcba8 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-drawer.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-drawer.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Window 2.0 +import QtQuick +import QtQuick.Controls +import QtQuick.Window ApplicationWindow { id: window diff --git a/tests/manual/gifs/data/qtquickcontrols2-itemdelegate.qml b/tests/manual/gifs/data/qtquickcontrols2-itemdelegate.qml index b0188edb..1ef9e2c0 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-itemdelegate.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-itemdelegate.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: column.implicitWidth diff --git a/tests/manual/gifs/data/qtquickcontrols2-menu.qml b/tests/manual/gifs/data/qtquickcontrols2-menu.qml index 39403e06..80f2c86d 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-menu.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-menu.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls // TODO: restore and finish https://codereview.qt-project.org/#/c/123948/ ApplicationWindow { diff --git a/tests/manual/gifs/data/qtquickcontrols2-progressbar-indeterminate.qml b/tests/manual/gifs/data/qtquickcontrols2-progressbar-indeterminate.qml index 6d2c50b2..4679ea03 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-progressbar-indeterminate.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-progressbar-indeterminate.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: progressBar.implicitWidth diff --git a/tests/manual/gifs/data/qtquickcontrols2-progressbar.qml b/tests/manual/gifs/data/qtquickcontrols2-progressbar.qml index a8f751ce..994af450 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-progressbar.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-progressbar.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: progressBar.implicitWidth diff --git a/tests/manual/gifs/data/qtquickcontrols2-radiobutton.qml b/tests/manual/gifs/data/qtquickcontrols2-radiobutton.qml index 1e640ced..fec7ec9b 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-radiobutton.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-radiobutton.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Window 2.0 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts +import QtQuick.Window Window { width: column.implicitWidth diff --git a/tests/manual/gifs/data/qtquickcontrols2-radiodelegate.qml b/tests/manual/gifs/data/qtquickcontrols2-radiodelegate.qml index eaa1ff7a..a00f3209 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-radiodelegate.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-radiodelegate.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: column.implicitWidth diff --git a/tests/manual/gifs/data/qtquickcontrols2-rangeslider.qml b/tests/manual/gifs/data/qtquickcontrols2-rangeslider.qml index b30711b4..c648f998 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-rangeslider.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-rangeslider.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: slider.implicitWidth diff --git a/tests/manual/gifs/data/qtquickcontrols2-scrollbar-snap.qml b/tests/manual/gifs/data/qtquickcontrols2-scrollbar-snap.qml index 27b6b280..cc4d6dc2 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-scrollbar-snap.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-scrollbar-snap.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: 100 diff --git a/tests/manual/gifs/data/qtquickcontrols2-scrollbar.qml b/tests/manual/gifs/data/qtquickcontrols2-scrollbar.qml index 573c408b..e838673a 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-scrollbar.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-scrollbar.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: 100 diff --git a/tests/manual/gifs/data/qtquickcontrols2-scrollindicator.qml b/tests/manual/gifs/data/qtquickcontrols2-scrollindicator.qml index 1cdd1b61..be23df3b 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-scrollindicator.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-scrollindicator.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: 100 diff --git a/tests/manual/gifs/data/qtquickcontrols2-slider-snap.qml b/tests/manual/gifs/data/qtquickcontrols2-slider-snap.qml index ff7dd780..26066770 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-slider-snap.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-slider-snap.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: slider.implicitWidth diff --git a/tests/manual/gifs/data/qtquickcontrols2-slider.qml b/tests/manual/gifs/data/qtquickcontrols2-slider.qml index 689e50f2..83f652aa 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-slider.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-slider.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: slider.implicitWidth diff --git a/tests/manual/gifs/data/qtquickcontrols2-stackview-pop.qml b/tests/manual/gifs/data/qtquickcontrols2-stackview-pop.qml index 9c3ad1f1..7ddd8db8 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-stackview-pop.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-stackview-pop.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls ApplicationWindow { width: 160 diff --git a/tests/manual/gifs/data/qtquickcontrols2-stackview-push.qml b/tests/manual/gifs/data/qtquickcontrols2-stackview-push.qml index cf3e8c3c..88229fce 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-stackview-push.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-stackview-push.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls ApplicationWindow { width: 160 diff --git a/tests/manual/gifs/data/qtquickcontrols2-stackview-replace.qml b/tests/manual/gifs/data/qtquickcontrols2-stackview-replace.qml index 2c68a3cb..59885745 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-stackview-replace.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-stackview-replace.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls ApplicationWindow { width: 160 diff --git a/tests/manual/gifs/data/qtquickcontrols2-stackview-unwind.qml b/tests/manual/gifs/data/qtquickcontrols2-stackview-unwind.qml index afb1f242..a7435d2a 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-stackview-unwind.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-stackview-unwind.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls ApplicationWindow { width: 160 diff --git a/tests/manual/gifs/data/qtquickcontrols2-swipedelegate-behind.qml b/tests/manual/gifs/data/qtquickcontrols2-swipedelegate-behind.qml index 6025b62b..0b18c6a3 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-swipedelegate-behind.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-swipedelegate-behind.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: swipeDelegate.implicitWidth diff --git a/tests/manual/gifs/data/qtquickcontrols2-swipedelegate-leading-trailing.qml b/tests/manual/gifs/data/qtquickcontrols2-swipedelegate-leading-trailing.qml index da9d0fb5..789fb86f 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-swipedelegate-leading-trailing.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-swipedelegate-leading-trailing.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: swipeDelegate.implicitWidth diff --git a/tests/manual/gifs/data/qtquickcontrols2-swipedelegate.qml b/tests/manual/gifs/data/qtquickcontrols2-swipedelegate.qml index 745432cb..c78fc6d4 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-swipedelegate.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-swipedelegate.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: swipeDelegate.implicitWidth diff --git a/tests/manual/gifs/data/qtquickcontrols2-swipeview.qml b/tests/manual/gifs/data/qtquickcontrols2-swipeview.qml index d7d8829a..9004ff18 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-swipeview.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-swipeview.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: 300 diff --git a/tests/manual/gifs/data/qtquickcontrols2-switch.qml b/tests/manual/gifs/data/qtquickcontrols2-switch.qml index 7e98d9db..a9497bde 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-switch.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-switch.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: 100 diff --git a/tests/manual/gifs/data/qtquickcontrols2-switchdelegate.qml b/tests/manual/gifs/data/qtquickcontrols2-switchdelegate.qml index 2a70e484..1caece5b 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-switchdelegate.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-switchdelegate.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: column.implicitWidth diff --git a/tests/manual/gifs/data/qtquickcontrols2-tabbar.qml b/tests/manual/gifs/data/qtquickcontrols2-tabbar.qml index e01c7665..a973cef8 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-tabbar.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-tabbar.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.0 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: 300 diff --git a/tests/manual/gifs/data/qtquickcontrols2-tumbler-wrap.qml b/tests/manual/gifs/data/qtquickcontrols2-tumbler-wrap.qml index 77d17f11..bfad311e 100644 --- a/tests/manual/gifs/data/qtquickcontrols2-tumbler-wrap.qml +++ b/tests/manual/gifs/data/qtquickcontrols2-tumbler-wrap.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.2 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Window +import QtQuick.Controls Window { width: frame.implicitWidth + 10 diff --git a/tests/manual/gifs/eventcapturer.cpp b/tests/manual/gifs/eventcapturer.cpp index b3bbd7c8..ad88b1db 100644 --- a/tests/manual/gifs/eventcapturer.cpp +++ b/tests/manual/gifs/eventcapturer.cpp @@ -124,7 +124,7 @@ void EventCapturer::setCapturedEventTypes(QSet<QEvent::Type> types) mCapturedEventTypes = types; } -QVector<CapturedEvent> EventCapturer::capturedEvents() const +QList<CapturedEvent> EventCapturer::capturedEvents() const { if (mMoveEventTrimFlags == TrimNone || mEvents.isEmpty()) return mEvents; @@ -167,7 +167,7 @@ QVector<CapturedEvent> EventCapturer::capturedEvents() const // the indices are still valid - we could be removing from the middle of // the commands next. Also, the function is const, so we can't remove from // mEvents anyway. :) - QVector<CapturedEvent> events = mEvents.mid(firstEventIndex, (lastEventIndex - firstEventIndex) + 1); + QList<CapturedEvent> events = mEvents.mid(firstEventIndex, (lastEventIndex - firstEventIndex) + 1); if (mMoveEventTrimFlags.testFlag(TrimAfterReleases)) { bool lastNonMoveEventWasRelease = false; diff --git a/tests/manual/gifs/eventcapturer.h b/tests/manual/gifs/eventcapturer.h index e2b8b3a4..ea01299f 100644 --- a/tests/manual/gifs/eventcapturer.h +++ b/tests/manual/gifs/eventcapturer.h @@ -40,9 +40,9 @@ #include <QObject> #include <QElapsedTimer> #include <QEvent> +#include <QList> #include <QPoint> #include <QSet> -#include <QVector> #include "capturedevent.h" @@ -72,7 +72,7 @@ public: QSet<QEvent::Type> capturedEventTypes(); void setCapturedEventTypes(QSet<QEvent::Type> types); - QVector<CapturedEvent> capturedEvents() const; + QList<CapturedEvent> capturedEvents() const; protected: bool eventFilter(QObject *object, QEvent *event) override; @@ -87,7 +87,7 @@ private: Qt::Key mStopCaptureKey; MoveEventTrimFlags mMoveEventTrimFlags; QElapsedTimer mDelayTimer; - QVector<CapturedEvent> mEvents; + QList<CapturedEvent> mEvents; int mDuration; int mLastCaptureTime; }; diff --git a/tests/manual/gifs/tst_gifs.cpp b/tests/manual/gifs/tst_gifs.cpp index d7d8f98d..80c3fd9f 100644 --- a/tests/manual/gifs/tst_gifs.cpp +++ b/tests/manual/gifs/tst_gifs.cpp @@ -609,19 +609,19 @@ void tst_Gifs::swipeDelegateBehind() void tst_Gifs::delegates_data() { QTest::addColumn<QString>("name"); - QTest::addColumn<QVector<int> >("pressIndices"); + QTest::addColumn<QList<int> >("pressIndices"); QTest::addColumn<int>("duration"); - QTest::newRow("ItemDelegate") << "itemdelegate" << (QVector<int>() << 0 << 1 << 2) << 5; - QTest::newRow("CheckDelegate") << "checkdelegate" << (QVector<int>() << 0 << 0) << 5; - QTest::newRow("RadioDelegate") << "radiodelegate" << (QVector<int>() << 1 << 0) << 5; - QTest::newRow("SwitchDelegate") << "switchdelegate" << (QVector<int>() << 0 << 0) << 5; + QTest::newRow("ItemDelegate") << "itemdelegate" << (QList<int> { 0, 1, 2 }) << 5; + QTest::newRow("CheckDelegate") << "checkdelegate" << (QList<int> { 0, 0 }) << 5; + QTest::newRow("RadioDelegate") << "radiodelegate" << (QList<int> { 1, 0 }) << 5; + QTest::newRow("SwitchDelegate") << "switchdelegate" << (QList<int> { 0, 0 }) << 5; } void tst_Gifs::delegates() { QFETCH(QString, name); - QFETCH(QVector<int>, pressIndices); + QFETCH(QList<int>, pressIndices); QFETCH(int, duration); GifRecorder gifRecorder; @@ -710,16 +710,16 @@ void tst_Gifs::dial() void tst_Gifs::checkables_data() { QTest::addColumn<QString>("name"); - QTest::addColumn<QVector<int> >("pressIndices"); + QTest::addColumn<QList<int> >("pressIndices"); - QTest::newRow("checkbox") << "checkbox" << (QVector<int>() << 1 << 2 << 2 << 1); - QTest::newRow("radiobutton") << "radiobutton" << (QVector<int>() << 1 << 2 << 1 << 0); + QTest::newRow("checkbox") << "checkbox" << (QList<int> { 1, 2, 2, 1 }); + QTest::newRow("radiobutton") << "radiobutton" << (QList<int> { 1, 2, 1, 0 }); } void tst_Gifs::checkables() { QFETCH(QString, name); - QFETCH(QVector<int>, pressIndices); + QFETCH(QList<int>, pressIndices); GifRecorder gifRecorder; gifRecorder.setDataDirPath(dataDirPath); diff --git a/tests/manual/headerview/main.cpp b/tests/manual/headerview/main.cpp index 4c1e611c..b1573f08 100644 --- a/tests/manual/headerview/main.cpp +++ b/tests/manual/headerview/main.cpp @@ -199,7 +199,7 @@ public: } private: - QVector<QVariant> hData, vData; + QList<QVariant> hData, vData; }; int main(int argc, char *argv[]) diff --git a/tests/manual/headerview/main.qml b/tests/manual/headerview/main.qml index ab9c3dc5..abce1c00 100644 --- a/tests/manual/headerview/main.qml +++ b/tests/manual/headerview/main.qml @@ -48,13 +48,13 @@ ** ****************************************************************************/ -import QtQml.Models 2.15 -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Shapes 1.15 -import QtQuick.Window 2.15 -import Qt.labs.qmlmodels 1.0 -import TestTableModelWithHeader 0.1 +import QtQml.Models +import QtQuick +import QtQuick.Controls +import QtQuick.Shapes +import QtQuick.Window +import Qt.labs.qmlmodels +import TestTableModelWithHeader Window { visible: true diff --git a/examples/quickcontrols2/desktopgallery/.gitignore b/tests/manual/nativestyle/.gitignore index fab7372d..fab7372d 100644 --- a/examples/quickcontrols2/desktopgallery/.gitignore +++ b/tests/manual/nativestyle/.gitignore diff --git a/examples/quickcontrols2/desktopgallery/Buttons.qml b/tests/manual/nativestyle/Buttons.qml index 2a11dea3..d5eb2a9c 100644 --- a/examples/quickcontrols2/desktopgallery/Buttons.qml +++ b/tests/manual/nativestyle/Buttons.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts ControlContainer { id: container diff --git a/tests/manual/nativestyle/CMakeLists.txt b/tests/manual/nativestyle/CMakeLists.txt new file mode 100644 index 00000000..e4712a6e --- /dev/null +++ b/tests/manual/nativestyle/CMakeLists.txt @@ -0,0 +1,80 @@ +# Generated from desktopgallery.pro. + +cmake_minimum_required(VERSION 3.14) +project(desktopgallery LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/quickcontrols2/desktopgallery") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS Quick) +find_package(Qt6 COMPONENTS QuickControls2) + +add_qt_gui_executable(desktopgallery + main.cpp +) +target_link_libraries(desktopgallery PUBLIC + Qt::Core + Qt::Gui + Qt::Quick + Qt::QuickControls2 +) + + +# Resources: +set(qmake_immediate_resource_files + "Buttons.qml" + "CheckBoxes.qml" + "ComboBoxes.qml" + "ControlContainer.qml" + "CustomButtons.qml" + "CustomCheckBoxes.qml" + "CustomComboBoxes.qml" + "CustomDials.qml" + "CustomFrames.qml" + "CustomProgressBars.qml" + "CustomRadioButtons.qml" + "CustomScrollBars.qml" + "CustomSliders.qml" + "CustomSpinBoxes.qml" + "CustomTextAreas.qml" + "CustomTextFields.qml" + "Dials.qml" + "Frames.qml" + "ProgressBars.qml" + "RadioButtons.qml" + "ScrollBars.qml" + "Sliders.qml" + "SlidersMini.qml" + "SlidersSmall.qml" + "SpinBoxes.qml" + "TextAreas.qml" + "TextFields.qml" + "checkbox-icon.png" + "checkbox-icon16.png" + "checkbox-icon@2x.png" + "main.qml" +) + +qt6_add_resources(desktopgallery "qmake_immediate" + PREFIX + "/" + FILES + ${qmake_immediate_resource_files} +) + +install(TARGETS desktopgallery + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/quickcontrols2/desktopgallery/CheckBoxes.qml b/tests/manual/nativestyle/CheckBoxes.qml index 50b81ec4..c24e9a54 100644 --- a/examples/quickcontrols2/desktopgallery/CheckBoxes.qml +++ b/tests/manual/nativestyle/CheckBoxes.qml @@ -34,10 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts ControlContainer { id: container diff --git a/examples/quickcontrols2/desktopgallery/ComboBoxes.qml b/tests/manual/nativestyle/ComboBoxes.qml index 37c6982c..21dd5b09 100644 --- a/examples/quickcontrols2/desktopgallery/ComboBoxes.qml +++ b/tests/manual/nativestyle/ComboBoxes.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts ControlContainer { id: container diff --git a/examples/quickcontrols2/desktopgallery/ControlContainer.qml b/tests/manual/nativestyle/ControlContainer.qml index 30022540..f528e994 100644 --- a/examples/quickcontrols2/desktopgallery/ControlContainer.qml +++ b/tests/manual/nativestyle/ControlContainer.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts Item { anchors.left: parent.left diff --git a/examples/quickcontrols2/desktopgallery/CustomButtons.qml b/tests/manual/nativestyle/CustomButtons.qml index edcdb086..6a01faed 100644 --- a/examples/quickcontrols2/desktopgallery/CustomButtons.qml +++ b/tests/manual/nativestyle/CustomButtons.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts ControlContainer { id: container diff --git a/examples/quickcontrols2/desktopgallery/CustomCheckBoxes.qml b/tests/manual/nativestyle/CustomCheckBoxes.qml index fcec932f..ce3a5543 100644 --- a/examples/quickcontrols2/desktopgallery/CustomCheckBoxes.qml +++ b/tests/manual/nativestyle/CustomCheckBoxes.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts +import QtQuick.Controls.impl ControlContainer { id: container @@ -76,7 +76,7 @@ ControlContainer { defaultColor: "#353637" scale: 0.5 color: "green" - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png" visible: customIndicator.checkState === Qt.Checked } @@ -119,7 +119,7 @@ ControlContainer { defaultColor: "#353637" scale: 0.5 color: "green" - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/check.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/check.png" visible: allCustom.checkState === Qt.Checked } diff --git a/examples/quickcontrols2/desktopgallery/CustomComboBoxes.qml b/tests/manual/nativestyle/CustomComboBoxes.qml index 58793182..bd793e28 100644 --- a/examples/quickcontrols2/desktopgallery/CustomComboBoxes.qml +++ b/tests/manual/nativestyle/CustomComboBoxes.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 -import QtQuick.Controls.impl 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts +import QtQuick.Controls.impl ControlContainer { id: container @@ -61,7 +61,7 @@ ControlContainer { y: control.topPadding + (control.availableHeight - height) / 2 color: control.palette.dark defaultColor: "#353637" - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/double-arrow.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/double-arrow.png" opacity: enabled ? 1 : 0.3 } } @@ -100,7 +100,7 @@ ControlContainer { y: control2.topPadding + (control2.availableHeight - height) / 2 color: control2.palette.dark defaultColor: "#353637" - source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/images/double-arrow.png" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/double-arrow.png" opacity: enabled ? 1 : 0.3 } } diff --git a/tests/manual/nativestyle/CustomDials.qml b/tests/manual/nativestyle/CustomDials.qml new file mode 100644 index 00000000..cc16e96f --- /dev/null +++ b/tests/manual/nativestyle/CustomDials.qml @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt Quick dial1s 2 module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Default.impl +import QtQuick.Layouts + +ControlContainer { + id: container + title: "Dials" + + Row { + spacing: container.rowSpacing + + Dial { + id: dial1 + width: 50 + height: 50 + from: 0 + to: 10 + value: 5 + + background: DialImpl { + implicitWidth: 184 + implicitHeight: 184 + color: "darkgray" + progress: dial1.position + opacity: dial1.enabled ? 1 : 0.3 + } + + handle: ColorImage { + x: dial1.background.x + dial1.background.width / 2 - width / 2 + y: dial1.background.y + dial1.background.height / 2 - height / 2 + width: 14 + height: 10 + color: "green" + source: "qrc:/qt-project.org/imports/QtQuick/Controls/Default/images/dial-indicator.png" + antialiasing: true + opacity: dial1.enabled ? 1 : 0.3 + transform: [ + Translate { + y: -Math.min(dial1.background.width, dial1.background.height) * 0.4 + dial1.handle.height / 2 + }, + Rotation { + angle: dial1.angle + origin.x: dial1.handle.width / 2 + origin.y: dial1.handle.height / 2 + } + ] + } + } + } +} diff --git a/examples/quickcontrols2/desktopgallery/CustomFrames.qml b/tests/manual/nativestyle/CustomFrames.qml index 0b74b220..e2b045a5 100644 --- a/examples/quickcontrols2/desktopgallery/CustomFrames.qml +++ b/tests/manual/nativestyle/CustomFrames.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts ControlContainer { id: container diff --git a/examples/quickcontrols2/desktopgallery/CustomProgressBars.qml b/tests/manual/nativestyle/CustomProgressBars.qml index 93932a5e..c920d243 100644 --- a/examples/quickcontrols2/desktopgallery/CustomProgressBars.qml +++ b/tests/manual/nativestyle/CustomProgressBars.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts +import QtQuick.Controls.Default.impl ControlContainer { id: container diff --git a/examples/quickcontrols2/desktopgallery/CustomRadioButtons.qml b/tests/manual/nativestyle/CustomRadioButtons.qml index 9418b689..8a657cdd 100644 --- a/examples/quickcontrols2/desktopgallery/CustomRadioButtons.qml +++ b/tests/manual/nativestyle/CustomRadioButtons.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts +import QtQuick.Controls.impl ControlContainer { id: container diff --git a/examples/quickcontrols2/desktopgallery/CustomScrollBars.qml b/tests/manual/nativestyle/CustomScrollBars.qml index fcac2eaf..07319952 100644 --- a/examples/quickcontrols2/desktopgallery/CustomScrollBars.qml +++ b/tests/manual/nativestyle/CustomScrollBars.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts ControlContainer { id: container diff --git a/examples/quickcontrols2/desktopgallery/CustomSliders.qml b/tests/manual/nativestyle/CustomSliders.qml index 38cdf0a2..075c10d3 100644 --- a/examples/quickcontrols2/desktopgallery/CustomSliders.qml +++ b/tests/manual/nativestyle/CustomSliders.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts ControlContainer { id: container diff --git a/examples/quickcontrols2/desktopgallery/CustomSpinBoxes.qml b/tests/manual/nativestyle/CustomSpinBoxes.qml index b632f311..b6de2b57 100644 --- a/examples/quickcontrols2/desktopgallery/CustomSpinBoxes.qml +++ b/tests/manual/nativestyle/CustomSpinBoxes.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts ControlContainer { id: container diff --git a/examples/quickcontrols2/desktopgallery/CustomTextAreas.qml b/tests/manual/nativestyle/CustomTextAreas.qml index a729ea10..77e97b0c 100644 --- a/examples/quickcontrols2/desktopgallery/CustomTextAreas.qml +++ b/tests/manual/nativestyle/CustomTextAreas.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts ControlContainer { id: container diff --git a/examples/quickcontrols2/desktopgallery/CustomTextFields.qml b/tests/manual/nativestyle/CustomTextFields.qml index f781eb19..3e8ccd1e 100644 --- a/examples/quickcontrols2/desktopgallery/CustomTextFields.qml +++ b/tests/manual/nativestyle/CustomTextFields.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts ControlContainer { id: container diff --git a/tests/manual/nativestyle/Dials.qml b/tests/manual/nativestyle/Dials.qml new file mode 100644 index 00000000..f0655f25 --- /dev/null +++ b/tests/manual/nativestyle/Dials.qml @@ -0,0 +1,66 @@ +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts + +ControlContainer { + id: container + title: "Dials" + + Row { + spacing: container.rowSpacing + + Dial { + width: 50 + height: 50 + from: 0 + to: 10 + value: 5 + } + + Dial { + width: 50 + height: 50 + from: 0 + to: 10 + value: 5 + stepSize: 1 + property int qqc2_style_tickPosition: 1 + } + } +} diff --git a/examples/quickcontrols2/desktopgallery/Frames.qml b/tests/manual/nativestyle/Frames.qml index 91cbec6d..220f8d03 100644 --- a/examples/quickcontrols2/desktopgallery/Frames.qml +++ b/tests/manual/nativestyle/Frames.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts ControlContainer { id: container diff --git a/examples/quickcontrols2/desktopgallery/ProgressBars.qml b/tests/manual/nativestyle/ProgressBars.qml index f19c05bd..8abd076d 100644 --- a/examples/quickcontrols2/desktopgallery/ProgressBars.qml +++ b/tests/manual/nativestyle/ProgressBars.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts ControlContainer { id: container diff --git a/examples/quickcontrols2/desktopgallery/RadioButtons.qml b/tests/manual/nativestyle/RadioButtons.qml index b9c49e7d..24a96b59 100644 --- a/examples/quickcontrols2/desktopgallery/RadioButtons.qml +++ b/tests/manual/nativestyle/RadioButtons.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 -import QtQuick.Controls.impl 2.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts +import QtQuick.Controls.impl ControlContainer { id: container diff --git a/examples/quickcontrols2/desktopgallery/ScrollBars.qml b/tests/manual/nativestyle/ScrollBars.qml index f7b78f86..a5764c78 100644 --- a/examples/quickcontrols2/desktopgallery/ScrollBars.qml +++ b/tests/manual/nativestyle/ScrollBars.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts ControlContainer { id: container diff --git a/examples/quickcontrols2/desktopgallery/Sliders.qml b/tests/manual/nativestyle/Sliders.qml index dba0794b..dcc6c79c 100644 --- a/examples/quickcontrols2/desktopgallery/Sliders.qml +++ b/tests/manual/nativestyle/Sliders.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts ControlContainer { id: container diff --git a/examples/quickcontrols2/desktopgallery/SlidersMini.qml b/tests/manual/nativestyle/SlidersMini.qml index 542719e9..4c7610c4 100644 --- a/examples/quickcontrols2/desktopgallery/SlidersMini.qml +++ b/tests/manual/nativestyle/SlidersMini.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts ControlContainer { id: container diff --git a/examples/quickcontrols2/desktopgallery/SlidersSmall.qml b/tests/manual/nativestyle/SlidersSmall.qml index bd1f85a6..04c9cb24 100644 --- a/examples/quickcontrols2/desktopgallery/SlidersSmall.qml +++ b/tests/manual/nativestyle/SlidersSmall.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts ControlContainer { id: container diff --git a/examples/quickcontrols2/desktopgallery/SpinBoxes.qml b/tests/manual/nativestyle/SpinBoxes.qml index 0b66e977..60e2213b 100644 --- a/examples/quickcontrols2/desktopgallery/SpinBoxes.qml +++ b/tests/manual/nativestyle/SpinBoxes.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts ControlContainer { id: container diff --git a/examples/quickcontrols2/desktopgallery/TextAreas.qml b/tests/manual/nativestyle/TextAreas.qml index be777ac5..0e1573b0 100644 --- a/examples/quickcontrols2/desktopgallery/TextAreas.qml +++ b/tests/manual/nativestyle/TextAreas.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts ControlContainer { id: container @@ -49,6 +49,7 @@ ControlContainer { id: defaultTextArea width: 200 wrapMode: TextEdit.WordWrap + selectByMouse: true text: "Default - Lorem ipsum dolor sit amet, consectetur adipiscing elit, " + "sed do eiusmod tempor incididunt ut labore et dolore magna aliqua." } @@ -57,17 +58,19 @@ ControlContainer { enabled: false width: 200 wrapMode: TextEdit.WordWrap + selectByMouse: true text: "Disabled - Lorem ipsum dolor sit amet, consectetur adipiscing elit, " + "sed do eiusmod tempor incididunt ut labore et dolore magna aliqua." } - Flickable { + ScrollView { + id: scrollView width: 200 height: defaultTextArea.height - clip: true + ScrollBar.vertical.policy: ScrollBar.AlwaysOn - TextArea.flickable: TextArea { - text: "Inside flickable - Lorem ipsum dolor sit amet, consectetur adipiscing elit, " + TextArea { + text: "Inside ScrollView - Lorem ipsum dolor sit amet, consectetur adipiscing elit, " + "sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. " + "Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi " + "ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit " @@ -75,33 +78,53 @@ ControlContainer { + "sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt " + "mollit anim id est laborum." wrapMode: TextEdit.WordWrap + selectByMouse: true + rightPadding: scrollView.ScrollBar.vertical.width } - - ScrollBar.vertical: ScrollBar { policy: ScrollBar.AlwaysOn } } } Row { spacing: container.rowSpacing - TextArea { - width: 200 - wrapMode: TextEdit.WordWrap - text: "Small - Lorem ipsum dolor sit amet, consectetur adipiscing elit, " - + "sed do eiusmod tempor incididunt ut labore et dolore magna aliqua." - property bool qqc2_style_small + Frame { + TextArea { + id: area1 + width: 200 + wrapMode: TextEdit.WrapAnywhere + selectByMouse: true + text: "Inside frame - Lorem ipsum dolor sit amet, consectetur adipiscing elit, " + + "sed do eiusmod tempor incididunt ut labore et dolore magna aliqua." + } } - TextArea { - width: 200 - wrapMode: TextEdit.WordWrap - text: "Mini - Lorem ipsum dolor sit amet, consectetur adipiscing elit, " - + "sed do eiusmod tempor incididunt ut labore et dolore magna aliqua." - property bool qqc2_style_mini + Frame { + contentWidth: 200 + contentHeight: 100 + ScrollView { + id: scrollView2 + anchors.fill: parent + ScrollBar.vertical.policy: ScrollBar.AlwaysOn + + TextArea { + id: area2 + text: "Inside Frame and ScrollView - Lorem ipsum dolor sit amet, consectetur adipiscing elit, " + + "sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. " + + "Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi " + + "ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit " + + "in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur " + + "sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt " + + "mollit anim id est laborum." + wrapMode: TextEdit.WordWrap + selectByMouse: true + rightPadding: scrollView2.ScrollBar.vertical.width + } + } } TextArea { placeholderText: "Placeholder text" + selectByMouse: true } } } diff --git a/examples/quickcontrols2/desktopgallery/TextFields.qml b/tests/manual/nativestyle/TextFields.qml index 75f2b720..10e97da5 100644 --- a/examples/quickcontrols2/desktopgallery/TextFields.qml +++ b/tests/manual/nativestyle/TextFields.qml @@ -34,9 +34,9 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts ControlContainer { id: container diff --git a/examples/quickcontrols2/desktopgallery/checkbox-icon.png b/tests/manual/nativestyle/checkbox-icon.png Binary files differindex ee669b3a..ee669b3a 100644 --- a/examples/quickcontrols2/desktopgallery/checkbox-icon.png +++ b/tests/manual/nativestyle/checkbox-icon.png diff --git a/examples/quickcontrols2/desktopgallery/checkbox-icon16.png b/tests/manual/nativestyle/checkbox-icon16.png Binary files differindex 8d89eab8..8d89eab8 100644 --- a/examples/quickcontrols2/desktopgallery/checkbox-icon16.png +++ b/tests/manual/nativestyle/checkbox-icon16.png diff --git a/examples/quickcontrols2/desktopgallery/checkbox-icon@2x.png b/tests/manual/nativestyle/checkbox-icon@2x.png Binary files differindex 51c5601d..51c5601d 100644 --- a/examples/quickcontrols2/desktopgallery/checkbox-icon@2x.png +++ b/tests/manual/nativestyle/checkbox-icon@2x.png diff --git a/examples/quickcontrols2/desktopgallery/main.cpp b/tests/manual/nativestyle/main.cpp index aee43242..aee43242 100644 --- a/examples/quickcontrols2/desktopgallery/main.cpp +++ b/tests/manual/nativestyle/main.cpp diff --git a/examples/quickcontrols2/desktopgallery/main.qml b/tests/manual/nativestyle/main.qml index 5bdbd71f..f0575820 100644 --- a/examples/quickcontrols2/desktopgallery/main.qml +++ b/tests/manual/nativestyle/main.qml @@ -34,10 +34,10 @@ ** ****************************************************************************/ -import QtQuick 2.15 -import QtQuick.Window 2.13 -import QtQuick.Controls 2.15 -import QtQuick.Layouts 2.15 +import QtQuick +import QtQuick.Window +import QtQuick.Controls +import QtQuick.Layouts ApplicationWindow { visible: true @@ -86,6 +86,7 @@ ApplicationWindow { TextFields { } TextAreas { } ComboBoxes { } + Dials { } Frames { } ProgressBars { } ScrollBars { } @@ -112,6 +113,7 @@ ApplicationWindow { CustomTextFields { } CustomTextAreas { } CustomComboBoxes { } + CustomDials { } CustomFrames { } CustomProgressBars { } CustomScrollBars { } diff --git a/examples/quickcontrols2/desktopgallery/desktopgallery.pro b/tests/manual/nativestyle/nativestyle.pro index cabc9d7c..9c700430 100644 --- a/examples/quickcontrols2/desktopgallery/desktopgallery.pro +++ b/tests/manual/nativestyle/nativestyle.pro @@ -30,10 +30,10 @@ QML_FILES = \ CustomScrollBars.qml \ ProgressBars.qml \ CustomProgressBars.qml \ + Dials.qml \ + CustomDials.qml \ OTHER_FILES += $$QML_FILES RESOURCES += $$QML_FILES RESOURCES += checkbox-icon.png checkbox-icon16.png checkbox-icon@2x.png -target.path = $$[QT_INSTALL_EXAMPLES]/quickcontrols2/desktopgallery -INSTALLS += target diff --git a/examples/quickcontrols2/desktopgallery/qml.qrc b/tests/manual/nativestyle/qml.qrc index fba642e5..fba642e5 100644 --- a/examples/quickcontrols2/desktopgallery/qml.qrc +++ b/tests/manual/nativestyle/qml.qrc diff --git a/tests/manual/screenshots/screenshots.qml b/tests/manual/screenshots/screenshots.qml index 2ab684c1..3496b32b 100644 --- a/tests/manual/screenshots/screenshots.qml +++ b/tests/manual/screenshots/screenshots.qml @@ -48,10 +48,10 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 -import Qt.labs.folderlistmodel 2.1 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls +import Qt.labs.folderlistmodel ApplicationWindow { id: window diff --git a/tests/manual/shared/FontAwesome.qml b/tests/manual/shared/FontAwesome.qml index 9e387594..d64176b4 100644 --- a/tests/manual/shared/FontAwesome.qml +++ b/tests/manual/shared/FontAwesome.qml @@ -47,7 +47,7 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick pragma Singleton diff --git a/tests/manual/shared/FontAwesomeIcon.qml b/tests/manual/shared/FontAwesomeIcon.qml index f46ed364..74e7c5da 100644 --- a/tests/manual/shared/FontAwesomeIcon.qml +++ b/tests/manual/shared/FontAwesomeIcon.qml @@ -47,7 +47,7 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick import "qrc:/shared" Text { diff --git a/tests/manual/styles-cover-flow/CoverFlowDelegate.qml b/tests/manual/styles-cover-flow/CoverFlowDelegate.qml index 474a189a..061ecfa0 100644 --- a/tests/manual/styles-cover-flow/CoverFlowDelegate.qml +++ b/tests/manual/styles-cover-flow/CoverFlowDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtGraphicalEffects 1.12 -import QtQuick 2.12 +import QtGraphicalEffects +import QtQuick Item { id: root diff --git a/tests/manual/styles-cover-flow/CoverFlowPath.qml b/tests/manual/styles-cover-flow/CoverFlowPath.qml index 37e7f894..0f70e6b8 100644 --- a/tests/manual/styles-cover-flow/CoverFlowPath.qml +++ b/tests/manual/styles-cover-flow/CoverFlowPath.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick Path { // Point 1 diff --git a/tests/manual/styles-cover-flow/styles-cover-flow.qml b/tests/manual/styles-cover-flow/styles-cover-flow.qml index 273f0869..ec9630cd 100644 --- a/tests/manual/styles-cover-flow/styles-cover-flow.qml +++ b/tests/manual/styles-cover-flow/styles-cover-flow.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.12 +import QtQuick +import QtQuick.Window Window { // Different delegate positions and widths and window background colors diff --git a/tests/manual/styles/styles.qml b/tests/manual/styles/styles.qml index 7c4721d1..83bd9b34 100644 --- a/tests/manual/styles/styles.qml +++ b/tests/manual/styles/styles.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Layouts +import QtQuick.Controls ApplicationWindow { id: window diff --git a/tests/manual/systemtrayicon/systemtrayicon.qml b/tests/manual/systemtrayicon/systemtrayicon.qml index a7e656d4..d44bc83b 100644 --- a/tests/manual/systemtrayicon/systemtrayicon.qml +++ b/tests/manual/systemtrayicon/systemtrayicon.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import Qt.labs.platform 1.0 +import QtQuick +import QtQuick.Controls +import Qt.labs.platform ApplicationWindow { id: window @@ -75,7 +75,7 @@ ApplicationWindow { SystemTrayIcon { visible: true - iconSource: "qrc:/files/images/qt_logo_green_256.png" + icon.source: "qrc:/files/images/qt_logo_green_256.png" menu: Menu { MenuItem { diff --git a/tests/manual/testbench/ColorEditor.qml b/tests/manual/testbench/ColorEditor.qml index 7f472f9b..2723f33d 100644 --- a/tests/manual/testbench/ColorEditor.qml +++ b/tests/manual/testbench/ColorEditor.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.14 -import QtQuick.Controls 2.12 -import QtQuick.Layouts 1.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts RowLayout { property alias labelText: label.text diff --git a/tests/manual/testbench/ControlContainer.qml b/tests/manual/testbench/ControlContainer.qml index 095d3822..4bd99bd3 100644 --- a/tests/manual/testbench/ControlContainer.qml +++ b/tests/manual/testbench/ControlContainer.qml @@ -48,7 +48,7 @@ ** ****************************************************************************/ -import QtQuick 2.12 +import QtQuick Item { id: container diff --git a/tests/manual/testbench/ExampleContainer.qml b/tests/manual/testbench/ExampleContainer.qml index 5d2ac758..903e52db 100644 --- a/tests/manual/testbench/ExampleContainer.qml +++ b/tests/manual/testbench/ExampleContainer.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Layouts 1.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts Frame { id: container diff --git a/tests/manual/testbench/SettingsDialog.qml b/tests/manual/testbench/SettingsDialog.qml index 71b4c342..d75f89f1 100644 --- a/tests/manual/testbench/SettingsDialog.qml +++ b/tests/manual/testbench/SettingsDialog.qml @@ -48,12 +48,12 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Imagine 2.12 -import QtQuick.Layouts 1.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.Imagine +import QtQuick.Layouts -import App 1.0 +import App Dialog { id: settingsDialog diff --git a/tests/manual/testbench/controls/BusyIndicator.qml b/tests/manual/testbench/controls/BusyIndicator.qml index 22b3d98a..cc0f4518 100644 --- a/tests/manual/testbench/controls/BusyIndicator.qml +++ b/tests/manual/testbench/controls/BusyIndicator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/Button.qml b/tests/manual/testbench/controls/Button.qml index 44ddfee0..ac57453f 100644 --- a/tests/manual/testbench/controls/Button.qml +++ b/tests/manual/testbench/controls/Button.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/CheckBox.qml b/tests/manual/testbench/controls/CheckBox.qml index b79d800d..0598dae8 100644 --- a/tests/manual/testbench/controls/CheckBox.qml +++ b/tests/manual/testbench/controls/CheckBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/CheckDelegate.qml b/tests/manual/testbench/controls/CheckDelegate.qml index c8089fab..8f546384 100644 --- a/tests/manual/testbench/controls/CheckDelegate.qml +++ b/tests/manual/testbench/controls/CheckDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/ComboBox.qml b/tests/manual/testbench/controls/ComboBox.qml index 335eeb56..75fb7701 100644 --- a/tests/manual/testbench/controls/ComboBox.qml +++ b/tests/manual/testbench/controls/ComboBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/DelayButton.qml b/tests/manual/testbench/controls/DelayButton.qml index ae887ef3..c0f6faa2 100644 --- a/tests/manual/testbench/controls/DelayButton.qml +++ b/tests/manual/testbench/controls/DelayButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/Dial.qml b/tests/manual/testbench/controls/Dial.qml index 06b91076..16c99ec8 100644 --- a/tests/manual/testbench/controls/Dial.qml +++ b/tests/manual/testbench/controls/Dial.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/Dialog.qml b/tests/manual/testbench/controls/Dialog.qml index 52aa923e..0ea9d3be 100644 --- a/tests/manual/testbench/controls/Dialog.qml +++ b/tests/manual/testbench/controls/Dialog.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Layouts 1.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts // TODO QtObject { diff --git a/tests/manual/testbench/controls/Frame.qml b/tests/manual/testbench/controls/Frame.qml index c7b176fb..dd88c3b8 100644 --- a/tests/manual/testbench/controls/Frame.qml +++ b/tests/manual/testbench/controls/Frame.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/GroupBox.qml b/tests/manual/testbench/controls/GroupBox.qml index eda7ad79..80ced769 100644 --- a/tests/manual/testbench/controls/GroupBox.qml +++ b/tests/manual/testbench/controls/GroupBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/ItemDelegate.qml b/tests/manual/testbench/controls/ItemDelegate.qml index 8cf348d4..0b887e2f 100644 --- a/tests/manual/testbench/controls/ItemDelegate.qml +++ b/tests/manual/testbench/controls/ItemDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/Label.qml b/tests/manual/testbench/controls/Label.qml index 92192e09..d8155a20 100644 --- a/tests/manual/testbench/controls/Label.qml +++ b/tests/manual/testbench/controls/Label.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/Menu.qml b/tests/manual/testbench/controls/Menu.qml index 3bb54009..ba15c052 100644 --- a/tests/manual/testbench/controls/Menu.qml +++ b/tests/manual/testbench/controls/Menu.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Layouts 1.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts // TODO QtObject { diff --git a/tests/manual/testbench/controls/MenuBar.qml b/tests/manual/testbench/controls/MenuBar.qml index 77a7da2b..f435c9a5 100644 --- a/tests/manual/testbench/controls/MenuBar.qml +++ b/tests/manual/testbench/controls/MenuBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls // TODO QtObject { diff --git a/tests/manual/testbench/controls/Page.qml b/tests/manual/testbench/controls/Page.qml index add9cc09..3d310676 100644 --- a/tests/manual/testbench/controls/Page.qml +++ b/tests/manual/testbench/controls/Page.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/PageIndicator.qml b/tests/manual/testbench/controls/PageIndicator.qml index 60094e4d..5de29ef1 100644 --- a/tests/manual/testbench/controls/PageIndicator.qml +++ b/tests/manual/testbench/controls/PageIndicator.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Layouts 1.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/Pane.qml b/tests/manual/testbench/controls/Pane.qml index c8b6c699..b5329b71 100644 --- a/tests/manual/testbench/controls/Pane.qml +++ b/tests/manual/testbench/controls/Pane.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/ProgressBar.qml b/tests/manual/testbench/controls/ProgressBar.qml index 67047178..bc2d9045 100644 --- a/tests/manual/testbench/controls/ProgressBar.qml +++ b/tests/manual/testbench/controls/ProgressBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/RadioButton.qml b/tests/manual/testbench/controls/RadioButton.qml index b1fff6dc..7ca9bd0a 100644 --- a/tests/manual/testbench/controls/RadioButton.qml +++ b/tests/manual/testbench/controls/RadioButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/RadioDelegate.qml b/tests/manual/testbench/controls/RadioDelegate.qml index e449744c..ddafd14c 100644 --- a/tests/manual/testbench/controls/RadioDelegate.qml +++ b/tests/manual/testbench/controls/RadioDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/RangeSlider.qml b/tests/manual/testbench/controls/RangeSlider.qml index b3d84e53..71208fb8 100644 --- a/tests/manual/testbench/controls/RangeSlider.qml +++ b/tests/manual/testbench/controls/RangeSlider.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/RoundButton.qml b/tests/manual/testbench/controls/RoundButton.qml index 5d066133..fb2d1d43 100644 --- a/tests/manual/testbench/controls/RoundButton.qml +++ b/tests/manual/testbench/controls/RoundButton.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/ScrollBar.qml b/tests/manual/testbench/controls/ScrollBar.qml index 25c7f4d6..4ed80f75 100644 --- a/tests/manual/testbench/controls/ScrollBar.qml +++ b/tests/manual/testbench/controls/ScrollBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/ScrollIndicator.qml b/tests/manual/testbench/controls/ScrollIndicator.qml index 2c6fd4a9..d9ee487d 100644 --- a/tests/manual/testbench/controls/ScrollIndicator.qml +++ b/tests/manual/testbench/controls/ScrollIndicator.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/Slider.qml b/tests/manual/testbench/controls/Slider.qml index 831f4778..21e751ac 100644 --- a/tests/manual/testbench/controls/Slider.qml +++ b/tests/manual/testbench/controls/Slider.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/SpinBox.qml b/tests/manual/testbench/controls/SpinBox.qml index 0fdfb9fe..22ca6cce 100644 --- a/tests/manual/testbench/controls/SpinBox.qml +++ b/tests/manual/testbench/controls/SpinBox.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/SplitView.qml b/tests/manual/testbench/controls/SplitView.qml index 94f06221..f2801def 100644 --- a/tests/manual/testbench/controls/SplitView.qml +++ b/tests/manual/testbench/controls/SplitView.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.13 -import QtQuick.Controls 2.13 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/SwipeDelegate.qml b/tests/manual/testbench/controls/SwipeDelegate.qml index 141435d8..13d0a443 100644 --- a/tests/manual/testbench/controls/SwipeDelegate.qml +++ b/tests/manual/testbench/controls/SwipeDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/Switch.qml b/tests/manual/testbench/controls/Switch.qml index 6df1a0e0..6e877a49 100644 --- a/tests/manual/testbench/controls/Switch.qml +++ b/tests/manual/testbench/controls/Switch.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/SwitchDelegate.qml b/tests/manual/testbench/controls/SwitchDelegate.qml index ac4a322a..4f60da55 100644 --- a/tests/manual/testbench/controls/SwitchDelegate.qml +++ b/tests/manual/testbench/controls/SwitchDelegate.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/TabBar.qml b/tests/manual/testbench/controls/TabBar.qml index 7e98eb93..a7a1de49 100644 --- a/tests/manual/testbench/controls/TabBar.qml +++ b/tests/manual/testbench/controls/TabBar.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls // TODO QtObject { diff --git a/tests/manual/testbench/controls/TextArea.qml b/tests/manual/testbench/controls/TextArea.qml index ae3cf08b..dfe28f79 100644 --- a/tests/manual/testbench/controls/TextArea.qml +++ b/tests/manual/testbench/controls/TextArea.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/TextField.qml b/tests/manual/testbench/controls/TextField.qml index b9a5bfb8..1eed3a6c 100644 --- a/tests/manual/testbench/controls/TextField.qml +++ b/tests/manual/testbench/controls/TextField.qml @@ -48,8 +48,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/ToolBar.qml b/tests/manual/testbench/controls/ToolBar.qml index ec80ebe7..3aba3377 100644 --- a/tests/manual/testbench/controls/ToolBar.qml +++ b/tests/manual/testbench/controls/ToolBar.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Layouts 1.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts // TODO QtObject { diff --git a/tests/manual/testbench/controls/ToolTip.qml b/tests/manual/testbench/controls/ToolTip.qml index 3e3a017b..ddcf92f8 100644 --- a/tests/manual/testbench/controls/ToolTip.qml +++ b/tests/manual/testbench/controls/ToolTip.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Layouts 1.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/controls/Tumbler.qml b/tests/manual/testbench/controls/Tumbler.qml index f10af24e..a2dbebef 100644 --- a/tests/manual/testbench/controls/Tumbler.qml +++ b/tests/manual/testbench/controls/Tumbler.qml @@ -48,9 +48,9 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 -import QtQuick.Layouts 1.12 +import QtQuick +import QtQuick.Controls +import QtQuick.Layouts QtObject { property var supportedStates: [ diff --git a/tests/manual/testbench/main.cpp b/tests/manual/testbench/main.cpp index 0287537d..0584bd6d 100644 --- a/tests/manual/testbench/main.cpp +++ b/tests/manual/testbench/main.cpp @@ -55,6 +55,7 @@ #include <QQmlApplicationEngine> #include <QQmlContext> #include <QQuickStyle> +#include <QtQuickControls2/private/qquickstyle_p.h> #include "assetfixer.h" #include "clipboard.h" @@ -85,7 +86,7 @@ int main(int argc, char *argv[]) qmlRegisterType<Clipboard>("App", 1, 0, "Clipboard"); qmlRegisterType<DirectoryValidator>("App", 1, 0, "DirectoryValidator"); - engine.rootContext()->setContextProperty("availableStyles", QQuickStyle::availableStyles()); + engine.rootContext()->setContextProperty("availableStyles", QQuickStylePrivate::builtInStyles()); engine.load(QUrl(QStringLiteral("qrc:/testbench.qml"))); diff --git a/tests/manual/testbench/testbench.pro b/tests/manual/testbench/testbench.pro index 829bcbde..4509f496 100644 --- a/tests/manual/testbench/testbench.pro +++ b/tests/manual/testbench/testbench.pro @@ -1,6 +1,6 @@ TEMPLATE = app -QT += qml quick quickcontrols2 +QT += qml quick quickcontrols2 quickcontrols2-private CONFIG += c++11 HEADERS += \ diff --git a/tests/manual/testbench/testbench.qml b/tests/manual/testbench/testbench.qml index daef63b1..2cd8fb43 100644 --- a/tests/manual/testbench/testbench.qml +++ b/tests/manual/testbench/testbench.qml @@ -48,15 +48,15 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Window 2.12 -import QtQuick.Layouts 1.12 -import QtQuick.Controls 2.12 -import QtQuick.Controls.Imagine 2.12 -import Qt.labs.folderlistmodel 2.2 -import Qt.labs.settings 1.0 +import QtQuick +import QtQuick.Window +import QtQuick.Layouts +import QtQuick.Controls +import QtQuick.Controls.Imagine +import Qt.labs.folderlistmodel +import Qt.labs.settings -import App 1.0 +import App ApplicationWindow { id: window @@ -70,7 +70,7 @@ ApplicationWindow { readonly property bool usingImagineStyle: settings.style.toLowerCase() === "imagine" // Some controls should be visible regardless of whether or not custom assets are lacking for it, // so we use the default assets in some cases. - readonly property string defaultImaginePath: "qrc:/qt-project.org/imports/QtQuick/Controls.2/Imagine/images/" + readonly property string defaultImaginePath: "qrc:/qt-project.org/imports/QtQuick/Controls/Imagine/images/" property bool settingsLoaded: false readonly property string imagineTitleText: " - " + (settings.useCustomImaginePath ? settings.imaginePath : "Default Assets") diff --git a/tests/manual/viewinqwidget/main.cpp b/tests/manual/viewinqwidget/main.cpp index 80cbb415..b6b7a5ff 100644 --- a/tests/manual/viewinqwidget/main.cpp +++ b/tests/manual/viewinqwidget/main.cpp @@ -38,9 +38,9 @@ #include <QHBoxLayout> #include <QVBoxLayout> #include <QDebug> -#include <QDesktopWidget> #include <QDir> #include <QGroupBox> +#include <QScreen> #include <QQmlApplicationEngine> #include <QQmlError> #include <QQuickView> @@ -82,7 +82,7 @@ int main(int argc, char *argv[]) vLayout->addWidget(container); hLayout->addWidget(groupBox); - const QRect availableGeometry = QApplication::desktop()->availableGeometry(&widget); + const QRect availableGeometry = widget.screen()->availableGeometry(); widget.move(availableGeometry.center() - QPoint(widget.sizeHint().width() / 2, widget.sizeHint().height() / 2)); widget.show(); diff --git a/tests/manual/viewinqwidget/main.qml b/tests/manual/viewinqwidget/main.qml index f383f022..5ac170b3 100644 --- a/tests/manual/viewinqwidget/main.qml +++ b/tests/manual/viewinqwidget/main.qml @@ -34,8 +34,8 @@ ** ****************************************************************************/ -import QtQuick 2.12 -import QtQuick.Controls 2.12 +import QtQuick +import QtQuick.Controls Item { visible: true |