Fixed missing min/max value range for property filters when loading from project file

p4#: 22105
This commit is contained in:
Magne Sjaastad 2013-08-07 09:00:09 +02:00
parent 9910480538
commit fea95940bf
3 changed files with 32 additions and 20 deletions

View File

@ -148,27 +148,10 @@ void RimCellPropertyFilter::setDefaultValues()
{
CVF_ASSERT(m_parentContainer);
double min = 0.0;
double max = 0.0;
computeResultValueRange();
size_t scalarIndex = resultDefinition->gridScalarIndex();
if (scalarIndex != cvf::UNDEFINED_SIZE_T)
{
RimReservoirCellResultsStorage* results = resultDefinition->currentGridCellResults();
if (results)
{
results->cellResults()->minMaxCellScalarValues(scalarIndex, min, max);
}
}
lowerBound = min;
lowerBound.setUiName(QString("Min (%1)").arg(min));
upperBound = max;
upperBound.setUiName(QString("Max (%1)").arg(max));
m_maximumResultValue = max;
m_minimumResultValue = min;
lowerBound = m_minimumResultValue;
upperBound = m_maximumResultValue;
}
//--------------------------------------------------------------------------------------------------
@ -218,3 +201,30 @@ void RimCellPropertyFilter::defineEditorAttribute(const caf::PdmFieldHandle* fie
}
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimCellPropertyFilter::computeResultValueRange()
{
CVF_ASSERT(m_parentContainer);
double min = 0.0;
double max = 0.0;
size_t scalarIndex = resultDefinition->gridScalarIndex();
if (scalarIndex != cvf::UNDEFINED_SIZE_T)
{
RimReservoirCellResultsStorage* results = resultDefinition->currentGridCellResults();
if (results)
{
results->cellResults()->minMaxCellScalarValues(scalarIndex, min, max);
}
}
m_maximumResultValue = max;
m_minimumResultValue = min;
lowerBound.setUiName(QString("Min (%1)").arg(min));
upperBound.setUiName(QString("Max (%1)").arg(max));
}

View File

@ -60,6 +60,7 @@ public:
void setParentContainer(RimCellPropertyFilterCollection* parentContainer);
RimCellPropertyFilterCollection* parentContainer();
void setDefaultValues();
void computeResultValueRange();
caf::PdmField<RimResultDefinition*> resultDefinition;

View File

@ -128,6 +128,7 @@ void RimCellPropertyFilterCollection::loadAndInitializePropertyFilters()
propertyFilter->resultDefinition->setReservoirView(m_reservoirView.p());
propertyFilter->resultDefinition->loadResult();
propertyFilter->updateIconState();
propertyFilter->computeResultValueRange();
}
}