diff options
Diffstat (limited to 'tests/manual/examples/widgets/tutorials/addressbook/part1')
5 files changed, 124 insertions, 0 deletions
diff --git a/tests/manual/examples/widgets/tutorials/addressbook/part1/CMakeLists.txt b/tests/manual/examples/widgets/tutorials/addressbook/part1/CMakeLists.txt new file mode 100644 index 0000000000..12eaccd384 --- /dev/null +++ b/tests/manual/examples/widgets/tutorials/addressbook/part1/CMakeLists.txt @@ -0,0 +1,37 @@ +# Copyright (C) 2022 The Qt Company Ltd. +# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause + +cmake_minimum_required(VERSION 3.16) +project(part1 LANGUAGES CXX) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/widgets/tutorials/addressbook/part1") + +find_package(Qt6 REQUIRED COMPONENTS Core Gui Widgets) + +qt_standard_project_setup() + +qt_add_executable(part1 + addressbook.cpp addressbook.h + main.cpp +) + +set_target_properties(part1 PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) + +target_link_libraries(part1 PRIVATE + Qt6::Core + Qt6::Gui + Qt6::Widgets +) + +install(TARGETS part1 + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/tests/manual/examples/widgets/tutorials/addressbook/part1/addressbook.cpp b/tests/manual/examples/widgets/tutorials/addressbook/part1/addressbook.cpp new file mode 100644 index 0000000000..eae818dbbf --- /dev/null +++ b/tests/manual/examples/widgets/tutorials/addressbook/part1/addressbook.cpp @@ -0,0 +1,30 @@ +// Copyright (C) 2016 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause + +#include <QtWidgets> +#include "addressbook.h" + +//! [constructor and input fields] +AddressBook::AddressBook(QWidget *parent) + : QWidget(parent) +{ + QLabel *nameLabel = new QLabel(tr("Name:")); + nameLine = new QLineEdit; + + QLabel *addressLabel = new QLabel(tr("Address:")); + addressText = new QTextEdit; +//! [constructor and input fields] + +//! [layout] + QGridLayout *mainLayout = new QGridLayout; + mainLayout->addWidget(nameLabel, 0, 0); + mainLayout->addWidget(nameLine, 0, 1); + mainLayout->addWidget(addressLabel, 1, 0, Qt::AlignTop); + mainLayout->addWidget(addressText, 1, 1); +//! [layout] + +//![setting the layout] + setLayout(mainLayout); + setWindowTitle(tr("Simple Address Book")); +} +//! [setting the layout] diff --git a/tests/manual/examples/widgets/tutorials/addressbook/part1/addressbook.h b/tests/manual/examples/widgets/tutorials/addressbook/part1/addressbook.h new file mode 100644 index 0000000000..f2e28b4135 --- /dev/null +++ b/tests/manual/examples/widgets/tutorials/addressbook/part1/addressbook.h @@ -0,0 +1,29 @@ +// Copyright (C) 2016 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause + +#ifndef ADDRESSBOOK_H +#define ADDRESSBOOK_H + +#include <QWidget> + +QT_BEGIN_NAMESPACE +class QLabel; +class QLineEdit; +class QTextEdit; +QT_END_NAMESPACE + +//! [class definition] +class AddressBook : public QWidget +{ + Q_OBJECT + +public: + AddressBook(QWidget *parent = nullptr); + +private: + QLineEdit *nameLine; + QTextEdit *addressText; +}; +//! [class definition] + +#endif diff --git a/tests/manual/examples/widgets/tutorials/addressbook/part1/main.cpp b/tests/manual/examples/widgets/tutorials/addressbook/part1/main.cpp new file mode 100644 index 0000000000..879fb606a2 --- /dev/null +++ b/tests/manual/examples/widgets/tutorials/addressbook/part1/main.cpp @@ -0,0 +1,17 @@ +// Copyright (C) 2016 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause + +#include <QtWidgets> +#include "addressbook.h" + +//! [main function] +int main(int argc, char *argv[]) +{ + QApplication app(argc, argv); + + AddressBook addressBook; + addressBook.show(); + + return app.exec(); +} +//! [main function] diff --git a/tests/manual/examples/widgets/tutorials/addressbook/part1/part1.pro b/tests/manual/examples/widgets/tutorials/addressbook/part1/part1.pro new file mode 100644 index 0000000000..35d4a0152e --- /dev/null +++ b/tests/manual/examples/widgets/tutorials/addressbook/part1/part1.pro @@ -0,0 +1,11 @@ +QT += widgets + +SOURCES = addressbook.cpp \ + main.cpp +HEADERS = addressbook.h + +QMAKE_PROJECT_NAME = ab_part1 + +# install +target.path = $$[QT_INSTALL_EXAMPLES]/widgets/tutorials/addressbook/part1 +INSTALLS += target |