diff options
Diffstat (limited to 'src/libs/installer/packagemanagergui.cpp')
-rw-r--r-- | src/libs/installer/packagemanagergui.cpp | 42 |
1 files changed, 25 insertions, 17 deletions
diff --git a/src/libs/installer/packagemanagergui.cpp b/src/libs/installer/packagemanagergui.cpp index 513b9d0e0..d31eb6a94 100644 --- a/src/libs/installer/packagemanagergui.cpp +++ b/src/libs/installer/packagemanagergui.cpp @@ -1323,6 +1323,7 @@ IntroductionPage::IntroductionPage(PackageManagerCore *core) core->setCompleteUninstallation(core->isUninstaller()); connect(core, &PackageManagerCore::metaJobProgress, this, &IntroductionPage::onProgressChanged); + connect(core, &PackageManagerCore::metaJobTotalProgress, this, &IntroductionPage::setTotalProgress); connect(core, &PackageManagerCore::metaJobInfoMessage, this, &IntroductionPage::setMessage); connect(core, &PackageManagerCore::coreNetworkSettingsChanged, this, &IntroductionPage::onCoreNetworkSettingsChanged); @@ -1512,11 +1513,19 @@ void IntroductionPage::setMessage(const QString &msg) */ void IntroductionPage::onProgressChanged(int progress) { - m_progressBar->setRange(0, 100); m_progressBar->setValue(progress); } /*! + Sets total \a progress value to progress bar. +*/ +void IntroductionPage::setTotalProgress(int totalProgress) +{ + if (m_progressBar) + m_progressBar->setRange(0, totalProgress); +} + +/*! Displays the error message \a error on the page. */ void IntroductionPage::setErrorMessage(const QString &error) @@ -1946,19 +1955,17 @@ public: m_vlayout->addSpacing(50); m_vlayout->addWidget(m_bspLabel); - m_progressBar = new QProgressBar(); m_progressBar->setRange(0, 0); m_progressBar->hide(); m_vlayout->addWidget(m_progressBar); m_progressBar->setObjectName(QLatin1String("CompressedInstallProgressBar")); - m_installCompressButton = new QPushButton; connect(m_installCompressButton, &QAbstractButton::clicked, this, &ComponentSelectionPage::Private::selectCompressedPackage); m_installCompressButton->setObjectName(QLatin1String("InstallCompressedPackageButton")); - m_installCompressButton->setText(ComponentSelectionPage::tr("&Browse QBSP or 7z files...")); + m_installCompressButton->setText(ComponentSelectionPage::tr("&Browse QBSP files")); m_vlayout->addWidget(m_installCompressButton); m_compressedButtonVisible = true; } @@ -2057,21 +2064,26 @@ public slots: QSet<Repository> set; foreach (QString fileName, fileNames) { Repository repository = Repository::fromUserInput(fileName, true); + repository.setEnabled(true); set.insert(repository); } if (set.count() > 0) { m_progressBar->show(); - m_installCompressButton->setEnabled(false); + m_installCompressButton->hide(); QPushButton *const b = qobject_cast<QPushButton *>(q->gui()->button(QWizard::NextButton)); b->setEnabled(false); m_core->settings().addTemporaryRepositories(set, false); - m_core->fetchCompressedPackagesTree(); - updateTreeView(); + if (!m_core->fetchCompressedPackagesTree()) { + setMessage(m_core->error()); + } + else { + updateTreeView(); + setMessage(ComponentSelectionPage::tr("To install new "\ + "compressed repository, browse the repositories from your computer")); + } m_progressBar->hide(); - m_bspLabel->setText(ComponentSelectionPage::tr("To install new "\ - "compressed repository, browse the repositories from your computer")); - m_installCompressButton->setEnabled(true); + m_installCompressButton->show(); b->setEnabled(true); } } @@ -2089,13 +2101,9 @@ public slots: */ void setMessage(const QString &msg) { - if (m_progressBar->isVisible()) { + QWizardPage *page = q->gui()->currentPage(); + if (m_bspLabel && page && page->objectName() == QLatin1String("ComponentSelectionPage")) m_bspLabel->setText(msg); - } - else { - m_bspLabel->setText(ComponentSelectionPage::tr("To install new "\ - "compressed repository, browse the repositories from your computer")); - } } void selectDefault() @@ -2183,7 +2191,7 @@ void ComponentSelectionPage::entering() QT_TR_NOOP("Please select the components you want to update."), QT_TR_NOOP("Please select the components you want to install."), QT_TR_NOOP("Please select the components you want to uninstall."), - QT_TR_NOOP("Select the components to install. Deselect installed components to uninstall them.") + QT_TR_NOOP("Select the components to install. Deselect installed components to uninstall them. Any components already installed will not be updated.") }; int index = 0; |