diff options
Diffstat (limited to 'src/plugins/subversion/checkoutwizard.cpp')
-rw-r--r-- | src/plugins/subversion/checkoutwizard.cpp | 42 |
1 files changed, 22 insertions, 20 deletions
diff --git a/src/plugins/subversion/checkoutwizard.cpp b/src/plugins/subversion/checkoutwizard.cpp index 7802adbeee..f58128e907 100644 --- a/src/plugins/subversion/checkoutwizard.cpp +++ b/src/plugins/subversion/checkoutwizard.cpp @@ -56,23 +56,40 @@ VcsBase::BaseCheckoutWizard *CheckoutWizardFactory::create(const QString &path, return new CheckoutWizard(path, parent); } -VcsBase::Command *CheckoutWizardFactory::createCommand(const QList<QWizardPage*> ¶meterPages, - QString *checkoutPath) +// -------------------------------------------------------------------- +// CheckoutWizard: +// -------------------------------------------------------------------- + +CheckoutWizard::CheckoutWizard(const QString &path, QWidget *parent) : + VcsBase::BaseCheckoutWizard(path, parent) +{ + const Core::IVersionControl *vc = SubversionPlugin::instance()->versionControl(); + if (!vc->isConfigured()) + addPage(new VcsBase::VcsConfigurationPage(vc)); + CheckoutWizardPage *cwp = new CheckoutWizardPage; + cwp->setPath(path); + addPage(cwp); +} + +VcsBase::Command *CheckoutWizard::createCommand(QString *checkoutDir) { // Collect parameters for the checkout command. const CheckoutWizardPage *cwp = 0; - foreach (const QWizardPage *p, parameterPages) { - if ((cwp = qobject_cast<const CheckoutWizardPage *>(p))) + foreach (int pageId, pageIds()) { + if ((cwp = qobject_cast<const CheckoutWizardPage *>(page(pageId)))) break; } QTC_ASSERT(cwp, return 0); + const SubversionSettings settings = SubversionPlugin::instance()->settings(); const QString binary = settings.binaryPath(); const QString directory = cwp->directory(); QStringList args; args << QLatin1String("checkout") << cwp->repository() << directory; const QString workingDirectory = cwp->path(); - *checkoutPath = workingDirectory + QLatin1Char('/') + directory; + + *checkoutDir = workingDirectory + QLatin1Char('/') + directory; + if (settings.hasAuthentication()) { const QString user = settings.stringValue(SubversionSettings::userKey); const QString pwd = settings.stringValue(SubversionSettings::passwordKey); @@ -84,20 +101,5 @@ VcsBase::Command *CheckoutWizardFactory::createCommand(const QList<QWizardPage*> return command; } -// -------------------------------------------------------------------- -// CheckoutWizard: -// -------------------------------------------------------------------- - -CheckoutWizard::CheckoutWizard(const QString &path, QWidget *parent) : - VcsBase::BaseCheckoutWizard(path, parent) -{ - const Core::IVersionControl *vc = SubversionPlugin::instance()->versionControl(); - if (!vc->isConfigured()) - addPage(new VcsBase::VcsConfigurationPage(vc)); - CheckoutWizardPage *cwp = new CheckoutWizardPage; - cwp->setPath(path); - addPage(cwp); -} - } // namespace Internal } // namespace Subversion |