From 083325fd1c629f7df1c8dd7c57aaef1ab58b0080 Mon Sep 17 00:00:00 2001 From: Tobias Hunger <tobias.hunger@theqtcompany.com> Date: Mon, 4 May 2015 14:20:11 +0200 Subject: [PATCH] Vcs: Make VcsConfiguration page trigger on config changes ... when used with an vcsId instead of with an IVersionControl. Change-Id: Id906db07165535d4f505c7696e29bb8b9026f840 Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com> --- src/plugins/vcsbase/wizard/vcsconfigurationpage.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/plugins/vcsbase/wizard/vcsconfigurationpage.cpp b/src/plugins/vcsbase/wizard/vcsconfigurationpage.cpp index c12703e661f..94f14677fc3 100644 --- a/src/plugins/vcsbase/wizard/vcsconfigurationpage.cpp +++ b/src/plugins/vcsbase/wizard/vcsconfigurationpage.cpp @@ -118,8 +118,6 @@ VcsConfigurationPage::VcsConfigurationPage() : d(new Internal::VcsConfigurationP auto verticalLayout = new QVBoxLayout(this); verticalLayout->addWidget(d->m_configureButton); - connect(d->m_versionControl, &IVersionControl::configurationChanged, - this, &QWizardPage::completeChanged); connect(d->m_configureButton, &QAbstractButton::clicked, this, &VcsConfigurationPage::openConfiguration); } @@ -145,6 +143,11 @@ void VcsConfigurationPage::setVersionControlId(const QString &id) void VcsConfigurationPage::initializePage() { + if (d->m_versionControl) { + disconnect(d->m_versionControl, &IVersionControl::configurationChanged, + this, &QWizardPage::completeChanged); + } + if (!d->m_versionControlId.isEmpty()) { auto jw = qobject_cast<JsonWizard *>(wizard()); if (!jw) { @@ -167,6 +170,9 @@ void VcsConfigurationPage::initializePage() } } + connect(d->m_versionControl, &IVersionControl::configurationChanged, + this, &QWizardPage::completeChanged); + d->m_configureButton->setEnabled(d->m_versionControl); if (d->m_versionControl) setSubTitle(tr("Please configure <b>%1</b> now.").arg(d->m_versionControl->displayName())); -- GitLab