mirror of
				https://github.com/JakubMelka/PDF4QT.git
				synced 2025-06-05 21:59:17 +02:00 
			
		
		
		
	Issue #119: Improve search bar 2 (the revenge)
This commit is contained in:
		| @@ -533,7 +533,7 @@ void PDFAsynchronousTextLayoutCompiler::makeTextLayout() | |||||||
|     m_isRunning = true; |     m_isRunning = true; | ||||||
|  |  | ||||||
|     ProgressStartupInfo info; |     ProgressStartupInfo info; | ||||||
|     info.showDialog = true; |     info.showDialog = false; | ||||||
|     info.text = tr("Indexing document contents..."); |     info.text = tr("Indexing document contents..."); | ||||||
|  |  | ||||||
|     m_proxy->getFontCache()->setCacheShrinkEnabled(this, false); |     m_proxy->getFontCache()->setCacheShrinkEnabled(this, false); | ||||||
|   | |||||||
| @@ -35,6 +35,7 @@ | |||||||
| #include <QApplication> | #include <QApplication> | ||||||
| #include <QStylePainter> | #include <QStylePainter> | ||||||
| #include <QStyleOptionTitleBar> | #include <QStyleOptionTitleBar> | ||||||
|  |  | ||||||
| namespace pdf | namespace pdf | ||||||
| { | { | ||||||
|  |  | ||||||
| @@ -222,27 +223,6 @@ void PDFWidgetTool::removeTool() | |||||||
|     m_toolStack.pop_back(); |     m_toolStack.pop_back(); | ||||||
| } | } | ||||||
|  |  | ||||||
| class PDFFindTextToolDialog : public QDialog |  | ||||||
| { |  | ||||||
| public: |  | ||||||
|     PDFFindTextToolDialog(PDFDrawWidgetProxy* proxy, QWidget* parent, Qt::WindowFlags f) : |  | ||||||
|         QDialog(parent, f), |  | ||||||
|         m_proxy(proxy) |  | ||||||
|     { |  | ||||||
|  |  | ||||||
|     } |  | ||||||
|  |  | ||||||
|     virtual ~PDFFindTextToolDialog() override = default; |  | ||||||
|  |  | ||||||
|     virtual bool event(QEvent* event) override; |  | ||||||
|  |  | ||||||
| protected: |  | ||||||
|     virtual void paintEvent(QPaintEvent* event) override; |  | ||||||
|  |  | ||||||
| private: |  | ||||||
|     PDFDrawWidgetProxy* m_proxy; |  | ||||||
| }; |  | ||||||
|  |  | ||||||
| void PDFFindTextToolDialog::paintEvent(QPaintEvent* event) | void PDFFindTextToolDialog::paintEvent(QPaintEvent* event) | ||||||
| { | { | ||||||
|     QDialog::paintEvent(event); |     QDialog::paintEvent(event); | ||||||
| @@ -269,6 +249,13 @@ void PDFFindTextToolDialog::paintEvent(QPaintEvent* event) | |||||||
|     painter.drawPrimitive(QStyle::PE_Frame, frameOption); |     painter.drawPrimitive(QStyle::PE_Frame, frameOption); | ||||||
| } | } | ||||||
|  |  | ||||||
|  | PDFFindTextToolDialog::PDFFindTextToolDialog(PDFDrawWidgetProxy* proxy, QWidget* parent, Qt::WindowFlags f) : | ||||||
|  |     QDialog(parent, f), | ||||||
|  |     m_proxy(proxy) | ||||||
|  | { | ||||||
|  |  | ||||||
|  | } | ||||||
|  |  | ||||||
| bool PDFFindTextToolDialog::event(QEvent* event) | bool PDFFindTextToolDialog::event(QEvent* event) | ||||||
| { | { | ||||||
|     switch (event->type()) |     switch (event->type()) | ||||||
| @@ -294,6 +281,37 @@ bool PDFFindTextToolDialog::event(QEvent* event) | |||||||
|             break; |             break; | ||||||
|         } |         } | ||||||
|  |  | ||||||
|  |         case QEvent::KeyPress: | ||||||
|  |         { | ||||||
|  |             QKeyEvent* keyEvent = dynamic_cast<QKeyEvent*>(event); | ||||||
|  |  | ||||||
|  |             if (!keyEvent->modifiers() || ((keyEvent->modifiers() & Qt::KeypadModifier) && keyEvent->key() == Qt::Key_Enter)) | ||||||
|  |             { | ||||||
|  |                 switch (keyEvent->key()) | ||||||
|  |                 { | ||||||
|  |                     case Qt::Key_Return: | ||||||
|  |                     case Qt::Key_Enter: | ||||||
|  |                     case Qt::Key_Home: | ||||||
|  |                     { | ||||||
|  |                         keyEvent->accept(); | ||||||
|  |                         Q_EMIT goToFirstResult(); | ||||||
|  |                         return true; | ||||||
|  |                     } | ||||||
|  |  | ||||||
|  |                     case Qt::Key_End: | ||||||
|  |                     { | ||||||
|  |                         keyEvent->accept(); | ||||||
|  |                         Q_EMIT goToLastResult(); | ||||||
|  |                         return true; | ||||||
|  |                     } | ||||||
|  |  | ||||||
|  |                     default: | ||||||
|  |                         break; | ||||||
|  |                 } | ||||||
|  |             } | ||||||
|  |             break; | ||||||
|  |         } | ||||||
|  |  | ||||||
|         default: |         default: | ||||||
|             break; |             break; | ||||||
|     } |     } | ||||||
| @@ -399,7 +417,7 @@ void PDFFindTextTool::setActiveImpl(bool active) | |||||||
|         m_wholeWordsCheckBox->setChecked(m_savedIsWholeWords); |         m_wholeWordsCheckBox->setChecked(m_savedIsWholeWords); | ||||||
|  |  | ||||||
|         m_previousButton->setDefault(false); |         m_previousButton->setDefault(false); | ||||||
|         m_nextButton->setDefault(false); |         m_nextButton->setDefault(true); | ||||||
|  |  | ||||||
|         m_previousButton->setShortcut(m_prevAction->shortcut()); |         m_previousButton->setShortcut(m_prevAction->shortcut()); | ||||||
|         m_nextButton->setShortcut(m_nextAction->shortcut()); |         m_nextButton->setShortcut(m_nextAction->shortcut()); | ||||||
| @@ -409,6 +427,8 @@ void PDFFindTextTool::setActiveImpl(bool active) | |||||||
|         connect(m_findTextEdit, &QLineEdit::editingFinished, this, &PDFFindTextTool::onSearchText); |         connect(m_findTextEdit, &QLineEdit::editingFinished, this, &PDFFindTextTool::onSearchText); | ||||||
|         connect(m_caseSensitiveCheckBox, &QCheckBox::clicked, this, &PDFFindTextTool::onSearchText); |         connect(m_caseSensitiveCheckBox, &QCheckBox::clicked, this, &PDFFindTextTool::onSearchText); | ||||||
|         connect(m_wholeWordsCheckBox, &QCheckBox::clicked, this, &PDFFindTextTool::onSearchText); |         connect(m_wholeWordsCheckBox, &QCheckBox::clicked, this, &PDFFindTextTool::onSearchText); | ||||||
|  |         connect(m_dialog, &PDFFindTextToolDialog::goToFirstResult, this, &PDFFindTextTool::onActionFirst); | ||||||
|  |         connect(m_dialog, &PDFFindTextToolDialog::goToLastResult, this, &PDFFindTextTool::onActionLast); | ||||||
|  |  | ||||||
|         QMargins margins = layout->contentsMargins(); |         QMargins margins = layout->contentsMargins(); | ||||||
|         margins.setTop(margins.top() + m_dialog->style()->pixelMetric(QStyle::PM_TitleBarHeight)); |         margins.setTop(margins.top() + m_dialog->style()->pixelMetric(QStyle::PM_TitleBarHeight)); | ||||||
| @@ -487,22 +507,27 @@ void PDFFindTextTool::onSearchText() | |||||||
|     } |     } | ||||||
| } | } | ||||||
|  |  | ||||||
|  | void PDFFindTextTool::onActionFirst() | ||||||
|  | { | ||||||
|  |     if (!m_findResults.empty()) | ||||||
|  |     { | ||||||
|  |         setCurrentResultIndex(0); | ||||||
|  |     } | ||||||
|  | } | ||||||
|  |  | ||||||
|  | void PDFFindTextTool::onActionLast() | ||||||
|  | { | ||||||
|  |     if (!m_findResults.empty()) | ||||||
|  |     { | ||||||
|  |         setCurrentResultIndex(m_findResults.size() - 1); | ||||||
|  |     } | ||||||
|  | } | ||||||
|  |  | ||||||
| void PDFFindTextTool::onActionPrevious() | void PDFFindTextTool::onActionPrevious() | ||||||
| { | { | ||||||
|     if (!m_findResults.empty()) |     if (!m_findResults.empty()) | ||||||
|     { |     { | ||||||
|         if (m_selectedResultIndex == 0) |         setCurrentResultIndex(m_selectedResultIndex == 0 ? m_findResults.size() - 1 : m_selectedResultIndex - 1); | ||||||
|         { |  | ||||||
|             m_selectedResultIndex = m_findResults.size() - 1; |  | ||||||
|         } |  | ||||||
|         else |  | ||||||
|         { |  | ||||||
|             --m_selectedResultIndex; |  | ||||||
|         } |  | ||||||
|         m_textSelection.dirty(); |  | ||||||
|         getProxy()->repaintNeeded(); |  | ||||||
|         goToCurrentResult(); |  | ||||||
|         updateTitle(); |  | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  |  | ||||||
| @@ -510,7 +535,15 @@ void PDFFindTextTool::onActionNext() | |||||||
| { | { | ||||||
|     if (!m_findResults.empty()) |     if (!m_findResults.empty()) | ||||||
|     { |     { | ||||||
|         m_selectedResultIndex = (m_selectedResultIndex + 1) % m_findResults.size(); |         setCurrentResultIndex((m_selectedResultIndex + 1) % m_findResults.size()); | ||||||
|  |     } | ||||||
|  | } | ||||||
|  |  | ||||||
|  | void PDFFindTextTool::setCurrentResultIndex(size_t index) | ||||||
|  | { | ||||||
|  |     if (!m_findResults.empty()) | ||||||
|  |     { | ||||||
|  |         m_selectedResultIndex = index; | ||||||
|         m_textSelection.dirty(); |         m_textSelection.dirty(); | ||||||
|         getProxy()->repaintNeeded(); |         getProxy()->repaintNeeded(); | ||||||
|         goToCurrentResult(); |         goToCurrentResult(); | ||||||
|   | |||||||
| @@ -145,6 +145,26 @@ private: | |||||||
|     std::optional<QCursor> m_cursor; |     std::optional<QCursor> m_cursor; | ||||||
| }; | }; | ||||||
|  |  | ||||||
|  | class PDFFindTextToolDialog : public QDialog | ||||||
|  | { | ||||||
|  |     Q_OBJECT | ||||||
|  | public: | ||||||
|  |     PDFFindTextToolDialog(PDFDrawWidgetProxy* proxy, QWidget* parent, Qt::WindowFlags f); | ||||||
|  |  | ||||||
|  |     virtual ~PDFFindTextToolDialog() override = default; | ||||||
|  |     virtual bool event(QEvent* event) override; | ||||||
|  |  | ||||||
|  | signals: | ||||||
|  |     void goToFirstResult(); | ||||||
|  |     void goToLastResult(); | ||||||
|  |  | ||||||
|  | protected: | ||||||
|  |     virtual void paintEvent(QPaintEvent* event) override; | ||||||
|  |  | ||||||
|  | private: | ||||||
|  |     PDFDrawWidgetProxy* m_proxy; | ||||||
|  | }; | ||||||
|  |  | ||||||
| /// Simple tool for find text in PDF document. It is much simpler than advanced | /// Simple tool for find text in PDF document. It is much simpler than advanced | ||||||
| /// search and can't search using regular expressions. | /// search and can't search using regular expressions. | ||||||
| class PDFFindTextTool : public PDFWidgetTool | class PDFFindTextTool : public PDFWidgetTool | ||||||
| @@ -176,10 +196,13 @@ protected: | |||||||
|  |  | ||||||
| private: | private: | ||||||
|     void onSearchText(); |     void onSearchText(); | ||||||
|  |     void onActionFirst(); | ||||||
|  |     void onActionLast(); | ||||||
|     void onActionPrevious(); |     void onActionPrevious(); | ||||||
|     void onActionNext(); |     void onActionNext(); | ||||||
|     void onDialogRejected(); |     void onDialogRejected(); | ||||||
|  |  | ||||||
|  |     void setCurrentResultIndex(size_t index); | ||||||
|     void performSearch(); |     void performSearch(); | ||||||
|     void updateResultsUI(); |     void updateResultsUI(); | ||||||
|     void updateTitle(); |     void updateTitle(); | ||||||
| @@ -190,7 +213,7 @@ private: | |||||||
|     QAction* m_nextAction; |     QAction* m_nextAction; | ||||||
|     QWidget* m_parentDialog; |     QWidget* m_parentDialog; | ||||||
|  |  | ||||||
|     QDialog* m_dialog; |     PDFFindTextToolDialog* m_dialog; | ||||||
|     QCheckBox* m_caseSensitiveCheckBox; |     QCheckBox* m_caseSensitiveCheckBox; | ||||||
|     QCheckBox* m_wholeWordsCheckBox; |     QCheckBox* m_wholeWordsCheckBox; | ||||||
|     QLineEdit* m_findTextEdit; |     QLineEdit* m_findTextEdit; | ||||||
|   | |||||||
| @@ -89,7 +89,8 @@ PDFViewerMainWindow::PDFViewerMainWindow(QWidget* parent) : | |||||||
|     m_isLoadingUI(false), |     m_isLoadingUI(false), | ||||||
|     m_progress(new pdf::PDFProgress(this)), |     m_progress(new pdf::PDFProgress(this)), | ||||||
|     m_progressTaskbarIndicator(new PDFWinTaskBarProgress(this)), |     m_progressTaskbarIndicator(new PDFWinTaskBarProgress(this)), | ||||||
|     m_progressDialog(nullptr), |     m_progressBarOnStatusBar(nullptr), | ||||||
|  |     m_progressBarLeftLabelOnStatusBar(nullptr), | ||||||
|     m_isChangingProgressStep(false) |     m_isChangingProgressStep(false) | ||||||
| { | { | ||||||
|     ui->setupUi(this); |     ui->setupUi(this); | ||||||
| @@ -100,6 +101,14 @@ PDFViewerMainWindow::PDFViewerMainWindow(QWidget* parent) : | |||||||
|     adjustToolbar(ui->mainToolBar); |     adjustToolbar(ui->mainToolBar); | ||||||
|     ui->mainToolBar->setWindowTitle(tr("Standard")); |     ui->mainToolBar->setWindowTitle(tr("Standard")); | ||||||
|  |  | ||||||
|  |     // Initialize status bar | ||||||
|  |     m_progressBarOnStatusBar = new QProgressBar(this); | ||||||
|  |     m_progressBarOnStatusBar->setHidden(true); | ||||||
|  |     m_progressBarLeftLabelOnStatusBar = new QLabel(this); | ||||||
|  |     m_progressBarLeftLabelOnStatusBar->setHidden(true); | ||||||
|  |     statusBar()->addPermanentWidget(m_progressBarLeftLabelOnStatusBar); | ||||||
|  |     statusBar()->addPermanentWidget(m_progressBarOnStatusBar); | ||||||
|  |  | ||||||
|     // Initialize actions |     // Initialize actions | ||||||
|     m_actionManager->setAction(PDFActionManager::Open, ui->actionOpen); |     m_actionManager->setAction(PDFActionManager::Open, ui->actionOpen); | ||||||
|     m_actionManager->setAction(PDFActionManager::Close, ui->actionClose); |     m_actionManager->setAction(PDFActionManager::Close, ui->actionClose); | ||||||
| @@ -353,13 +362,12 @@ void PDFViewerMainWindow::onPageZoomSpinboxEditingFinished() | |||||||
|  |  | ||||||
| void PDFViewerMainWindow::onProgressStarted(pdf::ProgressStartupInfo info) | void PDFViewerMainWindow::onProgressStarted(pdf::ProgressStartupInfo info) | ||||||
| { | { | ||||||
|     Q_ASSERT(!m_progressDialog); |     m_progressBarLeftLabelOnStatusBar->setText(info.text); | ||||||
|     if (info.showDialog) |     m_progressBarLeftLabelOnStatusBar->setVisible(!info.text.isEmpty()); | ||||||
|     { |  | ||||||
|         m_progressDialog = new QProgressDialog(info.text, QString(), 0, 100, this); |     m_progressBarOnStatusBar->setRange(0, 100); | ||||||
|         m_progressDialog->setWindowModality(Qt::WindowModal); |     m_progressBarOnStatusBar->reset(); | ||||||
|         m_progressDialog->setCancelButton(nullptr); |     m_progressBarOnStatusBar->show(); | ||||||
|     } |  | ||||||
|  |  | ||||||
|     m_progressTaskbarIndicator->setRange(0, 100); |     m_progressTaskbarIndicator->setRange(0, 100); | ||||||
|     m_progressTaskbarIndicator->reset(); |     m_progressTaskbarIndicator->reset(); | ||||||
| @@ -377,24 +385,14 @@ void PDFViewerMainWindow::onProgressStep(int percentage) | |||||||
|     } |     } | ||||||
|  |  | ||||||
|     pdf::PDFTemporaryValueChange guard(&m_isChangingProgressStep, true); |     pdf::PDFTemporaryValueChange guard(&m_isChangingProgressStep, true); | ||||||
|  |     m_progressBarOnStatusBar->setValue(percentage); | ||||||
|     if (m_progressDialog) |  | ||||||
|     { |  | ||||||
|         m_progressDialog->setValue(percentage); |  | ||||||
|     } |  | ||||||
|  |  | ||||||
|     m_progressTaskbarIndicator->setValue(percentage); |     m_progressTaskbarIndicator->setValue(percentage); | ||||||
| } | } | ||||||
|  |  | ||||||
| void PDFViewerMainWindow::onProgressFinished() | void PDFViewerMainWindow::onProgressFinished() | ||||||
| { | { | ||||||
|     if (m_progressDialog) |     m_progressBarLeftLabelOnStatusBar->hide(); | ||||||
|     { |     m_progressBarOnStatusBar->hide(); | ||||||
|         m_progressDialog->hide(); |  | ||||||
|         m_progressDialog->deleteLater(); |  | ||||||
|         m_progressDialog = nullptr; |  | ||||||
|     } |  | ||||||
|  |  | ||||||
|     m_progressTaskbarIndicator->hide(); |     m_progressTaskbarIndicator->hide(); | ||||||
|  |  | ||||||
|     m_programController->setIsBusy(false); |     m_programController->setIsBusy(false); | ||||||
|   | |||||||
| @@ -41,7 +41,8 @@ | |||||||
| #include <QTreeView> | #include <QTreeView> | ||||||
| #include <QMainWindow> | #include <QMainWindow> | ||||||
| #include <QFutureWatcher> | #include <QFutureWatcher> | ||||||
| #include <QProgressDialog> | #include <QLabel> | ||||||
|  | #include <QProgressBar> | ||||||
|  |  | ||||||
| class QLabel; | class QLabel; | ||||||
| class QSpinBox; | class QSpinBox; | ||||||
| @@ -120,7 +121,8 @@ private: | |||||||
|     pdf::PDFProgress* m_progress; |     pdf::PDFProgress* m_progress; | ||||||
|     PDFWinTaskBarProgress* m_progressTaskbarIndicator; |     PDFWinTaskBarProgress* m_progressTaskbarIndicator; | ||||||
|  |  | ||||||
|     QProgressDialog* m_progressDialog; |     QProgressBar* m_progressBarOnStatusBar; | ||||||
|  |     QLabel* m_progressBarLeftLabelOnStatusBar; | ||||||
|     bool m_isChangingProgressStep; |     bool m_isChangingProgressStep; | ||||||
| }; | }; | ||||||
|  |  | ||||||
|   | |||||||
| @@ -88,7 +88,8 @@ PDFViewerMainWindowLite::PDFViewerMainWindowLite(QWidget* parent) : | |||||||
|     m_isLoadingUI(false), |     m_isLoadingUI(false), | ||||||
|     m_progress(new pdf::PDFProgress(this)), |     m_progress(new pdf::PDFProgress(this)), | ||||||
|     m_progressTaskbarIndicator(new PDFWinTaskBarProgress(this)), |     m_progressTaskbarIndicator(new PDFWinTaskBarProgress(this)), | ||||||
|     m_progressDialog(nullptr), |     m_progressBarOnStatusBar(nullptr), | ||||||
|  |     m_progressBarLeftLabelOnStatusBar(nullptr), | ||||||
|     m_isChangingProgressStep(false) |     m_isChangingProgressStep(false) | ||||||
| { | { | ||||||
|     ui->setupUi(this); |     ui->setupUi(this); | ||||||
| @@ -99,6 +100,14 @@ PDFViewerMainWindowLite::PDFViewerMainWindowLite(QWidget* parent) : | |||||||
|     adjustToolbar(ui->mainToolBar); |     adjustToolbar(ui->mainToolBar); | ||||||
|     ui->mainToolBar->setWindowTitle(tr("Standard")); |     ui->mainToolBar->setWindowTitle(tr("Standard")); | ||||||
|  |  | ||||||
|  |     // Initialize status bar | ||||||
|  |     m_progressBarOnStatusBar = new QProgressBar(this); | ||||||
|  |     m_progressBarOnStatusBar->setHidden(true); | ||||||
|  |     m_progressBarLeftLabelOnStatusBar = new QLabel(this); | ||||||
|  |     m_progressBarLeftLabelOnStatusBar->setHidden(true); | ||||||
|  |     statusBar()->addPermanentWidget(m_progressBarLeftLabelOnStatusBar); | ||||||
|  |     statusBar()->addPermanentWidget(m_progressBarOnStatusBar); | ||||||
|  |  | ||||||
|     // Initialize actions |     // Initialize actions | ||||||
|     m_actionManager->setAction(PDFActionManager::Open, ui->actionOpen); |     m_actionManager->setAction(PDFActionManager::Open, ui->actionOpen); | ||||||
|     m_actionManager->setAction(PDFActionManager::Close, ui->actionClose); |     m_actionManager->setAction(PDFActionManager::Close, ui->actionClose); | ||||||
| @@ -270,13 +279,12 @@ void PDFViewerMainWindowLite::onPageZoomSpinboxEditingFinished() | |||||||
|  |  | ||||||
| void PDFViewerMainWindowLite::onProgressStarted(pdf::ProgressStartupInfo info) | void PDFViewerMainWindowLite::onProgressStarted(pdf::ProgressStartupInfo info) | ||||||
| { | { | ||||||
|     Q_ASSERT(!m_progressDialog); |     m_progressBarLeftLabelOnStatusBar->setText(info.text); | ||||||
|     if (info.showDialog) |     m_progressBarLeftLabelOnStatusBar->setVisible(!info.text.isEmpty()); | ||||||
|     { |  | ||||||
|         m_progressDialog = new QProgressDialog(info.text, QString(), 0, 100, this); |     m_progressBarOnStatusBar->setRange(0, 100); | ||||||
|         m_progressDialog->setWindowModality(Qt::WindowModal); |     m_progressBarOnStatusBar->reset(); | ||||||
|         m_progressDialog->setCancelButton(nullptr); |     m_progressBarOnStatusBar->show(); | ||||||
|     } |  | ||||||
|  |  | ||||||
|     m_progressTaskbarIndicator->setRange(0, 100); |     m_progressTaskbarIndicator->setRange(0, 100); | ||||||
|     m_progressTaskbarIndicator->reset(); |     m_progressTaskbarIndicator->reset(); | ||||||
| @@ -294,24 +302,14 @@ void PDFViewerMainWindowLite::onProgressStep(int percentage) | |||||||
|     } |     } | ||||||
|  |  | ||||||
|     pdf::PDFTemporaryValueChange guard(&m_isChangingProgressStep, true); |     pdf::PDFTemporaryValueChange guard(&m_isChangingProgressStep, true); | ||||||
|  |     m_progressBarOnStatusBar->setValue(percentage); | ||||||
|     if (m_progressDialog) |  | ||||||
|     { |  | ||||||
|         m_progressDialog->setValue(percentage); |  | ||||||
|     } |  | ||||||
|  |  | ||||||
|     m_progressTaskbarIndicator->setValue(percentage); |     m_progressTaskbarIndicator->setValue(percentage); | ||||||
| } | } | ||||||
|  |  | ||||||
| void PDFViewerMainWindowLite::onProgressFinished() | void PDFViewerMainWindowLite::onProgressFinished() | ||||||
| { | { | ||||||
|     if (m_progressDialog) |     m_progressBarLeftLabelOnStatusBar->hide(); | ||||||
|     { |     m_progressBarOnStatusBar->hide(); | ||||||
|         m_progressDialog->hide(); |  | ||||||
|         m_progressDialog->deleteLater(); |  | ||||||
|         m_progressDialog = nullptr; |  | ||||||
|     } |  | ||||||
|  |  | ||||||
|     m_progressTaskbarIndicator->hide(); |     m_progressTaskbarIndicator->hide(); | ||||||
|  |  | ||||||
|     m_programController->setIsBusy(false); |     m_programController->setIsBusy(false); | ||||||
|   | |||||||
| @@ -40,7 +40,8 @@ | |||||||
| #include <QTreeView> | #include <QTreeView> | ||||||
| #include <QMainWindow> | #include <QMainWindow> | ||||||
| #include <QFutureWatcher> | #include <QFutureWatcher> | ||||||
| #include <QProgressDialog> | #include <QProgressBar> | ||||||
|  | #include <QLabel> | ||||||
|  |  | ||||||
| class QLabel; | class QLabel; | ||||||
| class QSpinBox; | class QSpinBox; | ||||||
| @@ -115,7 +116,8 @@ private: | |||||||
|     pdf::PDFProgress* m_progress; |     pdf::PDFProgress* m_progress; | ||||||
|     PDFWinTaskBarProgress* m_progressTaskbarIndicator; |     PDFWinTaskBarProgress* m_progressTaskbarIndicator; | ||||||
|  |  | ||||||
|     QProgressDialog* m_progressDialog; |     QProgressBar* m_progressBarOnStatusBar; | ||||||
|  |     QLabel* m_progressBarLeftLabelOnStatusBar; | ||||||
|     bool m_isChangingProgressStep; |     bool m_isChangingProgressStep; | ||||||
| }; | }; | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,4 +1,5 @@ | |||||||
| CURRENT: | CURRENT: | ||||||
|  |  - Issue #119: Improve search bar 2 (the revenge)  | ||||||
|  - Issue #118: Adding CMAKE options for minimal builds |  - Issue #118: Adding CMAKE options for minimal builds | ||||||
|  - Issue #116: Improve search bar (rembember searched text, allow scroll and zoom) |  - Issue #116: Improve search bar (rembember searched text, allow scroll and zoom) | ||||||
|  - Issue #115: Redesign of sidebar widget, new icons |  - Issue #115: Redesign of sidebar widget, new icons | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user