Don't add same paths to searchresult list

This commit is contained in:
Albert S. 2018-09-02 20:38:21 +02:00
parent caafb114ca
commit 14e68ebc27

View File

@ -123,17 +123,23 @@ void MainWindow::handleSearchResults(const QVector<SearchResult> &results)
this->pdfSearchResults.clear(); this->pdfSearchResults.clear();
ui->treeResultsList->clear(); ui->treeResultsList->clear();
ui->lblSearchResults->setText("Results: " + QString::number(results.size())); ui->lblSearchResults->setText("Results: " + QString::number(results.size()));
QString lastpath = "";
for(const SearchResult &result : results) for(const SearchResult &result : results)
{
if(lastpath != result.path)
{ {
QFileInfo pathInfo(result.path); QFileInfo pathInfo(result.path);
QString fileName = pathInfo.fileName(); QString fileName = pathInfo.fileName();
QTreeWidgetItem *item = new QTreeWidgetItem(ui->treeResultsList); QTreeWidgetItem *item = new QTreeWidgetItem(ui->treeResultsList);
QDateTime dt = QDateTime::fromSecsSinceEpoch(result.mtime); QDateTime dt = QDateTime::fromSecsSinceEpoch(result.mtime);
item->setIcon(0, iconProvider.icon(pathInfo)); item->setIcon(0, iconProvider.icon(pathInfo));
item->setText(0, fileName); item->setText(0, fileName);
item->setText(1, result.path); item->setText(1, result.path);
item->setText(2, dt.toString(Qt::ISODate)); item->setText(2, dt.toString(Qt::ISODate));
// TODO: this must be user definied or done more intelligently }
// TODO: this must be user defined or done more intelligently
if(this->pdfSearchResults.size() < 300) if(this->pdfSearchResults.size() < 300)
{ {
if(result.path.endsWith(".pdf")) if(result.path.endsWith(".pdf"))
@ -141,6 +147,7 @@ void MainWindow::handleSearchResults(const QVector<SearchResult> &results)
this->pdfSearchResults.append(result); this->pdfSearchResults.append(result);
} }
} }
lastpath = result.path;
} }
ui->treeResultsList->resizeColumnToContents(0); ui->treeResultsList->resizeColumnToContents(0);
ui->treeResultsList->resizeColumnToContents(1); ui->treeResultsList->resizeColumnToContents(1);