ui: Showing indexing progress in windows task bar
* implemented showing indexing progress in windows taskbar button * renamed TaskShowStatusDialog * added "Qt5WinExtras.dll" for windows builds
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
#ifndef QT_FILE_DIALOG
|
||||
#define QT_FILE_DIALOG
|
||||
#ifndef QT_FILE_DIALOG_H
|
||||
#define QT_FILE_DIALOG_H
|
||||
|
||||
class QString;
|
||||
class QStringList;
|
||||
@@ -20,4 +20,4 @@ private:
|
||||
static QString getDir(QString dir);
|
||||
};
|
||||
|
||||
#endif // QT_FILE_DIALOG
|
||||
#endif // QT_FILE_DIALOG_H
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
#include "qt/utility/QtWindowsTaskbarButton.h"
|
||||
|
||||
#ifdef _WIN32
|
||||
#include <QWinTaskbarButton>
|
||||
#include <QWinTaskbarProgress>
|
||||
#endif
|
||||
|
||||
#include "qt/window/QtMainWindow.h"
|
||||
|
||||
QtWindowsTaskbarButton::QtWindowsTaskbarButton()
|
||||
#ifdef _WIN32
|
||||
: m_taskbarProgress(nullptr)
|
||||
#endif
|
||||
{
|
||||
}
|
||||
|
||||
void QtWindowsTaskbarButton::setWindow(QtMainWindow* mainWindow)
|
||||
{
|
||||
#ifdef _WIN32
|
||||
QWinTaskbarButton* taskbarButton = new QWinTaskbarButton(mainWindow);
|
||||
taskbarButton->setWindow(mainWindow->windowHandle());
|
||||
m_taskbarProgress = taskbarButton->progress();
|
||||
#endif
|
||||
}
|
||||
|
||||
void QtWindowsTaskbarButton::setProgress(float progress)
|
||||
{
|
||||
#ifdef _WIN32
|
||||
if (m_taskbarProgress != nullptr)
|
||||
{
|
||||
m_taskbarProgress->show();
|
||||
m_taskbarProgress->setValue(std::max(0, std::min<int>(100, 100 * progress)));
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void QtWindowsTaskbarButton::hideProgress()
|
||||
{
|
||||
#ifdef _WIN32
|
||||
if (m_taskbarProgress != nullptr)
|
||||
{
|
||||
m_taskbarProgress->hide();
|
||||
}
|
||||
#endif
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
#ifndef QT_WINDOWS_TASKBAR_BUTTON_H
|
||||
#define QT_WINDOWS_TASKBAR_BUTTON_H
|
||||
|
||||
class QWinTaskbarProgress;
|
||||
class QtMainWindow;
|
||||
|
||||
class QtWindowsTaskbarButton
|
||||
{
|
||||
public:
|
||||
QtWindowsTaskbarButton();
|
||||
void setWindow(QtMainWindow* mainWindow);
|
||||
|
||||
void setProgress(float progress);
|
||||
void hideProgress();
|
||||
|
||||
private:
|
||||
|
||||
#ifdef _WIN32
|
||||
QWinTaskbarProgress* m_taskbarProgress;
|
||||
#endif
|
||||
};
|
||||
|
||||
#endif // QT_WINDOWS_TASKBAR_BUTTON_H
|
||||
Reference in New Issue
Block a user