#2369 Elm props: Only delete results from the closed files

This commit is contained in:
Rebecca Cox
2018-01-15 16:09:52 +01:00
parent b092565a61
commit 58123f4a49
4 changed files with 34 additions and 7 deletions

View File

@@ -557,19 +557,31 @@ void RimGeoMechCase::closeSelectedElementPropertyFiles()
m_elementPropertyFileNameIndexUiSelection.v().clear();
std::vector<RigFemResultAddress> addressesToDelete;
if (m_geoMechCaseData.notNull())
{
geoMechData()->femPartResults()->removeElementPropertyFiles(filesToClose);
addressesToDelete = geoMechData()->femPartResults()->removeElementPropertyFiles(filesToClose);
}
for (RimGeoMechView* view : geoMechViews())
{
view->cellResult()->setResultAddress(RigFemResultAddress());
for (RimGeoMechPropertyFilter* propertyFilter : view->geoMechPropertyFilterCollection()->propertyFilters())
for (RigFemResultAddress address : addressesToDelete)
{
propertyFilter->resultDefinition().p()->setResultAddress(RigFemResultAddress());
if (address == view->cellResultResultDefinition()->resultAddress())
{
view->cellResult()->setResultAddress(RigFemResultAddress());
}
for (RimGeoMechPropertyFilter* propertyFilter : view->geoMechPropertyFilterCollection()->propertyFilters())
{
if (address == propertyFilter->resultDefinition->resultAddress())
{
propertyFilter->resultDefinition->setResultAddress(RigFemResultAddress());
}
}
}
view->loadDataAndUpdate();
}
}