summaryrefslogtreecommitdiff
path: root/raveos-calamares-module/desktopselect/DesktopSelectViewStep.h
diff options
context:
space:
mode:
Diffstat (limited to 'raveos-calamares-module/desktopselect/DesktopSelectViewStep.h')
-rw-r--r--raveos-calamares-module/desktopselect/DesktopSelectViewStep.h42
1 files changed, 42 insertions, 0 deletions
diff --git a/raveos-calamares-module/desktopselect/DesktopSelectViewStep.h b/raveos-calamares-module/desktopselect/DesktopSelectViewStep.h
new file mode 100644
index 0000000..4874ba3
--- /dev/null
+++ b/raveos-calamares-module/desktopselect/DesktopSelectViewStep.h
@@ -0,0 +1,42 @@
+#pragma once
+#include <viewpages/ViewStep.h>
+#include <utils/PluginFactory.h>
+#include <Job.h>
+#include <QObject>
+#include <QWidget>
+#include <QStringList>
+#include "DesktopBackend.h"
+
+class QQuickWidget;
+
+class PLUGINDLLEXPORT DesktopSelectViewStep : public Calamares::ViewStep
+{
+ Q_OBJECT
+
+public:
+ explicit DesktopSelectViewStep(QObject* parent = nullptr);
+ ~DesktopSelectViewStep() override;
+
+ QString prettyName() const override;
+ QWidget* widget() override;
+
+ bool isNextEnabled() const override;
+ bool isBackEnabled() const override;
+ bool isAtBeginning() const override;
+ bool isAtEnd() const override;
+
+ Calamares::JobList jobs() const override;
+
+ void setConfigurationMap(const QVariantMap& config) override;
+ void onLeave() override;
+
+private:
+ void buildWidget();
+
+ QWidget* m_widget = nullptr;
+ QQuickWidget* m_quickWidget = nullptr;
+ DesktopBackend* m_backend = nullptr;
+ QStringList m_mandatoryPackages;
+};
+
+CALAMARES_PLUGIN_FACTORY_DECLARATION(DesktopSelectViewStepFactory)