diff --git a/ApplicationCode/ProjectDataModel/RimGridCollection.cpp b/ApplicationCode/ProjectDataModel/RimGridCollection.cpp index 8706a4976d..1b9c856314 100644 --- a/ApplicationCode/ProjectDataModel/RimGridCollection.cpp +++ b/ApplicationCode/ProjectDataModel/RimGridCollection.cpp @@ -463,7 +463,10 @@ void RimGridCollection::initAfterRead() void RimGridCollection::defineUiTreeOrdering(caf::PdmUiTreeOrdering& uiTreeOrdering, QString uiConfigName /*= ""*/) { uiTreeOrdering.add(m_mainGrid()); - uiTreeOrdering.add(m_persistentLgrs()); + if (hasPersistentLgrs()) + { + uiTreeOrdering.add(m_persistentLgrs()); + } uiTreeOrdering.add(m_temporaryLgrs()); uiTreeOrdering.skipRemainingChildren(true); } @@ -477,3 +480,19 @@ const RigMainGrid* RimGridCollection::mainGrid() const firstAncestorOrThisOfType(eclipseCase); return eclipseCase ? eclipseCase->mainGrid() : nullptr; } + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +bool RimGridCollection::hasPersistentLgrs() const +{ + auto mainGrid = this->mainGrid(); + if (!mainGrid) return 0; + + for (int i = 1; i < mainGrid->gridCount(); i++) + { + const auto grid = mainGrid->gridByIndex(i); + if (!grid->isTempGrid()) return true; + } + return false; +} diff --git a/ApplicationCode/ProjectDataModel/RimGridCollection.h b/ApplicationCode/ProjectDataModel/RimGridCollection.h index 002f8af181..6cbbbccf4a 100644 --- a/ApplicationCode/ProjectDataModel/RimGridCollection.h +++ b/ApplicationCode/ProjectDataModel/RimGridCollection.h @@ -116,6 +116,7 @@ protected: private: const RigMainGrid* mainGrid() const; + bool hasPersistentLgrs() const; caf::PdmField m_isActive; caf::PdmChildField m_mainGrid;