diff options
author | kh1 <karsten.heimrich@digia.com> | 2014-04-10 12:54:59 +0200 |
---|---|---|
committer | Karsten Heimrich <karsten.heimrich@digia.com> | 2014-04-26 09:50:14 +0200 |
commit | 5135dcbf0ac23a52ceb2b4d1463eb2fd20b09346 (patch) | |
tree | f4515e2fbbdcdb3855f7b0cdf0a65b5995fbc555 | |
parent | 56e326946159407a13eda62e894e11be5a824a4c (diff) |
Merge IntroductionPage and IntroductionPageImpl.
Change-Id: Ib8a08779979ccde42dab8a1bd83b27a24f318de0
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
-rw-r--r-- | src/libs/installer/packagemanagergui.cpp | 313 | ||||
-rw-r--r-- | src/libs/installer/packagemanagergui.h | 44 | ||||
-rw-r--r-- | src/sdk/installerbasecommons.cpp | 324 | ||||
-rw-r--r-- | src/sdk/installerbasecommons.h | 61 | ||||
-rw-r--r-- | src/sdk/tabcontroller.cpp | 8 |
5 files changed, 352 insertions, 398 deletions
diff --git a/src/libs/installer/packagemanagergui.cpp b/src/libs/installer/packagemanagergui.cpp index f31ade6aa..30e1a51d5 100644 --- a/src/libs/installer/packagemanagergui.cpp +++ b/src/libs/installer/packagemanagergui.cpp @@ -51,6 +51,7 @@ #include "settings.h" #include "utils.h" #include "scriptengine.h" +#include "productkeycheck.h" #include "kdsysinfo.h" @@ -70,6 +71,7 @@ #include <QListWidget> #include <QListWidgetItem> #include <QMessageBox> +#include <QProgressBar> #include <QPushButton> #include <QRadioButton> #include <QTextBrowser> @@ -845,31 +847,322 @@ int PackageManagerPage::nextId() const IntroductionPage::IntroductionPage(PackageManagerCore *core) : PackageManagerPage(core) - , m_widget(0) + , m_updatesFetched(false) + , m_allPackagesFetched(false) + , m_label(0) + , m_msgLabel(0) + , m_errorLabel(0) + , m_progressBar(0) + , m_packageManager(0) + , m_updateComponents(0) + , m_removeAllComponents(0) { setObjectName(QLatin1String("IntroductionPage")); setColoredTitle(tr("Setup - %1").arg(productName())); + QVBoxLayout *layout = new QVBoxLayout(this); + setLayout(layout); + m_msgLabel = new QLabel(this); m_msgLabel->setWordWrap(true); m_msgLabel->setObjectName(QLatin1String("MessageLabel")); m_msgLabel->setText(tr("Welcome to the %1 Setup Wizard.").arg(productName())); - QVBoxLayout *layout = new QVBoxLayout(this); - setLayout(layout); + QWidget *widget = new QWidget(this); + QVBoxLayout *boxLayout = new QVBoxLayout(widget); + + m_packageManager = new QRadioButton(tr("Package manager"), this); + m_packageManager->setObjectName(QLatin1String("PackageManagerRadioButton")); + boxLayout->addWidget(m_packageManager); + m_packageManager->setChecked(core->isPackageManager()); + connect(m_packageManager, SIGNAL(toggled(bool)), this, SLOT(setPackageManager(bool))); + + m_updateComponents = new QRadioButton(tr("Update components"), this); + m_updateComponents->setObjectName(QLatin1String("UpdaterRadioButton")); + boxLayout->addWidget(m_updateComponents); + m_updateComponents->setChecked(core->isUpdater()); + connect(m_updateComponents, SIGNAL(toggled(bool)), this, SLOT(setUpdater(bool))); + + m_removeAllComponents = new QRadioButton(tr("Remove all components"), this); + m_removeAllComponents->setObjectName(QLatin1String("UninstallerRadioButton")); + boxLayout->addWidget(m_removeAllComponents); + m_removeAllComponents->setChecked(core->isUninstaller()); + connect(m_removeAllComponents, SIGNAL(toggled(bool)), this, SLOT(setUninstaller(bool))); + connect(m_removeAllComponents, SIGNAL(toggled(bool)), core, SLOT(setCompleteUninstallation(bool))); + + boxLayout->addItem(new QSpacerItem(1, 1, QSizePolicy::Minimum, QSizePolicy::Expanding)); + + m_label = new QLabel(this); + m_label->setWordWrap(true); + m_label->setText(tr("Retrieving information from remote installation sources...")); + boxLayout->addWidget(m_label); + + m_progressBar = new QProgressBar(this); + m_progressBar->setRange(0, 0); + boxLayout->addWidget(m_progressBar); + + boxLayout->addItem(new QSpacerItem(1, 1, QSizePolicy::Minimum, QSizePolicy::Expanding)); + + m_errorLabel = new QLabel(this); + m_errorLabel->setWordWrap(true); + boxLayout->addWidget(m_errorLabel); + layout->addWidget(m_msgLabel); + layout->addWidget(widget); layout->addItem(new QSpacerItem(20, 20, QSizePolicy::Minimum, QSizePolicy::Expanding)); + + core->setCompleteUninstallation(core->isUninstaller()); + + connect(core, SIGNAL(metaJobProgress(int)), this, SLOT(onProgressChanged(int))); + connect(core, SIGNAL(metaJobInfoMessage(QString)), this, SLOT(setMessage(QString))); + connect(core, SIGNAL(coreNetworkSettingsChanged()), this, SLOT(onCoreNetworkSettingsChanged())); + + m_updateComponents->setEnabled(ProductKeyCheck::instance()->hasValidKey()); +} + +int IntroductionPage::nextId() const +{ + if (packageManagerCore()->isUninstaller()) + return PackageManagerCore::ReadyForInstallation; + + if (packageManagerCore()->isUpdater() || packageManagerCore()->isPackageManager()) + return PackageManagerCore::ComponentSelection; + + return PackageManagerPage::nextId(); } -void IntroductionPage::setWidget(QWidget *widget) +bool IntroductionPage::validatePage() { - if (m_widget) { - layout()->removeWidget(m_widget); - delete m_widget; + PackageManagerCore *core = packageManagerCore(); + if (core->isUninstaller()) + return true; + + setComplete(false); + if (!validRepositoriesAvailable()) { + setErrorMessage(QLatin1String("<font color=\"red\">") + tr("At least one valid and enabled " + "repository required for this action to succeed.") + QLatin1String("</font>")); + return isComplete(); } - m_widget = widget; - if (m_widget) - static_cast<QVBoxLayout*>(layout())->addWidget(m_widget, 1); + + gui()->setSettingsButtonEnabled(false); + const bool maintanence = core->isUpdater() || core->isPackageManager(); + if (maintanence) { + showAll(); + setMaintenanceToolsEnabled(false); + } else { + showMetaInfoUdate(); + } + + // fetch updater packages + if (core->isUpdater()) { + if (!m_updatesFetched) { + m_updatesFetched = core->fetchRemotePackagesTree(); + if (!m_updatesFetched) + setErrorMessage(core->error()); + } + + callControlScript(QLatin1String("UpdaterSelectedCallback")); + + if (m_updatesFetched) { + if (core->updaterComponents().count() <= 0) + setErrorMessage(QLatin1String("<b>") + tr("No updates available.") + QLatin1String("</b>")); + else + setComplete(true); + } + } + + // fetch common packages + if (core->isInstaller() || core->isPackageManager()) { + bool localPackagesTreeFetched = false; + if (!m_allPackagesFetched) { + // first try to fetch the server side packages tree + m_allPackagesFetched = core->fetchRemotePackagesTree(); + if (!m_allPackagesFetched) { + QString error = core->error(); + if (core->isPackageManager() && core->status() != PackageManagerCore::ForceUpdate) { + // if that fails and we're in maintenance mode, try to fetch local installed tree + localPackagesTreeFetched = core->fetchLocalPackagesTree(); + if (localPackagesTreeFetched) { + // if that succeeded, adjust error message + error = QLatin1String("<font color=\"red\">") + error + tr(" Only local package " + "management available.") + QLatin1String("</font>"); + } + } + setErrorMessage(error); + } + } + + callControlScript(QLatin1String("PackageManagerSelectedCallback")); + + if (m_allPackagesFetched | localPackagesTreeFetched) + setComplete(true); + } + + if (maintanence) { + showMaintenanceTools(); + setMaintenanceToolsEnabled(true); + } else { + hideAll(); + } + gui()->setSettingsButtonEnabled(true); + + return isComplete(); +} + +void IntroductionPage::showAll() +{ + showWidgets(true); +} + +void IntroductionPage::hideAll() +{ + showWidgets(false); +} + +void IntroductionPage::showMetaInfoUdate() +{ + showWidgets(false); + m_label->setVisible(true); + m_progressBar->setVisible(true); +} + +void IntroductionPage::showMaintenanceTools() +{ + showWidgets(true); + m_label->setVisible(false); + m_progressBar->setVisible(false); +} + +void IntroductionPage::setMaintenanceToolsEnabled(bool enable) +{ + m_packageManager->setEnabled(enable); + m_updateComponents->setEnabled(enable && ProductKeyCheck::instance()->hasValidKey()); + m_removeAllComponents->setEnabled(enable); +} + +// -- public slots + +void IntroductionPage::setMessage(const QString &msg) +{ + m_label->setText(msg); +} + +void IntroductionPage::onProgressChanged(int progress) +{ + m_progressBar->setRange(0, 100); + m_progressBar->setValue(progress); +} + +void IntroductionPage::setErrorMessage(const QString &error) +{ + QPalette palette; + const PackageManagerCore::Status s = packageManagerCore()->status(); + if (s == PackageManagerCore::Failure || s == PackageManagerCore::Failure) { + palette.setColor(QPalette::WindowText, Qt::red); + } else { + palette.setColor(QPalette::WindowText, palette.color(QPalette::WindowText)); + } + + m_errorLabel->setText(error); + m_errorLabel->setPalette(palette); +} + +void IntroductionPage::callControlScript(const QString &callback) +{ + // Initialize the gui. Needs to be done after check repositories as only then the ui can handle + // hide of pages depending on the components. + gui()->init(); + gui()->callControlScriptMethod(callback); +} + +bool IntroductionPage::validRepositoriesAvailable() const +{ + const PackageManagerCore *const core = packageManagerCore(); + bool valid = (core->isInstaller() && core->isOfflineOnly()) || core->isUninstaller(); + + if (!valid) { + foreach (const Repository &repo, core->settings().repositories()) { + if (repo.isEnabled() && repo.isValid()) { + valid = true; + break; + } + } + } + return valid; +} + +// -- private slots + +void IntroductionPage::setUpdater(bool value) +{ + if (value) { + entering(); + gui()->showSettingsButton(true); + packageManagerCore()->setUpdater(); + emit packageManagerCoreTypeChanged(); + } +} + +void IntroductionPage::setUninstaller(bool value) +{ + if (value) { + entering(); + gui()->showSettingsButton(false); + packageManagerCore()->setUninstaller(); + emit packageManagerCoreTypeChanged(); + } +} + +void IntroductionPage::setPackageManager(bool value) +{ + if (value) { + entering(); + gui()->showSettingsButton(true); + packageManagerCore()->setPackageManager(); + emit packageManagerCoreTypeChanged(); + } +} + +void IntroductionPage::onCoreNetworkSettingsChanged() +{ + m_updatesFetched = false; + m_allPackagesFetched = false; +} + +// -- private + +void IntroductionPage::entering() +{ + setComplete(true); + showWidgets(false); + setMessage(QString()); + setErrorMessage(QString()); + setButtonText(QWizard::CancelButton, tr("Quit")); + + m_progressBar->setValue(0); + m_progressBar->setRange(0, 0); + PackageManagerCore *core = packageManagerCore(); + if (core->isUninstaller() || core->isUpdater() || core->isPackageManager()) { + showMaintenanceTools(); + setMaintenanceToolsEnabled(true); + } + setSettingsButtonRequested((!core->isOfflineOnly()) && (!core->isUninstaller())); +} + +void IntroductionPage::leaving() +{ + m_progressBar->setValue(0); + m_progressBar->setRange(0, 0); + setButtonText(QWizard::CancelButton, gui()->defaultButtonText(QWizard::CancelButton)); +} + +void IntroductionPage::showWidgets(bool show) +{ + m_label->setVisible(show); + m_progressBar->setVisible(show); + m_packageManager->setVisible(show); + m_updateComponents->setVisible(show); + m_removeAllComponents->setVisible(show); } void IntroductionPage::setText(const QString &text) diff --git a/src/libs/installer/packagemanagergui.h b/src/libs/installer/packagemanagergui.h index e1544306a..a2cf23139 100644 --- a/src/libs/installer/packagemanagergui.h +++ b/src/libs/installer/packagemanagergui.h @@ -58,6 +58,7 @@ class QLabel; class QLineEdit; class QListWidget; class QListWidgetItem; +class QProgressBar; class QRadioButton; class QTextBrowser; QT_END_NAMESPACE @@ -213,12 +214,51 @@ class INSTALLER_EXPORT IntroductionPage : public PackageManagerPage public: explicit IntroductionPage(PackageManagerCore *core); - void setWidget(QWidget *widget); void setText(const QString &text); + int nextId() const; + bool validatePage(); + + void showAll(); + void hideAll(); + void showMetaInfoUdate(); + void showMaintenanceTools(); + void setMaintenanceToolsEnabled(bool enable); + + public Q_SLOTS: + void onCoreNetworkSettingsChanged(); + void setMessage(const QString &msg); + void onProgressChanged(int progress); + void setErrorMessage(const QString &error); + +Q_SIGNALS: + void packageManagerCoreTypeChanged(); + + private Q_SLOTS: + void setUpdater(bool value); + void setUninstaller(bool value); + void setPackageManager(bool value); + private: + void entering(); + void leaving(); + + void showWidgets(bool show); + void callControlScript(const QString &callback); + + bool validRepositoriesAvailable() const; + +private: + bool m_updatesFetched; + bool m_allPackagesFetched; + + QLabel *m_label; QLabel *m_msgLabel; - QWidget *m_widget; + QLabel *m_errorLabel; + QProgressBar *m_progressBar; + QRadioButton *m_packageManager; + QRadioButton *m_updateComponents; + QRadioButton *m_removeAllComponents; }; diff --git a/src/sdk/installerbasecommons.cpp b/src/sdk/installerbasecommons.cpp index 8bf6ca449..f34024c17 100644 --- a/src/sdk/installerbasecommons.cpp +++ b/src/sdk/installerbasecommons.cpp @@ -40,331 +40,12 @@ **************************************************************************/ #include "installerbasecommons.h" -#include <component.h> -#include <messageboxhandler.h> -#include <packagemanagercore.h> #include <packagemanagerpagefactory.h> -#include <settings.h> - #include <productkeycheck.h> -#include <QtCore/QDir> -#include <QtCore/QFileInfo> -#include <QtCore/QTimer> - -#include <QLabel> -#include <QProgressBar> -#include <QRadioButton> -#include <QStackedWidget> -#include <QVBoxLayout> - using namespace QInstaller; -// -- IntroductionPageImpl - -IntroductionPageImpl::IntroductionPageImpl(QInstaller::PackageManagerCore *core) - : QInstaller::IntroductionPage(core) - , m_updatesFetched(false) - , m_allPackagesFetched(false) -{ - QWidget *widget = new QWidget(this); - QVBoxLayout *layout = new QVBoxLayout(widget); - - m_packageManager = new QRadioButton(tr("Package manager"), this); - m_packageManager->setObjectName(QLatin1String("PackageManagerRadioButton")); - layout->addWidget(m_packageManager); - m_packageManager->setChecked(core->isPackageManager()); - connect(m_packageManager, SIGNAL(toggled(bool)), this, SLOT(setPackageManager(bool))); - - m_updateComponents = new QRadioButton(tr("Update components"), this); - m_updateComponents->setObjectName(QLatin1String("UpdaterRadioButton")); - layout->addWidget(m_updateComponents); - m_updateComponents->setChecked(core->isUpdater()); - connect(m_updateComponents, SIGNAL(toggled(bool)), this, SLOT(setUpdater(bool))); - - m_removeAllComponents = new QRadioButton(tr("Remove all components"), this); - m_removeAllComponents->setObjectName(QLatin1String("UninstallerRadioButton")); - layout->addWidget(m_removeAllComponents); - m_removeAllComponents->setChecked(core->isUninstaller()); - connect(m_removeAllComponents, SIGNAL(toggled(bool)), this, SLOT(setUninstaller(bool))); - connect(m_removeAllComponents, SIGNAL(toggled(bool)), core, SLOT(setCompleteUninstallation(bool))); - - layout->addItem(new QSpacerItem(1, 1, QSizePolicy::Minimum, QSizePolicy::Expanding)); - - m_label = new QLabel(this); - m_label->setWordWrap(true); - m_label->setText(tr("Retrieving information from remote installation sources...")); - layout->addWidget(m_label); - - m_progressBar = new QProgressBar(this); - m_progressBar->setRange(0, 0); - layout->addWidget(m_progressBar); - - layout->addItem(new QSpacerItem(1, 1, QSizePolicy::Minimum, QSizePolicy::Expanding)); - - m_errorLabel = new QLabel(this); - m_errorLabel->setWordWrap(true); - layout->addWidget(m_errorLabel); - - widget->setLayout(layout); - setWidget(widget); - - core->setCompleteUninstallation(core->isUninstaller()); - - connect(core, SIGNAL(metaJobProgress(int)), this, SLOT(onProgressChanged(int))); - connect(core, SIGNAL(metaJobInfoMessage(QString)), this, SLOT(setMessage(QString))); - connect(core, SIGNAL(coreNetworkSettingsChanged()), this, SLOT(onCoreNetworkSettingsChanged())); - - m_updateComponents->setEnabled(ProductKeyCheck::instance()->hasValidKey()); -} - -int IntroductionPageImpl::nextId() const -{ - if (packageManagerCore()->isUninstaller()) - return PackageManagerCore::ReadyForInstallation; - - if (packageManagerCore()->isUpdater() || packageManagerCore()->isPackageManager()) - return PackageManagerCore::ComponentSelection; - - return QInstaller::IntroductionPage::nextId(); -} - -bool IntroductionPageImpl::validatePage() -{ - PackageManagerCore *core = packageManagerCore(); - if (core->isUninstaller()) - return true; - - setComplete(false); - if (!validRepositoriesAvailable()) { - setErrorMessage(QLatin1String("<font color=\"red\">") + tr("At least one valid and enabled " - "repository required for this action to succeed.") + QLatin1String("</font>")); - return isComplete(); - } - - gui()->setSettingsButtonEnabled(false); - const bool maintanence = core->isUpdater() || core->isPackageManager(); - if (maintanence) { - showAll(); - setMaintenanceToolsEnabled(false); - } else { - showMetaInfoUdate(); - } - - // fetch updater packages - if (core->isUpdater()) { - if (!m_updatesFetched) { - m_updatesFetched = core->fetchRemotePackagesTree(); - if (!m_updatesFetched) - setErrorMessage(core->error()); - } - - callControlScript(QLatin1String("UpdaterSelectedCallback")); - - if (m_updatesFetched) { - if (core->updaterComponents().count() <= 0) - setErrorMessage(QLatin1String("<b>") + tr("No updates available.") + QLatin1String("</b>")); - else - setComplete(true); - } - } - - // fetch common packages - if (core->isInstaller() || core->isPackageManager()) { - bool localPackagesTreeFetched = false; - if (!m_allPackagesFetched) { - // first try to fetch the server side packages tree - m_allPackagesFetched = core->fetchRemotePackagesTree(); - if (!m_allPackagesFetched) { - QString error = core->error(); - if (core->isPackageManager() && core->status() != PackageManagerCore::ForceUpdate) { - // if that fails and we're in maintenance mode, try to fetch local installed tree - localPackagesTreeFetched = core->fetchLocalPackagesTree(); - if (localPackagesTreeFetched) { - // if that succeeded, adjust error message - error = QLatin1String("<font color=\"red\">") + error + tr(" Only local package " - "management available.") + QLatin1String("</font>"); - } - } - setErrorMessage(error); - } - } - - callControlScript(QLatin1String("PackageManagerSelectedCallback")); - - if (m_allPackagesFetched | localPackagesTreeFetched) - setComplete(true); - } - - if (maintanence) { - showMaintenanceTools(); - setMaintenanceToolsEnabled(true); - } else { - hideAll(); - } - gui()->setSettingsButtonEnabled(true); - - return isComplete(); -} - -void IntroductionPageImpl::showAll() -{ - showWidgets(true); -} - -void IntroductionPageImpl::hideAll() -{ - showWidgets(false); -} - -void IntroductionPageImpl::showMetaInfoUdate() -{ - showWidgets(false); - m_label->setVisible(true); - m_progressBar->setVisible(true); -} - -void IntroductionPageImpl::showMaintenanceTools() -{ - showWidgets(true); - m_label->setVisible(false); - m_progressBar->setVisible(false); -} - -void IntroductionPageImpl::setMaintenanceToolsEnabled(bool enable) -{ - m_packageManager->setEnabled(enable); - m_updateComponents->setEnabled(enable && ProductKeyCheck::instance()->hasValidKey()); - m_removeAllComponents->setEnabled(enable); -} - -// -- public slots - -void IntroductionPageImpl::setMessage(const QString &msg) -{ - m_label->setText(msg); -} - -void IntroductionPageImpl::onProgressChanged(int progress) -{ - m_progressBar->setRange(0, 100); - m_progressBar->setValue(progress); -} - -void IntroductionPageImpl::setErrorMessage(const QString &error) -{ - QPalette palette; - const PackageManagerCore::Status s = packageManagerCore()->status(); - if (s == PackageManagerCore::Failure || s == PackageManagerCore::Failure) { - palette.setColor(QPalette::WindowText, Qt::red); - } else { - palette.setColor(QPalette::WindowText, palette.color(QPalette::WindowText)); - } - - m_errorLabel->setText(error); - m_errorLabel->setPalette(palette); -} - -void IntroductionPageImpl::callControlScript(const QString &callback) -{ - // Initialize the gui. Needs to be done after check repositories as only then the ui can handle - // hide of pages depending on the components. - gui()->init(); - gui()->callControlScriptMethod(callback); -} - -bool IntroductionPageImpl::validRepositoriesAvailable() const -{ - const PackageManagerCore *const core = packageManagerCore(); - bool valid = (core->isInstaller() && core->isOfflineOnly()) || core->isUninstaller(); - - if (!valid) { - foreach (const Repository &repo, core->settings().repositories()) { - if (repo.isEnabled() && repo.isValid()) { - valid = true; - break; - } - } - } - return valid; -} - -// -- private slots - -void IntroductionPageImpl::setUpdater(bool value) -{ - if (value) { - entering(); - gui()->showSettingsButton(true); - packageManagerCore()->setUpdater(); - emit packageManagerCoreTypeChanged(); - } -} - -void IntroductionPageImpl::setUninstaller(bool value) -{ - if (value) { - entering(); - gui()->showSettingsButton(false); - packageManagerCore()->setUninstaller(); - emit packageManagerCoreTypeChanged(); - } -} - -void IntroductionPageImpl::setPackageManager(bool value) -{ - if (value) { - entering(); - gui()->showSettingsButton(true); - packageManagerCore()->setPackageManager(); - emit packageManagerCoreTypeChanged(); - } -} - -void IntroductionPageImpl::onCoreNetworkSettingsChanged() -{ - m_updatesFetched = false; - m_allPackagesFetched = false; -} - -// -- private - -void IntroductionPageImpl::entering() -{ - setComplete(true); - showWidgets(false); - setMessage(QString()); - setErrorMessage(QString()); - setButtonText(QWizard::CancelButton, tr("Quit")); - - m_progressBar->setValue(0); - m_progressBar->setRange(0, 0); - PackageManagerCore *core = packageManagerCore(); - if (core->isUninstaller() ||core->isUpdater() || core->isPackageManager()) { - showMaintenanceTools(); - setMaintenanceToolsEnabled(true); - } - setSettingsButtonRequested((!core->isOfflineOnly()) && (!core->isUninstaller())); -} - -void IntroductionPageImpl::leaving() -{ - m_progressBar->setValue(0); - m_progressBar->setRange(0, 0); - setButtonText(QWizard::CancelButton, gui()->defaultButtonText(QWizard::CancelButton)); -} - -void IntroductionPageImpl::showWidgets(bool show) -{ - m_label->setVisible(show); - m_progressBar->setVisible(show); - m_packageManager->setVisible(show); - m_updateComponents->setVisible(show); - m_removeAllComponents->setVisible(show); -} - - // -- InstallerGui InstallerGui::InstallerGui(PackageManagerCore *core) @@ -377,7 +58,8 @@ InstallerGui::InstallerGui(PackageManagerCore *core) "constructed.").arg(id))); setPage(id, page); } - setPage(PackageManagerCore::Introduction, new IntroductionPageImpl(core)); + + setPage(PackageManagerCore::Introduction, new IntroductionPage(core)); setPage(PackageManagerCore::TargetDirectory, new TargetDirectoryPage(core)); setPage(PackageManagerCore::ComponentSelection, new ComponentSelectionPage(core)); setPage(PackageManagerCore::LicenseCheck, new LicenseAgreementPage(core)); @@ -407,7 +89,7 @@ MaintenanceGui::MaintenanceGui(PackageManagerCore *core) setPage(id, page); } - IntroductionPageImpl *intro = new IntroductionPageImpl(core); + IntroductionPage *intro = new IntroductionPage(core); connect(intro, SIGNAL(packageManagerCoreTypeChanged()), this, SLOT(updateRestartPage())); setPage(PackageManagerCore::Introduction, intro); diff --git a/src/sdk/installerbasecommons.h b/src/sdk/installerbasecommons.h index 8103145dd..6579bbaaf 100644 --- a/src/sdk/installerbasecommons.h +++ b/src/sdk/installerbasecommons.h @@ -44,67 +44,6 @@ #include <packagemanagergui.h> -QT_BEGIN_NAMESPACE -class QLabel; -class QString; -class QProgressBar; -QT_END_NAMESPACE - - -// -- IntroductionPageImpl - -class IntroductionPageImpl : public QInstaller::IntroductionPage -{ - Q_OBJECT - -public: - explicit IntroductionPageImpl(QInstaller::PackageManagerCore *core); - - int nextId() const; - bool validatePage(); - - void showAll(); - void hideAll(); - void showMetaInfoUdate(); - void showMaintenanceTools(); - void setMaintenanceToolsEnabled(bool enable); - -public Q_SLOTS: - void onCoreNetworkSettingsChanged(); - void setMessage(const QString &msg); - void onProgressChanged(int progress); - void setErrorMessage(const QString &error); - -Q_SIGNALS: - void packageManagerCoreTypeChanged(); - -private Q_SLOTS: - void setUpdater(bool value); - void setUninstaller(bool value); - void setPackageManager(bool value); - -private: - void entering(); - void leaving(); - - void showWidgets(bool show); - void callControlScript(const QString &callback); - - bool validRepositoriesAvailable() const; - -private: - bool m_updatesFetched; - bool m_updatesCompleted; - bool m_allPackagesFetched; - - QLabel *m_label; - QLabel *m_errorLabel; - QProgressBar *m_progressBar; - QRadioButton *m_packageManager; - QRadioButton *m_updateComponents; - QRadioButton *m_removeAllComponents; -}; - // -- InstallerGui diff --git a/src/sdk/tabcontroller.cpp b/src/sdk/tabcontroller.cpp index 0bc832e9f..ffa831580 100644 --- a/src/sdk/tabcontroller.cpp +++ b/src/sdk/tabcontroller.cpp @@ -137,8 +137,8 @@ int TabController::init() connect(d->m_gui, SIGNAL(settingsButtonClicked()), this, SLOT(onSettingsButtonClicked())); } - IntroductionPageImpl *page = - qobject_cast<IntroductionPageImpl*> (d->m_gui->page(PackageManagerCore::Introduction)); + IntroductionPage *page = + qobject_cast<IntroductionPage*> (d->m_gui->page(PackageManagerCore::Introduction)); if (page) { page->setMessage(QString()); page->setErrorMessage(QString()); @@ -184,8 +184,8 @@ void TabController::onSettingsButtonClicked() if (d->m_networkSettingsChanged) { d->m_core->setCanceled(); - IntroductionPageImpl *page = - qobject_cast<IntroductionPageImpl*> (d->m_gui->page(PackageManagerCore::Introduction)); + IntroductionPage *page = + qobject_cast<IntroductionPage*> (d->m_gui->page(PackageManagerCore::Introduction)); if (page) { page->setMessage(QString()); page->setErrorMessage(QString()); |