From 44b250809fbed389dadefdc88b2c32ff3de5249a Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Fri, 10 Jan 2020 13:10:55 +0100 Subject: [PATCH] [libcalamaresui] Add spinner to QmlViewStep - view step now has a widget, doesn't load QML yet --- src/libcalamaresui/viewpages/QmlViewStep.cpp | 11 ++++++++++- src/libcalamaresui/viewpages/QmlViewStep.h | 11 +++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/src/libcalamaresui/viewpages/QmlViewStep.cpp b/src/libcalamaresui/viewpages/QmlViewStep.cpp index 060a4660e..11637d04b 100644 --- a/src/libcalamaresui/viewpages/QmlViewStep.cpp +++ b/src/libcalamaresui/viewpages/QmlViewStep.cpp @@ -18,13 +18,22 @@ #include "QmlViewStep.h" +#include "widgets/WaitingWidget.h" + +#include +#include + namespace Calamares { QmlViewStep::QmlViewStep( const QString& name, QObject* parent ) : ViewStep( parent ) , m_name( name ) + , m_widget( new QWidget ) + , m_spinner( new WaitingWidget( tr( "Loading ..." ) ) ) { + QVBoxLayout* layout = new QVBoxLayout( m_widget ); + layout->addWidget( m_spinner ); } QmlViewStep::~QmlViewStep() {} @@ -83,5 +92,5 @@ Calamares::QmlViewStep::onLeave() QWidget* Calamares::QmlViewStep::widget() { - return nullptr; + return m_widget; } diff --git a/src/libcalamaresui/viewpages/QmlViewStep.h b/src/libcalamaresui/viewpages/QmlViewStep.h index 53a5882d5..d1b28af35 100644 --- a/src/libcalamaresui/viewpages/QmlViewStep.h +++ b/src/libcalamaresui/viewpages/QmlViewStep.h @@ -21,6 +21,11 @@ #include "viewpages/ViewStep.h" +class QQmlComponent; +class QQuickItem; +class QQuickWidget; +class WaitingWidget; + namespace Calamares { @@ -55,6 +60,12 @@ public: private: QString m_name; + + QWidget* m_widget = nullptr; + WaitingWidget* m_spinner = nullptr; + QQuickWidget* m_qmlShow = nullptr; + QQmlComponent* m_qmlComponent = nullptr; + QQuickItem* m_qmlObject = nullptr; }; } // namespace Calamares