#13997 3dView: Show active filter name(s) below Z-scale indicator

Adds a new HUD label in the upper-left of the 3D view that reads
"Filter : <name(s)>" whenever a cell, property, or per-view data
filter is active. The label is hidden when nothing is enabled.

Names are joined per the source collection's AND/OR combine mode, and
contributions from different collections are concatenated with ", ".
On Eclipse views the unified RimFilterInViewCollection is used as the
single anchor; GeoMech views aggregate cell and GeoMech property
filters directly.
This commit is contained in:
Kristian Bendiksen committed 2026-05-20 14:16:04 +02:00
1 parent af5c133736
commit 20087c6dd9
15 files changed
+238

No files matched your search

@@ -335,6 +335,7 @@ QWidget* Rim3dView::createViewWidget( QWidget* mainWindowParent )
m_viewer->setAxisLabels( xLabel, yLabel, zLabel );
updateZScaleLabel();
updateFilterLabel();
return m_viewer->layoutWidget();
}
@@ -717,6 +718,7 @@ void Rim3dView::createDisplayModelAndRedraw()
onCreateDisplayModel();
createHighlightAndGridBoxDisplayModel();
updateDisplayModelVisibility();
updateFilterLabel();
if ( m_cameraPosition().isIdentity() )
{
@@ -1281,6 +1283,33 @@ void Rim3dView::updateZScaleLabel()
if ( viewer() ) viewer()->setZScale( m_scaleZ() );
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
QString Rim3dView::activeFiltersDisplayText() const
{
return {};
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void Rim3dView::updateFilterLabel()
{
if ( !viewer() ) return;
const QString text = activeFiltersDisplayText();
if ( text.isEmpty() )
{
viewer()->showFilterLabel( false );
}
else
{
viewer()->setFilterText( QStringLiteral( "Filter : %1" ).arg( text ) );
viewer()->showFilterLabel( true );
}
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------