From ecc3a9edd5350c78e479b07258af1a64ce72cb4e Mon Sep 17 00:00:00 2001 From: Klaas Freitag Date: Fri, 7 Oct 2011 16:01:58 +0200 Subject: [PATCH] remote folder check for oC finished --- src/mirall/folderwizard.cpp | 14 +++++++++++--- src/mirall/folderwizard.h | 2 +- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/mirall/folderwizard.cpp b/src/mirall/folderwizard.cpp index fce6da896..c173091af 100644 --- a/src/mirall/folderwizard.cpp +++ b/src/mirall/folderwizard.cpp @@ -82,7 +82,6 @@ FolderWizardTargetPage::FolderWizardTargetPage() _timer->setSingleShot( true ); connect( _timer, SIGNAL(timeout()), SLOT(slotTimerFires())); - _ownCloudInfo = new ownCloudInfo( this ); _ownCloudDirCheck = new ownCloudDirCheck( this ); connect( _ownCloudDirCheck, SIGNAL(directoryExists(QString,bool)), @@ -91,11 +90,14 @@ FolderWizardTargetPage::FolderWizardTargetPage() void FolderWizardTargetPage::slotFolderTextChanged( const QString& t) { + _dirChecked = false; + emit completeChanged(); + if( t.isEmpty() ) { _timer->stop(); return; } - qDebug() << "XX new folder string: " << t; + _timer->start(500); } @@ -103,13 +105,14 @@ void FolderWizardTargetPage::slotTimerFires() { const QString folder = _ui.OCFolderLineEdit->text(); qDebug() << "Querying folder " << folder; - _ownCloudDirCheck->checkDirectory( folder ); } void FolderWizardTargetPage::slotInfoReply(const QString &url, bool exists ) { qDebug() << "Got reply from ownCloudInfo: " << url << " :" << exists; + _dirChecked = exists; + emit completeChanged(); } @@ -126,7 +129,12 @@ bool FolderWizardTargetPage::isComplete() const QUrl url(_ui.urlFolderLineEdit->text()); return url.isValid() && (url.scheme() == "sftp" || url.scheme() == "smb"); } else if( _ui.OCRadioBtn->isChecked()) { + QString dir = _ui.OCFolderLineEdit->text(); + if( dir.isEmpty() ) { return true; + } else { + return _dirChecked; + } } return false; } diff --git a/src/mirall/folderwizard.h b/src/mirall/folderwizard.h index 0b5e5d720..0fad2b028 100644 --- a/src/mirall/folderwizard.h +++ b/src/mirall/folderwizard.h @@ -86,8 +86,8 @@ protected slots: private: Ui_FolderWizardTargetPage _ui; QTimer *_timer; - ownCloudInfo *_ownCloudInfo; ownCloudDirCheck *_ownCloudDirCheck; + bool _dirChecked; }; class FolderWizardNetworkPage : public QWizardPage