Qt: Fix progress dialog cancelling
This commit is contained in:
@ -16,16 +16,12 @@ QtModalProgressCallback::QtModalProgressCallback(QWidget* parent_widget, float s
|
||||
m_dialog.setModal(parent_widget != nullptr);
|
||||
m_dialog.setAutoClose(false);
|
||||
m_dialog.setAutoReset(false);
|
||||
connect(&m_dialog, &QProgressDialog::canceled, this, &QtModalProgressCallback::dialogCancelled);
|
||||
checkForDelayedShow();
|
||||
}
|
||||
|
||||
QtModalProgressCallback::~QtModalProgressCallback() = default;
|
||||
|
||||
bool QtModalProgressCallback::IsCancelled() const
|
||||
{
|
||||
return m_dialog.wasCanceled();
|
||||
}
|
||||
|
||||
void QtModalProgressCallback::SetCancellable(bool cancellable)
|
||||
{
|
||||
if (m_cancellable == cancellable)
|
||||
@ -105,6 +101,11 @@ void QtModalProgressCallback::ModalInformation(const char* message)
|
||||
QMessageBox::information(&m_dialog, tr("Information"), QString::fromUtf8(message));
|
||||
}
|
||||
|
||||
void QtModalProgressCallback::dialogCancelled()
|
||||
{
|
||||
m_cancelled = true;
|
||||
}
|
||||
|
||||
void QtModalProgressCallback::checkForDelayedShow()
|
||||
{
|
||||
if (m_dialog.isVisible())
|
||||
|
||||
Reference in New Issue
Block a user