mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
Propagate variable changed signal to RicUserDefinedCalculatorUi
- ensure that the UI is updated - if the grid size is different, set destination case equal to the input variable case
This commit is contained in:
@@ -295,16 +295,20 @@ void RimGridCalculation::initAfterRead()
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimGridCalculation::onVariableUpdated( const SignalEmitter* emitter )
|
||||
{
|
||||
if ( m_destinationCase == nullptr )
|
||||
if ( auto variable = dynamic_cast<const RimGridCalculationVariable*>( emitter ) )
|
||||
{
|
||||
auto variable = dynamic_cast<const RimGridCalculationVariable*>( emitter );
|
||||
if ( variable && variable->eclipseCase() )
|
||||
if ( auto variableCase = variable->eclipseCase() )
|
||||
{
|
||||
m_destinationCase = variable->eclipseCase();
|
||||
|
||||
updateConnectedEditors();
|
||||
if ( !m_destinationCase || !m_destinationCase->isGridSizeEqualTo( variableCase ) )
|
||||
{
|
||||
m_destinationCase = variableCase;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
updateConnectedEditors();
|
||||
|
||||
variableUpdated.send();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
|
||||
@@ -42,6 +42,7 @@ CAF_PDM_XML_ABSTRACT_SOURCE_INIT( RimUserDefinedCalculation, "RimUserDefinedCalc
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
RimUserDefinedCalculation::RimUserDefinedCalculation()
|
||||
: variableUpdated( this )
|
||||
{
|
||||
CAF_PDM_InitObject( "RimUserDefinedCalculation", ":/octave.png", "Calculation", "" );
|
||||
|
||||
|
||||
@@ -36,6 +36,9 @@ class RimUserDefinedCalculation : public caf::PdmObject
|
||||
{
|
||||
CAF_PDM_HEADER_INIT;
|
||||
|
||||
public:
|
||||
caf::Signal<> variableUpdated;
|
||||
|
||||
public:
|
||||
RimUserDefinedCalculation();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user