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:
@@ -89,7 +89,8 @@ PDFViewerMainWindow::PDFViewerMainWindow(QWidget* parent) :
|
||||
m_isLoadingUI(false),
|
||||
m_progress(new pdf::PDFProgress(this)),
|
||||
m_progressTaskbarIndicator(new PDFWinTaskBarProgress(this)),
|
||||
m_progressDialog(nullptr),
|
||||
m_progressBarOnStatusBar(nullptr),
|
||||
m_progressBarLeftLabelOnStatusBar(nullptr),
|
||||
m_isChangingProgressStep(false)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
@@ -100,6 +101,14 @@ PDFViewerMainWindow::PDFViewerMainWindow(QWidget* parent) :
|
||||
adjustToolbar(ui->mainToolBar);
|
||||
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
|
||||
m_actionManager->setAction(PDFActionManager::Open, ui->actionOpen);
|
||||
m_actionManager->setAction(PDFActionManager::Close, ui->actionClose);
|
||||
@@ -353,13 +362,12 @@ void PDFViewerMainWindow::onPageZoomSpinboxEditingFinished()
|
||||
|
||||
void PDFViewerMainWindow::onProgressStarted(pdf::ProgressStartupInfo info)
|
||||
{
|
||||
Q_ASSERT(!m_progressDialog);
|
||||
if (info.showDialog)
|
||||
{
|
||||
m_progressDialog = new QProgressDialog(info.text, QString(), 0, 100, this);
|
||||
m_progressDialog->setWindowModality(Qt::WindowModal);
|
||||
m_progressDialog->setCancelButton(nullptr);
|
||||
}
|
||||
m_progressBarLeftLabelOnStatusBar->setText(info.text);
|
||||
m_progressBarLeftLabelOnStatusBar->setVisible(!info.text.isEmpty());
|
||||
|
||||
m_progressBarOnStatusBar->setRange(0, 100);
|
||||
m_progressBarOnStatusBar->reset();
|
||||
m_progressBarOnStatusBar->show();
|
||||
|
||||
m_progressTaskbarIndicator->setRange(0, 100);
|
||||
m_progressTaskbarIndicator->reset();
|
||||
@@ -377,24 +385,14 @@ void PDFViewerMainWindow::onProgressStep(int percentage)
|
||||
}
|
||||
|
||||
pdf::PDFTemporaryValueChange guard(&m_isChangingProgressStep, true);
|
||||
|
||||
if (m_progressDialog)
|
||||
{
|
||||
m_progressDialog->setValue(percentage);
|
||||
}
|
||||
|
||||
m_progressBarOnStatusBar->setValue(percentage);
|
||||
m_progressTaskbarIndicator->setValue(percentage);
|
||||
}
|
||||
|
||||
void PDFViewerMainWindow::onProgressFinished()
|
||||
{
|
||||
if (m_progressDialog)
|
||||
{
|
||||
m_progressDialog->hide();
|
||||
m_progressDialog->deleteLater();
|
||||
m_progressDialog = nullptr;
|
||||
}
|
||||
|
||||
m_progressBarLeftLabelOnStatusBar->hide();
|
||||
m_progressBarOnStatusBar->hide();
|
||||
m_progressTaskbarIndicator->hide();
|
||||
|
||||
m_programController->setIsBusy(false);
|
||||
|
@@ -41,7 +41,8 @@
|
||||
#include <QTreeView>
|
||||
#include <QMainWindow>
|
||||
#include <QFutureWatcher>
|
||||
#include <QProgressDialog>
|
||||
#include <QLabel>
|
||||
#include <QProgressBar>
|
||||
|
||||
class QLabel;
|
||||
class QSpinBox;
|
||||
@@ -120,7 +121,8 @@ private:
|
||||
pdf::PDFProgress* m_progress;
|
||||
PDFWinTaskBarProgress* m_progressTaskbarIndicator;
|
||||
|
||||
QProgressDialog* m_progressDialog;
|
||||
QProgressBar* m_progressBarOnStatusBar;
|
||||
QLabel* m_progressBarLeftLabelOnStatusBar;
|
||||
bool m_isChangingProgressStep;
|
||||
};
|
||||
|
||||
|
@@ -88,7 +88,8 @@ PDFViewerMainWindowLite::PDFViewerMainWindowLite(QWidget* parent) :
|
||||
m_isLoadingUI(false),
|
||||
m_progress(new pdf::PDFProgress(this)),
|
||||
m_progressTaskbarIndicator(new PDFWinTaskBarProgress(this)),
|
||||
m_progressDialog(nullptr),
|
||||
m_progressBarOnStatusBar(nullptr),
|
||||
m_progressBarLeftLabelOnStatusBar(nullptr),
|
||||
m_isChangingProgressStep(false)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
@@ -99,6 +100,14 @@ PDFViewerMainWindowLite::PDFViewerMainWindowLite(QWidget* parent) :
|
||||
adjustToolbar(ui->mainToolBar);
|
||||
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
|
||||
m_actionManager->setAction(PDFActionManager::Open, ui->actionOpen);
|
||||
m_actionManager->setAction(PDFActionManager::Close, ui->actionClose);
|
||||
@@ -270,13 +279,12 @@ void PDFViewerMainWindowLite::onPageZoomSpinboxEditingFinished()
|
||||
|
||||
void PDFViewerMainWindowLite::onProgressStarted(pdf::ProgressStartupInfo info)
|
||||
{
|
||||
Q_ASSERT(!m_progressDialog);
|
||||
if (info.showDialog)
|
||||
{
|
||||
m_progressDialog = new QProgressDialog(info.text, QString(), 0, 100, this);
|
||||
m_progressDialog->setWindowModality(Qt::WindowModal);
|
||||
m_progressDialog->setCancelButton(nullptr);
|
||||
}
|
||||
m_progressBarLeftLabelOnStatusBar->setText(info.text);
|
||||
m_progressBarLeftLabelOnStatusBar->setVisible(!info.text.isEmpty());
|
||||
|
||||
m_progressBarOnStatusBar->setRange(0, 100);
|
||||
m_progressBarOnStatusBar->reset();
|
||||
m_progressBarOnStatusBar->show();
|
||||
|
||||
m_progressTaskbarIndicator->setRange(0, 100);
|
||||
m_progressTaskbarIndicator->reset();
|
||||
@@ -294,24 +302,14 @@ void PDFViewerMainWindowLite::onProgressStep(int percentage)
|
||||
}
|
||||
|
||||
pdf::PDFTemporaryValueChange guard(&m_isChangingProgressStep, true);
|
||||
|
||||
if (m_progressDialog)
|
||||
{
|
||||
m_progressDialog->setValue(percentage);
|
||||
}
|
||||
|
||||
m_progressBarOnStatusBar->setValue(percentage);
|
||||
m_progressTaskbarIndicator->setValue(percentage);
|
||||
}
|
||||
|
||||
void PDFViewerMainWindowLite::onProgressFinished()
|
||||
{
|
||||
if (m_progressDialog)
|
||||
{
|
||||
m_progressDialog->hide();
|
||||
m_progressDialog->deleteLater();
|
||||
m_progressDialog = nullptr;
|
||||
}
|
||||
|
||||
m_progressBarLeftLabelOnStatusBar->hide();
|
||||
m_progressBarOnStatusBar->hide();
|
||||
m_progressTaskbarIndicator->hide();
|
||||
|
||||
m_programController->setIsBusy(false);
|
||||
|
@@ -40,7 +40,8 @@
|
||||
#include <QTreeView>
|
||||
#include <QMainWindow>
|
||||
#include <QFutureWatcher>
|
||||
#include <QProgressDialog>
|
||||
#include <QProgressBar>
|
||||
#include <QLabel>
|
||||
|
||||
class QLabel;
|
||||
class QSpinBox;
|
||||
@@ -115,7 +116,8 @@ private:
|
||||
pdf::PDFProgress* m_progress;
|
||||
PDFWinTaskBarProgress* m_progressTaskbarIndicator;
|
||||
|
||||
QProgressDialog* m_progressDialog;
|
||||
QProgressBar* m_progressBarOnStatusBar;
|
||||
QLabel* m_progressBarLeftLabelOnStatusBar;
|
||||
bool m_isChangingProgressStep;
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user