diff options
author | Kai Koehne <kai.koehne@digia.com> | 2012-11-14 16:48:20 +0100 |
---|---|---|
committer | Karsten Heimrich <karsten.heimrich@digia.com> | 2013-02-04 12:47:38 +0100 |
commit | 273c27fb994cb225b97dea2a741af83b6b834228 (patch) | |
tree | 79fa42ec2e623ece4871c623f7c3a2a76cae897a | |
parent | aff8a9920257d25d6f2651c909ce277ddbd75c59 (diff) |
InstallerPage: Change text based on number of licenses
Allow translations to adapt depending whether there's one or more
license(s) shown.
Change-Id: Ia8e816e63647f7ea682e026c4825911a77a56690
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
Reviewed-by: Niels Weber <niels.weber@digia.com>
-rw-r--r-- | src/libs/installer/packagemanagergui.cpp | 57 | ||||
-rw-r--r-- | src/libs/installer/packagemanagergui.h | 4 |
2 files changed, 43 insertions, 18 deletions
diff --git a/src/libs/installer/packagemanagergui.cpp b/src/libs/installer/packagemanagergui.cpp index 8226ff3fe..827cfc231 100644 --- a/src/libs/installer/packagemanagergui.cpp +++ b/src/libs/installer/packagemanagergui.cpp @@ -903,9 +903,6 @@ LicenseAgreementPage::LicenseAgreementPage(PackageManagerCore *core) setPixmap(QWizard::WatermarkPixmap, QPixmap()); setObjectName(QLatin1String("LicenseAgreementPage")); setTitle(titleForPage(QLatin1String("LicenseAgreementPage"), tr("License Agreement"))); - setSubTitle(subTitleForPage(QLatin1String("LicenseAgreementPage"), tr("Please read the following license " - "agreement(s). You must accept the terms contained in these agreement(s) before continuing with the " - "installation."))); m_licenseListWidget = new QListWidget(this); m_licenseListWidget->setObjectName(QLatin1String("LicenseListWidget")); @@ -933,25 +930,22 @@ LicenseAgreementPage::LicenseAgreementPage(PackageManagerCore *core) m_acceptRadioButton->setObjectName(QLatin1String("AcceptLicenseRadioButton")); ClickForwarder *acceptClickForwarder = new ClickForwarder(m_acceptRadioButton); - QLabel *acceptLabel = new QLabel; - acceptLabel->setWordWrap(true); - acceptLabel->installEventFilter(acceptClickForwarder); - acceptLabel->setObjectName(QLatin1String("AcceptLicenseLabel")); - acceptLabel->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Minimum); - const QVariantHash hash = elementsForPage(QLatin1String("LicenseAgreementPage")); - acceptLabel->setText(hash.value(QLatin1String("AcceptLicenseLabel"), tr("I accept the licenses.")).toString()); + m_acceptLabel = new QLabel; + m_acceptLabel->setWordWrap(true); + m_acceptLabel->installEventFilter(acceptClickForwarder); + m_acceptLabel->setObjectName(QLatin1String("AcceptLicenseLabel")); + m_acceptLabel->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Minimum); m_rejectRadioButton = new QRadioButton(this); ClickForwarder *rejectClickForwarder = new ClickForwarder(m_rejectRadioButton); m_rejectRadioButton->setObjectName(QString::fromUtf8("RejectLicenseRadioButton")); m_rejectRadioButton->setShortcut(QKeySequence(tr("Alt+D", "do not agree license"))); - QLabel *rejectLabel = new QLabel; - rejectLabel->setWordWrap(true); - rejectLabel->installEventFilter(rejectClickForwarder); - rejectLabel->setObjectName(QLatin1String("RejectLicenseLabel")); - rejectLabel->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Minimum); - rejectLabel->setText(hash.value(QLatin1String("RejectLicenseLabel"), tr("I do not accept the licenses.")).toString()); + m_rejectLabel = new QLabel; + m_rejectLabel->setWordWrap(true); + m_rejectLabel->installEventFilter(rejectClickForwarder); + m_rejectLabel->setObjectName(QLatin1String("RejectLicenseLabel")); + m_rejectLabel->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Minimum); #if defined(Q_OS_X11) || defined(Q_OS_MAC) QFont labelFont(font()); @@ -963,9 +957,9 @@ LicenseAgreementPage::LicenseAgreementPage(PackageManagerCore *core) QGridLayout *gridLayout = new QGridLayout; gridLayout->setColumnStretch(1, 1); gridLayout->addWidget(m_acceptRadioButton, 0, 0); - gridLayout->addWidget(acceptLabel, 0, 1); + gridLayout->addWidget(m_acceptLabel, 0, 1); gridLayout->addWidget(m_rejectRadioButton, 1, 0); - gridLayout->addWidget(rejectLabel, 1, 1); + gridLayout->addWidget(m_rejectLabel, 1, 1); layout->addLayout(gridLayout); connect(m_acceptRadioButton, SIGNAL(toggled(bool)), this, SIGNAL(completeChanged())); @@ -989,6 +983,8 @@ void LicenseAgreementPage::entering() m_licenseListWidget->setVisible(licenseCount > 1); m_licenseListWidget->setCurrentItem(m_licenseListWidget->item(0)); } + + updateUi(); } bool LicenseAgreementPage::isComplete() const @@ -1016,6 +1012,31 @@ void LicenseAgreementPage::addLicenseItem(const QHash<QString, QPair<QString, QS } } +void LicenseAgreementPage::updateUi() +{ + QString subTitleText; + QString acceptButtonText; + QString rejectButtonText; + if (m_licenseListWidget->count() == 1) { + subTitleText = tr("Please read the following license agreement. You must accept the terms " + "contained in this agreement before continuing with the installation."); + acceptButtonText = tr("I accept the license."); + rejectButtonText = tr("I do not accept the license."); + } else { + subTitleText = tr("Please read the following license agreements. You must accept the terms " + "contained in these agreements before continuing with the installation."); + acceptButtonText = tr("I accept the licenses."); + rejectButtonText = tr("I do not accept the licenses."); + } + + setSubTitle(subTitleForPage(QLatin1String("LicenseAgreementPage", subTitleText)); + + const QVariantHash hash = elementsForPage(QLatin1String("LicenseAgreementPage")); + m_acceptLabel->setText(hash.value(QLatin1String("AcceptLicenseLabel"), acceptButtonText); + m_rejectLabel->setText(hash.value(QLatin1String("RejectLicenseLabel"), rejectButtonText); + +} + // -- ComponentSelectionPage::Private diff --git a/src/libs/installer/packagemanagergui.h b/src/libs/installer/packagemanagergui.h index d68f043ab..448ce85b2 100644 --- a/src/libs/installer/packagemanagergui.h +++ b/src/libs/installer/packagemanagergui.h @@ -235,6 +235,7 @@ private Q_SLOTS: private: void addLicenseItem(const QHash<QString, QPair<QString, QString> > &hash); + void updateUi(); private: QTextBrowser *m_textBrowser; @@ -242,6 +243,9 @@ private: QRadioButton *m_acceptRadioButton; QRadioButton *m_rejectRadioButton; + + QLabel *m_acceptLabel; + QLabel *m_rejectLabel; }; |