#1029 Removed updateFieldVisibility methods. Replaced with simpler control in the defineUiOrdering method. Prep. for Flow Diag.

This commit is contained in:
Jacob Støren 2016-12-14 11:13:54 +01:00
parent afa381b4b9
commit 3d49651b0c
7 changed files with 30 additions and 76 deletions

View File

@ -123,5 +123,5 @@ void RicEclipsePropertyFilterFeatureImpl::setDefaults(RimEclipsePropertyFilter*
propertyFilter->resultDefinition->loadResult();
propertyFilter->setToDefaultValues();
propertyFilter->updateFilterName();
propertyFilter->m_categorySelection = true;
propertyFilter->m_useCategorySelection = true;
}

View File

@ -48,7 +48,6 @@ RimCellFilter::RimCellFilter()
isActive.uiCapability()->setUiHidden(true);
CAF_PDM_InitFieldNoDefault(&m_selectedCategoryValues, "SelectedValues", "Values", "", "", "");
m_selectedCategoryValues.uiCapability()->setUiHidden(true);
CAF_PDM_InitFieldNoDefault(&filterMode, "FilterType", "Filter Type", "", "", "");
}

View File

@ -78,7 +78,7 @@ RimEclipsePropertyFilter::RimEclipsePropertyFilter()
CAF_PDM_InitField(&m_upperBound, "UpperBound", 0.0, "Max", "", "", "");
m_upperBound.uiCapability()->setUiEditorTypeName(caf::PdmUiDoubleSliderEditor::uiEditorTypeName());
CAF_PDM_InitField(&m_categorySelection, "CategorySelection", false, "Category Selection", "", "", "");
CAF_PDM_InitField(&m_useCategorySelection, "CategorySelection", false, "Category Selection", "", "", "");
m_upperBound.uiCapability()->setUiEditorTypeName(caf::PdmUiDoubleSliderEditor::uiEditorTypeName());
updateIconState();
@ -109,7 +109,7 @@ void RimEclipsePropertyFilter::rangeValues(double* lower, double* upper) const
//--------------------------------------------------------------------------------------------------
bool RimEclipsePropertyFilter::isCategorySelectionActive() const
{
if (resultDefinition->hasCategoryResult() && m_categorySelection)
if (resultDefinition->hasCategoryResult() && m_useCategorySelection)
{
return true;
}
@ -122,10 +122,6 @@ bool RimEclipsePropertyFilter::isCategorySelectionActive() const
//--------------------------------------------------------------------------------------------------
void RimEclipsePropertyFilter::fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue)
{
if (&m_categorySelection == changedField)
{
updateFieldVisibility();
}
if ( &m_lowerBound == changedField
|| &m_upperBound == changedField
@ -133,7 +129,7 @@ void RimEclipsePropertyFilter::fieldChangedByUi(const caf::PdmFieldHandle* chang
|| &isActive == changedField
|| &filterMode == changedField
|| &m_selectedCategoryValues == changedField
|| &m_categorySelection == changedField)
|| &m_useCategorySelection == changedField)
{
updateFilterName();
this->updateIconState();
@ -164,9 +160,8 @@ void RimEclipsePropertyFilter::setToDefaultValues()
m_upperBound = m_maximumResultValue;
m_selectedCategoryValues = m_categoryValues;
m_categorySelection = true;
m_useCategorySelection = true;
updateFieldVisibility();
}
//--------------------------------------------------------------------------------------------------
@ -183,13 +178,21 @@ void RimEclipsePropertyFilter::defineUiOrdering(QString uiConfigName, caf::PdmUi
// Fields declared in RimCellFilter
uiOrdering.add(&filterMode);
uiOrdering.add(&m_categorySelection);
// Fields declared in this class (RimCellPropertyFilter)
uiOrdering.add(&m_lowerBound);
uiOrdering.add(&m_upperBound);
if (resultDefinition->hasCategoryResult())
{
uiOrdering.add(&m_useCategorySelection);
}
uiOrdering.add(&m_selectedCategoryValues);
if ( resultDefinition->hasCategoryResult() && m_useCategorySelection() )
{
uiOrdering.add(&m_selectedCategoryValues);
}
else
{
uiOrdering.add(&m_lowerBound);
uiOrdering.add(&m_upperBound);
}
uiOrdering.setForgetRemainingFields(true);
@ -254,38 +257,6 @@ void RimEclipsePropertyFilter::updateActiveState()
isActive.uiCapability()->setUiReadOnly(isPropertyFilterControlled());
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimEclipsePropertyFilter::updateFieldVisibility()
{
if (resultDefinition->hasCategoryResult())
{
m_categorySelection.uiCapability()->setUiHidden(false);
if (!m_categorySelection)
{
m_selectedCategoryValues.uiCapability()->setUiHidden(true);
m_lowerBound.uiCapability()->setUiHidden(false);
m_upperBound.uiCapability()->setUiHidden(false);
}
else
{
m_selectedCategoryValues.uiCapability()->setUiHidden(false);
m_lowerBound.uiCapability()->setUiHidden(true);
m_upperBound.uiCapability()->setUiHidden(true);
}
}
else
{
m_lowerBound.uiCapability()->setUiHidden(false);
m_upperBound.uiCapability()->setUiHidden(false);
m_selectedCategoryValues.uiCapability()->setUiHidden(true);
m_categorySelection.uiCapability()->setUiHidden(true);
}
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@ -410,6 +381,5 @@ void RimEclipsePropertyFilter::initAfterRead()
resultDefinition->loadResult();
updateIconState();
computeResultValueRange();
updateFieldVisibility();
}

View File

@ -69,7 +69,6 @@ private:
friend class RicEclipsePropertyFilterFeatureImpl;
void updateActiveState();
void updateFieldVisibility();
void updateReadOnlyStateOfAllFields();
bool isPropertyFilterControlled();
@ -77,7 +76,7 @@ private:
caf::PdmField<double> m_lowerBound;
caf::PdmField<double> m_upperBound;
caf::PdmField<bool> m_categorySelection;
caf::PdmField<bool> m_useCategorySelection;
double m_minimumResultValue;
double m_maximumResultValue;

View File

@ -122,7 +122,6 @@ void RimGeoMechPropertyFilter::setToDefaultValues()
m_selectedCategoryValues = m_categoryValues;
this->updateFieldVisibility();
this->updateFilterName();
}
@ -139,12 +138,19 @@ void RimGeoMechPropertyFilter::defineUiOrdering(QString uiConfigName, caf::PdmUi
uiOrdering.add(&isActive);
uiOrdering.add(&filterMode);
uiOrdering.add(&lowerBound);
uiOrdering.add(&upperBound);
uiOrdering.add(&m_selectedCategoryValues);
if ( resultDefinition->hasCategoryResult() )
{
uiOrdering.add(&m_selectedCategoryValues);
}
else
{
uiOrdering.add(&lowerBound);
uiOrdering.add(&upperBound);
}
updateReadOnlyStateOfAllFields();
uiOrdering.setForgetRemainingFields(true);
}
//--------------------------------------------------------------------------------------------------
@ -198,24 +204,6 @@ bool RimGeoMechPropertyFilter::isPropertyFilterControlled()
return isPropertyFilterControlled;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimGeoMechPropertyFilter::updateFieldVisibility()
{
if (resultDefinition->hasCategoryResult())
{
m_selectedCategoryValues.uiCapability()->setUiHidden(false);
lowerBound.uiCapability()->setUiHidden(true);
upperBound.uiCapability()->setUiHidden(true);
}
else
{
m_selectedCategoryValues.uiCapability()->setUiHidden(true);
lowerBound.uiCapability()->setUiHidden(false);
upperBound.uiCapability()->setUiHidden(false);
}
}
//--------------------------------------------------------------------------------------------------
///

View File

@ -50,7 +50,6 @@ public:
void updateFilterName();
void computeResultValueRange();
void updateFieldVisibility();
void updateActiveState();
protected:

View File

@ -73,7 +73,6 @@ void RimGeoMechPropertyFilterCollection::loadAndInitializePropertyFilters()
propertyFilter->resultDefinition->setGeoMechCase(reservoirView()->geoMechCase());
propertyFilter->resultDefinition->loadResult();
propertyFilter->computeResultValueRange();
propertyFilter->updateFieldVisibility();
}
}