From caca9dfa6f63c942d591f6cf8e41475ebf68d93d Mon Sep 17 00:00:00 2001 From: Tobias Hunger Date: Mon, 11 May 2015 13:02:36 +0200 Subject: [PATCH] CheckoutWizards: Simplify code to look up specific pages Change-Id: I0098e17585d73e05632027676e7712ef9c843da2 Reviewed-by: Orgad Shaneh --- src/plugins/bazaar/clonewizard.cpp | 12 ++++-------- src/plugins/cvs/checkoutwizard.cpp | 8 ++------ src/plugins/git/clonewizard.cpp | 7 +------ src/plugins/mercurial/clonewizard.cpp | 12 ++++-------- src/plugins/subversion/checkoutwizard.cpp | 6 +----- 5 files changed, 12 insertions(+), 33 deletions(-) diff --git a/src/plugins/bazaar/clonewizard.cpp b/src/plugins/bazaar/clonewizard.cpp index f3d4b48ac79..8ee1a69e215 100644 --- a/src/plugins/bazaar/clonewizard.cpp +++ b/src/plugins/bazaar/clonewizard.cpp @@ -40,6 +40,8 @@ #include #include +#include + #include using namespace VcsBase; @@ -70,14 +72,8 @@ CloneWizard::CloneWizard(const Utils::FileName &path, QWidget *parent) : VcsCommand *CloneWizard::createCommand(Utils::FileName *checkoutDir) { - const CloneWizardPage *cwp = 0; - foreach (int pageId, pageIds()) { - if ((cwp = qobject_cast(page(pageId)))) - break; - } - - if (!cwp) - return 0; + const CloneWizardPage *cwp = find(); + QTC_ASSERT(cwp, return 0); const VcsBaseClientSettings &settings = BazaarPlugin::instance()->client()->settings(); *checkoutDir = Utils::FileName::fromString(cwp->path() + QLatin1Char('/') + cwp->directory()); diff --git a/src/plugins/cvs/checkoutwizard.cpp b/src/plugins/cvs/checkoutwizard.cpp index 640edbb5d18..343ee8161e2 100644 --- a/src/plugins/cvs/checkoutwizard.cpp +++ b/src/plugins/cvs/checkoutwizard.cpp @@ -66,13 +66,9 @@ VcsCommand *CheckoutWizard::createCommand(Utils::FileName *checkoutDir) { // Collect parameters for the checkout command. // CVS does not allow for checking out into a different directory. - const CheckoutWizardPage *cwp = 0; - foreach (int pageId, pageIds()) { - if ((cwp = qobject_cast(page(pageId)))) - break; - } - + const CheckoutWizardPage *cwp = find(); QTC_ASSERT(cwp, return 0); + const CvsSettings settings = CvsPlugin::instance()->client()->settings(); const Utils::FileName binary = settings.binaryPath(); QStringList args; diff --git a/src/plugins/git/clonewizard.cpp b/src/plugins/git/clonewizard.cpp index 5570c0bd46d..4229ba28385 100644 --- a/src/plugins/git/clonewizard.cpp +++ b/src/plugins/git/clonewizard.cpp @@ -67,12 +67,7 @@ CloneWizard::CloneWizard(const Utils::FileName &path, QWidget *parent) : VcsCommand *CloneWizard::createCommand(Utils::FileName *checkoutDir) { // Collect parameters for the clone command. - const CloneWizardPage *cwp = 0; - foreach (int pageId, pageIds()) { - if ((cwp = qobject_cast(page(pageId)))) - break; - } - + const CloneWizardPage *cwp = find(); QTC_ASSERT(cwp, return 0); return cwp->createCheckoutJob(checkoutDir); } diff --git a/src/plugins/mercurial/clonewizard.cpp b/src/plugins/mercurial/clonewizard.cpp index 59ba563bf37..90339e34c24 100644 --- a/src/plugins/mercurial/clonewizard.cpp +++ b/src/plugins/mercurial/clonewizard.cpp @@ -39,6 +39,8 @@ #include #include +#include + using namespace VcsBase; namespace Mercurial { @@ -66,14 +68,8 @@ CloneWizard::CloneWizard(const Utils::FileName &path, QWidget *parent) : VcsCommand *CloneWizard::createCommand(Utils::FileName *checkoutDir) { - const CloneWizardPage *cwp = 0; - foreach (int pageId, pageIds()) { - if ((cwp = qobject_cast(page(pageId)))) - break; - } - - if (!cwp) - return 0; + const CloneWizardPage *cwp = find(); + QTC_ASSERT(cwp, return 0); const VcsBaseClientSettings &settings = MercurialPlugin::client()->settings(); diff --git a/src/plugins/subversion/checkoutwizard.cpp b/src/plugins/subversion/checkoutwizard.cpp index b5b9336adea..ad631b9f30c 100644 --- a/src/plugins/subversion/checkoutwizard.cpp +++ b/src/plugins/subversion/checkoutwizard.cpp @@ -67,11 +67,7 @@ CheckoutWizard::CheckoutWizard(const FileName &path, QWidget *parent) : VcsCommand *CheckoutWizard::createCommand(FileName *checkoutDir) { // Collect parameters for the checkout command. - const CheckoutWizardPage *cwp = 0; - foreach (int pageId, pageIds()) { - if ((cwp = qobject_cast(page(pageId)))) - break; - } + const CheckoutWizardPage *cwp = find(); QTC_ASSERT(cwp, return 0); SubversionClient *client = SubversionPlugin::instance()->client();