mirror of
https://github.com/OPM/ResInsight.git
synced 2026-08-26 21:27:15 -05:00
#14083 Well Disks: Show disks on project load without toggling wells
On project reload the simulation well disks were not drawn until the user toggled the Simulation Wells visibility. Two load-ordering issues caused this: scaleWellDisks() ran before synchronizeWellsWithResults() had populated the wells list, so it iterated an empty collection. It also bailed out early on the transient m_showWellDisks aggregate (disableIO), which is only synced from the restored per-well states when the property panel is built. Move scaleWellDisks() after synchronizeWellsWithResults(), and sync the visibility checkbox state at the start of scaleWellDisks() so the disks are scaled and marked valid before the first display-model build.
This commit is contained in:
@@ -1263,8 +1263,6 @@ void RimEclipseView::onLoadDataAndUpdate()
|
||||
|
||||
faultCollection()->synchronizeFaults();
|
||||
|
||||
m_wellCollection->scaleWellDisks();
|
||||
|
||||
if ( m_surfaceCollection ) m_surfaceCollection->loadData( m_currentTimeStep );
|
||||
|
||||
scheduleReservoirGridGeometryRegen();
|
||||
@@ -1272,6 +1270,11 @@ void RimEclipseView::onLoadDataAndUpdate()
|
||||
|
||||
synchronizeWellsWithResults();
|
||||
|
||||
// Scale well disks after the wells have been (re)populated by synchronizeWellsWithResults(). Calling this earlier
|
||||
// would iterate an empty well list, leaving each well's disk marked invalid so the disks are not drawn on the first
|
||||
// display-model build after a project reload (see #14083).
|
||||
m_wellCollection->scaleWellDisks();
|
||||
|
||||
synchronizeLocalAnnotationsFromGlobal();
|
||||
|
||||
if ( isVirtualConnectionFactorGeometryVisible() )
|
||||
|
||||
@@ -872,6 +872,12 @@ bool RimSimWellInViewCollection::showWellDiskQuantityLables() const
|
||||
void RimSimWellInViewCollection::scaleWellDisks()
|
||||
{
|
||||
if ( !isActive ) return;
|
||||
|
||||
// m_showWellDisks is a transient aggregate (disableIO) derived from the per-well showWellDisks() states. After a
|
||||
// project reload it is still at its default (False) until the property panel is built, so sync it from the restored
|
||||
// per-well states here to avoid skipping disk scaling on the first display-model build (see #14083).
|
||||
updateStateForVisibilityCheckboxes();
|
||||
|
||||
if ( m_showWellDisks().isFalse() ) return;
|
||||
|
||||
RimWellDiskConfig wellDiskConfig = getActiveWellDiskConfig();
|
||||
|
||||
Reference in New Issue
Block a user