aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMitch Curtis <mitch.curtis@qt.io>2019-02-18 17:43:11 +0100
committerMitch Curtis <mitch.curtis@qt.io>2019-02-22 09:20:46 +0000
commitfa641ab12340fa128668318a1fe7c6a01906f163 (patch)
tree8cd0357e727cbc3eaef7c0b37e686bea73ebf891
parentfeed3b7b8077f2c9bba72c49e249fb96c262d72e (diff)
Add dialogs manual test
As with the buttons manual test, there are a lot of possible combinations of dialogs, which makes automated testing very difficult. This test will allow us to see lots of different combinations all at once for a particular style. Change-Id: I42fa5a1e027c9f56bebf859078d3e54fe1902228 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
-rw-r--r--tests/manual/dialogs/CustomDialog.qml74
-rw-r--r--tests/manual/dialogs/DialogLabel.qml60
-rw-r--r--tests/manual/dialogs/Marker.qml68
-rw-r--r--tests/manual/dialogs/dialogs.cpp63
-rw-r--r--tests/manual/dialogs/dialogs.pro11
-rw-r--r--tests/manual/dialogs/dialogs.qml247
-rw-r--r--tests/manual/dialogs/qtquickcontrols2.conf6
7 files changed, 529 insertions, 0 deletions
diff --git a/tests/manual/dialogs/CustomDialog.qml b/tests/manual/dialogs/CustomDialog.qml
new file mode 100644
index 00000000..0e86fbb8
--- /dev/null
+++ b/tests/manual/dialogs/CustomDialog.qml
@@ -0,0 +1,74 @@
+/****************************************************************************
+**
+** Copyright (C) 2019 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** 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.
+**
+** BSD License Usage
+** Alternatively, you may use this file under the terms of the BSD license
+** as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of The Qt Company Ltd nor the names of its
+** contributors may be used to endorse or promote products derived
+** from this software without specific prior written permission.
+**
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+import QtQuick.Controls 2.12
+
+Dialog {
+ id: root
+ x: previousDialog ? previousDialog.x + previousDialog.width + space : 0
+ y: previousDialog ? previousDialog.y : 0
+ closePolicy: Dialog.NoAutoClose
+ visible: true
+
+ property Dialog previousDialog
+ property int space: dialogSpacing
+
+ Marker {
+ parent: root.footer.contentItem
+ visible: visualizeDialogButtonBoxContentItem
+ text: "footer.contentItem"
+ }
+ Marker {
+ parent: root.footer
+ visible: visualizeDialogButtonBox
+ text: "footer"
+ border.color: "red"
+ }
+}
diff --git a/tests/manual/dialogs/DialogLabel.qml b/tests/manual/dialogs/DialogLabel.qml
new file mode 100644
index 00000000..c4775aea
--- /dev/null
+++ b/tests/manual/dialogs/DialogLabel.qml
@@ -0,0 +1,60 @@
+/****************************************************************************
+**
+** Copyright (C) 2019 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** 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.
+**
+** BSD License Usage
+** Alternatively, you may use this file under the terms of the BSD license
+** as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of The Qt Company Ltd nor the names of its
+** contributors may be used to endorse or promote products derived
+** from this software without specific prior written permission.
+**
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+import QtQuick.Controls 2.12
+
+Label {
+ x: dialog.x + (dialog.width - width) / 2
+ y: dialog.y - height
+ width: dialog.width
+ wrapMode: Label.Wrap
+
+ property Dialog dialog
+}
diff --git a/tests/manual/dialogs/Marker.qml b/tests/manual/dialogs/Marker.qml
new file mode 100644
index 00000000..439b50f2
--- /dev/null
+++ b/tests/manual/dialogs/Marker.qml
@@ -0,0 +1,68 @@
+/****************************************************************************
+**
+** Copyright (C) 2019 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** 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.
+**
+** BSD License Usage
+** Alternatively, you may use this file under the terms of the BSD license
+** as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of The Qt Company Ltd nor the names of its
+** contributors may be used to endorse or promote products derived
+** from this software without specific prior written permission.
+**
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+import QtQuick 2.12
+
+Rectangle {
+ anchors.fill: parent
+ color: "transparent"
+ border.color: "darkorange"
+
+ property alias text: label.text
+
+ Text {
+ id: label
+ font.pixelSize: Qt.application.font.pixelSize * 0.6
+ color: parent.border.color
+ anchors.left: parent.left
+ anchors.bottom: parent.bottom
+ anchors.margins: 4
+ }
+}
diff --git a/tests/manual/dialogs/dialogs.cpp b/tests/manual/dialogs/dialogs.cpp
new file mode 100644
index 00000000..73faa175
--- /dev/null
+++ b/tests/manual/dialogs/dialogs.cpp
@@ -0,0 +1,63 @@
+/****************************************************************************
+**
+** Copyright (C) 2019 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** 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.
+**
+** BSD License Usage
+** Alternatively, you may use this file under the terms of the BSD license
+** as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of The Qt Company Ltd nor the names of its
+** contributors may be used to endorse or promote products derived
+** from this software without specific prior written permission.
+**
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QGuiApplication>
+#include <QQmlApplicationEngine>
+
+int main(int argc, char *argv[])
+{
+ QGuiApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
+ QGuiApplication app(argc, argv);
+
+ QQmlApplicationEngine engine;
+ engine.load(QUrl("qrc:/dialogs.qml"));
+
+ return app.exec();
+}
diff --git a/tests/manual/dialogs/dialogs.pro b/tests/manual/dialogs/dialogs.pro
new file mode 100644
index 00000000..4863923f
--- /dev/null
+++ b/tests/manual/dialogs/dialogs.pro
@@ -0,0 +1,11 @@
+TEMPLATE = app
+TARGET = dialogs
+QT += qml quickcontrols2
+
+SOURCES += dialogs.cpp
+RESOURCES += \
+ qtquickcontrols2.conf \
+ dialogs.qml \
+ Marker.qml \
+ CustomDialog.qml \
+ DialogLabel.qml
diff --git a/tests/manual/dialogs/dialogs.qml b/tests/manual/dialogs/dialogs.qml
new file mode 100644
index 00000000..a3048c34
--- /dev/null
+++ b/tests/manual/dialogs/dialogs.qml
@@ -0,0 +1,247 @@
+/****************************************************************************
+**
+** Copyright (C) 2019 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** 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.
+**
+** BSD License Usage
+** Alternatively, you may use this file under the terms of the BSD license
+** as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of The Qt Company Ltd nor the names of its
+** contributors may be used to endorse or promote products derived
+** from this software without specific prior written permission.
+**
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+import QtQuick 2.12
+import QtQuick.Controls 2.12
+import QtQuick.Layouts 1.12
+
+ApplicationWindow {
+ id: window
+ width: 1200
+ height: 800
+ title: "Buttons"
+ visible: true
+
+ property alias visualizeDialogButtonBoxContentItem: visualizeDialogButtonBoxContentItemMenuItem.checked
+ property alias visualizeDialogButtonBox: visualizeDialogButtonBoxMenuItem.checked
+
+ property int dialogSpacing: 60
+
+ header: ToolBar {
+ RowLayout {
+ anchors.fill: parent
+ Item {
+ Layout.fillWidth: true
+ }
+
+ ToolButton {
+ text: "Settings"
+ onClicked: settingsMenu.open()
+
+ Menu {
+ id: settingsMenu
+ width: 400
+
+ MenuItem {
+ id: visualizeDialogButtonBoxContentItemMenuItem
+ text: "Visualize DialogButtonBox contentItem"
+ checkable: true
+ }
+
+ MenuItem {
+ id: visualizeDialogButtonBoxMenuItem
+ text: "Visualize DialogButtonBox"
+ checkable: true
+ }
+ }
+ }
+ }
+ }
+
+
+ DialogLabel {
+ text: "implicit width"
+ dialog: dialogImplicitWidthNoButtons
+ width: 100
+ }
+ CustomDialog {
+ id: dialogImplicitWidthNoButtons
+ x: dialogSpacing
+ y: dialogSpacing
+ space: 200
+ }
+
+ DialogLabel {
+ text: "title, implicit width"
+ dialog: dialogImplicitWidthTitleNoButtons
+ width: 150
+ }
+ CustomDialog {
+ id: dialogImplicitWidthTitleNoButtons
+ y: dialogSpacing
+ title: "Test"
+ previousDialog: dialogImplicitWidthNoButtons
+ space: 200
+ }
+
+ DialogLabel {
+ text: "title, fixed width"
+ dialog: dialogFixedWidthTitleNoButtons
+ }
+ CustomDialog {
+ id: dialogFixedWidthTitleNoButtons
+ y: dialogSpacing
+ width: 300
+ title: "Test"
+ previousDialog: dialogImplicitWidthTitleNoButtons
+ space: 200
+ }
+
+
+ DialogLabel {
+ text: "one standard button, implicit width"
+ dialog: dialogImplicitWidthOneButton
+ }
+ CustomDialog {
+ id: dialogImplicitWidthOneButton
+ x: dialogSpacing
+ y: dialogFixedWidthTitleNoButtons.y + dialogFixedWidthTitleNoButtons.height + dialogSpacing
+ standardButtons: Dialog.Ok
+ }
+
+ DialogLabel {
+ text: "two standard buttons, implicit width"
+ dialog: dialogImplicitWidthTwoButtons
+ }
+ CustomDialog {
+ id: dialogImplicitWidthTwoButtons
+ standardButtons: Dialog.Ok | Dialog.Cancel
+ previousDialog: dialogImplicitWidthOneButton
+ }
+
+ DialogLabel {
+ text: "three standard buttons, implicit width"
+ dialog: dialogImplicitWidthThreeButtons
+ }
+ CustomDialog {
+ id: dialogImplicitWidthThreeButtons
+ standardButtons: Dialog.Apply | Dialog.RestoreDefaults | Dialog.Cancel
+ previousDialog: dialogImplicitWidthTwoButtons
+ }
+
+
+ DialogLabel {
+ text: "text, one standard button, implicit width"
+ dialog: dialogTextImplicitWidthOneButton
+ }
+ CustomDialog {
+ id: dialogTextImplicitWidthOneButton
+ x: dialogSpacing
+ y: dialogImplicitWidthThreeButtons.y + dialogImplicitWidthThreeButtons.height + dialogSpacing
+ standardButtons: Dialog.Ok
+
+ Label {
+ text: "A Label"
+ }
+ }
+
+ DialogLabel {
+ text: "text, two standard buttons, implicit width"
+ dialog: dialogTextImplicitWidthTwoButtons
+ }
+ CustomDialog {
+ id: dialogTextImplicitWidthTwoButtons
+ standardButtons: Dialog.Ok | Dialog.Cancel
+ previousDialog: dialogTextImplicitWidthOneButton
+
+ Label {
+ text: "A Label"
+ }
+ }
+
+ DialogLabel {
+ text: "text, three standard buttons, implicit width"
+ dialog: dialogTextImplicitWidthThreeButtons
+ }
+ CustomDialog {
+ id: dialogTextImplicitWidthThreeButtons
+ standardButtons: Dialog.Apply | Dialog.RestoreDefaults | Dialog.Cancel
+ previousDialog: dialogTextImplicitWidthTwoButtons
+
+ Label {
+ text: "A Label"
+ }
+ }
+
+
+ DialogLabel {
+ text: "one standard button, fixed width (300)"
+ dialog: dialogFixedWidthOneButton
+ }
+ CustomDialog {
+ id: dialogFixedWidthOneButton
+ x: dialogSpacing
+ y: dialogTextImplicitWidthThreeButtons.y + dialogTextImplicitWidthThreeButtons.height + dialogSpacing
+ width: 300
+ standardButtons: Dialog.Ok
+ }
+
+ DialogLabel {
+ text: "two standard buttons, fixed width (300)"
+ dialog: dialogFixedWidthTwoButtons
+ }
+ CustomDialog {
+ id: dialogFixedWidthTwoButtons
+ width: 300
+ standardButtons: Dialog.Ok | Dialog.Cancel
+ previousDialog: dialogFixedWidthOneButton
+ }
+
+ DialogLabel {
+ text: "three standard buttons, fixed width (300)"
+ dialog: dialogFixedWidthThreeButtons
+ }
+ CustomDialog {
+ id: dialogFixedWidthThreeButtons
+ width: 300
+ standardButtons: Dialog.Apply | Dialog.RestoreDefaults | Dialog.Cancel
+ previousDialog: dialogFixedWidthTwoButtons
+ }
+}
diff --git a/tests/manual/dialogs/qtquickcontrols2.conf b/tests/manual/dialogs/qtquickcontrols2.conf
new file mode 100644
index 00000000..7ac31807
--- /dev/null
+++ b/tests/manual/dialogs/qtquickcontrols2.conf
@@ -0,0 +1,6 @@
+[Controls]
+Style=Default
+;Style=Fusion
+;Style=Imagine
+;Style=Material
+;Style=Universal