begin status bar and progress bar for pdfpreviews

This commit is contained in:
Albert S. 2018-08-31 20:40:07 +02:00
parent 703d426979
commit 40b804e8d8
3 changed files with 34 additions and 5 deletions

View File

@ -26,6 +26,9 @@ MainWindow::MainWindow(QWidget *parent) :
ui->treeResultsList->setContextMenuPolicy(Qt::ContextMenuPolicy::CustomContextMenu); ui->treeResultsList->setContextMenuPolicy(Qt::ContextMenuPolicy::CustomContextMenu);
ui->tabWidget->setCurrentIndex(0); ui->tabWidget->setCurrentIndex(0);
ui->statusBar->addWidget(ui->lblSearchResults);
ui->statusBar->addWidget(ui->pdfProcessBar);
ui->pdfProcessBar->hide();
} }
void MainWindow::connectSignals() void MainWindow::connectSignals()
@ -51,10 +54,18 @@ bool MainWindow::pdfTabActive()
void MainWindow::tabChanged() void MainWindow::tabChanged()
{ {
if(pdfTabActive() && pdfDirty) if(pdfTabActive())
{
if(pdfDirty)
{ {
makePdfPreview(); makePdfPreview();
} }
ui->pdfProcessBar->show();
}
else
{
ui->pdfProcessBar->hide();
}
} }
void MainWindow::pdfPreviewReceived(PdfPreview preview) void MainWindow::pdfPreviewReceived(PdfPreview preview)
@ -62,6 +73,7 @@ void MainWindow::pdfPreviewReceived(PdfPreview preview)
ClickLabel *label = new ClickLabel(); ClickLabel *label = new ClickLabel();
label->setPixmap(QPixmap::fromImage(preview.previewImage)); label->setPixmap(QPixmap::fromImage(preview.previewImage));
ui->scrollAreaWidgetContents->layout()->addWidget(label); ui->scrollAreaWidgetContents->layout()->addWidget(label);
ui->pdfProcessBar->setValue(++processedPdfPreviews);
connect(label, &ClickLabel::clicked, [=]() { connect(label, &ClickLabel::clicked, [=]() {
QSettings settings; QSettings settings;
QString command = settings.value("pdfviewer").toString(); QString command = settings.value("pdfviewer").toString();
@ -112,7 +124,7 @@ 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()));
for(const SearchResult &result : results) for(const SearchResult &result : results)
{ {
QFileInfo pathInfo(result.path); QFileInfo pathInfo(result.path);
@ -148,6 +160,8 @@ void MainWindow::makePdfPreview()
qDeleteAll(ui->scrollAreaWidgetContents->children()); qDeleteAll(ui->scrollAreaWidgetContents->children());
ui->scrollAreaWidgetContents->setLayout(new QHBoxLayout()); ui->scrollAreaWidgetContents->setLayout(new QHBoxLayout());
ui->pdfProcessBar->setMaximum(this->pdfSearchResults.size());
processedPdfPreviews = 0;
emit startPdfPreviewGeneration(this->pdfSearchResults, 0.75); emit startPdfPreviewGeneration(this->pdfSearchResults, 0.75);
} }

View File

@ -36,6 +36,7 @@ private:
void connectSignals(); void connectSignals();
void makePdfPreview(); void makePdfPreview();
bool pdfTabActive(); bool pdfTabActive();
unsigned int processedPdfPreviews;
private slots: private slots:
void lineEditReturnPressed(); void lineEditReturnPressed();
void lineEditTextChanged(); void lineEditTextChanged();

View File

@ -82,7 +82,7 @@
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>1179</width> <width>1179</width>
<height>420</height> <height>370</height>
</rect> </rect>
</property> </property>
<layout class="QHBoxLayout" name="horizontalLayout"/> <layout class="QHBoxLayout" name="horizontalLayout"/>
@ -154,6 +154,20 @@
</widget> </widget>
</widget> </widget>
</item> </item>
<item>
<widget class="QLabel" name="lblSearchResults">
<property name="text">
<string>TextLabel</string>
</property>
</widget>
</item>
<item>
<widget class="QProgressBar" name="pdfProcessBar">
<property name="value">
<number>24</number>
</property>
</widget>
</item>
</layout> </layout>
</widget> </widget>
<widget class="QMenuBar" name="menuBar"> <widget class="QMenuBar" name="menuBar">