mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
Merge pull request #6405 from OPM/mud-weight-window-fixes
Mud weight window fixes
This commit is contained in:
@@ -42,7 +42,8 @@ CAF_PDM_XML_ABSTRACT_SOURCE_INIT( RimCase, "Case", "RimCase" );
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
RimCase::RimCase()
|
||||
: m_isInActiveDestruction( false )
|
||||
: settingsChanged( this )
|
||||
, m_isInActiveDestruction( false )
|
||||
{
|
||||
CAF_PDM_InitScriptableObjectWithNameAndComment( "Case", ":/Case48x48.png", "", "", "Case", "The ResInsight base class for Cases" );
|
||||
|
||||
|
||||
@@ -81,6 +81,8 @@ public:
|
||||
|
||||
Rim2dIntersectionViewCollection* intersectionViewCollection();
|
||||
|
||||
caf::Signal<> settingsChanged;
|
||||
|
||||
protected:
|
||||
QList<caf::PdmOptionItemInfo> calculateValueOptions( const caf::PdmFieldHandle* fieldNeedingOptions,
|
||||
bool* useOptionsOnly ) override;
|
||||
|
||||
@@ -422,8 +422,6 @@ std::vector<Rim3dView*> RimGeoMechCase::allSpecialViews() const
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimGeoMechCase::defineUiTreeOrdering( caf::PdmUiTreeOrdering& uiTreeOrdering, QString uiConfigName /*= ""*/ )
|
||||
{
|
||||
uiTreeOrdering.add( &m_mudWeightWindowParameters );
|
||||
|
||||
std::vector<PdmObjectHandle*> children;
|
||||
geoMechViews.childObjects( &children );
|
||||
|
||||
@@ -1143,6 +1141,9 @@ void RimGeoMechCase::defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering&
|
||||
m_initialPermeabilityType != RimGeoMechCase::InitialPermeabilityType::INITIAL_PERMEABILITY_PER_ELEMENT );
|
||||
permeabilityGroup->add( &m_permeabilityExponent );
|
||||
|
||||
caf::PdmUiGroup* mudWeightWindowGroup = uiOrdering.addNewGroup( "Mud Weight Window" );
|
||||
m_mudWeightWindowParameters->uiOrdering( uiConfigName, *mudWeightWindowGroup );
|
||||
|
||||
caf::PdmUiGroup* shearSlipIndicatorGroup = uiOrdering.addNewGroup( "Shear Slip Indicator" );
|
||||
shearSlipIndicatorGroup->add( &m_waterDensityShearSlipIndicator );
|
||||
|
||||
|
||||
@@ -415,6 +415,7 @@ void RimMudWeightWindowParameters::fieldChangedByUi( const caf::PdmFieldHandle*
|
||||
m_userDefinedPPNonReservoir,
|
||||
m_porePressureNonReservoirAddress );
|
||||
geoMechCase->updateConnectedViews();
|
||||
geoMechCase->settingsChanged.send();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -474,6 +475,7 @@ void RimMudWeightWindowParameters::handleFieldChanged( RimGeoMechCase*
|
||||
}
|
||||
|
||||
geoMechCase->updateConnectedViews();
|
||||
geoMechCase->settingsChanged.send();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
|
||||
@@ -178,7 +178,11 @@ void RimWellLogExtractionCurve::setFromSimulationWellName( const QString& simWel
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimWellLogExtractionCurve::setCase( RimCase* rimCase )
|
||||
{
|
||||
disconnectCaseSignals( m_case.value() );
|
||||
|
||||
m_case = rimCase;
|
||||
|
||||
connectCaseSignals( rimCase );
|
||||
clearGeneratedSimWellPaths();
|
||||
}
|
||||
|
||||
@@ -197,7 +201,9 @@ void RimWellLogExtractionCurve::setPropertiesFromView( Rim3dView* view )
|
||||
{
|
||||
if ( view )
|
||||
{
|
||||
disconnectCaseSignals( m_case.value() );
|
||||
m_case = view->ownerCase();
|
||||
connectCaseSignals( m_case );
|
||||
}
|
||||
|
||||
RimGeoMechCase* geomCase = dynamic_cast<RimGeoMechCase*>( m_case.value() );
|
||||
@@ -763,6 +769,8 @@ void RimWellLogExtractionCurve::initAfterRead()
|
||||
|
||||
m_eclipseResultDefinition->setEclipseCase( eclipseCase );
|
||||
m_geomResultDefinition->setGeoMechCase( geomCase );
|
||||
|
||||
connectCaseSignals( m_case.value() );
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -1101,3 +1109,33 @@ void RimWellLogExtractionCurve::setBranchIndex( int index )
|
||||
{
|
||||
m_branchIndex = index;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimWellLogExtractionCurve::connectCaseSignals( RimCase* rimCase )
|
||||
{
|
||||
if ( rimCase )
|
||||
{
|
||||
rimCase->settingsChanged.connect( this, &RimWellLogExtractionCurve::onCaseSettingsChanged );
|
||||
}
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimWellLogExtractionCurve::disconnectCaseSignals( RimCase* rimCase )
|
||||
{
|
||||
if ( rimCase != nullptr )
|
||||
{
|
||||
rimCase->settingsChanged.disconnect( this );
|
||||
}
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimWellLogExtractionCurve::onCaseSettingsChanged( const caf::SignalEmitter* emitter )
|
||||
{
|
||||
loadDataAndUpdate( true );
|
||||
}
|
||||
|
||||
@@ -94,8 +94,12 @@ public:
|
||||
RiaDefines::PhaseType phaseType() const override;
|
||||
|
||||
protected:
|
||||
QString createCurveAutoName() override;
|
||||
void onLoadDataAndUpdate( bool updateParentPlot ) override;
|
||||
QString createCurveAutoName() override;
|
||||
void onLoadDataAndUpdate( bool updateParentPlot ) override;
|
||||
void onCaseSettingsChanged( const caf::SignalEmitter* emitter );
|
||||
void connectCaseSignals( RimCase* rimCase );
|
||||
void disconnectCaseSignals( RimCase* rimCase );
|
||||
|
||||
virtual void performDataExtraction( bool* isUsingPseudoLength );
|
||||
void extractData( bool* isUsingPseudoLength, bool performDataSmoothing = false, double smoothingThreshold = -1.0 );
|
||||
|
||||
|
||||
Reference in New Issue
Block a user