4#ifndef CONTROLSTESTUTILS_P_H
5#define CONTROLSTESTUTILS_P_H
18#include <QtGui/qpa/qplatformtheme.h>
19#include <QtQuickTestUtils/private/visualtestutils_p.h>
25class QQuickApplicationWindow;
26class QQuickAbstractButton;
37 const QVariantMap &initialProperties = {},
38 const QStringList &qmlImportPaths = {});
45 [[nodiscard]]
bool updateStyle(
const QString &style);
54 void forEachControl(QQmlEngine *engine,
const QString &qqc2ImportPath,
const QString &styleName,
55 const QString &targetPath,
const QStringList &skipList,
ForEachCallback callback);
57 const QString &targetPath,
const QStringList &skipList = QStringList());
79 Q_PROPERTY(QString styleName READ styleName CONSTANT FINAL)
106 StyleInfo() =
default;
108 void warnIfNotInitialized()
const;
110 QList<QmlFileData> m_sourceQmlFiles;
111 QList<QmlFileData> m_installedQmlFiles;
118 return m_colorScheme;
122 m_colorScheme = theme;
123 QWindowSystemInterface::handleThemeChange<QWindowSystemInterface::SynchronousDelivery>();
149 Q_INVOKABLE void set(Qt::ApplicationAttribute attribute,
bool on =
true);
176#define VERIFY_VISUAL_FOCUS(control) do
178 QVERIFY2(control->hasVisualFocus(), qUtf8Printable(visualFocusFailureMessage(control))); \
179}while (false)
181#define TRY_VERIFY_POPUP_OPENED(popup) do
183 QTRY_VERIFY(popup->isOpened());
184 if (auto *popupWindow = QQuickPopupPrivate::get(popup)->popupWindow) {
185 QVERIFY(QTest::qWaitForWindowExposed(popupWindow));
186 if (QQuickTest::qIsPolishScheduled(popupWindow))
187 QQuickTest::qWaitForPolish(popupWindow);
189}while (false)
The QQmlComponent class encapsulates a QML component definition.
Q_INVOKABLE void set(Qt::ApplicationAttribute attribute, bool on=true)
QQuickControlsApplicationHelper(QQmlDataTest *testCase, const QString &testFilePath, const QVariantMap &initialProperties={}, const QStringList &qmlImportPaths={})
QQuickApplicationWindow * appWindow
QList< QmlFileData > installedQmlFiles() const
static StyleInfo * instance()
QList< QmlFileData > sourceQmlFiles() const
static StyleInfo * create(QQmlEngine *, QJSEngine *)
QString styleName() const
Q_INVOKABLE bool setValue(const QString &name, const QString &value)
bool verifyButtonClickable(QQuickAbstractButton *button)
void forEachControl(QQmlEngine *engine, const QString &qqc2ImportPath, const QString &styleName, const QString &targetPath, const QStringList &skipList, ForEachCallback callback)
void addTestRowForEachControl(QQmlEngine *engine, const QString &qqc2ImportPath, const QString &styleName, const QString &targetPath, const QStringList &skipList=QStringList())
bool clickMenuItem(QQuickMenuItem *menuItem)
std::function< void(const QString &, const QString &, const QString &, const QUrl &)> ForEachCallback
bool doubleClickButton(QQuickAbstractButton *button)
QQuickPopup * popupParent(QQuickItem *item)
QString visualFocusFailureMessage(QQuickControl *control)
bool arePopupWindowsSupported()
bool clickButton(QQuickAbstractButton *button)
QByteArray qActiveFocusFailureMessage(QQuickPopup *popup)
QScopedPointer< QQmlEngine > engine
bool updateStyle(const QString &style)
bool operator<(const QmlFileData &rhs) const