#5300 Formations : Fix update issues

This commit is contained in:
Magne Sjaastad
2020-01-06 14:33:54 +01:00
parent a7366fbebf
commit 7d05a8bd0a
11 changed files with 33 additions and 46 deletions

View File

@@ -72,6 +72,7 @@ RicfCommandResponse RicfImportFormationNames::execute()
if ( rimCase->caseId() == m_applyToCaseId() )
{
rimCase->setFormationNames( formationNames );
rimCase->updateFormationNamesData();
rimCase->updateConnectedEditors();
foundCase = true;
break;

View File

@@ -111,6 +111,7 @@ void RicImportFormationNamesFeature::onActionTriggered( bool isChecked )
if ( ownerCase )
{
ownerCase->setFormationNames( formationName );
ownerCase->updateFormationNamesData();
ownerCase->updateConnectedEditors();
}
}

View File

@@ -51,7 +51,7 @@ RimCase::RimCase()
caseId.uiCapability()->setUiReadOnly( true );
caseId.capability<RicfFieldHandle>()->setIOWriteable( false );
CAF_PDM_InitFieldNoDefault( &activeFormationNames, "DefaultFormationNames", "Formation Names File", "", "", "" );
CAF_PDM_InitFieldNoDefault( &m_activeFormationNames, "DefaultFormationNames", "Formation Names File", "", "", "" );
CAF_PDM_InitFieldNoDefault( &m_timeStepFilter, "TimeStepFilter", "Time Step Filter", "", "", "" );
m_timeStepFilter.uiCapability()->setUiHidden( true );
@@ -122,7 +122,15 @@ cvf::Vec3d RimCase::displayModelOffset() const
//--------------------------------------------------------------------------------------------------
void RimCase::setFormationNames( RimFormationNames* formationNames )
{
activeFormationNames = formationNames;
m_activeFormationNames = formationNames;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimFormationNames* RimCase::activeFormationNames() const
{
return m_activeFormationNames();
}
//--------------------------------------------------------------------------------------------------
@@ -156,7 +164,7 @@ QList<caf::PdmOptionItemInfo> RimCase::calculateValueOptions( const caf::PdmFiel
{
QList<caf::PdmOptionItemInfo> options;
if ( fieldNeedingOptions == &activeFormationNames )
if ( fieldNeedingOptions == &m_activeFormationNames )
{
RimProject* proj = RiaApplication::instance()->project();
if ( proj && proj->activeOilField() && proj->activeOilField()->formationNamesCollection() )
@@ -186,3 +194,11 @@ void RimCase::initAfterRead()
RiaApplication::instance()->project()->assignCaseIdToCase( this );
}
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
caf::PdmFieldHandle* RimCase::userDescriptionField()
{
return &caseUserDescription;
}

View File

@@ -53,8 +53,6 @@ public:
caf::PdmField<int> caseId;
caf::PdmField<QString> caseUserDescription;
caf::PdmPtrField<RimFormationNames*> activeFormationNames;
std::vector<Rim3dView*> views() const;
std::vector<RimGridView*> gridViews() const;
@@ -69,8 +67,9 @@ public:
virtual cvf::Vec3d displayModelOffset() const;
virtual void updateFormationNamesData() = 0;
virtual void setFormationNames( RimFormationNames* formationNames );
void setFormationNames( RimFormationNames* formationNames );
RimFormationNames* activeFormationNames() const;
virtual void updateFormationNamesData() = 0;
virtual double characteristicCellSize() const = 0;
@@ -85,14 +84,12 @@ protected:
void initAfterRead() override;
private:
caf::PdmFieldHandle* userDescriptionField() override
{
return &caseUserDescription;
}
caf::PdmFieldHandle* userDescriptionField() override;
protected:
caf::PdmChildField<RimTimeStepFilter*> m_timeStepFilter;
caf::PdmChildField<Rim2dIntersectionViewCollection*> m_2dIntersectionViewCollection;
caf::PdmPtrField<RimFormationNames*> m_activeFormationNames;
private:
bool m_isInActiveDestruction;

View File

@@ -464,7 +464,7 @@ void RimEclipseCase::fieldChangedByUi( const caf::PdmFieldHandle* changedField,
}
}
}
else if ( changedField == &activeFormationNames )
else if ( changedField == &m_activeFormationNames )
{
updateFormationNamesData();
}
@@ -951,18 +951,6 @@ double RimEclipseCase::characteristicCellSize() const
return 10.0;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimEclipseCase::setFormationNames( RimFormationNames* formationNames )
{
activeFormationNames = formationNames;
if ( m_rigEclipseCase.notNull() && formationNames != nullptr )
{
m_rigEclipseCase->setActiveFormationNamesAndUpdatePlots( formationNames->formationNamesData() );
}
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------

View File

@@ -117,8 +117,6 @@ public:
double characteristicCellSize() const override;
void setFormationNames( RimFormationNames* formationNames ) override;
std::set<QString> sortedSimWellNames() const;
protected:

View File

@@ -322,7 +322,7 @@ void RimEclipseInputCase::defineUiOrdering( QString uiConfigName, caf::PdmUiOrde
uiOrdering.add( &m_additionalFiles );
auto group = uiOrdering.addNewGroup( "Case Options" );
group->add( &activeFormationNames );
group->add( &m_activeFormationNames );
group->add( &m_flipXAxis );
group->add( &m_flipYAxis );
}

View File

@@ -618,7 +618,7 @@ void RimEclipseResultCase::defineUiOrdering( QString uiConfigName, caf::PdmUiOrd
uiOrdering.add( &m_unitSystem );
auto group = uiOrdering.addNewGroup( "Case Options" );
group->add( &activeFormationNames );
group->add( &m_activeFormationNames );
group->add( &m_flipXAxis );
group->add( &m_flipYAxis );

View File

@@ -134,7 +134,7 @@ RimEclipseStatisticsCase::RimEclipseStatisticsCase()
// These does not work properly for statistics case, so hide for now
m_flipXAxis.uiCapability()->setUiHidden( true );
m_flipYAxis.uiCapability()->setUiHidden( true );
activeFormationNames.uiCapability()->setUiHidden( true );
m_activeFormationNames.uiCapability()->setUiHidden( true );
}
//--------------------------------------------------------------------------------------------------
@@ -426,7 +426,7 @@ void RimEclipseStatisticsCase::defineUiOrdering( QString uiConfigName, caf::PdmU
group = uiOrdering.addNewGroup( "Case Options" );
group->add( &m_wellDataSourceCase );
group->add( &activeFormationNames );
group->add( &m_activeFormationNames );
group->add( &m_flipXAxis );
group->add( &m_flipYAxis );
}

View File

@@ -479,18 +479,6 @@ double RimGeoMechCase::characteristicCellSize() const
return 10.0;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimGeoMechCase::setFormationNames( RimFormationNames* formationNames )
{
activeFormationNames = formationNames;
if ( m_geoMechCaseData.notNull() && formationNames != nullptr )
{
m_geoMechCaseData->femPartResults()->setActiveFormationNames( formationNames->formationNamesData() );
}
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@@ -599,7 +587,7 @@ void RimGeoMechCase::fieldChangedByUi( const caf::PdmFieldHandle* changedField,
const QVariant& oldValue,
const QVariant& newValue )
{
if ( changedField == &activeFormationNames )
if ( changedField == &m_activeFormationNames )
{
updateFormationNamesData();
}
@@ -821,7 +809,7 @@ void RimGeoMechCase::defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering&
uiOrdering.add( &m_caseFileName );
caf::PdmUiGroup* caseGroup = uiOrdering.addNewGroup( "Case Options" );
caseGroup->add( &activeFormationNames );
caseGroup->add( &m_activeFormationNames );
caseGroup->add( &m_cohesion );
caseGroup->add( &m_frictionAngleDeg );

View File

@@ -80,8 +80,6 @@ public:
double characteristicCellSize() const override;
void setFormationNames( RimFormationNames* formationNames ) override;
void addElementPropertyFiles( const std::vector<caf::FilePath>& filenames );
double cohesion() const;