// SPDX-FileCopyrightText: 2023 Devin Lin // SPDX-License-Identifier: GPL-2.0-or-later #pragma once #include #include #include #include #include class Wizard : public QObject { Q_OBJECT Q_PROPERTY(QList steps READ steps CONSTANT) Q_PROPERTY(bool testingMode READ testingMode NOTIFY testingModeChanged) public: Wizard(QObject *parent = nullptr, QQmlEngine *engine = nullptr); void load(); void setTestingMode(bool testingMode); bool testingMode(); QList steps(); public Q_SLOTS: void wizardFinished(); Q_SIGNALS: void testingModeChanged(); private: QList> m_modulePackages; QList m_moduleItems; bool m_testingMode; QQmlEngine *m_engine; };