diff --git a/ApplicationCode/ProjectDataModel/Flow/RimFlowCharacteristicsPlot.cpp b/ApplicationCode/ProjectDataModel/Flow/RimFlowCharacteristicsPlot.cpp index 77b38f9c0f..f851ab50c1 100644 --- a/ApplicationCode/ProjectDataModel/Flow/RimFlowCharacteristicsPlot.cpp +++ b/ApplicationCode/ProjectDataModel/Flow/RimFlowCharacteristicsPlot.cpp @@ -627,6 +627,18 @@ void RimFlowCharacteristicsPlot::loadDataAndUpdate() } } +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +void RimFlowCharacteristicsPlot::viewGeometryUpdated() +{ + if (m_cellFilter() == RigFlowDiagResults::CELLS_VISIBLE) + { + // Only need to reload data if cell filtering is based on visible cells in view. + loadDataAndUpdate(); + } +} + //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- diff --git a/ApplicationCode/ProjectDataModel/Flow/RimFlowCharacteristicsPlot.h b/ApplicationCode/ProjectDataModel/Flow/RimFlowCharacteristicsPlot.h index 694304aa12..c7ea289f67 100644 --- a/ApplicationCode/ProjectDataModel/Flow/RimFlowCharacteristicsPlot.h +++ b/ApplicationCode/ProjectDataModel/Flow/RimFlowCharacteristicsPlot.h @@ -67,6 +67,8 @@ public: virtual void deleteViewWidget() override; virtual void loadDataAndUpdate() override; + void viewGeometryUpdated(); + enum TimeSelectionType { ALL_AVAILABLE, diff --git a/ApplicationCode/ProjectDataModel/RimEclipseView.cpp b/ApplicationCode/ProjectDataModel/RimEclipseView.cpp index 9ab9cc6edb..8676b72819 100644 --- a/ApplicationCode/ProjectDataModel/RimEclipseView.cpp +++ b/ApplicationCode/ProjectDataModel/RimEclipseView.cpp @@ -57,6 +57,7 @@ #include "RimViewController.h" #include "RimViewLinker.h" #include "RimWellPathCollection.h" +#include "RimFlowCharacteristicsPlot.h" #include "RiuMainWindow.h" #include "RiuSelectionManager.h" @@ -494,6 +495,17 @@ void RimEclipseView::createDisplayModel() m_overlayInfoConfig()->update3DInfo(); updateLegends(); } + + std::vector objects; + this->referringPtrFields(objects); + for (auto object : objects) + { + RimFlowCharacteristicsPlot* plot = dynamic_cast(object->ownerObject()); + if (plot != nullptr) + { + plot->viewGeometryUpdated(); + } + } } //--------------------------------------------------------------------------------------------------