#10426 Summary Data: Show confirm dialog before creating a large number of text lines

This commit is contained in:
Magne Sjaastad 2023-06-26 16:09:15 +02:00
parent bd061a5bf4
commit 93c943543b

View File

@ -18,6 +18,7 @@
#include "RimSummaryCurvesData.h" #include "RimSummaryCurvesData.h"
#include "RiaGuiApplication.h"
#include "RiaSummaryCurveDefinition.h" #include "RiaSummaryCurveDefinition.h"
#include "RiaSummaryTools.h" #include "RiaSummaryTools.h"
#include "RiaTimeHistoryCurveResampler.h" #include "RiaTimeHistoryCurveResampler.h"
@ -32,6 +33,8 @@
#include "cvfAssert.h" #include "cvfAssert.h"
#include "cvfMath.h" #include "cvfMath.h"
#include <QMessageBox>
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
/// ///
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
@ -326,6 +329,16 @@ void RimSummaryCurvesData::appendToExportData( QString& out, const std::vector<R
auto allTimeSteps = RiaTimeHistoryCurveResampler::timeStepsFromTimeRange( data.resamplePeriod, minTimeStep, maxTimeStep ); auto allTimeSteps = RiaTimeHistoryCurveResampler::timeStepsFromTimeRange( data.resamplePeriod, minTimeStep, maxTimeStep );
const size_t threshold = 50000;
if ( allTimeSteps.size() > threshold && RiaGuiApplication::isRunning() )
{
QString questionStr = QString( "This operation will produce %1 text lines. Do you want to continue?" ).arg( allTimeSteps.size() );
auto reply =
QMessageBox::question( nullptr, "Summary Text Export", questionStr, QMessageBox::Yes | QMessageBox::No, QMessageBox::No );
if ( reply != QMessageBox::Yes ) return;
}
out += "\n\n"; out += "\n\n";
out += "Date and time"; out += "Date and time";
for ( size_t i = 0; i < data.caseIds.size(); i++ ) for ( size_t i = 0; i < data.caseIds.size(); i++ )