(#539) Added framework for update of range filter based on master

Propagate pointer to a range filter if only a single filter is modified
Moved lifetime management of range filter collection to RimView
This commit is contained in:
Magne Sjaastad
2015-10-19 12:10:18 +02:00
parent 1c3e9d8751
commit ab0e3819a1
16 changed files with 209 additions and 45 deletions

View File

@@ -33,6 +33,7 @@ class RimEclipseView;
class RimGeoMechView;
class RimViewLinker;
class RigCaseToCaseCellMapper;
class RimCellRangeFilter;
//==================================================================================================
///
@@ -60,9 +61,9 @@ public:
bool isTimeStepLinked();
bool isResultColorControlled();
bool isRangeFiltersControlled();
bool isVisibleCellsOveridden();
bool isRangeFilterOveridden();
bool isPropertyFilterOveridden();
void scheduleCreateDisplayModelAndRedrawForDependentView();
@@ -72,6 +73,8 @@ public:
void removeOverrides();
void updateDisplayNameAndIcon();
void updateRangeFilterOverrides(RimCellRangeFilter* changedRangeFilter);
protected: // Pdm overridden methods
virtual void fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue);
virtual QList<caf::PdmOptionItemInfo> calculateValueOptions(const caf::PdmFieldHandle* fieldNeedingOptions, bool * useOptionsOnly);
@@ -87,8 +90,13 @@ private:
void updateCameraLink();
void updateTimeStepLink();
void updateResultColorsControl();
void updateRangeFiltersControl();
bool isMasterAndDepViewDifferentType();
bool isRangeFilterControlPossible();
void updateRangeFilterCollectionOverride(RimView* sourceView, RimCellRangeFilter* changedRangeFilter);
RimEclipseView* managedEclipseView();
RimGeoMechView* managedGeoView();