#3073 #3074 Fix crash and perpetual wait cursor when cancelling filtered ODB import

This commit is contained in:
Gaute Lindkvist
2018-06-21 13:56:10 +02:00
parent 6d3659dfe6
commit a888ab0160
4 changed files with 38 additions and 24 deletions

View File

@@ -147,20 +147,21 @@ bool RimEclipseResultCase::importGridAndResultMetaData(bool showTimeStepFilter)
if (showTimeStepFilter)
{
// Restore cursor as the progress dialog is active
QApplication::restoreOverrideCursor();
caf::PdmUiPropertyViewDialog propertyDialog(nullptr, m_timeStepFilter, "Time Step Filter", "", QDialogButtonBox::Ok | QDialogButtonBox::Cancel);
propertyDialog.resize(QSize(400, 400));
// Push arrow cursor onto the cursor stack so it takes over from the wait cursor.
QApplication::setOverrideCursor(QCursor(Qt::ArrowCursor));
// Show GUI to select time steps
if (propertyDialog.exec() != QDialog::Accepted)
int dialogReturnValue = propertyDialog.exec();
// Pop arrow cursor off the cursor stack so that the previous (wait) cursor takes over.
QApplication::restoreOverrideCursor();
if (dialogReturnValue != QDialog::Accepted)
{
return false;
}
m_timeStepFilter->updateFilteredTimeStepsFromUi();
// Set cursor in wait state to continue display of progress dialog including
// wait cursor
QApplication::setOverrideCursor(QCursor(Qt::WaitCursor));
}
readerEclipseOutput->setFileDataAccess(restartDataAccess.p());
readerEclipseOutput->setTimeStepFilter(m_timeStepFilter->filteredTimeSteps());