mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
(#401) WIP: Refactoring Linked views update system.
Preparing for linking of visible Cells.
This commit is contained in:
@@ -172,6 +172,11 @@ void RimViewLinker::updateRangeFilters()
|
||||
{
|
||||
if (!isActive()) return;
|
||||
|
||||
this->scheduleGeometryRegenForDepViews(RANGE_FILTERED);
|
||||
this->scheduleGeometryRegenForDepViews(RANGE_FILTERED_INACTIVE);
|
||||
this->scheduleCreateDisplayModelAndRedrawForDependentViews();
|
||||
|
||||
#if 0
|
||||
for (size_t i = 0; i < viewLinks.size(); i++)
|
||||
{
|
||||
RimViewLink* managedViewConfig = viewLinks[i];
|
||||
@@ -200,6 +205,7 @@ void RimViewLinker::updateRangeFilters()
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -208,7 +214,11 @@ void RimViewLinker::updateRangeFilters()
|
||||
void RimViewLinker::updatePropertyFilters()
|
||||
{
|
||||
if (!isActive()) return;
|
||||
this->scheduleGeometryRegenForDepViews(RANGE_FILTERED);
|
||||
this->scheduleGeometryRegenForDepViews(RANGE_FILTERED_INACTIVE);
|
||||
this->scheduleCreateDisplayModelAndRedrawForDependentViews();
|
||||
|
||||
#if 0
|
||||
for (size_t i = 0; i < viewLinks.size(); i++)
|
||||
{
|
||||
RimViewLink* managedViewConfig = viewLinks[i];
|
||||
@@ -235,6 +245,7 @@ void RimViewLinker::updatePropertyFilters()
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -459,3 +470,47 @@ void RimViewLinker::setNameAndIcon()
|
||||
m_originalIcon = icon;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimViewLinker::scheduleGeometryRegenForDepViews(RivCellSetEnum geometryType)
|
||||
{
|
||||
for (size_t i = 0; i < viewLinks.size(); i++)
|
||||
{
|
||||
if ( viewLinks[i]->syncVisibleCells()
|
||||
|| viewLinks[i]->syncPropertyFilters()
|
||||
|| viewLinks[i]->syncRangeFilters()
|
||||
)
|
||||
{
|
||||
if (viewLinks[i]->managedView())
|
||||
{
|
||||
if (viewLinks[i]->syncVisibleCells()) {
|
||||
viewLinks[i]->managedView()->scheduleGeometryRegen(OVERRIDDEN_CELL_VISIBILITY);
|
||||
}else{
|
||||
viewLinks[i]->managedView()->scheduleGeometryRegen(geometryType);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimViewLinker::scheduleCreateDisplayModelAndRedrawForDependentViews()
|
||||
{
|
||||
for (size_t i = 0; i < viewLinks.size(); i++)
|
||||
{
|
||||
if (viewLinks[i]->syncVisibleCells()
|
||||
|| viewLinks[i]->syncPropertyFilters()
|
||||
|| viewLinks[i]->syncRangeFilters()
|
||||
)
|
||||
{
|
||||
if (viewLinks[i]->managedView())
|
||||
{
|
||||
viewLinks[i]->managedView()->scheduleCreateDisplayModelAndRedraw();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user