set eclipsecase in initafterread

This commit is contained in:
Magne Sjaastad 2019-03-19 10:56:41 +01:00
parent 2a1d8379a5
commit 54f97d6409
4 changed files with 40 additions and 6 deletions

View File

@ -44,7 +44,10 @@ RimPlotCellFilter::RimPlotCellFilter()
//--------------------------------------------------------------------------------------------------
void RimPlotCellFilter::updateCellVisibility(size_t timeStepIndex, cvf::UByteArray* cellVisibility)
{
updateCellVisibilityFromFilter(timeStepIndex, cellVisibility);
if (isChecked())
{
updateCellVisibilityFromFilter(timeStepIndex, cellVisibility);
}
}
//--------------------------------------------------------------------------------------------------

View File

@ -18,6 +18,9 @@
#include "RimPlotCellFilterCollection.h"
#include "RimEclipseResultCase.h"
#include "RimEclipseResultDefinition.h"
CAF_PDM_SOURCE_INIT(RimPlotCellFilterCollection, "RimPlotCellFilterCollection");
//--------------------------------------------------------------------------------------------------
@ -40,7 +43,7 @@ void RimPlotCellFilterCollection::addCellFilter(RimPlotCellFilter* cellFilter)
}
//--------------------------------------------------------------------------------------------------
///
///
//--------------------------------------------------------------------------------------------------
size_t RimPlotCellFilterCollection::cellFilterCount() const
{
@ -48,11 +51,32 @@ size_t RimPlotCellFilterCollection::cellFilterCount() const
}
//--------------------------------------------------------------------------------------------------
///
///
//--------------------------------------------------------------------------------------------------
void RimPlotCellFilterCollection::computeCellVisibilityFromFilter(size_t timeStepIndex, cvf::UByteArray* cellVisibility)
{
updateCellVisibilityFromFilter(timeStepIndex, cellVisibility);
if (isChecked())
{
updateCellVisibilityFromFilter(timeStepIndex, cellVisibility);
}
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimPlotCellFilterCollection::setCase(RimCase* gridCase)
{
RimEclipseResultCase* eclipseResultCase = dynamic_cast<RimEclipseResultCase*>(gridCase);
if (eclipseResultCase)
{
std::vector<RimEclipseResultDefinition*> resultDefinitions;
this->descendantsIncludingThisOfType(resultDefinitions);
for (auto r : resultDefinitions)
{
r->setEclipseCase(eclipseResultCase);
}
}
}
//--------------------------------------------------------------------------------------------------
@ -62,7 +86,9 @@ void RimPlotCellFilterCollection::updateCellVisibilityFromFilter(size_t timeStep
{
for (RimPlotCellFilter* f : m_cellFilters())
{
f->updateCellVisibility(timeStepIndex, cellVisibility);
if (f->isChecked())
{
f->updateCellVisibility(timeStepIndex, cellVisibility);
}
}
}

View File

@ -22,6 +22,8 @@
#include "cafPdmChildArrayField.h"
class RimCase;
//==================================================================================================
///
//==================================================================================================
@ -37,6 +39,8 @@ public:
void computeCellVisibilityFromFilter(size_t timeStepIndex, cvf::UByteArray* cellVisibility);
void setCase(RimCase* gridCase);
protected:
void updateCellVisibilityFromFilter(size_t timeStepIndex, cvf::UByteArray* cellVisibility) override;

View File

@ -368,6 +368,7 @@ void RimGridCrossPlotCurveSet::initAfterRead()
m_xAxisProperty->setEclipseCase(eclipseCase);
m_yAxisProperty->setEclipseCase(eclipseCase);
m_groupingProperty->setEclipseCase(eclipseCase);
m_plotCellFilterCollection->setCase(eclipseCase);
}
}