diff --git a/tests/manual/widgets/CMakeLists.txt b/tests/manual/widgets/CMakeLists.txt index 9e5a48eb20d..1ef0a008009 100644 --- a/tests/manual/widgets/CMakeLists.txt +++ b/tests/manual/widgets/CMakeLists.txt @@ -1,4 +1,5 @@ add_subdirectory(crumblepath) add_subdirectory(infolabel) +add_subdirectory(layoutbuilder) add_subdirectory(manhattanstyle) add_subdirectory(tracing) diff --git a/tests/manual/widgets/layoutbuilder/CMakeLists.txt b/tests/manual/widgets/layoutbuilder/CMakeLists.txt new file mode 100644 index 00000000000..d80ab33524d --- /dev/null +++ b/tests/manual/widgets/layoutbuilder/CMakeLists.txt @@ -0,0 +1,6 @@ +add_qtc_test(tst_manual_widgets_layoutbuilder + MANUALTEST + DEPENDS Qt5::Gui Utils Core + SOURCES + tst_manual_widgets_layoutbuilder.cpp +) diff --git a/tests/manual/widgets/layoutbuilder/layoutbuilder.qbs b/tests/manual/widgets/layoutbuilder/layoutbuilder.qbs new file mode 100644 index 00000000000..f51ad6883d8 --- /dev/null +++ b/tests/manual/widgets/layoutbuilder/layoutbuilder.qbs @@ -0,0 +1,12 @@ + +CppApplication { + name: "Manual Test Utils LayoutBuilder" + + Depends { name: "qtc" } + Depends { name: "Core" } + Depends { name: "Utils" } + + files: [ + "tst_manual_widgets_layoutbuilder.cpp", + ] +} diff --git a/tests/manual/widgets/layoutbuilder/tst_manual_widgets_layoutbuilder.cpp b/tests/manual/widgets/layoutbuilder/tst_manual_widgets_layoutbuilder.cpp new file mode 100644 index 00000000000..bc8723244fe --- /dev/null +++ b/tests/manual/widgets/layoutbuilder/tst_manual_widgets_layoutbuilder.cpp @@ -0,0 +1,54 @@ +/**************************************************************************** +** +** Copyright (C) 2022 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of Qt Creator. +** +** 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 General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** 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-3.0.html. +** +****************************************************************************/ + +#include + +#include +#include + +using namespace Utils::Layouting; + +int main(int argc, char *argv[]) +{ + QApplication app(argc, argv); + + auto lineEdit = new QLineEdit("0"); + + auto minusClick = [lineEdit] { + lineEdit->setText(QString::number(lineEdit->text().toInt() + 1)); + }; + + auto plusClick = [lineEdit] { + lineEdit->setText(QString::number(lineEdit->text().toInt() + 1)); + }; + + Row { + PushButton { text("-"), onClicked(minusClick) }, + lineEdit, + PushButton { text("+"), onClicked(plusClick) } + }.emerge()->show(); + + return app.exec(); +} diff --git a/tests/manual/widgets/widgets.qbs b/tests/manual/widgets/widgets.qbs index 2d55a7c3478..518ea823b1b 100644 --- a/tests/manual/widgets/widgets.qbs +++ b/tests/manual/widgets/widgets.qbs @@ -8,6 +8,7 @@ Project { references: [ "crumblepath/crumblepath.qbs", "infolabel/infolabel.qbs", + "layoutbuilder/layoutbuilder.qbs", "manhattanstyle/manhattanstyle.qbs", "tracing/tracing.qbs", ]