Added UICallback::updateProcess

Moved scanDirectory to Repository

FossilOrigin-Name: 4d94a638499c31672bf47de43407b1fa2531e716
This commit is contained in:
kostas
2015-04-30 09:50:22 +00:00
parent a43eac0ae3
commit 97f210fd46
5 changed files with 31 additions and 17 deletions

View File

@@ -487,12 +487,11 @@ void MainWindow::onOpenRecent()
}
//------------------------------------------------------------------------------
bool MainWindow::scanDirectory(QFileInfoList &entries, const QString& dirPath, const QString &baseDir, const QString ignoreSpec, const bool &abort)
bool Repository::scanDirectory(QFileInfoList &entries, const QString& dirPath, const QString &baseDir, const QString ignoreSpec, const bool &abort, Bridge::UICallback &uiCallback)
{
QDir dir(dirPath);
setStatus(dirPath);
QCoreApplication::processEvents();
uiCallback.updateProcess(dirPath);
QFileInfoList list = dir.entryInfoList(QDir::Dirs | QDir::Files | QDir::Hidden | QDir::NoDotAndDotDot);
for (int i=0; i<list.count(); ++i)
@@ -511,7 +510,7 @@ bool MainWindow::scanDirectory(QFileInfoList &entries, const QString& dirPath, c
if (info.isDir())
{
if(!scanDirectory(entries, filepath, baseDir, ignoreSpec, abort))
if(!scanDirectory(entries, filepath, baseDir, ignoreSpec, abort, uiCallback))
return false;
}
else
@@ -603,7 +602,6 @@ void MainWindow::scanWorkspace()
setStatus(tr("Scanning Workspace..."));
setBusy(true);
QApplication::setOverrideCursor(QCursor(Qt::WaitCursor));
// Dispose RepoFiles
for(Repository::filemap_t::iterator it = getRepo().workspaceFiles.begin(); it!=getRepo().workspaceFiles.end(); ++it)
@@ -626,7 +624,7 @@ void MainWindow::scanWorkspace()
ignore = settings.GetFossilValue(FOSSIL_SETTING_IGNORE_GLOB).toString().replace(',',';');
}
if(!scanDirectory(all_files, wkdir, wkdir, ignore, operationAborted))
if(!getRepo().scanDirectory(all_files, wkdir, wkdir, ignore, operationAborted, uiCallback))
goto _done;
for(QFileInfoList::iterator it=all_files.begin(); it!=all_files.end(); ++it)
@@ -728,7 +726,6 @@ _done:
setBusy(false);
setStatus("");
QApplication::restoreOverrideCursor();
}
//------------------------------------------------------------------------------
@@ -2144,6 +2141,11 @@ void MainWindow::dropEvent(QDropEvent *event)
//------------------------------------------------------------------------------
void MainWindow::setBusy(bool busy)
{
if(busy)
QApplication::setOverrideCursor(QCursor(Qt::WaitCursor));
else
QApplication::restoreOverrideCursor();
abortShortcut->setEnabled(busy);
bool enabled = !busy;
ui->menuBar->setEnabled(enabled);
@@ -2183,6 +2185,14 @@ void MainWindow::MainWinUICallback::beginProcess(const QString& text)
mainWindow->progressBar->setHidden(false);
}
//------------------------------------------------------------------------------
void MainWindow::MainWinUICallback::updateProcess(const QString& text)
{
Q_ASSERT(mainWindow);
mainWindow->ui->statusBar->showMessage(text);
QCoreApplication::processEvents();
}
//------------------------------------------------------------------------------
void MainWindow::MainWinUICallback::endProcess()
{