diff options
| author | Olivier De Cannière <olivier.decanniere@qt.io> | 2023-03-17 15:42:47 +0100 |
|---|---|---|
| committer | Olivier De Cannière <olivier.decanniere@qt.io> | 2023-03-30 18:02:16 +0200 |
| commit | 405bd4299819e39397cea0090a9442fd4b6ce911 (patch) | |
| tree | c1254e18a8ab47cc6bde048eb52ad0d89c2492c8 /examples/qml/referenceexamples/adding | |
| parent | 03ff348b4942ae29dd5bc2bd563998d7ba82ecd7 (diff) | |
| download | qtdeclarative-405bd4299819e39397cea0090a9442fd4b6ce911.tar.gz | |
Doc: Revamp "Extending QML" examples into a tutorial
The examples in the "Extending QML" series were often redundant with the
information of the "Writing QML Extensions with C++" tutorial, had
outdated code and sometimes had no documentation. The examples that
covered topics not mentioned in the first tutorial were revamped into a
second "advanced" tutorial extending the first one. The others were
removed. The remaining examples were largely based on the same example
code of a birthday party. This code was slightly adapted and separated
into 7 states, each building upon the previous, with the code change
illustrating the associated feature. A tutorial page, in the style of
the first one, was added documenting the different QML features and
the required code changes in the example project.
Links in the documentation from and to the affected pages were update
as best as possible.
Pick-to: 6.5
Fixes: QTBUG-111033
Change-Id: I9d97e8b32b128c1624d67525996fa14d493909d3
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Diffstat (limited to 'examples/qml/referenceexamples/adding')
| -rw-r--r-- | examples/qml/referenceexamples/adding/CMakeLists.txt | 42 | ||||
| -rw-r--r-- | examples/qml/referenceexamples/adding/adding.pro | 13 | ||||
| -rw-r--r-- | examples/qml/referenceexamples/adding/adding.qrc | 5 | ||||
| -rw-r--r-- | examples/qml/referenceexamples/adding/example.qml | 11 | ||||
| -rw-r--r-- | examples/qml/referenceexamples/adding/main.cpp | 26 | ||||
| -rw-r--r-- | examples/qml/referenceexamples/adding/person.cpp | 27 | ||||
| -rw-r--r-- | examples/qml/referenceexamples/adding/person.h | 32 |
7 files changed, 0 insertions, 156 deletions
diff --git a/examples/qml/referenceexamples/adding/CMakeLists.txt b/examples/qml/referenceexamples/adding/CMakeLists.txt deleted file mode 100644 index f1d3fc6eac..0000000000 --- a/examples/qml/referenceexamples/adding/CMakeLists.txt +++ /dev/null @@ -1,42 +0,0 @@ -# Copyright (C) 2022 The Qt Company Ltd. -# SPDX-License-Identifier: BSD-3-Clause - -cmake_minimum_required(VERSION 3.16) -project(adding LANGUAGES CXX) - -set(CMAKE_AUTOMOC ON) - -if(NOT DEFINED INSTALL_EXAMPLESDIR) - set(INSTALL_EXAMPLESDIR "examples") -endif() - -set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/qml/referenceexamples/adding") - -find_package(Qt6 REQUIRED COMPONENTS Core Qml) - -qt_add_executable(adding - main.cpp - person.cpp person.h -) - -set_target_properties(adding PROPERTIES - WIN32_EXECUTABLE TRUE - MACOSX_BUNDLE TRUE -) - -target_link_libraries(adding PUBLIC - Qt::Core - Qt::Qml -) - -qt_add_qml_module(adding - URI People - QML_FILES example.qml - NO_RESOURCE_TARGET_PATH -) - -install(TARGETS adding - RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" - BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" - LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" -) diff --git a/examples/qml/referenceexamples/adding/adding.pro b/examples/qml/referenceexamples/adding/adding.pro deleted file mode 100644 index a4a677c3c4..0000000000 --- a/examples/qml/referenceexamples/adding/adding.pro +++ /dev/null @@ -1,13 +0,0 @@ -QT = core qml -CONFIG += qmltypes - -QML_IMPORT_NAME = People -QML_IMPORT_MAJOR_VERSION = 1 - -SOURCES += main.cpp \ - person.cpp -HEADERS += person.h -RESOURCES += adding.qrc - -target.path = $$[QT_INSTALL_EXAMPLES]/qml/referenceexamples/adding -INSTALLS += target diff --git a/examples/qml/referenceexamples/adding/adding.qrc b/examples/qml/referenceexamples/adding/adding.qrc deleted file mode 100644 index e2fa01d5e7..0000000000 --- a/examples/qml/referenceexamples/adding/adding.qrc +++ /dev/null @@ -1,5 +0,0 @@ -<!DOCTYPE RCC><RCC version="1.0"> -<qresource> - <file>example.qml</file> -</qresource> -</RCC> diff --git a/examples/qml/referenceexamples/adding/example.qml b/examples/qml/referenceexamples/adding/example.qml deleted file mode 100644 index 068352bc35..0000000000 --- a/examples/qml/referenceexamples/adding/example.qml +++ /dev/null @@ -1,11 +0,0 @@ -// Copyright (C) 2017 The Qt Company Ltd. -// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause - -// ![0] -import People - -Person { - name: "Bob Jones" - shoeSize: 12 -} -// ![0] diff --git a/examples/qml/referenceexamples/adding/main.cpp b/examples/qml/referenceexamples/adding/main.cpp deleted file mode 100644 index 319217da56..0000000000 --- a/examples/qml/referenceexamples/adding/main.cpp +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright (C) 2021 The Qt Company Ltd. -// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause - -#include <QCoreApplication> -#include <QQmlEngine> -#include <QQmlComponent> -#include <QDebug> -#include "person.h" - -int main(int argc, char ** argv) -{ - QCoreApplication app(argc, argv); - - QQmlEngine engine; - QQmlComponent component(&engine, QUrl("qrc:example.qml")); - auto *person = qobject_cast<Person *>(component.create()); - if (!person) { - qWarning() << component.errors(); - return EXIT_FAILURE; - } - - qInfo() << "The person's name is" << person->name() - << "\nThey wear a" << person->shoeSize() << "sized shoe"; - - return EXIT_SUCCESS; -} diff --git a/examples/qml/referenceexamples/adding/person.cpp b/examples/qml/referenceexamples/adding/person.cpp deleted file mode 100644 index 5b6ce4b9d6..0000000000 --- a/examples/qml/referenceexamples/adding/person.cpp +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright (C) 2021 The Qt Company Ltd. -// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause - -#include "person.h" - -// ![0] -QString Person::name() const -{ - return m_name; -} - -void Person::setName(const QString &n) -{ - m_name = n; -} - -int Person::shoeSize() const -{ - return m_shoeSize; -} - -void Person::setShoeSize(int s) -{ - m_shoeSize = s; -} - -// ![0] diff --git a/examples/qml/referenceexamples/adding/person.h b/examples/qml/referenceexamples/adding/person.h deleted file mode 100644 index 867927ee2b..0000000000 --- a/examples/qml/referenceexamples/adding/person.h +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (C) 2021 The Qt Company Ltd. -// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause - -#ifndef PERSON_H -#define PERSON_H - -#include <QObject> -#include <QtQml/qqml.h> - -//![0] -class Person : public QObject -{ - Q_OBJECT - Q_PROPERTY(QString name READ name WRITE setName) - Q_PROPERTY(int shoeSize READ shoeSize WRITE setShoeSize) - QML_ELEMENT -public: - using QObject::QObject; - - QString name() const; - void setName(const QString &); - - int shoeSize() const; - void setShoeSize(int); - -private: - QString m_name; - int m_shoeSize = 0; -}; -//![0] - -#endif // PERSON_H |
