mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-10 15:36:09 -06:00
#950 Fixed updating when formation names selection in case are changed, or the fomation name object is deleted.
This commit is contained in:
parent
2c6e6f4a80
commit
7501dc7a5f
@ -39,6 +39,8 @@
|
|||||||
#include "cafPdmReferenceHelper.h"
|
#include "cafPdmReferenceHelper.h"
|
||||||
#include "cafPdmUiFieldHandle.h"
|
#include "cafPdmUiFieldHandle.h"
|
||||||
#include "cafSelectionManager.h"
|
#include "cafSelectionManager.h"
|
||||||
|
#include "RimFormationNamesCollection.h"
|
||||||
|
#include "RimCase.h"
|
||||||
|
|
||||||
|
|
||||||
namespace caf
|
namespace caf
|
||||||
@ -68,6 +70,9 @@ void RicDeleteItemExec::redo()
|
|||||||
PdmObjectHandle* obj = children[m_commandData->m_indexToObject];
|
PdmObjectHandle* obj = children[m_commandData->m_indexToObject];
|
||||||
caf::SelectionManager::instance()->removeObjectFromAllSelections(obj);
|
caf::SelectionManager::instance()->removeObjectFromAllSelections(obj);
|
||||||
|
|
||||||
|
std::vector<caf::PdmObjectHandle*> referringObjects;
|
||||||
|
obj->objectsWithReferringPtrFields(referringObjects);
|
||||||
|
|
||||||
if (m_commandData->m_deletedObjectAsXml().isEmpty())
|
if (m_commandData->m_deletedObjectAsXml().isEmpty())
|
||||||
{
|
{
|
||||||
m_commandData->m_deletedObjectAsXml = xmlObj(obj)->writeObjectToXmlString();
|
m_commandData->m_deletedObjectAsXml = xmlObj(obj)->writeObjectToXmlString();
|
||||||
@ -83,6 +88,8 @@ void RicDeleteItemExec::redo()
|
|||||||
RimView* view = NULL;
|
RimView* view = NULL;
|
||||||
parentObj->firstAncestorOrThisOfType(view);
|
parentObj->firstAncestorOrThisOfType(view);
|
||||||
|
|
||||||
|
// Range Filters
|
||||||
|
|
||||||
RimCellRangeFilterCollection* rangeFilterColl;
|
RimCellRangeFilterCollection* rangeFilterColl;
|
||||||
parentObj->firstAncestorOrThisOfType(rangeFilterColl);
|
parentObj->firstAncestorOrThisOfType(rangeFilterColl);
|
||||||
|
|
||||||
@ -91,6 +98,8 @@ void RicDeleteItemExec::redo()
|
|||||||
rangeFilterColl->updateDisplayModeNotifyManagedViews(NULL);
|
rangeFilterColl->updateDisplayModeNotifyManagedViews(NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Prop Filter
|
||||||
|
|
||||||
RimEclipsePropertyFilterCollection* eclipsePropColl;
|
RimEclipsePropertyFilterCollection* eclipsePropColl;
|
||||||
parentObj->firstAncestorOrThisOfType(eclipsePropColl);
|
parentObj->firstAncestorOrThisOfType(eclipsePropColl);
|
||||||
|
|
||||||
@ -103,6 +112,8 @@ void RicDeleteItemExec::redo()
|
|||||||
view->scheduleCreateDisplayModelAndRedraw();
|
view->scheduleCreateDisplayModelAndRedraw();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Intersections
|
||||||
|
|
||||||
RimIntersectionCollection* crossSectionColl;
|
RimIntersectionCollection* crossSectionColl;
|
||||||
parentObj->firstAncestorOrThisOfType(crossSectionColl);
|
parentObj->firstAncestorOrThisOfType(crossSectionColl);
|
||||||
if (view && crossSectionColl)
|
if (view && crossSectionColl)
|
||||||
@ -110,6 +121,7 @@ void RicDeleteItemExec::redo()
|
|||||||
view->scheduleCreateDisplayModelAndRedraw();
|
view->scheduleCreateDisplayModelAndRedraw();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Well paths
|
||||||
|
|
||||||
RimWellPathCollection* wellPathColl;
|
RimWellPathCollection* wellPathColl;
|
||||||
parentObj->firstAncestorOrThisOfType(wellPathColl);
|
parentObj->firstAncestorOrThisOfType(wellPathColl);
|
||||||
@ -153,6 +165,8 @@ void RicDeleteItemExec::redo()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Linked views
|
||||||
|
|
||||||
RimViewLinkerCollection* viewLinkerCollection = NULL;
|
RimViewLinkerCollection* viewLinkerCollection = NULL;
|
||||||
parentObj->firstAncestorOrThisOfType(viewLinkerCollection);
|
parentObj->firstAncestorOrThisOfType(viewLinkerCollection);
|
||||||
if (viewLinkerCollection)
|
if (viewLinkerCollection)
|
||||||
@ -168,6 +182,19 @@ void RicDeleteItemExec::redo()
|
|||||||
project->uiCapability()->updateConnectedEditors();
|
project->uiCapability()->updateConnectedEditors();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Formation names
|
||||||
|
|
||||||
|
RimFormationNamesCollection* formationNamesCollection;
|
||||||
|
parentObj->firstAncestorOrThisOfType(formationNamesCollection);
|
||||||
|
if (formationNamesCollection)
|
||||||
|
{
|
||||||
|
for(caf::PdmObjectHandle* reffingObj :referringObjects)
|
||||||
|
{
|
||||||
|
RimCase* aCase = dynamic_cast<RimCase*>(reffingObj);
|
||||||
|
if (aCase) aCase->updateFormationNamesData();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -319,6 +319,7 @@ void RimEclipseCase::updateFormationNamesData()
|
|||||||
if (eclView->cellResult()->resultType() == RimDefines::FORMATION_NAMES)
|
if (eclView->cellResult()->resultType() == RimDefines::FORMATION_NAMES)
|
||||||
{
|
{
|
||||||
eclView->cellResult()->setResultVariable(RimDefines::undefinedResultName());
|
eclView->cellResult()->setResultVariable(RimDefines::undefinedResultName());
|
||||||
|
eclView->cellResult()->updateConnectedEditors();
|
||||||
}
|
}
|
||||||
|
|
||||||
RimEclipsePropertyFilterCollection* eclFilColl = eclView->eclipsePropertyFilterCollection();
|
RimEclipsePropertyFilterCollection* eclFilColl = eclView->eclipsePropertyFilterCollection();
|
||||||
@ -334,9 +335,14 @@ void RimEclipseCase::updateFormationNamesData()
|
|||||||
RimEclipsePropertyFilterCollection* eclFilColl = eclView->eclipsePropertyFilterCollection();
|
RimEclipsePropertyFilterCollection* eclFilColl = eclView->eclipsePropertyFilterCollection();
|
||||||
for ( RimEclipsePropertyFilter* propFilter : eclFilColl->propertyFilters )
|
for ( RimEclipsePropertyFilter* propFilter : eclFilColl->propertyFilters )
|
||||||
{
|
{
|
||||||
if ( propFilter->resultDefinition->resultType() == RimDefines::FORMATION_NAMES ) propFilter->setToDefaultValues();
|
if ( propFilter->resultDefinition->resultType() == RimDefines::FORMATION_NAMES )
|
||||||
|
{
|
||||||
|
propFilter->setToDefaultValues();
|
||||||
|
propFilter->updateConnectedEditors();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
view->scheduleGeometryRegen(PROPERTY_FILTERED);
|
||||||
view->scheduleCreateDisplayModelAndRedraw();
|
view->scheduleCreateDisplayModelAndRedraw();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user