#5043 Input Property: Show file path in result selection panel

This commit is contained in:
Kristian Bendiksen 2020-01-16 21:53:38 +01:00 committed by Magne Sjaastad
parent 23bf2c50d9
commit 492ec395c0
2 changed files with 40 additions and 6 deletions

View File

@ -45,6 +45,8 @@
#include "RimEclipseContourMapProjection.h"
#include "RimEclipseContourMapView.h"
#include "RimEclipseFaultColors.h"
#include "RimEclipseInputProperty.h"
#include "RimEclipseInputPropertyCollection.h"
#include "RimEclipsePropertyFilter.h"
#include "RimEclipseResultCase.h"
#include "RimEclipseView.h"
@ -155,6 +157,10 @@ RimEclipseResultDefinition::RimEclipseResultDefinition( caf::PdmUiItemInfo::Labe
m_resultVariableUiField.uiCapability()->setUiEditorTypeName( caf::PdmUiListEditor::uiEditorTypeName() );
m_resultVariableUiField.uiCapability()->setUiLabelPosition( m_labelPosition );
CAF_PDM_InitFieldNoDefault( &m_inputPropertyFileName, "InputPropertyFileName", "File Name", "", "", "" );
m_inputPropertyFileName.xmlCapability()->disableIO();
m_inputPropertyFileName.uiCapability()->setUiReadOnly( true );
CAF_PDM_InitFieldNoDefault( &m_flowSolutionUiField, "MFlowDiagSolution", "Solution", "", "", "" );
m_flowSolutionUiField.xmlCapability()->disableIO();
m_flowSolutionUiField.uiCapability()->setUiHidden( true ); // For now since there are only one to choose from
@ -307,6 +313,10 @@ void RimEclipseResultDefinition::fieldChangedByUi( const caf::PdmFieldHandle* ch
{
m_selectedSouringTracers = m_selectedSouringTracersUiField();
}
else if ( m_resultTypeUiField() == RiaDefines::INPUT_PROPERTY )
{
m_inputPropertyFileName = getInputPropertyFileName( newValue.toString() );
}
loadDataAndUpdate();
}
@ -1460,13 +1470,10 @@ void RimEclipseResultDefinition::defineUiOrdering( QString uiConfigName, caf::Pd
uiOrdering.add( &m_selectedSouringTracersUiField );
}
if ( m_resultTypeUiField() == RiaDefines::FLOW_DIAGNOSTICS )
uiOrdering.add( &m_resultVariableUiField );
if ( m_resultTypeUiField() == RiaDefines::INPUT_PROPERTY )
{
uiOrdering.add( &m_resultVariableUiField );
}
else
{
uiOrdering.add( &m_resultVariableUiField );
uiOrdering.add( &m_inputPropertyFileName );
}
if ( isCaseDiffResultAvailable() || isTimeDiffResultAvailable() )
@ -2560,3 +2567,27 @@ void RimEclipseResultDefinition::ensureProcessingOfObsoleteFields()
}
}
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
QString RimEclipseResultDefinition::getInputPropertyFileName( const QString& resultName ) const
{
RimEclipseCase* eclipseCase;
this->firstAncestorOrThisOfType( eclipseCase );
if ( eclipseCase )
{
RimEclipseInputPropertyCollection* inputPropertyCollection = eclipseCase->inputPropertyCollection();
if ( inputPropertyCollection )
{
RimEclipseInputProperty* inputProperty = inputPropertyCollection->findInputProperty( resultName );
if ( inputProperty )
{
return inputProperty->fileName.v().path();
}
}
}
return "";
}

View File

@ -173,6 +173,7 @@ protected:
caf::PdmField<caf::AppEnum<RiaDefines::PorosityModelType>> m_porosityModel;
caf::PdmField<QString> m_resultVariable;
caf::PdmField<int> m_timeLapseBaseTimestep;
caf::PdmField<QString> m_inputPropertyFileName;
caf::PdmPtrField<RimEclipseCase*> m_differenceCase;
@ -252,6 +253,8 @@ private:
void ensureProcessingOfObsoleteFields();
bool isTernaryEnabled() const;
QString getInputPropertyFileName( const QString& resultName ) const;
private:
bool m_diffResultOptionsEnabled;
caf::PdmUiItemInfo::LabelPosType m_labelPosition;