Make sure the time fields are added only once

This commit is contained in:
Magne Sjaastad committed 2025-05-08 07:27:42 +02:00
1 parent 01e0258b2a
commit 4617fb8015
1 file changed
+12 -8
@@ -529,14 +529,13 @@ void RimEnsembleCurveSet::appendTimeGroup( caf::PdmUiOrdering& uiOrdering )
{
std::vector<caf::PdmFieldHandle*> timeFields;
bool showTimeRangeFields = false;
if ( ( m_colorMode == ColorMode::BY_OBJECTIVE_FUNCTION && m_objectiveFunction()->functionType() == RimObjectiveFunction::FunctionType::F1 ) ||
( m_colorMode == ColorMode::BY_CUSTOM_OBJECTIVE_FUNCTION && m_customObjectiveFunction() &&
m_customObjectiveFunction()->weightContainsFunctionType( RimObjectiveFunction::FunctionType::F1 ) ) )
{
timeFields.push_back( &m_minDateRange );
timeFields.push_back( &m_minTimeSliderPosition );
timeFields.push_back( &m_maxDateRange );
timeFields.push_back( &m_maxTimeSliderPosition );
showTimeRangeFields = true;
}
if ( m_objectiveFunction()->functionType() == RimObjectiveFunction::FunctionType::F2 ||
( m_customObjectiveFunction() && m_customObjectiveFunction()->weightContainsFunctionType( RimObjectiveFunction::FunctionType::F2 ) ) )
@@ -549,13 +548,18 @@ void RimEnsembleCurveSet::appendTimeGroup( caf::PdmUiOrdering& uiOrdering )
{
if ( filter->isActive() && filter->filterMode() == RimEnsembleCurveFilter::FilterMode::SUMMARY_VALUE )
{
timeFields.push_back( &m_minDateRange );
timeFields.push_back( &m_minTimeSliderPosition );
timeFields.push_back( &m_maxDateRange );
timeFields.push_back( &m_maxTimeSliderPosition );
showTimeRangeFields = true;
}
}
if ( showTimeRangeFields )
{
timeFields.push_back( &m_minDateRange );
timeFields.push_back( &m_minTimeSliderPosition );
timeFields.push_back( &m_maxDateRange );
timeFields.push_back( &m_maxTimeSliderPosition );
}
if ( !timeFields.empty() )
{
auto timeSelectionGroup = uiOrdering.addNewGroup( "Time Selection" );