Fix positioners example to use a QML module

This fix changes the CMakeLists.txt file to use qt_add_qml_module().

It also updates copyright headers and changes import statements to
remove version numbers. This causes the example to use qt quick
controls 2, rather than qt quick controls 1, which is obsolete, and
should no longer be used by any of our examples.

Pick-to: 6.2
Change-Id: I1e40990b3a184c73b67a2ab04b4ec555774b8a1b
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
This commit is contained in:
Oliver Eftevaag 2021-09-03 12:56:41 +02:00
parent 56b47052b8
commit 06e96fdcde
4 changed files with 28 additions and 61 deletions

View File

@ -7,7 +7,6 @@ set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOMOC ON) set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON) set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)
if(NOT DEFINED INSTALL_EXAMPLESDIR) if(NOT DEFINED INSTALL_EXAMPLESDIR)
set(INSTALL_EXAMPLESDIR "examples") set(INSTALL_EXAMPLESDIR "examples")
@ -15,68 +14,36 @@ endif()
set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/quick/positioners") set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/quick/positioners")
find_package(Qt6 COMPONENTS Core) find_package(Qt6 COMPONENTS Core Gui Quick Qml)
find_package(Qt6 COMPONENTS Gui)
find_package(Qt6 COMPONENTS Quick)
find_package(Qt6 COMPONENTS Qml)
qt_add_executable(positioners add_subdirectory("../shared" "shared")
qt_add_executable(positionersexample
WIN32
MACOSX_BUNDLE
main.cpp main.cpp
) )
set_target_properties(positioners PROPERTIES
WIN32_EXECUTABLE TRUE qt_add_qml_module(positionersexample
MACOSX_BUNDLE TRUE URI positioners
VERSION 1.0
QML_FILES
"positioners-attachedproperties.qml"
"positioners-transitions.qml"
"positioners.qml"
) )
target_link_libraries(positioners PUBLIC
target_link_libraries(positionersexample PUBLIC
Qt::Core Qt::Core
Qt::Gui Qt::Gui
Qt::Qml Qt::Qml
Qt::Quick Qt::Quick
) )
install(TARGETS positionersexample
# Resources:
set(positioners_resource_files
"positioners-attachedproperties.qml"
"positioners-transitions.qml"
"positioners.qml"
)
qt6_add_resources(positioners "positioners"
PREFIX
"/positioners"
FILES
${positioners_resource_files}
)
set(shared_resource_files
"../shared/Button.qml"
"../shared/CheckBox.qml"
"../shared/FlickrRssModel.qml"
"../shared/Label.qml"
"../shared/LauncherList.qml"
"../shared/SimpleLauncherDelegate.qml"
"../shared/Slider.qml"
"../shared/TabSet.qml"
"../shared/TextField.qml"
"../shared/images/back.png"
"../shared/images/checkmark.png"
"../shared/images/next.png"
"../shared/images/qt-logo.png"
"../shared/images/slider_handle.png"
"../shared/images/tab.png"
)
qt6_add_resources(positioners "shared"
PREFIX
"/shared"
BASE
"../shared"
FILES
${shared_resource_files}
)
install(TARGETS positioners
RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
) )
bundle_shared(positionersexample)

View File

@ -1,6 +1,6 @@
/**************************************************************************** /****************************************************************************
** **
** Copyright (C) 2017 The Qt Company Ltd. ** Copyright (C) 2021 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/ ** Contact: https://www.qt.io/licensing/
** **
** This file is part of the examples of the Qt Toolkit. ** This file is part of the examples of the Qt Toolkit.
@ -48,8 +48,8 @@
** **
****************************************************************************/ ****************************************************************************/
import QtQuick 2.0 import QtQuick
import QtQuick.Controls 1.1 import QtQuick.Controls
Rectangle { Rectangle {
id: page id: page

View File

@ -1,6 +1,6 @@
/**************************************************************************** /****************************************************************************
** **
** Copyright (C) 2017 The Qt Company Ltd. ** Copyright (C) 2021 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/ ** Contact: https://www.qt.io/licensing/
** **
** This file is part of the examples of the Qt Toolkit. ** This file is part of the examples of the Qt Toolkit.
@ -48,8 +48,8 @@
** **
****************************************************************************/ ****************************************************************************/
import QtQml 2.0 import QtQml
import QtQuick 2.0 import QtQuick
Item { Item {
id: page id: page

View File

@ -1,6 +1,6 @@
/**************************************************************************** /****************************************************************************
** **
** Copyright (C) 2017 The Qt Company Ltd. ** Copyright (C) 2021 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/ ** Contact: https://www.qt.io/licensing/
** **
** This file is part of the examples of the Qt Toolkit. ** This file is part of the examples of the Qt Toolkit.
@ -48,8 +48,8 @@
** **
****************************************************************************/ ****************************************************************************/
import QtQuick 2.0 import QtQuick
import "../shared" as Examples import shared as Examples
Item { Item {
height: 480 height: 480