Simplified property filters and removed m_parentContainer

This commit is contained in:
Magne Sjaastad 2015-08-11 22:49:04 +02:00
parent fb88414fec
commit eefa1c0ca8
5 changed files with 11 additions and 43 deletions

View File

@ -56,10 +56,10 @@ std::vector<RimEclipsePropertyFilterCollection*> RicEclipsePropertyFilter::selec
//--------------------------------------------------------------------------------------------------
void RicEclipsePropertyFilter::addPropertyFilter(RimEclipsePropertyFilterCollection* propertyFilterCollection)
{
RimEclipsePropertyFilter* propertyFilter = createPropertyFilter(propertyFilterCollection);
CVF_ASSERT(propertyFilter);
RimEclipsePropertyFilter* propertyFilter = new RimEclipsePropertyFilter();
propertyFilterCollection->propertyFilters.push_back(propertyFilter);
setDefaults(propertyFilter);
propertyFilterCollection->reservoirView()->scheduleGeometryRegen(PROPERTY_FILTERED);
propertyFilterCollection->updateConnectedEditors();
@ -70,30 +70,15 @@ void RicEclipsePropertyFilter::addPropertyFilter(RimEclipsePropertyFilterCollect
//--------------------------------------------------------------------------------------------------
void RicEclipsePropertyFilter::insertPropertyFilter(RimEclipsePropertyFilterCollection* propertyFilterCollection, size_t index)
{
RimEclipsePropertyFilter* propertyFilter = createPropertyFilter(propertyFilterCollection);
CVF_ASSERT(propertyFilter);
RimEclipsePropertyFilter* propertyFilter = new RimEclipsePropertyFilter();
propertyFilterCollection->propertyFilters.insertAt(index, propertyFilter);
setDefaults(propertyFilter);
propertyFilterCollection->reservoirView()->scheduleGeometryRegen(PROPERTY_FILTERED);
propertyFilterCollection->updateConnectedEditors();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimEclipsePropertyFilter* RicEclipsePropertyFilter::createPropertyFilter( RimEclipsePropertyFilterCollection* propertyFilterCollection )
{
CVF_ASSERT(propertyFilterCollection);
RimEclipsePropertyFilter* propertyFilter = new RimEclipsePropertyFilter();
propertyFilter->setParentContainer(propertyFilterCollection);
setDefaults(propertyFilter);
return propertyFilter;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------

View File

@ -37,7 +37,6 @@ public:
static void insertPropertyFilter(RimEclipsePropertyFilterCollection* propertyFilterCollection, size_t index);
private:
static RimEclipsePropertyFilter* createPropertyFilter(RimEclipsePropertyFilterCollection* propertyFilterCollection);
static void setDefaults(RimEclipsePropertyFilter* propertyFilter);
};

View File

@ -51,7 +51,6 @@ CAF_PDM_SOURCE_INIT(RimEclipsePropertyFilter, "CellPropertyFilter");
///
//--------------------------------------------------------------------------------------------------
RimEclipsePropertyFilter::RimEclipsePropertyFilter()
: m_parentContainer(NULL)
{
CAF_PDM_InitObject("Cell Property Filter", ":/CellFilter_Values.png", "", "");
@ -101,7 +100,7 @@ void RimEclipsePropertyFilter::fieldChangedByUi(const caf::PdmFieldHandle* chang
|| &isActive == changedField
|| &filterMode == changedField)
{
m_parentContainer->fieldChangedByUi(changedField, oldValue, newValue);
parentContainer()->fieldChangedByUi(changedField, oldValue, newValue);
updateFilterName();
this->updateIconState();
}
@ -136,20 +135,12 @@ QList<caf::PdmOptionItemInfo> RimEclipsePropertyFilter::calculateValueOptions(co
return optionItems;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimEclipsePropertyFilter::setParentContainer(RimEclipsePropertyFilterCollection* parentContainer)
{
m_parentContainer = parentContainer;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimEclipsePropertyFilterCollection* RimEclipsePropertyFilter::parentContainer()
{
return m_parentContainer;
return dynamic_cast<RimEclipsePropertyFilterCollection*>(this->parentField()->ownerObject());
}
//--------------------------------------------------------------------------------------------------
@ -157,7 +148,7 @@ RimEclipsePropertyFilterCollection* RimEclipsePropertyFilter::parentContainer()
//--------------------------------------------------------------------------------------------------
void RimEclipsePropertyFilter::setToDefaultValues()
{
CVF_ASSERT(m_parentContainer);
CVF_ASSERT(parentContainer());
computeResultValueRange();
@ -217,7 +208,7 @@ void RimEclipsePropertyFilter::defineEditorAttribute(const caf::PdmFieldHandle*
//--------------------------------------------------------------------------------------------------
void RimEclipsePropertyFilter::computeResultValueRange()
{
CVF_ASSERT(m_parentContainer);
CVF_ASSERT(parentContainer());
double min = 0.0;
double max = 0.0;

View File

@ -49,8 +49,7 @@ public:
caf::PdmField<double> lowerBound;
caf::PdmField<double> upperBound;
void setParentContainer(RimEclipsePropertyFilterCollection* parentContainer);
RimEclipsePropertyFilterCollection* parentContainer();
RimEclipsePropertyFilterCollection* parentContainer();
void setToDefaultValues();
void updateFilterName();
void computeResultValueRange();
@ -62,8 +61,6 @@ protected:
virtual void defineEditorAttribute(const caf::PdmFieldHandle* field, QString uiConfigName, caf::PdmUiEditorAttribute* attribute);
private:
RimEclipsePropertyFilterCollection* m_parentContainer;
double m_minimumResultValue;
double m_maximumResultValue;

View File

@ -93,7 +93,6 @@ RimEclipsePropertyFilter* RimEclipsePropertyFilterCollection::createAndAppendPro
propertyFilter->resultDefinition->setReservoirView(m_reservoirView.p());
propertyFilter->setParentContainer(this);
propertyFilters.push_back(propertyFilter);
propertyFilter->resultDefinition->setResultVariable(m_reservoirView->cellResult->resultVariable());
@ -103,7 +102,6 @@ RimEclipsePropertyFilter* RimEclipsePropertyFilterCollection::createAndAppendPro
propertyFilter->setToDefaultValues();
propertyFilter->updateFilterName();
return propertyFilter;
}
@ -117,8 +115,6 @@ void RimEclipsePropertyFilterCollection::loadAndInitializePropertyFilters()
{
RimEclipsePropertyFilter* propertyFilter = propertyFilters[i];
propertyFilter->setParentContainer(this);
propertyFilter->resultDefinition->setReservoirView(m_reservoirView.p());
propertyFilter->resultDefinition->loadResult();
propertyFilter->updateIconState();