DirectoryFilter: Reuse SubDirFileContainer

Change-Id: I74cdf48927e151674e3730b51c1a6c0249cb7966
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
This commit is contained in:
Jarek Kobus
2023-05-24 16:40:38 +02:00
parent 98bba063b6
commit 7e5f7a0e3f

View File

@@ -50,21 +50,21 @@ static void refresh(QPromise<FilePaths> &promise, const FilePaths &directories,
const QStringList &filters, const QStringList &exclusionFilters, const QStringList &filters, const QStringList &exclusionFilters,
const QString &displayName) const QString &displayName)
{ {
SubDirFileIterator subDirIterator(directories, filters, exclusionFilters); SubDirFileContainer fileContainer(directories, filters, exclusionFilters);
promise.setProgressRange(0, subDirIterator.maxProgress()); promise.setProgressRange(0, fileContainer.progressMaximum());
FilePaths files; FilePaths files;
const auto end = subDirIterator.end(); const auto end = fileContainer.end();
for (auto it = subDirIterator.begin(); it != end; ++it) { for (auto it = fileContainer.begin(); it != end; ++it) {
if (promise.isCanceled()) { if (promise.isCanceled()) {
promise.setProgressValueAndText(subDirIterator.currentProgress(), promise.setProgressValueAndText(it.progressValue(),
Tr::tr("%1 filter update: canceled").arg(displayName)); Tr::tr("%1 filter update: canceled").arg(displayName));
return; return;
} }
files << (*it).filePath; files << it->filePath;
promise.setProgressValueAndText(subDirIterator.currentProgress(), promise.setProgressValueAndText(it.progressValue(),
Tr::tr("%1 filter update: %n files", nullptr, files.size()).arg(displayName)); Tr::tr("%1 filter update: %n files", nullptr, files.size()).arg(displayName));
} }
promise.setProgressValue(subDirIterator.maxProgress()); promise.setProgressValue(fileContainer.progressMaximum());
promise.addResult(files); promise.addResult(files);
} }