#pragma once #include #include #include #include #include #include class QButtonGroup; class QLabel; class QPushButton; class PLUGINDLLEXPORT RaveWelcomeViewStep : public Calamares::ViewStep { Q_OBJECT public: explicit RaveWelcomeViewStep(QObject* parent = nullptr); ~RaveWelcomeViewStep() override; QString prettyName() const override; QWidget* widget() override; QSize widgetMargins(Qt::Orientations panelSides) 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& configurationMap) override; private slots: void onLanguageChanged(int index); private: void buildWidget(); void updateTexts(); QString getLocale() const; QString brandingTranslationsPrefix() const; void applyLiveKeyboardLayout(const QString& localeId); QWidget* m_widget = nullptr; QButtonGroup* m_langButtons = nullptr; QLabel* m_tag = nullptr; QLabel* m_title = nullptr; QLabel* m_localeLabel = nullptr; QPushButton* m_next = nullptr; QStringList m_localeIds; int m_currentLocaleIndex = 0; }; CALAMARES_PLUGIN_FACTORY_DECLARATION(RaveWelcomeViewStepFactory)