From 3163d68e9ed92b396e17e8bf16977a1a5bfc7246 Mon Sep 17 00:00:00 2001 From: dsc Date: Mon, 10 May 2021 19:52:50 +0200 Subject: [PATCH] Show random banner on each Wizard window spawn --- src/mainwindow.cpp | 2 + src/wizard/walletwizard.cpp | 93 +++++-------------------------------- src/wizard/walletwizard.h | 3 +- 3 files changed, 16 insertions(+), 82 deletions(-) diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index 34d7524..bd20b7c 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -377,6 +377,7 @@ void MainWindow::initMain() { this->setEnabled(false); this->show(); m_wizard = this->createWizard(WalletWizard::Page_Menu); + m_wizard->randomBanner(); m_wizard->show(); this->touchbarShowWizard(); } @@ -530,6 +531,7 @@ void MainWindow::showWizard(WalletWizard::Page startPage) { m_wizard->setStartId(startPage); m_wizard->restart(); m_wizard->setEnabled(true); + m_wizard->randomBanner(); m_wizard->show(); } diff --git a/src/wizard/walletwizard.cpp b/src/wizard/walletwizard.cpp index 6ff23f9..94306e7 100644 --- a/src/wizard/walletwizard.cpp +++ b/src/wizard/walletwizard.cpp @@ -42,87 +42,12 @@ WalletWizard::WalletWizard(AppContext *ctx, WalletWizard::Page startPage, QWidge setStartId(Page_Menu); setButtonText(QWizard::CancelButton, "Close"); - QStringList headers = { - ":/assets/images/welcome/wow1.png", - ":/assets/images/welcome/wow2.png", - ":/assets/images/welcome/wow3.png", - ":/assets/images/welcome/wow4.png", - ":/assets/images/welcome/wow5.png", - ":/assets/images/welcome/wow6.png", - ":/assets/images/welcome/wow7.png", - ":/assets/images/welcome/wow8.png", - ":/assets/images/welcome/wow9.png", - ":/assets/images/welcome/wow10.png", - ":/assets/images/welcome/wow11.png", - ":/assets/images/welcome/wow12.png", - ":/assets/images/welcome/wow13.png", - ":/assets/images/welcome/wow14.png", - ":/assets/images/welcome/wow15.png", - ":/assets/images/welcome/wow16.png", - ":/assets/images/welcome/wow17.png", - ":/assets/images/welcome/wow18.png", - ":/assets/images/welcome/wow19.png", - ":/assets/images/welcome/wow20.png", - ":/assets/images/welcome/wow21.png", - ":/assets/images/welcome/wow22.png", - ":/assets/images/welcome/wow23.png", - ":/assets/images/welcome/wow24.png", - ":/assets/images/welcome/wow25.png", - ":/assets/images/welcome/wow26.png", - ":/assets/images/welcome/wow27.png", - ":/assets/images/welcome/wow28.png", - ":/assets/images/welcome/wow29.png", - ":/assets/images/welcome/wow30.png", - ":/assets/images/welcome/wow31.png", - ":/assets/images/welcome/wow32.png", - ":/assets/images/welcome/wow33.png", - ":/assets/images/welcome/wow34.png", - ":/assets/images/welcome/wow35.png", - ":/assets/images/welcome/wow36.png", - ":/assets/images/welcome/wow37.png", - ":/assets/images/welcome/wow38.png", - ":/assets/images/welcome/wow39.png", - ":/assets/images/welcome/wow40.png", - ":/assets/images/welcome/wow41.png", - ":/assets/images/welcome/wow42.png", - ":/assets/images/welcome/wow43.png", - ":/assets/images/welcome/wow44.png", - ":/assets/images/welcome/wow45.png", - ":/assets/images/welcome/wow46.png", - ":/assets/images/welcome/wow47.png", - ":/assets/images/welcome/wow48.png", - ":/assets/images/welcome/wow49.png", - ":/assets/images/welcome/wow50.png", - ":/assets/images/welcome/wow51.png", - ":/assets/images/welcome/wow52.png", - ":/assets/images/welcome/wow53.png", - ":/assets/images/welcome/wow54.png", - ":/assets/images/welcome/wow55.png", - ":/assets/images/welcome/wow56.png", - ":/assets/images/welcome/wow57.png", - ":/assets/images/welcome/wow58.png", - ":/assets/images/welcome/wow59.png", - ":/assets/images/welcome/wow60.png", - ":/assets/images/welcome/wow61.png", - ":/assets/images/welcome/wow62.png", - ":/assets/images/welcome/wow63.png", - ":/assets/images/welcome/wow64.png", - ":/assets/images/welcome/wow65.png", - ":/assets/images/welcome/wow66.png", - ":/assets/images/welcome/wow67.png", - ":/assets/images/welcome/wow68.png", - ":/assets/images/welcome/wow69.png", - ":/assets/images/welcome/wow70.png", - ":/assets/images/welcome/wow71.png", - ":/assets/images/welcome/wow72.png", - ":/assets/images/welcome/wow73.png", - ":/assets/images/welcome/wow74.png", - ":/assets/images/welcome/wow75.png", - ":/assets/images/welcome/wow76.png" - }; - int random = QRandomGenerator::global()->bounded(headers.count()); - auto header = headers.at(random); - setPixmap(QWizard::WatermarkPixmap, QPixmap(header)); + + // load banners + QDirIterator it(":/assets/images/welcome/", QDirIterator::Subdirectories); + while (it.hasNext()) { + m_banners << it.next(); + } setWizardStyle(WizardStyle::ModernStyle); setOption(QWizard::NoBackButtonOnStartPage); @@ -143,6 +68,12 @@ WalletWizard::WalletWizard(AppContext *ctx, WalletWizard::Page startPage, QWidge }); } +void WalletWizard::randomBanner() { + int random = QRandomGenerator::global()->bounded(m_banners.count()); + auto header = m_banners.at(random); + setPixmap(QWizard::WatermarkPixmap, QPixmap(header)); +} + void WalletWizard::createWallet() { auto mnemonicRestoredSeed = this->field("mnemonicRestoredSeed").toString(); auto mnemonicSeed = mnemonicRestoredSeed.isEmpty() ? this->field("mnemonicSeed").toString() : mnemonicRestoredSeed; diff --git a/src/wizard/walletwizard.h b/src/wizard/walletwizard.h index 3d3b885..b469118 100644 --- a/src/wizard/walletwizard.h +++ b/src/wizard/walletwizard.h @@ -20,6 +20,7 @@ public: enum Page { Page_Menu, Page_CreateWallet, Page_CreateWalletSeed, Page_OpenWallet, Page_Network, Page_Restore, Page_ViewOnly }; explicit WalletWizard(AppContext *ctx, WalletWizard::Page startPage = WalletWizard::Page::Page_Menu, QWidget *parent = nullptr); + void randomBanner(); signals: void openWallet(QString path, QString password); @@ -28,7 +29,7 @@ signals: private: AppContext *m_ctx; WalletKeysFilesModel *m_walletKeysFilesModel; - + QStringList m_banners; void createWallet(); };