diff options
author | Oliver Eftevaag <oliver.eftevaag@qt.io> | 2021-11-11 16:36:38 +0100 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2021-11-12 15:41:53 +0000 |
commit | 0a86a3bdb4536b8d3b29e42fbca3cf46530cd9cc (patch) | |
tree | cbe7ece7ef05eeaf3ea458df3568e9f342117ad5 /examples/quick/models/abstractitemmodel | |
parent | 3b0b18a5cd54b2f73c54de8530a49d4137d49e73 (diff) |
Model examples: use new cmake api
The models directory contains 3 subdirectories with an example project
in each.
This patch updates the CMakeLists.txt files to use qt_add_qml_module()
instead of the old qt_add_resources().
In order to achieve intercompatibility with both cmake and qmake, I had
to do some slight modifications to both the .qrc files and the url path
used to set the source to the QQuickView.
Task-number: QTBUG-98130
Change-Id: I13d1c01a0eda181823f394bc2a4259ce98abd4f8
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
(cherry picked from commit a155b3bc3ee161fbb7ff1760781577700b0aafce)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'examples/quick/models/abstractitemmodel')
5 files changed, 16 insertions, 28 deletions
diff --git a/examples/quick/models/abstractitemmodel/CMakeLists.txt b/examples/quick/models/abstractitemmodel/CMakeLists.txt index 240f171c41..486e6d376a 100644 --- a/examples/quick/models/abstractitemmodel/CMakeLists.txt +++ b/examples/quick/models/abstractitemmodel/CMakeLists.txt @@ -7,7 +7,6 @@ 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") @@ -15,20 +14,13 @@ endif() set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/quick/models/abstractitemmodel") -find_package(Qt6 COMPONENTS Core) -find_package(Qt6 COMPONENTS Gui) -find_package(Qt6 COMPONENTS Qml) -find_package(Qt6 COMPONENTS Quick) +find_package(Qt6 COMPONENTS Core Gui Qml Quick) -qt_add_executable(abstractitemmodel +qt_add_executable(abstractitemmodelexample WIN32 MACOSX_BUNDLE main.cpp - model.cpp model.h + model.cpp ) -set_target_properties(abstractitemmodel PROPERTIES - WIN32_EXECUTABLE TRUE - MACOSX_BUNDLE TRUE -) -target_link_libraries(abstractitemmodel PUBLIC +target_link_libraries(abstractitemmodelexample PUBLIC Qt::Core Qt::Gui Qt::Qml @@ -37,18 +29,14 @@ target_link_libraries(abstractitemmodel PUBLIC # Resources: -set(abstractitemmodel_resource_files - "view.qml" -) - -qt6_add_resources(abstractitemmodel "abstractitemmodel" - PREFIX - "/" - FILES - ${abstractitemmodel_resource_files} +qt_add_qml_module(abstractitemmodelexample + URI abstractitemmodel + VERSION 1.0 + QML_FILES + "view.qml" ) -install(TARGETS abstractitemmodel +install(TARGETS abstractitemmodelexample RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" diff --git a/examples/quick/models/abstractitemmodel/abstractitemmodel.qrc b/examples/quick/models/abstractitemmodel/abstractitemmodel.qrc index 4ae861cb3d..ad8c2df8ae 100644 --- a/examples/quick/models/abstractitemmodel/abstractitemmodel.qrc +++ b/examples/quick/models/abstractitemmodel/abstractitemmodel.qrc @@ -1,5 +1,5 @@ <!DOCTYPE RCC><RCC version="1.0"> -<qresource> +<qresource prefix="/abstractitemmodel"> <file>view.qml</file> </qresource> </RCC> diff --git a/examples/quick/models/abstractitemmodel/main.cpp b/examples/quick/models/abstractitemmodel/main.cpp index dd5b368c6b..9e820391f6 100644 --- a/examples/quick/models/abstractitemmodel/main.cpp +++ b/examples/quick/models/abstractitemmodel/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2017 The Qt Company Ltd. +** Copyright (C) 2021 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the examples of the Qt Toolkit. @@ -70,7 +70,7 @@ int main(int argc, char ** argv) view.setResizeMode(QQuickView::SizeRootObjectToView); view.setInitialProperties({{"model", QVariant::fromValue(&model)}}); //![0] - view.setSource(QUrl("qrc:view.qml")); + view.setSource(QUrl("qrc:/abstractitemmodel/view.qml")); view.show(); return app.exec(); diff --git a/examples/quick/models/abstractitemmodel/model.cpp b/examples/quick/models/abstractitemmodel/model.cpp index 9d0032e34c..c58e05577a 100644 --- a/examples/quick/models/abstractitemmodel/model.cpp +++ b/examples/quick/models/abstractitemmodel/model.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2017 The Qt Company Ltd. +** Copyright (C) 2021 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the examples of the Qt Toolkit. diff --git a/examples/quick/models/abstractitemmodel/view.qml b/examples/quick/models/abstractitemmodel/view.qml index 2b9f87df92..f80c4dca72 100644 --- a/examples/quick/models/abstractitemmodel/view.qml +++ b/examples/quick/models/abstractitemmodel/view.qml @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2017 The Qt Company Ltd. +** Copyright (C) 2021 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the examples of the Qt Toolkit. @@ -47,7 +47,7 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ -import QtQuick 2.0 +import QtQuick //![0] ListView { |