diff options
11 files changed, 631 insertions, 2 deletions
diff --git a/src/imports/platform/qquickplatformcolordialog.cpp b/src/imports/platform/qquickplatformcolordialog.cpp index a69ba025..c0cb3691 100644 --- a/src/imports/platform/qquickplatformcolordialog.cpp +++ b/src/imports/platform/qquickplatformcolordialog.cpp @@ -39,6 +39,10 @@ #include <QtGui/qpa/qplatformtheme.h> #include <QtGui/private/qguiapplication_p.h> +#ifdef QT_WIDGETS_LIB +#include "widgets/qwidgetplatformcolordialog_p.h" +#endif + QT_BEGIN_NAMESPACE /*! @@ -70,13 +74,17 @@ QT_BEGIN_NAMESPACE } \endcode - ColorDialog is currently available on the following platforms: + \section2 Availability + + A native platform color dialog is currently available on the following platforms: \list \li OS X \li Linux (when running with the GTK+ platform theme) \endlist + \input includes/widgets.qdocinc 1 + \labs */ @@ -92,6 +100,10 @@ QQuickPlatformColorDialog::QQuickPlatformColorDialog(QObject *parent) : QQuickPlatformDialog(parent), m_options(QColorDialogOptions::create()) { QPlatformDialogHelper *dialog = QGuiApplicationPrivate::platformTheme()->createPlatformDialogHelper(QPlatformTheme::ColorDialog); +#ifdef QT_WIDGETS_LIB + if (!dialog) + dialog = new QWidgetPlatformColorDialog(this); +#endif if (QPlatformColorDialogHelper *colorDialog = qobject_cast<QPlatformColorDialogHelper *>(dialog)) { connect(colorDialog, &QPlatformColorDialogHelper::currentColorChanged, this, &QQuickPlatformColorDialog::currentColorChanged); connect(colorDialog, &QPlatformColorDialogHelper::colorSelected, this, &QQuickPlatformColorDialog::colorSelected); diff --git a/src/imports/platform/qquickplatformfontdialog.cpp b/src/imports/platform/qquickplatformfontdialog.cpp index d0bc3e21..7a3ab3d9 100644 --- a/src/imports/platform/qquickplatformfontdialog.cpp +++ b/src/imports/platform/qquickplatformfontdialog.cpp @@ -39,6 +39,10 @@ #include <QtGui/qpa/qplatformtheme.h> #include <QtGui/private/qguiapplication_p.h> +#ifdef QT_WIDGETS_LIB +#include "widgets/qwidgetplatformfontdialog_p.h" +#endif + QT_BEGIN_NAMESPACE /*! @@ -70,13 +74,17 @@ QT_BEGIN_NAMESPACE } \endcode - FontDialog is currently available on the following platforms: + \section2 Availability + + A native platform font dialog is currently available on the following platforms: \list \li OS X \li Linux (when running with the GTK+ platform theme) \endlist + \input includes/widgets.qdocinc 1 + \labs */ @@ -92,6 +100,10 @@ QQuickPlatformFontDialog::QQuickPlatformFontDialog(QObject *parent) : QQuickPlatformDialog(parent), m_options(QFontDialogOptions::create()) { QPlatformDialogHelper *dialog = QGuiApplicationPrivate::platformTheme()->createPlatformDialogHelper(QPlatformTheme::FontDialog); +#ifdef QT_WIDGETS_LIB + if (!dialog) + dialog = new QWidgetPlatformFontDialog(this); +#endif if (QPlatformFontDialogHelper *fontDialog = qobject_cast<QPlatformFontDialogHelper *>(dialog)) { connect(fontDialog, &QPlatformFontDialogHelper::currentFontChanged, this, &QQuickPlatformFontDialog::currentFontChanged); connect(fontDialog, &QPlatformFontDialogHelper::fontSelected, this, &QQuickPlatformFontDialog::fontSelected); diff --git a/src/imports/platform/widgets/qwidgetplatformcolordialog.cpp b/src/imports/platform/widgets/qwidgetplatformcolordialog.cpp new file mode 100644 index 00000000..4dd0895d --- /dev/null +++ b/src/imports/platform/widgets/qwidgetplatformcolordialog.cpp @@ -0,0 +1,98 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt Labs Platform module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** 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 http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "qwidgetplatformcolordialog_p.h" +#include "qwidgetplatformdialog_p.h" +#include "qwidgetplatform_p.h" + +#include <QtWidgets/qcolordialog.h> + +QT_BEGIN_NAMESPACE + +QWidgetPlatformColorDialog::QWidgetPlatformColorDialog(QObject *parent) +{ + setParent(parent); + + static bool available = QWidgetPlatform::isAvailable("color dialog"); + if (available) { + m_dialog.reset(new QColorDialog); + connect(m_dialog.data(), &QColorDialog::accepted, this, &QPlatformDialogHelper::accept); + connect(m_dialog.data(), &QColorDialog::rejected, this, &QPlatformDialogHelper::reject); + connect(m_dialog.data(), &QColorDialog::colorSelected, this, &QPlatformColorDialogHelper::colorSelected); + connect(m_dialog.data(), &QColorDialog::currentColorChanged, this, &QPlatformColorDialogHelper::currentColorChanged); + } +} + +QWidgetPlatformColorDialog::~QWidgetPlatformColorDialog() +{ +} + +QColor QWidgetPlatformColorDialog::currentColor() const +{ + return m_dialog ? m_dialog->currentColor() : QColor(); +} + +void QWidgetPlatformColorDialog::setCurrentColor(const QColor &color) +{ + if (m_dialog) + m_dialog->setCurrentColor(color); +} + +void QWidgetPlatformColorDialog::exec() +{ + if (m_dialog) + m_dialog->exec(); +} + +bool QWidgetPlatformColorDialog::show(Qt::WindowFlags flags, Qt::WindowModality modality, QWindow *parent) +{ + if (!m_dialog) + return false; + + QSharedPointer<QColorDialogOptions> options = QPlatformColorDialogHelper::options(); + m_dialog->setWindowTitle(options->windowTitle()); + m_dialog->setOptions(static_cast<QColorDialog::ColorDialogOptions>(int(options->options()))); + + return QWidgetPlatformDialog::show(m_dialog.data(), flags, modality, parent); +} + +void QWidgetPlatformColorDialog::hide() +{ + if (m_dialog) + m_dialog->hide(); +} + +QT_END_NAMESPACE diff --git a/src/imports/platform/widgets/qwidgetplatformcolordialog_p.h b/src/imports/platform/widgets/qwidgetplatformcolordialog_p.h new file mode 100644 index 00000000..14bbcd1f --- /dev/null +++ b/src/imports/platform/widgets/qwidgetplatformcolordialog_p.h @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt Labs Platform module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** 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 http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QWIDGETPLATFORMCOLORDIALOG_P_H +#define QWIDGETPLATFORMCOLORDIALOG_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include <QtGui/qpa/qplatformdialoghelper.h> + +QT_BEGIN_NAMESPACE + +class QColorDialog; + +class QWidgetPlatformColorDialog : public QPlatformColorDialogHelper +{ + Q_OBJECT + +public: + explicit QWidgetPlatformColorDialog(QObject *parent = nullptr); + ~QWidgetPlatformColorDialog(); + + QColor currentColor() const override; + void setCurrentColor(const QColor &color) override; + + void exec() override; + bool show(Qt::WindowFlags flags, Qt::WindowModality modality, QWindow *parent) override; + void hide() override; + +private: + QScopedPointer<QColorDialog> m_dialog; +}; + +QT_END_NAMESPACE + +#endif // QWIDGETPLATFORMCOLORDIALOG_P_H diff --git a/src/imports/platform/widgets/qwidgetplatformdialog.cpp b/src/imports/platform/widgets/qwidgetplatformdialog.cpp new file mode 100644 index 00000000..ebca7ea8 --- /dev/null +++ b/src/imports/platform/widgets/qwidgetplatformdialog.cpp @@ -0,0 +1,58 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt Labs Platform module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** 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 http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "qwidgetplatformdialog_p.h" + +#include <QtGui/qwindow.h> +#include <QtWidgets/qdialog.h> + +QT_BEGIN_NAMESPACE + +bool QWidgetPlatformDialog::show(QDialog *dialog, Qt::WindowFlags flags, Qt::WindowModality modality, QWindow *parent) +{ + dialog->setWindowFlags(flags); + dialog->setWindowModality(modality); + + dialog->createWinId(); + QWindow *handle = dialog->windowHandle(); + Q_ASSERT(handle); + handle->setTransientParent(const_cast<QWindow *>(parent)); + + dialog->show(); + return true; +} + +QT_END_NAMESPACE diff --git a/src/imports/platform/widgets/qwidgetplatformdialog_p.h b/src/imports/platform/widgets/qwidgetplatformdialog_p.h new file mode 100644 index 00000000..efc99b85 --- /dev/null +++ b/src/imports/platform/widgets/qwidgetplatformdialog_p.h @@ -0,0 +1,66 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt Labs Platform module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** 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 http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QWIDGETPLATFORMDIALOG_P_H +#define QWIDGETPLATFORMDIALOG_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include <QtCore/qnamespace.h> + +QT_BEGIN_NAMESPACE + +class QDialog; +class QWindow; + +class QWidgetPlatformDialog +{ +public: + static bool show(QDialog *dialog, Qt::WindowFlags flags, Qt::WindowModality modality, QWindow *parent); +}; + +QT_END_NAMESPACE + +#endif // QWIDGETPLATFORMDIALOG_P_H diff --git a/src/imports/platform/widgets/qwidgetplatformfontdialog.cpp b/src/imports/platform/widgets/qwidgetplatformfontdialog.cpp new file mode 100644 index 00000000..af335b03 --- /dev/null +++ b/src/imports/platform/widgets/qwidgetplatformfontdialog.cpp @@ -0,0 +1,98 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt Labs Platform module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** 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 http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "qwidgetplatformfontdialog_p.h" +#include "qwidgetplatformdialog_p.h" +#include "qwidgetplatform_p.h" + +#include <QtWidgets/qfontdialog.h> + +QT_BEGIN_NAMESPACE + +QWidgetPlatformFontDialog::QWidgetPlatformFontDialog(QObject *parent) +{ + setParent(parent); + + static bool available = QWidgetPlatform::isAvailable("font dialog"); + if (available) { + m_dialog.reset(new QFontDialog); + connect(m_dialog.data(), &QFontDialog::accepted, this, &QPlatformDialogHelper::accept); + connect(m_dialog.data(), &QFontDialog::rejected, this, &QPlatformDialogHelper::reject); + connect(m_dialog.data(), &QFontDialog::fontSelected, this, &QPlatformFontDialogHelper::fontSelected); + connect(m_dialog.data(), &QFontDialog::currentFontChanged, this, &QPlatformFontDialogHelper::currentFontChanged); + } +} + +QWidgetPlatformFontDialog::~QWidgetPlatformFontDialog() +{ +} + +QFont QWidgetPlatformFontDialog::currentFont() const +{ + return m_dialog ? m_dialog->currentFont() : QFont(); +} + +void QWidgetPlatformFontDialog::setCurrentFont(const QFont &font) +{ + if (m_dialog) + m_dialog->setCurrentFont(font); +} + +void QWidgetPlatformFontDialog::exec() +{ + if (m_dialog) + m_dialog->exec(); +} + +bool QWidgetPlatformFontDialog::show(Qt::WindowFlags flags, Qt::WindowModality modality, QWindow *parent) +{ + if (!m_dialog) + return false; + + QSharedPointer<QFontDialogOptions> options = QPlatformFontDialogHelper::options(); + m_dialog->setWindowTitle(options->windowTitle()); + m_dialog->setOptions(static_cast<QFontDialog::FontDialogOptions>(int(options->options()))); + + return QWidgetPlatformDialog::show(m_dialog.data(), flags, modality, parent); +} + +void QWidgetPlatformFontDialog::hide() +{ + if (m_dialog) + m_dialog->hide(); +} + +QT_END_NAMESPACE diff --git a/src/imports/platform/widgets/qwidgetplatformfontdialog_p.h b/src/imports/platform/widgets/qwidgetplatformfontdialog_p.h new file mode 100644 index 00000000..97d5463d --- /dev/null +++ b/src/imports/platform/widgets/qwidgetplatformfontdialog_p.h @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt Labs Platform module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** 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 http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QWIDGETPLATFORMFONTDIALOG_P_H +#define QWIDGETPLATFORMFONTDIALOG_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include <QtGui/qpa/qplatformdialoghelper.h> + +QT_BEGIN_NAMESPACE + +class QFontDialog; + +class QWidgetPlatformFontDialog : public QPlatformFontDialogHelper +{ + Q_OBJECT + +public: + explicit QWidgetPlatformFontDialog(QObject *parent = nullptr); + ~QWidgetPlatformFontDialog(); + + QFont currentFont() const override; + void setCurrentFont(const QFont &font) override; + + void exec() override; + bool show(Qt::WindowFlags windowFlags, Qt::WindowModality windowModality, QWindow *parent) override; + void hide() override; + +private: + QScopedPointer<QFontDialog> m_dialog; +}; + +QT_END_NAMESPACE + +#endif // QWIDGETPLATFORMFONTDIALOG_P_H diff --git a/src/imports/platform/widgets/widgets.pri b/src/imports/platform/widgets/widgets.pri index a816d487..a9e5d42b 100644 --- a/src/imports/platform/widgets/widgets.pri +++ b/src/imports/platform/widgets/widgets.pri @@ -1,12 +1,19 @@ QT += widgets +DEPENDPATH += $$PWD HEADERS += \ $$PWD/qwidgetplatform_p.h \ + $$PWD/qwidgetplatformcolordialog_p.h \ + $$PWD/qwidgetplatformdialog_p.h \ + $$PWD/qwidgetplatformfontdialog_p.h \ $$PWD/qwidgetplatformmenu_p.h \ $$PWD/qwidgetplatformmenuitem_p.h \ $$PWD/qwidgetplatformsystemtrayicon_p.h SOURCES += \ + $$PWD/qwidgetplatformcolordialog.cpp \ + $$PWD/qwidgetplatformdialog.cpp \ + $$PWD/qwidgetplatformfontdialog.cpp \ $$PWD/qwidgetplatformmenu.cpp \ $$PWD/qwidgetplatformmenuitem.cpp \ $$PWD/qwidgetplatformsystemtrayicon.cpp diff --git a/tests/auto/platform/data/tst_colordialog.qml b/tests/auto/platform/data/tst_colordialog.qml new file mode 100644 index 00000000..1e9bbccf --- /dev/null +++ b/tests/auto/platform/data/tst_colordialog.qml @@ -0,0 +1,61 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** 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.2 +import QtTest 1.0 +import Qt.labs.platform 1.0 + +TestCase { + id: testCase + width: 200 + height: 200 + name: "ColorDialog" + + Component { + id: colorDialog + ColorDialog { } + } + + function test_instance() { + var dialog = colorDialog.createObject(testCase) + verify(dialog) + dialog.destroy() + } +} diff --git a/tests/auto/platform/data/tst_fontdialog.qml b/tests/auto/platform/data/tst_fontdialog.qml new file mode 100644 index 00000000..b05737aa --- /dev/null +++ b/tests/auto/platform/data/tst_fontdialog.qml @@ -0,0 +1,61 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** 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.2 +import QtTest 1.0 +import Qt.labs.platform 1.0 + +TestCase { + id: testCase + width: 200 + height: 200 + name: "FontDialog" + + Component { + id: fontDialog + FontDialog { } + } + + function test_instance() { + var dialog = fontDialog.createObject(testCase) + verify(dialog) + dialog.destroy() + } +} |