#2202 Geomech: Avoid visibility calculation for unvalid property filters

This commit is contained in:
Rebecca Cox
2017-12-07 10:18:27 +01:00
parent 23844e3b78
commit 4856c5ee30
3 changed files with 15 additions and 0 deletions

View File

@@ -112,6 +112,7 @@ void RivFemElmVisibilityCalculator::computePropertyVisibility(cvf::UByteArray* c
for (size_t i = 0; i < propFilterColl->propertyFilters().size(); i++)
{
RimGeoMechPropertyFilter* propertyFilter = propFilterColl->propertyFilters()[i];
if (!propertyFilter->isActiveAndHasResult()) continue;
const RimCellFilter::FilterModeType filterType = propertyFilter->filterMode();

View File

@@ -217,6 +217,19 @@ void RimGeoMechPropertyFilter::updateActiveState()
isActive.uiCapability()->setUiReadOnly(isPropertyFilterControlled());
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
bool RimGeoMechPropertyFilter::isActiveAndHasResult()
{
if (this->isActive() && this->resultDefinition->hasResult())
{
return true;
}
return false;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------

View File

@@ -51,6 +51,7 @@ public:
void computeResultValueRange();
void updateActiveState();
bool isActiveAndHasResult();
protected:
virtual void fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue);