rpcsx/rpcs3/rpcs3qt/progress_dialog.h

26 lines
699 B
C
Raw Normal View History

#pragma once
2017-11-25 14:01:35 +01:00
#include <QProgressDialog>
#ifdef _WIN32
#include <QWinTaskbarProgress>
#include <QWinTaskbarButton>
#endif
class progress_dialog : public QProgressDialog
{
public:
progress_dialog(const QString &windowTitle, const QString &labelText, const QString &cancelButtonText, int minimum, int maximum, bool delete_on_close, QWidget *parent = Q_NULLPTR, Qt::WindowFlags flags = Qt::WindowFlags());
2017-11-25 14:01:35 +01:00
~progress_dialog();
void SetValue(int progress);
void SignalFailure();
2017-11-25 14:01:35 +01:00
private:
#ifdef _WIN32
std::unique_ptr<QWinTaskbarButton> m_tb_button = nullptr;
QWinTaskbarProgress* m_tb_progress = nullptr;
#elif HAVE_QTDBUS
void UpdateProgress(int progress, bool disable = false);
#endif
};