#6479 Fix saving derived ensemble analysis plots and improve delta labels

This commit is contained in:
Gaute Lindkvist 2020-09-09 20:11:31 +02:00
parent 02b193af43
commit dbec9dd3a5
3 changed files with 17 additions and 9 deletions

View File

@ -83,15 +83,11 @@ RimDerivedEnsembleCaseCollection::RimDerivedEnsembleCaseCollection()
m_fixedTimeStepIndex.uiCapability()->setUiEditorTypeName( caf::PdmUiTreeSelectionEditor::uiEditorTypeName() );
m_fixedTimeStepIndex.uiCapability()->setUiLabelPosition( caf::PdmUiItemInfo::HIDDEN );
// Do not show child cases
uiCapability()->setUiTreeChildrenHidden( true );
// Do not store child cases to project file
m_cases.xmlCapability()->disableIO();
setNameAsReadOnly();
setName( "Delta Ensemble" );
setAsEnsemble( true );
setDeletable( true );
}
@ -192,6 +188,7 @@ void RimDerivedEnsembleCaseCollection::updateDerivedEnsembleCases()
derivedCase->createSummaryReaderInterface();
derivedCase->setCaseRealizationParameters( crp );
derivedCase->setInUse( true );
derivedCase->updateDisplayNameFromCases();
}
// If other derived ensembles are referring to this ensemble, update their cases as well

View File

@ -24,6 +24,7 @@
#include "RifDerivedEnsembleReader.h"
#include "RimProject.h"
#include "RimSummaryCaseCollection.h"
#include "RimSummaryPlot.h"
#include "cafPdmUiTreeSelectionEditor.h"
@ -411,7 +412,17 @@ void RimDerivedSummaryCase::updateDisplayNameFromCases()
else if ( m_operator() == DerivedSummaryOperator::DERIVED_OPERATOR_ADD )
operatorText = "Sum";
QString name = operatorText + QString( "(%1 , %2)" ).arg( case1Name, case2Name );
QString name;
if ( case1Name == case2Name && m_summaryCase1->ensemble() && m_summaryCase2->ensemble() )
{
QString ensembleName1 = m_summaryCase1->ensemble()->name();
QString ensembleName2 = m_summaryCase2->ensemble()->name();
name = QString( "%1: %2 - %3" ).arg( case1Name ).arg( ensembleName1 ).arg( ensembleName2 );
}
else
{
name = operatorText + QString( "(%1 , %2)" ).arg( case1Name ).arg( case2Name );
}
m_displayName = name;
}

View File

@ -279,7 +279,7 @@ void RimSummaryCase::initAfterRead()
//--------------------------------------------------------------------------------------------------
QString RimSummaryCase::uniqueShortNameForCase( RimSummaryCase* summaryCase )
{
QString ensembleName;
QString ensembleName = summaryCase->caseName();
std::vector<RimSummaryCase*> summaryCases;
auto ensemble = summaryCase->ensemble();
@ -309,7 +309,7 @@ QString RimSummaryCase::uniqueShortNameForCase( RimSummaryCase* summaryCase )
RiaFilePathTools::keyPathComponentsForEachFilePath( summaryFilePaths );
QStringList keyFileComponents = keyFileComponentsForAllFiles[summaryCase->summaryHeaderFilename()];
CAF_ASSERT( !keyFileComponents.empty() );
if ( keyFileComponents.empty() ) return ensembleName;
if ( !ensembleName.isEmpty() )
{